skysight-inc/HackerNews huggingface dataset:
Good points in the article.

You can think of it this way. A coast line is a fractal line. As you zoom in its length gets bigger and bigger seemingly. From the top level on the map it looks fairly straight.

Related to estimates. Programmers have and operate with idealized mental models. A FIFO queue works kind of like this ("/closes eyes and sees a line of people lining up at the store"), a tree traversal looks like this ("/closes eyes sees a red cursor move down a tree drawn with blue nodes on an white board"). Same with estimates. How long will this take? ("/closes eyes and imagines an idealized sequence of events that will lead from now till project completion -- use this library, develop that API, test a little bit here, done... 2 weeks").

The problem is, zooming in is hard. "Oh this library we are about to use actually doesn't implement these corner cases". So now we are spending 3 days patching it. Oh, while working on this project, a critical support ticket comes from a customer. And then testing reveals a fundamental flaw in our API design. Re-write a huge chunk and repeat.

Some developers and managers just use heuristics. They do the mental estimate then x2 or x3.

^ All the above is true if the developer is everyone is honest and trusts each other. As other posts wrote, that is not always the case.

Then it is a more complicated game. The main question to ask then is "What is the punishment for overestimating vs the punishment for underestimating?".

Have people been fired for underestimating? No, ok underestimate. Have people been fired for missing deadlines? Ok then overestimate.

You can even play this game with yourself. What kind of deadlines do you set for yourself and how to you handle setting a too short or too long of a deadline? Do you get better with time at setting deadlines? If no, why not?
I loved the article, but I was hoping we'd get a reference to the Coastline Paradox[1]. Basically, since a coast is a fractal, its distance is infinite. The "zoom" that caused the very first delay could keep going, and going, and going.

Anyway, nice article!

[1] http://en.wikipedia.org/wiki/Coastline_paradox
Because software developers, like most people, don't like conflicts.
So, is this a competitor to couchbase (thinking of kanso and couchapp)?
You need to calibrate your "optimism factor" as most of the time you'll estimate by the wrong amount. I chalk this up to people being optimists, that is, ignoring a lot of the junk involved in completing a task that they'd rather not do: Meetings, documentation, integration issues, testing and so on.

For most people it's around 2-5 but for some as high as 10 to 20.

You might feel like an idiot when you tell people "Hm, change the color of the logo to a different shade of green? Six hours." This is probably how long it will take, though, for that so-called "five minute fix".
This post was originally an answer on Quora to the question posed in the title [1]. The question has so far received 222 answers - some of them arguably better, though not as popular as this one.

[1] http://www.quora.com/Engineering-Management/Why-are-software...
Kibit is a static code analyzer for Clojure
According to §2.3, there were 200 (100 of each sex)[1]. These 200 were divided into groups of 10. One group per sex was control (standard feed, water), 6 per sex had different amounts of GMO food and 3 per sex had normal feed + Roundup-treated water.

I don't feel confident attempting to interpret or criticise the results, but I did notice there weren't any null hypothesis tests; could anyone with more experience in biostatistics say whether or not their analysis is the norm?

[1] : http://www.sciencedirect.com/science/article/pii/S0278691512...
which leads me to mention : http://motherfuckingwebsite.com

It was referenced here yesterday and now it ranks with "Programming MutherFucker" in my brain.
The publicly released statements, from defectors and others, these many years after seem to indicate they haven't done that. I certainly don't know the truth but it would seem they would want to make sure to let the other side know unambiguously that this exists and that it works well. (Now maybe I am missing a part of the strategy that discourages this?).
Emailing as a secret weapon for engagement (4 min)
I got redirected to a malware/scam page claiming that "Java needed to be updated". Definitely a site to be avoided...
Been going at it for a couple years now with consulting and freelancing. I've finally gotten good at hitting my estimates. What worked for me was to keep strict time of everything (shoutout to toggl.com, love it!), so I could learn from my mistakes.

The trouble is now though, my competition seems to be underbidding me, but in reality they're providing those ~33% estimates they will never realistically keep, while I'm at ~100% estimates. Not really sure how to relay that to clients. One of the many reasons people like me need a salesperson in front, I guess.
I think touch as a UI component qualifies as innovation, but OSX and iOS are really just other variants of Unix.
I enjoyed reading this the first time around. I purposely illustrates the complexity of software and perhaps inadvertently illustrates the challenge of getting schedules from inexperienced teams. In rebuttal, had they walked from San Francisco to LA along any freeway they would have been done much closer to their predicted date. Which they would have known had they been experienced in walking back and forth to LA from the Bay Area.

