skysight-inc/HackerNews huggingface dataset:
long time passive reader.
just came here to say that i am tired of Elon Musk and his version of the future_of_humanity.

There is an opportunity cost here. Like one of the comments said, we are trying to make it a self-fulfilling prophecy.
So if such person engages in a terrorist act having lied on a form would matter at all?
Because you can as easily create a fake social media profile
I don't understand how you define success without a goal metric how do you know you are not wasting money or are actually making a ton of money off your feature... obviously you know... so you do have a metric...

So the part that is missing from your work experience it sounds like is if you add a feature that doesn't meet these money metrics what do you do? Do you just say lets leave it there, and build another feature or do you question the hypothesis that lead you down that route?

If you question your hypothesis then I think you are not a feature factory, because creating a new hypothesis might not be related at all to feature creation. However, if you decide to ignore your results and the hypothesis that got you there then most likely you move onto the next feature because that's really your only good option for revenue growth. The latter happens A LOT in large companies, and start-ups. It's more fun to build things then to think about why you are building them it seems.
Fill the hole with water. Dogs swim/float.
Either you're luckier than me or we have a different definitions of shit, but I'd agree that the vast majority of code written is shit.
"The goal here is to use 1990 and 2000 Census data on home prices to predict home prices in 2010. If those models prove robust, we can use the model to forecast for 2020."

Selectively picking factors that worked in the past to predict what will happen in the future is like picking stocks based on what worked in the past- "Gee, oil and energy companies skyrocketed from 1990 to 2000, so oil and energy companies will rock from 2010 to 2020!!"
Akshay here, co-founder of Playment.

So there are quite a few differences, the primary being the quality & spam problem that mTurk has. We have a number of quality assurance models which help us promise enterprise grade SLAs to our customers.

Moreover, mTurk is limited to requesters from a few countries. We don't have any such restriction.

Also, Our product enables us to stitch together multiple tasks to model complex multi-step workflows so you don't need to take the hassle of setting up multiple tasks and compiling their results. Playment just does all of that for you.

We've put up a comprehensive piece on this: https://playment.io/playment-vs-mechanical-turk
Just use the parts that work unambiguously. It's a surprisingly small subset of the language.
> C programmers should be able to expect that "optimizations" will not transform program meaning.

If x is null, the program in #2 has no meaning. The only way to preserve its meaning is to assume x is not null.

> Optimization should always be secondary to correctness.

If x is null, the program in #2 has no correctness. The only way to salvage its correctness is to assume x is not null.
If they don't have full disk encryption, booting a mac holding command and R will get you into recovery mode where you can change the root password, or change the boot device to something that simply doesn't care about the login permisions.
Pretty much any machine without full disk encryption at rest is vulnerable when you have physical access. And if they do, you can still probably do a lot of damage, without Bumping into someone at lunch with their laptop.

Not saying it's not a real vector, but it's hardly one that would keep me up at night.
Those titles. What type of roles do they cover? Is there a quick summary -- particularly between analyst and scientist. I expect engineer is source quality, repeatability, accuracy, precision, feature engineering, etc. In other words making the data stable and easily consumed, whether that is directly from the instrument or the charts for the final decision.

The nuance between analyst and scientist is less clear. Can you describe what type of candidates the two draws or what you look for depending on the title?
Creating Distributed Locks with DynamoDB
Thanks for the comment Josh. We just completely revamped our pricing. I'd love to get your feedback on what we've done, especially given your previous experience
> but there are literally ZERO reasons that camera needs to say GoPro, Nikon, Garmin, or Sony when the Chinese version will do the same for a fraction of the cost

That doesn't make it less of a reason for it to be a popular category.
I always make the woodworking analogy. You don't hear people say "I'm a huge router fan." "I'm a tack hammer kind of gal." "I was born a radial arm saw user and I'll die one!"

Maybe you want to make cabinets, or houses, or decks. Pick the tools that help you make what you want to make.
Both the static and OTP modes of Yubikey work for me through this adapter.
I gotta say, that experiment would not convince me.

I own a sodastream. To get fizzy water, I need to inject CO2 under pressure into water to get it to become fizzy.

Wafting some pure CO2 over a glass of water would not make it fizzy or change its PH

Wafting some pure CO2 over a kilometre-deep flask of water would definitely not change it

Considering we're talking about increasing the level of CO2 from 0.000002% to 0.000004%, and then wafting it around the surface of a vast ocean, I don't think the experiments can be compared at all...
> Therefore the compiler "proves" a false theorem.

