skysight-inc/HackerNews huggingface dataset:
This must be a joke. Right?

The example of the world's best teacher is .. James Cameron.

Why? Because he's rich? Throw money at rich people and the world will be better for it?

There is nothing to suggest you'd learn math better with high production values or 3D effects or even talented actors(!). I simply can't take this seriously.
Unless you're talking about predatory VCs, comparing them to publishers is an insult.

Publishers routinely demand that authors submit their next book (or even everything you write in the same genre for years) to them first and even if they reject it they have the right to match any offer you get later.

How many VCs demand rights over your next N years of startups?

Or we could talk about high-discount clauses: Where publishers get a bigger percentage when your books are discounted below a threshold they claim is unlikely... Only to turn around and encourage retailers (including Amazon) to discount your book just below that threshold - where they make more per book and you make substantially less.

How often do VCs make more money by going behind your back to convince an acquirer to pay less?

Or we could talk about rights reversion games, shuffling sales through shell companies cut royalties and on and on and on.

I know VCs can be ruthless, underhanded and worse, but traditional publishers can make them look like kittens by comparison.
I'm skeptical about dual-track organizations (read my other post in this thread, here: https://news.ycombinator.com/item?id=8481680 ). I agree that it's a good idea, but they tend to make it astronomically harder to be a Director-equivalent engineer than a Director. Ultimately, the management ladder is easier to scale and therefore "better", insofar as you can be a Director and still code (if you want).

I look at it this way. I've been programming for 10 years and, in a typical "do what I'm told" job, I'm not going to learn anything new. Sure, managers only get 10-15 hours of coding time, but that's more than you'll get in useful coding time as a managed employee anyway.

As a manager, you can have your underlings explore new technologies and report back, keeping you current on the field, and while you'll only get 10-15 hours of coding time (unless you work 40+) you have a lot more freedom in deciding what you code, and power to get your work noticed. I'd rather have 10 hours per week of quality coding experience than 40 hours in the Java mines maintaining someone's VibratorFactoryVisitorSingleton.

Managers are good at complain-bragging and making their track sound more painful than it actually is. The fact is that a manager who keeps his coding skill current is highly valued. Being a manager means you have organizational credibility, and if you want to use that credibility to code because you think it's the right thing for you, then you can.

If I were to take a cynical view of dual-track organizations, I'd say that the real purpose is to convince the programmers that the management-ladder people are better than they actually are. A Director-equivalent programmer at Google (Principal Engineer) is an objectively strong engineer, and it's competitive as hell to get to that rank. The Director-level managers at Google aren't any better than middle-management at other companies.
Never had a problem personally
Commit time is a good time to step back a little and think about what I wrote and why. Organizing hunks of changes into a meaningful package. I usually commit when I'm done with a feature (once or twice a day) or right after fixing a bug (a good dozen times a day).
Thanks, i already noticed the age of the project :). The ""complaint"" is obviously valid, i'd add at least half a page of examples to explain what it does and how to try it, just to increase the chance of contribution.

No snarkiness was intended... but looks like it came out that way.
Conditional logic in Ant
Bwa ha ha!

Brilliant.
Every once in a while, certain people in southern Sweden will go on a booze shopping spree in Germany. They'll drive south, take a ferry to one of the German coastal cities and fill their cars to the limits of what is legal (and oftentimes over that) from these so called border shops.
Yes, but the Kindles on bedside cabinets are a rounding error compared to the smartphones and tablets in use today (let alone in a few years). I know there are people who prefer e-ink readers, but they're a small and shrinking slice of the market (at least if the pace of new e-reader releases is anything to go by).
If you have succeeded, why not stay where you are? Why do you have to move up? "Thanks, but I prefer coding, I'd rather stay where I am".
Several of the sold divisions were in fact money makers. They were sold because Big Blue could make more on services.
Please don't add `letter-spacing: -1px` to Helvetica Neue. It's hard enough to read as it is!
Shouldn't we then have a tool which separates out "published, shared" commits from WIP commits, if they're different "types"?
I'm finding that I commit in units of work. Currently, I'm refactoring LibreOffice's SalGraphics class to move the mirroring from this class into an upper layer, but I'm finding it better to do it little by little.

Gerrit topic is here:

https://gerrit.libreoffice.org/#/q/status:open+project:core+...

I'm finding it productive to commit when I have a compilable change. I find it helps me keep track of what's going on.
"some sort of improved welfare system"

Retirement is culturally new and also is no longer something you do right before you die, but if you examine the numbers, soon a rather large fraction of the population will be retired.

Much as childhood used to mean short manual labor on the farm or sweatshop factory, but now means sitting in school for 20 years.

