skysight-inc/HackerNews huggingface dataset:
One idea I have about why 200 was chosen is that back then the languages that were commonly used weren't as expressive.

You can often say the same thing in Python or Ruby in fewer lines than you can in Cobol, Fortran or C.

Or put another way, of those 200 lines of Cobol maybe 1/2 to 3/4 are setup code that the language makes you write inorder to be able to do what you want vs say a Python where a smaller percentage of the code is overhead vs doing what you set out to do.
Your take on Twitter...Fad or the Future?
So, recently I've sat in on a number of discussions on Twitter and I find myself still divided.

On one hand, I hear the opinions of social media marketers who look at Twitter as a new and exciting way of engaging in conversation, creating greater brand loyalty, and turning customers into brand advocates.

On the other hand, I look at Twitter's widespread adoption and variety of uses, and I find myself wondering if Twitter will be another flash in the pan. I also wonder if the fact that Twitter makes their data available for other applications to use and that they're starting to place more emphasis on search will end up giving the company greater relevance for a longer period of time.

So, do you think that microblogging is a long-term trend with the web? Personally, I think that Twitter's user base will continue to grow, but that many of it's early adopters will move on to the next fad as soon as it comes along.
I don't think it's gibberish.

I would love to gather good questions and discuss the results when they are available. I think it is important to find questions to which google, yahoo, powerset or wikipedia don't provide a straight answer.

How about:

1) What is the smallest unknown prime number? ;)

2) Where on earth is the rainy days to sunny days ratio the lowest?

3) How many languages does the average person from the Benelux countries speak?
I think most people need to spend more time coding and less time surfing hacker news/proggit. I know I do.

The article is still right on though.
I'm pretty sure this is the Spiders on Drugs reference you were looking for: http://www.youtube.com/watch?v=sHzdsFiBbFc
I also gave up caffeine in university. I found myself drinking bottles of Mountain Dew during lectures and still feeling drowsy. So I gave it up.

After two weeks of fatigue and lethargy, I was fine. I slept better, and was more alert.

But most of all, I gained the ability to actually abuse caffeine. If I need to work through the night and still function the next day, all it takes is a single can of Doctor Pepper or a cup of tea. It's like a super power.
If you're in the UK, check out forums like http://www.affiliates4u.com/ There are hundreds if not thousands of users on there making a living out of affiliate marketing. I don't know of similar forums in the US, but am sure they exist.

Also check out sitepoint 'websites for sale'. Quite often they include figures on revenue. Just scan down those and see how much they're making from advertising.

It's just less news worthy so you don't hear about them - "Another website makes lots of money from adverts" - big deal. Also lots haven't gone the VC route so they don't try to court the press/blogs/etc quite so much.

The issue I have with companies that get big with ad income as a model, is the massive amount they spend on servers, offices, tons of employees. If they kept lean they could be making a lot of money.
I don't think HN is a good place to sharpen your programming saw. However, it's an exceedingly good place to sharpen your entrepreneurial saw, as well as an excellent place to keep track of the pulse of start-up things on the web.
Times are tough, but growing & killing your own food isn't the answer
Can someone clarify - does it mean that using the API I can get Guardian content, like a whole article for example, show it on my website and display my own ads around it? If so, that is quite a big step forward amounting to copylefting their content.
Typing speed? Not sure how much code people here write per hour, but I doubt typing speed is a real issue (the ratio of my staring at the screen thinking versus coding is probably 10:1).
Is IE8 the end of the line for Internet Explorer?
New Group Forming to Buy VC-Backed Busts
That is a good point. But they can still submit to the Proceedings of the National Academy, which is an equally prestigious journal.
MOVE.

(I'm a former web IT banker at Broadview's Boston [Waltham] office who knows the VC shops there pretty well. Aside from CRV, no firm will invest seed stage. The angel groups just aren't comfortable with web technologies, unless they're attached to massive sales organizations selling to corporations.)
How much does the e-book on sex make?
Chief Engineer
Advantages over the NYTimes article search api is The Guardian provides full article text and allows you to use the content on your site/app alongside your own advertising.