In the axiomatic system implied by the standard, the hypothetical compiler being discussed can prove that the null check can be eliminated. The fact that you believe this axiomatic system is inconvenient does not constitute a refutation of the truth of the theorem.

> If the compiler is unable to prove a transformation preserves correctness, it should not do the transformation.

Actually, the compiler is able to prove the invariance of correctness. Eliminating a null check after a pointer has been dereferenced does in fact preserve the correctness. Either the function is never called with NULL, and the program is correct, or the function is sometimes called with NULL, and the program is incorrect.

> the bureaucratic mindset holds that the rules are always, by definition, correct

Since you think that the compiler following the standard rigorously is "bureaucratic" and, I imagine, bad, it follows that you would prefer the compiler to sometimes ignore what the standard says and do something different. I suggest that you try compiling your code with a compiler for a different language. Compilers for languages other than C are guaranteed to not follow the C standard.

EDIT: I think I see where you're going. Your argument is that, since in some platforms NULL can be correctly dereferenced, if the compiler was to eliminate the null check, that would change the behavior of the program. If a compiler for that platform did that, I would agree that it would not be preserving correctness. A compiler for a given platform is only required to generate correct code for that particular platform. Compilers for platforms where dereferencing a null pointer is always invalid can correctly eliminate that late null check.
Python has many solid example's of properly applied data structures, with nice encapsulated high-level interfaces. It's a good language to learn if you're interested in the application of data structures.

For instance you have your standard list, which IIRC is implemented as a dynamically allocated array of pointers to Python objects. This gives very fast append and pop operations on it's right side, making it a wonderful stack. However it's interface specifically lacks a dedicated prepend/appendleft operation, because appending to the left of the array involves shifting the entire structure over one place in memory. This is a very slow operation, because it must copy the entire structure to simply insert a single element. Python get's away with append on the right, by allocating a bit of extra "padding" memory on the right side, to avoid having to copy the structure. For the situation where you want to append to either side, Python offers `collections.deque`. This structure is implemented with a linked list of pointers, IIRC. Which gives very fast append operations from either side, because adding a new element only involves "hooking" the new element to the preferred side, kind of like a chain.

However for understanding how these structures are implemented C based languages are the way to go.
In the large, no, they don't care about the 90-95% of the code base that's not performance critical. And these days, the stuff that is critical will be #ifdef and asm(...) stew.

I can't tell you how many projects I have been on where disabling optimization made no measurable difference in performance.

This being said, I cannot speak for game devs nor video device driver developers.
Ask HN: What do you decorate your office with?
Everyone talks about the downsides of the new MacBooks. No one talks about about how they reduced the size of the internal battery by 30%, effectively added a second screen, improved overall performance, and still kept the same battery life.
Amazing news for someone who's about to pull the trigger on the non-touch bar 2016 MBP.

I considered many other options but couldn't find a company with similar build quality and reputation for high quality in the mobile workstation space.

My only concern was the battery, it seems to perform at a high level.
Three Techniques for Catching Memory Leaks in Python and How to Write Smart Code
The only guarantee you'll ever get is that companies that make lots of money will succeed more than companies that don't.

When it comes to real estate: location, location, location. On average, you honestly can't go wrong with anything in the Virgo Supercluster.
Very happy to hear that idle is better. Very unhappy to hear that usage is worse.

I would prefer not to think about my usage patterns and just sit back knowing my new laptop (2016 mbp) is always better than my old (2015 mbp) one in all cases.
Compiler writers have to use program transformation to do well on benchmarks. Developers who don't prioritize benchmarks probably don't use C, and if they do they really shouldn't, because sacrificing correctness for speed is the only thing C is good for these days.
I know that, but read the exact wording they used to define why he is in contempt and what he has to do. That's the important part.

But I'll play along with your pedantic game. First, the wording says to give over his computer and hard drives. What if those hard drives failed? He can't handover the literal hard drives anymore.

Ok, you say it can be any hard drive then. The court will provide replacements and the disk images. If investigators providing those materials is allowed as a means to allow Rawls to complete said task, that means Rawls is allowed access to materials the court (or prosecution or him or some other entity) deems necessary. Not a big deal, right? Wrong. Going down that rabbit hole can lead to a slippery slope where courts can abuse the power of the wording to indefinitely contain anyone given that they assign them a task that "can" be completed with the given materials. However, the feasibility of the task may or may not be reasonable.

