skysight-inc/HackerNews huggingface dataset:
I'm of the somewhat unpopular opinion that "getters for everything!" is a philosophy that sounds good on paper, but results in writing a lot of getter and setter functions and feeling safe, while ignoring these sorts of traps cropping up everywhere.

Member variables are easy to reason about; they behave exactly like the type they are, and in the case of built in types, have extremely consistent behavior. Getters / setters are a black box of mystery; I like to reserve that pattern for when there's going to be extra work to retrieve some value, so my call site knows it needs to tip-toe around possible failures. While I can see the value in using getters/setters for everything in something like an API or framework, I don't see the value in trying to use them all the time, "just in case."
Because with JVM languages, and their "horrid" backwards compatibility (that everyone always loves to bash), I can declare dependencies on libraries written in Java 1.1, and it will JUST WORK.

From what I understand, there's a fairly large chasm between Python 2/3 (such that a lot of people use external libraries to deal with coding cross-compatibile code, and apparently get wrong some-times).
Or "HN has better-than-average comments". They are consequences of design and policy.
The Feast of Saint Valentine: A Valued Time?
Rejit: a work-in-progress JIT-powered regex engine
I'm not sure that you are supposed to use Mathematica to "build" things. It's not that kind of programming language. Its designed-for use case is as a cognitive/computational aid in attacking a specific problem one time, and then having a record of your work. Not so much building software for repeated execution.
Basically the idea is to get some recent work into your portfolio, and by the time you've completed the fifth React website of the year, upwork and good hourly rate be damned, you'd have a much easier time to find a good paying gig.

I worked my way up from $25 to $100 per hour in about a year doing this. Take up low quality gigs, and then use them as a springboard to jump onto less lower quality gigs. Rinse and repeat until you're doing the kind of gigs you'd like to do.

Life is full of horrors, we can live it or stay at home. It's our choice.
Also foosball and cat videos kinda suck. If you prefer that to the main thing you're working on it may be the wrong thing.
I want contextual ads, like the original AdSense

"Contextual advertising is a form of targeted advertising in which the content of an ad is in direct correlation to the content of the web page the user is viewing. For example, if you are visiting a website concerning travelling in Europe and see that an ad pops up offering a special price on a flight to Italy, that’s contextual advertising. "

https://en.wikipedia.org/wiki/AdSense#History , https://en.wikipedia.org/wiki/Contextual_advertising
You're not alone, I do the same. Anything living in the traditionally scuzzy bottom of article and right sidebar areas is guilty until proven otherwise. I'd be curious to see some research on this because I've actually had trouble finding things I was looking for when they were in traditionally bad screen real estate. When something does manage to seem interesting my assumption is that it's simply lying to me and won't take me to the thing I'm actually looking for. So rather than spend the extra time being disappointed and hitting ⌘+[ I just open the new tab and search.

I use vimium so I do occasionally fat-finger or mis-read a flag and end up following an ad.
Well, I don't have that much experience with Python, but by your own admission:

packages with a C++ module normally...

Sorry, but 'normally' doesn't cut it for me (or the organizations that I work/worked for).

I can use ANY maven dependency, regardless of what JVM language it was built with, what language level (java 1.1 - 1.8) it was built with, pretty much anything.
How could anyone resist the allure of "Punch the Monkey"? Or Bonzi Buddy? :-)
https://en.m.wikipedia.org/wiki/BonziBuddy
http://www.mikeonads.com/2007/03/01/punch-the-monkey/
"Uber has nothing to do with helping people get rides in towns."

I may be simpleminded here, but didn't Uber make it a lot easier to get rides by making app-based hailing work reliably? Instead of standing on a street corner and waving?
Agreed. I have clicked on many Adsense ads and never a Facebook ad. I have also clicked on a couple of Stack overflow ads, and got my current job thanks to stack overflow careers.