Disadvantage is it seems to have less structures metadata than the NYT (from what I can see currently).

I'm looking forward to most newspapers having apis letting you correlate coverage across multiple sources (hopefully with a consistent interface)
I see nothing wrong with changing your mind about things, even quickly. So long as the change is not a quick oscillation between two opposite opinions (which would be two-faced or crazy), changing your mind quickly is a healthy habit.
Legacy Locker: an afterlife for your online accounts
Thank you! Got the mail. I'll write up my question(s) today evening and email you.
Agreed. Typing speed is very important when writing new features, but reading and comprehension speed is much more important for when you are fixing bugs in a multimillion line codebase.
Symantec Users Complain of Mysterious 'PIFTS' Warning
viable business models

Indeed. I thought the (almost) defacto Web1/2.0 model was - do it cheaply, make it free, spur terrific growth - get acquired and/or turn this growth into revenue.
I just had to fix the same bug in 4 places because of someone's use of cut and paste. (Actually, refactored, but you get the picture.)
Making the most revenue out of an MMO
URLs could be used with a generalized protocol. The client would specify the URL scheme, port and an arbitrary name and the server would generate and return a URL, or an error if it doesn't support the requested scheme (servers could support a very limited set of schemes and ports, perhaps just one). Raw socket endpoints would use "tcp://host:port" and "udp://host:port". Servers that provide raw sockets would probably want to create a subdomain for each endpoint to avoid port contention. Since the server knows the URL scheme, it can transparently do caching/filtering/mangling for particular protocols. Making a request with the "http" scheme would be functionally equivalent to your reverse HTTP.

This is just off the top of my head and there are surely better approaches but the point is that it's quite doable and probably as simple or simpler than something at the HTTP layer.

HTTP's "richness" is also what makes it a pain in the ass. It's a megalomaniacal protocol designed for a very specific purpose and when you are forced to use it for any other purpose, you have to carry a lot of baggage, and the baggage is full of rocks.

This gateway service is nearly always going to be used to create some sort of ad-hoc messaging endpoint, rather than a proper web server with web pages, so why force tunneling over TWO layers of HTTP while precluding the use of any existing wire-level level protocols?

It's time we buried the "use HTTP for everything" meme. We already have an everything protocol called TCP and if there's going to be a layer after that, it will be a carefully designed, flexible messaging protocol like AMQP. HTTP adds negative value as a general purpose transport and it's not even that great for serving web sites.
It's not a "real" issue, so much as a proxy. I've never seen a good hacker look at their keyboard, whereas there are plenty of people that get out of flow looking for a symbol.

If a person can't type, I simply assume they're a noob and don't want them on my team. I don't expect them to have a very different ration of thinking vs. coding though :)
Congrats! I hope you guys add support for Dawdle.com soon; we think we're helpful for people inside a GameStop looking at pricing.
- Type fast - Use Linux - Use TextMate/VI/emacs - Don't read documentation

Sounds like "Core competencies of ruby on rails hackers"
Yeah, I'm not sure how to reconcile this comment:

There's the same amount of crap, it's just dressed up in more pretentious verbiage. IMHO.
90% of everything is crap, no matter how "non-lame" your audience is.

with his apparent recommendation to use HN the following day. The only thing I can think of is that he wants to dilute the HN community with his own.
Duh, it's because there's no downvote button :)

http://blog.stackoverflow.com/2009/03/the-value-of-downvotin...
If you haven't taken the time yet you should read the Copilot spec. It caused me to rethink how specs should be written, and what is the right level of detail.
I'm curious how new users from Atwood compare to new users from TechCrunch.
Actually I suspect that some expectation of equal treatment to applicants is a basic part of human nature. Innate, not taught. I never intended to say taught.

Something being new does not in itself excuse it being bad. if the owner confesses to teething troubles, that would be a start.