I find it highly likely that both ages will grow toward the middle, and much as joining .mil and being a soldier is seen as a young person's game, or dare I say being a software developer is seen as being a young persons game, everyone will "get used to" the idea that you only work from age 30 to 40, perhaps. Sit in school, maybe national service, raise your kids, until maybe 35, then retire at 45. If everyone (at least female) has kids in their 20s, that means we wouldn't need much if any day care, and we'd be retired in time to play with / supervise grandkids.

Culturally I bet we'd see a bifurcation of work. "real work" would be what grunt labor still exists, stereotypical millwright work on robots at industrial plants, and writing boring TPS reports and CRUD websites. AKA "the grind". Retired work would be passive income lifestyle businesses and arts n crafts. Personally I'd probably go full on FOSS development rather than everything being the property of my employer. My grandmother would likely go full on knitting, selling $400 sweaters similar to but better than the ones at Nordstroms. My wife seems to enjoy traveling and as a FOSS guy all I need is a place to charge my laptop and the occasional network connection so I'm good with that. I would imagine no small number of people would get really into religion, exercise, watching youtube videos...
Actually Krugman did give an explanation: "It’s not just about the money, although that’s important [...] What matters is whether it has too much power, and is abusing that power. Well, it does, and it is."

And why that abuse of power is a bad thing: "It’s definitely possible, with some extra effort, to buy a book you’ve heard about even if Amazon doesn’t carry it — but if Amazon doesn’t carry that book, you’re much less likely to hear about it in the first place."
Good point.

Industrialization in 19th and 20th centuries caused suffering in the transition period (1st industrial revolution resulted decrease in average height and drop in expected lifespan in Britain) and the public was able to fully enjoy the benefits of the industrialization only after massive political struggle that included violence (revolutions, unions, strikes, assassinations). The end result was society with new laws and new systems for wealth distribution.

Did living standards improve during the Industrial Revolution?
http://www.economist.com/blogs/freeexchange/2013/09/economic...

If we look into history for cues, industrialization should be seen as two step process:

1. New technology brings new opportunities and makes economy more efficient. It also changes power structures in the society and creates massive imbalances.

2. Dramatic technological changes are followed with equally dramatic changes in society that either happen trough political struggle or violence.
Please do not consider comments out of context and reply. That's just ...bad form. In the context of the comment I was replying to, my reply was just a simple way of saying that beyond the scope of direct genetic influence (a.k.a: outside of individuals and perhaps families, as the comment put it) attributing genetic causation to observed phenomenon is simple correlation. Well, that's all I have to contribute.
I'd say it's an interplay between the following issues,

1 - Writing code is a young man's game. Older devs get one too many platform/language iterations behind the curve so can't apply for as many jobs - obviously not true for everyone, but could account for something

2 - Older devs are tempted into management, and so write emails for a living instead of code

3 - Older devs may have more commitments outside of work, so can't take on jobs that demand long hours in the office and long hours at home keeping up with tools and trends

4 - Huge numbers of people are starting to realise you can make good money sitting on your arse all day and writing code, so there are lots of them applying for jobs with low experience - that's not to say many of them will still be trying a few years from now

5 - All the best experienced older devs don't apply to job ads, they just move easily between contracts using their network
Link to bashism that allows this?
Places are food deserts primarily because the inhabitants choose not to pay for healthy food. Providing access to food does not change people's consumption choices:

http://theincidentaleconomist.com/wordpress/giving-people-ac...