It's the twisting of the law through evasive language that is the problem here. They are deliberately avoiding the 5th Amendment by deploying language that skirts the letter of the law and ignores the intention/spirit of it.
Exactly. You are assuming that a poorly written standard is correct and engineering practice of working programs is incorrect.
I was always told if you could be competent with C++ you could learn just about any other language, so wouldn't learning C++ make the most sense?
There it is; they were "pushed" to vote for him.
What do you say about someone who decides instead of incrementally fixing a problem with discipline and superior solutions and consensus, instead decides to spin the wheel with an unknown, likely setting decades of labor and institutions on fire, when vulnerable real lives are at stake.

Exactly how an immature child behaves, flipping the game board, without regard for anyone else.

And all that horrible "politically correctness", aka having manners and respecting others regardless of your own bad upbringing, racism, prejudices, and ignorance; actually demonstrating their own emotional limitations and refusal to evolve.

GOP leader calling for a Kent State again; is that what you mean? The violence is on both sides, a small minority and you know it.
If you want to humanize something most of us eat would you want that done to you? or would you want every effort made?

If you think dogs (and other such animals) are edible why would you object to just filling it in with dirt? You'd slit it's throat normally and cut it's flesh off it's body to eat but you won't suffocate it in 60 seconds by burial?

You need to pick a side.
This is further compounded by how difficult it is to build useful abstractions in C, meaning that much real-world C consists of common patterns, and reviewers focus on recognizing common patterns, which increases the chances that small things slip through code review.

Agreed that these little examples aren't too difficult, especially if you have experience, but I certainly do not envy Linus Torvalds' job.
Not to be that guy; but it is silly that the page functions just fine until the CSS loads and hides the content. This is a blog post, it's not going to take 30 seconds to load, and even if it did it would still be better to watch the page fill in while listening to the dulcet tones of the modem.
I just purchased it based on suggestion. Book mentioned HN at page #12.
365 Shapes of Blue
Wait, all anyone has talked about is how they have done all that... with the exception of the "same" battery life.

A lot of people feel it ... isn't the same.
Those are synonyms.
You're missing a big difference between biased news and authoritarian propaganda: independence from the government itself. This has all sorts of consequences, but one is the type of stories that can appear. North Korea's news is an extreme example of being laser-focused on inane activities of the leader and routine diplomacy, to the complete exclusion of anything about the daily life of civilians. Many people trust the political reporting on broadcast news about as much as they trust KCNA's take on US politics, but non-Alex Jones fans don't think they're covering it up when bad things happen, or that they pull punches on generally apolitical incidents of public or corporate malfeasance. Look at the headlines this week: lots of stuff about the Oroville Dam. In North Korea, public infrastructure issues like that would be completely blacked out to avoid embarrassing the government. My impression of the Chinese press is that it would be reported without criticizing officials for ignoring the dam's weaknesses. Even if people continue retreating into Facebook's bubbles for political news, non-political reporting by western mass media will continue to be widely read and trusted, while the purely political mission of authoritarian state media dooms it to the inanity of KCNA.
This is the correct answer to that and every other "what tool should I learn" question. I'll add my two cents be expanding this answer a bit.

As crusso basically stated, the answer is actually twofold because you have to:

#1 Choose a problem that is fun to solve.
#2 Learn the language that is the best suited to solve that problem.

Regarding #1 up there, the reason you choose something fun to solve is because programming is hard. But, if you are having fun, the enjoyment of solving will keep you motivated through the tough times. You'll find solutions, push through and level up.

Its the same reason you should pick a career you enjoy.
Thanks, that makes sense, and while I do like to trust my team, that sounds like something I want to keep an eye on. Appreciate the info...
Moloch is, in this case, a reference to a poem by Allen Ginsberg.
I'm writing a fresh Twitter. Help me build it.

https://foolow.com
How is that a relevant question?
In the really simple cases (like accessing a float as a long, or similar), you're right.

The problem is the interpretation that's been applied to aggregate types:

struct a {
int variant;
};

struct b {
int variant;
long data;
};

