skysight-inc/HackerNews huggingface dataset:
A lot of the time when people say the know, they only think they know. And even if they do know, chances are they don't know how they will do it, and so which functionality will actually be shared.

Even if you insist it isn't premature, the question I'd ask is: for what purpose are you adding it? If not code currently needs it, it's just extra complexity at this point taking time away from writing code that is needed right now.

Now, if you're going to add the Cat class tomorrow, and it will happen 100% guaranteed unless you get hit by a bus, then sure - that's still in keeping with YAGNI, I'd argue.
It is true, however, that knowing about parallelism without (visible) concurrency is useful for writing less buggy software.
FWIW, Hixie, whom timbl is responding to, isn't on the Chrome team, though works at Google.
Oh really? That's great! To be honest I don't follow the Windows situation too closely, as I work on OSX. So things might have improved.
The author's remarks apply to computing Pi in any base, not just base two. Also, all square roots of numbers that aren't perfect squares are irrational, and normal, and therefore contain every imaginable sequence within them, just as Pi does.
Bitcoin Statistics
But does it make me want to touch it?
There's a danger of carbon monoxide poisoning in the bathroom???
Well, there's Google Glass, which is the same basic idea:

http://en.wikipedia.org/wiki/Google_Glass

Here's a more general result about these things:

https://www.google.com/search?q=small+wearabl%3Be+camcorder
You may be interested in a recent comment on this subject by a professional wildlife photographer: http://www.sansmirror.com/newsviews/on-safari-four-years-lat...
A few simple clicks – or chrome://settings/passwords …
This I believe is a good reason why not to allow employees to work from home or even remotely for extended periods.

Remote you could mitigate issues by making sure they go to shared offices where people tend to stay a while.

This isn't the best article in the world on the issue, but it certainly needs looking into.
I think this article should be called why Avatar doesn't work.
Then I respond with this:

"Your A/B test demonstrates it's better for you in the short term. Great! Now you're just being dishonest, instead of ineffective and dishonest."

EDIT: That probably sounds harsh. I have nothing against YC companies, this advertising is just something I personally find disagreeable and annoying.
The Wild and Crazy Career Paths of 5 Self-Made Billionaires (Infographic)
That's interesting, didn't know that. It might be interesting to hear her personal reflections on that choice.
Those boarders will have a hard time :)

It's a great letter though. I'm pretty sure it won't move the needle but it definitely is good to see this. Now lets see who follows suit.

Der Spiegel, Le Monde, El Pais, NRC let's hear it.
People still argue over Flask vs Django.

Django is a working car, the comes with a lot of features, and is more difficult to customize (and you eventually have to start hacking at it for custom features).

Flask is the assembled chassis, engine, steering (no frame, body). It's up to you to build it into a car of your choice.

Eventually though you will have to look at tuning the base system for your special special system.
I think michaelochurch has talked about "concave" vs "convex" work a lot.
If I had a dollar for every time clients have said "when we X" and then later went on to insist we need to do Y instead, that is completely opposite to X, and counter to everything agreed in specs, I'd be happily retired by now, living off my fortune.

It'd be great if we could all know in advance what the requirements will actually be, but that requires us to be able to visualize exactly how everything will actually work in advance. That is rarely the case.

YAGNI is not about avoiding design (though I agree it might be used as an excuse), but about deferring decisions that does not need to be locked in yet, until they need to be. That does not mean you should not design. Just don't go into unnecessary levels of details, and iterate when more detail is needed.
Very nice! I made an HTML 5 multiplayer piano that lets you play with others in realtime: http://www.bandwithfriends.com

Try it out!
Most EU governments have lots of egg on their face. I don't think the EU as a whole will do anything. Maybe a couple of individual states but the EU as a whole? It would surprise me. They should, after all there is the EU DPD which is violated in just about every way imaginable here.

http://en.wikipedia.org/wiki/Data_Protection_Directive

