skysight-inc/HackerNews huggingface dataset:
True. In this case, they were not major changes, the guy just wasn't doing anything.

It can be useful to drive home what you already know, but not really to discover information.

At a functional software house, it's largely obvious to _everyone_ exactly how much work everyone else does. Think about your coworkers - do you know which ones are good and which are dead weight? I bet you do!
The letter makes the assumption that the Amber Alert program is one that deserves fast-tracking. It sounds like the hackneyed "but if it saves even one child" line.

In reality, the effectiveness of Amber Alerts is quite debatable, and so the resources might be deployed to greater effect elsewhere.

Take, for example, this article:
http://www.boston.com/bostonglobe/ideas/articles/2008/07/20/...
"These are encouraging statistics - but also deeply misleading, according to some of the only outside scholars to examine the system in depth. In the first independent study of whether Amber Alerts work, a team led by University of Nevada criminologist Timothy Griffin looked at hundreds of abduction cases between 2003 and 2006 and found that Amber Alerts - for all their urgency and drama - actually accomplish little. In most cases where they were issued, Griffin found, Amber Alerts played no role in the eventual return of abducted children. Their successes were generally in child custody fights that didn't pose a risk to the child. And in those rare instances where kidnappers did intend to rape or kill the child, Amber Alerts usually failed to save lives."

For more concrete criticism, see the actual study:
"Abstract
The AMBER alert system is likely affected by a number of psychological processes, yet remains understudied. The system assumes people will remember Alert information accurately and notify police, but psychological research on related phenomena (e.g., memory, willingness to help) indicates that people may not be able or willing to act in ways the promote the success of the system. In addition, the system is intended to deter child abductions, however, the system could prompt copycat crimes from perpetrators seeking publicity. The system could also cause a precipitation effect in which a perpetrator who sees the Alert could decide to murder the child immediately to avoid capture. Policy recommendations are made based on psychological research and theory, although more research is needed to develop the most effective system possible."
http://preview.tinyurl.com/bsg5mw (sorry, the link was ridiculously long)
The undergrad years are definitely a great time to spend getting projects done. Not only projects, but exploring all the technologies that interest you. Luckily, I've never played World of Warcraft or else I would probably be in a different boat than I am right now.
I've seen many routines (functions, methods, procedures .. whatever) that are needlessly long due to overzealous use of the copy/paste technique. But once you eliminate that kind of stuff, I do agree that you can get to a point where you've abstracted too much -- and the actual thing you are trying to accomplish with your code becomes obscured.

I have not read these studies, but to me it seems that the defect rate could rise because it's no longer apparent what's interacting with what, and in what order. If I have to hop around to numerous different 5 line methods (often in numerous different source code files) it becomes very hard to intuit whether the code is "correct" or even have any idea what it's doing.
The National Center for Missing and Exploited Children has data on this here: http://www.missingkids.com/missingkids/servlet/PageServlet?L...

"115 children were the victims of “stereotypical” kidnapping. (These crimes involve someone the child does not know or someone of slight acquaintance, who holds the child overnight, transports the child 50 miles or more, kills the child, demands ransom, or intends to keep the child permanently.)"
The NHS choices site gives a good write-up of this although they skim over a couple of points.

http://www.nhs.uk/news/2009/03March/Pages/Studyfindscancersp...

One concern I have is that the primary tumor is weakened by the low LOX expression and it is this, rather than its ability to prime remote sites for metastasis, which leads to reduced metastasis. Although this may be partially the case they also inject conditioned media into mice and show that media from wild type tumor cells recruits CD11b+ cells to the lungs consistent with priming sites for metastasis. Media from tumor cells in which LOX expression has been down-regulated or wild-type media with an anti-LOX antibody did not have this effect. They also found cell recruitment with purified LOX although their results suggest there is something else in conditioned media which can increase this effect.

I would like to see them repeat this with tumor cells in which the LOX gene can be turned off once the tumor is established but overall I felt this was a strong piece of work.
The article doesn't go far enough! Governments should take the confiscated drugs they seize and give the stuff to addicts for free, with counselling to try and kick the habit. Think about it - devalue the product to the point the illegal importers can't make a profit at worst and not able to pay their suppliers at best and the illegal trade will fade away. Also, if addicts can get it for free, then there is less incentive to commit other crimes to fund the habit.

Skizz
Oh no I know exactly what you mean, but the thing is... everyone, in every field feels the same way about their job. Just about everyone in the world feels that they work in the most underrepresented and unappreciated jobs.

I watch dirty jobs every now and then and love the show, but I think it is very clear that he is talking about the literally dirty jobs. Any job can be considered to have 'dirty' parts, depending on how far you want to stretch the definition. To think that even celebrated jobs like doctors and lawyers don't have, by your loose definition, dirty parts is very naive.