I have a pointer to a struct b - can I cast it to a pointer to struct a and still dereference 'variant'? It has the correct type and is guaranteed to live at the start of the struct in both cases. The prevailing opinion seems to be "no" (see https://trust-in-soft.com/wp-content/uploads/2017/01/vmcai.p... eg. example st1).

The BSD socket API was built on exactly this kind of type punning.
or... arguably kept the 'same' battery life as previous devices, but added more battery draining 'stuff'.

I had one, and returned it, partially for battery life. I'm doing a lot of development (intellij/phpstorm/virtualbox/etc). The battery life wasn't bad - at heavy use, I could get perhaps 6 hours of 'real' usage, but... It was $3700, which was a bit much for my blood given the battery shortcomings (and a few other reasons). But mostly price/performance relative to my workload. For $1200/less I got an approximately similar 2015 model with more battery, and a slightly heavier weight.
The first generation "Retina" machines were not without their drawbacks either, but those were ironed out quickly enough. If you update every single year you'll be intimately aware of these problems. If, like most, you're on a 3-5 year cycle it's largely irrelevant.

People used to buy cars every two to three years as well, but now it's common to retain them for a lot longer unless you're leasing.
>In some sense the language is the compiler and the compiler is the language; the language is much like a human language, used for its utility in expressing things (ideas, programs). You can tell if your human language words work by determining if people understand you. If people start being obtuse and refusing to understand you because of an arbitrary grammar rule that isn't really enforced, you'd be right to be upset with the people just as much as the grammar.

The shortcoming of this interpretation is that programs are not (only) consumed by humans; they're consumed by computers as well. Computers are not at all like humans: there is no such thing as "understanding" or "obtuseness" or even "ideas." You cannot reasonably rely on a computer program, in general, to take arbitrary (Turing-complete!) input and do something reasonable with it, at least not without making compromises on what constitutes "reasonable."

Along this line of thinking, the purpose of the standard is not to generate assembly code; it's to pin down exactly what compromises the compiler is allowed to make with regards to what "reasonable" means. It happens that C allows an implementation to eschew "reasonable" guarantees about behavior for things like "reasonable" guarantees about performance or "reasonable" ease of implementation.

Now, an implementation may choose to provide stronger guarantees for the benefit of its users. It may even be reasonable to expect that in many cases. But at that point you're no longer dealing with C; you're dealing with a derivative language and non-portable programs. I think that for a lot of developers, this is just as bad as a compiler that takes every liberty allowed to it by the standard. The solution, then, is not for GCC and LLVM to make guarantees that the C language standard doesn't strictly require; the solution is for the C language standard to require that GCC and LLVM make those guarantees.

Of course, it doesn't even have to be the C language standard; it could be a "Safe C" standard. The point is that if you want to simultaneously satisfy the constraints that programs be portable and that compilers provide useful guarantees about behavior, then you need to codify those guarantees into some standard. If you just implicitly assume that GCC is going to do something more or less "reasonable" and blame the GCC developers when it doesn't, neither you nor they are going to be happy.
Why You Need to Study Artificial Intelligence or You’ll Be a Dinosaur in 3 Years
Ok, so you want compilers to generate a translation for program #2 that works "correctly" to your mind when x is null.

Please explain to the class the meaning of the construct int y = *x; when x is null, so that all conforming C compilers can be updated to generate code for this case "correctly".
My personal favorite is Jekyll Amplify - https://github.com/ageitgey/amplify

A Jekyll html theme that looks like style of Medium.com and uses Google AMP.
I think you need more features to be competitive. In the span of a week by using socket.io I accomplished live chat on our site plus sending the mouse position and changing the current page a user visits on our site. It's not worth using something paid when building it yourself can be so easy.
It ensures that those who are causing hurt by illegal actions simply have to travel to Swaziland to avoid justice.
That's a fair point.

I've been wrestling with why I feel so uncomfortable with this move. About the best analogy I've come up with: this feels like I've been using a maid service for years. They've done a reliable job keeping my place clean for when I have guests over. They decide that it is time to raise their rates, but rather than come directly to me to negotiate a pay increase they decide that they can just sell billfold space in my house when they clean.

It seems like a violation of a social contract, because my blog is my house and I don't intend to have advertising there, even if I did I'm too small of a fry to make any money that way.

I realize that no one wants to raise rates, and this sort of business model if I had been given the choice up front I'd probably be fine with... If I wasn't also growing increasingly weary of the race-to-bottom-feeding, increasingly toxic ad markets, which has been a concern worrying me the last few months and I haven't had any good ideas, but I certainly don't want my blog participating in that for what tiny bit that is worth.
The value is in the proof of work; just a very hard-to-compute number. All you need to do to steal the work is to prevent the server from sending the hash to the owner, and independently submit that proof of work elsewhere.
We are using DHT https://en.wikipedia.org/wiki/Distributed_hash_table.

Each node announce some key in DHT network, that represents hash of shared secret key.
It wasn't easy enough to use for non technically minded people, and it didn't have a cute name.
Wikipedia? Ok, I have this from a PhD: (surely that counts marginally higher than random wikipedia edited articles): https://youtu.be/CLybCo1cWfc

There never was a golden age in the land of the deserts, especially after Islam took hold. I mean look at some of the things the Quran says. Any golden age was just in people's minds.

Also, if there was one, what happened? Why are there so few scientific breakthroughs in the regions that are largely Islamic?