fn-mote 21 hours ago

> My lovely wife ([…] who believes I have adult ADHD) is supportive of my journey, and has no qualms becoming the only breadwinner of the family.

Some advice for the OP:

1. Don’t give up working. IMO, a job provides structure to the ADHD and keeps you moving forward instead of spinning your wheels. Change job? Sure. Work 25 hours/week? Sure. Not 0 though.

2. Before you start on the projects, spend some time learning how to design programs. I like HtDP.org but it’s kind of oriented to a class setting.

3. OSSU could be the project of a lifetime. Beware getting sucked in there. That said, some of the courses referenced are excellent. Knowing ALL of them is a lot.

4. Have an exit plan if you are not working. When will you work again? Some bad scenarios are less horrible if you are ready to jump back into the workforce.

  • chbkall 20 hours ago

    Hey thank you for the time you took to comment and offer advice.

    1. I agree. I am still working on the community project which my wife is building - it has started to grow and looks like it has the potential to become a sustainable source of income. I have built the website and automated some stuff for her. I am also honing my skill as a woodworker and toymaker - learning to make wooden toys.

    2. I did the HtDP version of the program hosted on the edX platform. I enjoyed the whole program and it was very insightful on how to think about creating larger and complex programs. It also motivated me to read the SICP textbook - I've read a couple of chapters from the book. I also adapted the HtDP program in Hindi to teach village girls here for a local non-profit on how to code.

    3. I agree about OSSU. What I don't like about OSSU courses is retention. I did the Programming Languages (A, B and C) course by Dan Grossman a few months back. I enjoyed the course and the exercises - but I am not sure how much of it I retain today. These and the HtDP program has definitely helped me to think what might be happening inside the hood of programs rather than treating them as magical boxes.

    4. I think I can keep exploring computers while simultaneously make my living as a woodworker / toymaker. It also helps me balance my faculties of mind and my hands /body. I am not thinking of an end goal at the moment but want to keep exploring and potentially building.

    • globalnode 18 hours ago

      when i was learning i remember crying into my c++ book because i had no idea what they were trying to say. learning computing did not come easy to me. i think the only thing to be wary of is feeling like a fraud, even though you may eventually know a lot and be an accomplished programmer (it helps if you have people that believe in you). good luck to you though and i hope you enjoy learning all the new and interesting things in this field!

    • underconstructn 16 hours ago

      I’m glad that you’re following your passion.

      It’s been difficult talking with people that have made the decision to go into development, because it’s a weird and risky occupation right now.

      An analogy would be wanting to become an artist, so you learn your way into a field position on a semi-pro baseball league where artists play baseball. Some players come up with their own unique spin on the ball as they throw it, others attempt to swing the bat the way they’ve been told. Older players may have advice, but not play as hard. The goal is to just make points, and new players are in awe of the artistic ways they could become great and make bank. For years and years, players would get injured, fired, or just age out in their thirties, because you rarely ever saw anyone older; there were some small old person leagues, too, I guess? And older players might become managers, coaches, owners, sports journalists, or just leave the profession. They just kind of disappear- people are only thinking about the game. But, within the past several months, players have started working independently with robots on the field. The companies making the robots swap out new robots every few weeks which compliment the players and play something that seems like baseball, but often isn’t. People worry that robots seem to be attempting to takeover the jobs of the players. They mostly hit some runs when no one is on base, but they create holes in the field in the process. People don’t understand why the players are either micromanaging the robots or are spending time filling holes, because the robots score points, and they’re focused on the scoreboard.

      Does the artist belong on a baseball field?

      Is there a more efficient way to score points?

  • globnomulous 17 hours ago

    1. Agreed. There's strong evidence that most people who quit their jobs to pursue passion projects accomplish less than those who pursue them but keep their jobs.

    • lukan 16 hours ago

      Can you share that strong evidence?

      • globnomulous 12 hours ago

        Oof, no, I can't. I'd edit my comment, tempering that certainty, if I could.

        I recall multiple therapists telling me precisely that, according to the research, people are less likely to accomplish or make progress on passion projects when they quit their jobs with that goal in mind. I have memories of finding papers on this, too. Now I can't find them, and I'm questioning the accuracy of my memory.

        Disheartening and embarrassing, but probably healthy, too. Thanks for the reality check.

  • the_arun 17 hours ago

    In addition to this comment.

    A good student finds teachers everywhere. The converse is true too. The drive & patience are the most important things.

    Take one problem - solve it end to end by first principles. You’ll do great.

andrew_lettuce 14 hours ago