I don't think that misunderstanding a statement (and I see that by voting consensus it's not seen as well-phrased) deserves anyone to get on their tangentially-related hobby horse and froth at the mouth.

You're right that Ayn Rand-bashing is stupid. Far too easy a target. But you brought it into the conversation. Why you did that, I will never know. If your aim was to make a point not related to her, you're better off not mentioning her. If your point is to promote her, I'm not interested.
http://news.ycombinator.com/user?id=codinghorror
As I posted elsewhere, I am seeing trivial functions spread across multiple files because of the overuse of interfaces, DAO's, DTO's, Dependency Injection, and the like.
Twitter: Please Charge me for Biz Tweets instead of Suspending my Account
I believe that corresponds with comfortable familiarity with and proper use of one's tools.

I view a non-touch-typing hacker/coder much like a carpenter who drives nails using a hammer's handle. (The inevitable reaction from both camps: Hey, what's your problem? I'm using my tools to get the job done!)
The only thing he proved was that statements that state the general aren't absolute.

With a bit of thought, I think most people can understand the point I was trying to make. If you cannot, I don't see any reason to explain it in more words.
I don't necessarily agree with the numbers in this article. I bought a few seeds last year and grew tomatoes, courgettes, runner beans, etc - about £40 worth of veg all in. I didn't spend any extra on water (collected rain water) and so I made about £35 'profit'.

Sure, I wasn't raising chickens or shooting elk, but it is possible to do a little bit to boost the contents of your larder without spending a fortune.
Agreed; selection bias - presumably the code base analyzed was made by experienced programmers with instincts tuned to creating smaller functions.

When we do observe larger functions, there must have been a specific reason to do it, like a big case statement or text generation. The programmer is making an exception, and there's probably a structural reason for it, the logic is probably simpler, and extra attention will be paid.
Why not just play the Lottery?
"homogeny of opinion" has a lot to do with how you implement your voting system. people may call us "digg for music," but, backend-wise, we're far from digg.
This is the first time I have commented. Please don't do this: you are increasing your risk of schizophrenia by smoking dope. If you only saw what that does to people and those around them. My brother suffers from this and it is terrible for him. You can all do the searches if you want to find evidence for the increase in risk.

"my brain is my second favourite organ", keep it that way.
Attributed to Einstein:

"Everything should be made as simple as possible, but not simpler."

(Also, is it just me or does a result like "long methods had to be changed least" seem both rather spun and probably two-edged?)
Hackers at SXSW. Meetup?
Hello, So I will be at SXSW and I am sure a few of you might be there also. We should do a mini meet-up or perhaps get together at one of the parties.

Its always great to connect the YC regulars with their faces. What do you say?
I don't. Hackers have long had a hippy element to their culture and plenty of people on here clearly find it of benefit. It's a valid topic to discuss.

Who made this Jeff person the thought police anyway? Does he have a rival site or something...?
Something that's important to remember about Code Complete (which is great, I'm absolutely not knocking it at all) is that it's written with languages like C, C++, and Java in mind. In C and C++ particularly, 'shorter function' might be a euphemism for 'clever function', hence the higher defect rate and increased difficulty to comprehend.

More expressive languages (by definition) shouldn't have the same length; if you're writing a 200 line Python method, you are most definitely Doing It Wrong.

Here are some of my rules of thumb for breaking things up (absolutely not independently arrived at, by any means):

- Loop bodies are good candidates for standalone functions.

- Everything in a function body stays at one tier of abstraction. If I find myself doing something at a lower level than the rest of the function, it's time to break things out.

- If I find myself using the word 'and' to describe what a function does, and it isn't pretty high up the abstraction ladder and primarily just driving calls out to other functions, it probably needs to get broken up.

- I'm not formal about it, but my mental metric for my code is to minimize 'total loc + total indentation * some constant', meaning I'm willing to trade loc to reduce nesting, to a point.