I am not really attacking you, I just always roll my eyes when people start complaining about their jobs. I guess growing up blue collar has made me very cynical when people working 8 hour days in air conditioned offices complain about doing dirty work.
Hard, intense, difficult, exhausting? Sure. Dirty? No
Well, some very important things happen in sterile environments.
On choosing a business model. Far too many companies rely on just getting users, and monetizing later.

Of course advice from someone who has had success with both an advertising and a pay model would be the ideal, but lacking that I'll settle for advice from someone that has actually had success.

Come to think of it, I can't recall having read about a company that has had success (as in making enough money to live on within a year or two from launch) with an advertising model. I'm not saying it doesn't exist, just that it seems to be an outlier.

Charging for your products, on the other hand, is a well-proven model that has worked for hundreds of years. This is how the vast majority of companies generate cash. I just think it's refreshing to see someone that actually comes out and says it, instead of all this get-big-fast hype that only worls out well for an absolute minority.
Damn you google search, you horrible search engine you.

I'm going to make something from yahoo's BOSS api, charge $1000 a search... therefore my search MUST be better... right? RIGHT?
I have very negative feelings about the whole AMBER alert idea. Maybe I'm a callous bastard, but what is so special about child abductions that they require an entire separate national infrastructure to "alert" the citizens in the (incredibly unlikely) event they occur?

According to wikipedia the AMBER alert system has helped in the the recovery of 27 children; even this is disputed. Sounds impressive until you remember that thousands of children drown in backyard swimming pools every year. It's absolutely nothing, not even a blip. Sorry, I know it sounds heartless, but facts are facts.

There's a sinister aspect too - by making such a big deal about this essentially dead crime, which isn't even a rounding error on child death statistics, I get a nasty feeling that "the powers that be" are trying to unite the public - united with the govt, of course - against this "pedophile child kidnapper" bogeyman. Again, the numbers suggest this creature is almost, if not completely, non-existent. "But they must be everywhere, right? That's why we had to have AMBER alerts!" Encouraging paranoia, manipulating groups to unite against faceless and unlikely enemies .. I don't like it one bit.

Saved 27 children since inception. All this righteous fuss. Meanwhile, in Africa, 8 children die every minute from preventable diseases. Where's their alert? Where's their iPhone application?

Selective caring. Couldn't give a shit about the thousands of swimming pool deaths. Couldn't care less about childhood obesity or dropping educational standards or manufactured food or childhood deaths in Africa from trivially preventable diseases or child labour in Vietnam which you buy off the shelf at wal-mart but OMG PEDOPHILES APPROVE MY IPHONE APP NOW OR YOU ARE KILLING CHILDREN!

I don't really know how to express my loathing for such people but basically I think they're hypocritical, self-righteous douchebags. I hope and expect Apple to ignore this nonsense.

