You're 26, and you're not good enough.

I'm 51, and I still don't know what I'm going to do when I grow up.

When I was 26, I was writing a test tool and a test plan for MacTCP 1.2. Not long before that I was very excited at first to have saved enough money to purchase a used 700 MB - yes megabyte! - SCSI drive USED from the Usenet News, then quite a while after that, I managed to save up enough money to purchase the second megabyte of memory for my Mac Plus, thereby enabling me to run Multifinder on Mac OS System 6.

But for my next job, I was the Product Development Manager at Working Software, I had an office with a door I could shut, I had a direct report, and the very finest Mac in the entire company. A few months after I started at WSI, I shipped my very first shrinkwrap retail product, a keystroke recorder called "Last Resort". It wasn't for espionage but was a useful tool for saving valuable text in the event of power failure, system crashes &c.

So you are 26 and your life has been a complete waste.

When I was 27, I shipped my very first product that sold like hotcakes at $9.99.

You are comparing yourself to people like Mark Zuckerberg. Consider that he was paid by some upperclassmen to write The Facebook under contract; he later settled with them after they sued him for stealing their work. He went on to quite openly state - in a very public way - that one should not hire older employees. I don't clearly remember but I think he said one should never hire anyone older than 25.

In the US, it is a civil offense to discriminate for reasons of employment against anyone over the age of 40.

I write quite a lot of good, working code around the time that I was your age, but even so these days I do not regard myself as having had much of a clue at the time. For example I was completely unaware of the existence of C's assert() macro. I spent a lot of time in the MacsBug machine debugger that would have been quite unnecessary had I used assertions rather than single-stepping assembly code and looking at CPU registers.

Looking over my entire career, I regard myself as having really come into my own as a coder right around June 2000. It was then that I figured out how to write C++ code that was completely free of memory leaks or pointer errors, however it wasn't until a couple years after that that I really took automated testing seriously.

In early 2002, the head coder for my Bahamian Hedge Fund client said to me "Your code is by far the best in our codebase". That particular code went into production with no known bugs; a year later, no bugs at all had been found. When asked to implement what I later delivered myself, the original author of that 100 engineer-year Windows executable asserted that "it couldn't be done".

So I got pretty good in 2000, when I was 36 - ten years older than you are now - but awesomely good when I was twelve years older than you.

Give yourself time.

My concern these days is, for the most part, how rich I'm going to get, what product I might ship, whether I can ever vest any stock that turns out to be worth more than one square of single-ply toilet paper.

No.

My concern these days, is what software I can write, that will still be in use ten thousand years from now.

I want to be remembered after I'm gone, you see.

My ex-wife Bonita Hatcher, a devout Shambhala Buddhist, pointed out many times that I would never know whether I had been remembered, seeing as how I was dead.

But I do know very well that when I lay on my deathbed looking back on a life well-lived, I wasn't going to wish that I had shipped more product.