- I like functions to be no longer than a screenful. That's a max; most of mine are shorter than that.
You're being obtuse. Stop it. Play nicely please when arguing :)
Sony Ericsson W595 Walkman BLACK Unlocked
Sony Ericsson w595 offers the public a great cell phone that has features to get you going throughout the day. There are lots of good reasons to get this unlocked cell phone, and the superior styling is definitely one of them.
Every "hacker" I've met either:

Doesn't use windows.

Uses the tools listed in the article on windows. (well, windows equivalents anyhow)

I think the message was more of "Know your tools, know them well. Know them, and what they are capable of so that you may wield them to their fullest potential". For software, this involves reading the source when it's available.
Not sure I'm comfortable in that analogy.

If the carpenter who used the hammer handle only had to drive one nail instead of the regular fifty, then that might be totally worthwhile (Naturally, this would never be the case for carpentry, but it certainly is for coding).
Firefox will wordwrap it if you say "view source".
If the methods have a clear purpose with well-defined inputs and outputs and no side effects, then I think the trade-off is generally in favor of smaller methods. Once you introduce side effects, longer methods then have the advantage of showing you all the side effects in one place.
My second job in Boston was at OpenMarket, a now long-dead internet bubble 1.0 startup that was founded by DEC CRL alumni. I enjoyed my time there, but your term "unwieldy" might be a good explanation for why it didn't survive. The company enjoyed some initial success, but did seem to have trouble changing direction, which made survival difficult once the 1.0 hype was fading.
I prefer small-function programming, but I think there are needed caveats.

Code reuse and easy testability are obvious upsides of small-function programming but, most importantly, interactive development is easier and more fun. You can test and play with the code while you write.

One downside on the human-readable end of things is that small-function code can easily devolve into spaghetti code if it's not done right. You actually have to think about where your functions are in the physical file, and have them logically organized, in order to have legible code.

Appropriate line length of a function varies wildly by programming language. In Lisp or Haskell, a 25-line function is usually considered a "monster" and should, if possible, be broken up, since a lot is happening in those 25 lines. Whereas a 25-line Java function is nothing unusual.
I read the same thing in "Clean Code" (amazon: http://is.gd/mJ8g )

I have two objections: First, what is "one thing"? Render a Doom 3 frame? Or increment the "i" variable? The "Clean Code" author argued that a log statement or a try/catch statement deserved its own method.

Second: says who? Where's the evidence that doing "one thing" is better than doing more things?

In general I notice that there are many rules and best practices in programming, without a lot of evidence, or even discussion of the drawbacks.
Not sure what you mean - some of the biggest and most successful Internet players did exactly this - Google being the most obvious one.
Wait a second... the guy who, yesterday, had an article on here about how HN was fundamentally flawed due to lack of story downvotes is now recommending it to his following?

I'm _confused_.
FFmpeg 0.5 released
Ideas are an industry. Universities employ tens if not hundreds of thousands of people in Boston.

And while the quality of life in Boston could definitely be improved, the oldness of the city is one of the things that attracts me about it. Old things are rich and comforting. New ones can be somewhat bleak. Not just because old things have a patina. Old things are more human, because they tend to be smaller and handmade, instead of just extruded from a factory somewhere.
Same here. I love the idea behind my startup and I love working on it. Have to say, though, I love the family more. I spend every spare minute I can on my startup, but not at the expense of my family. Their needs and spending time with them come first, along with the paying job that's providing for said family--it has to. If the kid were older, maybe I'd devote more time to the startup, but as it stands now, no.

Also, if I worked 12-15hr days every day, even doing something I love, I'd quickly grow to hate it. Not only would I resent the startup, but I'd likely be looking for an entire career change after a while.
Visual Studio is a very powerful editor. Everything that you can do in Visual Studio through menus you can do through the keyboard. In fact you can setup visual studio to use emacs shortcuts ( http://msdn.microsoft.com/en-us/library/ms165509(VS.80).aspx ) and I'm sure it exists for Vim and etc.

People who believe the tools make the hacker are naive at best and would probably think the person with the best shoes wins the race. Not true when it comes down to it, the person driving those tools, whether they can type 60 wpm or use Emacs, is the one who is responsible for the creativity and output.

I think the author needs to step back and see if his priorities are in the right spot.
One aspect this piece doesn't mention are unit tests. I've found that writing short to-the-point methods helps with testability(?). I just wrote some unit tests the other day for a 100+ LOC java method. 300+ lines of test code to setup the massive amount of dependencies and go through all of the if- and for- statements. Would've been a lot easier if it was broken apart into smaller discreet units.
It's not legal for a company to force you to be drug tested. You can always say "no" and walk away. Unfortunately, it is in almost every state totally legal for your employer to fire you for absolutely no reason, so long as they aren't discriminating against for you on the basis of race, color, national origin, religion, sex, or disability.
We have a nod towards a consistent interface in the Guardian API in that we offer an Atom output format - it's pretty basic at the moment, but we're looking for community feedback to help us make the Atom version really useful.
Short answer? No.... each method should have a clearly defined concern separated from the concerns of other methods with an obvious, documented and tested contract
It's not exactly copylefting - the T&Cs still won't let you modify the content or redistribute it further - but yes, you are allowed to republish the article body (although it's hard to do so at the moment due to the omission of paragraph breaks, which we're working to fix).

If you just show our headlines, you won't be asked to display our ads. If you opt to publish our article bodies we reserve the right to ask you to include our ads some time in the future.
Thanks for sharing your experiences. Using the conversion tracking code for the signup page is a good idea. I am totally impressed and amazed by your 90% -- I hope to get half of that =D

Can you explain what you mean by number 2 in more detail?

An Adwords coupon code would be great, thanks! - aaron.blohowiak@gmail.com
The second. Two. 2! I choose 2!
Generally, cut-and-paste isn't the issue, copy-and-paste is. Granted, you can cut and paste paste paste ..., but cut-and-paste usually means moving things to a more sensible place.

The biggest problem is when a code blob is duplicated all over the place and (worse still!) the copies slowly drift out of sync, making them hard to reunite. I've been working on a program off and on that tries to detect this in a language-agnostic manner, but I've hit a couple dead ends. (I half expect somebody with a more orthodox CS education to take one look at it and go, "Oh, that's NP-complete," but I haven't let it stop me - it's been a great way to learn about graph algorithms.)
I'm _confused_.

It's Jeff Atwood. He talks out of his ass and randomly bolds stuff. That's about it. (Remember, he wrote a book review on his blog about a book he clearly hadn't read. All he does is talk.)
I just checked Sitepoint, and there are currently 17 sites that sell, or have been sold for more than $50.000. A salesprice less than that probably indicates you can't live off it. Of those 17 sites:

- two are getting revenue from affiliate marketing

- one is advertising porn

- one has advertising income of $500 monthly

- one has ad revenues of $3000 monthly.

The rest sell actual products that they charge for.

I still don't think advertising is a model that works well for most companies.
Both cases describe a person who has not learned how to properly use the most basic tool for their profession.

How could that be excused?
Boston Ma Attorneys
Boston is one of the oldest cities in the United States. It is the capital and largest city of Massachusetts. Boston is also considered the economic and cultural center of the entire New England region.
> Now, as a software guy, can I stop hearing about how software "bloat" keeps absorbing all the hardware advances?

Why should you stop hearing it? Hardware is getting faster and SW is using the capacity.

> If hard drives had been advancing, errr, at all,

They have been, just not uniformly. There have been huge increases in capacity. Less so in transfer rate, but still significant. Seek time hasn't been improving much and rotational latency is stuck.

In the same time, arithmetic and logical operations have essentially become free. Branch mispredictions are a big deal. Cache misses are a killer but memory bandwidth is about to become the biggest problem. (It already is for some people.)