Hacker Newsnew | past | comments | ask | show | jobs | submit | 2009-04-26login
Stories from April 26, 2009
Go back a day, month, or year. Go forward a day, month, or year.
1.Wolfram Alpha: Our First Impressions (readwriteweb.com)
93 points by functional-tree on April 26, 2009 | 24 comments
2.Honda Insight's immersive ad on Vimeo (vimeo.com)
90 points by marcusbooster on April 26, 2009 | 20 comments
3.Apollo Astronauts Didn't Need Heavy Boots (ufl.edu)
83 points by frisco on April 26, 2009 | 55 comments

Suck it up. Stop reading blogs, stop reading HN, stop making excuses. Start working. There are no tips that will break you out of it - just self discipline.

I was you once. GTD by David Allen helped. Going to the gym daily with my brother (who is a gym rat) helped, but I finally realized that I had everything in the world that people are dieing to get and I was squandering that gift by wasting my time.

Procrastinating is not an illness, it is a decision. You have chosen to be lazy, only you can change that.

Everything else is just smoke and mirrors.

5.Ask Entrepreneurs: Productivity tips for a chronic procrastinator?
72 points by GeneralMaximus on April 26, 2009 | 62 comments
6.A few comments on pandemic influenza (fluidinfo.com)
70 points by ivankirigin on April 26, 2009 | 29 comments
7.The Portuguese Experiment: Did Drug Decriminalization Work? (time.com)
64 points by EGF on April 26, 2009 | 30 comments
8.Ask HN: Learning C
62 points by FiveFiftyOne on April 26, 2009 | 65 comments
9.Ask PG: Can you paste paperwork used to get YC startups incorporated?
60 points by newbcoder on April 26, 2009 | 16 comments
10.Processing in JS is beautiful (processingjs.org)
59 points by bcx on April 26, 2009 | 2 comments

More food for the poisonous group-think infecting my generational and cultural peers. Why engage with the arguments of people that disagree with you, when they're just stupid and/or evil? Best just to mock them and revel in a comfortable sense of smug superiority. Everybody agrees with you, so your dishonest behavior will be reinforced and rewarded.
12.Ask HN: Best Python graphing and reporting libraries for web app
46 points by TJensen on April 26, 2009 | 10 comments

You'll never find a four-year-old who doesn't love learning. Our culture does something to screw most of them up sometime soon after.

I've found this never worked for me. By attacking the problem head on, I made it more of a big deal than it already was, which just made it more stressful and unpleasant, which made me less inclined to do it.

Instead, I noticed that almost all instances of my procrastination fit into three categories:

1.) I was trying to do something too ambitious, which I didn't have the skill level for, and so I couldn't complete it, yet wasn't able to admit that to myself.

2.) I was trying to bite off too big a chunk at once, so I'd get confused and wouldn't know where to start.

3.) The task is really boring and takes no real skill to complete, so I just wouldn't bother.

#1 is fixed by backing up and doing something easier - and oftentimes the "something easier" ends up being far more useful than the original task. For example, I spent like 3 years on FictionAlley.org (a PHP/MySQL rewrite of a website that had previously been 40,000 hand-written HTML pages), vs. a week on Scrutiny (Amherst's course-evaluation system). Once I'd done Scrutiny, though, FictionAlley was quite a bit easier for the practice.

#2 is tricky until you get some practice in breaking things down, but then it becomes quite manageable. For example, I was starting a new project for work this morning, one of those unsolicited I'll-build-it-and-then-show-my-manager things. Spent a half hour or so doing nothing but checking HN, then I created a git repository and figured "Hey, I can create a Django app. That's no problem." Then I figured "Hey, I create a basic HTML page with just the app's name on it. That's no problem." Then I figured "Hey, I can wire it up with django.views.generic.simple.direct_to_template", and suddenly I've got working code that just needs to be refined. The rest should be smooth sailing.

