skysight-inc/HackerNews huggingface dataset:
To some extent the mobile platform did the same thing:increasing the constraints, both on performance, and on interfaces. So maybe we'll see something similar ? more demand, higher salaries, but non the less, options for relative noobs to do interesting things ?
Similarly, my house has two Honeywell networked thermostats. These are networked devices controllable via smartphone or web app, etc. But if the company stopped providing the service behind it, they're still perfectly adequate programmable thermostats. They'll keep on working fine, albeit requiring manual programming, rather than turn into paperweights.

I fail to see the excitement about the Nest, and I claim that yours hasn't saved you any money compared to mine, even adjusted for effort involved. The time it took me to set up my device - when I actually know what our work/home schedule is, so no training is involved, is minimal. And there's no confusion in the device when, at this time of year, I want to just use outside air through open windows to keep my home cool. A device that can leverage the human mind's power is great. A device that simply replaces one flavor of (trivial) mental effort with a different one isn't terribly valuable.
It means you live inside cadence actually drawing where metal will go, where poly will go and so on, you design the actual transistors, connections, everything. You do this design and you're constantly fixing warnings and errors about process limitations such as "this metal line can't be thinner than X amount", or "on level 3 you can't have this interconnect so closer together" and so on. Looks more or less like this: http://i.imgur.com/ECIVChO.png
Honestly, I feel like the current is going the opposite direction here. In the mid-to-late 2000s the most ascendent languages seemed to be dynamic ones. Ruby, Python, PHP, Javascript, etc. Perhaps that's web solipsism, but those are the languages I remember having the highest visibility from that time.

Currently, the tide seems to be changing to towards static typing (and stronger typing). Swift, rust, go, scala, etc. Already statically typed languages seem to be borrowing ideas from their stronger typed brethren. C++ gaining concepts (similar to typeclasses from haskell), Java encouraging the use of Optional (similar to Maybe sum types) for nullable values, etc. Many dynamic languages seem to be providing type checking as an option. Clojure, python with PEP 484, various javascript dialects and type system addons, etc.

Tests are important and should supplement a static type system, since there are many classes of bugs a static type system can't prevent. But the benefits of static typing as opposed to TDD for verifying the same thing are obvious to me:

1. Tests are not proofs. Unless a test is exhaustive on the set of inputs accepted, it cannot prove that a piece of code works correctly. Types can prove that certain inputs can never be received by a piece of code, which is a stronger guarantee.

2. Tests are more work. Why write tests to verify assertions that a compiler can prove for me? In practice I find this means that unit tests attempting to verify correct behavior for incorrect inputs have gaps or are imperfect because of lack of time or lack of foresight.

3. Tests are still code. Test assertions can have bugs in the same way that regular code can have bugs. True enough, a type system is also code and can also have bugs, but the code in a type system is more visible and more attended to. In practice, I have found many bugs from flawed test assertions and none from a broken type system (as far as I know).
Happiness genes located for the first time
> First: giving up on the idea of militias rising against the federal government. If it ever became necessary, and if the military stayed on the government side, well, we're getting really good at taking out resistance from the safety and comfort of a control room hundreds or even thousands of miles away from the action. Some dudes with camo and rifles aren't gonna cut it. And if the military doesn't stay on the government side, well, the arms are gonna be available. So that one's right out, and I'd argue for repealing the Second Amendment entirely to make it crystal-clear.
> Then: registered and tracked ownership of firearms, sale and possession heavily taxed along with tax on ammunition, no sales permitted without full strict documented background check, immediate confiscation after any incident indicating unfitness to own, mandatory requirements for secure unloaded storage at all times the gun is not in use, ownership limited to well-defined types of firearms, ownership solely for the purpose of collectibility/historical value or for sport, use restricted to areas explicitly designated for such purposes. No open carry, no concealed carry, and anyone who wants a gun for the purpose of shooting other people (and self-defense is "for the purpose of shooting other people") automatically forbidden to ever have one.

... and you have the unmitigated gall to claim that those of us on the other side of this issue are "all or nothing".
Inside card sorters: 1920s data processing, relay logic and linear time sorting
Can any average Joe sign up for these exchanges and start trading? Would be more than happy to lose a couple bucks playing around
I am not employed by Google. If I were, I would still have a right to disagree with the art direction. The execution was fine; I preferred other concepts which did more to display Shannon's work. Shannon's juggling was about as relevant as the flamethrowing trumpet he designed. Juggling was supposed to be more 'accessible'. Should doodles be representative, or accessible?
Oh, thanks a lot, fixed!
10,000$ phones. Are they sane? This is the new "I am rich" app, now as a phone.
The School of Life
True, I do apologize but seeing such evil makes me mad.

And the user I was commenting to has removed their comment making it look even worse.
It is a taxable LLC. He doesn't get the tax-benefits of setting up a nonprofit, but he has much more freedom in how to use the money (e.g. including making investments vs donations, and including non-tax-deductible political activism).
https://en.wikipedia.org/wiki/Chan_Zuckerberg_Initiative#Com...
> The language is very opinionated about type safety... For example, the fact that a variable of type X might also be nil means you must declare that variable to hold an "optional" value... The extreme nature of the type system in swift

Oh boy, if he thinks that's extreme...

> Why am I wasting time satisfying the type constraints of Java when my unit tests are already checking everything?

Oh really? Are the unit tests testing every single 2^64 possible values of an Int? Are they testing for the existence of null everywhere you have a pointer? Strong types aren't just a little bit more info about something; they're a precise refinement of the nature of all values in a program.

While very few type systems can test everything you can test with unit tests, a decent type system and good semantics can cover all causes of crash failures and many causes of logic errors. Seriously, folks; writing programs that crash is more or less optional these days. Writing correct programs is still hard, but you can make it a lot easier on yourself.
> Without those pesky types, how does one

> do automated refactoring in a large codebase?

> By hand?

Dunno. One could use the RefactoringBrowser. The first automated refactoring tool. Ever. In Smalltalk. A dynamically typed programming language.

The authors even talked about the tradeoffs of using a dynamic language. They thought the problems would be bigger than they turned out to be.

http://dl.acm.org/citation.cfm?id=280610

http://www.refactory.com/tools/refactoring-browser

http://c2.com/cgi/wiki?RefactoringBrowser
Yes, that's what a lay reading gets you - and why I was disappointed with the article. Is the author just clueless or are they trying to make one of Intel's competitors look better? Everyone who follows these things knows that the other guy's 14nm node is more comparable to Intel's 22nm node. Apparently a nanometer is not always a nanometer...
Hmm, interesting! I assume you use Safari ("from sites I visit" is their preferences language)? In the last link authors actually differentiate between "Some 3p = Safari-style third-party cookie blocking" and "All 3p = Blocking all third-party cookies", so I guess Safari's method of blocking is not the strictest.

Another possibility is that you use some rare static IP, which Criteo could somehow connect to email. But it's probably a stretch.

Keep in mind also that some of your correspondents could agree to share their email list on some site or to some app, so that could leak the email itself and real name (but still it's unclear how it was connected to your browser).
Not necessary. Python allows any open bracket to signal that the line is not terminated yet.
Changed to "high performance" :) I don't have a strong opinion myself, as english is not my primary language, but I appreciate the input.
Types are also code and can have errors in them...
Why don't you try and read some research papers on this topic and then decide how you would want to build your algorithm? Some links -

http://static.googleusercontent.com/media/research.google.co...

http://insight-centre.org/sites/default/files/publications/1...

http://users.cis.fiu.edu/~taoli/pub/p125-li-sigir2011.pdf

http://arxiv.org/pdf/1303.0665v2.pdf

http://scholarworks.sjsu.edu/cgi/viewcontent.cgi?article=129...

https://www.ntnu.no/wiki/download/attachments/71733389/WEBIS...

A chapter dedicated to the subject -

http://infolab.stanford.edu/~ullman/mmds/ch9.pdf
"Vendoring" means maintaining local copies of third-party libraries and other dependencies in your local repo so exactly what you depend on is a part of your internal history. Git provides ways of doing this easily, such as subtrees.
Growing up, I can't think of anyone I knew that didn't have guns, or who professed to believe they should be restricted further.
I'm surprised financial services have not popped up just to help people in such situations. The service could confirm the person has as much coming as they say, have him sign his life away to them, and then float him enough cash to buy the stock and pay the taxes on time. Then the employee pay some portion of his new wealth to the financial services company.

Does that really not exist?
Exactly. Types are a class of tests, checked by the compiler at compile time.
If you care about miniaturization you can't make chips larger. If you stack chips you will have to deal with heat dissipation. What do you mean about making integrated circuits from several parts? I'm not an expert on IC design. The reality is that laptops have not increase performance in the last 5 years as much as they did before. Desktop GPUs are getting more powerful at the expense of being more and more power hungry. I feel that in the smartphone space the claim of "This new model is 2x performance of the previous one" will be harder to make.
Finding a new home for Thunderbird
> Are the unit tests testing every single 2^64 possible values of an Int?

Hmm...your usual type checker is checking 0 possible values of an int. It is checking just the type. And of course if you are checking a value in a test, you ar coincidentally also checking its type.

That's not to say that types can't be useful (for example they have been shown to be quite useful as machine-checked documentation for getting around unfamiliar codebases), but please let's not oversell...
I can't see why they don't auction these off instead of give them away by lottery.
On this topic I'd like to mention the machine learning papers site GitXiv, which is wonderful. It publishes papers alongside the Github repo containing the code.

http://gitxiv.com/
Predicting the future, one week at a time
>Tests are not proofs

Neither is static typing. It's a layer of protection, much like tests.

>Tests are more work

I don't think that's necessarily true. You still need to write tests with or without static typing. Those tests you need to write anyway will usually catch type errors in a dynamically typed language that a statically typed language picks up at compile time.

The question is whether you need to write more tests (probably you do...maybe 5% more), and whether the greater number of tests offsets the greater amount of code you need to write to statically type your code.

As far as I'm concerned, that's not an easily answered question.

>Tests are still code. Test assertions can have bugs in the same way that regular code can have bugs

Ditto for types.
I want them connected to my personal network. If they connect to the Internet, it'll be through the gateway I wrote.
It's not just the exercise price, it's the tax bill at the end of the year...
Thanks.

But how does it Apply to a whole SOC ? you basically go to the critical sections and optimize them by hand, better than the synthesis tool ? Or just supply some basic components to the design team , and if so isn't it the job of the fab and the PDK(process design kit) ?
I created a second account last year, after having my primary account since 2007. The onboarding procedure, if you do end up creating an account, is absolutely horrible.

You have to choose a username, a password, pick a photo maybe. They then walk you through half a dozen screens of 'follow one of these celebrity accounts', with the UI designed in such a way as to feel like you're supposed to choose one before you proceed to the next screen.

Once you get through their awful onboarding, which in my case I did by skipping following anyone, the entire UI is geared towards pressuring you into following new people over and over, without any real idea of who you were, what you wanted out of Twitter, or what your account was for. There's always some new box taking up 30% of one of the columns telling you you should go follow a bunch of (initially) apparently random people.

They've also added the new 'While you were away' feature, which consistently shows me tweets which I have already replied to via twitter clients. If I'm active on Twitter every day but I don't visit the website for two weeks, it'll show me two-week-old tweets (which, again, I've already replied to).

Twitter has been so consistent in terms of adding new features that no one I know likes, and I've made dozens of sales of Tapbots' Tweetbot client solely based on telling people that all the annoying new features Twitter keeps adding are never in third-party clients, so they don't have to worry about (e.g.) DMs suddenly being relegated to three taps away from the main screen for a few months before being brought back.

I get the strong impression that Twitter's management has a vision for how they get paid, and they're trying to shoehorn their user behavior into this vision rather than building something around how users actually use Twitter or what features would actually be useful to them.
One thing to keep in mind is that you might not have until next April 15th to pay your taxes after exercise. If the exercise benefit is large enough compared to your typical income, you might owe estimated taxes that quarter.
I fear that AI will most rapitly be adopted in clinics for optimizing the diagnosis keys for which they charge the health insurance providers. This task is currtly done by human controllers and early expert based software systems.

This is were the big cash is.
Don't read Shakespeare. He made up gobs of useful words.
reCAPTCHA and throttling after suspicious number of failed attempts by an IP.

Four digit PIN prompt that gets displayed even when requesting invalid URL. Make PIN verification backend request include some nonce associated with original request, and force nonce to be regenerated if PIN verification fails. PIN is also as easy to communicate verbally as URL.
Security-wise, it's a rather bad idea to build a web browser on top of the Atom Electron framework at the moment [1], at least unless you are willing to fork or contribute patches to Electron each time when a new Chrome version with security fixes is released.

[1] https://github.com/electron/electron/issues/5210
Hashing is expensive.
Does Microsoft properly promote your apps?
Wondering if anyone else is frustrated with apps getting lost in the Windows app store?
Thanks. I will have a look.
The rise of PR is definitely a problem, as is the consolidation of media conglomerates.

Plus good journalism is just really difficult. Another comment below referenced the Gell-Mann effect, which is really easy to lose sight of in day to day reading. There is also a lot of pressure to publish quickly - at the cost of quality - and that's on top of the incentives to nab clicks.

I like the notion of journalism as debate, where the sides are clear and each must marshal evidence to support their position. Though like another comment said, we can still get BS evolution vs skeptic debates because too often the burden of evidence is ignored. Then what are the sides? Left vs Right? Corporate vs Independent like Politifact vs Fair.org?

And then: evidence can be manufactured. Need support for a policy? Fund a think tank to do a study it.

Not that studies are always self-interested. Take Y-Combinator's exploration of Universal Basic Income. They don't stand to directly benefit from exploring it; they see a massive challenge, and have the assets to explore UBI as a potential solution.

I do, however, believe journalism will improve in the long run, in large part because I believe good ideas and quality usually survive. And we have more good ideas than ever.
http://insidestory.org.au/keeping-the-sea-lanes-open-a-cost-...
Is this because they're all being forced to work on features which (at least among tech and non-tech friends of mine) not only no one wants, but everyone wishes would go away?

It must be hugely demoralizing to spend months working on a new feature and then release it and have tons of people say 'why was this ever added? who is this for? why would people want this and how can I get rid of it?', yet every time they add new functionality this is what I hear from everyone I know, to the point where not supporting Twitter's latest features has become the selling point I use for third-party Twitter clients.

Personally, I can't think of a feature since Lists that I actually use. I would say 'posting videos in a tweet' but you seem to have to convert them to a gif and then upload it and let them convert it back to a video so...
> My own prediction is that TDD is the deciding factor.

If this turns out to be the case, then people would reach for statically typed languages to augment & cut-down on tests.

Like everyone here is saying, the pendulum is moving toward statically typed. The next generation will probably be in higher kinded types as we continue to attempt to write more generic code that cuts down on number of lines, but still preserves type guarantees.

Finally, I don't think it's appropriate to regard `Option[T]` as some mystical type. It's just a regular old generic class that wraps something. Scala programmers (and I'm sure others) have been doing this with `Either[A,B]` & `Option[A]` for awhile, but Swift was really clever in building it into the language with the `?` & `!` operators.
The Digital Afterlife of Lost Family Photos
>I don't know about what the author's goals are, but I am in favor of offloading as much work to computer as possible.

The problem is that both writing more tests and statically typing your code involve extra code you need to write. Neither one comes for free.
Right. They are one class of tests that happens to be checked at compile time. But what about all the other tests that you still have to do? Which typically also coincidentally check the types (if I check that a value is > 2, I am also checking that its type is number (or int or whatever your particular numeric tower or non-tower says).

And what is the value of "compile time", if the all this type checking makes the compiler so slow that just compiling is slower than compiling + running unit tests in a simpler language? What if it catches 10% of errors (optimistic estimate) but due to constraints in reusability makes my code 20% bigger (conservative estimate)? Likely around 10% more bugs.

Don't get me wrong: I like static typing (to some degree). I just get antsy when it gets oversold.
You're right, and IIRC this symbol has been proposed before unsuccessfully. But recent events have called to attention the backstory behind Prince's symbol---how it was created for use as a tool to modify an unfair contract, and how that successful hack opened up the recording industry for artists---many articles were printed about it at the time (most of them missing the point), a few books were written since, lots more articles were published about it last week, and likely more books about Prince are being written now.

A code point is needed for Prince's symbol now. It's no longer merely pop culture but history and law.
Hey, if they can pull it off, good on them.
Silence on the Wire is a fantastic book that looks at unconventional and underdiscussed aspects of security: interesting timing attacks, subtle information leakage, fingerprinting, etc. It's by Michal Zalewski, who is perhaps better known to HN folks as the author of the American Fuzzy Lop (AFL) fuzzer.

I think that book probably did more to get me into security than any other – it's just filled with really wonderful, clever stuff.
Looks cool but I get a bad gateway error when I try to set up an account :-(
"On the eve of publication, Bertrand Russel wrote to Frege and pointed out that Frege's logical system allowed statements that were ambiguous -- neither false nor true."

This makes it sound as though Russel showed the system to be incomplete, and the reference to Godel's theorem in the next paragraph reinforces the confusion. Russel instead showed the system to be inconsistent, which is much worse.
Is my installation behind the times? 'man bash_builtins' doesn't exist on my system. Instead my bash man page has a 'SHELL BUILTIN COMMANDS' section.

Actually the bash man page is so huge, it'd be nice to see it reorganized (as a man page, not an info page) along the lines of 'man perl', as in index into other major parts of bash. 'man perl' is an existence proof that you can make large subjects man-friendly.
Agreed, as much as I support the ideals of the EFF, this kind of misleading scare tactic really rubs me the wrong way. It feels like they're compromising the moral high ground in order to elicit a larger response--which I understand might be the straightest path to accomplishing their goals, but it feels dirty.
Self-Driving is already here for highways?
I'm surprised by how apt Lua is for these kind of algorithms. From the architecture diagram I expected to be hit by a large blob of code but found that most of things are taken care by the language/framework itself!
I think this journal aims to professional who know the details about intel/others process nodes, so he doesn't mention that specifically.
> ”A person shall not intentionally access or cause access to be made to an electronic system of a motor vehicle to willfully destroy, damage, impair, alter or gain unauthorized control of the motor vehicle.” Doing so is deemed a felony and is punishable by incarceration with a maximum penalty of life imprisonment.

That's over the top.
I recently got an offer from Uber (didn't accept for various reasons), so I have a couple of data points. In the last two years, they started offering RSUs, not options, that addressed this issue. And two years ago, they had roughly 200 engineers vs 2000+ engineers now. The issues they had 2 years ago are different, as was the business, it wasn't nearly as ubiquitous and now since they offer RSUs, there isn't the same level of problems.

So it's another hit piece on Uber that is completely unfounded.
I agree and had in mind something like teaching critical thinking/fact checking but than this would probably be the last thing religious schools wound want.
538 is the worst flavor of insider baseball out there.

It reminds me of an Issac Asimov story where people didn't have to vote because a computer could predict who would win the election anyway.