hacker news with inline top comments    .. more ..    3 Jul 2011 Ask
home   ask   best   8 years ago   
Ask HN: How do sites such as Flipboard scale out their social data aggregators?
18 points by iamclovin  3 hours ago   3 comments top 3
Skywing 3 hours ago 0 replies      
I know this can be tricky. I wrote a Twitter-based keyword filtering tool and subscribed to their garden hose. They say to only use one connection at a time, so I think it may be violating the terms of service to be running more than one stream. Twitter offers larger stream bandwidths, too. Perhaps one stream of all the tweets can be obtained. Even with my one stream connection, I was missing incoming tweets because my local connection was too slow. So, this is a good question. I'm interesting in hearing the answer, too.
YuriNiyazov 3 hours ago 0 replies      
Not all users are created equal. I might be running 1 process per user for a currently logged in user, but move all scanning for non-logged in users into a low-priority queue.
daniel_iversen 37 minutes ago 0 replies      
I think the principle (and there are many commercial and open source tools - Jasper is one I believe) is called "event stream processing" (picking meaning out of the firehose), it's big in the financial space of course where they have had these volume problems for a long time.. what do you think about that?



Ask HN: Digitizing Books That Aren't Available Electronically
4 points by RexRollman  7 hours ago   9 comments top 3
noonespecial 7 hours ago 2 replies      
I do it all the time. I take the poor book to work, slice it's spine off with the hydraulic cutter and then feed it through my Fujitsu Scansnap. The whole process take about 15 minutes for a reasonable sized book. The software that came with the scanner makes it into a searchable PDF automatically. It's a bit ..ahh.. destructive for some people's taste but I figure by sacrificing the paper copy, I can keep the electronic one with me for a lot longer.
sitkack 7 hours ago 1 reply      
You are absolved of your sins my son. Digitize away. If we don't do it, the books will rot and be lost for ever. It is your life and your brain AND your books. So feed your brain, don't ask for permission.
lorax 5 hours ago 0 replies      
If you own the books and you aren't planning on sharing them then you are just format-shifting which is perfectly ok.
Ask HN: How to accept payments?
4 points by danest  8 hours ago   5 comments top 5
LeBlanc 7 hours ago 0 replies      
For freelance billing of clients the best tool is probably WePay.

You can send a bill (including recurring bills) to clients, and have a full list of all invoices and whether they've been paid or not. They can pay with a credit card or bank account, and then you can either direct deposit the money into your bank account, or send yourself a check for the money.

richardofyork 5 hours ago 0 replies      
PayPal is the most convenient for most clients, since it is reputable and used ubiquitously. The downside is that if the invoice is large > than $3000, you will lose a good chunk in PayPal fees.

Checks are great because you get to keep all the money...well, except for taxes later,

Wire Transfer (Bank) is a great option if the invoice is huge (more than $3000), to avoid costly fees.

The other options suggested above are good alternatives, too.

jeggers5 8 hours ago 0 replies      
If you're in the US, you can use Square: http://squareup.com/

For online payments, Google Checkout should work fine unless you have any particular gripes with it.

bluesix 7 hours ago 0 replies      
If you're just doing freelance work, I find direct deposit works best. Many clients don't use credit card for large amounts because of fees, which you'll also incur for most online payment systems
revti 4 hours ago 0 replies      
I think best online payment is via "Paypal" and lot of free lancer site pay via paypal.
Ask HN: When should we start talking to the press?
5 points by eytanlevit  11 hours ago   1 comment top
tirrellp 10 hours ago 0 replies      
A question that I would pose to you is 'Do you already have an internal PR campaign started'?

In other words, how are you keeping your 'targets' up to date with company progress and milestones? By targets I mean prospective investors, board members, and advisors.

Getting into the groove of keeping these people up to date is good practice for understanding what might be relevant from the perspective of an investor. It also puts you on their radar so that when you do get that big TC coverage, that could be the thing that compels them to say 'I'm in'.

On the other hand, skipping the internal pr and going straight for big coverage leads investors to say something like 'You're on my radar now... lets talk' and at that point you are going to have to keep them up to date with your progress anyway as part of the 'dance' that leads to funding.

So my opinion is to start an internal PR campaign keeping prospective stakeholders up to date with progress and milestones and keeping them warm and socialized, then when you get the TC/VB press, it serves to pump up the social proof aspect of how cool your company is.

Then your prospective angels can say 'Oh yea, I've been watching those guys since before the TC spread came out, I knew they were something'. People like to be ahead of the curve.

Hopefully this helps, or hopefully this gives you more questions than answers. Either way, I would like to see this thread not get buried.

Ask HN: Quit my job and learn to code in Thailand for a year?
3 points by dcpdx  10 hours ago   5 comments top 4
mattm 1 minute ago 0 replies      
If it's on your mind, go for it. Otherwise it may just end up as a regret down the road.

Thailand is cheap. You can easily live on a few hundred dollars a month so a "fair amount" of savings should be no problem.

I don't know why you asked though. Are you looking for someone to talk you out of it?

gexla 6 hours ago 0 replies      
I have been doing something of the same. I started out learning web development while going to college. The first big plus was that I was able to quite my part time job and do web development working from home. I then quit college to do freelancing full time (I hated college and my grades were crap, so this wasn't as bad of a decision as it sounds.) I then decided that I could take this a step further and not just work from home, but work from anywhere in the world. I then moved to the Philippines and two years later I'm still there.

Peter Cooper mentioned that your year out could turn into a "procrastination-ridden year of hedonism" and I would agree with that. It's really easy to get caught into a "vacation" mindset. My first year here ended up being more of a case of "let's see how little work I can do and still get by" rather than building my business. The beer here is really cheap and there are a lot of expats who don't work. Every day is Friday, and if I'm not careful I can slip into their same routine.

That said, I'm not sure I would take the path you are looking at. I think you need to define your goals more clearly. What is the reason for learning to code? I learned how to code during my free time after work and on the weekends. Most important for me wasn't to have a lot of full days to learn how to code, but rather practicing every day if even for an hour a day. So, you don't have to go on a year sabbatical from your job just to learn how to code. Also, if you are practicing every day, you can get pretty good relatively quick.

After you learn how to code, what are your plans? This is where you are very vague. Though I'm a freelance web developer, I wouldn't suggest this for most people. This is a real business and takes real commitment. It takes a lot of time and effort to really figure out the business side. It's stressful and I don't have much time or energy left over to work on my own projects. I would love to be working on some sort of start-up idea which would allow me to switch, but I can't afford to break my business cycle (quit accepting work, build my own application with no money coming in, perhaps have to start taking in new work if my idea doesn't work out and having to rebuild the cash-flow cycle.)

If you want to build something, you can take the time to learn the code just as you are doing now. As you said, progress is slow but you are still making progress. If you were to be competent in 3 months, then that's not really very long. Maybe another few months and you would be surprised with what you could accomplish. Even if you aren't a guru yet, you might just be good enough that you can tackle just about any problem that you run into. At this point, you are "good enough" though you will continue to hone your craft.

So, the moral of the story is that the year away isn't something you need to do. You can learn what you need to learn doing what you are doing. Keep building up that savings (something you will lose when you leave,) keep building on the side and be patient. Eventually you may even be able to build something that makes a bit of money. If you could build an application which could bring in $1000 / month in profit then you would have enough to live on without having to dip into your savings. That's the point where I would be considering moving abroad.

I'm not saying don't do this. I'm saying that you should be honest with yourself and define your plans more clearly. What is it that you really want to do? If it's simply to get away for a year in Thailand then go for it. If it's to learn to be a better coder, then stay on your present path, it's working! If it's to quit your job because you are simple "done" with it, then go ahead and take a sabbatical to find yourself again (though I'm not sure I would want to burn through my savings to do this, it would be better if you could support yourself while there so that you don't have to touch your savings.)

On a side note, the Philippines is also a great place. It's about the same cost of living. English is an official language. The visa allows for tourists to stay up to 16 months without having to do a visa run outside the country. I live in Dumaguete and I work out of an office (working from home just isn't effective for me anymore.) The biggest downside is the infrastructure in general is probably worse than in Thailand.

petercooper 9 hours ago 0 replies      
Only you can analyze yourself and determine whether a "year out" could turn into a procrastination-ridden year of hedonism. At 25, though, you're not too old to have a "gap year." If you can realistically make it work with your resources, what's the worst that could happen? You come back with your tail between your legs in a few months?

The key thing you mention is not having any family to support.. once you go down that road, you're highly unlikely to be pulling off stunts like these unless you have an extremely liberal significant other and the derring-do to stay strong with a family in tow. I'm married and have a daughter now and even getting out to California for my once-regular vacation is now a project with logistics on the scale of invading a small country.. :-)

Hopefully someone else can come along and give you the specifics on how easy this is to do in Thailand, but in terms of actually doing it, if you see no significant downsides, go for it.

jeggers5 8 hours ago 1 reply      
1. Don't go on your own
2. make sure you can go back to your current job if things don't work out
Anyone working at Facebook: what happening at Facebook on Google+?
93 points by evolution  2 days ago   84 comments top 8
reso 2 days ago 2 replies      
Facebook's response to Google+ actually took place last summer and last fall. I was an intern there at the time, so I got to see it.