These advertisements add value to me and the site owner, and while I don't like them, I do not mind them if they are appropriately done and non intrusive.

I don't give a crap about the latest clash o clans rip-off, and if you advertise that to me you're hurting your CTR.
Because we need to know approximately the time left till dawn or dusk without having to calculate it every time in every timezone we currently are in. In fact, the date is a problem we invented - time of the day is natural, the location of the sun in the day.
I totally get that XML is intimidating, it certainly was for me for a long time, but eh...it solves more problems than it creates (at least in my professional opinion).

But... I'll be the first to admit that Java isn't the perfect tool for every problem, and I certainly feel that as engineers, we should use the proper tool to solve the problem.
It makes me sad too. I've been through 4 thinkpads (x23,x60,x201i). They all work fine with 3rd party batteries although the more recent ones give a warning message. I think this is probably the end of buying Lenovo for me.
Founder, here.

It is an imperfect analogy, but let me try to elucidate what our model actually is.

We currently power over 250 companies, from some of the most popular applications like Instapaper and Shopspring, to search engines like Bing, DuckDuckGo, Yandex, and eBay to business intelligence tools like Crunchbase.

Our thesis is that access to large volumes of structured data will be just as critical a resource as the learning algorithms or the computational hardware for developers building the next generation of smarter application, and we offer our knowledge-as-a-service as a platform/component to build end-user applications around.

Part of the new funding is going to our effort to build a comprehensive database of knowledge synthesized and fact-checked from the sum total of all of the information on the web. There is some parallel to Google's knowledge graph project, except that our method is fully autonomous (no human curation) and we are building a self-sustaining business around it with a fully-featured API that everyone (outside of Google) can use.
Syracuse vs. Boston College, NCAA Odds, Pick and Prediction
I wasn't aware of the implicit "if you have node you have npm" relationship -- thanks for clearing that up.
Show some love this valentines
Most people here seem to think that one clicks ads only by accident. If this were true such clicks would never lead to a purchase or just associate a brand with annoyance. I simply can't believe that. Sure, mostly, I see ads for stuff I have just purchased, sometimes for months but there also have been useful ones from time to time for me (mostly home automation/Raspberry Pi stuff), also my brain seems wired not to ignore such ads.

Aren't geeks missing out by ignoring things targeted specifically to them (us)? Are geeks just stubborn? If you say things like "we get a better deal because stupid ad clickers pay for our internet experience", you are completely missing the fact that such an ad clicker probably made a valuable discovery through an ad, one that was even worth real money!

Do most HN-ers really believe all ads are fraudulent rip-offs designed to trick us just into clicking on them? Sure some are, but people here seem to think they all are.
You realize that the idea of consciousness separate from the body is extremely popular in Western traditions as well? Much Christian theology, for example, is pretty fundamentally reliant on the idea of the soul.
> What Nix/Guix are not doing is reducing the burden of specification. You write down all the details of a very specific, reproducible software stack, but you do not make that software much more composable or extensible than it already was.

Yep, this. Glad someone else is saying it, because I'm starting to wonder how people can read literally thousands of words rooted on a foundation of making it easier for developers, and reducing their uncertainty, and then expect them to write a book-length spec doc.

(note that requiring people to write down tons of spec information reduces, at most, one kind of uncertainty, and at high cost)

> Spack stores the generated build provenance after doing some constraint solving [3], but the tool helps fill in the missing details of the dependency graph, not the human.

Sounds a lot like what's I described, no?

