hacker news with inline top comments    .. more ..    6 Mar 2011 Ask
home   ask   best   8 years ago   
Ask HN: Jobs & Startups in Seattle (urgent'ish)
16 points by singleserving1 1 hour ago   6 comments top 6
1 point by ronnier 0 minutes ago 0 replies      
Email me. I'm at amazon.
4 points by anchoivy 55 minutes ago 0 replies      
Seattle 2.0 is pretty involved in the Seattle startup scene. You can check out their job board here at: http://www.seattle20.com/jobs/

Also, I know some TechStars Seattle companies are hiring. These jobs aren't listed on a particular website, but you can check out all the companies that launched in Seattle here: http://techcrunch.com/2010/11/11/techstars-launches-ten-new-... If there is a company you're interested in, I can connect you to the founders as I am friends with alot of those TechStars folks.

TechFlash(http://techflash.com) is a good source that blogs about Seattle tech startups. You can keep an eye on that blog to see which companies received funding. I know BigTip.com just raised $500,000 and they are looking for a "hardcore web dev person".

Founders Co-op is an early stage investment group/incubator. Andy Sack(@andysack), the managing director of Founders Co-op and TechStars Seattle, has a list of his portfolio companies here http://founderscoop.com/portfolio.php. Some of them are hiring as well. You want to follow Andy Sack if you want to get on the ball with the Seattle startup scene. his blog is http://asack.typepad.com.

Hope any of this helps. I'll get back to you if I think of some more.

1 point by BarkMore 56 minutes ago 0 replies      
You mentioned Amazon. Some other large companies are: Google (Fremont, Kirkland), Microsoft (Redmond, Bellevue), Facebook (near the Market).
1 point by aaronbrethorst 1 hour ago 0 replies      
Joining the Seattle Tech Startups mailing list can't hurt. You'll meet some interesting folks on there, and should be able to get some leads on jobs.
1 point by christiancoomer 37 minutes ago 0 replies      
If you're willing to learn Rails, Whitepages.com is in Seattle and is hiring engineers. I used to work there and left only to pursue my own passions, but there's a great team there and it was a fun job.


1 point by tarr11 57 minutes ago 0 replies      
+1 on the STS list

FWIW - I did this exact thing in 2004 - I am one of the founders of PayScale (www.payscale.com). We (wife+3-month-old) moved from NYC to Seattle after we got funded. The 3 month old is now 6.5 and PayScale is doing pretty well :)

There is a pretty active startup community here. http://www.seattle20.com/ is a good place to start.

There are a lot of startup events going on in Seattle. You can view http://www.seattletechcalendar.com/ to see some of them.

Ask HN: Small market product vs Big market product, Which should we attack?
7 points by JonathanWCurd 2 hours ago   2 comments top
1 point by hajrice 45 minutes ago 1 reply      
>> On one hand we have a product idea that definitely solves a problem for a small industry. We have spoken with 10 or so players in this industry and they would all be willing to pay for our software (they are hungry for a solution). This would be a very stable income producing product / company that could go on for years innovating in this industry but its growth potential would be somewhat capped. I can see it getting to 5+ million a year in revenue with 60% profit margins but then it becomes much more difficult to grow. Getting to 10 million would be a short term ceiling (Pending some other added revenue sources).

I'd go with that one. Build the MVP(my rule of thumb is, if you cant get it out the door and into customers hands within 90days, move on) and charge them. You'll soon realize that your assumptions were right/wrong about that industry.

That being said, I'd always go for B2B rather than B2C.

Ask HN: Is anyone interested in gitapps.com?
8 points by tav 5 hours ago   discuss
Ask HN: I'm an unemployed programmer in SF that will work for minimum wage
117 points by unemployedinSF 19 hours ago   124 comments top 45
80 points by tansey 18 hours ago 5 replies      
I can't help but feel like HN is getting trolled here. There is simply no way someone who has done a startup and has experience in all the listed technologies cannot find any job in the Bay Area. Spend a couple days at the Hacker Dojo in Mountain View or go to an event like the 500startups one at House of Air last month and you'll meet dozens of people looking for talent.

I'm not just being cynical here-- I have lived in Palo Alto for just under 6 weeks and my RoR skills are subpar at best. Nevertheless I've been offered multiple jobs, co-founder opportunities, etc. And I'm not even that likable. If you're a nice guy, the opportunities are endless!

That being said, on the off chance that this isn't a troll and you don't have any luck with the replies here that are offering assistance: contact me (see my profile for info) and I'll throw some contracting work your way.

34 points by DilipJ 18 hours ago 4 replies      
ouch. this is why it's dangerous to read a pg essay on entrepreneurship when you're in college. He makes it look easy, and some kids just follow their dreams without building a support base first. Remember that for every guy like pg, there are 9 others just like him who went bankrupt. Coming out of college, you should always try to find a stable, legit job and try to build up a capital base. Get paid by someone else and develop a level of professional competency, build up your credit score and take out a loan and do something on the side, and only go solo once who you have some stable revenue. This is the way to do it, unless you come from money or are lucky.

So here's my steps to you for changing things around:

1) Completely revamp your resume, and to stop referring to yourself as unemployed. You were self-employed.

2) write down a list of all the competitors your startup had that are located nearby. Find out the phone numbers/emails to the higher ups in those companies through web searching.

3) phone or email those guys, and say that you are writing a freelance article about the industry. Say you want to interview them for their expertise (all guys love to have their ego's stroked: that's the way to get that introduction you want).

4) during the interview (preferably in person, or by phone), ask them some general questions about the industry, and mention that you had attempted to do a startup in the field but failed. Try to ask questions related to how their business succeeded, in order to compare and contrast with your own experiences. Ask them to give you advice on whether to pursue another startup in this field (even though you may have no intention of doing so) or look for a job in the industry.

Now at this point, it can go 1 of 2 ways. If you're lucky, the other person may see your interest for the field, and ask to see some of your work. If it's good, you will probably move to the top of the pile when a new hire is needed.
If that doesn't happen, then repeat as necessary with every other company.

That's a better bet than anything else out there, don't waste your time with the craigslist blackhole

31 points by Mz 19 hours ago 1 reply      
I was a homemaker for about 2 decades. And sick as hell while job hunting. It took a while but I eventually got a job. It started at about half the wage that GIS jobs I was applying for started at. It has nothing to do with anything I want to do or any of my background education.

A) If you haven't already, pick up "What color is your parachute?".

B) Work on your resume. It shouldn't say 'unemployed for 6 years'. Mine did not say "unemployed for about 2 decades". Mine listed my education and I told employers that I was a "homemaker and homeschooling mom going through a divorce".

C) Whatever your buggaboo, stop harping on it. Mine was my health. I talked incessantly about my health crisis because I felt I needed to be "up front" and because it was uppermost in my mind...yadda yadda. The very first interview where I did not mention my health issue was the job I got.

I applied to a large company and got a phone call "According to your resume, you qualify for the following three jobs: blah blah morning shift, blah blah evening shift, blah blah evening shift." I knew I was too sick to work morning shift. I replied 'Put me down for the two evening shift jobs.'. I went in for additional testing. Afterwards, I was told "You still qualify for both jobs. Which would you like?" I said "I have no clue what either of these jobs really entails. I've been a homemaker forever..." and we chatted a bit about it. I think a contributing factor to the decision was one of them started two weeks earlier than the other, and that was what I went with.

I still have that job. I feel underemployed and so forth. But it has allowed me to keep a roof over my head, work on my health issues, get through my divorce and start my life over. In the aggregate: It's all good.

Good luck with this.

15 points by zedshaw 13 hours ago 1 reply      
Well, I feel for you. Being unemployed sucks ass, especially when you have skills but can't seem to get a job. At the risk that this some very bizarre sort of dumb troll, I'll propose this:

If you ever want to meet up for lunch at Union Square, I meet with random programmers from the SOMA area all the time. You're welcome to show up and hang out with us. They probably all know of jobs and people hiring, or at a minimum can give you advice.

I'll probably do it the first week after PyCon, but feel free to contact me at my email (if you're smart, you'll figure it out as it's really not that hard to find out how to email Zed Shaw when he has a domain at ZedShaw.com).

15 points by ryanwaggoner 19 hours ago 2 replies      
Can you write code and actually get things done? Do you have examples of your work that look good? If so, get some freelance work. Charge $50 - 75 / hr and find work by responding to people posting Craigslist computer gigs.

If not, then find some way to survive for a couple months and build some simple projects. Like, really simple. Hell, just setup some wordpress sites with good-looking themes from Woothemes or Themeforest. Having 2 or 3 of those will satisfy 95% of people looking for really simple code-monkey work on CL. You won't get rich, but you can build up your list of clients in 6 months. Then you can either keep freelancing or roll that into a fulltime job ("I've been doing contract work for the last year...here are some example projects and client references.")

13 points by byrneseyeview 17 hours ago 0 replies      
You need to reframe this. You aren't an unemployed developer willing to work for minimum wage--you're a former self-employed developer looking for his next gig. As such, you're going to charge your usual rate of $75/hr, because you know that the fastest heuristic for "Is this guy worth it?" is "What do other people think he's worth?" and the fastest heuristic for that is "What is he comfortable charging?"

Of course, you're not interested in internships, or non-programming work. If you have to widen the net, you're giving people a great reason to reject you.

Start your negotiation from a position of strength, and you'll get somewhere. You're starting with surrender--don't be surprised if you lose.

As other people have said: post your Github. Post a link to anything you can about your startup. Start acting like a valuable programmer, so people will treat you like one.

(If it's any comfort, I've been in your situation in another industry. When I started doing what I've written above, rather than what you've written, my life improved dramatically.)

14 points by russell 19 hours ago 3 replies      
Forget free. It's illegal, even fro interns, where you produce value for the company. I would consider it unethical for me to hire you for minimum wage, cheap is OK. You are in an oddball situation, so HR types wont pass your resume on. Forget BofA. Startups probably cant take the chance. However, there are usually a few companies on that advertise entry level. Non-profits are also a possibility, because they cant pay so well.

Your post is a good bet, so I upvoted it.

EDIT: I checked your profile. You dont have contact info. A job cant find you.

17 points by aphyr 19 hours ago 3 replies      
Where's your github profile? Personal site with demos? Projects you contributed to? Anything counts, man! Even toy projects you built in a weekend just for fun, if they show your ability to reason about a problem.
25 points by softbuilder 19 hours ago 0 replies      
I'm convinced you're unemployed. Now convince me you're a programmer. You have a CS degree, but that doesn't make you a programmer. What makes you a programmer?
11 points by z2amiller 19 hours ago 0 replies      
I don't think 6 years "trying to do a startup" is the same as a complete lack of work experience, unless you spent the entire 6 years trying to raise money and making powerpoint slides. If you did any real programming work during that time, it still counts. I've seen plenty of resumes with "sole proprietor" type jobs. Maybe you don't get a job with a large company, but someone who is versatile and used to doing whatever it takes is perfect for someone else's startup.

I don't think it is wise pitching yourselves to companies who are hiring 100K+ engineers saying you are willing to work for minimum wage. It shows a lack of confidence that you are selling yourself so far under market. Pricing is often a signal for quality. More importantly, the cost of a bad engineering hire is far greater than the salary you're being paid -- a bad engineering hire takes time to get rid of, and often produces negative work output. People end up cleaning up a mess, opportunities are lost while a bad engineer flails at what should be simple code, etc. A bad engineer could work for free and still be a worse value for a company than an engineer making market rate. This is the signal you're sending when working for minimum wage.

21 points by oniTony 19 hours ago 0 replies      
To be fair, $100k+ SDE positions and burger-flipping positions are in completely separate markets.

If you were working on a startup, then you were "self-employed", not "unemployed". Market yourself as such. And as others have already mentioned -- if you can't point at jobs held, then point at code/projects that you wrote. Some startups would rather look at your GitHub profile than a CV.

8 points by glenra 19 hours ago 0 replies      
In 2000 I was unemployed for a bit in the Bay Area and wanted to take a short break from techie stuff. Looking for interesting work I browsed the craigslist job boards, specifically the "ETC" and "part time" sections. You never know what you'll find there - I ended up working as an "extra" in the Matrix sequels. beaubonneaucasting needed people to drive in the background on a fake freeway in Alameda while cars were crashing/exploding/chasing each other. Paid about a hundred dollars a day, gave me some great stories and experiences to talk about at parties or in interviews, got me some random followup jobs...and now my Bacon Number is 2 and I have a good start on an entirely separate "performer" resume in addition to my techie one.

Having something recent - anything - on your resume is a big improvement on having nothing; having something "cool" that you enjoy talking about is better still. So I'd try that - think about your hobby interests and cast a really wide net to find things you wouldn't otherwise have considered. And use Craigslist.

2 points by jedsmith 19 hours ago 1 reply      
Change of venue, maybe? Perhaps widen your net? I think San Francisco is your problem here.

A four-year degree is a solid leg in for a lot of backwards HR departments (isn't it? everybody telling me to finish mine seems to think so), so I'm surprised you're having difficulty. A bachelor's should at least get you into support somewhere, and you can start there. This makes me think that everybody who can operate a command line has descended upon San Francisco for the startup culture, and there's a saturation there. That wouldn't surprise me at all.

Last time I was there it was to visit my sister and do nothing computer-related, so I might be wrong.

9 points by magic5227 19 hours ago 1 reply      
Email me please if you'd be interested in Box.


3 points by sokoloff 19 hours ago 0 replies      
Ditto what mindcrime said about posting examples of your work/abilities if you can.

I'm starting a company 4/2 after my last day of full-time work on 4/1, and while I wasn't planning on hiring anyone right away, I do have a fair bit more work that needs doing than I can personally do, so I will be hiring contractors for some of it and if you're a fit, would consider hiring you remotely, assuming your skills matched up and you could handle working remotely (not everyone can).

I suspect you'll find a better offer on HN anyway, but if not, reach out to me with some details mid-month,

5 points by atlantic 19 hours ago 0 replies      
Looking at the way you describe yourself, a big problem is that the description is inconsistent. What are you: an entrepreneur, a project manager, or a developer? If you're a developer, then what is your speciality: architecture, database, middle-tier, UI? You presented a list of technologies, but did not indicate your level of experience in each or how they tie together. It's a laundry list, not a picture of the man behind the qualifications.

You are too self-deprecating about your startup experience. Even if it didn't pan out, you must have learnt a lot, both on the technical and on the business side. You really have to reconnect with your passions and your strengths; if you are aware of your value, it is fairly easy to get the message across to others. What was driving you for so long when working on your startup? What was the vision? That's where your value is.

3 points by KevinMS 17 hours ago 1 reply      
I'm in the boston area and I have a similar experience I seeming to be outside the job market. While I don't have comp sci degree I have lots of work experience as well as a small web business that demonstrates lots of solid code. Just some people don't have the connections or the luck maybe?
2 points by gcheong 18 hours ago 0 replies      
1).Go to some meetups and start talking to people. At the last couple python meetups I went to here in SF, several companies announced they were looking for developers. You're more likely to get past HR if you can connect with an employee who can refer you. 2). In the meantime make some iPhone or Android apps and try and sell them and/or do some projects where you can show off your code.

Don't discount the experience you gained trying to do your startup. As others have said, you weren't unemployed but self-employed.

2 points by sbisker 14 hours ago 0 replies      
Btw, thanks for putting yourself out there. Seriously. You've taken a really important step in fixing your situation - putting yourself in situations that are unlike what you've been doing in the past (which hasn't been working for whatever reason), and seeing what happens. Experimentation will get you everywhere.

Secondly, I think you should put your work online. If you've really done website work, why not throw some of that work online for us to see or play with? After spending some time in design school, I see just how more powerful a portfolio can be than a resume. Pictures say a thousand words, and a good code sample or open source contribution says at least as many. :)

To those skeptical of this post, remember we're talking about someone without any job experience. Not even an internship, it sounds like. Being able to code is one thing, but it's often hard to show experience in the "soft skills" of programming without having said you've done it before - from good code commenting practice and source control, to dealing with working for a boss. Hiring someone for their first job requires takes some risk on the part of the employer.

Come to think of it, maybe if this HN post doesn't help, you can consider applying to paid internships? While many internships are just for students, some (especially smaller companies or startups) are happy just for the short-term help - and you might just turn it into a full time gig.

3 points by pnathan 19 hours ago 0 replies      
I have no idea.

But you might try selling your abilities. Can you demonstrate your failed startup's code?

1 point by warrenwilkinson 17 hours ago 0 replies      
A lot of the skills you've picked will be marketable. Take a look at your resume, and ask yourself how well it communicates what you learned about: databases, web servers, system maintenance, typography, design, AB testing, payment systems, Apps (facebook, iphone, android), well known software/libraries, git, unit testing, agile, business development, networking, marketing, blogging, and sales.

You're in the business of selling yourself. Try writing about the 'benefits' you provide your employer, not your 'features'. For example: 6 years of startup experience is a feature. Ability to bring products to design-completion/code-completion/market is a benefit. Knowledge of several key technologies is a benefit because you don't need training nor time to get up to speed. Your startup experience means your used to working without much direction, you're used to working hard, you are flexible/resourceful, you understand the role and importance of sales, marketing, and customer service in an organization, and you are connected to the startup network -- a connection your employer could benefit from when hiring.

You should try to present the benefits you feel will maximally impress your future employee.

1 point by shrike 15 hours ago 1 reply      
We're looking for someone with Python experience, you could work mostly from home as soon you've proven your ability to deliver on time, otherwise we're in Sunnyvale, right off the CalTrain.

Get some code posted up at GitHub. You don't need to solve a new problem, just find an interesting way to solve any problem or show your skills off. The are 1000's of data sources out there, mash some stuff together.

Get active on StackOverflow, I've hired a couple of people based solely on what I saw there.

2 points by mindcrime 19 hours ago 0 replies      
F!%# bro, that sucks. If I had a job to offer, I'd try to help, but I'm in the middle of the bootstrapped, funded-by-my-dayjob model myself, so I have no money to employ anybody. All I can offer is my best wishes and encouragement. The HN community is really awesome, so I'd bet there's a good chance somebody here can help you out. Keep your head up, things will get better!

Oh, and if you've worked on anything open-source, or you have any code you can open, make sure you put it up on GitHub so you can show it off. Code talks and bullshit walks, as they say.

3 points by hitechsites 18 hours ago 1 reply      
There are literally hundreds of ways for someone with programming skills to earn money online - and make more money than hourly wages. Here are just a few to get you started:
1) Setup a profile on Odesk / Elance. Showcase your programming skills and start bidding on projects. There are thousands of eager buyers there. Sure you will be competing with programmers from India/Russia/Phillipines - but you can underbid them all and buyers in the US will hire you - as being in the US and cheaper than offshore programmers will be a huge plus for you.
2) Buy a domain name and build websites using Wordpress/Joomla/Drupal (pick any one), get a domain name for $8.00, use one of thousands of free themes, add some content, RSS feeds, add Google Adsense (all free), drive some traffic using SEO techniques. Then list the site for sale on Flippa, Ebay, Craigslist or any of the other sites to sell stuff. You can easily sell a site for anywhere from $50 to $500. Sell one site for $250 per week = $1000 per month.
3) Setup a site, Sign up for affiliate programs (Commission Juntcion, Linkshare, Amazon ...), Drive traffic and earn affiliate commissions.