(updated to reflect the fact that I couldn't cite a good reference for the 55,000 annual swimming pool deaths I originally wrote - replaced with "thousands", which should definitely be safe.)
In my experience, there's a "sweet spot" for how much functionality a method "should" have.

If a method is "too short", it:
* may result in methodA calling methodB calling etc., increasing complexity;
* may not be readily apparent how it fits in to the problem that's being solved.

If a method is "too long", its:
* complexity increases;
* ease of testing decreases;
* frequency of reuse decreases.

Obviously, some methods have little functionality, and thus require very few lines. For the majority of the other methods, though, I tend to keep them below 25 lines. If a method grows past 15 lines, I examine it to see if there's any functionality that feels like it should be broken out into a separate method.
The funny thing is that most of Jeff's articles get ridiculed here, and he still recommends it. Does he post here? I don't remember ever seeing him defend an article or anything, not that I think it would be very effective.

Does anyone else think Jeff finds a crafty little picture, and then writes a post about it.
I think these results may be misleading -- most the methods I know of that are >200 lines are implementing some kind of large case statement. Often, these are auto-generated files, not hand-coded ones. So it may not be a fair comparision.
It is not so much about the length of the method. But every method should do just one thing and it should be clear what it is. That makes code more understandable and reusable. Probably as a consequence methods are shorter.
Interesting contrasts:

Cardboard + iMacs + Herman Miller chairs + Bonzai trees
Technical Debt and Peanut Butter Jars
Sure, but LAMP aside, is there something that you think would be more useful for me to read a "Dummies guide to..." or similar?
I would say he's lucky. If I was the smuck sitting in a cubical looking at iPhone App submissions all day, and got one that had a synopsis of "We use the GPS features of the iPhone to track a child's movement so that if they get kidnapped we will be able to respond better to it." the app would get rejected right off. Add to that "Oh, and we're working for a government agency" and now I feel like you're lying to me too.
Charging a price doesn't magically give your product a substantial value.
Find a deprived area which has been earmarked for regeneration, apply for development funds. East London 2012 has helped my start-up gain pre-commercial funds, and we return in the summer to bid for another round. We are affiliated with the local university, which makes us eligible for a university spin-out fund.
Apple Plans to Launch Netbook with a Touchscreen
Coverup Brewing at Symantec?
If I am making a change to long method I can understand what this method is doing. I am more likely to take care in making changes because I can see the potential problems and I have a visual indication of the complexity of the code. Also I might be less likely to make changes unless necessary because of the complexity.

When working on a shorter method, changes are easier to make and the context and complexity are hidden. The side effects of the changes are harder to see, so I am more likely to make a change which can break things and not know that it will cause problems.
I created a poll for this for those who are worried about privacy: http://news.ycombinator.com/item?id=509693
"This idea that we should all be the same person is twisted and wrong and actively harmful."
... and it's a chip on your shoulder, not mine.

"Apple didn't have applications. Nobody cared. "
That's not so.

"You don't like Apple?"
I never said that.

"Go buy other phones."
I do.

Seriously, you got from "Delaying some applications randomly for three month or more is a bad business practice, it pisses people off" all the way over to "the great Stanley Kubrick and Ayn Rand were dictatorial and unfair and look how awesome they were"

Bottom line, you're a ranting about things that I didn't say, which is rather sad. It gives your views a bad name. And gives Ayn Rand's fans more of a bad name, if that's possible.
It might be useful as one factor in a complicated score function. You need a factor that diminishes the score over time, too, so it can't be quite as simple as you describe. In general it seems like you don't want a comment saying "This is as insulting as it is factually incorrect" to count as an up-vote.
It depends on a programming language.

In more dynamic programming languages it is easy to create a method that deals with abstract objects, eg iterative ones, and does not have to hold too much knowledge.

To say nothing about easiness to test a short method that does only one thing.
How to Power the Green Cars of the Future
I don't think he is saying that 'smoking pot makes you "stupid"'. The point he makes is that empirical observations about your own performance, while on a mind-altering drug, are inherently flawed.
They haven't approved my fire alarm iPhone app either. Who knows how many lives could have been saved in the weeks since I submitted it? The application is so simple: When you see a fire, you go to your iPhone, click on the "Fire Alarm" icon, go over by a window to get a good 3G data connection, then wait for a GPS fix, then swipe the screen to activate the alarm, then wait as the alert is uploaded. If your iPhone and your window are nearby, it could save a marginal amount of time and effort compared to finding and pulling a real fire alarm. If you already downloaded the fire alarm app, that is; otherwise, it might take a couple of minutes to dig around the app store to find it.

Getting notified by the fire alarm application is even easier. First, you just need to go to the App Store and download it onto your phone. Then, you just leave it constantly running on your phone instead of using your phone for anything it was designed for. Then you wait for somebody to "pull the alarm." And wait. And wait. (I recommend sitting by a window.)

Edit: Somebody emailed me this question:

Q: What about the vast majority of people that don't have iPhones? How will they be alerted? What about building it as a SMS service that would work on every phone? You know, like this existing government-created Amber Alert system for phones: http://www.amberalert.gov/wireless.htm.

A: I like playing with my iPhone and complaining about it publicly. I also enjoy self-promotion. The fire alarm app is just a means of pursuing these hobbies. I have no interest in distributing any kind of alerts to anybody besides iPhone users. The actual alerting is secondary to my interests anyway.
For some reason his articles are always voted up no matter how ignorant and devoid of insightful observations they are.
Core competencies of great hackers
When You Should Take Vitamin and Mineral
Heh.

I like Ayn Rand. Most people that read her go way too far with her ideas (once you start spouting lines from Atlas Shrugged verbatim, you've gone too far, and too many people go too far), but reading her at sixteen got me largely out of the depressive "I'm a cog in the school system" mood I was in, and it has that effect on a lot of people. As far as books worth reading as a young adult go, The Fountainhead is way up there. It gets you happier and healthier going out than you were coming in, and even once you lose that belief that Rand is right about everything, she's incredible pulp reading, up there with Dan Brown. (A pirate philosopher meets a dashing Spanish copper miner? Come on.)
That's a good thought, but it only explains why routines longer than 200 lines would be more error-prone. It doesn't explain why shorter routines were also showed a higher defect rate.
Maybe you didn't state your ideas very clearly, because all that you said was "Well, somebody taught us that fairness and equality was good, so it's fine to complain about Apple's store that's less than a year old." That sort of pompous statement completely deserves a response like the one I gave.

The Ayn Rand-bashing is stupid. Rand, like most people, is right about a lot and wrong about a lot. She's just more polarizing than others. Just as following her gospel verbatim isn't always the healthiest approach to life, dismissing her and the possibility that her ideas hold merit is similarly a waste of time.
I can't say firsthand whether this is true or not since I was in diapers during it's heyday, but I'm told that when DEC died, it's unwieldy, monolithic culture leaked all over the northeast. With 150,000 employees, it was basically the anti-startup. And it's pretty shocking the percentage of older programmers that were at DEC at one time or another here in Mass.
In Failure, Valuable Lessons
I have two perspectives. Back in the 80's, I and two others developed a word processor. We aggressively refactored the code do that the average function length was less than 10 lines. The code was smaller, faster, and supported more users than any of out competitors. The key was there were only 3 of us, who knew the code thoroughly.

Fast forward 20 years and I an flying solo on a vast JBoss/Spring?Struts/Hibernate project. I just added a feature with 6 lines of functional code, along with another similar piece in a DAO to get the data out of a database. Essentially, I was mapping a key to an inventory item to a key to a document. The feature was about 80 lines because of Java baggage and Spring injections. In addition I had to modify another 10 files of interfaces, implementations, struts actions, DAO's, a jsp, struts xml, and spring xml.

Another place where there is a functionless proliferation of small routines is caused by the java method overloading model. A common case is to have a method with several parameters, most of which have common defaults. You often end up with 4 signatures, but can easily end up with more if you support, say, the name of an object as well as the object itself.
JS developer claims copyright infringement, bullies open source alternative
I wonder how long it takes before people pick up that the tech doesn't really matter and it's all just one big trollosphere.
OMGPOP (YC S07) raises $5 million
He doesn't post with any regularity, but he did defend a post he made a few days ago (one where he says Hacker News "gets it wrong" for not allowing downvotes to stories):

http://news.ycombinator.com/item?id=507948
http://en.wikipedia.org/wiki/AMBER_Alert#Controversy_about_s...
There needs to be a new name for orchestral music written recently. "Classical" feels wrong for music written in 2009.
World's easiest content management system - now with your brand on it
It's hard to say - I learnt FORTH at one stage. The thing with FORTH is that it's almost impossible to write long functions. You can, but it's brutal. So you write a lot of very short methods. I actually hated working like this, but I must admit the code was better.

The reason I didn't like doing this is that it disturbed my flow. I wasn't even sure how the function was going to look, let alone put together 10 functions just to flesh it out. You needed a strong design and intent before you started.

Today, of course, people rely a lot on refactoring for the same effect. I tend to like this better, but I'm not sure it's for any solid basis on my part, or I'm just lazy and want to hack instead of pontificate on the problem.

Now I try and have a rule of thumb - I like functions that have a single verb and noun, with a single optional subject, adverb and adjective. (The verbs and nouns can be system concepts, naturally). So ideally anything can be described in sub ~5 words... If I'm really serious I put together the standard nomenclature first.

Once it becomes hard to describe in those terms, or you need n+ nouns, you've probably split the atom and working at too high a level of granularity.
Seems like all blogs have been writing about lately IS Twitter. What do they expect to happen?
His point was:

As Google proves, being free doesn't magically remove substantial value from your product.

He went a bit overboard with the rhetoric, but looking past that you have to grant that he's correct.
Apologies for the late reply, MoeDrippins; hopefully you'll see this if you check out your comments list.

I originally wrote that Twitter was a communications medium. But then I considered that people might be offended by Skittles on behalf of the Twitter community, or Twitter the company, and in those ways, Twitter is more than just a communication medium.

I think its importance as a communication medium is paramount.
Bring On The Techies: How Silicon Valley Can Help Save Newspapers
Enabling Dynamic Plugin Support for your JavaScript Application
I don't want to start a war but I'd say that this list is about the differences between a Windows VS Linux developer. The thing behind what is said is "get your eyes off of the nice UI. Look and type code".
I wonder if the same stats apply to stateful versus stateless languages.

I'm working a lot with PHP these days (not my favorite language) and for historical reasons we even avoid the use of objects. I've noticed that even experienced practitioners in the PHP world write super-long functions. Forget 200 lines, more like 1000 or even 2000. When I try to refactor these, I usually find that I start causing worse problems, passing values around all over the place, using globals and so on.

It seems to me that if your language is relatively underpowered, a long method can help contain the messiness.
This may work for marathon coding sessions (be sure you're following TDD practices), but it can be counterproductive for people dealing with GAD. It can actually be a cause of GAD.
Designing a document database: Storage
Didn't seem to work particularly well for me.

Do read this, though:
http://yarchive.net/med/nootropics.html
Does anyone have advice for what to do if you are in Boston? Is it realistic to look for early-stage / seed funding, a la YCombinator, or do I need to get further on my own before seeking funding? Not that I'm opposed to moving to California, but I'll be in Boston for a while either way, and I might as well see what can be done here.
I think it takes a lot of practice to communicate as efficiently and effectively as the 37s gang does. It's not just about getting a reaction; they know what they're talking about. I don't mind the swearing if it's sincere. At least they're passionate.