The "big" message is that if you have never done something before, you have no idea how long it will take, even if you can describe what you are going to do pretty easily. Returning to the hike metaphor, this is why you need to listen to the cranky old guy saying "walk along the roads, not the beach" instead of the inexperienced folks saying "Hey its just walking, and walking on the beach rocks! Walking along a road is boring and lame!"
Jolla is hilariously translated to Dinghy throughout the article.
netvibes.com open in an tab aggregating the web and letting me know when more to read.
Impossible to navigate the site on mobile . For some reason it says swipe so it is supposed to work well on mobile device.
The single biggest mistake in the example is giving an estimate for the whole project without knowing team velocity. He tried to plan everything up-front and committed to a completion date, strongly setting delivery expectations.

An Agile approach to this walk would have managed the expected target date much better and improved team morale by not overstretching each day ("sprint").

Lots of people think they know (and implement) Agile. I did, until a course I took about a year ago where I learnt skipping seemingly unimportant bits (measuring velocity, sprint retrospectives, etc.) bring the whole process crashing down.
Pedantry, but hopefully interesting:

Gattaca is spelled with two A's. The letters in the word are from DNA base pairs: guanine, thymine, adenosine, and cytosine.

Attica is a part of ancient Greece. Also a prison in New York.

Not sure which reference the creator of Gattaca intended. Maybe both.
I love this post; it conveys the feel of the experience so well.

One of my big aha moments about estimation was a bit in McConnell's Rapid Development. He pointed out that most estimates get made with executives pressuring for short numbers. When you iterate a few times with that, you end up with the smallest number that developers can't absolutely prove is impossible.

If you draw out a bell curve of probable completion dates, this is basically the same as picking one far to the left, so you have a 95-99% chance of being late. But somehow, executives are still surprised when their totally biased approach yields the numbers they liked, not the numbers they needed. All the estimation effort was pure waste; our time would have been just as well spent making cotton-candy raincoats.

I now have done a few projects with little to no estimation, and it has gone much better. I have a hard time now seeing why we ever bothered.
China Singles Day could dwarf America's Cyber Monday
- Benito Mussolini

Probably not him.

http://blog.skepticallibertarian.com/2013/02/07/fake-quote-f...
why? focus very closely on the following word:

estimate
The Hitchhiker's Guide to the Internet (1987)
That does seem oddly specific.
Now if xkcd needed a dev...
Management giving estimates? No thanks. I'd rather them take my input and do their job of understanding trends. When I say something takes a long time and it takes longer, I'm not bullshitting. When I think something takes a long time and doesn't, its generally because shortcuts are rarely understood up front. Will I find the same shortest path next time? If I'm doing the same exact work maybe.

I do work in a place where we are a software company but very few people, even some of the devs, understand this culture. I don't say something is complex just for the hell of it. I want to give good estimates but at the end of the day that is all it is, a somewhat educated guess before I've gotten in the weeds. I don't need people that absolutely don't understand this concept to mandate a timeline that is unrealistic. It does absolutely no one any favors. That is why I leave. I don't need to promote unrealistic expectations down the line to customers who think everything is extremely simple. Especially when all we do is create custom software where almost 0% is turn key or off the shelf. Its just insulting to continue that nonsense and the quicker I can facilitate a reality check for all parties, the better and more trust is given to my judgment (and theirs if they actually take the time to learn)
"Never give an estimate to management. Estimating is their job, as they control the inputs to production."

Unfortunately, it gets even worse if developers have no part in making estimates. If management doesn't know the details of your architecture and code-base (or even the other projects you may be working on, if you go high enough up the management chain), they have no way of coming up with a rational estimate on their own.