But I don't think it'll happen.
Replace the red "trackpoint" with the concave variety on eBay. It becomes incredibly ergonomic (the concave version let's you use a fraction of the pressure with greater accuracy).
Really? Are we still talking about how OS X doesn't give you "full control over the system?"

Given the popularity of Macs in the developer community, it's pretty clear that you have as much control as you desire—Unix has incredible power.

And if you still somehow feel that OS X is actually constricting you (rather than just hiding advanced settings in the command line), you'd never be able to run Linux on a Mac. No, never... https://wiki.archlinux.org/index.php/MacBook

As for the price component, if you're making your living off a computer I surely how you can afford a decent one.
Yes, the demo was not obvious until I scrolled back to the top. It is beautiful, and I'm sure it took a lot of hard work. After trying it both FF and Chrome, it's frustrating that a 3 year old machine with a decent dedicated Radeon 4670 GPU, can't run such a simple demo at full 60 FPS.

As cool as it is, am I the only one that thinks the "web penalty" is ridiculous? From Crysis to StarCraft, I can play most new games no problem, but not a simple web demo like this.
Indeed. So much of the shitty things people do comes exactly from the presumption that they superior, and have some kind of mandate to fix others. It is vital to listen, empathize, and maybe even to allow other to help "fix" you into a better person, instead of just assuming you are right, and anyone different is wrong.
Regarding the spelling errors, I was also quite shocked at the low quality of the text until I realised that Chrome had decided to tray to translate the English text from Norwegian to English.

After disabling the stupid translation, it was much more readable.
Thinking about reuse and applying YAGNI are not opposites.

On the contrary, I find that to apply YAGNI successfully, you must think about reuse, or you'll waste a ton of time refactoring all the time and the cost of adding the features you do end up needing will be massive.
he was a flotilla captain, 2nd in command of the boat, but in command of two others, according to the WP article.
https://news.ycombinator.com/item?id=2022018

Some more background info. Other issues were:

- outing companies that were still under the radar

- hijacking threads with other job postings
The confusion is worsened by the fact that "concurrent" literally means "at the same time", so calling interleaved timeslices "concurrent" is an oxymoron.

The fact that it's so hard to remember which is supposed to be "concurrency" and which "parallelism" is an indicator of how weakly these words are bound to those meanings.
False through incomplete causality.

Your purchase of that already-extant vehicle will trigger production of another in today's very tightly-managed-inventory world.

Increasingly, even automobiles are made to order (c.f.: Tesla).
Fortunately, we can just create meta threads and critique the company anyway.
who cares honestly, everyone talks shit when they are recruiting. if an applicant can't figure that out, what gives?
Type in the Konami Code and see what happens (up, up, down, down, left, right, left, right, b, a) - an Easter Egg!
If you mean an extra password, the answer is that most people don't want to type in a password when they open their browser. Think it through and try to see the issue.

I don't see your "issue", as using a master password does not "defeat the whole purpose of password saving" at all. Many people have different login credentials for different websites (not only passwords, also login name or email) which are hard to remember which one you used where. Having access to them with a single master password is convenience.

I like the way this is handled in Opera, where your passwords can never be accessed/viewed in plain text at any time. Once your login data are stored, you can simply use them via CTRL+ENTER on the login form and the data is pasted into it. If you want to you can use a master password to restrict access to that data. And you can even set a time after which the the browser will forget that password and then asks for it again after e.g. 15 minutes.
If you have a gas fired bath water heater in there, yes.

Not as common today as they once were but there are still plenty of them.
What controls that aren't offered on top mirrorless cameras?
Google To Build Its Own Driverless Cars
Of the companies you mention, only Olympus can make OK lenses, which are the most important part of a camera system. Canon and Nikon will be just fine, aside from the overall shrinking of the DSLR market.
Does anyone have any insight into the underlying architecture of these large-scale projects? Like programming languages, project structure, how many software people involved? I imagine it's something along the lines of CERN or NASA projects in terms of size, although perhaps not complexity.
The vast majority of airports are non-towered. The playa is about as perfect a surface to land on as you can imagine. The main difficulty is figuring out how far you are above the ground, but if you set up a proper approach, it doesn't really matter.
AdBlock is trying to spread aggressively with a super-bowl ad
I read that as 'none of my competitors stand out from the field'
Check out micro 4/3 lenses, they're pretty small compared to typical SLR stuff and even other mirrorless systems.

The Olympus 45mm f/1.8 is damn minuscule, yet renowned for image quality. The Panasonic 20mm f/1.7 is just as sharp and even smaller.
This explains a particular heuristic bias, i.e., it's a finding of cognitive psychology. The comment you're responding to talks about whether the mathematical models of economics have any correspondence to reality, and if anything, this finding shows that it's difficult to make such a model (rationality cannot be assumed).
I disagree that what you're doing is less complicated. Doing it the way the OP describes is less complicated, in that the number of things you have to think about and account for is greater if you do it your way, than if you do it the OP's way. It's just one more noodle in the ever-growing pile.
You are assuming that you know upfront which of that code actually will be separate.

Some of it may seem very obviously separate, but that does not mean it is clear what the generic version will look like for all practical use cases.

E.g. a generic "move" method may look substantially different if it is to only deal with pets that walk on the ground vs. handle pets that fly too.

How much do you generalize it in advance before it is too much?

If the code really is becoming so large it is a maintenance issue, then sure, yes, separate it anyway. But do it explicitly for that reason.
Last time I checked, OS X did not let you replace the main window system or the OS status bar. The theme of the interface is also not as easily changeable as a KDE or GTK+ theme.

If there's a way to completely remove the graphical interface, it's definitely harder than in Linux, and not as usable afterwards.

You might argue that these options are not needed for a typical OS X user, and perhaps you're right. But you cannot say it really gives you "full control of the system".
I recently chose to setup my old Thinkpad X41t with something fairly similar:

-- antiX 13 "base" with the Debian "stable" source list:
http://antix.mepis.org/index.php?title=Main_Page

-- I3-WM as the window manager. Needs to be installed separately.
http://i3wm.org/

-- Conkeror as the keyboard-driven browser:
http://conkeror.org/FrontPage

The reason for using antiX/Debian rather than Arch is that I have no need to live on the bleeding edge. Once I've set things up I don't want them to break. I3 is at least as good -- probably better -- than ratpoison that I used to use earlier. The ability to quickly switch between "stacked", tabbed and full screen windows works great.
Whether Conkeror is superior to Firefox with Pentadactyl I'm not yet sure of -- subjectively everything seems to
load faster, but you do need to do some extra customization if you are going with Conkeror. Of course, that is
also one of its selling points.
I'm curious, how do you envision game devs using this? Most games are currently done in a plugin of one type or another. Do you think the parallel-ism of Servo is going to finally push html5 gaming to where it needs to be, performance wise?
Or by doing something like Nintendo or Blizzard in the last gaming generations, where you increase the size of the pie itself.
The T42 was a really solid pre-Lenovo ThinkPad that had significant mindshare among tech nerds when I arrived at MIT. It was my machine in college and the keyboard was amazing. I'd probably still be using it if one of the fans hadn't died around year 4. Pretty as Macs are, and awesome as the glass touchpad is, I still miss that ThinkPad keyboard.
I was superficially commenting on the fact that '//' comments everything to the end of the line[1], but as @jimbobimbo pointed out there are multiple layers here, and it would be a good lead-in to a conversation in an interview.

[1]: It just struck me as one of those "low bar" technical interview questions.
Linux 3.9 introduced new way of writing socket servers
I'm not so convinced that YAGNI generally leads so directly to "elegant, short, and easy to maintain code" as you say. Certainly, with a very keen sense of when to make the transition from Ain't to Are, it can lead to time-savings and simpler and more focused code, but with less discipline or tight deadlines or (typically) both, it can also lead to repetition and the complexity of maintaining many one-off features, even if each is relatively simple in itself. Something very similar can be said for a more architectural philosophy - with a very keen sense of when a design is liberating and when it is burdensome, it can lead to less repetition and targeted maintenance, but with less discipline it can lead to analysis-paralysis and over-engineering. Like most things, the best answer is somewhere in the middle.

My preference is YAGNI while keeping a sharp eye on things that are relatively hard to make extensible later and relatively easy to make extensible now. To tack on another not-great example to the not-great Dog example - if I find myself writing 'dog' a bunch of times in a bunch of ways, I may well pull that out into some sort of `type` variable even if I-ain't-gonna-need-it.
Assume it only queries your server. Assume your server will only ever meaningfully return 200. Assume the method has no reason to ever move (so no 301 redirect (edit: and redirects are generally handled by your request library anyway)). Assume the only time it should fail is if your server falls over on itself, which should be temporary.

What else would you do then? These are not crazy expectations. Exponential backoff might be reasonable, but I'd argue that's part of "else{retry}" since it's inherently retrying.
> Really? Are we still talking about how OS X doesn't give you "full control over the system?"

Well, it doesn't. Hence the reason for your need to put quotes around "full control over the system." Because, in fact, you don't. And problems I've solved in the past on Linux are still problems to this day on OS X.

> As for the price component, if you're making your living off a computer I surely how you can afford a decent one.

That's fallacious at best. This ignores people starting out, or in different locations. Not everyone is being handed a MBA and 27" monitor at their plush new SV job. It's useful to be reminded sometimes that while it's nice to have a high quality laptop, you don't need the latest and greatest Apple device to get stuff done.
Or http://shortener.url/quickkit to run a quick program to do the same thing. Which is the entire point the program writers are trying to explain.
Relevant reading:

http://raidersec.blogspot.in/2013/06/how-browsers-store-your...

Also, if you're on FF, do yourself a favour and turn on a master password before it's too late (Tools > Settings > Security).
Addicted to Apps
I hate the UI in Vista/7 and the corresponding Office versions. I managed to trim most of the eye-cruft off of the default, which trims down the edges of most programs, but that god-ahhhwful UI in office just won't go away.

Good thing I don't have to run that crap at home.
iOS supports the web audio API solidly & can be used to get sound working in this app

Here are two web audio API example apps...
http://sleep.fm (online alarm clock; view on iOS device)

And

http://speakerblast.com - blast audio in sync on multiple devices

Anyone know other web apps that heavily use the web audio API?
Also, the first point in the FAQ is wrong. The airport guys don't mind commercial aviation at all, and in fact, have a list of charters on their website http://www.portofentry.org/?page_id=2 The second point is mostly wrong, in that the airport tie-down area is outside the trash fence, but definitely inside the BM closure area, and anyone inside that area will get noticed and caught by either the BLM or BM Perimeter crew.
8th Free and Open Source Software Conference in Germany
>Given the popularity of Macs in the developer community

I haven't noticed this. I've noticed that popularity in the web developer community, but almost every non-web developer I've seen with a Mac has torn out OS X and put Linux or BSD on it.
haha, that kinda makes me want to make a language that prevents comments from breaking scopes, so "}" would implicitly also be a comment terminator :)
Now this is something you won't be able to buy with money.
True and simple. No agency has talent able AND willing to produce something of that quality and love in the budgets which are normally afforded to marketing campaigns...

