skysight-inc/HackerNews huggingface dataset:
I'm genuinely curious. What do you do with your computer that makes Mac OS X better than Ubuntu? And especially, what made Ubuntu better than Windows XP back in 2005?
The Periodic Table of Typefaces
You were running FreeBSD 5.3 until recently? You know it reached its EoL at the end of October 2006, right? There have been lots of security issues over the past 2.5 years which weren't fixed in FreeBSD 5.3.

And by "FreeBSD 7.1" you mean 7.1-RELEASE-p3, right? :-)
people behave here because they don't want to burn their bridge with PG. ... This whole site is one big, ongoing public job interview.

This is probably not true for the majority of people posting here. I suspect quite a lot of users came here from reddit when that site went the way of digg and 4chan and to them pg is just another handle on the site.

Also: Believe it or not, but I had never heard of Paul Graham before coming to this site.
Our company has over 200 employees on yammer out of about 2000 employees worldwide, so I'd say our adoption is somewhat large enough for me to comment on its dynamics.

Yes, I'd agree that it matches features with a mailing list but the types of messages that are posted on Yammer would be unacceptable to send as a company-wide email. People mostly post updates about where they are, conferences they are attending, and if they're working from home or remotely. Marketing-types tend to post links to the latest techcrunch or gigaom article. Designers tend to post the latest links off of delicious/popular. As far as the character limit, its treated just as twitter and no one posts anything too large.

With a corporate-wide mailing list, everyone would have to read every single message. People tend to correlate the number of recipients with its importance. Yammer messages can be easily ignored and read at leisure. As a poster, this naturally diminishes any inhibition when firing off a message. Perhaps it's just the obvious outcome of a messaging infrastructure wholly separate from our corporate email, which has expectations and political baggage. Maybe this says something about the state of email tools...
Looks like everything went well. Handy having Robert Morris as your sysadmin. The new server seems to be about 2x as fast. The frontpage renders for me in about 50 msec. But the site should seem more than 2x faster (for logged-in users) because many requests will terminate before being interrupted.

There's now enough memory that we can fit all the links and comments in memory at once again. We should be good for another year or so.
Erlang isn't a magic bullet. It might make migrating processes fast, but it won't speed up migrating data.
How Did Breast Surgery Develop Through Time?
This latency is clearly not a time-of-flight issue.
A lot of (but not all of) what you end up getting from Lisp macros ends up being not needed to be implemented with macros in Haskell anyway.
Electronics vs. The Old Way, RE: Madeoff
I've been using Ubuntu since 7.04 and I'm still using it in virtual machine now. I agree that esp. for 8.x Ubuntu really beats XP on font rendering (well, except for OpenOffice and occasionally Firefox).

However both Windows and Linux still have very far way to go to beat Apple's font rendering engine. Apple just needs to get the font right because otherwise it cannot sell so many Macs to designers. And they did.

I remembered I was seduced by the Ruby guys' screenshot of Monaco font in TextMate. In my opinion Monaco is probably the best ever designed monospace font for programmers. Well, of coz it must be rendered by Apple's font engine to get the right look -- tried Monaco both on XP and Ubuntu and it sucked big.

I have to face code more than half of the day, and thus a good Monospace font is very important to me. On Ubuntu I think Bitstream/Dejavu Mono is the best, and on Windows I prefer Consolas, but both look kinda unpolished compared to Monaco on Mac.

No, I'm not talking about those cool design fonts. I'm talking about the basic typefaces like Times, Helvetica, etc. I think probably fonts are the area where commercial companies do better than open source --- fine-tuning a font requires so much time and energy of artists which I think is a very very scarce resource in the open source community. It also explains why a good set of typefaces costs big bucks. Sad, but true ...
I've noticed the same thing with Clojure. I only dig into macros to remove boilerplate, like when using APIs provided in other JVM languages.
I like the metaphor of programming as creative writing - you start with a blank editor (sometimes) or existing code (more likely) and revise (refactor)/craft it into something tangible that is of utility.
Are you planning on pointing the domain to the new server or just using 174.132.225.106?