Where I work, VPs are constantly making "commitments" to customers to have certain features implemented by a certain date, and only notifying developers after the fact. Then they wonder why the development organization is "so bad at meeting deadlines". (Needless to say, I have no ethical requirement to honor commitments that weren't made by me and are frequently impossible to meet anyway.)
Have you shared these spreadsheets and lists online? They sound like something that could turn into an excellent, three-figure or more information project.
I'm glad the Chinese go for it, for whatever reasons. It's a net gain for everyone, technology or socially-wise. I'd rather see funding for the moon program or new exciting probes rather than dozens of useless companies like Buffer.
It still stands that they are lifted out of poverty. Note, those people are not sent by force, they are not arrested and send to labor camps. The way the economic structure is set up, rewards them to do that. It would have been worse if they had shitty conditions in the country side _and_ no possibility to move to a city to work.
Developers, in my experience, are quite often asked to leave the company after such estimates.

I've seen developers let go because they weren't very good at writing software. I've seen developers let go because they were painfully anti-social to the point that they were negatively impacting the rest of the organization. I have never ever seen a developer let go because their estimates were crappy.
also because we don't have Time Machines
Zuckerberg Wants Your Kid's Student Data
I love it. Looks like it has a low barrier to entry with how simple it is to use.

Hope I get to use it soon.
This is all nice and well, but here on the ground, the NSA scandal has really bad consequences for tech companies.

Do you know what it is like to live in a jurisdiction where you are actually liable for what happens to the data of your users? Especially if it is data on teachers and pupils, which are (due to the fact that they are children) especially protected, as is the case with education software startups?

I can't use the Amazon cloud, can't use App engine, Cloudflare or anything that is connected to the US or companies with a US mother firm.

The whole situation is one infuriating clusterfuck and I find it really insulting when people claim that there are no real consequences to the recent scandal.
True, and Parkinson's Law will ensure it will take at least that time
In the U.S., visual aspects of software are generally copyrightable. Check out the Pac-Man v. KC Munkin case from 1982. There are several others. www.copyrightcodex.com/infringement/16-infringement-substantial-similarity/software-copyright-infringement#Pac-Man_v_KC_Munchkin

But when "visual" includes GUI, there's less copyright protection (because user interface elements are functional). Check out the Apple v. Microsoft case from 1994 as an example.

I'm not sure what the equivalent UK law would be.
Ask HN: Which countries rank best investment for internet freedom and privacy? 
I'm in the process of choosing where to locate services[1] for my start up. I would like to select locations and services that reflect my core values of internet freedom and privacy.

I would appreciate if others, having stepped through this process, can provide insight.

Thanks.

[1] I need web application, database, and email hosting services. Price and Convenience are secondary to core values listed above, however I do need control over my application and database technology stacks.
Black Friday for new freelance Designers
In honour of Black Friday, you can now pre-order your copy of The Designer's Guide to Freelancing with 30% off. http://t.co/6ACKmV1CTw
Yep, I agree estimates are a lot more important when you work for yourself. I've had at least one client comment on how pleased he was that my estimates were usually accurate. I know another developer was giving him answers like, "That will take 5 minutes!", so perhaps his expectations were low. :-)

On the other hand, giving realistic estimates I often hear clients say, "I asked around, and other folks say this should take half what you're quoting." Usually this happens before the work, but I once had it happen in the middle of a long-term engagement after I delivered a two-week invoice, and they were disappointed I hadn't accomplished more. So if I'm not careful I can lose my clients' trust, which is my highest asset. I've gotten pretty good at explaining why a job isn't 5 minutes (or 1 day, or whatever), but I might save this article as something to share if a client doesn't have much experience doing software projects.
Y, for me, is for YouTube.
As a restaurateur I love the idea, but shouldn't the service be the same? A good manager isn't waiting for a server to report being undertipped, but actively looking to fill holes that service may have missed.
Except of course for the school children in one class with a teacher who remembered her Soviet era civil defense teachings and got them to duck and cover in time.
Chinese couples turn to US surrogates for babies
Forgive my username, there is nothing logical about this.

It's because estimates are really just a test of your imagination and skill. They're a "different game" from delivering something. Here are some examples:

How long does it take you to add 1 + 1 together? The only correct amount of time is "0 - no amount of time." But clearly that's not true, is it?

How long would it take you to multiply 5 by 7? Well, zero. No amount of time - you know it 'by heart'. It doesn't take you any amount of time to multiply 5 by seven. Well, clearly, that's not true is it?

How long would it take you to test whether 31337 is prime or not, by any means? Like, 1 second because Wolfram Alpha can tell me I bet. But clearly it wouldn't take me ONE second, would it?

How long would it take you to write a function to test whether an integer less than 2^32 is prime or not, without having to be super-efficient about it? Well like 10 seconds. But, clearly that's not true, is it?

And so on. How long does it take to put a twitter bootstrap page up? Like, 5 minutes.

How long does it take to...

You should be able to build an app that doesn't crash and does what you're trying to code in like a day.

You should be able to build something that is software you can launch with in like a week, as an MVP.

You should be able to replace someone else's mature product with a reimplementation in like a month.

You should be able to build a scalable business that is ready for a series A in like a year.

These things are not meant to be accurate, so much as show that you have imagination.
This looks really neat!

Looks like a cross-platform language thats an even more acceptable lisp than ruby (hello macros!), with multiple build-language targets including C/javascript/C++ and a fast garbage collector? Like Go, but even cooler?
Very bad? I thought we didn't recognise software patents how could it even be possible? US Import law maybe?
Wow, that looks amazing. I find myself wishing there was a banana for scale, though. Is it as small as the old candybar phones?
That's how jQuery works internally. It checks if function is available in the current browser, if not it will apply a workaround.
I'm glad you got better at it, but I don't think software estimates can ever be very good. Nor should they be.

That a project is estimatable has to mean that novelty is low and predictability is high. But low novelty is a sign of duplication, which should be factored out into things like libraries, frameworks, and self-service tools. High predictability is either a sign of duplication or it's a sign that people have basically agreed not to learn anything during a project. If you are shipping early and often and study users and metrics as you go, then you will always learn things that affect the plan. Which means that the schedule isn't predictable even in theory.
This is not related to the topic in question.
Stop reading the abstract and go read the paper.

"but they do cite that control groups had tumors"

Yes, of course they did - they were the same breed of rat, and as I've already mentioned, they almost invariably get tumors.

"cites the tumor rate as compared to control in addition to absolute rates"

So what? The problem is that with a single trial, and such a small sample size, there is no evidence that any differences in observed cancer rates were not simply due to random variation.

"To me that makes this a non-issue considering the target audience."

No offense, but no one really cares how it seems to you. The whole purpose of the scientific method is to get around individual biases. And what do you mean by "the target audience?" What does that have to do with anything? It doesn't matter who the target audience is - that doesn't excuse a poorly designed study. Seralini's study had a small sample size - one sixth the minimum recommended by accepted guidelines for studies of this type using this kind of animal. He's repeatedly refused to make his full data set publicly available. There's some evidence that rat feed may have been contaminated with GMO derived soy products, which would, of course, invalidate the results completely. There's also some question of multiplicity effects as well. In short, there are plenty of problems with this study, and your cursory examination of an abstract isn't going to dig up some smoking gun that invalidates all of the well deserved criticism.
If you're really good at estimates, try to play that you can keep not only the final delivery, but also the partial ones. Something like "you can be sure I'll get 100% done because you can check when 10% is going to be done". Sure it's not a guaranteed sale - and it's harder to keep both partial estimates and totals, comparing to only totals - but it's still something.
50$ for a t-shirt to "show your love for bitcoin"...yea pass
Just being optimistic, probably. You could write a fairly trivial program that builds and discards massive trees that will force GC to take greater than 1-2ms simply on freeing memory. Maybe they mean in regular operation or something - but then what is regular? I guess they have to claim impossible feats to get interest given just how many languages there are already.
There's some wonderful lines in here, I particularly liked:

Planning has never seemed to have much to do with the seething, fungal development of the Internet...

And this one:

Its ease of use will also improve, which is fine news, for the savage UNIX interface of TCP/IP leaves plenty of room for advancements in user-friendliness...

Notice how www/web isn't mentioned? It existed, but even when the first graphical browser came out (that same year), it wasn't clear what the point was - like many, I was on a 2400 Baud modem so every picture or graphic on a page would take 5 - 10 minutes to "come down the wire".
cheap enough to piggyback/freeload on their frontpage HN appearance...
This McConnell book[1] is a must read on the subject. Generally developers just fail at estimating at a fine grained enough level and forget about all the ancillary tasks that take up a majority of a project's time.

[1] http://www.amazon.com/gp/aw/d/0735605351
What worked for me was to keep strict time of everything (shoutout to toggl.com, love it!), so I could learn from my mistakes

Right, that was part of my method as well. I learned to keep really good notes of each part of the project. At the end of each project, I compared my "what I thought it would take" with "what it actually took". In subsequent projects, I tried to match up similar complexity items with "what it actually took" notes to remind myself of the pain.
Yes but wouldn't it at least close the gap to make the time estimate a little more realistic?
There is no 'they' in this picture, nor a thing that can be personified (i.e. an asshole). It's just a currently broken set of institutions. There's no reason to be angry at institutions, only persons. Direct that anger at particular elected officials, the president, congressmen, and at particular people that act as enablers: people in the media, press or private persons in some (corporate) power that are advocating surveillance.
I mean, I don't know the arguments, but I imagine that some sort of argument comparing homosexuality to pedophilia could be made. Just to make it clear, this is not what I believe.
I just had an estimate/actual conversation that went like this: I think it will take me X time. Ok, but I want it done in .5 X time. Ok, I'll try to get it done in .5 X time. I finish it in X time.

Is it a missed estimate? That depends on who answers.
It is pretty clear that any country that has their own access to space is stronger than a country that does not. It provides a strategic advantage if you can freely put satellites up, it provides a military advantage if you can freely put people and satellites up. If you are competing with someone who can freely access earth orbit, then you can only have the upper hand if you can freely access the moon. Stations on the moon can take out anything in earth orbit, and they can take out places on the Earth by just throwing large rocks at them. A lunar rock attack can be as devastating to a city as a nuclear attack, with no fallout and no long term radiation risk. And you have a nearly infinite supply of rocks on the Moon.

Thus any nation that can establish and maintain a permanent presence on the Moon, and build the facilities for throwing chunks of the moon at any particular point on Earth, Will have overwhelming military superiority over any nation that cannot do that. Up to this point, the US has been the only country with the economic strength and technology to pull that off. That we did not do that, reflected more on the fact that we did not need to, rather than we could not.

If you are a foreign policy wonk, China getting a permanent moon base with manufacturing capability makes Iran developing a nuclear weapon seem insignificant. There are many nations in the 'nuclear' club, there are none in the 'moon' club.