(I haven't heard of Spack, will look into it)

> isn’t fully reproducible because it’s not a full system package manager

I didn't touch on shared libs in the article, and probably should've, at least to point out that, for the purposes of the discussion of a PDM, it's mostly out of scope.

Things are really just so, so much nicer when we actually let there be layers and scopes of responsibility.
One stop solution for your love issues from breakup to compliments
>That is: while ideally we would critically and deeply analyze every aspect of our life, we have limited time and energy. The reason we've been able to accomplish so much as a civilization is because we delegate thinking to others.

It's not an either/or proposition. I approach ideas as multiple constellations of possibilities without taking a definitive position on them. I think many other people do the same.
As a student who is studying to become a Theoretical Mathematician, I hope Sci-hub stays open for many years ahead. In Finland, we have pretty good access but only if one is a student. Mathematics is so interconnected, that removing paywalls and any obstacles could help uncover breakthroughs by combining ideas from other fellow Mathematicians. I hope UN exercises Article 27 of Human Rights and aligns itself on the right side of history in order to better Science and to encourage curiosity in today's minds and definitely tomorrow's! Pardon my English. Thank you.
Four developers, some Ember and a new process
I didn't say the court has a need or obligation to representative. I said that there are real people who believe the same things Scalia did.

Those people, minority or not, have as much of a right to try to elect people who are like them and and gain support for what they think is right as you do.
I dislike the whole 'functional' package manager idea as it just punts the work onto people to add explicit deps when most of the dependency information is within the code itself. Prefixing with a hash is also not ideal in my view as there are about a dozen other ways to do the same thing without as harsh of consequences. An ideal package manager could prove that package y could be a valid substitute for package x, analyze source for deps which gets into the deep end of the pool (symbolic execution, static analysis, etc).
A community, gaslit by years of poor tooling, IMO
>wouldn't it be simpler and safer to replace the cells

Dunno about safe but I've bought maybe 5 unofficial replacement li ion batteries for thinkpads, 2 for the iphone and will probably get one for my macbook. It takes about 1 min - go on ebay click buy, arrives in the post. It's hard to get much simpler than that until this recent lock down stuff. I've had no problems except the cheap knock offs don't generally last quite as long as the originals did when new.
I've been curious whether this dataset could be exploited to invade privacy, e.g. by targeting rides to/from from a sensitive address (medical-related, a strip club). Or by cross-checking it with other data, like a private detective comparing a pick-up recorded on a security camera and looking up where they went to in this database. I guess this makes it easier to find out.
Is it because they run ad-blockers or disable tracking more?
Really? How about if you see something you actually want and are looking for? Is that really so difficult to imagine?
Me too. Back in those days, they got paid per view. So it didn't matter if one click the ad. Nowadays most(?) ads are paid per click ("thanks" Google making that a thing). Those ads that follow you around aren't that fun at all, rather pretty creepy - the number one reason (I would say) that drive people to ad blockers. Another reason are ad overloaded sites that crash your mobile browser because of excessive memory usage.
The thing about Facebook is you should assume it's public.
Monkey patching is often difficult in a statically types language, but is quite useful in testing.
Fantastic... I teach quant research at the grad level. Game is simple and fun-ish. Learning to visualize and think about correlations for the first time can be tough—game is perfect to engage students and supplement textbooks, lecture.
I do the same thing, but I expect that advertisers have our number, in the same way that they track hits to their website when their TV ad or product placement runs in a market.

The ad happens, sometimes we respond.
This is great. Also see the React docs tutorial: https://facebook.github.io/react/docs/tutorial.html
Oh, "we" are so good, we are sooo leading. We even ignore things we don't want!

Or do "we" also ignore ads for things we do want and the rest of the populous does not, and are the rest of the people therefor smarter and better of? Are ads always fraudulent rip-offs? Really?
Gigabyte Brix Updated: Skylake, Thunderbolt 3, GeForce GTX 950M and Dual LAN
> But with that said, if you love React, why not help work on the core? I'm sure there are issues with React that need solving and if you've got the time your effort may be better spent on there.

It's not that simple. One of the biggest critic towards the official React implementation is its big size, which is a direct consequence of the decision by the core team to include many "enterprise" features (IE support, safety checks, etc) to suit their needs. Some people like to make different compromise, e.g. more minimal one. You cannot easily change "political" decisions by contributing, also not all features are easy to modularize (esp. for outsiders).

Sometimes it's easier to implement similar API from scratch to test your own ideas than forking an existing (mammoth) project.

Btw, another "tiny react" implementation: https://github.com/developit/preact
Ah, you want to be the Intel Inside of that market.
I don't think I'd use this for my core application (where it's worth building application-specific distribution), but having an option in the toolbox for other/internal/non-core apps which have grown beyond a single machine.

(I met the founder at a conference last year where we were both speaking; I was suspicious of the whole model (because it sounds like magic), but talked with them a bit more and it seems legit for a lot of workloads.)
I’ve found that paradoxically I sometimes get the fastest, highest quality
progress by asking what’s the minimum control input I can give to be
successful?

There's an analogous concept in auto-racing. The fastest drivers are the ones who steer the least. That is to say, any steering input necessarily slows the forward speed of the car. So it's important to find the line or path that allows you traverse the track with a minimum of steering.

The same thing applies to management. Every interruption or rebalancing of priorities for your team causes a shift, and that shift takes time to effect. During that time your team is operating at less than full efficiency, as some of their mental effort is going towards learning the new system or figuring out the new priorities rather than actually delivering the end product for the customer. The fastest teams are driven by managers who apply the minimum level of input to keep the team on the right path, but then back off once the team is heading in the right direction.
Addresses are indeed anonymised somewhat, so it might be difficult.
I Owe My Career To An Iraqi Immigrant
Eh, is it really that big a deal? I have a few times posted something which gets no attention and is then reposted with up votes and comments (sometimes only a few hours later). Maybe a little irksome, but I don't think HN karma/score/points should be that big of a concern.
"One person presents the photo while another holds the horse,"

Indeed. One wonders if the person holding the horse
and the person presenting the face photos
could see if the photo was of an angry or other face.
Coming from the powerful Idris lobby!
> How did you get into such issues? Were there classes where you got started, or was it all on the job?

I took the usual college classes dealing with concurrency (in my school it was in the OS class), but it took several years in the industry to really feel confident with threads (it took less time to feel confident with networking). I wrote down my knowledge (for what it's worth) in this book: http://www.amazon.com/dp/0996193308

> I'm not sure how you would move lock/unlock pairs to the top of a file from different functions/scopes.

That solution might not work in every case. It worked in the particular case I was referring to.

> It's more about a codebase that's almost perfectly right, but where I'm scared to change anything because I don't have a big-picture model of the concurrency in my head..

Hmmmmm, that's an interesting question. Usually when the codebase is written, the person who wrote it had an idea in his head that, "this is how things will be locked to avoid problems." I try to figure out what that idea was.

Sometimes there is like a critical 'zone,' where a thread acquires the lock when it enters, and releases when it leaves. For example, it could acquire the lock when it enters a class method, and releases it when it leaves the class. Then the class becomes the critical zone.

Maybe learning to think of 'critical zones' is the most important skill to understanding the big picture?
Why not JSX? To me, JSX is part of React. If someone starting with React sees all that React.create element, they will run away.
> Language package managers are good for quickly sharing code written purely in that language with other developers, but unacceptable for anything else.

Right, so, what almost all of the FLOSS world is doing, almost all of the time. Miiiight be worth optimizing for that case. Especially if a proper PDM would compose well with larger systems...which it would!
There's usually a cost to runtime inspection and metaprogramming. In order to guarantee things at compile time they must not be possible at runtime.

Languages are getting better at type inference, but things like JSON parsing are more rigid and explicit. It just feels jobbish at times.
Good point!

But I think you underestimate how adaptable humans are. You would get used to midday being 18:00h very fast.
I think raw React is React as it's defined by the project maintainers. JSX always seems to be a part of this.
Some people don't like JSX. This is fine. But to imply that it's not part of React by calling the non-JSX variant "raw React" is misleading.
Sure. He said what he did was basic and "table stakes." He was clearly not trying hard to reveal the company in question, just to show that the journalists had done almost nothing.
I heard that Google had to rename their ad management portal's CSS styles because the site was broken for customers using ad blockers. :)
> For better or worse, I get my news on Hacker News moreso than any other place. I don't really even bother with the New York Times or Wall Street Journal any more. Everything in the news lately seems designed to appeal to outrage, and I don't want to participate in that anymore.

I've done the same for news. I can attest that I'm generally happier for it. I can sometimes see when someone is looking to talk to me with news induced outage. I'm learning how to give neutral answers that don't feed any fires, unless I believe I'll actually get a thoughtful and considerate conversation.
Would you not align it parallel with the equator, and therefore get a more squished (horizontally compressed) time display?
Ok, thanks.

Do you also know how split decisions are handled now?
It actually looks more like people don't use Facebook nearly as much in general? I don't think this data supports the suggestion that people in Silicon Valley don't click on ads, they also have very low comment, like, and share frequency as well. I think active time on site per user in Silicon Valley is just lower than the national medians.

Also note that this seems to be rounded up to the nearest whole number, so we can't figure out like:ad click ratio or something like that from the data.
Most ads seem to link to products/services that are not related to the content of the page that I'm currently looking at. Instead, they present targeted content based on browsing habit profiling. I'm far less likely to click on an ad that is out of context with what I'm currently thinking about.
Exactly, you got it.
Good story and example of the normalization of deviance.

First time I saw it in reference to the Gulfstream crash was:
http://www.rapp.org/archives/2015/12/normalization-of-devian...
> It's perfectly okay to use object identity when comparing immutable data structures, but it's usually a bug if the data structure is mutable.

I don't understand this statement. The only thing immutability provides here is the ability to know that an object didn't change by knowing that it's the same object. There's no guarantee of value equality from identity unless all objects are interned.
You learn a lot building something from scratch. And it's fun. You start with naive, clean abstractions and slowly encumber them with trade-offs as you make progress. That's a fun Saturday for a lot of us.

There's a massive difference between that and tackling some long-tail issue on a massive, mature project that apparently wasn't trivial enough or fun enough for anybody else to tackle. i.e. work.

Asserting they could've spent that time contributing to React is like suggesting they could've used that time volunteering at the homeless shelter peeling potatoes and doing jumping jacks. Energy and interest just don't work like that.
Flying to Silicon Valley bankrupt and returning with $1.2M
The problem is there is no filtering, thanks to having a paying customer (ad maker), and then horrible ads get shown. And they slow my experience down, take over my website, use technologies that can infect my otherwise uninfected computers, and confuse me when I want to click download.

I learned from an early age that every single ad was essentially evil. All of it was a trick to get me to click something I did not want. Maybe, if they hadn't done that (and if they had ever really stopped... cause they haven't) I wouldn't have Privacy Bader, uBlock, and Disconnect running all at once.

In the beginning all I had wanted to do was get actual information on a topic or download the latest version of something for Windows. And every time I see someone not running highly aggressive adblockers I can understand why they think somethings on the internet are so complicated. "Just google it" -> "Yea, and click which irrelevant ad which takes up the whole first fold of the page on my not Retina MBP?"
Mark also has problems functioning in the real world.
Call of Duty Advanced Warfare Hacks Xbox-PS3-PS4-PC No Survey
I don't see how this is relevant when you can buy servers with 3TB of RAM off the shelf.
Our company policy is "in before standup at 11am", I usually roll in anytime between 9 and 10:30 depending on traffic
I don't think this is intended to replace 101-level tutorials. This is to help break down what's going on behind the scenes after you've been through todolist etc.

In the article Mr. Nelson says the intended audience are people who have "spent a couple hours investigating" already.
Well, still didn't work for me! :P (Privacy Badger, Disconnect, uBlock)

But I'm rather aggressively blocking anything/everything I can.