I see people conflate computer science with computer programming regularly. If you are motivated to build things you probably want to pursue the latter, and dig in to understand how the things you use work. Maybe your want to go deeper academically in certain areas, but do you want to be motivated by real world application or theoretical underpinnings? True comp sci is a lot closer to mathematics than most people's think. Sometimes this is required for deep understanding of what you're doing as a developer, but rarely.

  • tkcranny 13 hours ago

    “Computer science is no more about computers than astronomy is about telescopes” — Edsger W. Dijkstra

    • raddan 9 hours ago

      I have always found this quote annoying. There are many ways to solve problems, but when you constrain yourself to solving them mechanistically, that is what makes computer science computer science. Virtually every theoretical CS paper implicitly presupposes a specific model of computation. Sometimes they even say it explicitly.

      Sure, computer science is not about a specific computer. But it is definitely about computers.

      • musicale 3 hours ago

        > I have always found this quote annoying

        "Mission accomplished." -(fake) E.W. Dikjstra

        My strong impression/suspicion is that Dijkstra had a great sense of humor and also enjoyed irritating people; it's puzzling when people take things like his comments on programming languages as serious rather than tongue-in-cheek, but I suspect he would have been amused.

        I learned today that apparently Dijkstra won the Dijkstra prize in 2002. (I'm not sure what the qualifications are, but if I were to choose then it would be awarded to the most brilliant, and irritating, computer scientist who has made a groundbreaking contribution to a particular field.)

      • tkcranny 3 hours ago

        Respectfully I disagree. I believe what Dijkstra is getting at is that the specifics of modern computers aren’t “relevant” at all. Ultimately it’s the science of information and whats computable. Be that a modern day silicon processor at X gigahertz, a pen and paper, or a universe sized computer, that’s irrelevant for the science itself.

    • musicale 3 hours ago

      Yes Edsger, but they don't go around calling themselves "Telescope Scientists" now do they?

  • hgomersall 12 hours ago

    Maybe engineering the discipline to study.

  • dickstrawng 12 hours ago

    agreed as astronomy is not telescopes

WheelsAtLarge an hour ago

As you know, getting an entry-level job at your age will be very hard. Your best bet is to look at what employers are seeking by examining current job openings and using them as a guide for what to study. Try to identify the fundamentals you need to learn. I would even recommend applying to see if you get any responses; even securing an interview would be a plus.

Find a job at a company, any job you qualify for, that has an IT department where you want to work. Make friends in the IT department and see if you can get the manager there to offer you an entry-level position once you learn what you need to know to do the job. Being a good employee in one department can take you a long way if you want to transfer to another.

Additionally, give yourself a deadline. Do not leave it open-ended; it's too easy to meander and get nowhere. It's also unfair to your wife to carry the load indefinitely. Plan out your journey before you quit your current job and stick to it.

FYI, programing as a job is no where nearly the same as programming as a hobby. The job is full of pressure to get things done and you write code you may have little interest in.

Good luck!

lisp2240 11 hours ago

Nobody else will tell you the truth: nobody will ever hire you as a software developer. You will never get past the filter.

I tried to enter the field at 35. I couldn’t get an interview with a CS degree. I did everything right. Good GPA. Portfolio. Professional resume help. Sent applications for two years and heard nothing. Now I’m 45 with nothing to show for it. All those late nights studying coding interview questions and I never got a chance to try.

The success stories you hear are people with friends or family members who get them through the door. Unless you know someone like this, give up now and don’t waste your time.

  • musicale 3 hours ago

    Getting no offers in 2 years seems very possible (it's tough out there - every job seems to have dozens of applicants), but getting no interviews at all is rough.

    I wonder if anyone on HN has experience working with a technical consulting or contracting agency. Are there good ones? How hard is it to get hired?

  • monkeyelite 9 hours ago

    I agree you're going to have a tough time landing SWE at meta, but I think there is more to this story.

    > I did everything right

    This can't be true.

  • yupitsme123 7 hours ago

    An often forgotten field that's adjacent to programming but much easier to get into is network engineering. If you're smart enough to program then you're smart enough to to architect and configure a network. Salaries are comparable to programming jobs, and college degrees generally don't matter much.

  • kmoser 8 hours ago

    I'm sorry it didn't work out for you. Sometimes it's luck of the draw. It also depends a lot on which industry you're in (finance, gaming, etc.). As an extreme example, if you're any good at COBOL, you can probably get a job working on legacy systems regardless of your age. Gaming, probably not so much.

    You may have more success getting smaller freelance jobs at first and building a reputation as a can-do developer, which might be easier to parlay into a full time job. But at the end of the day, connections are sometimes the most important factor, so I would encourage anyone in your shoes to work on not just their technical chops but also their people-meeting skills.

    • Dylan16807 5 hours ago

      Getting a freelance job is easier than getting an interview?

      • kmoser 2 hours ago

        No, I'm saying getting a freelance job is often easier than getting a full-time job because the barrier to entry is lower: companies don't usually scrutinize freelancers with the same eye, especially for smaller jobs, since it's much easier to let a freelancer go if it doesn't work out. Also, freelancers are usually hired based on their ability to get the work done, not so much biased metrics like age and gender. Of course, every industry is different, but that has been my experience as a freelancer for several decades now.

        Although in the case of the person I was replying to, apparently even getting an interview was impossible, so YMMV.

  • VirusNewbie 11 hours ago

    What filter? Why would age matter at all on the filter?

    • 1over137 9 hours ago

      Age matters because ageism is rampant. That’s the filter.

      • VirusNewbie 5 hours ago

        How would they know their age? I only list the last ~10 yoe on my resume. No one knows i’m in my 40s until they meet me in person, unless they are really good at guessing ages from fuzzy video calls.

        • musicale 3 hours ago

          Probably a good strategy. Though at the interview you could still get "not a cultural fit" or "overqualified" or "we are only hiring recent graduates" etc.

klipo 21 hours ago

Good luck! I’m going through a similar journey. I’m in my late thirties and only started software engineering professionally 5 years ago, without a formal CS degree, but with a hobby-level affinity for computers. It seems like you have an intrinsic interest in the subject. I think this is THE key, because you will grow the most by figuring things out in a play-like fashion, this will solidify your understanding and build intuition.

Looking back what has helped me a lot is being surrounded by more experienced engineers that were good at teaching (those are quite rare I discovered later). Other than that, read a lot of code, write a lot of code, and keep reflecting on what areas to further develop. Be kind to yourself, this space is huge and no one’s is an expert in all of it. Burn out is real, especially when struggling alone for too long. One thing that has helped me as well is to realise everything in software engineering has been made by humans. None of it is actually ‘unknown magic’, just keep digging deeper to find out how the thing you’re struggling with works on a more fundamental level. The LLM age has made this so much easier.

  • dickstrawng 11 hours ago

    I don't know how comfortable I feel throwing around terms like computer science and software engineering. I know a lot of people who can program but I would never have them design a medical system or anything having to do with life or death situations.

    • gosub100 9 hours ago

      the keyword there is "design". systems engineers/architects design those things, not coders. And they are made safe by entire teams of academics, clinicians, engineers, testers, scientists, and even lawyers.

      • kmoser 8 hours ago

        I would argue that even if other people have designed an entire system and "all" that is left to do is to write the code, things can go very wrong if the coder isn't good at designing their code well (e.g. to be efficient, robust, etc.). It's "design" all the way down; there is no imaginary line where design stops and coding starts.

        • gosub100 7 hours ago

          thats true, if there were one sigle "coder" who was cloistered away from the team and came back when s/he claimed the requirements were met and the task was complete. Whereas, in FDA (and presumably FAA/DoD) regulated designs, a massive team is following a rigid SDLC including code reviews for best practices.

          Now, technically the FDA doesn't force that, all they specify is that some standard procedure must be followed, and written evidence must be produced upon demand showing that the procedure is followed. So you could contrive an example where a cowboy coder made his own sqrt() and completely broke it, and that somehow led to the death or injury to a patient, or an elevator going into free-fall. or a fuze detonating. sure. Is that likely to happen? absolutely not.

          • kmoser 2 hours ago

            > a massive team is following a rigid SDLC including code reviews for best practices

            Regardless of how thoroughly a system is planned in advance, programmers are not automatons who mindlessly fill in the last few blanks. They must make choices about the code they write, and that is absolutely a part of the overall design. If that code fails a code review, well, then it gets rewritten, but that's ancillary to my point: programming is design (albeit at a lower level than the overall system design).

  • chbkall 20 hours ago

    > just keep digging deeper to find out how the thing you’re struggling with works on a more fundamental level.

    Thank you. I will keep these in mind.

    Your journey is a source of motivation as well.

aryehof an hour ago

My immediate thought is that you do not need to learn “computer science”.

It is for academics, those looking to differentiate themselves from the other 2000 CS equipped applicants for a job, those wanting interviews answering useless data structure and algorithm questions, and those writing applications in the domains of the computer and data sciences, and computing infrastructure.

Most software is outside of this, though that might surprise many HNs who assume that is the only type of software there is. Well maybe they will cough up “crud apps” if pushed.

Just learn to program and learn the applicable standard libraries associated with a programming language. Stop overthinking it. An 8 year old can do it - you can too.

reactordev 17 hours ago

I want to call out something here. I’m all for learning to code at any age but companies need to stop being ageist and discriminatory towards older coders and workers.

I’ve started to see this myself. I’m certain it’s ageism.

To the OP, if you’re passionate about it, don’t let anyone/thing stand in your way.

  • jspash 17 hours ago

    Ageism is as real as any other prejudice. And unfortunately it's just a difficult to prove. I've seen the faces of the room full of "kids" (yea, that's reverse ageism I suppose) when doing remote interviews and watched them drop as soon as I appear on the screen.

    Then it's just a matter of speeding me through the interview until they can find the candidate with the "right team dynamic" or "culture fit" etc. The excuses I've heard are quite amusing, but transparent.

    • trollbridge 14 hours ago

      I would simply ask upfront if they’re open to hiring over 40 and/or hiring with a disability (and then mention I’m not litigious and simply don’t want waste their time if they aren’t looking for that, no hard feelings). I actually had a few places admit they are not going to hire over 40 + a disability after I made it clear I have no intentions to sue.

      • andrew_lettuce 14 hours ago

        That's pretty stupid on their part, considering you're not permitted to break the law because the aggrieved party is "ok with it". This is typically a civil rights issue handled by government enforcement

  • greengrass42 17 hours ago

    I was let go from a large multi-national in my mid-40's. Went contracting and worked every day I wanted to until I retired.

    • nyarlathotep_ 10 hours ago

      How did you find work? Something like contract-to-hire gigs from Dice or something? Did you create your own LLC or similar?

  • dickstrawng 12 hours ago

    i've never discriminated. I don't wanna know your name I don't wanna see your face. Pass the test pass the interview. we can use chat if you want to I don't care. Well maybe now I care because of ChatGPT. you also have to pass all the criteria from HR, but that could have anything to do with your right to work or criminal record. That's not my concern either. On my last job the first person I hired was 67 years old and I didn't even know it. They did the work of eight people easily. The only surprise was that I didn't learn anything from them. (Pro tip: if someone like this tries to teach you something someone told them to tell you. this guy is not gonna say anything he's getting paid €300 an hour) What was not surprising, was that every project was completed with extremely high-quality and completed early. what I learned from him was always keep a pocketbook handy for the times you get bored. He was bored very often.

WillAdams 20 hours ago

I've been re-learning CS (programmed as a kid, then missed getting a minor in CS in college after the service by one 300-level course which wasn't being re-offered when I needed it) and then just did (La)TeX and AppleScript for my day job, but am now trying to create a tool for CNC which is quite different from those which have existed previously, and one thing which has helped a lot is MIT OCW:

- the Python courses got me up-to-speed on the basics of that language: https://ocw.mit.edu/courses/6-0001-introduction-to-computer-... and https://ocw.mit.edu/courses/6-100l-introduction-to-cs-and-pr...

- Structure and Interpretation of Computer Programs served as a disciplined review of a book which I wasn't patient enough to do the exercises of when I first read it: https://ocw.mit.edu/courses/6-001-structure-and-interpretati...

- Mathematics for Computer Science helped make up for my spotty math: https://ocw.mit.edu/courses/6-042j-mathematics-for-computer-...

I've also found the recent book:

https://www.goodreads.com/book/show/39996759-a-philosophy-of...

very helpful (first reading I did one chapter at a time, re-writing my current project applying the principles of that chapter) --- interesting video overview at:

https://www.youtube.com/watch?v=bmSAYlu0NcY

If one is fortunate, there are videos on specific subjects/algorithms which one needs, e.g.,

https://www.youtube.com/watch?v=jvPPXbo87ds

clickety_clack 11 hours ago

I did that at 27, and it took me about 5 years to get into the sphere of where I wanted to be. Best thing I ever did. Even today I was talking about how sad it would be to hit retirement and to never have truly done what I wanted in my life. Now I have none of those regrets.

However, it was a hard road, and I travelled it when conditions for developers were much better. Along the way, I made some missteps, and followed the wrong path a few times out of sheer lack of industry experience. I had to make the kinds of mistakes you usually make at 22, but at that age everyone you know is also going through the same experience so it feels like everyone is going through it together. It’s a lonelier road when everyone you know is hitting senior/executive/management/ownership level and you’re back trying to figure out how to find your footing on the first rungs of the ladder. I didn’t love the work I used to do, but I was becoming respected when I left it and would have done quite well, so for _years_ I had the constant nagging doubt that I had made the wrong choice and that maybe the grass wasn’t greener after all.

That’s my experience. If you wanted advice (which you can ignore a la “wear sunscreen”), I’d tell you to keep your current job while you work on your passion projects. Try to get involved with dev meetups. You want to see if you want to become one of those people, and you want to see if the stuff you’re doing gets any kind of traction. Meetups will help you figure out how to sound like a developer, which can be more important than it should be. You will have to fit in with developers to get past interviews if you’re looking for a job.

Whatever you decide to do, best of luck. I hope it all works out for you!

hiAndrewQuinn 21 hours ago

>[I]t is not aimed towards landing a job as a software developer.

>I am mindful of the ageist tendencies in the tech industry [...]

These two claims seem at odds to me. If you're not aiming at getting a job, why does it matter to you what the tendencies of the tech industry are?

ChrisMarshallNY 10 hours ago

> Most of my career though is spent as a teacher - teaching Math, Science and Computers to primary students.

That tells me that you have had some fairly good matriculated schooling. I have been doing heavy-duty software engineering for decades, and am not qualified to teach math, science, or, surprisingly, computers, to primary students.

"Computer Science" isn't really "programming." It's the theory behind things, not just implementation. I don't consider myself to be a "computer scientist," although I know a lot of the stuff they do. My focus has always been on deliverables. In some cases, that's more valuable for getting paid, in other cases (like in academia, or the R&D sections of companies), maybe not so much.

I'm 63, and still learn new stuff every day. I choose to concentrate on deliverables, as opposed to theory, but that's me.

I would suggest that if you want to be at the pointy end, then it's not really about delivering product. That's not always using the latest $BUZZWORD technology, or giving up, when it gets annoying and boring. For me, I find great satisfaction, in delivering end-user product.

For many others, here, they are far more interested in developing theoretical lattices and engines; which is extremely valuable. We need all types, to advance the craft. You also get to play with the best toys.

I would suggest thinking about what the end goal is, then focusing the learning on that.

suzzer99 14 hours ago

I didn't start programming until I was 29 and it's been a great career. So 37 can't be that far off. If you have aptitude for it, something will probably work out.

matt3210 a day ago

Find a series of small irritations on your computer and write scripts to solve them.

  • notepad0x90 20 hours ago

    Solid advice. I would just add to write C. There is a thing about finding a problem that really annoys you that focuses and tunnelvision's you.

    • chbkall 20 hours ago

      I tried learning C a while back. I would like to review it again and build / solve some problems using C.

      • greengrass42 17 hours ago

        Give Arduino a look. C plus hardware for about $60 for a good starter kit.

      • UncleEntity 16 hours ago

        I know C fairly well and the only time I really use it is to write some python extension code to wrap a C(++) library to solve some problem using python.

        For example, I've been using json as a database (instead of just, you know, using an actual database) and the python json module was annoyingly slow so I wrapped the boost::property_tree library in a python module. Every once in a while I'll use it to learn some new python C-API thing so now it has all sorts of bells and whistles which are totally unnecessary for my use case. I just looked and I've been poking at that thing for almost six years now, huh.

        One thing I've been having a lot of fun doing lately is arguing with to robots to try to get them to write good code for some projects I've always wanted to do but never gotten around to. Not saying this is a good way to learn C but they are pretty good at answering questions on why they did something in a certain way -- which isn't always a good way or even the right way -- so I've been learning a lot more about C doing that. Though, honestly, it would be faster to just write the code myself a lot of the time but...

        If I were to start over (I learned to code "for reals" in my mid-30s) I'd probably learn one of the fancy newfangled languages like Go. The only real reason I know python is blender uses it and I used to hack on blender so, ipso facto, I learned python. While knowing how to hunt down segfaults like a truffle pig is a good skill to have I'd say it's one of those things which you don't really need to know anymore, I've shelved quite a few things before I learned to do that and it's more fun to end up with a working project than a broken, I'll get back to it later, project.

  • chbkall 20 hours ago

    Would you give me a small example of the kind of small irritations you are talking about here?

    • Disposal8433 16 hours ago

      Not OP but when I was way younger I had some trouble learning programming languages. Following tutorials was boring and gave limited instructions. Someone on the internet gave the same piece of advice, i.e. to do something useful in your life.

      I was at the time downloading a lot of porn pictures but the internet connection was slow and unreliable. And that's how I learned the Ruby programming language with its regexes, how to parse HTML with those regexes, parsing CLI arguments, and how to download files and put them in proper folders. It was the cleanest and best script/framework I have ever written.

      The moral of the story is to find something to do, and it will show you a lot more.

      • kbelder 13 hours ago

        Way back when, before it was very feasible for the general public to get internet access (in the Mosaic days, maybe 94 or 95), I found that I could access my local college library with my dial-up modem. Their system let you connect to the lending services of other university libraries. I found one (maybe Oregon State?) that let you access Gopher. That was pretty interesting in it's own right, but there was no ability to display images, and the functionality to download files was removed, so pornography was frustratingly hard to obtain. You could look at ascii art...

        But you could dump uuencoded binary files to the screen. Capture it, read it from the text buffer, reformat it, decode it, and then... a glorious 25kb jpg of a scanned Playboy image. (In HAM mode on my Amiga.)

        I spent so much time doing that stuff. Wasted time, in a sense, but it motivated me to learn much I might not otherwise have bothered to. The desire of a young man to see a woman in her glory should not be underestimated; societies suffer if they point that energy in the wrong direction.

        As a 37-year old married man, the OP has probably acquired some other motivations, though.

    • surgical_fire 19 hours ago

      For example - I wrote a script that automatically rsyncs a bunch of folders I care about to one external HD, and then replicates the backup to a different external HD for backup purposes.

      That sort of thing that would require you to run a bunch of commands and that you have to do from time to time. Automating it to a single script is cool.

      I have a friend that wrote a bot to track the prices of stuff that he wants to buy and messages him on Telegram the current price and the min/max since it started running. Another fun little project.

      • chbkall 19 hours ago

        Ah. This definitely sounds exciting and makes me think.

w10-1 10 hours ago

Starting from work with high personal contact and trust (waiting, teaching) which cannot be outsourced, you want to move to work that is highly-technical, highly-ageist, first in line for disruption, with high barriers to entry, and highly-competitive (where you can compete with programmers world-wide for a job)?

That's a recipe for soul-crushing long-term unemployment.

TBH journeyman computer work today is plumbing with tools that go stale fast, or perhaps making tools to do the same thing better with less.

By contrast, medicine is now the biggest employer, largely because it's difficult to automate that kind of personal touch, and b/c in the US the population is aging. While being a provider involves training & certification, there are a number of provider-adjacent jobs in logistics and related counseling (e.g., genetic counselors, IT) where you can use your people and explaining skills. All of medicine now is highly technical, so there's plenty to learn, and that knowledge is much more interesting and relevant than CS or programming.

  • autobodie 9 hours ago

    Yes, I graduated with a CS degree at 37yo in 2021 and thankfully got in before the layoffs. My first advice would be dye your hair if it's turning gray and never tell anybody your age unless uou have to. Of course, your managers will know it anyway.

  • libraryofbabel 9 hours ago

    I don’t disagree with your points, but the OP doesn’t necessarily seem to want a job in the tech industry; he just wants to learn interesting concepts and to build things:

    > …not aimed towards landing a job as a software developer

nurettin 26 minutes ago

Coding isn't really the hard part. I learned it on a commodore with casette tapes.

Sure you need the general sense for architecture which comes from experience, but it is not a long list. Learning about computer hardware and assembly from scratch is what made it all come together for me. Algorithmic complexity, data structures, development tools were all a mystery and "just things to memorize" until I learned about logic gates, developed transistors from those logic gates to get memory circuits, developed binary full adders, a bus, a basic cpu with a few registers and a program pointer and actually programmed it with its own instruction set. All you really need for this is pen and paper. Then move on to multicore, multiprocess, scheduling, then move to simd and graphics hardware. If you have several months to dedicate, I'd say go for that.

giantg2 19 hours ago

I wouldn't try to get into. I'm in my 30s and age discrimination is real. Nobody wants to hire a 30 something entry level engineer. They dont even want 30 something mid-level engineers. I know because I have a disability that seems to have capped me at these levels, I'm about to be fired, and the job prospects look abysmal.

  • reactordev 17 hours ago

    The hard part is proving it. They’ll say it’s culture fit, or there’s a more qualified candidate. Being fired for any reason other than the real reason gives them indemnification should you say otherwise.

    • giantg2 17 hours ago

      Well, I have some stuff in writing that shows they violated the ADA at least twice. So a lawyer should be able to get a nice payout for me when they do fire me.

      • bookofjoe 17 hours ago

        "I have only been ruined but twice in my life — once, when I lost a lawsuit, and once when I won one." — Voltaire

      • reactordev 17 hours ago

        Just don’t sign any closing paperwork that would sign your rights away.

        • giantg2 14 hours ago

          Severance is basically just "we'll give you money if you sign this thing saying you won't sue us". If they give me enough, then sure I'll sign it.

    • trollbridge 14 hours ago

      I’ve had exactly one job where I mentioned having a disability to HR and also one job where I got summarily fired for no apparent reason.

      Keep your mouth shut about disabilities, and edit your resume so you look to be age 25-30. For interviews etc style yourself so you don’t look “old”.

      • reactordev 11 hours ago

        I wear my grey with pride but I agree with you on the disability part.

sonicvrooom 9 hours ago

1. ASSEMBLY and how CPUs and human long and short term memory work, and how which networks in the brain exchange between these blocks (among others, but shhhh)

2. Math, Tensors (you'll get why later) and Matrix Transformations, and all that sin cos tan stuff

3. Ben Eater-ish stuff on YT because it's 2025 and Computer Science is about to (you are ADHD, so anything from 2 days to 7 years) change without anybody noticing ... think AIs having a preference for certain voltage drops and materials ... ... ...

4. the while 37-year-old part is irrelevant because, again, it's 2025, and pretty much any PhD can be caught up with within 10000 hours aka 3-4 years ...

5. you should start a reddit thread where people suggest stuff you SHOULD do instead of CS and thinking in general and some rich guy should hire some people to remind you of all those suggestions multiple times a day

saejox 14 hours ago

I didn't draw a single piece of PNG until i am 38. Now i am about to release my second solo developed game. My art is nothing great, but a year a ago wouldn't even believe i could draw a single sprite.

https://www.instagram.com/arcadenest_games/

I find my age to be great period to learn new skills. It is never too late.

  • therealdrag0 10 hours ago

    Not bad! Nit: I think your moon is a bit too rough on the edges. Did you try a smoother edge?

admsmz 9 hours ago

Your best bet at this point would be https://mathacademy.com/. Their CS course will be launched between okt and dec. In the meantime I would recommend levelling up your math using the same website.

I noticed this line at the end of the article about the things you would like to build: “Education apps that leverage learning theories, community learning and game design to make learning more inspiring and accessible for students”

That’s a perfect description of mathacademy.

globnomulous 17 hours ago

I don't mean to be a jerk, but I'm having trouble figuring out what the point of the post or of posting the post here is. Are you asking for advice? Feedback? Suggestions? Criticism? Support? The only question your post asks is "but who am I really?"

To be honest, what I hear in the paragraphs that follow is less a description of yourself than the pronouncement that you are capable, curious, and driven to learn more, that you're excited and motivated by the breadth and depth of tech -- that there's so much to learn and so much to study and you want to know all of it. That's a wonderful starting point, but it also sounds as though you are or will be prone to a kind of paralysis.

You have a list of projects you want to work on. This is good. Study will give you a foundation (personally, I found DS&A, once I approached it methodically and patiently, by far the funnest part of learning programming and CS, so projects aren't the only way), but building will give you something to put on top of it, figuratively speaking.

Just keep on mind that you're probably not going to build these things from first principles, so you're probably not going to learn operating systems, networking, or programming languages. Rather, your going to develop skill in specific tools rely onthose technologies. That's fine. But if you really do want to dig very specifically into the subjects and technologies themselves, then you needto be aware that building the products or projects you've described isn't going to give you the progress you seem to want.

If you really do want to know networking, don't build a website; implement, I don't know, telnet or tcp/ip from scratch after reading the spec. If you really want to know operating systems, build one. If you want to understand programming languages, DS&A, and algorithmic analysis, familiarize yourself with some instruction sets; learn discrete math; learn what lambda calcus is and how it's used.

> Adult ADHD

I have severe ADHD. I could not survive in the tech world without treatment and medication. YMMV, but you should get treatment if you haven't already. Last time I checked, there was essentially no empirical evidence supporting the coping strategies so many people advocate. Medication is the one, and the only, proven treatment for the condition.

  • malwrar 16 hours ago

    > I don't mean to be a jerk, but I'm having trouble figuring out what the point of the post

    Well, it is the only post on this person’s website, I bet they wrote this because they wanted to set up a blog and needed content. I thought their enthusiasm was heartwarming personally, imo the drive OP is expressing is the most important part of starting with CS stuff (maybe any hobby?)

    > or of posting the post here is

    Maybe they’re uncertain deep down whether or not a 37 year old can actually learn computers? I have the same insecurity with learning to play piano.

    > Just keep on mind that you’re probably not going to build these things from first principles

    Does anyone, truly?

    Really though, all of OP’s aspirations seem reasonable to me, I think your post is a little too negative and discouraging. Making a HN-like webapp, esp for a small group, is a trivial demo exercise. The streaming device could just be a raspi in a custom case, but OP could go as far as building a custom board as their interests guide them. The education app and ecommerce sites are just further skill reinforcement w/ the HN site idea. OP even has ChatGPT to answer questions, I would have killed for someone or something that could answer my questions when I was learning.

    Mostly responding because I felt bad at the idea of OP reading this and thinking they’re actually limited in achieving their goals. You’re right to caution against taking on too big a challenge up front, but OP _can_ totally chase their curiosity and dig into details as far as they are drawn. OP, if I was you, I’d try to build a “quick and dirty” version of whatever project idea(s) most pull at your soul before you get too into the weeds, otherwise all that nitty-gritty detail just feels like mind-numbing trivia.

    • globnomulous 16 hours ago

      Thanks for writing this. I agree. I actually didn't mean for the post to be so negative. I really did mean what I said when I wrote that his starting point -- curiosity and eagerness -- are wonderful.

      Seeing the mention of ADHD set my thoughts on a rather different track. The lack of focus becamein retrospect much more the defining characteristic of the post -- to the point that the post itself doesn't seem to know what it is or wants, or at least fails to communicate that. (This kind of obliqueness is, to me, one of the hallmarks of ADHD.)

      But you're right that just as a statement of goals and ideas, the post is a wonderful start. And I forgot completely to include this: the fact that OP is self-taught is encouraging. That's basically all he needs. It's invaluable and will serve him well, regardless of what he decides to do.

      • malwrar 12 hours ago

        I totally missed the ADHD angle, I definitely see where you’re coming from now. Here hoping at least one of OP’s projects draws their interest enough to focus their exploration!

  • zahlman 16 hours ago

    > I have severe ADHD. I could not survive in the tech world without treatment and medication. YMMV, but you should get treatment if you haven't already.

    I won't speak for OP, but from what I've been able to figure out locally, it's quite difficult (will take years and is largely down to chance, and anything you might to do help the process along is inhibited by the condition itself) to even get a diagnosis unless you're quite wealthy and willing to spend a chunk of it.

    • globnomulous 16 hours ago

      That's a good point. The delay varies wildly from place to place. In the US, if you have good medical coverage, you can get a diagnosis and start treatment in a month or two. In Western Europe -- partly because of the nature of their medical system but also because of their much greater cultural skepticism towards medication -- the wait can indeed be years. This partly kept me from accepting a job I badly wanted in Copenhagen.

      Even when you have the diagnosis and medication, getting effective treatment can by itself take years. The person taking the medication needs to understand its effects and be able to tell the doctor, in a manner that makes medical sense, "no, this doesn't work" when it doesn't work. I, for instance, suffer from overwhelming bouts of uncontrollable rage when I take Ritalin. The resulting damage has never been inflicted directly on the people around me, but it has strained or broken relationships and cost me thousands of dollars, at times when those costs were particularly onerous. One might expect this side effect to be immediately obvious, but it wasn't. I figured it out years after it started.

      In turn, I had to notice for myself (a) that amphetamine salts are not the same thing as Adderall and (b) that I was incapable of functioning when I was taking them. I then (c) had to bring this up with my doctor, and (d) be able to point out that I had been fine six months prior, when I was taking brand-name Adderall XR (fortunately, because I have severe ADHD, I hadn't disposed of old rx bottles). She then discovered that my monthly urinalysis results had shown, since my pharmacy switched me to amphetamine salts, that I was excreting none of the expected amphetamine metabolites. As far as the urinalysis was concerned, I wasn't taking an amphetamine at all. ("Yes, dr, I have been taking the drug daily. No, I haven't been selling it.") So she then had all the information she needed in order to make the judgment that I needed a different drug.

      Effective treatment of psychiatric conditions, in other words, can depend to a great extent on the ability of the patient to recognize, evaluate, and demand effective treatment. Novice patients rarely know how to do that.

    • dnate 14 hours ago

      Or live in a first world country with decent healthcare.

      • trollbridge 14 hours ago

        Then your biggest challenge will be distinguishing yourself as not having drug-seeking behaviour to get access controlled substances.

      • zahlman 13 hours ago

        I was talking about Canada.

  • ranger_danger 13 hours ago

    > I don't mean to be a jerk, but

    Honestly, simply omitting that entire first sentence would have made the post seem a whole lot nicer.

    • globnomulous 12 hours ago

      That's an excellent point. Noted for the future. Thanks.

dickstrawng 10 hours ago

Just a quick note before my post here: computer science and computer programming aren’t the same thing. CS is more about theory — algorithms, computation, logic — while programming is a skill you can use with or without a formal CS background.

That said, I know someone who started learning programming around 43. They enrolled in a local government-sponsored technical program that partnered with companies to offer internships. They trained hard, took an internship, and worked their way in — even though it took them over 3 years before they saw any meaningful income.

Now, about five years later, they’re doing well: they’ve earned several certifications, built a strong cv, and landed work at a company with a big name. On paper, they look impressive — even compared to me, and I’ve been programming since I was 13 and working professionally since 17.

But here's the thing: that path takes grit. They didn’t save much during those early years and had to stick it out for a long time before things clicked. Unless you’ve got real motivation and curiosity driving you, it might be a frustrating ride. If you do have that passion, though — go for it. Just do it with eyes open, and don’t expect shortcuts. this guy was passionate about money and he was always crap on interviews but he went through the internship route and now he's doing fine. I started at 13 but I didn't start making six figures until I was 20.

Remember: Even Hodor could not clear an interview these days, despite being perfectly aligned to his job role, but he got hired long-term via practical execution. and well, spoiler alert- his fate is pretty much every programmer's fate. To be eaten alive by.... LLMs?

rmason 11 hours ago

I'd encourage you, that's only a few years older than when I started back in the eighties. I began with desktop software and quite frankly there was a lot less to learn than you need with web development.

I'd encourage you to find a local user group in your area. You need a few people that can help you avoid dead ends of which there are many when you are starting from a blank state. In general there are going to be a couple of people that enjoy helping people learn. I've run a local user group for a quarter century and I always have gone out of my way to help newcomers.

My experience is that it is far easier than asking questions online. There are people for whatever reason love to criticize folks asking beginner questions. I have never understood that behavior but it serves to discourage people. I've experienced it myself when trying to learn something new and it is counterproductive.

noelwelsh 21 hours ago

In a good economy, one year is more than enough time to get a job (considering most bootcamps are 12 weeks, and I know a lot of bootcamp graduates who are employed as developers.) Learning on the job can be beneficial as you usually have others to learn with, and learning is contextualized.

Good luck with it!

  • ilamont 19 hours ago

    Are boot camps still a thing? I thought the bloom was off, as documented here many times in recent years.

    https://news.ycombinator.com/item?id=15095805

    • noelwelsh 11 hours ago

      Bootcamps are definitely problematic in many cases, and I'm sure they are not as popular as they once were. However I personally know a bunch of people who have been through bootcamps and are now employed as software developers, so in some cases they do work.

    • trollbridge 14 hours ago

      Boot camps are largely a way to separate people from their money and leave them in $12k of debt.

thomascountz 21 hours ago

I feel as if commenters have not read the blog post in the same way I have.

More than anything, what a self-starter community-taught coder needs is motivation, curiosity, and access to resources. It does not matter where you begin, so long as you have enough stuff to take the next step.

OP, as you've said so yourself, the places you can go are vast! And it's no small thing to have already made working things! Now is the time to play, discover what you like and don't like, start projects and abandon them, go down rabbit holes, get stuck and frustrated, to over-romanticize, to become bored, to feel like an imposter, to become jaded but then to be inspired again, and to experience the magic of making.

I wish you luck and thank you for sharing. I'm excited to learn from you!

  • chbkall 20 hours ago

    Thank you for your kind words and motivation. I would like to experience what you have talked about here.

iambateman 16 hours ago

Some advice…

You can get one of these ideas _done_ at a basic level, including learning time, in about four months.

Start with Laravel, use Livewire, and use Laracasts as a starting point.

You got this!

finnjohnsen2 16 hours ago

If you want the most job opportunities I would bet on the web and database backend. Almost all mid to upper size businesses has some custom made web solutions which stores to an SQL Database. There are lots of sub-areas within this domain like cloud, security, different databases, scalability, authenticatin, front end and the list goes on

  • SoftTalker 14 hours ago

    I'd say focus on databases, especially as someone nearing middle age.

    Front end/web work is a treadmill. Web frameworks come and go. SQL and relational databases have been a foundation for applications since the 1980 and that is still the case today. The investment you make in learning something like Postgres won't be something you have to throw away in 5 years when the next hype cycle around a new framework comes around. Basically after 30+ years in software, the one thing that is still relevant and that I can still do well today is work with relational databases. I got tired of running the web framework treadmill and am now years behind whatever people are using these days.

    Edit: also linux/unix shell utilities. Awk, sed, grep, xargs, and others form a surprisingly capable toolbox for filtering and shaping data, and they all date back many decades. I've never had to throw away my experience using these tools.

    • kmoser 5 hours ago

      Second your recommendation to learn Linux/Unix command line tools. I learned them decades ago so they come naturally to me but for somebody new them, in addition to plain old RTFM, I'd recommend also using AI/LLMs to learn to build the right command line args for certain tasks, then study its explanations.

RyanOD 15 hours ago

It sounds like you want to learn computer science but aren't planning to become a software developer. I think of this as similar to "I want to learn to play the guitar, but don't want to be professional musician"...to which I say - hell yes, go for it!

We are similar in a few ways. I love to build things and I also spent the early part of my career as a mathematics / computer science teacher (mostly web development...HMTL, CSS, JS). After teaching for six years, I transitioned into business (marketing) and now I'm employed as a website manager where my understanding of high level coding concepts allows me to communicate with our development team, but I'm not actually writing the code (though in most simple situations, I probably could).

To satisfy my need to build things and write code, I work on small, side projects. I recently built a near pixel perfect clone of Frogger with Pygame to better understand game design best practices and leverage ChatGPT for the first time (though, to be clear, none of the code was written by ChatGPT).

My advice to you would be as follows...

1. Try to have a narrow focus so you aren't overwhelmed. Don't go into this with a "I'm going to learn EVERYTHING!" attitude. Have a specific focus.

2. There are a lot of fundamental "best practices" that need to be automatic. Build lots of smaller projects and doing so with a language like Python (so you aren't also wrestling with the idiosyncrasies of the language) is a good approach.

3. Of course continue working. If you aren't planning to be a professional software developer, is there another choice?

4. Use AI, but NOT to write your code. Rather, use AI to critique your work bearing in mind the responses you get aren't always perfect. And sometimes you won't realize that until a month or two later and that's ok.

5. Find others with similar aspirations to partner with so you can hold each other accountable. Going on such a journey alone has always doomed me. With life, family, work, etc, I've never been able to sustain my enthusiasm.

6. Writing some crappy, novice coded little nothing project thing is infinitely better than writing nothing. Movement is critical. Just keep coding. There will be good days and bad days, but don't stop moving.

Feel free to reach out if you want to chat about my experience. As I said, I see a number of parallels. Best of luck!

albertojacini a day ago

I started when I was 34, for the same motivations that you describe. It become my profession and my hobby. I'm now 47 and I'm still enjoying the ride a lot.

  • chbkall 20 hours ago

    Right there is my motivation.

pglevy 15 hours ago

What I took away from your post was not that you want to learn computer science but that you want to build things with software. If so, now is a really exciting time because it's never been easier for people without a CS background to go from idea to working software.

As a UX designer, I've worked with developers for a long time, so I've picked up knowledge along the way. I've read some books and merged some PRs at work but nothing that would qualify me as a developer.

What am I'm having a lot fun with right now though is building with LLMs. If I have an idea, I'll just throw it into Replit or Claude Code to see what it comes up with and then decide if I want to pursue it further.

My 2 cents: learn by building. Start working down your list of ideas and dig deeper into questions and topics that come up. Will probably keep things more interesting than slogging through a course.

  • pglevy 13 hours ago

    That's fair. It depends on the goal. I'm not trying to change careers. And I didn't get that sense from original poster. I'm mostly interested in prototyping or addressing niche productivity issues. But I feel I learn quite a bit from seeing what the LLM does and asking follow up questions or looking things up. I've been around software dev a lot so that helps with knowing what to ask sometimes. My main point is if someone is interested in building software, they should start building as soon as possible. Don't feel you have learn everything first.

  • seadan83 14 hours ago

    > If so, now is a really exciting time because it's never been easier for people without a CS background to go from idea to working software.

    If this means to "learn" by using a LLM, I would be so wary of that advice.

    Not learning CS was a shortcut many people took. Sometimes lack of time (ie: they haven't learned it yet), sometimes a lack of will. Either way, I feel that CS fundamentals is like a car mechanic knowing how an engine works. Tends to make for a better mechanic.

  • andrew_lettuce 14 hours ago

    This helps with building, but how does it help with the learning? You don't understand how it was built, how it works out how to change our support it without an LLM. this is a very specific, narrow way of building.

bilvar a day ago

The things described as the goal of the OP are not Computer Science, they're mostly Software Engineering/Development. Even though there is overlap Computer Science is mostly math, completely irrelevant to setting up static blogs or web servers and somewhat relevant to developing applications. A more accurate title would have been "wanting to learn software development and the relevant bits of computer science which help with that"

  • xeonmc a day ago

    Also, software has two things going for older late-starters:

    - The mental muscles involved in the act of making software tends to be those that mature the latest, around 25--30. It is also the case for comprehending the concepts, because in the end software is mostly about "human rules for doing things" rather than "how things are in Nature, deal with it however you can".

    - The proportion of the total corpus of knowledge probably has the highest online-availability of any technical fields, rather than being completely locked-in to academic intitutions.

  • vunderba 16 hours ago

    Was surprised to not see this mentioned earlier in this HN post. Author seems to be conflating software development with computer science.

    Making a bunch of apps isn't going to provide a solid foundation in CS which usu. includes topics such as linear algebra, discrete mathematics, calc (at a minimum differential and integral), data structures, algorithms, etc.

    • bilvar 15 hours ago

      What's surprising to me is that I've received downvotes for mentioning this.

upghost 18 hours ago

If you want to speed run things and you have a little money to spend, I'd check out Dave Beazley's workshops, particularly his Advanced Python Mastery course[1].

One advantage you have over senior developers is that senior developers need to be generalists, you have the opportunity to go deep. It is entirely conceivable you could learn Postgres, JavaScript, or Python better than someone who has been programming in those languages daily for over a decade simply because they have a lot of other things to worry about. They can't read the manual cover to cover, no time. You can. Being a deep specialist in a technology has a lot of value.

If you find a programming community you love, start going to conferences as soon as possible. There are often financial opportunities available for new developers.

This is not going to happen overnight. In most cases to get proficient you can expect that working 3 hours a day, 3 days per week, it will take you about 3 years to reach a point where you might be employable -- although you will probably find you need to put in more time than that. But you can reach a point where it is enjoyable before then.

Good luck.

[1]: https://dabeaz.com/advprog.html

  • manuel_w 13 hours ago

    It sounds like you attended this workshop and can recommend it. Is that true?

    • upghost 12 hours ago

      I've attended 4 of them (3 in person in Chicago, 1 remote during Covid), and I took the raft algo implementation course twice (second time remote). Half of the reason I take them is bc the content is good and the other half is because Dave is just genuinely an amazing instructor and human being. It takes someone of tremendous talent to present such complicated ideas with such simplicity and humility and lack of jargon, he talks about implementing consensus algorithms the same way someone might patiently teach you to tie your shoe. In the era of Big Ego in Big Tech, it's a truly refreshing difference in perspective.

      Each course I took was accompanied shortly after by a significant increase in career, compensation, and understanding. Like anything else, it is what you make of it. All I can say is it was a very good experience for me.

burnt-resistor 9 hours ago

HN, Plex local media server + a torrent VPS box, Coursera, Etsy.

Okay, any other questions? ;o)

ramesh31 15 hours ago

Do you want to learn computer science or do you just want to get a job in tech? Because those are two very different things.

Learning CS means starting with the math, particularly for folks long out of school (the famous quote, "Computer science is no more about computers than astronomy is about telescopes"). If that doesn't sound fun then you probably just want to spend your time with coding tutorials instead. CS is... a science. Software is engineering.

mattlondon 21 hours ago

Good luck.

I'd recommend finding a MOOC course that covers some of the fundamentals of computer science to make sure you have a really solid grasp of the fundamentals - the whys and how's etc. Data structures, algorithms, networking, databases, design paradigms (so Object orientated Vs functional Vs whatever), testing etc. If they use multiple programming languages in different classes then all the better as I think learning more than one makes it easier to grasp the principles at a more theoretical/abstract level and not just how language foo does it and you'll find your favourite language(s) eventually in your own time so don't give up if the class is in a language you don't know/like.

It's tempting to use AI - I'd recommend you think of it as a knowledgeable friend who you can ask questions - is there a better way to do this/what alternatives are there? What does this function do? Why does this code do this and not that etc etc. You won't learn if it just implements for you, but as a learning companion you can bounce ideas off of or help you out of a rut etc it is great.

It is tempting to concentrate on like a React Bootcamp or whatever to get "practical skills" to start going off and building things, but I think that is like the difference of being the person who is paid to only assemble flat pack furniture following instructions vs the person who is paid to design the flat pack furniture and all the smart little fittings and how it all goes together and will it be strong enough and fit in the box and meet the price point and look like what the designer wanted it to look like and so on.

Finally, don't worry about writing "bad code" or bugs. We all do it from time to time and no one is perfect.

  • chbkall 20 hours ago

    Thank you for your kind suggestions and advice. Concentrating on 'practical skills' and 'shiny frameworks' is exactly something I want to avoid and focus on aspects (data structures, algorithms, networking etc) which you talked about.

    I will keep your advise on AI in mind.

  • patchule 19 hours ago

    “knowledgeable friend who you can ask questions”

    A friend who will randomly lie and mislead you in ways you can’t detect. Might be better to use ai for stuff like writing tests, summarizing data, and other low level stuff one can effectively supervise and where errors are low impact.

    I would not treat current llm based ai models as an expert or a trusted friend but as the exact opposite, an unfriendly fake-expert. Unfriendly fake experts are still extremely useful if they work for free and can be scaled up, so definitely op should use ai, but he should never trust it.

    • mattlondon 16 hours ago

      Knowledgeable human friends also make mistakes! They are not infallible experts who never get things wrong.

      Both humans and LLMs may know more than you and may have additional perspectives and experiences to draw on. Just like you'd not trust a knowledgeable friend to be omnipotent and 100% correct 100% of the time when you ask for advice, neither would you an AI.

      But the point I was trying to make was to not use AI to implement things for you (even tests) as you're not going to learn if the AI is doing the repetition for you. You can supervise yes, but only when you've been there and learnt the ropes already (i.e. when you are already an experienced software engineer and know the details)

jamesgill 16 hours ago

An analogy:

Jimi Hendrix never learned to read music. He did not know how to 'construct a chord'. He had no music theory training. He just made music, and learned what he needed along the way to make the music he wanted. He did this from scratch in less than 12 years (ages 15 to 27).

TL;DR: computer science and 'building things' are two different things. Let your urge to build things and your interests guide what and how you learn, not academic traditions.

Barrin92 21 hours ago

In some sense blog posts like this shouldn't even need to exist, or the doubt you can read between the lines. At 37 you're a decade and a half into adult life, you probably got like 50 years left or who knows how much with what the future will bring.

That people who haven't even reached middle age yet are already mindful of ageism when it comes to reinventing themselves is just crazy. There's something messed up in our culture around age. It's one thing I enjoyed about chess growing up. Chess clubs are one of the places where you genuinely meet people at every age and skill level and they don't feel like they need to justify it.

iwontberude 15 hours ago

I’m 37 year old wanting to unlearn computer science, let’s make a deal.

  • dickstrawng 11 hours ago

    Yesssss the classic midlife Big O of Disillusionment. Don’t worry — unlearning computer science is only O(n²) if you try to forget recursion manually. Just start with garbage collecting your memories of pointers and work your way up to erasing all trace of Turing machines.

deadbabe 16 hours ago

Being a 37 year old wanting to learn computer science out of personal interest is still way better than being a 22 year old who just learned computer science because they want an easy 6 figure job in the tech industry.

We turn away the latter more and more these days. In the past, hiring a junior software engineer meant you were probably getting an enthusiast of some sort, the kind of person who had their own side projects and crazy ideas they worked on for fun, and would stay up late into the night just coding. But now with the surging supply of new computer science grads, there’s a lot of people that just want to log in, crush tickets, and go home. And AI is making it worse. They have no love for the science, just a steady paycheck. But the truth is that in this industry, if you really want to push the boundaries of what is possible, love is an important ingredient. And not just for your company, but for yourself.

  • monkeyelite 9 hours ago

    yeah the culture is completely different. People are more ambitious and better at certain things, but it's just not the same interest and experimentation.

  • owebmaster 16 hours ago

    > We turn away the latter more and more these days.

    We turn to jobs too fast, too. People starting to code at age of 37 should create companies, apps, tech, no count on a job. There are too many people in tech looking for jobs now, 20 years ago a much bigger % of people in tech were creating jobs.

randomNumber7 21 hours ago

I would recommend to take the time and read some of the old papers and texts to get a deep understanding. Like Codd's paper on relational databases and Shannon's paper on entropy.

Also while I would not start a project in C understanding the memory model and how to implement basic data structures in it is s.th. every programmer should know IMHO.

ciwolex a day ago

If you want to really learn it and master it, I'd advise you start with a project to build something you'd like. With that in mind, learn a programming language. JavaScript, CSS and HTML will be a good start for the frontend. You'll then need some backend skills. You could learn MySQL and JavaScript will also help you develop the back end. Along the way, you'll figure out a lot of the stuff yourself. Avoid using AI at all costs if you really want to learn. Once you've mastered the skill, AI will be a multiplier. Good luck

  • 867-5309 21 hours ago

    they built the blog you (possibly) just read..

bluesounddirect 15 hours ago

Honestly if i were to pivot from computers to anything else it would be a skilled trade. Electrician , Mason, Plumber in that order . My father was a electrical engineer but all of his older family/ cousins were Taylors , carpenters and in the general garment business selling clothes, Its not easy work but i toil on cs stuff and have nothing to look at, for a sense of accomplishment.

akomtu 11 hours ago

A comment above is right: what works for a 20yo college grad won't work for you. If I were you, I'd find my passion, an idea that I believe in, then find OSS projects on github that are aligned with my passion and start contributing. Slowly you'll build a reputation in that circle and friends who would vouch for you when you try to get a job. Because the today's reality is that unless someone you know invites you, you won't get a chance.

markb139 10 hours ago

37 is young. Trust me, in a few weeks I’ll be 60.

My whole life I’ve known I was an engineer. However, for a great chunk of the early years I couldn’t express that and did really badly at school.

I just learnt at my own pace and eventually worked as an electronics engineer in the broadcast industry. Then quit that and moved into sw dev.

One piece of advice is to just build stuff, fail and learn.

Good luck

chickenzzzzu 16 hours ago

This is going to end poorly. The only semi reliable way to make money in this industry is unironically through grinding leetcode, still, in 2025.

rolandog 15 hours ago

Early 40's and just made a switch from ChemEng to DevOps 4 years ago, after having been nerd-sniped into the field constantly while I wore "multiple hats" at Former Employer's (scope creep applies to job functions as well, huh?).

I've been meaning to do a write-up or something, but there's never a right time. I'd write more, but I'm at a festival r/n. Hit me up if you want some (hopefully useful tips).

bitwize 17 hours ago

I think this is becoming more common.

I started programming when I was five years old, so I kind of fit the "whiz kid" profile that everybody thought all programmers would be back in the 80s. But one of the things I've noticed, is that unlike the situation, say, in Boston, where it was easy to find other former "whiz kids", when I attend tech meetups near my current city what I find is that almost all of them started programming in mid-adulthood, say mid-thirties to forties. Many of them even went to the same boot camp. But the joy and wonder they experience mirrors what I experienced at age five, poking at my Crazy Eddie's-issued VIC-20. I am utterly delighted by this discovery, as it lends further credence to the idea in my head that programming is something deeply satisfying to the human soul.

kgwxd 19 hours ago

Where's the part where you became qualified to teach Math, Science and Computers to primary students after dropping out of school because of "competitive exams" (exams aren't a competition)?

  • chbkall 16 hours ago

    I started teaching in a small village school (where they don't care about your qualifications if you are good at the subject and can teach). I did finish my college several years later.

    Well, in my part of the world - there are entrance exams for good colleges which can be cut-throat.

cynicalsecurity a day ago

There is no age limit.

  • dvh 21 hours ago

    There is, 127 years (nearest round number from maximal human lifespan)

    • matt3210 21 hours ago

      Appropriate given age starts at 0

      • greenbit 19 hours ago

        Drat, I forgot to wish my son "happy zeroeth birthday" when he was born.

        • dickstrawng 11 hours ago

          when he came out of the big O you forgot to make a notation?

heyak a day ago

Hey, love your journey!

moktonar a day ago

In the end it’s all about bytes and the meaning you assign them.

Edit: and algorithms

gxs 14 hours ago

If you wanted to work on rebuilding engines or modding cars, would you go get your phd in physics?

The answer actually is, maybe, depending on what you want to do.

You’d certainly want to understand and have a strong intuition for physics, but knowing how to solve a differential equation isn’t going to necessarily make you a better mechanic. Understanding the concepts of what you’re solving might, but the raw technical calculus skill will most likely not

I’m not saying this to discourage you, simply throwing it out there for you to keep in mind as you embark on your journey. A lot of the coding that happens day to day is SV is more akin to a mechanic working in the ship than a physicist in the laboratory (or in front of the chalkboard) and I guess it’s just my way of saying to stay vigilant that what you’re studying will enable you to achieve your goals.

Only you know them and you very well may need extra physics for the type of work you want to do - definitely not saying that’s not possible

A lot of people in the valley make people feel like if they don’t have a cs degree they aren’t real coders and shouldn’t be allowed within 50 miles of contributing code. Just so you know this is bullshit :)

I’ve come across all types of devs - from high school drop outs to egghead Phds and I’ve seen awesome and terrible work from both camps

supermatt 20 hours ago

> I really want to learn how to… (misc domain stuff)

From your objectives, I don’t think you want to learn computer science, you want to learn how to be a full stack software developer.

Learning certain aspects of computer science may certainly help you, but it’s by no means a prerequisite - and won’t help you to actually build things.

Learn the things you aim towards by doing and reading domain specific knowledge.

  • chbkall 20 hours ago

    The objectives I mentioned are somewhat guided by what I know at the moment. I really would like to understand computers and computing at a more fundamental level. When that happens, I am hoping my objectives will also change / evolve.

    • MonkeyClub 16 hours ago

      supermatt makes an interesting distinction there: if you're more interested in the practical/professional aspect, don't get too sidetracked in the theoretical side.

      Computer Science is fascinating and wide, but if you're interested in reskilling into a new, professionally profitable sector, veering too much into the theoretical aspect can prove detrimental.

      However, as you mention, your objectives will adjust the more you come to learn, so it's important to keep an open mind and read more widely than just the next necessary thing.

      Just beware of ADD side-tracking you, and have clear road maos. (Speaking from personal experience there, I always have to keep a check on my direction during both study and work, lest I lose too much time without much benefit.)

      Speaking of roadmaps to study, perhaps this site can provide an early guide, augmented by books and courses, for your chosen field:

      https://roadmap.sh/

      And don't let your age deter you. People who love what they do are rare and priceless in any age range. If a company doesn't want to hire you due to your age, then that's probably a company you wouldn't enjoy working for anyway.

addvicks a day ago

Stop writing about how you're going to do this, and just do it. Everything you need is available online.

Writing blog posts like this is a form of procrastination, and distracts from your stated goal.

  • thomascountz 21 hours ago

    > I designed this website on my own as well while reading the book Refactoring UI [2]. This took me almost 4 months.

    They have built something and they have used that something to shape a plan for achieving their goal. "Stated goal" and "just do it," are mutually consistent with "writing blog posts like this..."

  • mrkickling 21 hours ago

    You might be right but I also think writing down your goals can be useful if you want to achieve them.

  • zeroCalories 21 hours ago

    Blogging about your work can be great, and they haven't actually stalled out yet so you're being too cynical.

qwe----3 21 hours ago

A bit too much romanticizing the field of software for me... I'm not sure this will really help you rediscover yourself.

  • dickstrawng 10 hours ago

    someone baking cake should not talk about doing thermodynamics. I agree, this guy should go into vibecoding