skysight-inc/HackerNews huggingface dataset:
This is easily described with a contrast to Python. [...] Ruby accepts both exit and quit to accommodate the programmer’s obvious desire to quit its interactive console. Python, on the other hand, pedantically instructs the programmer how to properly do what’s requested, even though it obviously know what is meant (since it’s displaying the error message).

When you're trying to convince me that your programming language is great because another one is so much shitter in comparison, you're on the defensive and basically telling me you don't trust your own stuff. Especially when this is at the top of your article.

By the way, python handles your example very gracefully in comparison to other REPLs (for instance, node spits out a cryptic, but expected traceback on exit/quit)
How are minimally formatted text files impractical on a mobile device?

Surely you're aware of the myriad of applications out there that will synchronize these things without issue.
Oh I know they sell a lot of cars, I've seen hundreds if not a thousand locally since the debut.

>That's not a hobby company by any stretch of the imagination. Yeah, they have problems. Specifically, communications during the delivery process has always been troublesome for them, and there's no reason it should be. But that doesn't make it a "hobbyist organization." That's just silly.

Based on the descriptions of the behavior of Tesla's internal customer service, it actually sounds worse than a hobbyist organization. This is personal perspective though, based on multiple professional and grunt-level jobs over the years.

>I mean, GM's failed processes meant that their products spontaneously shut off and killed people, and they sat on their hands doing nothing while people were still dying, but we don't call that a "hobbyist organization...."

GM is, if memory serves correctly, facing significant legal ramifications (monetary) for their bad oversight and will, presumably, be held accountable in court. Like Ford and Firestone. Or Takata. Pretty much every legacy auto manufacturer started off as a 'hobbyist organization' and after enough success and longevity, they grew into large enterprises that we know today. Can Tesla weather a GM-ignition swtich type lawsuit? Maybe, time will tell.
Refactorator: Xcode Plugin That Refactors Swift
Hmm, isn't that "just" a tiling window manager at the bottom of a few other nice things?

https://en.wikipedia.org/wiki/Tiling_window_manager

While feeling the shortcomings of a window system, I never felt like I could productively work with a tiling manager, since I frequently overlap windows as a mechanism for easy access ... and there are lots of popup windows I don't want to cover the main application.

Oh yes, and I purposefully keep my Mac apps out of Full screen mode (and use a keyboard shortcut to maximize when needed, keeping out of full screen).
That's a pretty crazy claim. So, do you build your own interrupt gates, and take those into account when you're writing PHP?

How about electrons? Can you draw me a graph of the electrons currently residing in your computer case/laptop? Can you explain to me exactly how your PHP code will look in binary?

Sorry to be snippy, but you're making a pretty audacious claim there. I don't think any reasonable software engineer/developer can claim to fully understand every underlying principle.

I mean, you can have an abstract, high-level idea of how things work, but do you really think you know the intimate details of every single piece of hardware/software involved in writing your code?
Tools Adhering to Agile Methodologies
I've heard of that by the name White Elephant gift exchange.

Edit: Wikipedia page: https://en.wikipedia.org/wiki/White_elephant_gift_exchange
That's because you might think you're at fault, but actually not be. Or you might truly be at fault, but in a way that can't be proven. And there might be a huge amount of money at stake, if someone is injured and requires extensive medical treatment.

None of that applies here. Tesla is clearly at fault, actual damages are basically zero (the guy got his money back, at least), and making it right will be pretty cheap, if Tesla actually decides to do so.
> TIL even millionaires look for discounts on Teslas.

Read the "Millionaire next door". The vast majority of millionaires in the US are just slightly above-average income folk who live below their income and save appropriately.

If anything, the typical millionaire will look for discounts everywhere. On the other hand, the "millionaire next door" doesn't buy Teslas, but instead buys used cars.
Soooo sad. I want this now!
Don't tell you manager anything, just do it. If someone tells you to add functionality to a 2000 line function, it takes extra time. If you want the company to benefit a little bit more from the time you spend on grokking it (by saving the next poor soul some time) by splitting it up.