4) Market complete websites to small business for under $500 using the technique in (2) above.

2 points by rdouble 19 hours ago 4 replies      
Move to NYC. The companies there are desperate and will hire anyone.
1 point by hoag 18 hours ago 1 reply      
Dude, I'm sorry to hear how rough it's been for you. I'd like to echo what many have said about posting samples of your work, and spelling out in more detail your particular skill sets as well as explaining what you have been doing with your time.

That said, I'm afraid we're not hiring yet, however -- and no, this is not a shameless plug, but a genuine offer to help -- I can offer you this:

I think you would benefit tremendously from our new startup. The way that we match Opportunity Seekers (such as job seekers, like yourself) with Opportunity Providers (such as employers) should greatly assist someone in your position -- i.e., talent without experience -- to find a new job or even co-founders to build your own company. We're still prepping the beta (having some typical last minute issues) but you should definitely sign up and give it a shot: venturocket.com.

And as defensive as it may seem to do so, I would like to preemptively state that I'm not trying to take advantage of your seemingly dismal situation, but genuinely trying to help you get connected with something. That my desire to help you will of course benefit our startup -- and therefore me -- should not, on its own, in any way invalidate the sincerity of my claim. After all, if it weren't for my desire to create a more efficient way to connect people with opportunities, I would never be doing my startup in the first place.

Besides, I do believe a certain Mr. Smith once pointed out that "[i]t is not from the benevolence of the butcher, the brewer, or the baker that we expect our dinner, but from their regard to their own interest."

Best of luck either way.

1 point by fotoblur 18 hours ago 0 replies      
I'd hardly feel as if working at a fledgling startup is considered unemployed even if it was considered so on paper. I'm quite sure that potentially you must have learned a wealth of knowledge during those 6 years and its in your best interest to highlight those on your resume and in any interview you manage to secure.

Being in the position of interviewing many candidates lately I get truly excited when people want to show me code and examples of stuff they've built, including the challenges they've met head on. Being in a startup gives you many life experiences that you need to address as a strength, whether you succeeded or not. A little secret that should be totally obvious is that no one wants to work with weak, incompetent, whiny developers because your life/project is in their hands when you have to get the job done by the deadline. Your team is only going to be as good as your weakest link.

I will tell you also that the market is hot. I just heard that in the tech sector the unemployment rate in CA is 5.9% compared to 12.3% for the entire labor force. So in actuality you'll face less competition finding a job in the tech industry currently than you will at fast food, etc. At my current company (in the Bay Area) we have a hard time finding good people locally, and I hear this same thing from many people at other companies. There is a very competitive job market (between companies) here and my employer is paying us handsomely if we can bring in a good new hire.

In addition I'd say play to your strengths. If you're an okay back end developer but excel at front end then apply to these positions or vice versa. Think of the hiring process from the other side of the desk and you'll be sure to land an interview.

2 points by karanbhangui 18 hours ago 0 replies      
I'm involved in two companies in the bay area that are hiring Java and Python web programmers respectively. They pay very competitive SV salaries. Contact me (email in profile) and I'll get you started!
1 point by kunqiana 11 hours ago 0 replies      
we definitely need more stories like these to balance out the belief that doing a start-up is some how "easy". The reason is not to discourage people but to let them know what they are in for so that they can prepare better. It would also give some CS undergrads second thoughts about dropping out of college with the attitude that start-ups are easier.
2 points by evo_9 19 hours ago 0 replies      
Post some examples of your work. If you don't have anything then create a project to showcase your skills. That's where I'd start if I were in your shoes and it will generate interest if you have solid skills.
1 point by mlloyd 5 hours ago 0 replies      
You actually do have work experience if you've been building your own company for the last 6 years. Do you have anything to show for it? If so, that's your resume. If you don't...well why not? That would be your real problem, not the lack of work history.
1 point by rdouble 17 hours ago 1 reply      
Out of curiosity, how did you support yourself without employment in SF for 6 years?
1 point by leftside 17 hours ago 0 replies      
A few notes:

- You don't get a programming job by applying at In 'n Out.

- Reframe your pitch. You need to signal to employers that you're worth hiring; "Hire me, I'm desperate and barely competent" doesn't really push that message.

- What's "real" job experience? Did you write code for 6 years, or not?

- I'm out of touch with what junior engineers get paid (hopefully it's less than $100k), but I'm guessing your friends have accumulated track records over the past few years and are in mid- to senior-level positions. I don't think you're likely to get one of those given your history (to say nothing of your self-presentation). If that's been your target, maybe aim a little lower, at junior-level jobs? Still difficult since there are so many junior engineers.

- What everyone else said.

When presenting yourself as someone of value, remember that it doesn't matter if you believe it. Just say it with authority. =)

Good luck!

1 point by jjm 18 hours ago 0 replies      
I hope that if my startup doesn't take off that I'll be able get back in to a job. Though with 7yrs of actual corp. gig developing I might have a better chance.

Here some cool things you could do (some of which i'll have to do myself):

1.) Put your resume on Google docs NOW. Repost it from here.
Make it a living document.

2.) Get a Google sites account. Possibly put up examples of your programming knowledge (essays?). Point your name.com to it if you can, otherwise make sure the site is sites.google.com/yourname

3.) Get a github account. Push your work up (even if it is only examples of your knowledge)

4.) Contribute to FOSS projects, get to know the committers and make contacts.

5.) Check out some freelance sites and as I understand it you could probably undercut a lot of these people. This might be some added experience you'll be able to add to your resume. After several jobs your resume should look a bit better.

6.) Good luck chap! Give me your twitter account so I can follow and RT. :-)

1 point by OstiaAntica 19 hours ago 0 replies      
What was the startup? You should be able to make an interesting pitch to other companies in the same field. You can present the idea, and what you accomplished-- it may be that a company in the same space would hire you and even buy your code.
1 point by gersh 18 hours ago 0 replies      
What was the startup? Did you write code for that? Is there a website? How did you manage to spend 6 years with nothing to show for it?
0 points by zxcvb 18 hours ago 3 replies      
I'm glad that I've spent the last couple of years making a name for myself in the big consultancy firms.

I may have to work as hard as a start-up founder but at least I get a nice pay packet and none of this '6years out of college with no career or anything to show for my efforts'.

I don't get why people spend years coming up with crap start-up ideas, failing, then trying the same failed recipe again. I wouldn't try and take something to market unless it was really hot. Your average web 2.0(crap) is just a waste of everyone's time. You could have been working your ass at a big consultancy or trading firm as a technologist in that time and made yourself some good money whilst actually having a life that doesn't involve ramen noodles.

1 point by carmen 18 hours ago 0 replies      
an unwillingness to work on closed-source webapps adds a further wedge to the situation. you have it pretty good - desperate "work on our proprietary centrally-hosted webapp" pleas for talented developers are oozing into every crack of the internet
2 points by petervandijck 19 hours ago 0 replies      
Do you have a site where you showcase your skills?
1 point by brackin 18 hours ago 0 replies      
If you aren't attending events regularly, following the people you need to know from these events in advance on twitter and getting to know them and what they're about then you should be.
1 point by MyHNAnon 18 hours ago 0 replies      
I think I am going to echo most of the other commentators.

I am working with a couple of startups and everyone is desparate for talent. I know many that would give a week or two with some small jobs to try you out.

That being said. Get some code samples out somewhere. Post a link to your failed startup. There may be another startup working on a similar or related idea who could integrate parts of your code and give you a job.

It is cool that you have a BS in CompSci but to me that means nothing. I know many people who have one but cant code for shit.

Let us know you can actually code.

Contact me and I will see what I can do to help you out.

1 point by herval 17 hours ago 0 replies      
What is your startup? What does it do?
1 point by espeed 19 hours ago 0 replies      
Contact me -- my info is in my profile.
1 point by WordSkill 18 hours ago 1 reply      
I might have some work for you.

Can you speak Hindi?

-2 points by curiouslurker 16 hours ago 0 replies      
See how "PG is hurting the kids"? :) anyways, seriously I also find it hard to believe that someone with this kind of skill is willing to work for minimum wage. And seriously a successful startup will never be built by someone willing to work for minimum wage! Sorry to say this but you got issues bro!
Ask HN: What about taking Hackathons online?
26 points by jessor 11 hours ago   8 comments top 6
4 points by petercooper 9 hours ago 0 replies      
Make it simple, make it small. And just do it. If you can't persuade several people you know to take part, it probably wouldn't be a goer on a bigger level. Just do a small one, figure out the tech, see what works and what doesn't, and then bring it to us as something to take part in.

It sounds great but it's edgy/new enough for you to need to do a small test run first to refine the idea. And you'll find it hard to sell without having the experience under your belt. It's one of those "meh, sounds weird" ideas that just needs some momentum before people will be won over, IMHO.

4 points by JCB_K 10 hours ago 0 replies      
I like the idea, but I don't think it would work. Let's look at the aspects of a Hackathon:

- People might not like it, but part of hackathons is the social side: meeting hackers and other like-minded people. Meeting them online you can do anyday, wether it's on HN, Reddit, Stackoverflow or whatever else.

- The woah, they're doing something, i should too" feeling. You can partially copy that using desktop streaming and that stuff, but still it's too easy to just walk away from it, when you're not around those people physically. For exactly the same reason as why people are so much ruder online than that they are in real life: you don't see the people on the other end. Introduce webcams, you might say, but still I don't think any virtual connection can fully replace the feeling of a Hackathon.

-It's also way too easy to cheat. Fair enough, it's quite easy to cheat at Hackathons anyway, but again, people are ruder online than in real life, and thus more likely to cheat.

Okay, it might turn out to be a nice little event for a bunch of people, but I don't think it'd come anywhere near a "real" Hackathon.

7 points by devinj 10 hours ago 1 reply      
I would share my desktop. I figure that the idea that somebody could be watching would be very motivating. And since the chances of someone actually watching are so slim, I wouldn't feel too embarrassed.
3 points by wjr 4 hours ago 0 replies      
Even though the idea seems a little crazy I think it`s possible to organize such a event.

There are couple of hey things that have to be taken care of:

-cheating ( by announcing a topic couple hours before event starts )

-getting media sponsors ( preferably startups with API' )

-presentations streamed ( justin.tv/ustream etc.)

-progress written up ( like http://www.travisglines.com/web-coding/lets-make-a-twitter-c...)

-possible prizes via AppSumo or similar venue

I`ve been actually thinking about putting together such a event in the next couple of weeks.