It saddens me that i spend most of my professional time working for an agency.
We'd start by pointing out that your superior cynicism is also a status symbol/signal.

http://lesswrong.com/lw/ym/cynical_about_cynicism/
I think the greater point here is the CLI first philosophy - it's faster, and more flexible, even on "lesser" hardware.

For example, I treat my Mac nearly the same way with a few pertinent replacements - Vim for editing, Slate for window management, etc.

You could likely do the same in Cygwin on a Windows box.
The whole event-based dogma is that event-based systems are not merely performance-competitive, but performance dominant. If they even tie, but also incur the extra development expense of significantly-increased code complexity, they still lose. If the event-based systems can't stomp thread-based systems in a benchmark, they're unlikely to do it in the real-world either carrying around the extra baggage of complicated code... it's not like event-based code scales up gracefully in size as the problem size increases whereas the (modern [1]!) threading approaches explode in complexity, what with the truth being the exact opposite of that.

Taking benchmarks too seriously is a problem; dismissing them too cavalierly is a problem, too. Those benchmarks may reflect the truth to seven significant digits... but based on what I see in there, I suspect they reflect the truth to about one and a half digits.

I've got some event-based code I manage at work, because it was the best choice. But it wasn't the best choice because of performance, or code complexity, or any of the other putative advantages of event-based systems, it was the best choice due to the local language-use landscape pushing me into a language in which event-based systems are the only credible choice. You know that comment that "design patterns show a weakness in your language?" I don't 100% agree with that, but it's true here; event-based server loops are a sign of a weakness in your language, not a good idea.

[1]: Here defined to a first approximation as "shared little-to-nothing" threading models, rather than the old-school approaches that produced enormous program-state-space complexity.
> Hence the reason for your need to put quotes around "full control over the system."

Or maybe I put quotes around it because I don't agree with that assertion and it's a quote from the article...

> And problems I've solved in the past on Linux are still problems to this day on OS X.

Can you give me an example? I'm genuinely curious...

> This ignores people starting out, or in different locations.

Yet the author certainly could get a MBA, as he specifically references having one.
I'm an introvert. Working from home and remotely for extended periods is actually good for me, psychologically. I don't rely on work for my social interaction. I also worked with a remote employee who was very, very extroverted. He lived with his family, had several video gaming leagues and several in-person RPG groups going all at the same time. Oh, and he also had a dog and a cat.

I guess the moral of the story is, prescribing general office policies under the assumption any work from home employee is a potential suicide risk is misguided. People are responsible for looking after their own mental health, not the company.
Sure, except us west is only in NC and many businesses aren't likely to shift availability zones.
great domain!
It's a lonely and sad thought that the biggest heroes whose immense sacrifices and contributions to the well being of everyone around them are celebrated by... the blissful ignorance of everyone else.

Except in movies. There, we get to see and experience it all.
That's not a counter to my point. Even if they're running Linux, it's more and more on a Mac. (And yes, I do see plenty of those.)

