skysight-inc/HackerNews huggingface dataset:
To be honest, I don't find this to be true. To email a patch, you usually have to

* figure out if you can use git-request-pull or git-send-email
* sign up for a mailing list (which, depending on the mailing list software the project uses, can take anywhere between a few seconds and annoyingly large amounts of minutes)
* optionally figure out how to not receive the whole traffic of the ML or set up custom email filters
* figure out if you have to CC the people responsible for the area of the code you're going to send a patch for (which might be written down in a wiki, some CONTRIBUTING file or somewhere else)
* figure out if the project wants an extra cover letter for the patch series or not (and optionally search the man pages for how to write one).

With GitHub, I just use [hub](https://hub.github.com/) or an Emacs package or plugins for other editors to

* fork the repository
* (without additional tools, I now have to add my newly created remote)
* push to my own remote
* create the pull request after reading CONTRIBUTING<tab>

which so far has been the exact same workflow for every project I've seen (ymmv of course).
Software Architecture Fundamentals QCon London 2016
Good to know work is being done there. Since not all of Ruby's use case is long running, startup time is pretty relevant for scripts.
Depends on what you mean by properly.

Yes, in a sense that your market value seems to be higher than what you were making. However you might have been earning appropriately considering your current environment (based on your work, compared to peers and what company itself can actually make).

Last year I turned down an offer that would be 2.5x increase on what I was making. This year I will nevertheless reduce my involvement in my current company to work on other things (while certainly earning less than the offer I turned down).

The reason for change isn't that I would suddenly be unhappy. I have a habit of regularly re-evaluating what I do and it just happened that last autumn it became clear to me that working in international development exclusively will severely limit my options as developer in future in ways that I am not comfortable.

I have been doing this evaluations for years and certainly all the while I was happily working at the company even though I was happy on an assumption that things change and someday I might come to a different conclusion. As I did.
Hey there, I feel the need to point out this is a topic where it's especially important for people to be civil and charitable, as it's a controversial topic that triggers a lot of strong emotions in people, which can cause a potentially really interesting discussion to go off the rails.

In that spirit, you'll help things a lot by avoiding making combative, straw-man comments like 'What is your alternative? Just say "must be the almighty" and do nothing? Because doing that is surely more scientific?'

That is best practice on HN at all times, but even more so on hot-button topics like this.
That's just the problem. How would you even go about disproving this hypothesis? If there's no alternative it means the hypothesis is not falsifiable, right? And if there's nothing to prove or disprove, what's the point of the investigation?

edit: I guess I'm playing a bit of devil's advocate here to expose the circularity in some arguments that arise when considering these kind of deeply fundamental questions. In fact, my feeling is these kind of more or less subtle logical traps cannot be avoided in this areas of thought.
It seems the ocean cleanup plan been afloat for awhile.

http://www.abc.net.au/environment/articles/2013/12/16/391137...

http://inhabitat.com/19-year-old-student-develops-ocean-clea...
There's plenty reasons other than work that you might resign a perfect job for. For some people, hobbies are more important than jobs, and those hobbies might include traveling around the world, living in a different country, etc. Similarly, some people value family over work, so if their family relocates they would go along as well, giving up their job.

But even in just the realm of money and career, there are companies that offer benefits beyond money - like a certain freedom and culture - so you might feel "properly compensated" there. A monetary crisis(children, health issues, accidents..) could easily force you to take a higher paying job and leave your dream workplace, though.
My default assumption is that "don't try to engineer things to be better" is the wrong answer. If we don't understand it well enough yet, just experiment more until we do. The awesome thing about indoor farming at scale is that it becomes really easy to do lots of experimenting and zero in on exactly what things each plant requires to thrive.

So let's do the opposite thing. Get serious about industrialising farming. No more below-minimum-wage labour, no more flooding pesticides that drain into rivers, no more guessing about what happens because the weather is random. Figure out how to do it cheaply, space-efficiently, and near to the demand so that we aren't driving trucks all over the place (burning a lot of petrol) to ship from middle-of-nowhere farms to urban centres. Just because we haven't got solutions to all these problems today shouldn't stop us from trying to find those solutions.
There's a perfectly good migration mechanism via "from __future__". If you gave the print function a weird name that would be another wart that newcomers would have to learn, and Python 3 was all about making a clean break.
Advisory for Indian Nationals Travelling to the United States of America
Interesting. Why?
Thank you, sir, for the awesome comment!
Tim Ferriss and the Secrets of Accelerated Learning
Can you please mention these things on the README?
This article implicitly assumes that the employee wanted to be in the company for life, at least initially. Which is strange, given the average life-span of a contemporary company, software or otherwise. Still, maybe if the company asks new prospects during their job interviews whether they want to stay in it forever, and rejects those who say no, this may be applicable. Otherwise, it seems a bit like an inflated sense of self importance.

You see, your company is probably not SpaceX, nor NASA. It's not pushing the frontiers of what's possible, or helping make the world a better place. That iPhone-app-cranking shop is just a marketing gig, nothing important on the face of this planet. And many people, many employees, have dreams. Or seek fulfillment, which they may not find in shipping out yet another webapp. They are in your company because it's fun to work on the problems it has - and it pays well - but that's not the extent of their dreams. Especially in this industry, where a lot of people were originally hobbyist programmers, which means tech is for them a part of life, a part of themselves, and not an otherwise uninteresting money-making skill set.

Happy people may very well leave their jobs, even if they love them, because it's unlikely that their life goals are perfectly aligned with company goals.
Not really. Companies can easily offer wages far above the standard market rate (or what others can afford). That doesn't make it so anyone not earning the same as those in the top paying company are being underpaid.

Otherwise you'd be implying that the 'proper' rate is whatever the best paying company is offering in that field.
The 'killer app' of Dylan is (IMO) multiple dispatch. I believe that it changes significantly (in a good way) how the behaviour of programs can be modelled. But the 'Why Dylan' document fails to do a good job of putting that front and centre and explaining its utility and excellence.
The problem is that engineering will, like capitalism, prefer at most two or three different varieties (those who were the best performers to begin with). Everything other will vanish and that's not a world I want to live in.

We already see this with Cavendish bananas and the TR4 virus. We're doomed when something similar appears for common food like rice, wheat or livestock.
"Including the British Isles" doesn't have to mean "all of the British Isles", it can be parsed equally as "Including the ones in the British Isles.

For example, "Including the European countries, I have been to 20 countries" does not mean I have been to every European country.
Sure. We've known this for a while. If this settles the argument, what's the point of further investigation?

It's clear that the brain is intimately involved in the expression of consciousness. But whether it's the source is really a question outside science. For example, it's role could also be analogous to a radio. Damage the radio and there goes the beautiful music. But seeing the radio as the source would be kinda missing the whole point, wouldn't it?
Unix epoch? Unix epoch (maybe according to some guy at Microsoft).
Well I don't share this reductionist view. Overuse entirely infringes upon beauty because the technique in question becomes progressively less vitalic and potent with people thoughtlessly employing it for the affect of authenticity.
Milwaukee, WI | Lead Developer | Sheet Music Direct

Sheet Music Direct, the world’s first and leading digital sheet music website, is looking for a talented and motivated lead developer to join us in revolutionizing the digital sheet music industry. We are based in Milwaukee, WI where we are building the ultimate digital sheet music experience available anytime, anywhere, on any device

The ideal candidate is a music lover whose skills range from front-end to back-end development and everything in between. Successful candidates will have a deep understanding of scalable, distributed systems, service-oriented architectures, full-stack web development, and application design, as well as flexibility and a passion for learning new skills.

If interested in this position, please see the full description here:http://bit.ly/1kAdalp

Submit your résumé and cover letter via email to jobs@sheetmusicdirect.us or apply via LinkedIn.
I've spent about half a decade in each too. And, not to get into an "editor war", but I disagree that Vim is the "better" editor, for the exact same reason you think it is better. While I'm coding, I would rather press down a lot of times than press "7j" and try to either guess or count how many lines I need to jump downward. On my best Vim days, I spent more brain power than I'd have liked in just figuring out the most efficient or shortest command combinations to type to do what I'm trying. Whereas in Emacs, I just reuse the same keys and have no problem repeating them. In your example of "2bcw" I would do "M-b M-b M-d" and that's simpler and more automatic for me -- I don't have to think about it one bit.
Thanks! Good to hear. We haven't yet but we're planning to in late 2016. We are hoping to produce an OS dev kit for A-Level / first-year univeristy students which we can sell at low cost.

Awesome that you're from UoB! Shame you weren't here last term when I ran the lectures/workshops. Are you still living in Bristol?

I have to say, I only come on here occasionally and signed up today to be able to reply to things about FlingOS - new user syndrome is limiting my number of comments though!
Agreed horizontal scrolling is equally disturbing. We do live in an age of wide-screen monitors though so I find vertical whitespace more precious. I would go as far as saying that 160 horizontal chars is a more sensible guide these days.
This is true. It seems that if you're looking to leverage your literary talents for political/commercial ends (Cicero, Pierre Trudeau, Paul Graham?, Locke, Franklin,
Václav Havel, Michael Ignatieff, etc.) you probably need access to wealth to fund your writing career in the first place.

The lone exception being that excitable German with the Charlie Chaplin moustache...
TRON is a microkernels now? Interesting...

I think there is a more pragmatic way to understand the microkernels issues. Performance is but one and over the decades it has become less of an issue, but hasn't vanished which should be noted, you usually have to out do the technology you want to push out. Have you ever modularized something too much? It is a meme here, abstractfactoryfactorybuildersingleton. You break things down in to simple singular purpose components that are easier to build correctly and reusable, then all the sudden you have your favorite Java or .net framework with abstract factory factories.

Take jboss, for example, great code. High quality code. It really works. Complex as all fuck to start using. Then when you want to understand something like jboss serialization, it's spread among a dozen classes in a way you'd have never imagined when you started thinking about it, you just want some function to look at the implements their algorithm. It didn't get that way by accident or even stupidity, it's too reusable. Or rather, their extreme modularity comes at a cost, maybe it's worth it but I don't see a lot of people bragging about a new jboss based whatever here...

Apply this to you operating system and ask yourself why. Why does netbsd port so well to new hardware? And why do people do that? Why is it more difficult to write a posix service on top on a microkernel than a monolithic one! Surely, it's a smaller chunk of code, it should have less complexity, be easier to write, right? It's not, just look at Hurd. The cost is the price of the modularity, your posix service needs to rely on other services, those dependencies need to be coded for, faults handled, etc. what does posix open do when the filesystem service is not responding? (Hint, it depends on the type of fault and whether or not it's recoverable, or you think it is)

They should logically be easier to build and because of that we should be crapping them out left and right. Plan9 should be micro kernel. With the current leaders in operating system semantics, posix and Windows, the modular implementation is more complex than the monolithic one.

There are a bunch of good ones out there, just pick a microkernel and start building a good BSD or Linux drop in, should be easy, right? Maybe if you use it as a hypervisor...
> It's clear that the brain is intimately involved in the expression of consciousness. But whether it's the source is really a question outside science.

There is clearly an interaction between consciousness and physics; a simple proof is that we are now talking about consciousness (its existence somehow loops back into the physical world). Therefore, consciousness should be definitely part of science.
No Linux, no Python, it's Oberon all the way
I would agree with this, though also add that I believe the rant is largely focused on the business aspects of why people leave their jobs. I understood the absence of this discussion as a concession that there are some decisions made in a business that have little or nothing to do with business, and as such, that business cannot influence as heavily.

Such decisions may indeed be bolstered by business choices (not getting enough pay anyways, no where to go anyways, and so on), but if the impetus is a non-business decision, then it's likely no amount of negotiation or "shielding" will change the outcome.

At least, in my experience, such tactics usually come more as a slap in the face rather than a tempting offer.
It's neither shortsighted nor pointless.

This way people will actually switch. Programmers won't change without being forced.

Also, Python 3 was their one chance to break backwards compatibility. And there are so many breaking changes in there that people will have to change their codebase to work with Py3k anyway. Your suggestion just delays breaking compatibility (or actually, causes a later release to break backwards compatibility when it wouldn't have been necessary otherwise) ...unless you're arguing for keeping the old print in indefinitely. Why deprecate it then? And old cruft with "oh, we have that but don't use it" labels attached is definitely confusing. And the label would be ignored by too many "that's-the-way-I've-learned-it-and-it-still-works-so-whats-the-problem" programmers.

This is one of the most trivial changes 2to3 makes; it can be done 100% reliably statically, it's very local and very mechanical, and if you don't get it right you get a syntax error on startup (instead of exceptions at runtime (e.g. unicode strings) or even different behavior (e.g. integer division)). The print statement->function change is just not that big of a problem when updating codebases to py3k. It's very visible (because everyone knows print), but the other changes will take much more work and be much harder to debug, so why get hung up over it?
Why exactly is horse meat sub-par? From what I've heard it's actually better than cow meat, but harder to market.
Indeed Instagram is looking inward. But isn't large portion of both Facebook and Twitter posts is no more than a link to other sites with a brief comment?
Oh wait, you didn't find it, you're the one who forked it! I should pay closer attention to usernames heh. Thanks so much for forking it and holding onto it for this long. Out of curiosity, if you did have the time, what kind of things would you have hacked into it?
SEEKING WORK - remote / Berlin

I'm a front-leaning, full-stack developer that is living in Berlin. I am American, and I have some conversational ability in German.

I have experience with every aspect of creating an application, from mockups and UX design, to graphic design, to the full-stack implementation, to deployment.

I've successfully built and sold a past start-up of mine, and have a great deal of insight with product development. Because of this, I'm probably of most value the earlier a project is in its life cycle.

Backend stack: Ruby on Rails, with DBs/data stores such as MySQL, Postgres, Mongo, Redis, Elastic Search.

Frontend stack: my strong preference is for React.js, though I've done a bunch of work with Angular and Meteor. I am well-versed in current best practices, can build responsive mobile-friendly websites, and code pixel perfect CSS and HTML5.

I'm also a very capable graphic designer, which can be seen from viewing past and present work on my portfolio.

Portfolio: http://eatingthe.com

Github: https://github.com/superplussed

Email: jeremy@superplussed.com
Note also that naming of bits of Britain regularly appears on ANI and has had Arbcom measures applied.

relying on wikipedia for information about contentious stuff is sub-optimal.
It's not the long-form content that's off putting but the form of the content.
It seems foolish to take function length as a standard of good code. The example refactor looks horrible to me.

How about the function can be read top to bottom, doesn't mess with global state (unless it explicitly is documented as doing so), and has clear inputs and outputs. Who cares if it is 5,10 or 100 lines if it does that.
You have to start somewhere. Gathering the surface waste will definitely have a positive, effect.

http://ocean.si.edu/slideshow/laysan-albatrosses%E2%80%99-pl...
If I'm insanely fortunate I will have 100 reasonably healthy years on this planet. Spending 3-4% of my life at any one company is a lot if you ask me, no matter how much I like it there. The bottom line for a lot of people on HN is that they don't have to if they don't want to. And like you say, most companies are not SpaceX. While you can certainly still grow and crush it after 2-3 years, chances are that you can grow and crush it that much more if you uproot and start over somewhere else.
This is an interesting issue - how people interpet the name seems to come out 50/50 between "OS for learning OS dev" and "OS for educational content". In my experience, people's backgrounds are the biggest factor affecting which they think of.

We're reluctant to go with "model" OS or similar because we're not actually implementing anything like an ideal OS - we don't use optimised algorithms for example. The idea being that you can learn/teach the OS concept using a simple implementation (and readable code) and then students/developers can optimise as an exercise/extension/for a real OS. So it's not a "model" OS but is an "example" OS to use to teach the key concepts.

Unfortunately, "example" OS leads people to think our OS is practical as a basis for a real OS, which it isn't and we don't want to give the impression we're trying to rival Linux/Windows/OSX/etc. No name seems to give a universally correct and good first impression!
> Which is very scary.

They really do seem to take food more seriously in France.
> It didn't stop IE from being robbed of momentum

IE actually handled the transition very well, because backwards compatibility was the thing that kept it in the game. When it lost it was because this feature no longer mattered (that much).
So true, "Humans Never Forget"!
WebSQL is not supported by IE nor FF, and is limited by 50 MB.

IndexedDB is limited by same 50MB, 5MB on mobile, and is only partially supported by IE, Safari and iOS.
One thing that frustrates me is my endless quest to find a decent electronic character sheet. They're like the to-do list app that's never quite what you want.
You are your credit score
Very simple CMS built on top of Google Sheets
So you save a few milliseconds if you don't initialize some filesystems, good but makes very little difference in the end.

Not having a hard disk? Doesn't require a microkernel at all. Booting over LAN has been practical for a long time.

If I glance the closest linux machine I have, it has a 6MB kernel with 10MB initrd. To put that on a server with gigabytes of ram? Trimming an unused networking stack here is not the use case where a microkernel will help performance.
That's why I asked that. Their's a crap name.
"Looks"

And the somewhat related ability to be shipped and stored without bruising or rotting.
Abstract Interpretation in a Nutshell (2008)
To some extent, yes. In some of my projects I decided to avoid using Babel and just limit myself to Node's (new) features. The advantages of not having a build step for the backend js is sometimes worth it.

However, there are so many cases where Babel is useful, or turns out to be 'necessary', that I'm considering just using Babel by default again.

Some examples:

- JSX for using React in the back-end (almost a default for me nowadays)
- async/await for async-heavy code
- a miscellaneous few still-unsupported ES2015 features that occasionally are sorely missed

And finally, it's happing more and more regularly that I end up wanting to use some server-side modules on the client-side, in which case I need to set up Babel anyways.

That said, if I'm pretty sure I'm not going to need Babel, I still try to leave it out. It adds complexity that I'd rather avoid.
Fight Club 5 on iOS is pretty good, I'd recommend trying it out if you have an iPhone/iPad. A bonus nicety is that it can back up to iCloud so you can sync between devices easily (and without a service that might one day go down).
Advice to Aimless, Excited Programmers (2010)
Hold onto Your Astro-Butts, 2016 Will Be a Big Year for Space
It's other meat than was written on the packaging, I didn't mean the meat quality itself.
Linux kernel management style
Well, everyone agrees that the brain acts as a kind of radio: its antennas are the senses and the music is the stream of qualia. Or something like that. Language is also a big part of consciousness, and that's not internal to the brain—it's social. So it's kind of unclear what it means to talk about the "source" of consciousness.

Most often I see the radio metaphor invoked in a vaguely mystical way, where the signal of consciousness is supposed to emanate from some totally unknown background source that nobody has any idea at all what it might be, except some people choose to call it "God." All that stuff is totally non-scientific until someone comes up with a clear hypothesis.
I think because it runs on Node 4, written in ES6, uses Koa by default instead of Express
if you go to a farmer and say "this variety is more rare, but this other variety is a more safer bet", they will probably pick the latter, regardless of capitalism, or science, or engineering.

And its not like science can't produce /new/ varieties either, STEM isn't that much of a monoculture!