25 years of coding, and I'm just beginning
dev.to
dev.to
Yes, perspective is important, and I’m not saying one should not strive to make more of an impact if you want. Just don’t overlook the fortunate times you live in and the benefits you enjoy every day.
You don't have to do anything "globally". We're not pop culture superheroes out to save the world. The obsession with "making a dent"-porn has to stop.
If more people were "very nice on a personal level" we'd already be paradise.
By this metric, most of humanity probably feels it worthless, isn't it?
I understand this is HN and people here achieve more than the normal crowd - still, I don't get the obsession over being productive every second, the need to "produce something truly outstanding" etc. Whats wrong with just being happy, taking it easy, spreading happiness around us and just living a simple life? Instead of optimizing every waking second and moving the goal post until the day we die?
> By this metric, most of humanity probably feels it worthless, isn't it?
Everyone can produce something outstanding. We often confuse that with the recognition that comes from that something becoming noticed by others.
Do something you love, for the love of doing it. Of course, keep the family happy, fed, and housed, but never forget we are more than work and money and that our worth is not derived from how others see us.
We HN'ers like to do a lot and we often get recognition from that, but really makes us who we are is what we love doing. The rest are side-effects not goals.
The reason why so many are depressed and unhappy no matter what they do.
This, right here, is the summary of all technology now. Millions of people with millions of (mostly bad) ideas, flooding the world with unprecedented ease and access. Yay convenience...
What I believe the quoted commentor was trying to get at was that some people have goals for happiness that are harder to achieve, but also can't be replaced for something else.
Despite the fact that everyone's parents managed to do it.
Each to their own though.
Citation needed?
The business also takes on risk for paying software developers to develop products which may not be successful.
Suppose you own a beat-up old car. Instead of sitting on your butt next summer, you could spend the time restoring your car to pristine condition. In doing so you create wealth. The world is-- and you specifically are-- one pristine old car the richer. And not just in some metaphorical way. If you sell your car, you'll get more for it.
In restoring your old car you have made yourself richer. You haven't made anyone else poorer. So there is obviously not a fixed pie. And in fact, when you look at it this way, you wonder why anyone would think there was.
Still remember the paper about the externality of bee farm and apple farm. Obvious issue of apple not paid the bee farm but no such issue - all paid and in fact have contract what kind of bees etc.
A bad economic example is bad example.
What are you trying to say? This sentence is nonsense.
But allegedly it turns out that in at least some cases where you have beekeepers and apple farmers near to one another they do trade with one another -- with e.g. contracts stipulating what sort of bees the beekeepers are going to keep -- and the market does do its thing, and the result is efficient allocation of resources.
Here's a paper by Steven Cheung about bees and apples in the Pacific Northwest. It claims (I haven't checked any of its empirical claims or its theoretical analysis): https://www.jstor.org/stable/724823
It makes me wonder, if we were to go full on Jurassic Park and clone some creature from 100mya, would it be able to thrive in today's environment? Would it have sufficient immunity, and be able to digest meat/plants from the present day? Even the alligators have evolved a bit since then.
Historically, the atmosphere was thicker and had a higher percentage of oxygen. Those dragonflies with two foot wingspans could not survive in the current atmosphere. Insects don't have lungs per se and the current lower atmospheric pressure and lower oxygen levels means you would need to basically give them their own pressure suit.
My general understanding is the same would be true for dinosaurs: Their lung design and large size would mean they would need life support to survive at all.
I've never restored a car to pristine condition but have kept quite a few on the road as daily drivers and they were certainly cheaper than buying a new car every three years or so by a huge margin. My current "clunker" is an '87 Goldwing that should be on the road in perfect driving condition with a few hundred invested in parts once I get around to working on it. Heck, might even get the neighbor to give it new paint since he offered "a good deal" a while back and still be ahead on resale value.
I realize this is missing the point, but this is why one should pick metaphors carefully.
[1]https://www.hindustantimes.com/lucknow/road-accident-deaths-... [2]https://www.forbes.com/sites/ronakdesai/2018/03/07/india-con...
Selling is adding value. If you make something great and nobody uses it, how is that different than never making it in the first place? It would have no effect on the world and nobody would be better off because it exists.
Software adds value to the users and the users need to find out about it and be convinced to purchase it in order to realize that value. That's the case for any category of product.
Compared to what? And someone might propose an alternative system as if to say "well it's better if we do it this way" and you could argue it both ways that they were exploited under the new system too.
The fundamental problem is you need to eat. No matter what political or economic institutions exist, or if any even exist at all, as long as you are alive you are never absolved from having to eat food. For the vast majority of people this means you have to do some form of work. In the base case it means you are a hunter-gatherer and need to forage. This takes all your time and I'm not sure how enjoyable it is either.
Imagine just how ridiculously magical the notion of financial independence through passive income combined with a market where you can procure all the necessities of life would be to a human being living at the turn of the Neolithic Revolution ~14,000 years ago.
It just blows my mind. And people want to throw around words like "exploited". Woe is me.
The point is, if you think that it’s just so easy and starting a business means you get to reap the benefits of someone else’s hard work, then go for it. Why doesn’t everyone do that?
Of course it's not a sure thing, but a) neither is it with most of the startups that raise a seed round, and b) failure without seed money doesn't mean "aw shucks, it didn't work out, I'll try again in a couple years", it means their personal finances and credit have been decimated and now they can spend the next N years clawing their way back to zero (remember the student loans they still have).
I closed my Facebook account years ago and have never missed it. I'm a lot richer (literally and figuratively) for not having wasted a thousand more hours on it.
*
Of course one may add other may be unnecessary concerns - whether the world we live in are better for our kids than we do. We have enjoyed no world hot conflict for decades. Environment can be used and within our life time ... ba la ba la. Are our kids better ?
Or many things happened in the last several years challenge all our knowledge of society - trump and Brexit and the raise of communist china etc. We live in interesting time.
Just relearn swift (forget quit a bit after my iOS app on app story in 2015).
Work, on the other hand, has a defined start and endpoint. Ideally, it produces something enduring and unique.
In ancient times, labor was looked down on as something that slaves did. The lowest in society did the back-breaking, life-sustaining work anonymously, while rich, propertied elites built empires, wrote philosophy, and invented new technologies.
The world has changed since then, but I think there's something useful in that distinction. Capitalism transmutes nearly all work into labor. Almost every profession feels like it's performed solely to "sustain life" whether it's plowing fields or producing software. It's all just a salary. So I'm not surprised when I hear that people feel they have "nothing to show for it": they usually retain no ownership of the things they create and it all seems like one long endless task.
We're primates who by nature are very hierarchy oriented. We judge our lives by how high in the hierarchy we are. And no matter how rich society gets, how good our homes, health, food supply and culture are, we still end up on average in the middle of the pack.
And maybe that's what feels like you have "nothing to show for it".
The tendency of evolutionary psychology to assert that life is governed by primal instincts established in harsher times isn't politically neutral.
But "people really care about social status" does not rest primarily on that at all. I just threw that in to sound a little Malcolm Gladwell.
PS The tendency to deny evolutionary psychology isn't politically neutral :)
I suspect the modern media doesn't help, it is full of people appearing to live richer lives than are attainable by the majority.
Perhaps we need to impose some real hardship on ourselves now and then to remind us how good we have it.
But it's Capatilisms fault.
In particular, in white-collar work is something that abstracts you almost completely away from reality. You come in, do whatever arbitrary thing you're asked to, and get money for it, which you can exchange to services of the modern society. Any contribution you may have is separated by a couple layers of abstraction from its real-world result, so there's almost nothing you can point to and say "I made that".
Your comment also reminded me of my own thinking on a slightly different subject - maintenance. Maintenance is essentially synonymous to "labor" here, the repeatable, unending activities needed to support things we want, as opposed to being the things we want. It's something I always believed we should strive to get rid of entirely.
Really? I'd hazard a guess that most of Hacker News could point to the websites and apps they made and say they made that. What else would be on a developer or software engineer's CV?
Same with many other white collar jobs. Designers and media creators/artists can easily point out what they've worked on, as can writers and journalists, or scientists or academics, etc.
You've never worked on a project where you contributed a handful of pieces to a million piece puzzle, of which your contribution is nearly unnoticeable?
And can you say "I made that" when legally, and in the eyes of most, SoftwareCompany Inc "made" it?
Job roles and responsibilities.
> most of Hacker News could point to the websites and apps they made and say they made that.
Maybe I'm particularly bad at it. I list some projects I've made on my site, and I notice that they lean heavily towards my earlier days of programming - they're learning artifacts in various states of completion, and represent a small fraction of code I've written. Ever since joining the job market, I've made things I can't show off because they're internal to the workplace, or internal to internal customers, or simply I've contributed pieces of work all around the stack. Most code I write these days builds either something I don't own, can't present, or is just a small piece of the overall whole.
In your opinion, was there ever a system where that was not the case? If not, then you can't really say that it's capitalism which transmutes work into labor, no?
Do you think there could be a system where that is not the case (apart from an anarcho-communistic utopia as in the Culture series)?
EDIT: Sort of a follow-up thought: capitalism might actually be the escape mechanism that allows the bulk of activity in a society not to be labor. But the tradeoff is that all work is "transmuted" into labor (or feeling like labor) since everything is priced and a salary becomes the means of subsistence. I'm just spitballing, but I thought it was an interesting enough thought to add.
Many people would be perfectly happy with a headstone saying "I had a comfortable job, and raised a family I love" or "I had a comfortable job, and made my art in the evenings and weekends".
I see this fearful, regret-filled ethos driving a lot of my peers and the western culture at large and I worry about the mindset it instills in people. I know it's well-intentioned and comes from a perspective of the human potential being the highest form of sovereignty. A wasted life seems like the biggest crime. And comfortable has somehow come to become synonymous with wasted.
I'd argue for the cultivation of meaning as a replacement to this search for "finally good-enough" potential actualization, but that's me.
I've worked blue collar and white collar jobs, and it was the blue collar jobs that made me feel more alive, because I was around dangerous tools, hazards, and actuating my body like it was supposed to be outside exposed to the elements. I went home after and my rest felt deserved and truly regenerative, like my body was drinking it in. The white collar work, though it pays better and offers more comfort and is more cognitively demanding, feels at the same time too breezy, too safe.
It seems like a really stupid argument, that things can be bad because they're too good, affluenza and so on, but there's something to it.
Or are you saying that there is no way to be productive without the stress that is more and more present in our daily lives, in this environment of competition and constant yearning for more, for example?
Edit: deleted a phrase.
Maybe you have a good job, but feel like your career isn't going anywhere, but rather than switching to a different role you stay where you are because you like it there. That's comfort.
Plus a lot of people over think what comfort they need and waste a lot of energy on it. Theres a photo of Steve Jobs from the 80s in an empty apartment with a few possessions, where apparently he is comfortable with living like that. I don't know exactly what the story is with the photo, and it's a bit of an extreme example, but imagine instead of working on building his company, he spent his sparetime assembling IKEA furniture, then buying a TV and VHS recorder, then renting movies from the movie store (and physically taking them back).
Should you be satisfied with being comfortable? If it's important for you to leave a legacy related to your hobbies or career field, then probably not. You have to be content with what you leave behind.
For me, I have reached a place where I would be at peace if I left a headstone that said, "Good father, good husband, kind person".
I'm not going to make meaningful changes in computer science, and I'm ok with that. Whether or not I make contributions to open source software won't give me more peace at the end of my life, so I don't pursue it. Is it ungrateful? Perhaps. But it's honest.
But becoming a father definitely changed my perspective. Just raising my kid has become a worthy life goal in itself.
Most part of what we call civilisation, such as industry, sich as the IT industry is simply not sustainable. To survive the 21 century we have to look at better methods to collaborate.
And of course technology is part of the eqaation. Open Source and similar efforts lead the way towards such better methods. But they cannot exist in vacuum or on a island alone.
So we have to change society but by bit. Let’s go!
It is true that new subsistence is better than old subsistence, but its still serfdom with nicer clothes.
The chase, at least for me, is about having time and location freedom while enjoying a middle class living or better. It's not about being a billionaire, it's about being free.
The idea that OP has nothing to show from programming is short sighted, in that it's assuming that all one can or should created in life is code.
Do you have stories to tell? Tell them.
Do you know more about how to create solutions now? Become a better problem solver.
Do you know how to talk to a client about the "why" and not the "how" of a project? Be a creator of solutions, not software.
Also, the OP should start thinking of personal projects in a new way. Learn to fish, start a garden, volunteer somewhere, write, create art, travel, learn to play an instrument, learn to mediate. Anything that's not programming.
Without a doubt, my most productive years were from year 2-6. At year two, I had mastered the instrument enough to be productive, and for the next four years, I'd practice up to 12 hours a day, writing and record stuff as I progressed on.
Lots of times, I re-visit older stuff, that I now felt I could do much better - having progressed as a musician and songwriter. Suddenly I noticed errors or things I hadn't done before.
As the years went on, and I got better, I (for some reason) lost that creative fire I had as a novice. I became much more critical, wanted everything to be "perfect", and would essentially stumble on more challenges.
And then, out of the blue, I'd hit a writers block - or just lose motivation all-together. Suddenly I could go for a year or two without writing or recording anything - zero output.
Even if I don't practice as much as before, I'm still a much, much better musician than I used to be. But my creativity and drive is nowhere the same as when I was transitioning from beginner -> intermediate -> good musician.
FWIW, I've noticed this with a lot of my peers, both in the world of music, tech, and other. Sometimes it's because a hobby has turned into work, or sometimes it's just change in interest.
It's hard to be passionate about something 24/7/365 for years and years, and when you're not passionate, it becomes a grind.
When you're a beginner, it's fun to re-invent the wheel over and over again, as you get a sense of ownership. YOU made it, even though it's been made millions of times before.
Sure, I could spend my evenings pushing out apps just for the sake of it, but it wouldn't give me any pleasure. And besides, that's what I do for a living.
I've always loved programming, but whenever I'm asked why I don't switch from ops to development, my answer is that I don't want to destroy my hobby by becoming a professional. I've seen it happen, not only to photographers that shoot weddings and anything else that pays, but accomplished artists who can't afford to not spend their time and talent to "create new artwork for our HQ reception and conference rooms, since the old artwork doesn't match the new logo". It can be heartbreaking.
Today I work with people half my age who, and this is so obviously apparent it's actually funny, are convinced they have a better grasp of the problem and solution domain than I do. To be fair there was a young lady once who did, and it was amazing to be humbled like that, but it's hardly the norm.
Anyhow, when I hit my mid-40's my ego (which was substantial) just kind of... left. I still love tech, programming, solving problems. But this has taken second place now to enjoying myself, my son, life. I now live for moments - snowboarding, scuba diving, restoring an old BMW R80.
My biggest lesson to my 20-something self would be to get the hell over myself. Life isn't a competition.
I read this and I felt like I needed to talk with the guy. It doesn't matter if you "don't have anything to show" for 15 years of work. It doesn't matter. Where is it written that programmers must have a hand-coded website or a open source project to their name?
I also never buy the "I'm too much of a perfectionist" line. That's not a thing.
You got bored. You didn't have motivation to complete. Sure, happens all the time. "Too much of a perfectionist" is not a thing.
The blind leading the blind.
But that's most blogs regarding development nowadays, most are garbage advice.
You may not need anything code related to feel fulfilled / happy / whatever in life, but being dismissive by projecting isn’t useful.
I do agree that “too much of a perfectionist” is a stretch. It could be lack of motivation or fear of failure, or something entirely different, I don’t think the meaning is lost here.
Just remember, we are a tiny, insignificant speck in the history of our own planet, let alone the universe. If you truly believe you can improve people's lives with code, go do that. But don't make it about proving yourself to other people, or creating a lasting legacy. Ask yourself, if everything I made or affected disappeared when I died, would I still be doing this?
Fight Ego.
Anything less leads in circles, and that's usually not the goal.
If there was another way, someone would have found it by now.
No, fuck that. Most of the world's problems are caused by selfish assholes.
So asking if you’d still do it kind of defeats the point.
The industry doesn't promote longevity - and neither do its participants, who graduate from wherever they learned a career skill to enter the market and make waves - by writing new shit that will change everything, and guarantee that the work that was there before they came will become irrelevant and archaic "ASAP".
You need not blame yourself. This is normal.
Portfolio? I don't have a portfolio. My work is jealously guarded by the people who paid for it. I've been able to kick some stuff out as open source, but it mostly isn't mine or especially good. (The victory was overcoming the culture of fear.)
Of course, the form is for people who had just graduated recently. But it made me question myself.
And then it made me question whether I was wanting to study the right course. Were they open to having students who had more life experience than they did? People who have been in the field building real systems? Other stuff came up and I didn't end up finding out how it would go.
But the result is you don't end up 25 years downstream with nothing to show for it. You end up with a collection of open source projects to your name that you can keep working on and re-deploying over your lifetime.
The small amount stuff that lasts over five years gets called legacy and is made fun of.
Why The Lucky Stiff
Then worked for a small company making money saving and useful services for them, but nothing extraordinary.
Then I tried again. And I failed again. I was disciplined. I planned and worked hard for half a year, having nothing to show for it in the end. To the point, when I just sat and said that I won't do anything code related until I understand where I lack understanding.
I've come to understand that my main problem is fear. Fear of rejection of things that I do. Fear that anything that I can share is of not enough quality to be shareable. Fear of being not appropriate to the people online, or expressing opinions that I have no right to express.
So, now I am working directly with fear. Will see where it will lead me.
1) Doing what is difficult. (Started commenting on here, planning to share some of my work here and on Reddit).
2) Asking myself whether I am doing the right thing or avoiding it. (That is when you can spend 3 months in refactoring when you really should just make a landing and share the thing everywhere gathering feedback and iterating along the way)
3) Constant exposure. I am planning to take some work in sales (which I dread). That should help with breaking barriers.
4) Observing the mind. A form of mindfulness approach that warrants its own larger explanation.
Now, I am nearly at the beginning of this journey, but I think I will be able to figure it all out.
Hope this helps.
There is a lot of value in confidence, ability to execute and knowing the value of your own hour of effort. My advice to anybody out there who feels like the OP is to get our and expose yourself to new things, take a few measures risks and force yourself to grow.
That confidence to handle any technical work seems to stem from gradual development abstract thinking w.r.t problems . Top notch problem solvers see beyond the technical details and focus on more abstract aspects of the problem. To them the problem at hand has a few key sub-problems that are very critical and thus, when those are solved, everything else is just minor details. Identifying those critical sub-problems seems to be the key. And that is usually developed over a good amount of real-world experience. There are genius people out there who can think in these lines in their teens, but those are few and far between.
All those years of working, those long hours, those brain wracking problems, those moments of sheet delight at having solved one, all of that is its own reward. I may not have anything to show for my 15 years in a field, but I have plenty of self-satisfaction and the experience living those moments.
Swim in the sea you enjoy but nothing left behind. We call the people good at this guys with wisdom.
Walk the mountain you left a path. If the steps repeated made a path to ease late comer. But if not continue walk the path will be covered and gone.
When you walk you follow path not known who made it in many cases. Or create your own. We call them people of righteous.
Are you a swimmer or a walker?
A few thoughts:
* Don't compare yourself to others, nothing, absolutely nothing, good comes out of it. Ever. I know this is especially hard in times when anyone can brag about their accomplishments in a blink of an eye on Twitter, Facebook or anywhere else. Follow those people, learn from them but don't compare yourself to them.
* Even if you did not finish your projects you still have learned something which makes you a better programmer.
* Programming is just a tool. Nobody will care much about your code as long as it does its job - be it a great application, service or a useful library.
* Your job pays your bills, if you earn more than others (a very common case if IT jobs), donate money to charity, to a good cause.
* The author has taught a person to program and he created a website. This is not something to be jealous about, the author should be proud of himself. It sounds to be that the author is a good tutor, maybe there's an opportunity to participate in local meetups, organize workshops or start a career in that direction?
* As others already mentioned, programming is not the only thing in life. Maybe there can be other hobbies like painting, carpentry, or gardening?
EDIT: formatting
I used to focus on the code. People wanted stuff and the code had to be "correct" so that they could get what they wanted. I found "correct" to be endlessly complicated, but heck, that was part of the fun of it.
Then I focused on the people. How am I interacting with the people I'm trying to help such that I have a better idea of what "correct" means? I found that people don't know what they want, they don't know how their desires might change, and even if they did they are incapable of describing that to me in a way that would provide significant architectural guidance.
Finally, I balanced them. I created a definition of good code. Good code is code that does something for people that they value that I can walk away from and never touch again If the code doesn't do anything valuable or I can't walk away from it, it's not good code.
This made me realize that as much as I knew about people and programming, I suck at good code. I get wrapped up in the people part, not figuring out value or being able to scope it well. I get wrapped up in the coding part, building out things that I'll only need in my imagination.
It made me feel a little better to see that so many other developers suck at my definition of good code also, but it was a terrible blow. Humbling.
I'm happy I made the change. I don't feel the way I used to a decade or two ago. My journey is not this author's journey, but I feel the pain he expressed in his essay, and because of that pain I began mine. Best of luck.
In the business world it's the same with software. At one place I worked they were paying thousands of dollars a year for a software product that was buggy and barely worked. It was slightly better than a shared spreadsheet. But it was better, so they paid for it. Most non-technical people are pragmatic, and also jaded about software. They expect it to be arcane and difficult and spitting out errors and warnings. They just learn how to get through it in the ways that do work, and as long as it's a net time saver they'll accept it.
Was there anything else you gained from it that I may have skipped?
I’d say it’s examples of game theory, that worked, without any sort of sense of game theory existing. It’s kind of the root of a weird synthesized way of thinking about the world.
I know people who've had exits. Some of them have a family they neglected for it. Often there's an abused (or just cheated-on) spouse. Many of them are just pure sociopaths who would shank their own mothers, and literally gave all to pursue an exit. If you really wanted to join them, you know you could. But you haven't. This shows that despite your doubts about your career, you have some degree of integrity. And yes, I'm aware not all people with the Grand Exit achievement are this dirty, but having had a front-row seat enough times, I can verify it's substantially easier when they are. I should also mention I know some genuinely nice, and not incredibly talented, people who sort of stumbled into the Grand Exit and have been horribly alienated by the ruthless financial demands of entitled "friends and family."
You've chosen your battles, be proud of your choices. In just a few more decades, you and I and the overachievers will all be equal below the surface of the planet. Their names and works will be forgotten too.
Till then, let's have fun and maybe lift a couple other people up with us.
Through a couple group projects I refined the concept of KISS and feature prioritizing, siloing, and escalation.
This is the worst and contributed to me doing different things, for me it was apps whose API servers were no longer responding.
It is very hard to keep your portfolio up to date, when you aren't able to show even the public facing side of it.
2. Take lessons from work apply to opensource. You take your lessons learned with you everywhere
I recommend giving a book called Mindset a read. It helped clarify behaviors of a fixed vs growth mindset, and how having talent still means working hard and putting themselves out there.
This book appears well researched and is the first audio book in a whole that has been able to hold my attention.
https://www.amazon.com/Mindset-Psychology-Carol-S-Dweck/dp/0...
Sorry but nope. Just because you've worked on something that is popular doesn't mean that it is of good quality or well developed or secury or that the particular devs are competant or good.
We crank out code under deadlines for projects that get shuttered/replaced within a couple years due to changing tech business.
It’s a struggle a lot of us have.
Thanks for writing this.
I think the tension between perfectionism and pragmatism is intrinsic to programming. You need some perfectionism to be able to do it, but there's no limit to how overperfectionistic you can be.
20 years ago, the "pragmatic programmer" addressed this issue. https://wikipedia.org/wiki/The_Pragmatic_Programmer
Now you could look at others too but when everyone around you talks about the same few people over and over, it's hard not to think that "unless I'm as good as them, I don't matter".
And yes, i think my engineering work was probably high quality even by my today's standards.
Don't really care if people want to measure differently, but IMO what you've done in the past 2 years is way more important than how long you've been doing it. The 15 year old genius I went to university with is now 33 and doing the same mundane things as most salary devs.
To this day I've been able to use my knowledge about low level hardware features from those days, like IRQs, timers, DMA and such. So why wouldn't it count?
People can do really serious programming at virtually any age. I’m 29. I’ve been coding for almost two decades, extremely seriously. I got my first job as a software dev for Chase banks directly out of high school, and I’m currently employed at one of the top banks in Canada.
I would argue part of my curiosity as a kid really blossomed my coding ability, especially in terms of stretching limited hardware to its limits.
Don’t discount kids. They are the future.
Many of us were doing things in our early years. That crap is for the people who will consider it.
I made my first BASIC game on an Apple IIe in the 4th grade at 8 years old. I didn't start professionally coding until 23 when getting paid to code/create. Though I still use that initial game as motivation to keep creating, building and shipping products.
My main goal with coding is creative and shipping products, I still had that goal even way back on the Apple IIe. The idea of making games to make a living was amazing, luckily I get to do that and I think it has lots to do with that 4th grade honors/GATE program group where a couple kids and myself made BASIC games.
Another big impact was my Pascal/programming teacher in high school Mr. Iles. He let us mess around with all sorts of fun during class and at lunch in computer lab. We setup the first internet and TV cards I had ever seen in '92-'94. We played games like Scorched Earth and created games, one of my friends Adam worked for Intel and was making Sierra looking games at the time.
I have had computers at home since middle school and always created projects on them including programming/art projects. I taught myself web development, interactive development (Flash and others in late 90s), and game development with C++ before having professional work by completing projects, much of it pre-internet or early internet just by books and BBSing/IRC. I studied the Quake II engine in early 2000. I learned Unreal starting with 2003 mods and Unity in 2008 on my own, and now make games on those platforms. When mobile finally hit with the iPhone in 2007/8, I realized it was the next handheld gaming market with the SDK and OpenGL support and jumped on that.
All of those moments have major impact on future programmers, it did to me. So people really can be seen as "officially coding" well back into elementary/middle/high school, but learning and shipping/creating is a consistent thing in my life since then.
It would have been better for OP to say "professionally coding" for less time since they were actually paid to program, but even an artist or writer or actor would say they started way back then but they later got paid/professional work to solidify their field or career professionally. I professionally started working as a coder/web/interactive developer in 1996 and have worked at tech companies, agencies and game studios since doing web, app, game development for entertainment, promotional and marketing systems.
My advice to programmers, creators, product developers is to always be creating products for yourself, to ship to the world on a consistent basis, perfect or not, everything is iterative.
Work projects are important as well, but to feel fulfilled, side projects or eventually going fulltime on your own projects/products where you get to decide and create is much more fulfilling. It can make contract/work projects less intense and can make you a better team member when you can relinquish control on those projects to a team while you get to work on your projects in freedom or with small teams of people that work great to ship content to the world. Programmers that aren't doing their own thing, might have difficulty with ego and making sure everyone uses what they like in terms of tech/process/product/creative properties of a project.
> "25 years of coding, and I'm just beginning"
Good, it is always better to have a beginners mind even if you have decades of experience. The more you can create on your own the better. If your friend that you helped quickly learned and created a website, you should thank them that they motivated you to publish and start building for yourself.
Programming is a tool, to create, to build products, but shipping and making them public is what it is all about, no matter when you start.
See how interview offers you get....