Since I`m launching a website in exactly that area soon, check it out in my profile.

4 points by Grauwolf 11 hours ago 1 reply      
While I like the idea and see the benefits I would feel uncomfortable with people watching over my shoulder while programming.
1 point by kolinko 4 hours ago 0 replies      
hm, imho it is not as fun as offline
Ask HN: Caching in Ruby?
4 points by antonb 5 hours ago   5 comments top 5
2 points by knowtheory 4 hours ago 0 replies      
Regularfry's points are absolutely correct.

However, in the event that you do need caching, it can be achieved through a variety of means, including ORM level object caching, controller caching and/or view/fragment caching.

Lastly, have you read this guide on Rails caching? Much of this is readily available in the standard distribution of rails: http://guides.rubyonrails.org/caching_with_rails.html

(final thought " this is a question might have been better suited for StackOverflow, just given the manner in which SO and HN are geared.)

3 points by regularfry 4 hours ago 0 replies      
The most-deployed interpreter, MRI 1.8, doesn't compile to bytecode, so it's not possible for there to be a general system which does this.

HOWEVER, I would suggest that your fundamental assumptions are wrong here. Without a cache, PHP has to re-interpret the source files for every single request. That's not how Rails works: the code is parsed once at server startup (or the first time it's used, depending on which part of the code you're looking at) and reused in the same process for subsequent requests, so there isn't a per-request parsing cost.

As ever, benchmark and profile before making optimisation assumptions.

1 point by clyfe 3 hours ago 0 replies      
As the ruby application loads in memory at startup and then is executed from there (in production) there is no need of bytecode caching, in contrast with PHP where the code is read, parsed and interpreted on each request, and in this (second) case, caching the bytecode to save parsing execution makes sense.

That is the case of bytecode caching. In regards to other forms of caching (etag, memoization etc) frameworks implement different strategies.

1 point by spooneybarger 4 hours ago 0 replies      
There are a variety of Ruby vms out there now. Each with their own performance characteristics. Instead of looking for bytecode or ast caching solutions, I would just look for articles on 'scaling rails' and 'ruby performance' and similar.
2 points by amikazmi 4 hours ago 0 replies      
jruby bytecode is heavily cached (on top of the caching done by the JVM)


Ask HN: Please destroy my startup idea so I don't waste time on it
48 points by rcavezza 20 hours ago   34 comments top 14
20 points by toddynho 17 hours ago 1 reply      
(disclosure: I founded BuySellAds.com)

I think it's a great idea, actually. At BSA we've been talking about newsletter ads for a while, but haven't been able to commit to executing on it properly. We went as far as acquiring the NewsletterAds.com domain, but have since stopped there. One of the biggest hurdles with selling ads in newsletters is getting enough valuable inventory. Even with our existing publishers (and with 150-200 new sites submitted every day) we would struggle to have enough meaningful inventory to put together to sell. That being said, I had many people tell me the same thing before I started BSA - that I would never be able to get enough inventory together to make it work.

The other piece of advice I can give you is that operating at 25% commissions (like BSA does) is definitely a bootstrapping path. If you can sell ads in newsletters that they aren't already selling, then it's something I would do at a 35-40% level. Maybe that sounds crazy, but if you're able to make sales that are normally not made you can charge whatever you want.

So, I'd say go for it, hustle, and make it happen if you are passionate about it.

9 points by nedwin 20 hours ago 1 reply      
Advertising sales is really hard. You can create a marketplace and get connected to a bunch of newsletter publishers but then you need to convince a whole heap of people to give you money.

Publishers are also (usually) particular about what kind of advertising they run in their emails. They want to make sure that it's "on brand" because if it's not then people might stop opening or reading their emails.

It's the classic problem of the 2 sided marketplace but the easiest way to start out here (IMHO) would be to find a newsletter or two and go out there selling their inventory. When you're oversubscribed go and find another relevant newsletter and sell their inventory. Wash, rinse and repeat.

3 points by asanwal 19 hours ago 1 reply      
We run a niche, high-value newsletter and so from experience, I think there is a market for this.

To validate, I'd find a newsletter(s) you think you can sell an ad(s) in and talk to the newsletter creator and say "If I can get you a sponsored ad for $x, would you (1) want it and (2) give me a Y% cut?"

If you get positive response from them, then try like mad to sell the ads you promised.

I'm not sure the size of the market but given how much Bob Pittman, Lerer Media and the guy at HARO like email newsletters, there is prob something here. We think so.

Also, IMO, I don't think startups is a great demographic from a monetization perspective unless you can slice it more finely, i.e., venture-backed startups or startups who are hiring.

2 points by wolfrom 20 hours ago 0 replies      
Besides not being a subject matter expert, I don't have any evidence to support this assertion:

It feels like you're looking to get involved in an industry that's being disrupted (unless e-mail newsletters are going to continue in their current form, which I don't believe), but that your idea isn't causing this disruption. I feel like there's a pivot somewhere here, after some more time on it.

So in essence, I'm giving you the opposite of what you want; I think if you start looking into this further, you may hit upon the true solution. At least it sounded to me like you had the knowledge and interest to make it happen.

1 point by noonespecial 18 hours ago 0 replies      
Its a niche market. You have specifics. Sorry, I kind of like your idea. After a zillion "its like teh facebook of x" or "its kind of a social-ad-media-blogging deal", that's really refreshing.

I'm not going to be able to shoot down an idea this specific, Content Newsletters are. Find a few. If they think its a good idea, see if they'll pay you something, or even trial some stuff for you. You should be able to quickly determine if there's anything here worth pursuing.

1 point by mattcurry 19 hours ago 1 reply      
You may want to checkout http://www.heyamigo.net and http://www.barenakedapp.com/category/amigo/

HeyAmigo sounds like exactly what you are talking about. It was built by Carsonified a few years ago and sold (I think). The Bare Naked App blog was a chronicle of them building it.

3 points by jim_shook 20 hours ago 2 replies      
Personally, I think you are thinking too small. IMO there is a larger opportunity for a marketplace to buy and sell promotion for the long-tail of the web (niche content providers and small startups selling to a niche audience) across many mediums including newsletters but also company blogs, social media presences, forums, etc. Buysellads.com does it well, but I think there is room for another player who can execute in slightly different ways.

I actually have been thinking about this idea for a while and would love to chat more about it. I've been working on a travel industry startup for 2 years that has had a difficult time finding great/targeted advertising opportunities.

1 point by jasonlynes 20 hours ago 1 reply      
who the hell signs up for newsletters? interesting how your other business was created because newsletters are lame.

these problems don't seem like ones normal people deal with. they're just problems for people trying to add something to their domain squatting businesses. spam my inbox with lame content, and then spam the newsletter with ads? ugh.

how about, people want really good content through email (huge assumption), but great content publishers aren't publishing content due to low advertiser involvement. the service could hook writers up with relevant advertisers who could add something to the conversation, giving the user something other than a text ad or banners. if it's a small market, the service could be very specialized and deal with people/advertisers individually.

but honestly, there's probably more money in viagra ads than there is in email newsletters.

1 point by jonah 17 hours ago 0 replies      
I know it's not exactly what you're looking at, but it brought The Deck[1] to mind. Carefully curated high-quality advertising on select sites.

[1] http://decknetwork.net/

2 points by jonkelly 19 hours ago 0 replies      
I actually like the idea a bit. Chicken and egg problem for ad networks is difficult, but not insurmountable. I can tell you that there are many big newsletters out there that are under-monetized. It' not about spamming, either, it's about providing a quality offer that makes sense for the audience. Feel free to reach out to me if you pursue this (you can find me through my profile).
2 points by MatthewDP 16 hours ago 0 replies      
I have a small but growing daily stock-related newsletter (3500 subscribers in 45 days). So far, I really have no methods of monetizing it and the monthly sendgrid bill doesn't pay itself. If that service existed, I'd give it a try.
1 point by petervandijck 7 hours ago 0 replies      
Pivot to "appsumo + groupon for email newsletters" :)
1 point by astrofinch 16 hours ago 0 replies      
Can't remember where but I saw a service that described itself as "buysellads for e-newsletters" the other day.
1 point by adrianbye 20 hours ago 1 reply      
its a massive market. the problem is the targeting. how do you target ads appropriately? everyone wants the high CPM ads, but nobody knows how they will perform. and you have to do a separate mailing each time
Show HN: MapCrunch Street View gallery
6 points by kirchhoff 7 hours ago   1 comment top
1 point by chriswesallen 3 hours ago 0 replies      
I think the gallery is awesome actually... Maybe a voting element would get more interaction.
Dial-up for Libya
37 points by cocoon 20 hours ago   3 comments top
1 point by rick_2047 9 hours ago 1 reply      
Doesn't anyone else here see a chicken and egg problem??
Ask HN: How did you become a hardcore back-end developer?
170 points by andywood 1 day ago   28 comments top 13
75 points by SpikeGronim 1 day ago 5 replies      
I'll share my experience, which may differ from other people's. The largest system that I've worked on was Amazon S3. At the time that I worked there we were doing 100,000+ requests per second (peak), storing 100+ billion objects (aka files), and growing our stored object count by more than double every year. The most important skills for that job were distributed system theory, managing complexity, and operations. I can't explain all of these skills in depth, but I will try to give you enough pointers to learn on your own.

For distributed systems there are two main things to learn from: good papers and good deployed systems. A researcher named Leslie Lamport invented a number of key ideas such as Lamport timestamps and Byzantine failure models. Some other basic ideas include quorums for replicated data storage and the linearizability consistency model. Google has published some good papers about their systems like MapReduce, BigTable, Dapper, and Percolator. Amazon's Dynamo paper was very influential. The Facebook engineering "notes" blog also has good content. Netflix has been blogging about their move to AWS.

Every software engineer needs to manage complexity, but there are some kinds of complexity that only show up in big systems. First, your system's modules wil be running on many different machines. The most important advice I can give is to have your modules separated by very simple APIs. Joshua Bloch has written a great presentation on how to do that. Think about what happens when you do a rolling upgrade of a 1,000 node system. It might take days to complete. All the systems have to interoperate correctly during the upgrade. The fewer, simpler interactions between components the better.

The best advice I know of about operating a big distributed system is this paper[1] by James Hamilton. I won't repeat its contents, but I can tell you that every time that we didn't follow its guidelines we ended up regretting it. The other important thing is to get really good with the Unix command line. You'll need to run ad-hoc commands on many machines, slice and dice log files, etc.

How did I learn these skills? The usual mix of how people learn anything - independent study, school, and building both experimental and production systems.

1. http://www.usenix.org/event/lisa07/tech/full_papers/hamilton...

23 points by jerf 1 day ago 1 reply      
1. Find bottleneck.

2. Remove bottleneck.

3. Repeat.

4. Every once in a while, make a bold move to throw something out that can no longer work that way and replace it with something more scalable. But while this is important, it comes up less often than you might think.

The difference is that you spend a lot more time in that loop than a desktop dev, but if you understand programming it isn't a special black art until the very, very top end.

The other thing to get is that it's always about buying time rather than solving the problem forever. The goal is to have bought enough time that you don't have to be stuck in a local optima or make panicked decisions.

11 points by ismarc 1 day ago 0 replies      
Ride on others coat tails, stand on others' shoulders. It's not that it's any harder, it's that the skills used day to day are different. The single skill I picked up that served me best was being able to rationalize about what complex , highly concurrent code was doing and the performance implications of it. And I got this by reading code, and not just little programs, but things like the udp packet handling in the Linux kernel, or the storage and firewall rule insertion mechanisms for iptables.

But, nothing beats working directly with geniuses. Earlier this year I made a change (at my last company) that increased the number of simultaneous users by well over an order of magnitude. The change was known and had been tried by others in the group, but was deemed infeasible. I didn't come up with the magic change needed, I found how to apply it. And what I learned in the process is applicable outside of that. Without working directly solving the problems, it's hard to learn how.

4 points by fingerprinter 1 day ago 0 replies      
I've was mostly a web guy, riding the internet from '94 until about '06 when I started to get into more serious stuff...up until that point it was C, Perl, Java etc , but it was mostly pushing business data around, which is what I think 90% of all commercial programming is these days (so don't knock it...it pays the bills).

In '06 I joined a startup and we needed to scale. I hadn't had experience with this stuff and neither did most people on my team...so here is what we did.

* Try new things, but basically find out what most people are doing that have already gone down this path (stand on shoulders of giants, as someone mentioned)

* Read, read, more reading...talking to other devs...network...DO NOT REINVENT SOMETHING (I also call this the Kiss of Death). Unless you are Google, Amazon or Facebook, use off the shelf if you can.

* Use technologies that will work for your problem. We chose Erlang for ours b/c it of what we were doing. Something like Java would have worked, but would have made the job 10x harder. C would have been ideal, but we would have to reinvent nearly all of Erlang, so just choose Erlang.

* LEARN about things like good architecture design, SOA and failure (when a system goes down, what happens...).

*Invest in a good test suite or test infrastructure, but realize that it will be nearly impossible to test at scale.

During that time I felt like I was constantly reading every paper I could find, blog on scaling and back-end systems and talking to every dev or had ever done it. It was work, but not the type normally associated w/ dev....but was 100% worth it.

7 points by davidhollander 1 day ago 0 replies      
I would start by viewing it as tree structure optimization problem. Draw a tree where each node is a physical server and the root node is the domain name server. Now try to maximize throughput of random lookups while minimizing height (complexity). For each level of the tree, come up with a list of everything you can think of that might affect the traversal (processing\lookup) time when a node (server) in that level is entered. Also create a list of everything you can think of that might affect the lines (connections) between nodes. This exercise should give you a good idea of what you need to learn and help generate more specific questions.
6 points by diego 1 day ago 0 replies      
I started writing my story but it became too long so I posted it here.


Tl;dr: in 1998 I created an mp3 search engine that got significant traffic, had to learn on the fly, ended up going to Inktomi where I joined a team tackling much bigger problems. We all learned a lot over the next four years.

4 points by justin_vanw 1 day ago 0 replies      
There are maybe 20 people the world who 'know' how to scale a website up to millions of users. There are lots of teams of hundreds of people who actually do it.

Don't get worried that you won't be able to go in and run the show on the first day. There isn't any secret sauce, and sites that scale to this level are so rare that they probably each have their own arcane and complex way of doing it that has evolved over years of people trying different approaches and failing.

Anywhere that is worth working isn't looking for someone who knows how to scale a website to millions of users, they are looking for smart people who can contribute. Their development budget is probably in the millions of dollars per year, they will be more than happy if you can help.

TLDR; Nobody is going to write a book on this, since only 500 people in the world would benefit from reading it. There is no single answer.

To address the specifics of what you are asking, there is basically a balancing act of consistency vs performance. You need to find the exact balance that is 'good enough' for every problem. The oft quoted 'there are two hard problems in CS, cache invalidation and naming things' pretty much sums it up.

7 points by mathgladiator 1 day ago 1 reply      
The simplest way is to just do it.

You are fortunate that you live in the age of cloud computing. For instance, you can spend $10 for a day and get access to more compute resources than most people could hope for after months of budget proposals.

Find a problem, solve it, launch it, test it, find bottleneck, kill it. Repeat this enough times and you can start to a feel for where bottlenecks will happen and how fail happens.

7 points by CyberFonic 1 day ago 0 replies      
For me the path the heavy duty back-ends was Unix and C. Most of the work for large corporations, in addition to the mainframes, involves big systems; IBM: AIX, HP: HPUX, Sun: Solaris. Helps to know a bit about storage: EMC, Hitachi, NetApps, etc. And of course databases, DB2, Oracle.

The best news is that these days, you can build up these skills using a $1k box with Linux or BSD. Years ago, you needed to get a job first because systems were in the order of $millions and they wouldn't fit in your average spare room.

You'll also need to demonstrate so CS/SE chops, because mucking up a big back-end system is not like a web page that occasionally crashes, it can cost $10k's per hour while it's down.

5 points by jsarch 1 day ago 1 reply      

Can you take a moment tomorrow and add an edit to your post giving a summary of whether you felt the comments answered your questions?

I ask simply because my first read of your post focused on "How do I get there?" and not "what was your path?" As such, I was surprised to be reading life stories of fellow HN'ers. Since we all absorb info differently, I'm curious to know if the stories helped and what you gleaned from them.

All the best in your endeavor. -- A fellow large-scale enthusiast.

1 point by petervandijck 7 hours ago 0 replies      
To boost your resume, you could work on some of the large-scale open source systems (nosql etc.) That'll look good, and get you some good experience too.

You can run 1000 servers for an hour on Amazon for fairly cheap. If you use that to do some testing/benchmarks etc. of popular nosql systems, for example, and then write about that, you can create some notoriety in the big-systems world fairly fast.

Good luck!

2 points by Pahalial 1 day ago 1 reply      
<Obvious answers here>

When you discount "learn on the job" and "read books", i'm really not sure what's left, or what you expect the people who have achieved success by doing these things to tell you (while omitting those things.)

1 point by known 1 day ago 0 replies      
Tell HN: Get feedback about your YC application from YC alumni
34 points by eddylu 23 hours ago   21 comments top 13
1 point by rdl 8 hours ago 1 reply      
I'm honestly not sure if I should apply for YC or not. I'm having no problem meeting people and (presumably) raising money or revenue (although I haven't asked for a check yet from either).

If I were doing a consumer service, it'd be a no brainer. However, I'm working on infrastructure/security technology, although with some cool demos, and I'm not sure if being a YC startup would help in getting meetings with fortune 50 CIOs or various defense/government agencies.

7 points by eddylu 22 hours ago 0 replies      
1 point by wolfrom 21 hours ago 3 replies      
Barring a new remote dining edition of Grubwithus, I'll have to wait for the Winnipeg dinners for YC alumni. :)

But in all seriousness, I'd love it if someone would consider taking a glance at our application. People who should know have been telling us we're on to something, but I worry that we're just not communicating that effectively. I could pledge to eat during the feedback process if that helps.

1 point by callmeed 21 hours ago 0 replies      
Just joined the group and am looking forward to this (I'm a 4 hour drive from SF).

Are there any tentative dates or thoughts on what day of the week this might happen?

2 points by Jsarokin 22 hours ago 1 reply      
Wish I was there. You should do some sort of online thing too ;)
1 point by ffumarola 23 hours ago 0 replies      
Great idea, wish I was in one of those 2 areas.

Best of luck to all who take advantage of this offer! :)

1 point by rachnaspace 16 hours ago 0 replies      
We'd love to get feedback on our application as well, but we're not based in either of those places. Can any alum review it remotely? - over email, phone..?
1 point by kerben 21 hours ago 0 replies      
Sounds awesome, just joined. Would appreciate a few days notice if possible since I'd be coming to SF from NYC. If any YC alums are up for doing something similar in NYC please let me know too. Thanks again
1 point by kovar 21 hours ago 0 replies      
I am about two hours south of Chicago and am really looking forward to this opportunity. If you have any tentative dates, the information would be most welcome.
1 point by zaveri 20 hours ago 0 replies      
any YC alums in the DC area?
1 point by tourbillonfunk 19 hours ago 0 replies      
This sounds awesome!

Any alumni up for a weekend in Vegas? Me and my co-founder will show you around town. :)

1 point by dreamux 21 hours ago 0 replies      
Please give as much notice as possible, last minute plane tickets are prohibitively expensive.
1 point by wengzilla 21 hours ago 0 replies      
any yc alums up for a weekend dinner in nyc?
Peter Tattam created Trumpet Winsock and got very little: Let's set things right
450 points by jacques_chester 3 days ago   122 comments top 60
112 points by seldo 3 days ago 1 reply      
Donated. As a closeted gay teenager, Trumpet was the software that got me in touch with the people who literally saved my life. I could never thank this guy enough.

(Edit: if you felt like making another worthy donation, the Youth Guard mailing lists are the people I'm referring to -- http://www.youth-guard.org/youth/ . I cannot overstate the impact they had on my life.)

26 points by patio11 3 days ago 1 reply      
Suggestion: pay him by Mass Payment. You end up kicking in $0.50 in paypal fees, he doesn't have to pay to receive. It ends up that more of your donation reaches him net (if you donate above, let's see, $7.25 or so).

You'll need to save a text file. I think you guys can probably manage, but to make it copy/paste easy:


payments@petertattam.com (tab) 25.00 (tab) USD (tab) winsocks_rocked (tab) This is a totally optional comment.


Thanks for Winsock, by the way. You saved me hours of frustration when I was trying to get Compuserve and Warcraft 2 to work together, back in middle school. Crikey I feel old.

158 points by p_trumpet 3 days ago 10 replies      
I can confirm that the email is the one I passed on to Jacques. The PayPal account is a legit one I have used in the past and is registered under the business name Tattam Software. If I encounter any problems I will look into the other option.

Thanks all... I had honestly thought the Internet had forgotten about me.


21 points by ck2 3 days ago 1 reply      
Just a warning, if it's a new paypal account and there are a bunch of donations, PayPal will lock the account and keep the money for themselves until he runs their gauntlet.

Actually, they'll sometimes do that on accounts that are a decade old, but new accounts especially.

Maybe use WePay instead with a target amount?

16 points by angrycoder 3 days ago 2 replies      
How much did a license for the original Trumpet Winsock cost?

Nevermind, in 1993 a single license for Trumpet Winsock cost $25 usd. Adjusted for inflation that is $38.10 today.

9 points by acabal 3 days ago 0 replies      
Great idea. With all the Paypal horror stories out there I honestly hope you've set up the account so that it doesn't get wrongly frozen if the donations start ramping up.
13 points by InclinedPlane 3 days ago 0 replies      
I feel like Dr. Sam Beckett, travelling back in time to put right what once went wrong.
5 points by benwerd 3 days ago 0 replies      
Donated $38.10, the amount declared as the inflation-adjusted registration fee. My message:

Thank you for my career.

I've run open source projects, built e-learning systems, helped charities in Colombia work together, worked with people revolutionizing journalism and (once, by accident) made a large number of Utah Mormons very angry. None of this would have happened without the software you created. Thank you.

8 points by jacques_chester 3 days ago 2 replies      
Update: I've created a very simple site you can refer people to.


8 points by jedsmith 3 days ago 2 replies      
Hacker News giving Reddit a run for its money? Bravo.
5 points by petercooper 3 days ago 1 reply      
You rich folks in the 90s.. all my computer could run was DOS so I used the then-popular KA9Q by Phil Karn. If anyone wants to start a donation drive for Phil... ;-)
3 points by henrikschroder 3 days ago 1 reply      
So, how do I?

I don't have a PayPal account, and I'm trying to navigate their site to find out how to do a donation, but I can't find anything like it? The closest match is making an "International Payment", is that the one? And why do I need to select which country he is in?

Or should I sign up and perform some other action when logged in?

3 points by xd 3 days ago 1 reply      
Demon internet used this, and I think maybe still do: http://echannel.www.demon.net/helpdesk/technicallibrary/sdu/... Funnily the images on the page actually show that they are using an evaluation copy!

I've sent them an email referencing this story to see if they step up and at least make a donation.

Would be great if some more people could email them as I don't see them taking a random email like I've sent seriously.

EDIT: Demon internet is an ISP based in the UK.

3 points by davidmurphy 3 days ago 0 replies      
Literally don't have any extra money right now (and I used a Mac back in the day), but I tweeted this to help get the word out, and want to at least my thanks to you, Peter, for your important early role in the internet (I heard about this, even if I didn't use it as a Mac user), even if I can't give money, let me say: well done.

Pat yourself on the back and know your efforts were useful for a great many people. Well done, good sir!

5 points by nl 3 days ago 0 replies      
I lived on Winsock + SLIRP + a university terminal account in 1994. Donated!
5 points by eps 3 days ago 1 reply      
Is there a way to make a donation without needing to create a PayPal account?
5 points by rmason 3 days ago 1 reply      
Truly one of the unsung heroes of the Internet. Actually met him at a BoardWatch conference where he received a well deserved award.

Fondly remember Trumpet as the key that unlocked the door to using Mosaic. Jumping from text only to a browser was like going from black and white to technicolor.

4 points by prawn 3 days ago 0 replies      
Donated. Thanks Peter. I had no idea that all of that mucking around trying to get things connected back then would lead to my career for the last 15 years and my own business for the last 13 years of that.
3 points by Whitespace 3 days ago 3 replies      
I used to wake up in the middle of the night and sneak downstairs with my brother, lugging our family's first computer, a Compaq Presario all-in-one (similar to the gumdrop iMac) onto the dining room table so we could connect to the internet. With a 486DX2/66 and 4MB ram, we'd load up Tabworks and use the /worst/ browser in existence (don't recall the name, but it was probably a rip off of Mosaic) and dial out to IDT.net to connect to the internet.

Later on, after saving money to upgrade to a whopping 12MB ram and Windows 95, that same computer allowed to to play multiplayer Diablo, which was my first taste of IRC. Naturally it was all downhill from there, and I played Diablo for two years straight.

There were a lot of fights in our household over phone bills and busy dial tones, and I'm sorry that my sister was left stranded at school with no ride because I was busy downloading FreeBSD, but now I'm a successful software engineer and budding entrepreneur in the education space, and it's all thanks to those formative moments panicking at 3 am, trying so hard to muffle the sounds emanating from my 9600 kbaud modem as it connected me to an exciting new world.

Thanks, Peter. Thank you so much.

5 points by yuhong 3 days ago 0 replies      
XP and later has a built-in IPv6 stack, but I remember reading that Trumpet Winsock later provided IPv6 implementations for older versions of Windows for the few people still using them.
14 points by jacques_chester 3 days ago 0 replies      
10 points by koudelka 3 days ago 1 reply      

Even though I was kicking around the net on my Macintosh SE/30, using MacSLIP/MacTCP, this is a great idea.

5 points by MichaelApproved 3 days ago 1 reply      
Is there an official story from Peter about how all this happened?
9 points by lanstein 3 days ago 0 replies      
Donated. Winsock + Slirp - truly life-changing.
15 points by cema 3 days ago 0 replies      
2 points by gbhn 3 days ago 0 replies      
I'm happy to be able to say both that I realized how awesome Trumpet was back in the day, and that I made the choice to send Peter the $25 registration back when that was a harder choice than it is now. It's nice to be able to remember and renew my license, as it were. :-)
4 points by true_religion 3 days ago 2 replies      
This actually sounds like a job that WePay would be better for.
4 points by p0ppe 3 days ago 0 replies      
Donated. From one Peter to another.
3 points by gkn 3 days ago 0 replies      
Hello HN.
Here is a campaign I set up today for this cause


It might help to get the message out to a wider audience.

Shameless plug: This is a part of my Internet Startup. You can opt in to have your name (or alias) published.

2 points by ghostDancer 2 days ago 0 replies      
Just when i think nothing can impress me more, i find that in HN you can, i'm not technician, not a programmer and not and entrepreneur. I follow HN because i like the news and mainly the discussions, seeing different points of view, etc ... and from time to time in HN you make a thing that surprises me and show the power you have inside you. Like now from a video , came a comment about the old days , you found the person and so many years after you organize a tribute, because apart from the money this really is more of a tribute to a man whose work you admire. HNers you are great. Maybe the vets say that this is not the original HN but i think the spirit of HN is there.
10 points by tobych 3 days ago 0 replies      
Donated. Warm thoughts, Mr Tattam.
1 point by kingofspain 3 days ago 1 reply      
I had to pester a schoolfriend for weeks until he copied me this onto a disk when I was a poor 14 year old (no idea if he paid for it, but I doubt it given his rep!)

I probably would've gone into this field without it but I got a big head start regardless. I'm donating.

I should probably send some money my parents way too. Long distance modem calls weren't exactly cheap back then!

3 points by hanifvirani 3 days ago 1 reply      
There is a big difference between thinking of doing something good and actually making it happen. Kudos to the guys who arranged this. It's great to see everyone donating. Just goes to show how many lives Peter impacted with his work.
1 point by heresy 3 days ago 0 replies      
Being online via Trumpet Winsock was how I downloaded my first Linux distribution.

Knowing Linux at the right time (1998) was how I got my first job.


3 points by evgeny0 3 days ago 0 replies      

Thank you for opening up the online world to me, back in the days when just trying to connect to the Internet was a bit of an adventure!

2 points by floatingatoll 3 days ago 0 replies      
I would be happy to donate to Peter personally, except that Paypal is will likely freeze his account in the next few days specifically due to a high volume influx of varying dollar amounts from a variety of sources without a physical product or service provided. So my donation must go elsewhere than him personally, and that makes me very sad :(
15 points by onethumb 3 days ago 0 replies      
5 points by joshfraser 3 days ago 0 replies      
1 point by metageek 3 days ago 0 replies      
Donated. I never used Winsock, but I worked for Netscape, which would've been worth a lot less without Trumpet getting users online.
1 point by gfodor 3 days ago 0 replies      
Trumpet was a truly magical piece of code, basically the gateway to the world we live in today. Donated.
14 points by bennytheshap 3 days ago 0 replies      
13 points by aedocw 3 days ago 0 replies      
13 points by bpfh 3 days ago 1 reply      
3 points by cdeutsch 3 days ago 0 replies      
Donated! Trumpet Winsock was the gateway to my first internet experience. Thanks Peter!
2 points by Kukasauto 3 days ago 0 replies      
Well, it appears that I cannot send the money I wanted because Paypal has assigned my credit card to another account.

Thanks, Paypal, I didn't authorize that. I do not WANT you to lock my account, or have anything to do with you and your freezing account policy crap. I just want to donate to worthy causes.

That said, I'm in Finland. US-Only solutions don't work for obvious reasons (among them, outside the US we don't have 30-day-waits for check cashing...) so I'm looking for a way to set this right that I can use here.

5 points by petdog 3 days ago 0 replies      
He should do a reddit AMA
1 point by zandorg 3 days ago 0 replies      
I never knew what a 'winsock' was, but at my college in '97, we used dial-up to connect to Demon on Windows 3.1, and it worked great. I used to FTP Amiga demos.

Will donate!

1 point by Daryl_Hatton 1 day ago 0 replies      
I'm Daryl Hatton, CEO of FundRazr. As an "old guy" in this industry, I really benefited from Peter's work. I've set up a FundRazr campaign on Facebook to help collect money for Peter. The money goes directly to Peter's PayPal account. I will refund our portion of the PayPal fees back to Peter when the campaign is finished so that this doesn't make us any money.

Check out the campaign at http://bit.ly/fDzVOF

Make a donation but, at the very least, share it with your friends so that we can get Peter some of the money he deserves.

2 points by georgeott 3 days ago 0 replies      
Donated. Ah, the memories of surfing the real web in 1994. (Not some Prodigy/AOL version of it)
8 points by abend 3 days ago 0 replies      
2 points by nicpottier 3 days ago 0 replies      
2 points by michaelcampbell 3 days ago 0 replies      
2 points by jhuckestein 3 days ago 0 replies      
2 points by guruz 3 days ago 0 replies      
2 points by ljonesfl 3 days ago 0 replies      
I love this.
1 point by marcing 3 days ago 0 replies      
donated and twitted around
1 point by echion 2 days ago 0 replies      
Nice work; donated.
1 point by laxbobber 2 days ago 0 replies      
I love it, spread the word people! +1 donation from me!
2 points by ak1394 3 days ago 0 replies      
1 point by ramarnat 1 day ago 0 replies      
Offer HN: Advice for Landing Page Optimization to improve conversions
17 points by hackernewsoffer 23 hours ago   6 comments top 3
1 point by sidmitra 5 hours ago 0 replies      
Not sure why you guys decided to hide your real contact details. It might help build more trust if you'd done otherwise.
1 point by netmau5 17 hours ago 1 reply      
Great offer! Out of curiosity, are you guys starting your own consultancy or app to improve landing page optimization?
1 point by hackernewsoffer 23 hours ago 1 reply      
I don't see this post on HN anymore. Did we do something wrong?
Best way to connect with developers?
4 points by dhkbank 14 hours ago   7 comments top 5
1 point by mattblalock 2 hours ago 0 replies      
You meet someone, chat, learn about preferences and passions, and maybe you get along. You begin talking about your project and maybe they love it - if not, don't bother trying to convince them, quietly move on. Of course, you can always pay someone a fair market rate to provide the same service - sadly, its much harder finding a partner than a working programmer. It's a lot like any other relationship... without demonstrating your talents and abilities, many programmers will chuckle as they click along.

Tell us about your business or at least your skills, something. This sort of post comes by about every day, in some way or another...

1 point by ryanfitz 3 hours ago 0 replies      
I do consulting work for startups, mostly using rails 3, jquery, backbone.js, and mongoDB. My contact info is in my profile if you want to chat.
1 point by OncomingStorm 12 hours ago 1 reply      
Connecting with a developer? My best advice would be to check my profile for my email address.

Wow what good advice.

0 points by malandrew 7 hours ago 1 reply      
Learn to program.
Ask HN: Facebook alternative, are users willing to try something different?
9 points by thatusertwo 21 hours ago   5 comments top 3
4 points by mindcrime 20 hours ago 1 reply      
A few thoughts... all of this is totally unscientific, unverified, subjective, biased, and may be a combination of wishful thinking, drug-fueled fantasies, fever induced delirium, etc. It's almost certainly contradictory, not self-consistent, and comes with no warranty or guarantee. IANAL, YMMV, HTH, WTFBBQ.

1. Facebook can be knocked off their perch. Facebook almost certainly will be knocked off their perch, probably sooner than later.

2. The "net crowd" is very much a trend-following herd... if something catches the attention of the right set of early adopters and the avalanche starts, it'll carry through to its inevitable conclusion.

3. You won't beat Facebook by building a better Facebook. Nobody cares about something that's just like Facebook but a little better or has a couple of new features. One killer new feature, maybe. But what?

4. Facebook is not cool anymore. Facebook is a utility, like the phone company or the people who provide your electricity.

5. The way to beat Facebook is to build something that is new and unique, but subsumes (most) of what Facebook does. Think telephones replacing the telegraph. A telephone isn't a telegraph, it's a whole new tool, but it obviates the need for the telegraph.

6. Remember what Henry Ford said "If I'd asked my customers what they wanted, they'd have asked for a faster horse."

7. Go back and find and read Om's article about how "social networking is just a feature." That vision is partly coming true, but Facebook is fighting to extend their tendrils into every other site, rather than letting other sites implement their own social networking features and (possibly) combining them using open standards to build a federated social network.

8. Relative to (7) above, see: http://www.w3.org/2005/Incubator/federatedsocialweb/ and also research what Appleseed, Diaspora, etc. are doing. There may still be a chance to gain some traction for this federation stuff. That would open up some interesting possibilities down the road and could disintermediate Facebook.

9. I'm going to guess that whatever replaces Facebook will have a basis in the mobile app world, first and foremost, not the traditional web world. The smartphone carrying, app using early adopters will latch onto something cool that comes along...

10. Your mom, your grandma, your uncle, your boss, your ex-wife, your ex-girlfriend/boyfriend, etc. are all on Facebook. Your neighbors dorky 8 year old kid is on Facebook. The nerdy guy in Chemistry class who's always undressing you with his eyes, is on Facebook. Facebook is generic and boring... it has utility because of network effects, and because everybody is on it... but it sucks and is lame and isn't cool because, well, everyone is on it.

11. It's cool to hate on Gladwell, but read The Tipping Point if you haven't already. Then chase down some of the stuff by Watts, Barabasi, etc. on network science. Maybe even read Diffusion of Innovations by Everett Rogers. There's a growing body of science that speaks to how things happen in networks... there may be something interesting that falls out of thinking about "preferential attachment" and power law distributions and scale-free networks.



12. Also, go read this old Jamie Zawinski piece: http://www.jwz.org/doc/groupware.html Keep this bit in mind:

That got me a look like I had just sprouted a third head, but bear with me, because I think that it's not only crude but insightful. "How will this software get my users laid" should be on the minds of anyone writing social software (and these days, almost all software is social software).

IF I had to bet money on any of this being relevant, I'd say (4), (10) and (12) would be the most likely to be so. Facebook just isn't cool anymore. At least not cool for specific niches, like, say, "teenagers" (what teen wants to be on a social-network with his mom and dad, or his geeky little sister, etc?) or college-students ("eeeew, high-school kids!" "eeeeeew, OLD people"), etc.

3 points by spitfire 19 hours ago 0 replies      
All of facebooks users are willing to try something different. Just like all of geocities users, all of yahoo searches users, all of myspaces, friendsters and orkuts users were. Simply put internet companies don't have a durable competitive advantage.

They have an advantage for a little while, then someone bests them. But no one has figured out how to build a rolls-royce, goyard or even coca-cola internet service yet.

1 point by pasbesoin 18 hours ago 0 replies      
I've been considering moving some interactivity over to Buzz -- a few interesting people I know are fairly active on it, and the (their, at least) conversations seem more interesting and detailed. However, I have no clue at this point whether Buzz is going to "make it", or whether I should Wave it good bye.

(I was pretty pissed with the way Google launched Buzz, but they seem to have at least somewhat learned that lesson, and I don't want to see them disappear from the space altogether.)

I guess I should just fire it up, and save locally any threads I find particularly useful.

Ask HN: Recurring revenue by a yearly subscription
4 points by AmmoToad 14 hours ago   3 comments top 3
1 point by makeee 3 minutes ago 0 replies      
I think your traffic is too low to bother working on a paid plan. Unless those 100 daily users are extremely devoted, I can't image you'd convert more than one a day. Seems like your time would be better spent lowering your costs. You should be able to host the site on < $20 a month. If you're hosting the videos yourself, move them to a CDN, such as MaxCDN.
2 points by petervandijck 6 hours ago 0 replies      
Monthly is better than yearly. 4.99 is better than 1.99. 9.99$ tends to be the best price range. Try $9.99 monthly.

100 unique visitors is very little. I don't understand why you're paying 175$ a month.

You will probably save more money by finding a cheaper way to host these videos than by trying to convert 100 visitors a day.

But it all depends on the specifics of course. Can we see the url?

1 point by aeden 11 hours ago 0 replies      
What kind of videos? It's important to know what you're selling in order to come up with some idea of the value of it. If you're simply aggregating the work of others then the value is less than if you are creating original content for example.
Ask HN: Programming in front of a projector rather than monitor?
6 points by mapleoin 20 hours ago   4 comments top 3
3 points by sokoloff 19 hours ago 0 replies      
I had a 9 foot wide 1080p setup in my last place (as a home theater). I could do casual work on it (light excel, web surfing for star wars boy or other idiotic YouTube videos, some email), but it wasn't at all suitable for coding or substantial lengths of time reading text. It also required the lights to be out or very dim, which made working with a printed reference very difficult.

Looked at another way, the tech is available and certainly cheap enough (and somewhat "obvious"); if it were advantageous, you'd hear about loads of people doing it. The tech has been out for years, and even in the early days they were well under $5000 (way, way under that now). Another thing to note, the bulb projectors dim over time, and the bulb replacement costs are not insignificant if you replace them at the point the picture quality starts to suffer (as opposed to when they completely burn out).

Walk into any company conference room and try it out. I predict you'll hate it.

2 points by bane 19 hours ago 1 reply      
There would be a lot of eye movement

I've tried a similar setup in the past and found it too be just too much work. It turned into lots of head movement. If it was about 4-8x the res then maybe it might work as you could segregate it into 4 or 9 workareas and just focus on one at a time. But it's simply too low resolution to work for that right now -- you'll end up moving so far away from it that you may as well just get a big monitor and a desk.

1 point by adamzochowski 17 hours ago 0 replies      
I have seen people with eye problems use projectors. One person was legally blind (could not drive at all), but is damn fine programmer. I wonder if inability to see too much at once forces the code to be terse, and easier to understand.
Tell HN: I've decided to give my software away for free
14 points by leftnode 1 day ago   5 comments top 4
2 points by leftnode 1 day ago 0 replies      
2 points by sagacity 1 day ago 1 reply      
Thumbs up for you!

I'm tempted to take up instakill's suggestion posted here.

I'll download and hopefully install/config it on one of our spare domains early next week. If I do, I'll post the URL on this thread.

2 points by instakill 1 day ago 0 replies      
Someone that's got VPS hosting should download this and make an HN-based social network. Just for shits and giggles.
2 points by mrleinad 1 day ago 0 replies      
Kudos to you, Mr.
Ask HN: Question about salary expectations, raises, and bonuses
5 points by jensv 1 day ago   9 comments top 5
1 point by petervandijck 6 hours ago 0 replies      
In my experience: the only way to get significant salary increases (say, from 80 to 120, or from 120 to 150), is to change employers, or being promoted into a different role, with the very real possibility of you leaving (ie. being "re-hired").

It's almost impossible to get a significant raise while staying in the same position.

Salary is NOT based on merit.

In your case, your best chance is to get an actual job offer from another employer, be prepared to walk away from your current job, and then talk to your boss and tell him you have a much better offer and are leaving, unless he can promote you into a new position (you can just make that up), where you make much more.

1 point by salemh 11 hours ago 0 replies      
Significant bumps in salary (across most spectrum's, not just programming: BA's, PM's, etc.) typically occurs when leaving for another company, not staying with the firm for small percentage increases over 5-10 years. The programmers I found making the least amount who "seemed" to be as or more competent ($85k vs $110k as an example) normally were at large shops for 7-15 years.

However, a few years of experience at a large shop can facilitate that jump.

Related discussion on negotiation / salaries:

2 points by us 23 hours ago 1 reply      
Every employer look at performance differently. Beyond the ability to code as a software developer, what other personality and characteristics do you display that meet other requirements that make you invaluable beyond your ability to write code. Writing code is one thing. Writing great code is another. Then add onto that the ability to contribute beyond just writing code is something entirely different. When you add all those factors together, raises and how much they increase vary a LOT even with known ranges within a given company much less comparison within an entire industry in any given city.
2 points by brudgers 21 hours ago 1 reply      
>"How much experience will I need before I can start to expect making the 'average salary'?"

Assuming that "average" refers to median, half of all people earn less and therefore there is a significant chance that you may never earn it.

1 point by ffumarola 1 day ago 1 reply      
I can't speak to a lot of your direct questions. However, when researching salaries of your company and trying to determine if you are being paid market rate, I've always found Glass Door useful.

It's all user generated and breaks the pay down into salary, commission, bonuses, etc.


Offer HN: I'll design what you code
18 points by niico 1 day ago   7 comments top 6
2 points by dannyr 1 day ago 0 replies      
You guys should avail of Nico's skills.

Nico has done several excellent designs for our startup.

Thanks Nico!

1 point by codeslush 1 day ago 0 replies      
Emailed you. I hope you can help me out! Didn't see this until now and thinking I may be too late.
2 points by niico 1 day ago 0 replies      
Clickable link to my Dribbble account. http://www.dribbble.com/nicogarcia
1 point by robflynn 1 day ago 0 replies      
I need some design work for one of my projects. It's actually a byproduct of my main startup that I've decided to market as well.

I will working on pulling together a bit of information for you before contacting so that we can discuss your interest.


1 point by krishmv 23 hours ago 1 reply      
Just emailed you Nico...it'll be great if you could have a look at the shots I sent you and share some thoughts.
1 point by taphangum 1 day ago 0 replies      
Just sent you an email
Ask HN: How is work/life balance at Google and Facebook for Software Engineers?
32 points by Medicine 2 days ago   4 comments top 3
4 points by pfedor 2 days ago 0 replies      
I work at Google on websearch indexing. I usually arrive to work between 9 and 10am and leave around 7pm. I don't work from home and I have never worked on a weekend.

There are many engineers around me who choose to work very long hours and weekends, but I never received a reproach or a scornful glare for not being like that.

5 points by bendmorris 2 days ago 1 reply      
After 4 hours, maybe the complete absence of comments is a clue...
3 points by dotme 2 days ago 0 replies      
I don't know about Google or Facebook, but here is my story.

I turned down an offer from a big investment bank (after working there for few months) and now joined a company which I can say is just average. For me I wan't to keep a work/life balance. Wanted to give time to myself as well few side projects. Staying in former would've required too much commitment.

But here's the lesson I learned, no matter what company it is they will ask for same amount of time commitment. Only difference lies in the type of work they assign to you. So it is good to be in an awesome company so atleast you can work on some challenging assignments.

Ask HN: What language should a technically literate person learn first?
8 points by willgodfrey 1 day ago   7 comments top 5
4 points by GHFigs 1 day ago 1 reply      

I've been recommending Zed Shaw's "Learn Python The Hard Way"[1] a lot lately. The way it's structured makes it suitable for a pretty wide range of skill levels, as someone with a bit of prior programming experience can just go through the exercises they understand more quickly, learning the Python syntax along the way.

So even if as you say you won't have any problems learning the language, it's still a good way to do that, and once done, you can learn a lot more from the docs, reading code, and other books.

[1]: http://learnpythonthehardway.org/

2 points by fmw 1 day ago 1 reply      

If you don't have a programmer friend you can lean on Seven Languages in Seven Weeks[1] by Bruce Tate will give you a nice overview of some good languages, so you can pick one that fits your way of thinking (or learn multiple languages and pick the right tool for the job for each project). You could complement that book with a nice Python primer, because this language (which is a personal favorite due to the nicely readable syntax)) isn't covered.

If you already know a bit of Lisp Clojure would be a nice match. Also, Python and Ruby are pretty much the default suggestions when people ask this kind of question. Personally, I wouldn't worry about the language choice, as long as you go with something that doesn't encourage bad habits (e.g. don't start with PHP).

[1]: http://www.pragprog.com/titles/btlang/seven-languages-in-sev...

1 point by jjames 1 day ago 0 replies      
I'd personally suggest looking at Python as a first language. Others here will suggest Ruby (esp with the mention of LISP) or Perl. Of course there are many others to suggest but that trio has a good enough balance of power, complexity and understandability to get you up and running without throwing up too many barriers.

You can't go wrong with really any language to get your feet wet. It's really a matter of finding documentation, books and a community you resonate with to keep your attention and get you excited about all of the possibilities.

1 point by malandrew 1 day ago 0 replies      
Python and Javascript are excellent choices. Which to choose depends what you want to be more tech literate in? Front-end and consumer facing or back-end and developer facing.
1 point by gharbad 1 day ago 0 replies      
If you're looking to roll your own webapps, I would recommend python (with django) or ruby (on rails). Both of these have large active communities and many tutorials to help get you started.

If you're looking for a blog, I would advise you to look into wordpress or similar and avoid re-inventing the wheel. Save your creative energy for making something fun/interesting.

Who's hiring interns?
88 points by RichardPrice 5 days ago   discuss
11 points by RichardPrice 5 days ago 1 reply      
Academia.edu is hiring intern engineers in San Francisco.

Academia.edu helps academics follow the latest research in their field. Here are a few bullet points that sum up the atmosphere in our team:

- obsession with exceptional engineering

- obsession with building a great web product, and a great user experience

- intellectually inquisitive - we like delving into ideas, whatever the ideas are about

- fun and friendly - we enjoy each other's company a lot, and have a great deal of respect for each other.

We are hiring intern engineers. Here are some of the technologies we work with: Rails, Nginx, Node.js, Redis, Memcached. We are based in downtown San Francisco.

More information about the team, and about how we think about software engineering and product development, is here http://academia.edu/hiring. Specifics on our developer internship program are here http://academia.edu/hiring/developer_intern

13 points by mhp 5 days ago 1 reply      
Fog Creek Software is hiring interns in NYC. $5000/month plus free housing and metrocard and lunch.


5 points by michaelfairley 5 days ago 0 replies      
1000Memories is looking for an engineering intern. http://1000memories.com/jobs#engineer_intern

We're trying to change the way personal history is recorded. Right now, we're focused on letting families and friends remember the lives of those who've passed away.

If you're interested in working for a small (but very well funded) YC company in SF, get in touch with me at michael@1000memories.com.

5 points by CGamesPlay 5 days ago 1 reply      
Facebook is always looking for interns (SW Engineering isn't listed on the intern page but I'd be very surprised if we were already full).


9 points by DTrejo 5 days ago 1 reply      
Please specify if you are hiring unpaid interns! Also, remember that no one likes an unpaid internship ;)

(RichardPrice, please add this to the post?)

4 points by klbarry 5 days ago 1 reply      
www.recojeans.com (site is getting a new skin right now and is a a little ugly)

We're a sustainable fashion start-up that has a full time developer but could use some tech help. Our fabric is made from denim factory scraps. It would be a good way for a programmer interested in business to learn marketing (I've learned a huge amount over the past 8 months).

Just shoot me a message at kevin@recojeans.com if you're interested.

3 points by sx 5 days ago 2 replies      
Pattern Insight is hiring interns in Mountain View, CA


We develop solutions for searching and analyzing vast quantities of semi-structured data. Many of the biggest tech companies (Cisco, Qualcomm, Juniper, Motorola) rely on Pattern Insight for their internal search.

Many of our team members joined the company after working part-time or as interns

2 points by jluxenberg 5 days ago 0 replies      
Nest Labs is hiring interns in Palo Alto.

Nest is building a very exciting product aimed at energy conscious
consumers. You'll work with seasoned veterans of the consumer products
industry who have a proven track record of bringing products to

We're just getting started and are still shopping technologies. Part
of your job will be to figure out if these are the right ones: Chef,
Cassandra, Hive, Hadoop, Nginx, Netty, HornetQ, Node.js, EC2,
S3, ZooKeeper.

We're looking for talented software developers with a passion for
building amazing products for real customers. Join us!

Contact me at jared@nestlabs.com for more details.

4 points by kitcar 5 days ago 1 reply      
If any CompSci students in the Toronto Area are interesting in working on a Massively Multiplayer Online Roleplaying Game this summer, shoot me an email -
4 points by bmm6o 5 days ago 0 replies      
The thread from last month is probably still relevant: http://news.ycombinator.com/item?id=2171315
4 points by philfreo 5 days ago 0 replies      
Quizlet.com is hiring software engineers in San Francisco


2 points by schindyguy 4 days ago 0 replies      
The startup incubator I work for in Beverly Hills is looking for an intern. They posted the listing below on craigslist a few days ago, so email job-5k6be-2228641808@craigslist.org if interested and in the subject line include Hacker News.
--- http://losangeles.craigslist.org/wst/bus/2228641808.html

Curious Minds brainstorms business ideas with the potential to shake up the status quo. As a technology incubator, we whittle sophisticated algorithms into simple, intuitive solutions. Our businesses have landed partnerships with Fortune 500 companies and nationwide press from ABC, CBS, CNN, NPR, Fox TV, KCAL 9, Good Morning America, CNET, Esquire, and USA Today.

We're seeking an assistant to perform routine business development tasks. You should be tech-savvy, outgoing, and eager to get the job done.

- Transfer data from online databases into spreadsheets
- Actively seek new accounts through cold calls, emails, and faxes
- Research and write answers to support healthcare technology projects
- Resolve issues throughout the project cycle
- Develop new marketing collateral
- Write emails

- Consistent, reliable, hardworking (e.g. we can count on you to show up and produce accurate work)
- Superior organizational and time-management skills
- Good writing and communication skills
- Ability to adapt in a rapidly-evolving entrepreneurial environment
- Positive, easygoing, nice, fun, smart, low-maintenance

- This is a paid (hourly) internship
- Has the potential to develop into a full-time position as an early employee in the company
- Exciting work environment that serves as an entrepreneurial training ground
- Assist in driving and managing one of the fastest-growing startups
- Kitchen filled to the brim with delicacies
- Beautiful office in the middle of Beverly Hills

2 points by nilobject 4 days ago 0 replies      
Core-apps.com is hiring paid interns with the ability to telecommute. Our primary web stack is Ruby (Sinatra) backed by a blend of CouchDB, Redis, and PostgreSQL. We also have native iPhone and Android clients, but we're only looking for iPhone interns at the moment.

Small startup, self funded, fast moving. Feel free to email me at jon at the domain above for more info!

6 points by neilkumar 5 days ago 0 replies      
Yelp.com is hiring interns (paid internships) winter/spring/summer and fall - apply here if you are interested http://www.yelp.com/careers?jvi=ozXeVfwp,Job
2 points by jplewicke 5 days ago 0 replies      
Boston, MA (not remote)
MDT Advisers - We're a small quant investing shop working with machine learning, financial analysis, and the hardest dataset in the world. We have a paid internship that is similar to our full-time analyst position: http://www.mdtadvisers.com/careers/qea.jsp , but that isn't on our website yet.

You can email me at jlewicke@mdtadvisers.com with any questions you have.

2 points by jhugg 5 days ago 0 replies      
VoltDB is looking for Summer 2011 interns in Boston area. We're small, so our interns basically become engineers for a few months, and have lots of flexibility on what they want to work on. Also, as an open source company, you can point people to actual shipping code you wrote in a future job interview.


5 points by dangoor 5 days ago 0 replies      
Mozilla is (take a look at the College Recruiting section of our jobs page):


2 points by gommm 5 days ago 0 replies      
We're based in Shanghai and looking for interns. We are a startup doing consulting on the side to finance our product.

We mostly work with Ruby on Rails but also have a new project in Node.js. When something is a better tool for the job, we use it and if you come and convince us that it's the case for a part of your project, we will listen to you.

So if you're interested, send an email at intern@agiletomato.com

2 points by mhansen 5 days ago 0 replies      
I interned at Google Sydney over the summer, and I really enjoyed it. They're always looking for interns.


2 points by thinkbohemian 5 days ago 0 replies      

(though it doesn't list it, we're hiring interns).

Blackberry, iOS, Android, or Ruby experience is a huge plus. If you've got the hacking spirit or some projects on github, let us know!!

Keep up with your friends and discover new places, with Gowalla!

3 points by cambriar 5 days ago 0 replies      
I applied to MindSnacks this month. They're hiring.


cough I'm seeking an internship for the summer. 2 semesters away from a BS in CS. Just got my first 'fun' test app onto the iOS market, cloudedbox.com/supersoaker.html. I'm still working on the proof that I'm worthy, but I cannot tell you how much I'd like to experience the techniques and tribulations of software engineering with a company anywhere in North California. More about.me/cameronbriar uncough

2 points by dguido 5 days ago 0 replies      
iSEC Partners in NYC, San Francisco and Seattle


"We are a security research and consulting company that is fortunate to work on some of the most interesting software products and problems in the world. We are looking for motivated students to work with us as a paid summer intern."

2 points by david_shaw 5 days ago 0 replies      
Redspin, Inc is hiring interns and Jr. Security Engineers working out of Carpinteria, California (near Santa Barbara).

We perform security assessments and penetration tests for large enterprises. If information security sounds exciting (and you can work out of Carpinteria--about 90 miles north of Los Angeles), send a cover letter and resume to jobs@redspin.com!

2 points by avree 5 days ago 0 replies      
Getaround is looking for interns on both the tech and business side.

We are a San Francisco based startup changing the way people use transportation. We have both paid and unpaid internships available and can provide transportation reimbursement for interns looking to commute to the city.

Shoot me an e-mail at avery@getaround.com if you're interested.

2 points by gnubardt 5 days ago 0 replies      
Brightcove is hiring interns in Cambridge, MA & London, UK:

I'd be happy to answer any questions (I'm an intern :), email in profile.

2 points by imaginator 5 days ago 0 replies      
http://buddycloud.com is hiring interns to solve federated social web problems and build beautiful products.

Remote working is not a problem. Ping simon simon@buddycloud.com directly if you are interested in finding out more.

2 points by exline 5 days ago 0 replies      
www.klatunetworks.com is looking for paid intern in San Diego. local is best, but remote is also a possibility if the person is a good match. Looking for someone who can start soon, rather than waiting for the summer. Contact me directly if you are interested, cexline at klatunetworks dot com.
2 points by jhuckestein 5 days ago 0 replies      
campfire labs in downtown SF is looking for one or two engineering interns. http://campfirelabs.com/

Come say hi :)

2 points by sanj 5 days ago 1 reply      
TripAdvisor. Newton, MA.

Come help me build me be cool stuff!

2 points by abstractwater 5 days ago 0 replies      
We are very actively hiring (interns and junior developers) at Goodreads, in SF:


3 points by kola 5 days ago 0 replies      
Mertado is hiring interns in Palo Alto, CA.


3 points by cmeiklejohn 5 days ago 0 replies      
2 points by ctb9 3 days ago 0 replies      
equipster is hiring (paid) intern engineers in SF.

We're creating the best way to find and buy outdoor gear. If you're a great hacker and you love the outdoors, check us out.


2 points by proofpoint 4 days ago 0 replies      
Proofpoint, Inc. offers paid internships providing undergraduate and graduate students the opportunity to build industry awareness, technical experience and exposure to a corporate culture through work-based learning.

Proofpoint, Inc. is the leader in SaaS eDiscovery, Compliance and Security. Proofpoint focuses on the art and science of cloud based email security, archiving, eDiscovery,and compliance solutions.

The following internship opportunities are available -
Graduate Student Internships:
Marketing Intern
Web Production Intern
Product Manager Intern
Product Marketing Intern
Public Relations Intern

Undergrad Internships:
Software QA Engineer Intern
Software Development Intern
Software Engineer - Encryption Services Intern
Software Engineer - Spam Services Intern
Sales Operations Intern

Learn more about Proofpoint and visit us online at www.proofpoint.com
and submit resumes to

2 points by drewcoo 5 days ago 0 replies      
I'm the test lead at Animoto. I can't speak for the dev team here, but I, personally, would love to hire a test dev intern here in NYC.

Want to create a model-based test for our platform layer (in Ruby)? Want to create an AI to combat our back end Java "director" AI (yeah, in Java, of course or tell us how you'd rather do it)? Want to test render code (as in "game dev" sort of render code - perf-sensitive code that grids out video and sync'd audio to the limits the hardware will allow)? Do you hate "the cloud" (Amazon's in our case) and want to show everyone how fragile that is? Well . . . I would welcome an intern who wants to understand any of those things deeply and break dev code. So pick one and tell me how you want to break it.

The company supports open-sourcing your test code. Share it. Put it on your resume. Put us on your resume!

I only want someone who wants to blow up and/or set fire to and/or just do horrible, horrible things to the dev code.

My name is Drew. I break things for a living.

You? Write code and want to SMASH things? Obliterate them? Pulverize? Have other destructive fantasies but don't want to talk about it? Ask for me at devjobs@animoto.com with the subject "SDET Intern".

3 points by kathishah 5 days ago 0 replies      
Justin.tv is also hiring interns: http://jobs.justin.tv/software-engineer-intern.html
3 points by jonkelly 5 days ago 1 reply      
We are at thisorthat.com. We're helping users compare anything (and we're hosting the TechStars Startup Madness tournament) -- looking for developers and writers/editors
2 points by aed 5 days ago 0 replies      
The Receivables Exchange, a New Orleans based startup, is hiring interns all sorts of interns.

Go the bottom of the page: http://receivablesxchange.com/about_us/careers/index.html

The internships@ address goes directly to me, so if you mention HN, I'll be sure your resume gets to the right people.

2 points by coryfoo 5 days ago 0 replies      
Guidewire Software (San Mateo, CA) is looking for a half dozen or so software interns this summer. Paid, naturally, because who wants to work for free? We've got tons of fun things to work on, possibly including updating our outdated website!


2 points by annoyed 5 days ago 0 replies      
Located in San Mateo, Hara.com is hiring. Our environment includes Java, Hudson/Jenkins, Ruby, Selenium, and Flex.
2 points by dlsay 3 days ago 0 replies      
New Jersey early stage startup is looking for locals. Show your NJ love. Paid internships and full time gigs. jobs@iqtell.com
2 points by circuitbreaker 5 days ago 1 reply      
2 points by robertjmoore 5 days ago 0 replies      
RJMetrics in Philadelphia is hiring both programmers and marketing interns for the summer.


2 points by sharpemt 5 days ago 0 replies      
Looks like Akamai Technologies just posted for a number of intern positions: http://www.akamai.com/html/careers/index.html
2 points by dloft 5 days ago 1 reply      
Twitter is hiring software engineering interns in San Francisco. http://twitter.com/jobs-university.html
2 points by TedBlosser 5 days ago 0 replies      
Box.net, mobile intern at hq in Palo Alto, http://www.box.net/company/careers/job_openings
2 points by adjohn 5 days ago 0 replies      
Midokura is hiring intern engineers in Tokyo. Check us out at http://midokura.com
2 points by mattthered 5 days ago 0 replies      
2 points by mynameisraj 5 days ago 0 replies      
Looks like Mixpanel is. http://mixpanel.com/internships
2 points by wilsonguaraca 5 days ago 0 replies      
If any Computer Science students in the NYC, Boston, or Philadelphia area are interesting in working on a crowdsouring startup, shoot me an email at wguaraca@haverford.edu or my partner at samuel.peprah@brown.edu.
2 points by ashrust 4 days ago 0 replies      
Klout is hiring interns. We want awesome people who will crush code: http://klout.com/careers
1 point by YairR 5 days ago 1 reply      
We have about 50,000 companies hiring interns at http://www.internships.com - and it's FREE for employers to post positions and for students to search... Good luck to all!
2 points by judegomila 5 days ago 0 replies      
Heyzap is


2 points by benhatten 5 days ago 0 replies      
We're hiring intern engineers at EverFi.com - we're based in DC.
2 points by normally 5 days ago 1 reply      
Stylewok, an algo-based fashion startup, based out of NYC is hiring interns for front-end development, UX design and copy writing. {info} at stylewok com
2 points by vidovichn 4 days ago 0 replies      
Our Cyber Security team is looking for full time employees and paid interns,

EE and CSE - please send me your resume!

2 points by dc-tech-fan 5 days ago 0 replies      
OPOWER in Washington, DC. Msg me for details.
-2 points by jay_kyburz 5 days ago 1 reply      
Why would a reader of Hacker News want to intern anywhere? Go start a start up!
I'm a cargo cult programmer, help me
192 points by jrookie 9 days ago   discuss
147 points by edw519 9 days ago replies      
I lack the fundamentals of Computer Science, the things every programmer should know: Algo's, Data Structures, Operating Systems an understanding of compilers and being profficient with linux.

Relax. That's true for 99% of all programmers.

Eventually I plan on going back to a real University and getting a CS degree

Absolutely not necessary. You will probably learn more building anything than learning it in school.

I'm starting to think I may have a learning dissability

Maybe you do, maybe you don't. Just because the rest of the world is quick to diagnose everything doesn't mean you have to.

I have come to accept that I'm really not smart. I'm slow, forgetfull, concepts never seem to stick

Your performance shortcomings could be for many reasons. Being "really not smart" is the least likely of any of them. They are much more likely caused by other things like uninteresting work, poor environment, personal issues, nasty people, or even health issues. Whether you're "smart" or not, thinking that your aren't is pretty much a guarantee for failure. Please don't do that.

I have started going through the basic Algo's and Data structures again with a basic Java book about algorithms

Sorry to say, but you're just doing it the hardest way you can. You don't need a book; you need a project. I (like many others here, I'm sure) have achieved much, but have always had difficulty learning from books and theory. It's hard! You need to find work where the things you need to learn will be required. Funny how quickly and easily you'll find a way to learn them when you actually need them. I'm not sure how you should go about finding such work, but I imagine many responses in this thread do.

I just don't want to be a cargo cult programmer anymore.

Good. That makes your normal.

And finally trying to memorise all those linux commands I ALWAYS forget.

Then use less commands. I have never used more that 10% of what was available in any technology and I always got the job done.

I have to force myself

This is the most important thing you have said.

Have you ever actually enjoyed building stuff? Have you ever gotten really "jazzed" about the project you were working on? Have you ever leapt up out of your seat and danced when you got something working?

If you answered "yes" to any of these questions, then you really do have the passion to be a programmer. Stop selling yourself short and listen to the great advice you're sure to get here from fellow Hacker News'ers.

If you answered "yes" to none of these questions, then there's no sense for you to continue wasting your time searching for the passion. If you haven't experienced any by now, then you probably never will. No one should have to "force themself" to love what they're doing. Find something else.

P.S. Sorry about your father. Loss affects each of us differently. And don't worry about your English. It's fine. Please give yourself your best chance to succeed and keep us posted. Best wishes.

40 points by DanielBMarkham 9 days ago 1 reply      
I think maybe your model of how a person becomes a good programmer and reality might be far apart.

When I wanted to learn C, I bought six or seven books, some of which came with a compiler. I read each book.

Now that probably sounds like I am a genius, sucking down information directly from the text. But what really happened wasn't so flattering at all: I flailed. It wasn't until the third book or so that I finally got anything to compile, and I think it was book 4 where I figured out how the hell to read pointers.

I really sucked at learning programming.

When I picked up C++, we were on a family vacation. The kids all played in the pool and did fun stuff. I sat by the pool and read C++ books. If I thought C was tough, C++ was a killer.

I finally got it, though.

Last year, when I wanted to finally learn Functional Programming (I'm 45) I did the same thing. And this time, guess what? Even after the books I sucked.

So I started writing little projects, which also sucked. I went back and read the books again. I wrote some more code. I still suck at it, but I suck a little less. Perhaps in another year or two I'll consider myself proficient.

Yes, it is terribly awesome to sit down in front of a client with a tough problem and do some wizardry on the screen and feel like the hero. I spent my 20s and part of my 30s being the super-hero star guy. I had a blast.

But that's just hot-dogging: showboating. (People do it for fun and to make their job more like a theater performance) In reality for every one of those times I was showboating there were hundreds of hours spent trying to figure out what the hell was going on with something.

I think it might be easy to look at other coders who are like I was and get the wrong impression. Yes, some folks are smarter or have a better recall than others, but guys with huge recall ability many times get wrapped up in some kind of minutia that's not important to the team. Everybody has flaws. This will sound very strange to hear, but it's true: you can be the worst programmer on a programming team and be the most valuable and critical person there. I've seen it happen dozens of times.

The question is: are you working at making yourself better? Not how smart you are, how you feel about programming, or any of that. Just a simple question about what kinds of habits you have in place to continue to improve. If you have those habits, you'll either become a better coder or eventually work out what you're meant to do. But you have to have those habits first.

So my advice is a little less angst and a little more work. Both to you and me :)

EDIT: By some kind of weird twist of fate I have been thinking about this a lot recently, because I was writing a review of the best book I've ever read that improved my coding, Code Complete. http://news.ycombinator.com/item?id=2263127

21 points by neilk 9 days ago 1 reply      
Okay, you do not actually have a learning or technology problem here. You have a psychological problem.

You have built up this idea in your head that other people are smarter than you, and you aren't worth anything if you aren't like them. Never mind that you're a working programmer and that you're proficient in a second language. Apparently for you that stuff doesn't count.

To "fix" this problem you are forcing yourself to do stuff that you don't seem to like. When you fail you blame yourself even more.

Let's take a step back here. How are you ever going to get any good at this if you are making it so unpleasant for yourself? You've put yourself on a treadmill that you can't get off.

Stop reading all these CS books. In fact, you should stop reading Hacker News. Stop caring about being in a cool startup. Start caring about whether you are enjoying your life or not.

I guarantee you that everyone you know who you think is so much smarter than you got that way not through inherent ability, but through work. You might have heard stories about how incompetent they were in the beginning, but I bet you discount them and say "well, of course they're not serious about that, this is just false modesty." No, it is really true.

Everyone I know who is really good started out that way. In fact I'm starting to think that one of the prime qualities needed to become a good hacker is a kind of willful disregard of one's own incompetence, coupled with a strong desire to do something that's personally meaningful. In other words, you need hubris.

As long as you keep measuring yourself by stuff that's personally meaningful, you'll advance in your hacking skills -- don't worry about that. If you think you need skills before you start something personally meaningful, you will never, ever get anywhere.

Finally, it is perfectly okay not to be a uber-hacker. There are other things in life worth doing. Don't adopt someone else's value system if it makes your life worthless.

So, ask yourself what, if anything, have you ever enjoyed? What makes you lose track of time when you're doing it? If problem-solving, math, or programming has never been one of those things, then you'll have to look elsewhere. If you still think you want to stick with programming, remember what I've said and try to start over with beginner's mind. Try PHP, or Python, or Processing... something very forgiving, and fun, and do something that YOU want to do.

If you are lucky, you might live in a city with a "hacker space". Hanging out there might invest you with a sense of what it's like to be personally involved with a project.


Good luck.

21 points by knowtheory 9 days ago 1 reply      
> I have come to accept that I'm really not smart. I'm slow, forgetfull, concepts never seem to stick, I have to force myself to not take things for granted.

Congratulations! You have just discovered that you have an asset! Forgetfulness, an awareness of one's limitations and an understanding that learning can be challenging are all things that actual newbs are not aware of. You no longer suffer from hubris.

Your newfound recognition of your limitations is the foundation upon which you must build and shore up a structure for acquiring new knowledge, outlining plans which recognize your limitations and executing these plans in a predictable manner.

These problems are the same problems that most programmers (hell, most people) face. This is what the life-hacking movement is about. It is about understanding that we are all human, and that improvement in our lives requires recognition of our weaknesses.

If something is not working for you, what you should do is look for alternative methods to achieve your goal. If you do not absorb knowledge through reading books or theories, perhaps reading code would be better for you, or perhaps you are a social learner and need to talk to other programmers about what it is that they do.

Remember that every challenge is an opportunity. There are even people who have turned their quests for self improvement into niches and businesses in their own right. If you see something that doesn't make sense to you, it may not make sense to other people. If you find a way to make a task easier, others might find it useful too.

I hit the point you're at about 5 years ago. I'm beginning to feel competent and trust my ability to build things. There's a lot more that i want to learn and become better at. It's a long process, but many have tread the path before you, and many will follow in your steps.


24 points by blhack 9 days ago 5 replies      
I've gotten some flak for saying this other places, but the most helpful thing that I've ever done to learn linux was installing gentoo. Especially doing it without the official install CD (by using something like knoppix).

Start here: http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=...

The thing that is different about installing gentoo vs centos or ubuntu is that instead of something that looks like this:

     Would you like to format the disk (click yes or no)?

You get a walkthrough of what fdisk is, then how to use it, then you use it to partition your disks. Instead of selecting a filesystem from a dropdown, you make one with mke2fs.

I don't recall if Ubuntu even tells you what lilo or grub is.

The reason I like this is that it forces you to understand what is going on. What is the /boot partition? Why is that important?

Installing gentoo is going to force you to use tar, and wget. It's going to force you to get comfortable on the command line.

It's also going to force you to understand what a kernel module is. It's going to force you to understand things like: what chipset does my wireless card use?

It's hard. And it takes forever. And it probably won't work the first time.

To me, it's kindof a rite of passage, like telling a carpenter that he has to build his workbench before he is allowed to start working on anything else. The workbench he makes might suck...hopefully this causes him to want to keep building new workbenches until he has one that is perfect.

7 points by scott_s 9 days ago 2 replies      
OTOH I have given thought about if programming is really for me, I have found that I'm really, really bad at problem solving and "thinking outside of the box" I have come to accept that I'm really not smart. I'm slow, forgetfull, concepts never seem to stick, I have to force myself to not take things for granted, it seems no matter how hard i try I can't look at problems from different perspectives and understand the implications of a particular solution, I'm starting to think I may have a learning dissability, or that is because I lack the basic toolkit for problem solving, but I really think I'm just not very smart.

I doubt this is true. Rather, I think your currently ad-hoc way of trying to learn things is not effective. In other words, it has been your method, not you. One of the benefits of a formal education is knowing what is out there, even if you don't know it yet. (Knowing what you don't know.) That means you can go and learn it as you need to.

I suspect your difficulty with "thinking out of the box" is that you just haven't been exposed to alternate ways of doing things.

My point: you're not stupid. Learning all of this stuff even when someone says "this is what you should learn" is hard. Learning it when you have to figure out what to learn is even harder. Many people here will disagree with me, but I think a formal education is valuable for the reasons I stated. But, you said that's not an option for you now. So I recommend doing basically what you're doing: use existing textbooks to find out what you should learn, and learn it. Treat going through those books like a course. Many university courses also have the course syllabus online - looking through those for topics you should research yourself is also valuable. And, of course, MIT's Open Course Ware (http://ocw.mit.edu/index.htm) was designed with students like you in mind.

10 points by rbranson 9 days ago 1 reply      
If you want to learn fundamentals, you need to master C. The language itself is very simple and readable, but what it will teach you is how memory works.

Every algorithm & data structure worth implementing has been implemented in C and is probably available in an open source project. You can download Redis, which is fantastic code and covers all the basics. Take one of these projects and start trying to mold it to your will.

Write specialized string parsers in C for doing simple things you'd normally do with a script. If you do it right, it'll be several orders of magnitude faster.

Learn to use the GNU debugger.

Take blocks of algorithmic code you've written, learn pthreads, make them concurrent, and actually able to achieve linear increases in speed as you add cores.

Your greatest ally will be well-written open source code.

14 points by cjbprime 9 days ago 2 replies      
For what it's worth, the only way I've ever learnt anything significant relating to programming was getting a job that demanded it. Want to learn Linux? Install it on your primary laptop and get a job that uses it. Same for Python or Ruby and Rails or whatever.

So, I think your feeling of incompetence may be just a feeling of being totally bored by doing the same thing for five years. If you got a job that, say, demanded you immediately learn how to make feature changes on a PHP site, I expect you could do it fine.

This doesn't cover everything in your post, though -- you're right, it does take years to become a kernel or compiler hacker. There's plenty of work to be done with fewer prerequisites than those two.

5 points by lucisferre 9 days ago 1 reply      
It sounds like you may not be "dumb", but maybe just a beginner who is struggling to get to the next level. Here are a few questions I'd ask first before you decide programming is not for you.

1. Do you work with other experienced and passionate programmers who can mentor you?(http://chadfowler.com/2011/02/24/be-careful-of-who-you-work-...)

2. Do you know how to learn? A lot of people assume it just comes down to reading the material, I found this book explains the process quite well and it is put in the context of a software developer looking to attain mastery http://www.pragprog.com/titles/ahptl/pragmatic-thinking-and-...

3. Have you "cultivated your gurus" so to speak? Putting up a post on HN is a great start, but continually involving yourself in discussions in the greater community will help you to tap into a source of experienced mentors even if you don't work with them. Find groups for topics you are interested in and then involve yourself, ask questions, learn, then contribute to the discussion yourself.

4. Have you considered getting involved in some open source projects? These are a great place to learn from others as well.

In the end learning isn't generally as simple as just reading a few books for most people. I would consider starting with a few books on how to get your career development and your learning process on the right track and then go from there. Even if you do decide you're not cut out for programming, what you learn from those books will be valuable no matter what path you choose.

The books I'd recommend:



http://www.pragprog.com/titles/cfcar2/the-passionate-program... (will admit to not reading this one but I hear very good things)

Yes I realize these are all PragPro books, what can I say, they are that good.

13 points by jfm3 9 days ago 1 reply      
"Teach Yourself Programming in Ten Years"


"Structure and Interpretation of Computer Programs"


5 points by huxley 9 days ago 3 replies      
Take a crack at Python and Ruby (or another language if you prefer) just to widen your experience, even if you stick to Java it will be good for you as a developer. I did the migration from Java to Python a few years back and I'm still learning and unlearning, so don't get discouraged.

One bit of advice: Try to learn a bit about proper testing as you are learning your new language, it will be easier than trying to do it after you've learned and testing will help you build confidence in your abilities in the new language.

Two good books:

"Learn Python the Hard Way" by Zed Shaw


"Why's (Poignant) Guide to Ruby" by _why

Most non-rockstars forget Unix commands, it's not a big deal and you can help yourself by writing up a cheatsheet or googling for one. Practice and muscle memory helps.

I haven't had a chance to check it out but there is a PacktPub book on Python algorithms which looks interesting: "Python Algorithms: Mastering Basic Algorithms in the Python Language" by Magnus Lie Hetland

Good luck!

3 points by wh-uws 9 days ago 2 replies      
Read this http://www.andrewmunn.com/2011/01/how-to-land-an-internship-...

about halfway through there is a list of common things even the toughest interviewers in the industry ask about. Read about all of those just to get a good overview. He just talks about interships but those skills will get you fulltime also. Trust me a bunch of people would love to have that guy full time.

Second you have to read yegge.

He'll help you fill out most of the rest of what you need to know but most importantly teach you about a subject that will make you feel alot better about what you feel like you don't know. The interview Anti-Loop. Basically two interviewers at a large enough company could interview each other and no-hire each other because of the questions they would ask in an interview but are only there because a third that has different interests interviewed both of them.

Now you've got the basics of what you need to learn more about which is largely data structures and algorithms.

Now you're ready to do some functional programming. learn some lisp. I happen to be reading the excellent Land of Lisp book myself now and recommend that also their is http://learnyouahaskell.com/starting-out. I'm sure there are other free online resources other guys here will point out also

Now you can get into Norvig and SICP and go even deeper.

"Teach Yourself Programming in Ten Years"

"Structure and Interpretation of Computer Programs"

I didn't start with them because Norvig starts out discouraging you ,not that he isn't right about how it will take time to improve just that you will be amazed at how fast you can move when you really want it, and SICP can be really daunting if you start with it.

Also there is a great well of books and tutorials online about all the things you want to learn. Compliers to the cormen book you mentioned. The fact that you tried with that book means you are on the right track and you will get it.

Also I can't forget

and newcomer

Those sites are places to hone your skills by working on coding problems. The biggest thing you have to do is pick some topics/ problems you are interested in and CODE.

You'll be surprise how far you get and how fast you can get there.

13 points by jawn 9 days ago 2 replies      
People are not born with the ability of a Djikstra or whomever you idolize. It takes decades of diligent practice to get to that point.

Do not feel down about feeling stupid or inadequate, just keep working in a reasoned manner towards your goal.

You will get there.

4 points by Goosey 9 days ago 0 replies      
I feel similar to you. I wonder if being on HN is healthy for me. It exposes me to lots of new concepts and technologies, but only on a very superficial level since I am not diving into it... And it has a cost of feeding into an inferiority complex.

I have almost entirely started to avoid facebook for this reason. You always just see the bright side of everyone's lives, which can make you feel depressed if you are unsatisfied with your own. Likewise HN shows you the cutting edge tech, the cool startup scene, and a lot of writing from some very VERY smart people. If you don't feel like you measure up it can be an addictive way to reinforce that feeling.

Clearly I am competing with a deeper psychological issue and the ultimate solution is to accept myself, accept my limitations, and find peace. I am working toward this and making some progress. But I wonder if my progress is being hindered by such a flood of exposure of awesome like HN.

Many (most) thoughts I have had reading HN are clearly irrational. "I can't be happy unless I am founding a startup." "I can't be happy unless I am programming in language X." "I can't be happy unless I move to SV."

I recently severed a very close relationship because I finally accepted how toxic it was, even if that toxicity was largely due to my own loose boundaries. I wonder if my relationship with HN is the same thing.

tldr: HN exposes you to so much awesome that sometimes you feel like shit in comparison. You're not.

4 points by stcredzero 9 days ago 1 reply      
Hello. I've started working on a project aimed specifically at people like you. I find myself encountering folks on HN who program, who are even excellent people at what they do, but still lack enough background that they sometimes say or upvote patently false things. (In your case, I give you much credit for being self-aware!)

To this end, I'm planning to start "Breadth First Learning." (This is a reference to a page on Ward Cunningham's original Wiki.)

My intention is to cover the same broad CS material as "NAND to Tetris" with the same hands-on approach, where all the systems described are actually built hands-on, but with a focus on the "100 Things" that a programmer actually still uses 5 years out of school. The current goal is to produce a series of easy, fun lessons that can be worked through by any competent programmer in a few hours a week, over the course of 8 or 9 months. The first few lessons will be free, and the rest of the lessons will cost a dollar or two each. The value-add for this site, will be convenience and thoughtful presentation. Everything will be based on Javascript, so learners can casually open a browser page to fill in their CS knowledge gaps in their spare time.

Someone can easily gather all of the same material online, in greater depth for free, but our goal is to provide a convenient and relaxed environment, so filling in your background knowledge is easy, fun, and relaxing.

(I guess I should get a "coming soon" page up and gather emails. I just thought of this yesterday, so I'm not quite there yet.)

10 points by mrpopularity 9 days ago 1 reply      
I have a sneaking suspicion that this opinion will be unpopular... but it is mine, it's humble, and I'm entitled to it :)

You are stuck being a cargo-cult architecture-astronaut because you are stuck in a language that exemplifies and encourages it. ROR and python, while perfectly good in themselves, will allow you to stay there. My advice would be to take something 'horrible' but useful - PHP springs to mind - and play with it. Do fun stuff just for the hell of it. Do things quickly, not correctly. Correct things one by one and see which things actually make a difference, and which things were a complete waste of your time.

Memorising linux commands? What? Slap! Write yourself a cheat-sheet and remove that excuse from your head immediately. It'll take you 5 minutes. If it takes you longer, you're doing it again. Stop making the perfect cheat-sheet that covers every example of everything you may ever need, and write the 5-minuter that covers 95% of it.

Set a line between the front of what you're doing and the back. In front of the line, everything must be neat, useful and functional. Behind the line you can do whatever you please. The line is the part of the 'achieving things' model that cargo-cults miss - the difference between practice and theory. You might even surprise yourself about your coding ability once you start evaluating things that way.

2 points by georgecmu 9 days ago 0 replies      
Eventually I plan on going back to a real University and getting a CS degree

Here's a shortcut to going to a real university. Go to the courses' websites, read the lectures and do the homeworks. If you can find a course where lectures have been recorded (video, or even audio), so much the better. Chances are you'll find this approach easier to follow and stick with than working through a book. These lectures have been specifically designed to feed students knowledge in 45-90 minute chunks, and assignments have been designed to reinforce the lectures contents without overwhelming the students. I'm partial to CMU CS course structure, which basically is:

1. Intro to programming (basic Java/C++ course: principles and syntax)

2. Intro to Data Structures and Algorithms (some theory, mostly programming in imperative languages -- C++ or Java)

3. Advanced Data Structures and Algorithms (more theory, but mostly programming in functional languages -- ML)

4. Systems level programming (systems concepts -- memory, cache, page tables, etc; programming -- C and assembly)

5. Algorithms (CS theory, almost no coding)

I think you can safely skip 1 and 4, and even 3, to get CS fundamentals that would carry you far in enterprise-level programming world.

Here are materials you could start using immediately:

Data/Algo 1:

lectures: http://www.andrew.cmu.edu/course/15-200/s06/index/lecture_in...

assignments: http://www.andrew.cmu.edu/course/15-211/hw.html

Data/Algo 2:

lectures: http://www.cs.cmu.edu/~me/212/schedule.html

assignments: http://www.cs.cmu.edu/~me/212/assignments.html


assignments, tests and lectures: http://www.cs.cmu.edu/afs/cs/academic/class/15451-s10/www/

And finally trying to memorise all those linux commands I ALWAYS forget.

Make a Linux box your primary computer at home (if you aren't allowed to do it at work). You'll be surprised how quickly you'll memorize them.

5 points by jdefr89 9 days ago 1 reply      
You probably don't have a learning disability. You have simply come to grips with the fact computing is inherently difficult in a lot of aspects. When you go out and teach yourself, don't be discouraged by failure. You shouldn't read technical books like a novel, no one does, and those who claim they do are just lying. For more on that you can read this: http://web.stonehill.edu/compsci/History_Math/math-read.htm

Which describes how math books (and other technical books by nature) should be read and studied. Don't think after reading a paragraph, you should understand everything. Take it slow, and take the time to work out things on your own, the more this happens the easier it gets.

Also, whether you are good or not at problem solving, just remember that you should be enjoying the process of solving problems, not necessarily just the answer. It took Steven Hawking 29 years to make a big step of progress with Black Holes. Experimenting is just as important as the thought process is. Read something, test it, break it, try to fix it.

You also stated you had difficulty looking from new perspectives. This is tricky, but first get your creativity flowing, then ask all of these question. Why? How? Why Not (INSERT SOMETHING ELSE)? Will it work with this? What is the fundamental idea? Is there a way to change the implementation of how this is done, while still maintaining the proper outcome? Scribble down your ideas, and play with them.

For example, I remember when I was trying to fix my indoor toy flying helicopter after the plastic broke on one of the propellers. Instead of taping it I asked myself, what it was exactly I was trying to do, which was reconnect a broken plastic propeller. Then I asked myself what ways this could be done. After fooling a bit, I decided that since it was plastic I could simply melt it back together. You just have to learn to break things down, and chunk them together, and play with the elements of a problem.

Keep reading, learning, most importantly have some fun.

2 points by xenophanes 8 days ago 0 replies      
Hi. It's time for you to read SICP. The book and lectures are free online:


If you can learn SICP then you'll be in the top 5% of programmers in terms of understanding theory, and you'll be in a position to understand if you like CS or not. If you don't like it, then consider changing careers or setting more limited goals (like you could program not-that-well while caring more about the rest of your life, that's what most people do).

Do not go back to school, at least until after you read SICP. SICP is the single best thing that schools have to offer anyway.

I love Ruby and use it a lot, but if you want to understand programming then Ruby isn't what you're looking for right now, and definitely not rails (building a website isn't all that hard, kinda like java enterprise work). Ruby will annoy you less than java, but it won't make you feel like you really understand the concepts behind what you're doing.

5 points by nudge 9 days ago 1 reply      
Kudos for discovering something important about yourself.

Your path forward probably should be determined by the kind of work you want to do, but I think you know this.

Certainly don't be sucked into the new technologies because they're cool. Nor should you necessarily get a CS degree, depending on the work you want to do. You sound like you want to learn everything ever about computing, but that's a recipe for frustration and won't necessarily help you.

But anyway, good luck.

2 points by lkozma 9 days ago 0 replies      
Others have put it more eloquently already but I can just suggest the same: start working on a project and pick up what you need as you go. If you want to learn Linux, do something that involves some server side work: get some cheap web hosting account (or one almost for free on nearlyfreespeech as long as you don't have traffic) and start compiling programs from source, set up mod_rewrite, etc. etc. etc. Otherwise get a cheap computer, install Linux and configure everything as you want, hunting for answers on forums. By the time you are done, you will know more about Linux than most self-proclaimed experts.

Don't think about algorithms, data structures and all other topics as some huge roadblock, they really contain a lot of loosely connected topics which are not all that difficult if you look at them one at a time with enough patience. "What One Fool Can Do, Another Can Too". You get more out of reading a textbook when you already know disconnected bits and pieces and you want a more unified view.

Your writing reminds a bit of my friend who is the best guitarist I know, but has a constant inferiority complex, because he says he "doesn't know music theory". I don't know much about music, but if I try to get down to the specifics of what he doesn't know, it turns out that he actually knows a huge amount, but he still keeps repeating "if only I knew some music theory"...

4 points by FrankenTan 9 days ago 1 reply      
I apologize for not addressing the main question, but I'd just like to express that I disagree that you're not very smart.

It might be a knee-jerk reaction on my end when it comes to to the whole "maybe I'm not smart enough", but you're showing awareness of your own (current) limits, which isn't something to speak lightly of.

What are your experiences with problem solving? It's something you learn, like most things. You might not be able to 'think' in that fashion now, but I know quite a few people who swear their brains and perspectives have been reprogrammed through forcing themselves to study math despite lack of talent, and in my own experience you can learn to flex and twist your mind much like you can your body, even if just like with your body it might be easier or harder in some directions.

You might however lack the aptitude which make it more fun to engage in or otherwise lead many more savvy to programming and CS, and only you can decide wheter this is something that slows you down or stops you dead.

When I did martial arts, I had some students who were dismissive towards their less sports-savvy comrade since they took longer or had a harder time to learn the basics; but what they forgot were that they'd already learned all the periphery skills of using their body from other sports, for them it was a simple matter of learning one more skill atop their experience and skill at already using their bodies, the ones who were having troubles were learning several more skillsets at once since they hadn't up to that point.

The same could apply to you, people have the opportunity to learn or understand different things at different points in their lives; some lessons some of my friends learned when they were 12 which other friends learned when they were 60, partially since they hadn't had the opportunity to truly learn or understand them until then.

I guess what I'm trying to say is, try not to be discouraged because it's hard; it can sometimes mean you're not aware of all the things on your plate at the moment, and even if it feels you're failing you're probably learning something else that's also beneficial while you do.

Sorry for semi-rant, but that's the part I felt remotely competent to comment on.

I do however agree that projects are the way to go if you wish to learn or remember. I and my friends learn more from our personal pet projects than we've ever done at our University.

3 points by kragen 9 days ago 1 reply      
You can't possibly be taking as long as I did; see "my evolution as a programmer": http://lists.canonical.org/pipermail/kragen-tol/2007-March/0...

I'm obviously not in a position to evaluate your IQ, but to me you sound pretty average. If you stick with your determination to get better, you'll be better than average in a few years, because most people don't.

2 points by davidhollander 9 days ago 1 reply      
>Eventually I plan on going back to a real University and getting a CS degree, but I'm unable to do so at the moment

Come up with your own curriculum then. Invent homework assignments like the following:

1. Install a linux distribution: http://www.ubuntu.com/desktop/get-ubuntu/download

2. Install the languages you mentioned: sudo apt-get install sbcl ruby

3. Type 'irb', 'python','sbcl' to open interpreters for Ruby, Python, or Lisp

4. List the names of all the data structures and algorithms you've heard of and their operations. Be sure to include hashtables and b+ trees.

5. List the worst\best\average case runtimes for each operation.

6. Describe a practical use case for each.

7. Implement each by typing directly into one of the above interpreters.

You'll learn much faster, always get A's, and not have to spend any money.

2 points by __david__ 8 days ago 0 replies      
The best thing you can do is accept an assignment for work that is over your head. The kind of thing where you think, "I really don't think I have the skills to do this". Get the the requirements, any documentation you need and then just start writing. It doesn't matter if you do it wrong. Just do it. Make a little start. Then add a little bit at a time. It'll take forever. You'll have to backtrack constantly. But it'll be the 2 steps forward 1 step back kind of thing. You'll inch toward your goal. And suddenly it's a few weeks later and you're done.

I can't express to you the kind of satisfaction I've achieved when I've done stuff I thought I had no skill for. But those first 2 weeks are scary! I keep thinking, "Crap, I can't do this--I'm a fraud! Everyone is going to find out soon. Oh, what have I gotten myself into!" And then suddenly I realize in my brave attempt to just fake it I've actually accomplished something. My thoughts become "I think I can actually pull this off!" It's a very cool moment.

Diving into the deep end of the pool is the only way I've ever significantly advanced my skill set. Reading books/papers and writing little test things can advance your skill set incrementally, but biting off more than you can chew is the only way I've found to level up in life.

1 point by dstorrs 8 days ago 0 replies      
jrookie, I hear you. Except for the pain of losing your father -- which I have been lucky enough to avoid, and I am so sorry for your loss -- I have felt all of what you're feeling.

Mostly, I've felt it because I've (been lucky enough to and / or made it a point to) work with really talented programmers, people who were better than me. That is great for learning and very hard on the ego. Look at the people you're working with and ask yourself if they are ALL super geniuses, or if maybe some of them are simply more experienced and / or had the luxury of being able to focus more on their studies while at school instead of having to work and deal with the grief of losing a parent.

As to feeling like you're slow to debug and problem solve and whatever...don't. If you have the brains and the persistence to have made it this far as a programmer, it's very unlikely that you're actually dumb. What you ARE, self-admittedly, is inexperienced and under-educated. It is experience, not brilliance, that makes people fast at debugging: when you've seen similar problems before, when you have an array of exploratory / testing techniques that have worked for you in the past, then you too will be fast and all the younger programmers will look up at you and go "damn, I wish I could be as inventive as that guy."

Here's my best advice for you right now: stop focusing on learning for a while and focus on having fun. If you find that you enjoy programming, everything else will start to come easily. Here are some specifics on how to implement that:

1) Start a notes file where you jot down anything that seems interesting.

2) Follow your instincts; whatever you stumble on that seems interesting, do a bit of googling and read up on it.

3) Reading is good, but coding is God. If you don't write actual working code for something, don't imagine that you have learned it.

4) Don't push. Whenever you get bored or frustrated with something, put it down for a while. Go read about something else in your notes file. Or watch TV. Or take a walk. Or whatever you feel like doing at that moment. Give yourself permission to not be perfect; you'll find it amazingly liberating.

5) Take care of your body. This one sounds silly, but it makes a huge difference. Sleep enough and eat right. Tired programmers are stupid programmers and anyone who tells you otherwise is lying. The myths of super-productive 40-hour coding runs powered by Jolt and Cheetos are just that -- myths.

6) Definitely find a project, and do it in a new language. Choose a dynamic language for now; you can go back and learn the C/C++ memory management stuff later. Ruby or Python would be good choices, as they are highly employable languages that are used in both enterprise and startups. node.js would be another good choice, but is not yet as employable. If you want a suggestion for a project: pick a website that you like (ideally one with a public API) and write something that pulls down data from that site and stores it to a database.

2 points by Tycho 9 days ago 0 replies      
Some things that have greatly helped me from my time of pasting together snippets of VBA to where I am now (nearly finished building a Ajax enabled Python web-app that parses English into SQL):

- go onto iTunesU or MIT OpenCourseWare (or just find them on YouTube) and watch the video lectures. The three Stanford CS ones are excellent, and probably give you all the theoretical knowledge you need to proceed. There's a good one on Comoutational Linguistics which helped me get to grips with natural language processing and grammars, but is even more relevant for compilers (though to be honest I don't see why you need to know this unless you plan to actually write a compiler)

- read Code Complete. That's probably all you need to not be a 'douche bag coder' who causes more problems than they solve

- get into web programming. Grok HTML, it's quite simple. Next read Transcending CSS, it might take a month but eventually you'll 'get it'. Then work out how to do events and DOM manipulation with JavaScript (make things happen as the user interacts with the page). You can glue on some cargo cult jQuery here :-). THEN study Ajax - follow some of the tutorials on YouTube or iTunesU. It's not really complex it's just bitty and confusing at first (basically you create an XHR object on the page which acts as a halfway house for data going to and from the server without refreshing the whole browser page). Then finally choose a backend system like Ruby/Rails or Python/Django or ASP.NET or PHP and practice doing stuff with it. You don't need to be a big shot computer scientist for this web app stuff - just leverage the libraries and frameworks and platforms that people talk about on HN, and you can create great stuff. You just need to learn the details, which is ultimately trivial

4 points by stray 9 days ago 2 replies      
I know what I'm about to say will probably not go over well, but somebody needs to say it: try a programming language that is FUN.

Java is not fun.

I'd rather walk a mile barefoot on broken, salty glass in a hailstorm than to ever write another line of Java. At least my memory has mellowed -- I used to really hate it.

Some suggestions:

- Common Lisp: my current love affair. Something about the way the parentheses sort of round off all the sharp edges, and the beautiful symmetry of it all. After a while you can get a feel for how smoothly a form works just by glancing at its overall shape. It feels good to build things that are beautiful in every sense of the word.

- Python: So easy a manager can do it. Loads of awesome libraries.

- Racket: This probably would have been first on the list had I not accidentally organized them alphabetically :-) In fact, I'd even go so far as to suggest working through the book "How to Design Programs". Actually, you know what? If you'll promise to work through all the exercises in the book and pass it along to someone else who is struggling when you're done -- I'll give you a copy (years ago I mistakenly ordered two copies). PM me if you want it.

2 points by lelele 9 days ago 0 replies      
> I now have found that I lack the fundamentals of Computer Science, the things every programmer should know: Algo's, Data Structures, Operating Systems an understanding of compilers and being profficient with linux.

Sorry, but I'm not proficient at everything of this (especially Linux, maths and algorithms), and still I consider myself a talented coder. I'm very skilled at gluing code together (gluing with skill, not throwing things together). At the end of the day, what matters is whether you can make things work, and nothing else.

> OTOH I have given thought about if programming is really for me, I have found that I'm really, really bad at problem solving and "thinking outside of the box" I have come to accept that I'm really not smart. I'm slow, forgetfull, concepts never seem to stick, I have to force myself to not take things for granted, it seems no matter how hard i try I can't look at problems from different perspectives and understand the implications of a particular solution, I'm starting to think I may have a learning dissability, or that is because I lack the basic toolkit for problem solving, but I really think I'm just not very smart.

I think that before learning to think out of the box, you should start to live out of the box. Join an acting class, especially one where improvisation is stressed (I recommend you find an acting school which teaches Lecoq's method). Challenge yourself to do things you are bad at (in the beginning, I was very very bad at acting).

Try finding similarities between things in different subjects. Read "Neruda's Postman" by Skarmeta to learn what a metaphors are and how to find them. The more different the areas of human activity you'll know, the better you will be at spotting similarities and challenging your ways of doing things.

2 points by jonpaul 9 days ago 0 replies      
I forget shit all of the time related to programming. I then started a blog that just documented snippets to accomplish various tasks in various languages that I use. This way if I forget, and I do all of the time, I can refer to my blog. Double bonus: Google indexes the content and people come by to give alternative suggestions. Win-win.

Good luck.

1 point by T-R 8 days ago 0 replies      
It's been brought up a few times on HN recently, but I think it's worth bringing up again - Imposter Syndrome is rampant in our field. It's the reason a lot of people drop out or don't even get into it. You're far from the only person who feels this way.

Interviews and conversations online may lead you to feel like you need to beat yourself into reading books on operating systems or some other specific sub-field, but a sincere interest in things like garbage collection isn't the only path to success. Algorithms comes up a lot because it's easier to filter for people who know the topic well, but those people have gaps in their abilities, too. Those topics aren't more important than things like domain knowledge or writing maintainable code, they just aren't always as easy to recognize, test for, or brag about.

Sure it's good to learn them, but learn them when you have some motivation to - start writing a game and then read about path-finding. Learn RegEx out of an interest in shortening some code at work. Turning learning into hard work by forcing yourself to learn about things that don't interest you is just going to make learning more difficult. What's important is just that you learn something - so relax and do something fun.

3 points by joh6nn 9 days ago 0 replies      
so far in this thread, there isn't a single post belittling the OP; almost everyone has immediately stated "you're not stupid". i think that's probably the most encouraging thing i've seen all week.
4 points by shawnmorel 9 days ago 0 replies      
I second SICP. I would definitely look at eh SICP video series filmed at HP a while back: http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussma...

I went through these after a rigorous college CS experience and several years of work experience and still found "ah ha!" moments.

It's a good solid foundation in 30 or so hours. The text is also available online for free.

2 points by mynegation 9 days ago 0 replies      
First of all, do not ever call yourself "slow" or "not very smart". This is just not true. I haven't realized that English is your primary language until you mentioned it Granted, English is not my native language either, but the point is: if you could get this far with the natural language you're definitely have anything but the learning disability. And having a stable job after dropping out of college is no small feat either.

Algorithms and Data structures. I have CS and Applied Math degrees, but honestly - very rarely I have to recall the inner workings of specific algorithms and data structures. It is useful to know how it all works, but not as important as you may think. You can certainly follow "fake it till you make it" approach: you need to remember memory and time complexities of the data structures and some implications, e.g. "hash tables have asymptotically O(1) search time but may consume more memory than red-black trees that provide O(log(n)) search time but have guaranteed memory and search time constraints". And so on and so forth. So go ahead and read Cormen with that in mind.

Also, my guess is that you need only as much CS as you need to become a better software developer. I don't think you want to be a theoretical computer scientist, do you?

In your situation I would also recommend reading following books:

"Structure and Interpretation of Computer Programs". Honestly, to CS graduate it reads like a book for preschoolers but it is very beautifully written and is almost zen-like. And it will definitely help you understand what programming is about if you did not get proper formal training.

"Design Patterns". It is not a CS, but Software Engineering book. It provides a framework for your software design skills. You can be a great programmer without reading that book, but then you have to be exposed to a lot of beautifully designed code, and that book will save you a lot of time.

Find a popular and stable open source project that is closest to what you are doing now or what you want to do and read the code, look at the build infrastructure, documentation, try to get involved and maybe even fix some bugs, starting from simplest ones and moving up to features. You'll get a lot of brutally honest peer reviews, just don't abuse it.

Hope that helps.

1 point by mquander 9 days ago 0 replies      
Try TopCoder. Three problems in an hour. The easy problems are sufficiently easy that I guarantee you'll be able to do at least one or two of them, so you won't feel like an idiot, and spending time thinking about the harder problems will ignite your curiosity about how you could have done them, giving you a perfect push to learn new algorithms.
2 points by jedcn 9 days ago 0 replies      
Consider giving yourself a break.

You talk about going back to school, finding a new job, overcoming a learning disability, learning computer science fundamentals: data structures, algorithms, operating systems, software design, discrete mathematics, compilers, and command line essentials.

I think you will feel better if you step back and focus on one thing at a time.


Perhaps you should pick a new language, pick a well known introductory book for that language, and then commit to spending a few hours after work every day going through the book. You can do this on your Windows work computer- don't bother to learn the ins-and-outs of a new operating system.

Read each page, type out each exercise, consider how what you're going through relates to what you already know.

If, after a month, you're making progress and still looking forward to spending time with the book after work, I'd bet programming is for you.


As a next step, find a local user group for whatever language you pick and drop in. If they seem like nice people, if they are talking about interesting stuff, if it is something you enjoy, keep going back.

After three months, I'd guess that you will have finished the book, you will know a bit more about a new language, and you will have met some other people in your area that area up to something interesting.


While any language and book will do, try to find something basic that you can finish in a few months. If you're looking for a specific suggestion, you might try ruby and http://pragprog.com/titles/ltp2/learn-to-program.

Take care.

1 point by dkarl 8 days ago 0 replies      
For algorithms, have fun on TopCoder. Work problems from past competitions, read the writeups, figure out how to solve new problems, and have fun competing. Competing at a high level requires a lot of extraneous skills you aren't interested in, but if you just concentrate on solving the problems, you'll learn all you need to know about algorithms.
2 points by penquinone 9 days ago 2 replies      
A couple of thoughts. One, there's a ton of work that doesn't need databases, or operating system knowledge. It helps, but its not essential. Android developers are hot hot hot right now, and its not a huge system to learn (I'm a mobile dev manager).

As mentioned before me, you can learn a lot on the job. One of the best dev's I know never finished college either.

I am always looking up the proper syntax of commands (find -exec anyone?) It just takes repetition and the constant thought that "maybe there's a command that does this better".

Finally, put down the math books. Put down the compiler books. Data structures and algorithms, sure, but those others. Bah! Now, if you want a supplementary book that helps a ton, pick up a patterns book, preferably the "Gang of Four" book (http://en.wikipedia.org/wiki/Design_Patterns). It helped me to look at problems in a bit more of a formal sense, and it allows me to say "Oh this is such and such a pattern" and other devs get it immediately.

Don't get discouraged. You may just need a new job where you are mentored if you feel like your skills and experience is meaningless. Your desire to learn and your passion for your chosen career make you a fertile ground for training.

Good Luck!

2 points by sky87 9 days ago 1 reply      
The problem is, if you "try to think outside of the box", of if you "try to remember things", you will not be able to... And if you stop and think about when you tried to do those things, well you will probably notice that you passed almost all the time worrying, or doing something else as useless as that.

The point is that you shouldn't try to do something, you should do it, i.e., you "span" a desire in your soul and you go along the feeling, the "thinking" is just for control, not substance... at first you will litteraly be bugged by thoughts like "i'm not good enogh for this" etc... aknowledge the existence of those thoughts, and then throw them away.

Yours is a post about bad self-fulfilling prophecies.

It's not really a matter of intelligence for the most part, it's only a matter of experience.

PS.: oh, and AFTER you got rid of the bad self-fulfilling prophecies, you could try to create some good ones :)

Good luck, you are going to need it

1 point by mcarlin 9 days ago 1 reply      

You have the most important problem solving skill of all (and one of the rarer): recognition of your own limitations.


(Hopefully more later if I think of more)

Addendum: I don't feel like it's as important to take classes in computer science. More important is to take classes in math, because math is a lot harder to teach yourself.

Once you learn a little math (say discrete, number theory, and linear algebra), I think you will probably have the mental toolset to think scientifically and learn a lot of the computer science on your own.

A basic class in data structures and algorithms might be nice because it will give you homework and fill in some gaps you might have from teaching yourself, but after that, computer science learning can be largely self directed. Automata is a really nice class to have if you can find it, because it ties in with the math, but it's not necessary for most industry programming.

I never took classes in optimal search algorithms, computer vision, or statistical programming, but I've done work in each of these three things. I taught myself as much game programming, graphics and user interface stuff as I learned in classes. I had classes in compilers, languages, automata, AI, robotics... these were all great, and not things I could easily have taught myself, but they were also specialized, and haven't been so directly relevant afterwards.

Linux is all experience; I haven't been on the job long, and I'm still learning it. Earlier this week I found out that I was running some of our servers to max CPU usage because I left greps running on them (didn't know the difference between suspending a process and putting it in the background)!

Quitting is also totally cool if you can manage it. I used to be a graduate mathematician. It was very hard to figure out that this wasn't what I was supposed to be doing with my life... but figuring it out and leaving was the best thing I ever did. I would have been very unhappy. Now I'm happy! I was also extremely fortunate to have a father who was happy to support me switching fields. Your post reminds me how important that was, and makes me grateful enough that I think I should go call him.

Good luck, and... uh... <small voice> a hug.

1 point by stonemetal 9 days ago 1 reply      
You might find "The Elements of Computing Systems: Building a Modern Computer from First Principles" interesting. It is broad, it covers pretty much everything you mention wishing to know, but somewhat shallow (It is only 350 pages after all.) So far it has hit on the somewhat less rigorous side, so it would probably be a good fit for someone who thinks they lack mathematical maturity.

I just don't want to be a cargo cult programmer anymore
Then don't be. The main thing to do is Practice (note: work isn't practice.) Basically build something, but at every step of the way try different approaches and measure the results of what happened. Every step of the way look for ways to improve what you do.

1 point by xpaulbettsx 9 days ago 0 replies      
Keep at it - if you keep reading books and learning, you will get better, even if at the time it feels as if you're not making any progress.

You'll work and work, and it seems as if you're getting nowhere, then suddenly one day you'll wake up and you'll look back and realize, "Wow, I really have come a long way from where I started"

1 point by forkandwait 8 days ago 0 replies      
Don't go back to school for CS, go back to school for mathematics and take a CS minor, concentrating in the algorithms and data structures that you are interested in. You might learn more Unix hanging around physicists anyway..
1 point by mshron 5 days ago 0 replies      
It may be too late for this to be seen, but there's another point I expected to see somewhere on here that should be said.

Read other people's code. Find small pieces of software that do the kind of thing you would want to do that are written by people you know are talented and see how all the parts fit together. Maybe there's one at your job, or a well-polished but small open source project.

Run it through a call graph generator. See what they encapsulated and what they didn't. Look at any unit tests, if they're there. Most of the real software that I've looked at is much more about knowing how to lay out logic than it is about particularly advanced algorithms.

Algorithms are certainly good to know, but there's a reason why computer science and software engineering have two different names.

1 point by chirp 8 days ago 0 replies      
I can't say don't go back to get a degree, but I can speak from my own experience that I learned more in my first 1-2 years working than I did taking classes. CS is very centered around academia and the science of computing, not how to program and get things done.

You forget stuff too eh? Here's a simple solution that I think everybody should do, not just you. Take notes on what you do. Keep a little recipe book of things you've had to look up and figure out. At least you might recognize that you've seen the problem before and have solved it, then you can just go to your own reference to refresh your memory. If you're diligent you'll get a great resource in the end. Make sure if you do this to back it up.

Honestly, it sounds to me you read HN too much. There's a lot of shit on here about what everybody thinks makes a decent programmer and it can make anybody feel that they don't have skillz. Take it with a grain of salt. If you like what you do, you're always interested in learning more and you realize you don't know it all(this obviously is the exact opposite of your problem) then that's enough.

So learn about compilers and discrete math, and FFT, etc, if only to give yourself some familiarity with them for future reference. But please don't force yourself to learn about all of that unless you've got a keen interest, and learning about each subject is the goal rather than a chore that's in your way of being a "good" programmer. Learn what you need when you need it or you're liable to burn yourself out.

I too am sorry to hear about your dad.

Whatever you might think about you being a "cargo cult" programmer you sound like a good guy. Good luck!

1 point by cabalamat 8 days ago 0 replies      
> I'm still not decided whether I should learn Ruby on rails or python or Lisp

If you're interested in learning new stuff and building web apps, you might want to look at Groovy and Grails, because Groovy would be easier to learn for someone with a Java background.

2 points by jaymc 9 days ago 0 replies      
Fear not, man. When I read this post I was like "yea, that's me" at least ten times. Except when I went back to school I got an MBA instead of CS degree. Anyway, tons of good advice here that I won't bother regurgitating. I just want to chime in and say that I've been where you are. I'm still holding down my corporate job but I am the product VP at a startup and currently working on another project on the side. I still have MUCH to learn in the way of hacking/coding but that's never gonna stop. Just follow the good advice you've gotten here and keep your head up.
2 points by teichman 9 days ago 0 replies      
For remembering things: check out Anki, or any other spaced repetition system. Rote memorization isn't the complete solution, of course, but problem solving becomes vastly easier when the components of the solution are readily available in your mind.

For some reason our schooling systems haven't picked up on how incredibly useful the spacing effect is. Use it to your advantage! It has made a real difference for me.


1 point by satori99 8 days ago 0 replies      
Have you ever stuggled with any programming task you have been assigned by your employers?

My history sounds a bit like yours (minus the family tradgedies). I am a self-taught programmer in my mid 30s, who for years, had only the sketchiest knowledge of advanced algorithims and data structures, but I could make-shit-happen(tm) for my employers regardless. Hell, some of them even thought I was genius, when I knew I was a fraud.

A friend of mine, who I consider to be a 'real' software genius , once told me "Relax, eveyone is a fraud".

She was right.

Being successful doesn't seem to have much to do with how many linux commands you can remember, or if you can write code for a threadsafe linked list on paper. Past projects and a github account that can be checked out by employers are more important.

I used to get really anxious about not having not any teriary qualifications or certificates at all, but it turns out most people who do have them are crap anyway.

2 points by poink 9 days ago 0 replies      
If you want to be a hacker, learn like a hacker. Build something you have no idea how to build, then when it sucks figure out why and either rebuild it or go find a new project that's more interesting/challenging.

At some point you'll be able to get a job helping people who haven't been building stuff as long as you to avoid mistakes you've already made.

1 point by fforw 8 days ago 0 replies      
Cargo cult programming means copy and pasting code from examples and tutorials, often with a false or without deeper understanding of the code copied.

The first remedy against that is to understand the stuff you have been copying. That alone elevates you from cargo cult programmer to a copy and paste programmer. Now you need to understand why copy and pasting is a bad way to program and how to structure your code so it is better.

This is a totally different thing from learning nifty algorithms of people being far cleverer than you are. As someone else already said, you can go a complete programming career with happy coworkers and customers and never really go deep into algorithms. Learning and practicing good software engineering practice will help you more than abstract CS concepts.

3 points by Metapony 9 days ago 1 reply      
What does Cargo Cult programmer mean, anyway? Do you leave comments in your code pleading "John Fromm fix this!"?
2 points by WalterSear 8 days ago 0 replies      
I think you are going about it wrong. Find things to solve that you are excited to solve, rather than 'improving yourself'. I mean make games, puzzles, stupid shit - whatever seems fun to program. Do it enough, and you will start having to stretch your skills.
1 point by navs 8 days ago 0 replies      
Mentioning Discrete Math brought back some memories. I always felt it was unnecessary until a project required me to use math. It was trivial, high school level math but regardless, sometimes that's all it takes for the arrogant student to realize Discrete Math has its merits.

I can't offer any valuable expert advice since most of my programming skills involve stitching existing tools together with very little in the way of actual programming. Sometimes though I fall into a project that makes me genuinely passionate about programming and all my self doubts are erased.

From one cargo cult programmer to another, good luck.

1 point by Consultuing 8 days ago 0 replies      
You are not doing that bad. It took me a lot of time to discover that about everything I've written so far is not something I'd write today.


Then I realized that realizing that you're not that good is the first step towards becoming really good.

1 point by Behi 8 days ago 1 reply      
There are some EXCELLENT and FREE lecture videos from Stanford, MIT, Berkley, and other universities available on iTunes U about Operating Systems, Algorithms, and Data Structures. Each sessions is about 1 to 2 hours. So if you do things step by step, it should be possible to watch 2 lectures per week, 1 course per 2 or 3 months.

Here are the links:

Operating Systems and System Programming:

Introduction to Algorithms:

Data Structures:

There are other series available on iTunes U as well, but don't worry, relax, do it step by step and then you might want to have a look at the rest of the series too.

1 point by seddona 9 days ago 1 reply      
Firstly I'd say don't get down about it, my guess is that over a certain level (which you are no doubt at) IQ correlates poorly with success.

What are your soft skills (social, sales etc) like? There is a real sweet spot for people that can span both worlds. That role is a lot of fun too.

1 point by mapster 8 days ago 0 replies      
you could be a great programmer, just need a better teacher. The fact that you are here and asking this is reflective of some intelligence. You don't need to be an A++ programmer - I am not - not every employee at Google is a hacker.
1 point by r250r 7 days ago 0 replies      
"... bad at problem solving ... really not smart ... slow, forgetful, concepts never seem to stick, ..."

So you don't know everything, and you realize it. The people who are the most stupid are those who are certain that they know everything that matters. So you're not stupid.

You want to better yourself. Again, that's good. You're motivated.

You mention some subjects you wish to learn more about. I'd ask for advice on which books are best. Buy those books and skim through them. Keep the book(s) nearby; when you get into something that you need to know more about, crack the book open and read the section. That way you can implement it as you read about it, and you'll understand it far better.

1 point by bitanarch 9 days ago 0 replies      
To be good at programming, you first have to enjoy it.

Try contributing to an open source project, and make a few friends in the FOSS community. Treat it as an art. You'll be good at it and happy eventually.

1 point by gsharm 7 days ago 0 replies      
Figure out what you're trying to do, convince yourself of why you're doing it and then figure out a way to do it. Consider everything else a distraction.
1 point by dorkonian 8 days ago 0 replies      
Thats what "enterprise" programming does to a man, you either hit the bottle or GTFO.
Ask HN: Changing languages, professionally
7 points by bluesnowmonkey 2 days ago   8 comments top 4
3 points by timrobinson 2 days ago 0 replies      
I responded to a similar question yesterday: http://news.ycombinator.com/item?id=2285213

Just because you have some technical skill, doesn't mean you have to put it prominently on your resume. If you don't want to do PHP jobs, take PHP off your resume.

Can I program COM/NAnt scripts/batch files? Yes. Do I want to get paid to do it all day? No. Do they appear on my resume? No.

3 points by A1kmm 2 days ago 0 replies      
Why not put Free / Open Source on your resume so they can't avoid seeing it? Experience is experience.

A company name, length of time, and languages / platforms used is really all you need to say if there is nothing better to put in the space; I expect references would be helpful for most clients in that case, however.

5 points by RBerenguel 2 days ago 1 reply      
I'd add open source project along jobs. I.e. if you "worked on open source project A from april 2009 to june 2010", put this along "worked for company A from march to august 2010". Add then a link to the relevant repository and let the interviewer decide if it is relevant or not.
3 points by robinwarren 2 days ago 1 reply      
As a person who's been doing some hiring recently (http://www.covalentsoftware.com/company/careers.php if anyone's interested in Java work in Taunton ;))...

I'd suggest definitely putting OS projects on your cv, if they're more relevant skills wise personally I'd be happy to see them ahead of your career history, probably with a quick explanation as to why above them.

What sort of jobs are you going for? I do occasionally get cvs from people with a lot of experience in other languages, and some in Java which I'm hiring for. The main problem is they're being put forward for positions based on past experience in other languages. Whilst a lot of what developers do is transferrable I have to measure them against other applicants with more relevant experience so often they're too expensive vs the competition. If they are applying for a more junior role to balance this out there's then a risk to me they won't be happy with the salary I can offer them and/or will return to their previous work.

Given the above I'd suggest tacking the risk by explaining you're trying to move your career into a new language hence applying for the role. This may also feed the ego of whoever you're applying to that they're working in a desirable language. If you are willing to take a slight step down based on moving away from an area of expertise you can then differentiate yourself against other applicants based on your broader experience.


Advice from HN: I'm about to be fired because I declared prior IP months ago.
18 points by DudeWithPriorIP 3 days ago   11 comments top 6
1 point by drallison 1 day ago 0 replies      
You really need to consult two lawyers, one who specializes in labor law and another who specializes in intellectual property law. In this case you may want high profile lawyers to demonstrate your degree of concern. If you are fired over this issue, you may have some recourse. BTW, I am not a lawyer and so I am not licensed to give legal advice. (include <standard.disclaimer>)

I would suggest that you put together a moderately short memorandum of the facts. You will need a time line, dates and names of attendees of meetings, summaries of what happened at each meeting and what happened. If you keep an appointments diary, copy out the relevant pages. Collect copies of all the employment documents. This will save time and money if you need to go forward. In the future, when you have a meeting with anyone involving this, write a memorandum to the file recounting exactly what happened with quotations, agreements, action items, etc. Keep everything factual and avoid editorial content and presumptions of intent.

Check your employment and intellectual property agreements. I suspect that your employer does not have approval rights on your excluded intellectual property declaration. The purpose of that declaration is to make the company's job simpler--they claim to own everything you did not exclude--and since it describes your intellectual property prior to the point of employment, they have no say in its content, you own what you own. I can imagine a situation where the company might ask for a clarification of what you are excluding, but they really have no right to challenge the substance. Moreover, I further suspect that the fact that they did not come back to you in a timely fashion and that they went ahead and employed you immediately would be interpreted as _ipso facto_ agreement that the declaration was an adequate description of your excluded intellectual property.

1 point by ScottBurson 3 days ago 2 replies      
I don't entirely understand. You've already filled out the prior IP form, right? I take it they're asking you to fill out a new one? But you have your copy of the original one that they signed, don't you?

IANAL, but I think you should just quit. This is not ethical behavior on their part. If you go along with what they're asking, you're essentially abandoning your IP rights, in exchange for nothing but continued employment. I wouldn't want to work anywhere that even asked me to do that.

Yes you can and should consult an attorney, but if the situation turns adversarial, you might as well quit.

IP-related conflicts of interest are a real problem for anyone with entrepreneurial aspirations who nonetheless needs to take a traditional employment position. I think the best policy is to avoid working for companies whose businesses have much overlap with one's own plans (I have done this on occasion myself).

Yes, that probably means taking a less interesting job, possibly even making less money, while you work on your project on the side.

The suggestion someone made to sell your IP to a holding firm is a very interesting one, but I don't understand the implications. That company will somehow need to defend its IP rights at some point -- at least, the way this is going, that outcome seems likely -- and I don't know how it's going to do that, unless you can get a patent filed in a couple of weeks. Even then, to litigate a patent you need money.

It's more than possible I'm missing something, so maybe you should look into that option, but my initial reaction is not too optimistic.

8 points by freddealmeida 3 days ago 0 replies      
best solution is to create a holding firm. sell your IP to the firm. The firm now owns your IP. You no long have prior-ip issues.

Your lawyers will show you how to do this nice and legal.

good luck.

8 points by tnorthcutt 3 days ago 1 reply      
I strongly suggest you speak to an attorney.
1 point by Swannie 3 days ago 0 replies      
I feel for you. One of my perceived barriers to my on-the-side startup idea is this very thing.

If you get to fill in the form again, declare yourself as a director of the company /you will form/ to hold your IP. That's all, do NOT list the IP. The IP baggage is then not with you, per se, but with the Ltd company you created.

Sounds like my perfect nightmare, I hope this resolves itself!

1 point by ms4720 2 days ago 0 replies      
does not the employer have a problem here, perhaps more so then yours. After all without clearance their IP is tainted from a purchasers POV. And you did declare it before you were hired. That they did not do the due diligence BEFORE an offer is made, and accepted, could really cause problems for them. You should really talk to a employment Lawyer, your position may be much better then you think it is.

good luck

       cached 6 March 2011 20:05:01 GMT