Google Me, as it was known at the time, was clearly Google's first serious attempt at moving into social, and everyone was a little bit nervous. So, Zuck declared "Lockdown" for sixty days. "Lockdown" was a term from Facebook's early days, which meant when they had a serious competitor emerge at a particular school, they would stop everything and redouble their efforts until the new threat was gone.

This time, Lockdown meant removing all the obvious shortcomings from Facebook that Google could possibly beat us on. Since most of these were already in the pipeline, this meant shipping everything, now. For sixty days there was a constant fervor in the office, with fewer meetings, late(r) nights, and many people coming in on weekends. They even extended cafeteria hours.

The results of Lockdown were visible last fall, with the almost-monthly new product launches. New Messages (Titan), High-res photos, the new photo viewer, New Groups, Profile, and several other non-obvious additions were accelerated by Lockdown.

I think it is very indicative of the company's culture that their "response" was so pro-active. As to what they will do now that G+ is out there, I have no idea. Zuck did say to expect an "awesome" announcement next week, so I wouldn't expect them to be quiet.


blhack 2 days ago 1 reply      
I'm going to venture a guess that you're only going to get politically correct answers on a public forum like HN.

Something along the lines of:

"We're happy to have some competition! By the way, did you know that facebook has had something like circles since 2009? Go to preferences and blah blah blah to enable it!"


"G+ and facebook fall into different categories and, in some ways, compliment one another! We're happy for google in this, but don't think it will effect facebook."

maybe if they get bold

"We'll be happy to see what google comes up with! Of course facebook employees are encouraged to sign up for the service, if they can get invites! We've heard it's quite the contest to get them right now! The couple of people that have tried it around my office said it was a bit buggy, but it is a good start!"


pessimist 2 days ago 1 reply      

looks legit based on the people he's following. Mark doesnt look very happy :-).

theblueadept111 2 days ago  replies      
My opinions are my own and I can't speak for Facebook as a whole (or in any capacity, really, which is why this will forever remain an anonymous post).

I think Google will gain some traction initially, but what we're working on in my group is light years ahead of the Facebook you see and use today, and probably not the same direction that Google is (or can be) heading.

Yes, we've had our stumbles with privacy, but will Google be any better? Any legitimate complaints that I've heard are either something we're resolving or is an inherent problem that any social networking site will face.

Am I worried about attrition of users as Google ramps up? Not really. It's too much work to maintain multiple social networking accounts and at the end of the day, all your profile are belong to us.

kmavm 2 days ago 1 reply      
Well, here's one thing that happened the other night:


Edit: This is the circles UI implemented for Facebook friend lists. Three FB engineers put it together the night Google+ launched.

winsbe01 2 days ago 0 replies      
I don't know, I think this is a good thing for everyone. With all the hiring wars going on between Facebook, Google, Microsoft, Apple, etc., we're bound to see some really cool advancements from these companies in the near future. Plus, to have something pose as a direct competition to Facebook's core mission is exciting; Zuck won't back down, and neither will Page, and hopefully out of that comes innovation.
Caballera 2 days ago 1 reply      
So far Google+ is rather boring. Probably cause I only have 9 people on there and no one is posting anything other then their new profile picture and a test post. Other then that it's been quiet. Meanwhile on Facebook where I have many more "Friends" it's business as usually, same number of post etc.

I'm sure it'll take a long time for Google to catch up, I just don't see most people moving to Google+.

borism 2 days ago 1 reply      
Zuckerberg is running around killing animals, just as usual


Ask HN: How do you keep yourself Organized?
3 points by jeffchuber  12 hours ago   2 comments top
guptaneil 12 hours ago 1 reply      
There are 3 main tools that are critical to keeping me organized:

1. For everyday stuff like tasks and reminders, 2Do on my iPhone is what I count on.

2. For brainstorming ideas and sketches, I still keep an old-fashioned notebook that I can go back and flip through.

3. For keeping my coding tasks organized, I can't imagine going back to a world without Pivotal Tracker (www.pivotaltracker.com)

Ask HN: What methods do you use to pitch bloggers about your startup?
4 points by nickfrost  16 hours ago   4 comments top
iSimone 15 hours ago 2 replies      
I guess nothing beats prior establishing of good terms with that blogger, but I realize that that might not be possible in most cases.

Emailing a short, informational and friendly piece to that blogger (with a personal note) is probably the easiest bet. If the things you're pitching are good and already online, a tweet may also be enough.

I recently liked (and blogged) this advice here on that topic: http://blog.thegodfounder.com/post/6826152792/email-pitching...

Calculate n + 1 without using + or - or * or /
8 points by namank  1 day ago   11 comments top 8
KeithMajhor 1 day ago 0 replies      
Arbitrary addition, subtraction and multiplication without arithmetic signs.

int add( int a, int b )
while ( a )
int c = a & b;
b ^= a;
a = c << 1;
return b;

int sub( int a, int b )
return add( a, add( ~b, 1 ) );

int mul( int a, int b )
int c = 0;
while ( a )
if ( a & 1 ) c = add( c, b );
a >>= 1;
b <<= 1;
return c;

icebraining 5 hours ago 0 replies      
I have the proper Enterprise version:

    def increment(a):
import urllib2
url = "http://www.html2xml.nl/Services/Calculator/Version1/Calculator.asmx/Add?a=%d&b=1" % a
result = urllib2.urlopen(url).read()
from xml.dom.minidom import parseString
result = parseString(result)
return int(result.getElementsByTagName('int')[0].childNodes[0].data)

LarryA 18 hours ago 0 replies      
Could do lookup tables like the old CADET system did.

In some situations you may be data rich but function poor. Like embedded devices where you have a limited instruction set, 128bytes of RAM, but access to megs of ROM for program/data.

bobwebb 10 hours ago 0 replies      
def add_1(x):
return sum([1,x])


Too simple? I didn't use any of the signs, and it demonstrates knowledge of the python standard library!

EDIT: Whoops, seems the idea of using the sum() function (or operator) has been dismissed elsewhere. Time to study some more languages, I think.

code4pizza 20 hours ago 0 replies      
data Nat = Zero | Succ n

plus1 = Succ

Probably not the answer they were looking for, but it was the first thing that came into my head.