(There are lots of natural experiments too - e.g., Jersey City, where I used to live, had lots of fat poor people and lots of svelte yuppies. Strangely, the poor didn't start eating Kale when the yuppies moved in.)

Assigning the label "victim blaming" to an idea does not prove it wrong.
If I go `a=whatever` or `a[42]=whatever`, then `c` will not get updated if I have already consumed those values; I still need to "reset" c every time I update a.
I agree! IMO I would be hesitant to tell an employer I was looking to exit. Some egotistical people may react as though it is personal to them. Also it puts you in some pressure to get a job in a reasonable time, when really you might want to take six months to find the right company and renumeration. Job hunting is best when your not 100% sure you want to leave a company vs. desperate to change. And the employer is likely to mentally write you off and you don't know if new internal opportunities will open up. While I would chat to someone if I had a long close relationship, I would err on the side of caution.

As for calls and interviews, this is what voicemail is for. Call back on your breaks. People understand the situation. Also interviews can usually be done before or after work. If the new employer is not understanding it might be a sign they're not a great company to work for.
We're Losing the War for the Smart Home
IBM Plunges as CEO Abandons 2015 Earnings Forecast
Are you suggesting that Nobel Prize Winner Paul Krugman is speaking out against Amazon because Hachette have drafted him for some sort of PR campaign?
Where do you work? What has your experience been using Haskell "in the RealWorld"? I'd love to know more about this. My email address is michael.o.church at Google's email service.

I got seriously into Haskell a few months ago, but I've used ML in algorithmic trading and was a major fan.

I feel like it does us a disservice to complain about Haskell's (admittedly, warty) Exception system or "cabal hell" when what is actually going on is that we're holding the language to a higher standard. I agree that functions like head, fail, and possibly non-strict foldl, are warty; but these issues are downright minuscule when you consider what Haskell (language and community) brings to the table. (Also, every other language has warts.) The fact that our complaints about Haskell are minor annoyances compared to other languages' drawbacks, to me, signifies that the language got the major things right.
Office Tour: Cambridge Consultants [Slideshow]
A nice topic, but it seems that along with advising some good practices and ideas, there are a few problematic things. For example:

- usage of sequential color scales for categorical data (compare with http://colorbrewer2.org/),

- lack of interactivity (one of the main advantage of JS plots is ability to check data with mouseover; for example - which country is this particular dot),

- in general some aesthetic considerations (e.g. http://d3js.org/ is not only a library, but a whole philosophy of doing nice visualizations; including small, but visually important things, like the choice of colors).

As already advised (by couchand), that after Edward Tufte and Mike Bostock, there is a high baseline level for information beauty and clarity.
"In fact, looking at the salary tables, there actually isn’t a level of higher than 5 years."

That seems like it explains the OP's experience right there. Why would honestly senior devs even consider jobs well below their salary range? My shop is almost entirely very senior people with 10-20 years experience, but we pay accordingly.
Show HN: USB Gamepad PCB Business Cards
I wonder if Ocaml is actually much more practical than Haskell. Ocaml has been proven to be well usable in industry while Haskell seems to be suitable for research areas like math and language design.

http://mirror.ocamlcore.org/wiki.cocan.org/companies.html

http://www.infoq.com/presentations/jane-street-caml-ocaml

http://queue.acm.org/detail.cfm?id=2038036&ref=fullrss
> Moore’s law is now approaching the end of its working life.

That has been said many times before...
True but once you've got that original library of books on your reading device on what app are you going to purchase additional books on?

On my ipad I have iBooks, Marvin and Kindle. The first app I open is the Kindle due to the 180+ books that already sit on Kindle's cloud. And I doubt that is going to change.

As an utter aside I do have an e-ink reader. I went from an ipad and kindle to an ipad mini and then back to the former. Reading on an e-ink device a fall asleep reading on an ipad mini the light kept me awake...
So much this.

In my experience it is extremely useful to have a bunch of "Unfinished; WIP" commits that I can look through to figure out what I was thinking yesterday when I started writing code. When I'm ready for other people to pull my commits, I'll rebase them into more meaningful commits (or often just one single commit).
How Money Moves – A real-time visualisation of Bitcoin traffic
Then they probably shouldn't be running this plugin in the first place. It's more for the people that can occasionally forget to commit, and their commits end up being huge.
Show HN: Search UI for Elasticsearch
A young man's opinion :-) Speaking as someone with 33 years experience writing code at a high level, I have lost nothing over the years except the attitude that only young people can code. What matters is desire to learn and keep ahead of the curve, and continued enjoyment of writing code. I've seen people lose that at every age group.
There are three issues to take into account:

1. There is just a smaller pool of 20+ year devs because
20 years ago there were less developers, smaller pool of jobs etc. it should be possible to work out the max size of that pool from ONS / job data and get a ratio for today.

2. What is your job criteria? Permanent position? Wage is low compared to say contract or freelance rates? Advertised in the public job forums?

3. Lack of interesting work or autonomy.

I am a Dev with 15+ years - (I dropped out of CTO position to go back to full time Dev work). And I cannot imagine taking a permanent position unless it comes really close to a contractor wage. And I would prefer remote working.

I will be surprised if I ever find a 150k+ remote permanent position. But if I did I would expect to see only 40 year olds on the short list.

And I am pretty unusual in that I still job hunt in the open - actually applying for jobs. This is not an issue for the large majority of people I know who use their "networks" better than I do.

So in short a good Dev (and having lasted 10-20 years they cannot be idiots) is not goin to be looking for a job, if they are, they will not be looking where you advertise, and if they do look there, your rates will be too low, your job conditions off putting and finally you probably tell people what and where and how to work.

If you want old devs, pay more, micro-manage less, and fish in places that are recruiter unfriendly.
Experts vs. Professionals
This happens absolutely all the time.

For instance, Haskell does it in almost exactly these terms. If you have a type like

data Drums = Ba | Dum | Tish

and you have a function that consumes drums

play :: Drums -> String
play Ba = "Ba!"
play Dum = "Dum!"

you've left out the Tish. Possibly because you don't have a cymbal. You know this, but the compiler doesn't. This is considered to be an incomplete pattern match and would raise some eyebrows.

But often it just means there's an invariant which you know and the type system does not. In Haskell -Wall will stop you dead here, but you can relax it to say "ehhhh, I know what I'm doing".

More generally, you can also write

play :: Drums -> String
play Ba = "Ba!"
play Dum = "Dum!"
play Tish = error "Impossible! I have no cymbal"

This 'error' is a misleadingly named function. It's more like 'assert' and indicates that this is a completely impossible program state (much like running into an unbalanced tree deep inside a library function which knows that tree balance is maintained). It's outside of the reach of the programmer to fix. It's not an exception, it's an assurance to the compiler that even though there's something missing in the type safety things will be OK.
But the layers aren't independent at all, so how is it done? For each small change you show have to resolve the full rendering equation (although that should be easier given small changes). So I understand they may want to use something like that for quickly visualizing changes, but I can't see it used for actual rendering.
Fibonacci(50) Performance: Java  C  C++  D  Go  Terra (Lua)  Lua-JIT (Lua)
59, programming for 42 years, the last 35 professionally. Here on HN for 7.5 years.

I've always been very busy (one of the main reasons I don't post on HN as much any more). I don't have a resume. I'm not on LinkedIn. If I ever ran low on work, it would probably take me a day or two and a few phone calls to find something.

I don't work on anything unless I find it incredibly compelling. I write applications. I've seen tons of different technologies, many old ones I still use. But I also get very jazzed learning new stuff and incorporating it into my toolbox.

I know tons of programmers in my age group. I'd classify them into 2 groups:

25% - just like me. You don't see our resumes because we're very happy building cool stuff and rarely look for work. We've also seen it all and can smell something we're not interested in a mile away. You don't see us at many events because we're so busy with work and life, we only pick the ones with the most promise of bang for the buck. Most of the programmers I know in this group would make phenomenal additions to many startups, but don't recognize this as a compelling alternative to what they're already doing. The best way to engage us is to seek us out, make friends, and share some stories about something cool you're working on.

75% - one year's experience 30 times, not 30 years experience. Unaware of modern technology. Couldn't write Hello World in anything other than BASIC, FORTRAN, or COBOL (and would probably misspell 50% of the words). No imagination. Limited ability to visualize the possibilities. Hiding under the radar in some enterprise. You don't want these people.
> Join your local library and make full use of the inter-library lending agreement

Soon adds up:

60p (plus £3.40 if an interlibrary loan is necessary)

Often cheaper just to find it for £1 plus postage costs on Amazon or Abebooks.
I highly doubt it if the children are simply being yanked out of their homes simply for being spanked. That's an abhorent practice, and everything I've heard about Sweden's practice leads me to believe it is abhorrent (it holds 3 times as many foster children than germany with a significantly smaller population).

The abuses that can go on in the foster system are horrendous. The abuse rates are exceptionally high and Sweden is known as the country in Europe where the number of kids in foster care is excessively high and has resulted in a system with limited oversight.

Sorry, but you're naive if you think good is the universal result of this. I have friends who were beaten until hospitalization in foster care only to be handed back, and that's not even talking about the sexual abuse rates prevelant in the systems and every statistic I've seen suggest Sweden is no better and could in fact be worse.

I have a family member who has foster kids, and the stories they have are terrible. All of them were bounced around, all had been beaten at some point by one of their various care takers.

Sorry, but you sound like you've burried your heads in the sand and think you've actually fixed a problem. Didn't your government recently have to pay out to foster children because of the overagressiveness of the social services in taking kids out of their homes.
> What's to stop them from selling it to each other?

Nothing. This is what we call luxury goods.

> Could we see a completely stratified economy, with rich people selling each other the fruits of their automated factories' labour?

Already exists to an extent: http://en.wikipedia.org/wiki/Hourglass_economy. (strong high and low ends to the market and hollowed out middle.)

There's challenges: high-end luxury goods that are totally mass produced don't tend to go together, as it feels too "mass market" or low quality (Ferraris have hand sewn leather in the seats, so they are high quality/"feel authentic"). Apple combines mass production with high end pricing/high quality successfully, but they seem to be an outlier to an extent.

The number of ultra high end consumers is by definition quite small, so there's considerations if a company or brand wants to grow beyond the high end of the market.
It's more of a workflow thing. When working on a difficult feature, or rather difficult ticket, that cannot reasonably split into 2, it makes sense to work on a separate feature branch. This branch is just for yourself and can be polluted with dirty commits. Once your done, your can git rebase the thing into one, beautiful commit.
Heh, you'd be surprised how often even moderately experienced developers make the same mistake. I've seen months-long chains of "add feature X, it's sorta stable, start adding feature Y, whoops, gotta ship, uh-oh, X isn't stable either, work for three weeks, X is now stable but Y only seems to be, managers now calling feature Z release-critical, start working on Z, gotta ship, uh-oh, Y isn't stable yet..."

and so it goes for literally months, always some feature preventing shipping, always some feature that has to be added.

Beware that trap. Branches are cheap. Use them.