It could solve the growth problem, perhaps?
news.ycombinator.com already points to the new ip address. The message with that ip addr in it will only be seen by people who still have the old ip cached in their browser. (Obviously for them we have to refer to the new server by its ip addr.)
Thanks! Also, for those of us who don't know who Robert Morris is:

http://en.wikipedia.org/wiki/Robert_Tappan_Morris

* MIT Prof

* creator of first internet worm

* cofounder of viaweb and ycombinator
Agreed, and my comment wasn't aimed at the article so much as the comments here about the article.
former chief scientist at the National Computer Security Center, a division of the National Security Agency

That's rtm's father, not rtm.
He assigned pitches to how fast the market was moving, and trained the rats on those pitches. The speed of the market can be measured using averages.
The husband wants a job in consumer products marketing, with an entry-level marketing job and an MBA on his resume and little else. He was just on the front page of CNN. Yeah, I think this was a winning move.
First, I think the article does a good job of summing up not just a good programming hire, but any good employee. (I'm about 85/15 tech/business). Not all good programmers fit the profile, but it reduces your chances of a bad hire if you follow it.

That said, there are no pointers or how-tos that will turn you into a qualified judge of a profession completely unrelated to your own and I don't at all think it's arrogant for "hackers" (or anyone else) to be somewhat offended at that idea.

Your statement reads as if to say "how arrogant of you to think a businessperson can't become a qualified judge of your work by reading a few pointers", which is itself a very arrogant statement. I don't think that's necessarily what you meant, but I think you are mistaking a little bit of offense and some defensiveness for arrogance and reacting to that misperception.

This isn't "hackers > " anyone, either, I certainly don't think I could read a few pointers and suddenly have the ability to pick a well qualified architect, urban planner or a mechanic (I know zero about cars). I could see a house and say "hey, you must be a good architect" but if I had to hire one early in their career I'd ideally go to someone in their field that I trust (as suggested in many comments here).
I'd surely want to hear about your achievements though
The difference is that a good hacker can get the actual product out the door without bringing anyone else on board. A good businessman can't do anything without outside help.

BTW I say this as a business guy. Granted I know how to code a little. But I still need someone to code the site up, And don't bother finding a cofounder at that stage, for that early alpha, you need to rely on freelancers to get the job done, because finding a tech cofounder is next to impossible.

Why? Because every programmer gets approached once a week with "hey, I heard you know interwebz, help me code up my site and lets make billions!".
How do you think "Has released something publicly." would be as another criterion?
There already is carryover, many email clients are also newsreaders and speak NNTP.
Supermarket vegetables now 5-40% lower in nutrients than 50 years ago
Defining edge cases without technical knowledge is problematic, load times are meaningless without load testing, so basically all you'll know is if the code works, and that is a very low bar to set especially for a startup.

And even if you could do all these things without technical knowledge at best you'll be able to weed out the mediocre, never find the best.
Your comment is a simple ad hominem attack - it barely ranks DH1 (just one step above name-calling.)

http://www.paulgraham.com/disagree.html

As your mother should have told you, if you don't have a substantive argument to make, don't try to make one at all.
So, if you've got all those in-memory data structures, there are lots of lists of pointers to objects. How does it compare on a 32-bit OS, with 32-bit pointers, vs a 64-bit with 64-bit pointers?
Time to shrink the atomic clock
So, what's the difference between a Netbook and an ultrathin?
Email already does email pretty well and is much more familiar to people (especially the old crusty decision makers)

Not sure where you've worked, but corporate email is horribly broken. Those crusty old decision makers are getting hundreds and hundreds of emails a day and would like a reprieve.
Confessions of a terrible programmer
I don't specify the recipients when I send an email to a mailing list. It goes to whoever is subscribed to the list, similar to how twitter messages go to the users who are following the person sending (or how it would go to a "group" in Yammer).

Then you might say, "But there is also a public feed of all the tweets" to which I would reply, "There are plenty of public interfaces to mailing lists". Gmane is essentially twitter if everyone used tags and tweets were actually given context in the larger conversations they create. And there was a lot less worthless noise.

There is nothing new here. Basically, Twitter just took away the ability to specify a group of recipients when sending an email, limited the character count, removed file attachments, etc.; Yammer put those features back. I hope Yammer becomes super popular because eventually someone else will then notice, hey, we're essentially using email again!
My major issue with social networking sites is that when the fad for one passes, you have to rebuild your network on the next one.

I have also seen many apps which relied on some social parts but for which you have to build your network again.

So, I really like this since it allows one to develop a social app without having to manage the social network part. You have to admit that Facebook has been doing a great job at making their network prevalent and ubiquitous. Which is kind of worrying I suppose.
They could always tax religion instead.
Best Buy Launches API: Corporate Websites Extend to Open Web
This shows great creativity and initiative. I'd hire his wife.
I feel so very ashamed, being a complete grammar nazi. I guess I just never use that phrase.
Couldn't agree more, then.
I'd guess that most of the memory is used by blocks of text which are much larger than the pointers which reference them, so probably the size_t expansion has a minimal impact on the total memory usage.
Consumer Pessimism Receding; Investors' Confidence Up
That's kind of like the "hidden project" criteria, except public. Back when I wrote this article, I was only just starting to get to grips with the open source community (after using its products for a long time).

I think phrased as "has released things publicly", it's a bit too restrictive, because some people will be excellent programmers but just not have gotten into the whole open source community thing.

That said, from the point of view of helping narrow it down for someone who doesn't know programming much, then yes - if a programmer has released public libraries/applications that are in use, that's a great form of "extra-curricular" not-so-hidden project, so it could well be used as an additional indicator.
Ok I admit that when I used BASIC back in 1979, I put GOTOs in my code.
You mean compare in terms of memory usage? It will certainly eat more memory for the same data structures.

We've got a simple functional language here - being very unscientific, and looking at the key data structures, for my current workload, straight pointers are about 5-10% of the allocation. In practice I do see a 10-25% memory usage increase going from 32bit to 64bit (Linux).

(Anecdotally -- I've read 20% is a rough rule of thumb for 64bit anyway).

There is also an increase in data structure size due to data alignment, but this is going to vary quite a bit -- depends on the structure, the compiler -- and if you're doing dynamic memory allocation you may even find it makes no difference at all -- as malloc may have been delivering an oversize allocation anyway.

So, it's certainly not a trivial increase... Especially as we're currently running on a 256mb slice (I sort of wish they had a supported 32bit option)... but it's not massive.

However, for us, 64 bit still has a lot of advantages. For example, you can do more expansive memory mapping and the like.

Not sure if that helps.
That's true, but 64 bit will affect other things as well - pointer size goes up, your stack will be bigger and the packing (alignment) of your structures changes.

If your compiler is unfriendly, your structure size can change significantly -- afaik, GCC is pretty clever about structure packing, but I'd imagine it varies a lot depending on the architecture.
This does not come as a surprise if you've followed prior evidence suggesting that processed stuff contains less nutrition than natural foods(whole grains, grass-fed, organic, etc).
Yes, how fast we forget, just 3 days back pg wrote this amazing words which should have improved the quality of submissions.

For the next couple days it would be better to have posts about the innards of Erlang than women who create sites to get hired by Twitter.

Please someone tell me, how is this article any different from a girl wanting to get hired by twitter.
Spot Runner Is Running On Fumes: Another 60 To Lose Their Jobs
Indeed, but I think that he was trying to say that Erlang could have made this process more transparent for the users, without any disruption.
So we just finished a new round of optimizations as part of our ongoing quest to prove that with sufficient caching you can serve arbitrarily large numbers of requests with arbitrarily slow languages.

http://ycombinator.com/newsnews.html#15jan09

Is that quest over, or is upgrading the server fair game? :)
This is a nice looking poster, but I don't see how it is in any way a "periodic table" of typefaces. What are the relations I'm supposed to be seeing as I read down and across it? I like seeing the small type specimens, but abbreviations of the names of the typefaces aren't particularly valuable (are you really getting a sense of what Avenir is from "Av"?).
I enjoyed this article. Humility is certainly something to strive for, however I disagree that you should envision yourself as a "terrible" programmer. Just approach each problem as a student, not an expert.

I doubt Wayne Gretzky skated down the ice thinking "I'm a terrible hockey player", but I do know that he was a student of the game and as a result, one of the hardest working players both on and off the ice - with the results to prove it.
Obviously the pointers take twice as much space but I don't think that is what you are asking.

arc runs in MzScheme 352 (http://download.plt-scheme.org/mzscheme/v352.html)

the freeBSD binaries on this page are i386, if thats what the new server is using then it won't make a difference. The source is available as well, if pg compiled the source in 64 bit mode it would increase memory usage.

But using a 64 bit OS doesn't necessitate using a 64 bit address space.
minus points for resume in image format only.
Stopping all changes in genes isn't possible, at least currently. If you could figure out a way of doing this without killing yourself, you'd have a surefire way to prevent cancer and diseases caused by retroviruses (such as Hep C and HIV, among others.)

> So what if what I propose is not feasible anytime soon?

When uninformed people write about the future, they usually end up being either dead wrong if they make specific predictions, or they say things that are so vague that they're useless.

How would anyone be able to predict RNA interference in 1985? You could predict all sorts of (useless, wrong) things, but you almost certainly would not have been able to predict something fundamental and useful like RNAi. Smart people focus on the details, and stick to what's within reach.

If you're not up to that, you can always be a science fiction writer - but not a great one like Isaac Asimov, who had a PhD in biochemistry before he became famous.
Marijuana IS a mind-altering substance. Disregarding this scientific fact is potentially irresponsible. We are not even discussing policy / politics here, it's Science. And unless you are a neurologist or a pharmacologist yourself, I really do NOT believe you are qualified to argue against this. Recalling the words of wisdom my parents' old-school doctor friend used to say:

"the dose, not the substance, makes the poison" (it sounded more impressive in latin)

Thus, instead of discussing the BIG questions such as whether marijuana should be legalized or not, why not discuss the details such as how much marijuana would each citizen be allowed to consume on a daily basis without endangering others. The devil is always in the details, right?

It's true that the industry is there. But that fact alone does not mean it's OK to go ahead and legalize everything without any bounds and reason. Following that rationale, why not legalize prostitution, human trafficking and arms dealing? After all, these industries exist already, right?
Not going to happen. Ever.

Reason? You need to be in control of your key assets.

For a non-critical website or a web service, I can see AWS taking over for some or all parts.

For something handling financial transactions, or for anything of a high value, no.

Consider a scheduling application for a company with 200 well-paid people. How much would loss of that scheduling application for the 1 hour that it is really needed per day (to set up schedules) cost?
"Please someone tell me, how is this article any different from a girl wanting to get hired by twitter."

Slightly more pathetic, but with better typography?
+ supermarkets tend to value longevity, ability to store, hardiness, appearance... This has led to gradual section of (say) tomatoes that can survive transport the best, but don't necessarily have the best flavour or nutrition.

My parents have a property and grow a lot of their own food - and the taste difference just blows me away sometimes.
Its not surprising that 60 years after the green revolution ( http://en.wikipedia.org/wiki/Green_Revolution ) that we would have washed trace minerals from the soil of our most productive farmland, which produces most of our vegetables, resulting in them having lower mineral content. Its also not surprising that nitrogen fed fruits and vegetables bred for size and weight would be larger and so contain diluted minerals.

But if we intend to continue to increase our agricultural output and continue to feed the earth's population then there's no going back, and you can't feed everyone on earth with organic methods. Its hard enough using every trick in the book. Borlaug ( http://en.wikipedia.org/wiki/Norman_Borlaug ) is an amazing guy and anyone who enjoyed this article will enjoy reading about the bio-hacker that fed a billion people and ended mass starvation in India and China by breeding kick-ass wheat and rice that raised agricultural output by seven times since the 1940s!

The solution for Americans: grow your own vegetables! Use plenty of compost, use organic heirloom seeds suitable for your area and spray weekly with dilute dish soap and you'll have minerals a plenty in your veggies and no pesticides. And they'll taste better than anything you've ever had! It doesn't take much land to grow a significant amount of food.
1) I made it clear that I could not guarantee its accuracy. I made it clear that it was not a "fact" but something I heard.

2) the fact that the system does not exist (at least in the Netherlands) does not make it not worth considering. Unless you have something intelligent to say about WHY the database would be a bad idea, your input hasn't been helpful either.
Not just humility: the author goes on to explain all his practices to defend himself from himself. These attracted my attention, for no programmer I know enjoys them:

3) Be a testing masochist, i.e., I ruthlessly try to break my own code.