awaage 1 day ago 1 reply      
how about this (example in ruby):
def plus_1(x); arr = []; arr[x] = true; return arr.size; end
alexl1988 1 day ago 0 replies      

  int inc(int a) {
int mask = ~a;
/* Assuming a is 32-bit. If 64-bit, add 32-bit shift. */
mask |= mask << 1;
mask |= mask << 2;
mask |= mask << 4;
mask |= mask << 8;
mask |= mask << 16;
/* Take the longest run of 1s from the right of a.
* mask has 0s there and 1s everywhere else. We want
* to set the next bit to 1 and set the ones after
* to 0. */
return (a | ~(mask << 1)) & mask;

California Startups: Legislative Emergency
87 points by kposehn  3 days ago   55 comments top 13
gojomo 3 days ago 6 replies      
I like Amazon a lot. (Currently a Prime customer and have a California-based site that makes a small trickle in affiliate fees.) I want taxes to be low or non-existent.

But the cross-border sales-tax exemption is broken in the modern era. There's no reason to give such a big de facto price advantage to distant retailers. The infrastructure that makes a state's residents good Amazon customers " high-paying jobs, spacious homes in attractive communities with full utilities, roads for overnight deliveries " needs to be paid for with broad, low taxes on all who benefit.

Amazon benefits. And Amazon has multiple California subsidiaries.

Amazon hasn't argued against 'Use Taxes', so it's not like they're making a principled stand that states have no legal right to this 8-10% of the purchase value. Amazon just doesn't want to collect it, which essentially helps their customers evade a legal (but usually-ignored) Use Tax.

nostromo 3 days ago 2 replies      
We were expecting this and were already preparing to relocate out of California. Since our team is largely virtual, switching to Washington as our primary place of business is very easy -- just a few documents and a new address. California in no way benefits from this -- in fact I think they just did Seattle and other tech communities a big favor.
kemiller 3 days ago 1 reply      
So I realize this opinion will be unpopular, but the tax nexus issue is huge and really is unfair. California residents are legally obligated to pay sales tax on online purchases from out of state, but of course, no one does because Amazon et al have gone out of their way to avoid having to collect it. They effectively get a free ride, tax-wise, which just forces the taxes to go higher everywhere else.

The big box stores you mention obviously have an interest in all this, but it genuinely does hurt the local mom and pop's too.

It really needs to be fixed federally, though, or you get the kind of nose-cutting behavior you see from Amazon. Losing California from their affiliate program would hurt more than the states that came before.

inconditus 3 days ago 1 reply      
Amazon will cancel their Affiliate program for California if this happens, just got this email:


breck 3 days ago 5 replies      
Can you post the phone #'s for these reps? This is awful. I want to personally contact all their offices and voice my complaints.
markwelch 3 days ago 0 replies      
Today, California forced Amazon to terminate its advertising relationship with me. Today, I lost 26% of my advertising revenue. Amazon will not suffer as a result; California will not benefit either.

Unfortunately, we've known this was coming for several weeks; it was included in the budget partly to placate local booksellers and big-box retailers (Wal-Mart, etc.), but primarily to falsely claim $195 million in additional revenue (as part of about $4 billion in "smoke and mirrors" revenue claims).

Of course, everyone knows that won't happen: as expected, Amazon terminated its advertising relationships with California web publishers today, so the $100 million of sales taxes that the state "expected" from Amazon is gone. The remaining "expected" revenue will follow, as Overstock and a hundred other out-of-state merchants terminate Californians from their affiliate programs.

It's wrong that Amazon and other out-of-state retailers don't collect sales tax in all states with sales taxes. But this law doesn't address that problem at all.

This topic has been widely discussed on ABestWeb.com over the past three years as similar laws were enacted in New York, North Carolina, Rhode Island, Illinois, and other states. Except for New York, none of these states have collected additional sales taxes from the laws.

My blog post today: http://blog.lessonindex.com/2011/06/california-forced-amazon...

minouye 3 days ago 1 reply      
Is anyone aware of what smaller online-only merchants are intending to do (smaller players on CJ, Linkshare, etc.)? Have they followed Amazon's lead in other states where this was an issue (e.g. Illinois, Colorado, etc.)?
richcollins 3 days ago 0 replies      
Affected companies will end their affiliate programs so they don't have to pay the tax. This means that the state won't collect the tax revenue anyway. It's obvious that this is just a ploy by competitors (Walmart) of companies with successful affiliate programs (Amazon).
babar 3 days ago 1 reply      
Can someone explain this for people who are not familiar with the way these affiliate programs work? Were people not paying taxes on affiliate revenue and would now have to start? Or is this a tax on the end customer buying from Amazon (which would be forced to collect CA sales tax)? How do either of these impact startups in CA? Does this impact businesses registered in DE that have an office in CA?
kposehn 3 days ago 0 replies      

Brown just signed the budget trailer bills, including the affiliate nexus tax. I just went into effect immediately.

That's that I guess.

saalweachter 3 days ago 1 reply      
What's this "Amazon doesn't collect sales tax" thing? I'm in NYC and I pay sales tax on items purchased from Amazon.com.

Total Before Tax: $47.99
Estimated Tax To Be Collected: $4.26

If that's not NY sales tax, it sure looks a helluva lot like it.

alanmccann 3 days ago 1 reply      
Thank you, Silicon Valley, for voting overwhelmingly Democrat and bringing this and other business killing legislation here in California and countrywide.
scarmig 3 days ago 3 replies      
"She has no grasp on the effect..."

"...the guy who put it forth has no clue about how the internet works..."

"...has literally no clue how this works and doesn't care a whit about the effect it will have..."

Really? Is e-commerce so weak that it can't compete on a level playing field with physical retail? Even if you think it is that weak, is it really so outlandish for people to think it can that it's worth a page of venom-filled invective? Yeah, Amazon's cutting off its nose to spite its face here, but doesn't that mean you should be mad at Amazon, not the state government?

Ask YC: What about people who don't know English good enough?
6 points by ochekurishvili  1 day ago   7 comments top 4
auganov 1 day ago 2 replies      
Not sure what you mean by A level. Of course you don't need to sound native.
But if you cannot communicate you just cannot communicate. I guess it's pretty obvious. Nobody is going to test your English, but if you will make a bad impression and somebody will be worried that it will be an obstacle, then, well they have every reason to act on that worry.

Just do your thing and don't care about making an error here or there. If you know it's a real issue then go fix it, you will have to anyways.

tobylane 18 hours ago 0 replies      
Just read this in the Week http://www.ft.com/cms/s/2/e3e18a60-9c71-11e0-a0c8-00144feabd... I see the point, the language isn't just the words, the grammar, the combinations of the words, but the intricacies (hidden details) of odd mixes which comes under wit and so on.
chalst 18 hours ago 0 replies      
I should think it is good if you have someone who can deal with people like VCs in native-like English. I should think it is a serious disadvantage if you have nobody in your core team (i.e., someone who can act as the face of your company) who speaks better than globalese.
mikemaccana 1 day ago 1 reply      
Off topic, but you mean 'people who don't know English well enough'. Good luck in your endeavors.
Ask HN: What do you guys use for wireframing?
5 points by aorshan  1 day ago   8 comments top 8
squidbot 1 day ago 0 replies      
LucidChart (http://www.lucidchart.com)

I love being able to use it anywhere, and they just updated it to work on the iPad which is nice. It's got a few issues to iron out, nothing that's kept me from getting things done, and I like supporting these guys.

taphon 15 hours ago 0 replies      
PencilProject (http://pencil.evolus.vn)

It provides a decent set of features and has a browser version, as well as a desktop version.

8dot5by11 1 day ago 0 replies      
Balsamiq or mockflow.com (Basic version is free but its kinda useless)

Also, go here for a good list of wireframing tools: http://www.smashingmagazine.com/2009/09/01/35-excellent-wire...

Scroll half way down and look for "2. Wireframing and Mockup Tools"

mg1313 1 day ago 0 replies      
jrlatent 8 hours ago 0 replies      
+1 for LucidChart (http://www.lucidchart.com). I'm a big fan of the collaboration with clients.
JamesDB 19 hours ago 0 replies      
Google Docs Drawing tool

Very simple and quick to throw up some ideas

tirrellp 1 day ago 0 replies      
grah4 17 hours ago 0 replies      
pen + paper
Ask HN: Finding a financial benefactor?
5 points by buzzzlight  1 day ago   1 comment top
bmelton 1 day ago 0 replies      
My knee-jerk reaction, which I freely concede deserves to be downmodded to oblivion:


Reading further though, it looks like you're basically hoping for somebody to give you $100k to 'get started'. For what?

In response to the 'earning' a benefactor, the obvious way to do that is to get started doing something. Build a prototype, get customers, look for venture capital. If seed capital isn't enough to get you going, then you need to do more before you seek investment.

In the meantime, get revenue, and pay off the $50k you owe. You're right that it's going to be hard to get capital with $50k in debt hanging over your head, but I can't imagine anybody, short of family, friends, or a good swindle, that would be willing to give you $50k to pay off your last mistake so that you can get started on a new one.

No offense meant, but there are so many great ideas waiting to be executed that can at least get to prototype level with close to zero capital outlay. Find one, attack it, demolish it.

Your startup should clone the "Send Feedback" feature of Google Plus
8 points by gourneau  2 days ago   13 comments top 6
toast76 2 days ago 1 reply      
We're actually building this sort of tool. http://bugherd.com

At the moment it is a more traditional bug tracker, but the side widget is designed to accept anonymous feedback in this sort of form as well (coming soon).

nextparadigms 2 days ago 0 replies      
I loved the fact that they implemented a send feedback on it. If only Chrome had a send feedback button option!

But I don't think it's that intuitive to black the info out. I've sent a few blackouts already and I didn't even realize I should black out the info. I didn't know I could do that until I saw someone else do it. So I think they need to make that part a lot more obvious.

thetylerhayes 2 days ago 0 replies      
Hopefully feedback widgets (e.g., UserVoice) take heed and develop this and/or someone throws an open source equivalent together; I'd love to fork this on Github, lots of potential.
petervandijck 1 day ago 1 reply      
Your startup doesn't have time to develop this (it's not trivial).

Someone should offer it as a service instead.

bemmu 2 days ago 2 replies      
For those of us without invites, what's the feature like?
revorad 2 days ago 1 reply      
Yeah it's quite thoughtful, although the "black out personal information" feature seems like a bit of a dark joke.
Ask HN: I want to learn how to code. Can anyone tell me how to start learning?
64 points by theprotagonist  6 days ago   57 comments top 32
zedshaw 6 days ago 2 replies      
I wrote this:


It's free. Do this:

1. Use your current computer. It doesn't matter if you have Linux, OSX, or Windows. What matters is that, right now, you want to learn to code, so you should go learn to code, not learn to setup a new OS.

2. Just use gedit. Don't use vim, vi, emacs, or any "hardcore" editor. On a Mac if you're using a non-English keyboard, use Textwrangler. Learning a new editor is not learning to code.

3. Start now, do what I tell you in the book. Type code in, do not copy-paste, make it run, fix it until it does, do the extra credit, then go on to the next one.

4. Other programmers will tell you to use their favorite tools, just ignore them. Just use gedit, Terminal (cmd on Windows), and python. That is all. Nothing else. Everything else is a distraction.

5. Finally, do it every night, for 2 hours a night, and take a break on one day. You'll be surprised how quick you can get through the book, and you'll get stuck sometimes, but keep doing it.

After that, move on to other more advanced topics and try to learn more stuff, but for now, just do this.

espeed 6 days ago 3 replies      
Set up a Linux computer (Ubuntu Linux is the easiest to set up), and spend the summer learning to program in Python.

Python is easy to learn (not much syntax), easy to read (explicit vs implicit), has a big ecosystem (more packages/libraries), is taught at universities so it's easy to find good programmers to help, and is used by many large websites/companies so it's a good language to know.

Here are some of the best online Python tutorials, including a link to videos and course material for MIT's introductory computer science course, which uses Python: http://www.quora.com/How-can-I-learn-to-program-in-Python/an...

Build something that you want to use so it will be meaningful to you. Do you have a blog? That's usually a good first exercise. It's easy to do using Flask -- follow the tutorial (http://flask.pocoo.org/docs/).

Here are some tips to get you started:

Use Emacs as the text editor to write your code -- it usually comes pre-installed on Ubuntu, and it has a Python mode. Here are some Emacs tutorials (there are some good videos on YouTube too):

http://philip.greenspun.com/teaching/manuals/usermanual/emac... http://www2.lib.uchicago.edu/keith/tcl-course/emacs-tutorial... http://www.gnu.org/software/emacs/tour/ http://cmgm.stanford.edu/classes/unix/emacs.html

Use PostgreSQL as your database. To install it on Ubuntu, use this command:

  $ sudo apt-get install postgresql

Use SQLAlchemy (http://www.sqlalchemy.org/) to connect your Python website to PostgreSQL.

Here's a good SQL tutorial: http://philip.greenspun.com/sql/

When you build a blog, you don't have to worry about building a public authentication and comment system if you use something like Disqus (http://disqus.com/) -- you just include the Disqus JavaScript tag at the bottom of the blog's entry page.

Here are some good JavaScript tutorials: http://www.quora.com/What-are-good-books-preferably-found-on...

Use StackOverflow to ask programming questions: http://stackoverflow.com/

UPDATE: Here are links to some commonly-used scientific Python packages (http://www.drewconway.com/zia/?p=204).

tjr 6 days ago 3 replies      
I think it best to learn how to code by working on an actual project. You seem to already have a project in mind, and I think that would be a fine project.

Break it up into steps. First write a program that opens a file, reads the book titles and displays them on the terminal. Then write a program that makes some sort of network connection; maybe download the HTML contents of a website. Etc., etc., until you've learned how to do the various subtasks involved with your project, and then assemble it all together.

I'd suggest that Python would be a good language to start with. I personally like the O'Reilly book Learning Python, though there are many options.

emilepetrone 6 days ago 0 replies      
I was in your shoes 11 months ago, so let me give you some real-world advice. If you have a friend that knows any language (Python, Ruby, PHP, etc) start there. They will be there when you have questions, and having a person to turn to is the most important thing. However lets say you don't have a friend to turn to- start wit h Python.

Try Google App Engine to get started so you don't have to worry about dealing with a server. Start here http://learnpythonthehardway.org/

Find a copy of http://oreilly.com/catalog/9780596801601#toc for understanding basic ideas with HTML, CSS, JS and Python/GAE.

In the meantime, start a blog and write about your stuggles and the things you learn. Initially it won't really be about coding - but the main thing is showing momentum to the outside world. (Trolls will hate just ignore). By getting your name out there, people will be more interested in helping you.

Start there. If you have questions, my email is emile (at)

ryanbigg 6 days ago 2 replies      
I second the advice about setting up an Ubuntu machine. Windows is unnecessarily painful for development in comparison. Although there are "workarounds" around the problem, you'll find things much easier for development on an Ubuntu or Mac computer.

Now for a language recommendation. I am a Ruby programmer, so I've got a pretty heavy lean towards that.

Ruby is an exceptionally easy language to learn. There's a book called Learn to Program written by Chris Pine (http://pine.fm/LearnToProgram/) which is an amazing beginning to getting into Ruby.

Past that, there's the Well-Grounded Rubyist by David A. Black (http://manning.com/black2) which covers all the things from basic Ruby up to medium-advanced levels of Ruby). There's also Programming Ruby 1.9 by the Pragmatic Programmers (http://pragprog.com/titles/ruby3/programming-ruby-1-9)

If you want to brush up your Ruby skills, the Ruby Koans (http://rubykoans.com/) are also pretty good.

If you're looking to get into web development (well, you ARE on the internet!) then I would recommend learning HTML and CSS with a book such as HTML 5 and CSS 3 by Brian Hogan (http://pragprog.com/titles/bhh5/html5-and-css3). Then a good JavaScript book, perhaps something like JavaScript: The good parts (http://oreilly.com/catalog/9780596517748).

After learning as much of those as you can, familarize yourself with Git by reading the Pro Git book by Scott Chacon (http://progit.org/), or if you choose another version control piece of software (Mercurial, Bazaar are good, SVN isn't and CVS is (I'm pretty sure) the work of demons).

Ah and before I forget, I've got The Developers Code (http://www.thedeveloperscode.com/) bookmarked for late-night reading and I'm quite enjoying it so far. Quite a lot of lessons in there that I have learned over my brief career, but ones I knew from the beginning.

One more final thing: you are new here and people will treat you like that. Be nice to them and they will be plenty nice back. Respect the fact that they have limited patience and may not wish to answer your questions eternally. They may also have other people asking them questions at the same time you are, or have other things they would like to be doing.

You will get better with practice. You show a keen want to learn, which is a great start. Never give it up. Nothing is "too hard" forever. Persist, and for the love of god, practice.

coryl 6 days ago 0 replies      
I'm actually 2 months into learning to program Javascript for the Unity3D engine. I've learned a lot in 8 weeks, and I'm happy I took the time to commit to it. I could actually start prototyping my own basic mobile games with Unity, something I never thought I'd be able to do.

So I guess from my experience:
- Find a single good source or book for tutorials and learning. Its best for the coding style and teaching style to be consistent. I used a fantastic series of free video tutorials produced by the Walker Brothers, which included 3 entry exams, and a series of lab assignments after each tutorial set. I had to submit the work in order to get access to the next set.

- Find a good Q&A source like Stackoverflow, forums, or a site more specific to what you're coding in. When you get stuck or don't understand something, go and ask (search first). +1 if you have programming friends to ask too.

- Keep a journal (really!) on Google docs. At the end of the night, you can quickly re-hash what you learned (cs concepts, or cool functions you learned), or often write out the things you don't understand. That way, when you start up again, you can do a quick review on where you left off and get back to figuring out things you previously were stuck on.

- Try not to skip past things you don't understand. If you don't understand them, take the time to practice out the code, or look up documentation. A big key point: its always worth it to invest the time to figure little problems out. I once spent 3 hours trying to get some timer controllers working just perfectly the way I wanted. They were actually OKAY to begin with and I was considering skipping past it for the sake of productivity, but in hammering out the problem, I gained confidence and had the satisfaction of solving a problem.

- Get your things WORKING! As beginner programmers, our first concern is making what we want happen. Not pretty code, not computer science theory. Just results. Getting results fast gives you the confidence to try harder things, which will naturally take you into the world of organized code and computer science.

Good luck!

kaptain 6 days ago 0 replies      
Look for a mentor who is already working on a real-world project. The problem with learning things on your own is that the examples from which you are self-learning are (by design) too simple and often unrelated to a result that you want.

That's not to say the tutorial/source would be completely unrelated, but it sounds like from your post, that coding isn't something that comes easily which means that in order to make the leap to something that you actually want to do, you'll need more than a book to guide your way.

The great thing about a mentor is that they (should) will have a real life problem for you to solve and they can help you work through some of the subtleties of the problem.

I used to think that anyone can learn to code (this was when I was 18). I find, now, that there are people that are more naturally inclined to it and some people that will never be able to, because their brains don't work that way. I would gently encourage you to be open to discovering where you lie on that spectrum and not to be too disappointed if you've tried but still find yourself swimming in molasses.

bfung 6 days ago 0 replies      
I've been in the process of teaching/pointing in a general direction a couple of friends on how to program. "Learn Python the Hard Way" was far too boring, and wasn't practical enough for my friends.

If you're used to and good at learning in a school format, MIT OpenCourseWare is excellent. My friends also liked the videos better than learning by book.


I would go in this general order for beginners. Do all the assignments, and don't cheat. Ask for help on explaining the solution. These courses help in building good fundamentals, then apply what you learn to a personal project.

  1. 6.00 - Introduction to CS and Programming (Python)
2. One of: 6.087, 6.092, or 6.096&6.088, (C, Java, C++) respectively.
For scientific computing, pick C and/or C++.
3. 6.046J - Introduction to Algorithms

From there, 6.001, and perhaps the database course (I think experiencing databases is much easier that a taught course)

Doing #1 already goes a long way to your proposed project.

SIK 6 days ago 0 replies      
I am in the process of doing exactly this.

If your ventures are web apps, my recommendation would be to learn Ruby on Rails. You will be able to build demo apps within a few months of 8-10 hours per week.

I started with RailsTutorial.org, which is a free book that will take you from installing Ruby to building a twitter clone. From there, get a few books, I recommend Agile development with rails and The Rails 3 Way, and continue to work on some smaller apps. There are also great screencasts you can find by searching for "railscasts."

If you are using windows computers, install Ubuntu Linux which is really easy with Wubi. I have found it makes things easier. If you have a mac, stick with it.

For text editor, I use Sublime Text 2, and if you're on mac, just go with Textmate.

Sign up for Github and learn about version control. Also, go through projects on Github and learn by reading other people's code.

After you have a semi-grasp of the basics, start building something substantial.

Search Stack Overflow when you have questions, and if you've been trying to figure something out for over six hours, ask a question on Stack Overflow.

For html and css questions, I generally just google any issues I have and fool around in firebug, which is a firefox extension that lets you edit html or css and see the changes on your screen.

Best of luck!

wvoq 6 days ago 1 reply      
Hi. Most of the advice in the comments already posted is sound, but none of them seemed to address HPC. Working on a cluster invites an entirely different bundle of conceptual and practical hurdles (e.g. parallelism, working remotely, industrial-strength shell scripting &c.) Even though I had been programming since I was a kid, I found my crash-course in HPC to be quite challenging; confronted with a new programming model in a new low-level language, it was the first time that I really appreciated what it must be like not to know how to program at all.

So: code as much as possible. As soon as you can possibly stand it, look into MPI4py and start parallelizing your code. Chances are you won't be working with python in HPC contexts, but learning parallel programming at the same time as C or fortran would be needlessly difficult. I would also try to get time on a cluster as soon as you're in a position to use it respectably. Most universities with HPC facilities have an online application for an account, and some sysadmin might take pity on you :) Otherwise, maybe Amazon has some kind of deal?

In the interim, become _very_ comfortable with bash and general command line fu, and a serious text editor. Good luck!

JacobIrwin 6 days ago 0 replies      
You need to take a bottom up approach. Fill your time studying the very basics (i.e., programming languages, components, specifications, history, etc.). Online video lectures [beginning with] Programming Languages was where I ended up learning the greatest amount in the first weeks.

I started with MIT OpenCourseWare. I was very fortunate to find this lecture series: http://www.youtube.com/edu?edu_search_query=intro+computer+p... because it is class taught at MIT for students entering the CS or engineering programs that have little or no background in Programming Languages.

Hint: Pay attention in the first and second videos close enough and you'll learn how to locate online resources that are provided to the enrolled students.

chubs 6 days ago 0 replies      
If you end up choosing python, a popular first book is:

A lot depends on which language is going to be helpful in your computational physics class: you should find out which language they'll expect you to work in.

brudgers 5 days ago 0 replies      
My advice, start with javascript:

1. Learning C-like syntax provides a basis for reading a lot of other code.

2. Javascript examples can be seen on any webpage simply by switching to developer mode.

3. The javascript console allows experimenting with code while you read about programming on a webpage without leaving your browser.

4. It is perhaps the most widely used programming language currently.

5. Even if you are not interested in the DOM and webpages, there are still interesting exercises you can do in Javascript - I recommend project euler.

franze 6 days ago 0 replies      
yesterday i showed my 12 year old kid (who, to my disappointment is more interested in sport, hip hop dance lessons, music (tuba) and girls then in code) http://processing.org/ - together we managed to write a drawing program with a game component in about 2 hours (he typed....) even though the language is in no way perfect or even pretty he finally "got" it.

so before starting with a small project, try to implement a one person tron / snake game in processing - it helps you to start "codethink".

after that i would recommend reading a shitload of books. if you are into mobile apps, try http://ofps.oreilly.com/titles/9780596805784/ it's basically a tutorial for making a simple web app in HTML, css, js with no prior knowledge required.

bigwally 6 days ago 0 replies      
There is plenty of good material on where to start with programming. Most of the links other people have provided here are very good.

A fairly good resource is Google Code University;

In particular you may want to start with Python basics;

ignifero 6 days ago 0 replies      
Dude, coding is alot easier than physics. Stop procrastinating on HN, get a Linux machine and start your first project. If you want to do web stuff, learn PHP, otherwise use python. For your project you would need a library to extract text from word documents and something like curl to query google.
akulbe 6 days ago 0 replies      
By coding.

That may come across like a smart-ass answer, but it's not. I'm in the same boat, and I'm learning the same way. I've got a Mac dev environment, and Linux dev environment. I'm using a book by Stephen Kochan, and another by Dave Mark.

We're surrounded by a plethora of materials to help us learn.

Just do it! Pick one up and read, and write some code. Stumble through. You will make mistakes.

See emilepetrone and @housefed for a good example of this. He posts on here all the time. He's only been coding for a year, and has a functional website.

cipherpunk 6 days ago 0 replies      
Grab yourself a copy of Racket (http://racket-lang.org) [also, the quickstart guide at http://docs.racket-lang.org/quick/index.html might be useful], the How to Design Programs textbook (http://htdp.org/2003-09-26/Book/), and most importantly, set aside some solid blocks of time to dive in. You will learn most by doing, and through doing you will gain understanding.
waynecolvin 6 days ago 0 replies      
Python should be a reasonable first language but you might have need for others later.
Use a simpler editor at first so you can concentrate on coding, not working the editor itself. The editor should be able to show line numbers so when your program reports errors on a line number you can find it. Syntax highlighting is a plus.
Code most everyday (take some breaks) but please think your problem through before committing to a solution! Be sure to read code from others to pick up tips/style. Work through some books or something.
You don't have to be a top-notch expert all at once. I think the Perl community says it's okay to just use the parts of the language you understand until you learn more! (However becoming fluent in gritty details will make things smoother when you don't need to look up mechanics as often. A musician needs to know their scales.) Try rewriting old projects when you get better.
That implies saving your work somehow.
Be sure to learn how to create modular libraries and to use libraries written by others! You can't put everything into one source file unless it's something simple and there's useful functionality to be found.
podopie 6 days ago 0 replies      
The best advice I can give you is to write as much as you can before you start coding. Putting a program or app together is 60% critical thinking, 20% writing, and 20% error management. If you've already got some ideas, try to break them down as much as possible.

As for specific languages to learn: startups in particular seem to love Ruby, but honestly, they all work the same way, fundamentally. I crashed through the basics of Ruby in a week, started learning JavaScript, and stopped shortly after realizing that the majority of it was the same code just written differently.

++ to keeping a journal. It keeps you in check, because even though you say will will devote so much time a week to it, you won't. I had to start setting personal goals on a daily basis. That drive alone is helping. Keeping a blog is great for peer support too. I don't get many comments on mine, but it definitely feels good when someone stops by to say, "Hey, this is cool stuff."

Hope that helps, and good luck!

ISeemToBeAVerb 6 days ago 0 replies      
I'm new to coding as well, but so far what I've gathered is that WHAT language you learn is less important than actually sitting down and getting dirty with code.

When I was trying to decide what to learn I narrowed the search down by just heading to the book store and flipping through some books on various languages. Ultimately, I ended up with a choice between Ruby and Python. I couldn't tell what the major differences were, so I just decided to pick Ruby. I figured that there was no real way of recognizing the nuances of ANY language until I actually had one under my belt and could better understand what makes each one tick.

I'm fully aware that this was a somewhat cavalier method of choosing the pal I'd be spending the majority of my waking hours with, but I think that starting anywhere is better than stalling because you can't decide.

So far I'm satisfied with my choice. I think I would have been satisfied with Python too.

theprotagonist 6 days ago 1 reply      
Lots of informative advice, I am very grateful to all of you. Thanks again. I think I will go with Python or Ruby after I check out the resources in the links that were posted. I plan to build my knowledge but as a person with a science background, I'm happiest when I'm solving a problem so I definitively see the merit in working on the project whist learning.

I don't think I have any further questions - I got loads more helpful advice than I thought I would ever get and again, I'm very grateful. The only couple things I feel are worth mentioning is that I am using a Mac and I have actually written a couple subroutine packages for HPC in FORTRAN but they are nothing too special as FORTRAN syntax is very simplistic.

georgieporgie 6 days ago 0 replies      
interesting problems to solve which increase in order of difficulty.

Project Euler. Though the difficulty tends to sort of spike all over.

trbecker 6 days ago 0 replies      
I was about to suggest you to "Learn You A Haskell For Great Good" :) Way too complicated. Listen to the other guys that don't suggest Haskell. If you then discover your calling in programming, go back and learn Haskell at your own peril.
Also try to stay away from LISP in your first lessons, and its ugliest kid, emacs. Use a simpler text editor that won't twist your fingers. gedit would be my suggestion.
mikeburrelljr 6 days ago 0 replies      
Rails for Zombies, of course!


Nom nom nom...

dfrankow 6 days ago 1 reply      
Whatever language you choose, consider trying a few problems from http://projecteuler.net. The problems are small enough that you can feel the reward of getting the right answer. I used Python.

As an experienced programmer with math background using a language I knew, a problem took me 15-60 minutes. Not knowing a language or how to program, it might take several hours, but not weeks.

aangjie 6 days ago 0 replies      
I really won't add too many links to all the comments here. But Given you mention physics and some RA experience, i will say Haskell may not be as hard as a few others think. (i.e. If my idea of what it takes to do complete physics and/or chemistry graduation). I think in the end, you may have to spend an hour or two for each of the links before taking a call on which you prefer.

- Eeks, that looks eerily like common sense :-)

creativeone 6 days ago 0 replies      
I am also in your shoes, and have started with http://learnpythonthehardway.org/ It seems to be one of the best ways to learn Python.
known 5 days ago 0 replies      
You need to learn about


and I believe http://perldoc.perl.org/index-tutorials.html is easy to learn for a novice

DomainNoob 6 days ago 0 replies      
I would also mention the Lynda.com videos. I'm running one of their Perl tutorials now working in Eclipse and finally seem to be getting somewhere.
And I really wish someone would put together an intro to programming series using Yahoo Pipes as a platform.
ZaneClaes 5 days ago 0 replies      
I wrote an article on this subject a few weeks back. It is not a step-by-step "how to write code," but rather a good way to understand the approach to self-teaching yourself computer programming.
matsimo 6 days ago 0 replies      
I don't mean to hijack the thread, but I'm curious; how did you go about receiving seed funding (and enough to hire people) for a tech/web startup while not having strong coding abilities yourself?

Did you hire people with the intent of having them build a demo for you?

And for other readers... Do either of these things happen much? Does it work?

Why don't rich people do more awesome things?
110 points by peteforde  8 days ago   95 comments top 32
pg 8 days ago 5 replies      
I can't afford to. If I could afford to, I would have quietly done it. But real estate in Palo Alto is very expensive, and most of YC's investments are still illiquid. (Not that I have 5-8% in any case. We assume we get diluted down to 2% by exit, and I am one of several partners in YC.)
thaumaturgy 8 days ago  replies      
I'm not about to second-guess PG, or any other single person. Maybe the capital they have isn't liquid enough; maybe they have other obligations; who knows?

And it's worth pointing out that doing more awesome things doesn't require wealth. Why don't more poor people clean up their neighborhoods? Why don't more startups choose to solve problems that would really improve peoples' lives?

We should never point our fingers at anyone else before looking hard at ourselves.

All that said, the accumulation of wealth tends to require a mindset change that is not conducive to working on awesome things unless there's a reasonable chance of those awesome things making even more money, in the future if not immediately.

For one example: I recently moved in to a house, which I'm renting, which was a real dump and eyesore in its neighborhood. It was located next door to a nice Victorian bed & breakfast; most of the places in the neighborhood were a lot better by comparison. In the last 7 months I've completely transformed the yards, repaired or replaced plumbing, put interior walls into the garage -- all out of my own pocket -- with the help of my friend & my girlfriend. We often get comments from others in the neighborhood; those with more money tend to ask us if we're planning to buy it, and those with less money tend to just express appreciation that we're doing it.

So there ya go.

AretNCarlsen 8 days ago 0 replies      
Paul Allen single-handedly funded development of the private spacecraft SpaceShipOne.[1][2]

He apparently began funding that spaceship, to the tune of tens of millions of dollars, around 2001, several YEARS before he told anybody that he was doing so (in 2004). By definition, rich people who are doing things for non-showoff-y reasons are not necessarily showing off about it.

[1]: http://en.wikipedia.org/wiki/Paul_Allen#Assets
[2]: http://en.wikipedia.org/wiki/SpaceShipOne#Development_and_wi...

nostrademons 8 days ago 3 replies      
Random off-topic response to one of your throwaway comments:

"Buying a car or a house in cash is showoff-y"

When did buying a car in cash become showoff-y? My parents and grandparents always paid cash for their cars, because it's a depreciating asset and taking out a loan for it is just throwing money away. I didn't buy a car until I could afford it in cash - and when I did, that's when I realized this wasn't terribly typical, as the dealership kinda looked at me funny and lamented that they couldn't give me any further discounts (possibly because they were already selling it to me for like $400 under dealer price).

dedward 8 days ago 1 reply      
Well, most of the rich people I know donate to all kinds of actual charities, and they also, you know, create lots of JOBS - that's why they're rich. Creating lots of jobs is pretty awesome.
They also often work quite hard at ensuring those jobs stay where they are.

The interweb forums all make the same mistake of lumping in "Rich people" into a single category.

Do Directors and C-level executives of large corporations make possibly immoral, evil decisions? Seems like it. They're often rich people, sometimes because of the company they are working on, sometimes that's only part of it. Or none of it.

Are there dynastic families full of rich people with some useless people who don't really contribute anything of value to humanity and just kind of hang out and party their entire lives until they die of a drug overdose or cancer with no real friends? Sure.

Money and wealth are not what the average person who considers themselves "not rich" think they are.

I'm not rich by these VC standards, but most of the people in my country of residence would consider me rich - compared to them, I am, in their view. Not in mine.

So - at christmas I go out and buy toys for 300 poor kids. None of that money goes to fund anyone's paycheck - I wrap the stuff up in paper, write some notes, and load it onto the truck. It goes to be distributed. Is that an awesome thing? It sure is for those kids and their families every christmas.

What you do with what you have for reasons other than the accumulation of wealth is up to each of us individually. And the most valuable thing many people have to offer? Time.

blhack 8 days ago 1 reply      
Well, how many awesome things do you typically do? Awesome things don't necessarily have to involve large amounts of money. Ever stopped on the side of the rode to help somebody? Given somebody a ride across town when they were lost?

If you want to see more wealthy people do more awesome things, lead by example. Tomorrow go find somebody that needs help, and help them.

damoncali 8 days ago 0 replies      
Usually, when this sort of thing happens, it's because the rent was artificially low due to a long-term lease without appropriate escalations. In other words, the tenant is getting a hell of deal, and then a lease rolls over permitting the landlord to again charge market rent. Not sure if that's what happened here. If not, then it was likely something similar. Real estate is a remarkably transparent market.

When you look it that way, it seems a little less "awesome".
Subsidizing a losing business isn't the sort of activity that makes one rich.

jseliger 8 days ago 0 replies      
I'm guessing that most (rich) people do one or maybe two "awesome things," since doing one thing to the degree of "awesome" is really, really hard to the point of almost everything else being a distraction.
uuilly 8 days ago 0 replies      
Rich people do awesome things all the time. Most investment vehicles are essentially loans to businesses to help them grow. As long as the money is not in the mattress, it's probably doing something awesome for whatever business or person is indirectly borrowing it.
mkelly 8 days ago 0 replies      
Once you have money, you have a lot more to lose, and become more conservative. Broke college students will throw their weight around as much as they can, but once they're rich, they're afraid (consciously or not) of losing it.

That's my impression, anyway. (Based on my own experiences, graduating and beginning to earn lots of money. I've had to fight the urge to become quite conservative.)

vaksel 8 days ago 0 replies      
there are plenty of rich people who do awesome things...i.e. Bill Gates.

But there are also plenty of rich people who only think of themselves and growing their bank accounts.

It comes down to a person...if you'd care about others when you are poor, you'd continue caring about others when you have the means to help.

sliverstorm 8 days ago 1 reply      
It is difficult to be rich and do more awesome things, at least of the type that requires a lot of cash. There's only two ways to grow your wealth- make a lot of money, or don't spend any money- and you need to practice both ways heavily to actually be rich.

Ergo, there are potentially plenty of people who do awesome things with lots of cash- but they are not rich anymore, so "rich people don't do awesome things".

idanb 8 days ago 1 reply      
Truly amazing things take a while to do. I think most people will attest to doing a bunch of experiments to test the waters before they dip into doing something crazy and hard for the long run.

Even that simple example of buying the diner so they add hash browns to the menu is a good example of that. Buying a building, not to mention one already occupied, is not exactly a 5 minute transaction. I think it just comes down to the fact that rich people tend to understand the relationships between time, money and potential returns.

ctdonath 8 days ago 1 reply      
What makes you think they don't? and that you should know when they do?

There is a whole lot of well financed good going on under the radar.

printerjam 8 days ago 0 replies      
I'm not going to defend PG, specifically, but you've got to realize that being a building owner/manager is a specific skill set. It takes a lot of time, too. Why would anyone who isn't passionate about commercial real estate put his money into it? It's kinda the principle of sticking to what one knows and is passionate about running/operating/building. In some way, Paul IS doing something awesome by putting his money where his mouth is AND mentoring entrepreneurs.
quattrofan 7 days ago 0 replies      
I think there are a couple of things here:

- a lot of these people ARE doing a lot of these things, but people with money who are in the public eye get deluged with requests for help. Can you imagine how after a while you might get "giving" fatigue?
- for a lot of rich people, they are never rich enough. There was a great study recently about this (I'll try and dig it up and post here) about at every level they thought they needed a bit more to be truly secure. So my point is to them giving away money even to a worthy cause reduces their feeling of security.

In the last few years I have worked with a very wealthy hedge-fund manager (who is a philanthropist) and met a billionaire and I can assure you that these thoughts do go through their minds.

kevin_morrill 8 days ago 0 replies      
1) Merely possessing money does not mean you can necessarily deploy it efficiently to solve a problem. It requires, among other things, skilled human time and energy--a rare resource.

2) In an economy where trade is voluntary, rich people have already done awesome things in the first place to become wealthy. They offered a product, service or some kind of value of enough magnitude to get a lot of money from people.

joshu 8 days ago 0 replies      
It seems to me that landlords trying to maximize rents in community centers runs counter to the goal of building a vitalm thriving community. I always wanted to design a town.

Btw I bet that building is $5-10m -at least-. If the landlord even wanted to sell it.

B_ 8 days ago 1 reply      
chromic 8 days ago 0 replies      
There's value given to a cause if someone important endorses it. Sure, a wealthy individual can write a check and cover the entire amount with ease, but why should he/she? You won't be rich for long if you hand out money every time you're asked. In the end, even the most generous wealthy individuals have to prioritize:

  -"I support X so much that I'll donate $100k."
-"I like what Y is doing, I'll associate my name with it."
-"I don't care for Z much/Z might be a scam, ignore them."

And sometimes the money will go toward a new house or a car. It's their money, and I assure you it's a lot harder to see from their perspective than you think.

astrofinch 8 days ago 0 replies      
I agree, and if anyone figures out how to persuade rich people to do this, I'd really like to know how. My goal in life is to become rich in order to do specific awesome things, but convincing rich people to do those awesome things seems like it could bring a much higher return on investment if I could pull it off.
wccrawford 7 days ago 0 replies      
Rich people don't get rich by throwing money around. They do it with careful consideration and future planning.
teyc 8 days ago 0 replies      
The purpose of working hard to become wealthy is to earn some measure of freedom to do things they'd enjoy doing. Owning real estate may not necessarily make sense. It can be a rather time consuming affair, which drains the wealthy of their most precious asset.

It is the same with start ups. You can't throw money at things and hope they work out. That'd be called government. It takes real effort, and there's a physical limit to the number of "office hours" a wealthy entrepreneur is willing to run before it starts to sound like work.

MenaMena123 8 days ago 0 replies      
This may not apply to PG or alot of others, but you would be surprised how much money people don't really have. I knew someone that I thought had cash. In reality he was broke and had all his money tied up in deals or stocks etc.

At the end of the day he lost it all and had no money. Even when you have a percent of something, doesn't mean you have money to spend, if the cash is not in your bank account you can't buy.

creativeone 8 days ago 0 replies      
Spending 25k is a sure thing, and you have insurance in case of an accident or loss.
25k into a startup that can't raise vc or angel money is very risky.

If you can make the individuals popular, let's say by getting a frontpage article of them, or naming your startup after them, the investor would get something besides a ling shot to make money. Don't forget that 9/10 startups don't make it.

swaits 8 days ago 1 reply      
Most rich people probably got rich making good investments, not charity real estate ventures.
fnazeeri 8 days ago 0 replies      
Does anyone have data on whether the "poor" or the "rich" are better entrepreneurs?
incorrigible 8 days ago 0 replies      
Paul Graham himself? Because he can't afford it.
r22 8 days ago 0 replies      
A lot of young wealthy people I know don't do awesome things, same for heirs to fortunes. They just spend more money, maybe give some to charity but overall they aren't doing things that help society or their local community in significant ways. Oh but they can spend $3K on bottle service, no problem there.
bwsd 7 days ago 0 replies      
I feel the same way every time I see the advertisement for "The Film Foundation" before watching a movie on DVD.
jjinchicago 8 days ago 0 replies      
Arguably a generalization of the title question to span times beyond the present ("do") is more interesting: Rockefellers did and still do immeasurable philanthropy.
vdawesome 8 days ago 1 reply      
This guy got rich investing small amts in young kids. he is a douche. douches are not awesome.
His stupid post just proves his douchiness
Ask HN: Can anyone recommend a logo designer?
2 points by Undergrads  1 day ago   7 comments top 7
bmelton 12 hours ago 0 replies      
Jeff McWeeney : http://McWeen.com - Very down to earth guy, very affordable, a very impressive portfolio. An expert at listening to the customer.
moonlighter 1 day ago 0 replies      
Give http://www.crowdspring.com/how-it-works/ a shot. You can name your own price, describe what you need and then watch designers spring into action. Works great.
HackrNwsDesignr 23 hours ago 0 replies      
I design mascots and logos, shoot me an email at the email in my profile.
orky56 23 hours ago 0 replies      
99designs is worth a shot.
awaage 1 day ago 0 replies      
I've used logoloft before - pretty good for not too much $, in my opinion
hy 23 hours ago 0 replies      
A Mountain View & Tokyo based design firm (http://www.goood.jp/)
These guys are really cool and affordable.
Ask HN: What's with the top black border on HN today?
9 points by ignifero  2 days ago   4 comments top 3
plantain 2 days ago 0 replies      
Heh. I thought it was a jab at Google's UI redesign with a black bar at the top.

(Or is that in memory of Robert Morris too?)

xorglorb 2 days ago 1 reply      
I believe that it is in memory of Robert Morris.
Tell HN: How to get blocked by HN
17 points by efsavage  4 days ago   1 comment top
bmelton 2 days ago 0 replies      
That sounds more like being throttled than being banned.
ASK PG: Why is it that you've ceased writing essays?
11 points by chunky1994  3 days ago   5 comments top 4
pg 3 days ago 1 reply      
YC takes up all my attention lately. But I don't want to stop writing, so I'm going to have to come up with ways to make it take up less.
lacker 3 days ago 0 replies      
Y Combinator has what, three times the companies it did two years ago? I am not surprised if PG is insanely busy.
bfe 3 days ago 0 replies      
Who says Arc isn't among the Essais?
sim0n 3 days ago 0 replies      
He's pretty busy with YC these days.
Ask HN: What is the average out of college base salary for software engineers?
3 points by antimatter  2 days ago   8 comments top 4
tom_b 1 day ago 0 replies      
This is always a tough question from corporations. Best is to know a little about the range the specific company is offering for entry level jobs. You'll not see much variation on that.

If you have to come up with a number and justify it, you can always quote from the Occupational Outlook Handbook, 2010-11 Edition [1].

[1] http://www.bls.gov/oco/ocos303.htm

epicureanideal 2 days ago 1 reply      
Typical advice in salary negotiation books is also to not be the first to state a number. Try putting in "competitive * " or something like that, and then later put * based on my skills and experience, or at least that's their advice.
epicureanideal 2 days ago 1 reply      
I think it would depend on whether your college education included a significant number of courses that would help you perform well in web application development. For example, I know of some programs where only 1/6 or so of the material is somewhat related to web application development (including the English classes and otherwise being generous). Also, do you have any relevant experience or projects?
johnsocs 1 day ago 1 reply      
My Advice: A first job just out of school if heading to an established company your going to fall into their base cookie cutter template so whatever you put down is not really going to matter much, infact you could leave it blank and when HR asks you say 'I'm a n00b'

Salary negotiations don't really come into place until you have a few years under your belt, acquired some domain knowledge and have become seasoned, that's when the real fun starts.

If you really feel 'I must put something down' then ask a friend with a similar background who has already gotten an offer or already in the workforce what to expect based on the area you are looking in. Lastly, if moving to another state, city etc.. checkout how salary conversions for the areas.

What it really boils down to is you have to do your homework.....

Ask HN: Motivation Anyone?
7 points by chunky1994  3 days ago   8 comments top 6
bhousel 3 days ago 1 reply      
One of the biggest challenges with our school system is that while you're immersed in it, it becomes difficult to imagine anything outside of that experience. You can't get a "big picture" view of your life and how your unique talents and interests can fit into the bigger world -- high school is your world.

You will eventually graduate and move on, and realize that most of the stuff that you did in high school was really not all that significant, in the big picture. Your lack of motivation is probably because you're starting to realize this as your time in school is almost finished and you (and your peers) begin to ask questions like "What comes next?" and "Why can't I get there already?"

Luckily the answers to these questions don't really matter all that much either. People take all kinds of paths through life, and there is no right next step, or important thing to work on. You can be forgiven for thinking this way, because school trains you to think this way by putting you into grades and preparing a curriculum that advances you forward towards an arbitrary finish line "graduation".

So what should you do? Do whatever interests you, as this is where your motivation will come from. If you're not motivated to code, don't code. Take a part time job, or exercise, or socialize, or take up a new hobby, or volunteer. All of these things will make you a better person (and a better coder). You'll meet people who are not coders, and it might remind you why you like programming so much - or you might find something that you like better.

However, be careful with the "Do whatever interests you" philosophy. You probably do have some standards that you want to hold yourself to, and you want to keep improving yourself, and you want to be a mostly free person (have money). So you probably shouldn't just sit around and smoke pot and play playstation because it interests you.

I believe that "adulthood" begins when a person consciously decides to do things because they are difficult to do and no longer decides to do things because they are easy to do.

edkennedy 3 days ago 0 replies      
I dropped out of high school when I faced a slump like that. 10 years later, I'm still stymied by my lack of diploma. I've found ways around it, and I still get hired. However, from my experience, you must finish high school. I also had problems in grade 10, puberty combined with drugs and a general discontent at what I saw on the news led to a "tune in, turn on, drop out". I don't recommend this path. You have a long life ahead of you and the improvements you make in your life now will be worth much more years down the road.

There are a few things I do these days to increase my will-power. Working out at gym does wonders for my endorphins and dopamine, the neuro transmitters that get shit done. reddit.com/r/fitness has a great FAQ on how to get started with that. Eating healthy, and ensuring you get all the nutrients your body needs to grow and adapt. Eat lots of eggs, fish, fish oil, anything with choline in it. Get lots of good sleep (which should not be hard). You need more sleep at that age, 10 hours is good.

The key thing is to notice the disconnect between mind and body, and work on improving your body mechanics so that it is aligned with your minds purpose. A particular problem I struggled with for most of my post teenage years was what I would call "neophilia" an obsession with something new. I moved from thing to thing never being satisfied. Satisfaction from hard work has to be imprinted through experience. The sense of accomplishment you get from achieving your goals (you have some right?) is something you want to nurture.

bricestacey 3 days ago 0 replies      
It sounds like you have a very unhealthy attitude toward interpersonal relationships. I'd suggest you dwell on the issue some more and embrace any changes that may be happening.

When I was in high school, I started paying more attention to others around that time to the detriment of some of my own interests. It's not the end of the world so long as you never forget who you are.

maxdemarzi 3 days ago 0 replies      
Your first burnout http://en.wikipedia.org/wiki/Burnout_(psychology) . Time to take a vacation, let loose and release whatever is stressing you out. Go meet interesting people and connect.
ttran08 3 days ago 0 replies      
Go and give money to a couple homeless people (choose wisely). This will help you in several ways. It's good karma, it gives you a sense of purpose and it will remind you of how lucky you are to have food and shelter. ;)

After that, you should go to a coffee shop and work or do some planning if you need to. You're so lucky you can code. I'm barely learning html and css. sigh

dstein 3 days ago 0 replies      
You're not in the real world yet, and coding an iphone app for fun and you're whining about being burned out? C'mon.
Rate our startup: Tribesports - a social network for sportspeople
11 points by andrewmcdonough  4 days ago   14 comments top 6
Peroni 4 days ago 1 reply      
Hey Andrew. I enjoyed the talk (I was the big Irish guy who asked about people potentially gaming the leaderboard).

The site looks great and the timing is perfect as I am about to start a pretty significant fitness program in order to loose weight so I'll be relying on you guys for motivation!

athst 4 days ago 1 reply      
Is there a reason you call them "sports people" instead of "athletes?" At first I thought it was for sports fans, but after poking around the site, only then did I realize it was more for people who were actually interested in doing sports together. Sort of like Meetup focused on sports.

Along with that, would it make sense to have also groups tied to specific locales, rather than just topics?

imp 4 days ago 0 replies      
I was skeptical at first, but this looks really cool. I just signed up and I'm excited to use it. I had used DailyBurn for a while, but the challenges and social aspects were disappointing. I think you've really nailed those things already. Nice job!
ColinWright 4 days ago 1 reply      
This is definitely an "otherwise" - why didn't you put in a clickable link?

Like this: http://tribesports.com

dadads 4 days ago 1 reply      
That's a pretty nice site, and I would certainly use it if were not for me having my passion somewhere else.

If you don't mind, may I ask how you got your initial users?

dsawler 4 days ago 1 reply      
Interesting. You should also post this on reddit.com/r/fitness.
Google's CDN outage - thanks HN for the help
4 points by bane  2 days ago   discuss
Ask HN: Payroll Tax Hacks
12 points by loschorts  5 days ago   14 comments top 6
triviatise 4 days ago 1 reply      
one large payment is not cheaper than periodic payments. You can use company money for non business expenses but the IRS may catch up to you at some point. The penalties are not that stiff, but I wouldnt do it. It would be better to put your effort into building your business.

Here is one (IANAL and you need one to do this - if you need one I can recommend one)

Form an LP, make your C corp a general partner in the LP, you will be officers in the C corp. You will be limited partners in the LP. This gives you liability protection. The LP becomes your operating entity. Money flows into the LP from clients. It turns out that LP's can distribute money to limited partners without paying social security tax. There is no minimum salary required to do this. Your actual employees can be employees of the C corp as usual.

You will save around 15K/year per person who does this.

If you want to get money out completely tax free, look up a SEP IRA. The SEP ira lets you contribute 25% of your income up to 49K tax free. But it must be available for all employees. The company can contribute up to 50%.

Meals are only 50% deductible and it probably isnt worth doing, but if you guys go to dinner and talk business then your should. But if you put your cars into an LLC you can have your C corp pay the LLC and then deduct all car related expenses (insurance, gas, maintenance, interest). You can do the same with medical related expenses. IANAL - get a lawyer who understands how to do this.

veyron 5 days ago 0 replies      
Note: If it's a C corp you don't have to take salary (iirc only S corps have to declare at least one person taking salary) and you can keep money in the firm (LLCs and LPs aren't structured to do this well), so you don't need to take any money out that you don't need personally.

As a general rule, the less money you need to pay yourself, the better.

1) If you turned profit in the same year you made the investment, you can return almost the entire original investment to yourselves with no tax penalty, derisking your individual stakes

2) You can pay dividends which are taxed at a lower rate (you dont have to pay FICA)

3) You can institute a buyback (so that the company buys back outstanding shares at a higher valuation). This is a little sticky because you can't arbitrarily inflate the valuation (the technical term is "arms-length", meaning that it should be a fair value that disinterested parties could find acceptable). The transaction would be seen as capital gains, and you have the flexibility of controlling timing and amounts.

4) Almost everything you can think of is a business expense:

- Food (of course)

- Cars (oh god there are a ton of deductions related to business vehicles and vehicles used whilst commuting)

- Parties (You have to hold shareholder meetings at one point in time ...)

Though I imagine this is better discussed over email.

maxbrown 5 days ago 1 reply      
IANAL or a finance guy so forgive me for not knowing the specifics of this, but can't you issue dividends that are taxed significantly lower than payroll which requires income tax? Or is this only capital gains?
gallerytungsten 5 days ago 1 reply      
Hire a payroll service. Find one that guarantees they will do all the filings, on time. You write one check and don't have to do the paperwork.
newman314 4 days ago 0 replies      
What if it's for a single person LLC? I'm interested in payroll hacks for that too.
solsenNet 5 days ago 3 replies      
most companies this size pay the 3 individuals on 1099, ie independent consultants. no payroll tax on 1099 (at the company level)
Show HN: My first app, force directed mind mapping/notes for iPad
3 points by mwill  2 days ago   discuss
Ask HN: What do you do while code is compiling?
4 points by orky56  3 days ago   15 comments top 13
trafficlight 3 days ago 0 replies      
I usually sword fight in the hallway with coworkers while riding on office chairs.
fleitz 3 days ago 0 replies      
What language do you use? / What kind of project are you working on? embedded, kernel, iphone, web, etc?

There are usually tricks to speed up your compile process, copy the code to a RAM drive before compiling, etc, also try using testing and create a small program that monitors your src dir and will recompile and test automatically. That way as soon as you save it's automatically recompiling and testing, then you just look over at the terminal window and see the results.

Also, split your code into libraries so that only a single lib needs to be recompiled, etc.

The drive to speed up iterations usually pays off in spades and you end up doing stuff you really should have been doing anyway, like writing tests, modularizing code, etc.

If it absolutely can't be sped up, document your code while its compiling, Doxygen, etc.

cperciva 3 days ago 0 replies      
Compiling code takes an annoying amount of time.

Really? Unless I'm doing a complete build, I never wait more than a few seconds for a build to complete.

What build system are you using?

veyron 3 days ago 0 replies      
You can be developing other tools.

My builds oftentimes take a long time because there are a lot of cross-language stuff (libraries include some boost stuff, which always takes a long time to process) and cross-compiling (e.g. targeting tools for osx and for linux -- why they changed the syscall numbers is beyond me)

You probably have a laundry list of scripts that should exist (e.g. launch scripts, cron jobs, etc) but are low-priority. It's easy to work a little bit on a script when building.

LarryA 3 days ago 0 replies      
Think of errors I had probably missed before I started compilation. Just about any long process I think of the stuff I forgot to check before I initiated it. :-D

Other than that I get up, take a break, I deserve it.

wladh 3 days ago 0 replies      
The incremental builds are taking about 5 minutes, which is not really long enough for me to do any big work, but I usually look if there are any new issues in the queue, look at code reviews (not the ones I'm reviewing, but what others reviewed) or try to do code review for smaller chunks of code.
Detrus 3 days ago 0 replies      
try out Golang
urorbit 3 days ago 1 reply      
looking from a window , you wll see a life
OnesimusUnbound 2 days ago 0 replies      
research more on how to make the build process efficient :-)
pktm 3 days ago 0 replies      
Usually, read another post on HN.
damoncali 3 days ago 0 replies      
Write some more ruby.
chosenone1907 3 days ago 0 replies      
pray and wish it compiles without err
whiterabbit 3 days ago 1 reply      
       cached 3 July 2011 09:05:01 GMT