Go to the part that you suspect you need to modify, identify a block of code that together forms something you can give a name, i.e. "initialize_doodad_struct", "validate_widget_params", pull it out put it in a function. Now look at all identifiers that are referenced or declared in your block of code, do a ack or ctrl+f through the 2000-N line function to 100% verify that they're not referenced anywhere. If they aren't you can safely encapsulate them in your new function (if you're working in a static language you probably could just right-mouse-click-extract to do all this).

Then immediately verify that the code still works. Run it, ideally in unit tests but most certainly also in real world(-like) scenarios. Do this for every small step. If your codebase takes 2 hours to compile, instead make a commit. Make a commit for every single 3-10 line extraction you do. (do it anyway, it'll look good and everyone will love you)

And then repeat until either the part you wanted to modify is clear to you, or there's nothing more to extract ;)

By the way, I'm a Ruby programmer mainly, and in Ruby any function over 10 lines is frowned upon. I know that in some programming language communities (looking at you C and C++!) a 200 line function doesn't raise any eyebrows, and they'll sometimes even scold you for extracting a function if it doesn't 'add' anything. I think this is because in C every function pollutes the global namespace, so there's a little more cost associated with it.
Go-Lua: A Lua VM in Go
So if a mathematical fact is known by one person, "it is known."
Are we just making up definitions for "middle class" now? Just because everyone disagrees on what income constitutes middle class does not mean you get to ascribe whatever you want to it and redefine the phrase itself. Home ownership is a signal but is not itself indicative of middle class. As dpark pointed out there are many homes available for under $500K in the SV region. That is certainly doable on a six-figure salary.

And ability to save for retirement is merely a signal too - it has never been used as any kind of barometer for what is middle class.

If we're talking about middle class as it relates to income - which is what people mean the vast majority of the time they use the phrase - then $71k is middle class, full stop. If you exclude the bottom 20% and the top 20% of incomes (the widest generally accepted income range for middle class) you get $47-140k. And this is household income, not personal income.

San Francisco is the outlier in terms of salary, and if you try to project that onto the US as a whole, you end up with statements like "As for $71k I would not personally define that as middle class."
For what it's worth, this feels very similar to the 10/GUI concept, which made some waves in 2009. (http://10gui.com/video/)
Sorting the Slow Way: Perversely Awful Randomized Sorting Algorithms (2007) [pdf]
This looks to me like an evolution of tiling windows manager with a flair of mobile/touch. Something makes me think that windows and macos are both headed in this direction in the long term.
A hobby is something you enjoy that doesn't make you any money. It becomes a business when it starts making you money.
I think you've described better than me why one might overlook certain things. I was far from clear on that when I originally wrote my post.
? All medical consultations are free in this system. It's rationed by queuing - if your condition isn't urgent you may have to wait a few more months for a specialist.
They are experiencing reliability issues which is why Consumer reports said they cannot recommend the Tesla Model S. http://www.consumerreports.org/cars/tesla-reliability-doesnt...
> The canonical example from Bill Joy's time is a fridge that predicts your eating habits and keeps you stocked with the items you need for dinner via automated delivery services.

Yes, but in this canonical example the prediction could, and IMO should, be entirely done client-side; only actual food orders would be done on-line.

> There are plenty. This is one of the ones I'm familiar with: http://github.com/spark*

Thanks! Though this still looks like the "sexy IoT" generation protocol; I was wondering about the article's assertion that "unsexy IoT" is now based on open protocols.
I was surprised to realise that I already do something similar on OS X. All windows full height and have different widths and I use a touchpad.
How I Hire a Rockstar Developer in 6 Steps – Startup Black Belt
Evaluated it and a couple of others. Chose Bosun, never looked back, it's probably the only system with flexible and concise DSL for evaluating alerts (somewhat similar to R in spirit).

Riemann rocks, just not as monitoring system.

Bosun link: http://bosun.org/
HN commenter insight leads to solution for excellent numbers
(This story became flagged between the time I finished this comment and the time I submitted it. I used "vouch" to unflag so I could post the comment anyway, then "unvouch" to undo my vouch. While it was vouched, it got upvotes and this comment got upvotes, leading me to believe that there is interest in discussing this, but I'll leave it to others to make that decision)

The proposed code of conduct is terrible, because of this unclear section:

This Code of Conduct applies both within project spaces
and in public spaces when an individual is representing
the project or its community.

What is a "public space" and what counts as "representing the project or its community"?

For example, suppose Alice [1] is a core contributor to PHP and they adopt this code of conduct as written. On her Facebook public biographical information she proudly lists her PHP affiliation.

She also mentions her hobby of writing adult-oriented Harry Potter fan fiction, and links to her stories at fanfiction.net. These stories are full of sexualized language and imagery. Her author page at fanfiction.net also cites her PHP affiliation.

Is Facebook a "public space"? Is fanfiction.net a "public space"? Is listing her PHP affiliation on those sties count as "representing the project or its community"?

This is not just a theoretical issue. The author of that code of conduct submitted an issue to a project on Github that was not using a code of conduct trying to convince them to remove someone who tweeted something she thought was transphobic, on the grounds that he mentioned the project in his Twitter profile and so his statements reflect on the project [2].

[1] I'm using Alice as a generic name here. If there are any people named Alice who are PHP contributors, this is not a reference to them.

[2] https://github.com/opal/opal/issues/941

PS: Swift is using the same code of conduct. I sent them an email asking how they interpret these things, and their response was:

We want to clarify with you that “representing the project
or its community” in the context of “public spaces” refers
to behavior at Swift-oriented events, and not to individual
social/online profiles or unrelated interests.

PPS: The author of this code of conduct has stated that version 1.4 will expand that unclear section by adding:

Due to their strong association with the project, core
contributors are always seen as actively representing it.

See https://github.com/CoralineAda/contributor_covenant/issues/1...
How many t-shirts?
Vegas!
I like this book, it has a lot of tips for situations like these:

http://www.amazon.com/Working-Effectively-Legacy-Michael-Fea...
Imagine semi-AI parachutes and pallets that measured their trajectory as they landed and fed that data back to the parachutes a few seconds behind them such that the landing precision increased automagically when you drop multiple pallets. Even better prioritize by contents so stuff thats tough and easy to recover by hand lands first as the guinea pig and signals back to all the other soon to arrive pallets whereas you can nearly guarantee the mortar ammo lands within 10 feet of the mortar weapon. Why you could even kick the mortar and mortar rounds off different aircraft and theoretically they'd land right next to each other in formation, whereever they happened to land.

Speaking of guys on the ground using some of those "invisible" IR chemlights and some smoke grenades the soldiers on the ground could visually signal conditions back to the parachutes while the parachutes are falling... This formation of flares on the ground or whatever means hot LZ so use dense hot LZ pattern, this formation means crazy civilians are rushing the field about to get squashed so disperse, this pattern means the LZ has just been overrun so fire the thermite grenades while you're still in the air...

Another strange idea, do the helo LZ thing where you try to secure three LZs to throw the enemy off, and only after the parachutes are already falling, throw smoke and the parachutes all formation fly to the pre-determined LZ. So instead of the enemy having an hour to react or tens of minutes, the troops will be resupplied a couple minutes at most after its obvious they're getting supplies.
Isn't it just --max-old-space-size=whateveryouwant? The default of 512mb seems pretty reasonable.
If it's code, the only way to evaluate it is to run it. That makes it very hard to reason about at scale. ("Which URLs go to load balancer x with SSL".) Not a great idea, in my opinion.
I'm wondering is whether ChakraCore will continue emulating V8 APIs into the future?

One of the comments on the pull request talks about this a little.[0]

"I have separately reached out to each of the V8 and Chakra teams and invited both to sit down face to face to work through the API/ABI impact of this change and figure out how we can make the ABI layer more robust."

[0] - https://github.com/nodejs/node/pull/4765#issuecomment-172935...
It is cited as a source of inspiration on the webpage
Show HN: A productivity planner to help getting stuff done
Unit tests might be hard on a function like this and you might have to admit that your tests are more integrationey than you'd like.
The problem with the tablet analogy is nobody seems to know how to design complex, professional-level (like Photoshop, or Blender) applications in that paradigm. Tablet apps are overwhelmingly consumption-oriented, and those that aren't all seem to be oriented around popular (and populist) appeal.

Why is everyone out for the blood of the desktop/windows paradigm? Why can't the simplified-tablet market and the desktop-power-user markets coexist? Windows and taskbars and start menus are wonderful and my favorite way of interacting with computers, why must it be taken away?
I would add assertions in as well as you iterate. It will validate whether you understand the flow of information through the function.
Go coverage with external tests
dumb, but fun
Exactly. Have fun trying to do feature detection for compatibility purposes on the server-side based on user agent strings.

Because... those never lie. /s
In addition, a passive system is useful for covert as well as overt drops. An active system isn't.
Java is a bad language to work in because it's not expressive, not because it protects programmers (which it doesn't).

Compared to C/C++, yes it does. Java protects you from out-of-bounds array access, uninitialized access, buffer overflows, use-after-free, double-free, etc etc.
Without reading the article: "because violins sound better with f-holes than without."

I'm fun at parties.
Hi all, I'm the one who created the vulnerability (and ultimately fixed it). I'm open to constructive questions.

To all those who cringe, please consider that this code was written while I was learning Angular--and javascript, and html and css, for that matter--while I was still working as a financial professional in a Big 4 accounting firm. Times have changed: I've learned a lot from earlier mistakes and now work as a full-stack developer with Auth0.

Unfortunately, much of the code-base in production Plunker dates from the time when I was new to this whole field and demonstrates two important things:

1. A case-study on inconsistent code style and anti-patterns.

2. Something useful to the community can be produced despite #1.

I co-presented the following talk at ng-conf 2015 that explains this philosophy pretty well: https://www.youtube.com/watch?v=hYXEuQZMLSM
Get a new job :)
I would actually approach this differently. I'd go back to whomever the authority is with regards to what the function is supposed to do, or to the spec, and then rewrite it from scratch. This won't ensure that it behaves as it does now but with a little bit added - it will ensure that it behaves as per the specification / user requirement. If the function is that huge, with just if's, it's very likely that it's buggy and that those bugs haven't been addressed. They won't be addressed if you duplicate the functionality in a refactor unless you can get a handle on the purpose of the thing to begin with. Scrapping it and rewriting it is not a bad thing - frequently, you'll make something much tighter if you do that.

(note: would be happy for you to have left the "offensive" word in - 2,000 lines of code for a single function screams for a refactor, and says that the original dev had no clue how to write good code. if the code makes you want to cuss, well....)
Agreed OP, the advances that Windows 8.1 and Metro made were truly amazing.
GM being held accountable is irrelevant here. My point is simply that large organizations we'd never call "hobbyist" do vastly more stupid things than what Tesla has done here.

I will note that Tesla did just weather what could have been the equivalent of the GM ignition switch problem. They discovered a problem with the front seat belts which could have easily have been fatal in a crash. They pretty much immediately recalled every single vehicle they had on the road to inspect them. As far as I know the problem only ever existed in the one car where they found it, but they immediately took charge of the problem instead of covering their ears and trying to wish it away until they couldn't.

All kinds of companies are dysfunctional in all sorts of ways. That doesn't make it right, but I don't see how the label "hobbyist" applies just because of it.
I love this. So M49 is now the largest known prime, but what does it take to find the next prime number? Or any larger prime?
Can anyone identify a patch to apply to existing kernels to fix this? Are there any released 3.8+ versions that are not vulnerable? The "mitigations" section at the end is not forthcoming about this. Vulnerable systems remain vulnerable without such information.

This does not seem to be a responsible disclosure of the vulnerability (keep in mind it was posted on their blog 5 days ago).
While I agree with the gist of that article/presentation, it's more on the silly side compared to many other more detailed and accurate pieces about the growing weight of the modern web.

While blocking ads will help some (and certainly some ad providers have gone way too far with their bandwidth/cpu requirements), the web is just a richer media experience than before. The mainstream does not just want text and 80-90% of the page weight ends up being images, even on that article itself. There are other advancements like HTTP/2 and modern CDNs and better image formats like FLIF that will solve this problem much more effectively without going back to a textual world.

Still don't see what any of this has to do with HTTPS encryption everywhere though...
It's government inefficiency, not over-regulation. Regulation is essential to preventing abusive labour practices, but when the regulators are not efficient enough to provide licences to good guys who want follow the rules, bad guys who don't give a damn about the rules will take over. Unless Amnesty International is misinformed, this is at least one of the main reasons for this problem.
Do a re-write. If your manager says no to the re-write then add another if condition to handle the current business logic and, at the same time, look for a new job (which is probably what the last guy did).
Seems comparable to the divide between Go and GccGo -- largely identical but conceptually very distinct.

I don't know of anyone voluntarily using GccGo.
No, but a large part of the community is in the US where many people (not all) take offense to even mild swear words (in contrast to for example the UK where even politicians won't hesitate to call someone a wazzock).
Iran managed to "hack" GPS to steer a state of the art American drone to land safely at a location of their choice over four years ago.

https://en.wikipedia.org/wiki/Iran%E2%80%93U.S._RQ-170_incid...

I would say that GPS's vulnerability is a current problem rather than a future one.
All those billion-dollar unicorns showing up on the front page of HN are just hobbies, then?
I think Minecraft will be a great digital lego for those right-brained youngsters. I remember when I was a kid, I would spend those rainy days in the computer lab with Kid Pix.
> Also why conflate fasting and ketogenics?

He made the distinction between ketosis, a ketosis-inducing diet and fasting as far as I could tell:

> I’m suspicious that there are big differences between nutritional ketosis (induced by reducing the intake of high glycemic index foods) and ketosis induced from fasting. In other runs done in nutritional ketosis I didn’t feel that energetic (but it’s hard to compare since I’ve never done it that far in distance). That’s something I may explore.
Agree on CRUD, but on typing I'm the opposite. Anything sufficiently complex logic, especially etl or projects with multiple models of the same entity, is easier for me in a language with duck typing. It's just amazing how all our brains adapt slightly differently to the different sorts of problems we face and the bag of tricks we use, in addition to the different languages and tools.
Argh! What's the point of developing of fully fleshed out work piece like this that doesn't and won't exist! Well other than self-promotion and a fear of it actually totally sucking after it hits the real world of people.
It seems like Windows and OS X should focus on tiling if their true goal is productivity, but they have actually gone in the opposite direction in recent releases by focusing on full-screening apps.
Error while saving Encoding Profile!: field 'videoStreamConfigs.codec' is invalid! valid values: (h264,hevc)

Source is vp8 webm @ 4000x2000. I chose the 1080p adaptive profile and tried to add 4kx2k @ 20mbps and 2kx1k @ 15mbps. Both of the added show encoded of vp8 but don't allow me to change it to h264.

Codec: vp8 FPS: 25.00 Bitrate: 15.00 Mbps Resolution: 2000x1000

I previously encoded the same video just using the 1080p adaptive profile and am unable to convince the player to treat it as 360 video.
You only really know how good your dealership is after you've bought a car and there is some problem.
Python and Ruby come at problems from different directions, and you have to go with the one that suits you. Python-philosophy says "explicit is better than implicit" and Ruby-philosophy says "convention over configuration."--at some level these are irreconcilable. If you want to work one way, the other way is not going to make you happy.