4) Have other programmers inspect my code.

The author goes on to explain how he approached fixing a broken program: to stop catching errors and letting it crash. Which meant getting stack traces and fixing them on the spot. Combined with his aggressive use of assertions, no wonder he fixed it.
Humility is certainly something to strive for, however I disagree that you should envision yourself as a "terrible" programmer.

One thing I've learned the hard way is that self-deprecation only works in British comedy. In the USA most people don't get it and it not only damages your career but your dating and social life, too.
64-bit mzscheme uses about 50% more memory than 32-bit mzscheme to hold all of the Hacker News data.
Did you use the "flag" button? Just a friendly reminder.
I've been using macros in Clojure to write my own object system. It seems to me that for serious meta-programming in Haskell, you have to use Template Haskell, and from what I've heard, it's not nearly as flexible.
Three things come to mind (explanations follow):

1) Does the programmer _complete_ interesting programming projects in their spare time?

2) Can the programmer explain something mildly technical such that you, the business guy, can understand?

3) A test: push the programmer a bit. Act as if you don't understand something and be a bit rude. If the programmer does anything except listen to you and patiently try to help you then he/she is no-hire.

Explanations:

If the programmer doesn't complete interesting projects in their spare time they don't have enough passion for programming.

If he/she can't explain something clearly it's highly likely they can't communicate with business folks effectively in general hence they're not going to be effective at the job.

There's a lot of angry programmers. If the programmer becomes visibly annoyed or angry during an interview you've found yourself a no-hire. Angry programmers destroy morale very quickly.

That's my opinion on how to find "good" programmers. Keep in mind the percentage of "good" programmers who will be a good fit for your business is small. This is where respectful drilling of technical matters is appropriate. This part of the interview is completed by a _technical_ employee. Remember that lots of good programmers can fail technical interviews because they just don't know the particular technology.
Stop guessing: A guide towards deciding your next feature
This doesn't really address how to solve the issue. Would going to farmer's markets/growing your own be the only way to address this on an individual scale? Or would the farmers be doing the same thing.
Your Top iPhone 3.0 Wish List. Will Apple Deliver?
Sorry, was in a bad mood when I wrote that. Gave you an upmod on this one to make up for it. Been to Amsterdam and there's no database.

To address 2) there's a lot of problems, it would be expensive to implement, there's a lot of security issues involved, it seems unnecessary - alcohol and cigarettes cause many more problems; they should get this treatment before weed does. On the other hand, I feel like the system you proposed may already exist in rural small town pharmacies for antihistamines which can be used to produce crystal meth.