And let's be honest here: more and more developers are web/app developers.
This! The assumption that some uber-1337-hax0r is accessing the system who will install a rootkit just by looking at it is just not close to reality. It is on the other hand a very real situation that some weird friends, family members or co-workers have access to your system while you're not looking.
So no psychohistory yet :(
Lenovo made the T42 too, they were just the silent manufacturer at the time with IBM putting on the branding. I'm not sure of the distribution between IBM and Lenovo for the design and QA aspects, but IBM definitely controlled much of that too.
Funny, then, you'd think the benchmarks would show that, if it's so obvious, instead of showing the opposite.

The problem is that once you understand what lies behind your glib "run some code", you understand what the problem is. I mean, for one thing, the idea that in a busy server switching to a different event handler which has neither its code nor its data in any processor cache is not itself a "context switch" is a use of the term not necessarily connected to any reality, even if one might pass Computer Science 302 with that answer. Alas, we can not convince our CPUs or RAM to go any faster by arguing at them that they aren't making a "context switch".

But, you know, it's an open benchmark, and the benchmarks themselves aren't all that complicated. Do feel free to submit your event-based handlers that blow the socks off the competition. Bearing in mind that is the standard you've set here. Merely competitive means you've still lost. Nor do I see any "but benchmarks don't mean anything" wiggle room in your statements, because what you're talking about is exactly what is being benchmarked.