#3 is best solved with habits and routines, so that it really does become thoughtless. For example, I think paying bills and opening mail is about the most boring thing ever, so I always do it Saturday morning before going to the supermarket. It gets done, and since it's always at the same time of week I usually don't have to think about it. Same with responding to e-mail - usually, I make sure to respond immediately after reading or else not respond at all.

The smoke and mirrors can be quite useful. It works for me, at least.


1. In Which I Join The Choir

You should definitely learn C:

* You'll learn the memory hierarchy, which is probably the most important thing to know about performant software.

* You'll get 100x better at debugging --- both because you'll have practice, and because most of the tools you use to debug C code work for higher-level languages (gdb is still a better Ruby debugger than Ruby's own debugger).

* You'll be able to bridge Python (or Perl) to almost any library or framework you ever need.

2. In Which I Express Reservations

Don't learn assembly. In my (C and assembly-heavy) career, I've found it works in exactly the opposite direction: you won't really understand assembly until you understand C code. There are mainstream architectures (SPARC and MIPS) that are literally designed as drivers for C compilers.

You'll eventually want to be conversant in assembly so that you can debug faster (when it comes to the runtime, the C language is a flimsy abstraction indeed). But you should let your needs and interests drag you into the machine, just like you should probably learn "Stairway" and "Smoke On The Water" before mastering barre chords and sight reading --- you can have a pretty excellent punk band without ever knowing how to read music.

3. There Are Books

Everyone is going to have an opinion about K&R. What I think you need to know is, it's short and it's dry. I re-read it 6 years into my career and I was surprised at how rich it was; there's a lot of design and data structures material, beyond the core language.

There's a C book that changed my life. It's David Hanson's "C Interfaces And Implementations" (CII). I will now make a case for why it's the first and only book you'll need. You're coming to C from a high-level language. That language is giving you a couple key things you don't realize you depend on:

* Garbage collection

* Lists and hash tables

* Resizeable strings

Almost every major C project contains a site-specific reimplementation of these concepts. CII gives you one --- an internally consistent one, relatively well implemented, and extremely well documented. In doing so, it also teaches you the single most important thing about writing good C programs, which is how to build abstractions around your gnarly code.

The difference between people who know C as a language and people who can actually deliver software in it is resizeable containers (linked lists, dynamic memory allocation, high-level strings, doesn't really matter what the specific is).

The other book you want is "Advanced Programming In The Unix Environment" (or its moral equivalent, "Win32 Programming").

CII is "how". APUE is "what".

Finally, I like (for new programmers) "The Practice Of Programming".

4. What I Did To Get Started

I "knew" C for a while (maybe since I was 13) before I actually started coding in it. Two things got me unstuck.

First, I picked a couple basic Unix APIs and wrote little toy programs around them. If I remember correctly, the first thing I wrote was "who", from "getpwnam(3)", which forced me to do some basic strings and structure pointers.

Second, I wrote network code from a socket tutorial. Sockets are a great thing to get started on; just write a scraper for a service you like, and there's a zillion little problems you'll have to solve that are the same problems you solve in every other program you write.


What do I have to lose by asking?
17.Keeping Abreast of Pornographic Research in Computer Science (homelinux.org)
36 points by nreece on April 26, 2009 | 15 comments

Yeah, I hated school too. It's not ever going to change because it's for the masses. That's its sole and express purpose. Why is anyone trying to redesign the system or otherwise shoehorn exceptional people into a system designed for the masses? Either drop out or shut up, in my opinion. Massive social structures don't have time for unique butterflies. That's the Reality of the situation with a capital R.

The optimum solution is to just get it done at an 75-90% level until you graduate HS or college and get on with your god damn life instead of fighting it for years and years and years and pulling yourself and others down in the process. Just give them the bare minimum of what they want while pursuing your own interests. It's politics 101.

This is why many, many successful people say "I dropped out", or "Oh, I was only a B and C student" instead of "I spent every waking moment of my life trying to rebel against the system in which I had no place in, attempting to reforming it form the inside to suit my specific needs to a tee."

19.Richard Feynman's Works of Art (museumsyndicate.com)
35 points by Rod on April 26, 2009 | 6 comments
20.Crunchy - Python Tutorials in the Browser (code.google.com)
34 points by mattmcknight on April 26, 2009 | 8 comments
21.Why NPR is Thriving (They’re Not Afraid of Digital Media) (ikiw.org)
34 points by madh on April 26, 2009 | 16 comments
22.The embarrassment of American broadband (macworld.com)
34 points by pmikal on April 26, 2009 | 24 comments

Good idea. We should do something like this. I can't do it, though. Jessica is the one who does all this stuff. Maybe she'll post something. But if she does it won't be soon, because she is busy now getting this summer's startups set up.
24.The making of Playstation (edge-online.com)
33 points by Keyframe on April 26, 2009 | 6 comments

Some time ago (and I really ought to spend some time trying to track down the original source) there was a questionaire in the UK. One question was

  "Does the Earth go around the Sun,
   or the Sun go around the Earth?"
The followup question was

  "How long does it take?"
Of those who got the first one right (remember that, they got it right) nearly 80% gave an answer on the followup that amount to "about a day."

I have a mental model of how this can happen. For ordinary people on the street, the Sun goes around the Earth and it takes about a day. That's what they see, that's what they experience, and to them, that's what matter. Moreover, using the Earth as your frame of reference, they're right.

However, it's been drilled into them as an unattached, unassociated, irrelevant-to-them "fact" that the Earth goes around the Sun. When presented with the first question, then, they parrot that answer, with no idea of what that actually means.

This doesn't, therefore, mean they're stupid. It just means that they have a mental model of the world that works perfectly well for them, and they've been confused by "facts" that have no use.

I'm not arguing it's good, or right, but at least it helps me understand how otherwise perfectly functional people can appear so stupid and irrational.


Oh, great. A disease panic, now accelerated by online social media and Twitter. This could be worse than the bird flu (panic) of 2004-2005!

Despite the opening claim to being "fairly sober -- neither alarmist, nor dismissive", I thought the choice of emphasis here is somewhat in the alarmist direction, mostly making sure to mention how bad it could be. Examples:

I expect it will go global in the next couple of days, maximum.

The social breakdown in a pandemic is extraordinary.

No-one knows how bad another pandemic might be in terms of mortality... single digit millions... 100M might be possible.

...you should probably not believe anything any politician says about pandemic influenza.

So let me offer as a small counterweight the at-least-as-likely alternative scenario: flu deaths worldwide in 2009 will be about the same as previous years, around 40K in the US and up to 500K worldwide.

At this point: eat well, sleep well, and discourage sick people from coming to offices or socializing. Same as always.


My parents tried to home school me in the late 80's, early 90's (they were very religious). It turned into unschooling, because I was able to plow through the "curriculum" in very little time, and then spent all the rest of my time online. My dad worked for IBM so we had computers around, but when I found out that computers could talk to each other, I fell in love.

This drove my parents nuts, they kept telling me I was throwing my life away, blah blah.

Well, it's obvious how that all turned out.

Let kids follow their passions, and they will LOVE learning, which is the most important life skill anyone can learn.


This is one of the better pieces linked to from HN in some time, yet most of the comments here are critical of either the author or her husband or both. Critics, please raise your hands if either you or your spouse has raised $10M in a depressed economy, nationally launched a new consumer product into a hyper-competitive industry, and achieved multi-million dollar revenues while trying to hold a marriage and family together. Anyone? Bueller?

I'm perfectly fine with this appearing on HN because I don't pay that much attention to regular media outlets anymore and I might actually pick up something relevant, useful or just interesting in the comments here.
30.Steve Jobs On The Value Of Stock Options (techcrunch.com)
29 points by vaksel on April 26, 2009 | 8 comments

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: