Ask HN: Not smart enough to a programmer, where to take my life from here?
So I've been working in the industry for a while, and as a hobbyist for a good bit of time before that. Currently my career have consisted of writing and maintaining simple CRUD apps, and to be honest I hate it. Its mind numbingly boring and I certainly dont want to spend my life doing that. I've tried to branch out into a number of different things, but nothing sticks. I fail to understand, fail to recognize patterns, am too slow to understand simple concepts and never retain anything. Occasionally understand the individual concepts of something but then her completely lost when they're all combined in some applied method. Thi bis true not just for CS and software development, but other technical and mathematical subjects I've attempted to learn.
The typical suggestions for people in my situation dont interest me. These seem to be roles adjacent to what I do now and often, but closer to business then tech. These might include becoming a business analyst, technical salesman, fast tracking to management, etc. These are sound even worse to me than what I do now, and given the choice I'd just stick with development.
Now I'd likely have to return to some sort of schooling and I'm young enough to do it (I guess), but given my intellectual limitation and my stubbornness on what I take interest in, I'm not sure what options I have.
172 comments
[ 2.8 ms ] story [ 245 ms ] threadThe other prompt that felt interesting to me was that you feel an intellectual limitation in terms of what you retain, what does that look like in practice?
Reminds me of this famous scene: https://www.youtube.com/watch?v=Wu2HhlTEHMc
So I would start at finding which thing interests you the most. What meets the job criteria that you are looking for BUT also excites you? Then focus on moving in that direction.
Programming is a very demanding trade, and I don't think you can do it just for the paycheck, you need to have some degree of passion for it. If someone disagrees with me about this I'd love to hear different takes.
There are a small percentage of folk who are really good at programming and are at the bleeding edge making really cool stuff but for the vast majority it's just brick laying for a wage, which I think is fine but programming is exhausting so it's hard to find comfort and not burn out. I manage by having found cool guys to work with so it's a good laugh. I do wonder what I'll do when I finally just don't have the mental resilience to write code anymore and have to find another job.
Consider that many people out there are doing repetitive and demanding physical labor "just for the paycheck". I'm sure those people would love to trade with someone who is sitting at the desk for 8 hours and earning 4-5x the amount, even if they had to do nothing but pressing the same button the whole time.
There are more people writing programs as a daily grind for a paycheck than as passionate artisans practicing their craft, and it's only getting more so as "CS" becomes an increasingly blue-collar field.
What you said strikes me as a rather dated view of programming. It was certainly more true back when just to operate a computer required significant resources, skill, and perseverance. It used to be such a horribly tedious, time-consuming chore to program them, that it often required something like passionate interest to stick it through.
I don't have any different abstract or psychological take on it, I just know people who have programmed for 30 years who don't love it now, and some who never loved it and always wished they were doing something more interesting. They are also perfectly good programmers, who work because they get paid for it rather than some spiritual edification.
I've moved past that. I still write software but now it's more a means to an end. It's best if I'm working on something I care about and code is just how to get there.
It's not all one or the other though. I started learning Rust and that's kinda cool on it's own because it's no so tedious as C++. Point is that my interest in writing code has shifted a lot and I still do it.
Another factor, though, is that the interest generated from programming can be related to the thing a person is working on. A crescent wrench would be a boring object if all you did was wack it against the ground. But if it becomes a critical feature in constructing something, one probably acquires an interest. I can say that there are many things within this general field of playing-with-computers that I have previously found uninteresting, and now am quite fascinated about, but only because I've found uses. I've also been painfully unenthusiastic about some assigned work.
I'd also find it unlikely that humans in general are not interested in "making things," and insofar as programming/software is a vehicle for this, do possess an intrinsic potential to explore the field and acquire an interest. But the field rewards the independent-minded, as it's mostly through your own work, on your own projects, that generate a lasting interest (I believe).
You need a reason to do things. A problem to solve, because people are problem solving machines. We make up problems if we don't have any at hand. Games are made up problems. But making things better in some way, is the best and most motivating kind of problems people can have.
So don't program for programming sake's, program to solve a problem that you care about.
And I will say, and I have often repeated that software development, programming, is a horrible job if you don't love it. Programming sucks if you don't enjoy it. It's too much thinking, too much abstracting, too much typing, too many meetings, and horribly, horribly boring - unless it's your thing, and then it's not.
OP, don't force it to be your thing if it's not your thing.
You may also have some depression. It may genuinely be worth seeing someone about that to help you navigate it and grow and cope with it. Depression is horrible, and any step that can be done to help yourself through it is a huge win for your own peace.
There are interesting things, sure, but those are usually fleeting. You'll be interested in something for a month or two and then lose interest in it. You can't earn a living on that. What do you do then?
Unfortunately, UBI is very far away, so whether something interests you or not, you got to pick up the least worst choice and get on with it.
No that is not. We treat disease. Pretending we can fine-tune personality traits is quackery, and no respectable mental health specialist would lay claim to that.
But don’t worry - quacks abound, and they even take your insurance.
They're usually much more science driven and grounded.
I don't know if the best person to help someone through this process of introspection is a psychologist or a life coach or a spiritual director or a teacher or a stranger in a coffee shop, but it seems like there's a place for it somewhere.
I think you have to constantly be reading and learning about things on your periphery. It can take a long time before your interest in something is strong enough to decide to do it for a living.
The coworker and the person he was talking to were both very confused by how anyone could ever want to live that way. I had a very different reaction: if I had been aware that this was an option when I was 22, I totally would have done that, but I just never considered it as a possibility.
Even almost 20 years later it still sounds like a great life, other than the soul-crushing guilt and shame I would feel...
I think that is the point of the parent comment. Some people think it is horrible, like a result of having no options, and some people think it is ideal! Personally, I would go crazy without deadlines hanging over my head and lots of resources to tackle those deadlines with.
Programming is just a really hard one to do if you're not interested, possibly only because of the number of people who ARE interested (or at least some point were and they got to the point they could actually just surf along).
While there are many other factors here that I don't want to get into (such as loyalty being a two-way street and so on), I often wonder whether the idea of "this is not a hobby, it's a job" might have a bit of truth in it. At the end of the day, honest work is better than no work, and we all have to be adults at some point at start pulling our weight.
Would I prefer everyone to have UBI and work only if they want to? Definitely. But not everyone can be passionate about what they do (is anyone really passionate about packing items for Amazon?) and I guess sometimes you draw the short stick.
I am still doing it the hard way but vastly preferring doing it for myself, instead of for ungrateful bosses that pay penny on the dollar for the privilege to ignore their employees and only ever do something to fix unfulfilled promises when people have already been burnt and it’s too late. I’ve heard again and again from peers that bosses only come round to shitty situations when good working employees threaten to leave and by then it’s too late.
This time it’s the bosses drawing the short stick and they are complaining like they are entitled to employees. You want people to stay? Make it happen, don’t whine.
I have been in management, I know what it takes. Man up.
You just sign up in the system and choose a shift. Some jobs need an introduction and your account is cleared for them once you attended. If you meet a certain amount of shifts worked you get a t-shirt and preference at next-year-ticket purchases.
What you usually see is even the people with the menial jobs getting really into them as well. The ushers will experiment with new routing to make it faster, the people running the checkroom will optimize the hell out of it and have a competition with the next shift.. it's good fun.
This works because a) they want the whole endeavor to be a success, b) they are allowed to freely fulfill the roles and experiment, c) nobody in particular and everyone in total profits from the work done, d) you can pick up one shift or 20, it's up to you and surely a couple more.
I think it is possible to be passionate about packaging items for sure, but not like this. So I wouldn't say it's impossible to run society with UBI, but it will have to look quite different.
Yes, you can! At least for a short time. I went to New Zealand on a working holiday visa. I did a lot of odd jobs there. I did fruit picking for about one month. First I thought it will be boring, but it turned out really satisfying. You can start optimizing each step of the process, shave down a few seconds here and there, finding better ways to do things. In the end, me and my girlfriend were in the top 5 five with some Japanese people (they are crazy fast), and on average we picked and packed 2-3 times more than the average.
I just want to point out some seemingly boring jobs can be satisfying.
I read a lot of horror stories about Amazon. It won't work with the current way, but that is a good thing. Amazon will have to upper their workplace standard otherwise nobody going to work there.
I recall clearly how amazing mini quadcopters were to me! I bought some, I wrote 3D models and designed my own 3D printable chassis, I even made one from ground up, with FPV camera and all! I built and flew (until destruction) maybe 20 or 25 quads, it was all I did, all day, for 2 months. Now there's a box of spare parts and unfinished related projects that I won't touch before the day I decide to throw it all in the big "electronics junk" bin for use in future projects.
these feed off of each other. No one is born liking spreadsheets or birthing or insects or woodworking.
when you're young, spend time immersed in different things. some will naturally fit better than others, and you'll see possibilities open up. not everyone has that luxury, however.
I'm one of those people who doesn't have trouble understanding things, but a LOT of trouble doing things and I look at the people that have the grit to just push forward and man, I envy their work ethic and focus. It's incredible, truly, how it seems like they can just keep plowing through rough stuff and come out with a solution that works.
It may not be the pie-in-the-sky prettiest; but, it works. It works well enough; and, if you're at a small company, it may have literally saved your business.
This has nothing to do with hitting the ceiling of your capabilities. You don't like the things you're doing. I don't even see any reason to say you don't like programming, just that you don't like what you're doing now.
> This has nothing to do with hitting the ceiling of your capabilities.
He also wrote "I fail to understand, fail to recognize patterns, am too slow to understand simple concepts and never retain anything. Occasionally understand the individual concepts of something but then her completely lost when they're all combined in some applied method."
Whether you're good at something is not strongly related to whether you like doing it.
In contrast, being good at jobs that require 'thinking slow' (reference to Daniel Kahneman's book) and creating solutions to new problems every single day usually require motivation or perseverance if you wish. These are more or less measures of interest and if you don't agree, then they are at least strongly related to interest.
After a blow to the head that caused some noticable brain damage and loss of IQ points, I'm still interested, but it's a LOT harder! I remember thinking much vaster thoughts than I can think now.
Which sucks, actually. But I don't actually know what I can and cannot do, or what I am not willing to work hard enough to achieve, because before, I didn't ever have to work for it, you know?
Programming itself, though, say Genetic Programming or embedded systems for video codec for satellites or the such is still simple enough, so I guess I should be grateful for that! :-)
This might point you in a good direction though: https://omega3innovations.com/blog/the-road-to-brain-injury-...
* did you ever go to college for programming? if not, a lot of the 'patterns' people see were beaten into their heads in college, so that's something that can be helped :)
* have you ever done competitive programming, like TopCoder problems (the old ones. Last I checked, TopCoder has gotten WAY over my head and probably a lot of other people's heads, too)?
Doing programming problems can be a great way to flex those muscles and see common patterns in code and problems you need to solve. It might be able to really help you :)
Topcoder is the one a lot of people know, but there's others out there. I kinda liked this one, and it's used as a recruiting tool, too: https://app.codility.com/programmers/
I refuse to believe that. It depends how much motivation, discipline and perseverance you have. The human mind is capable of anything! If there's something that you think it falls your capacity is because you haven't put considerable effort on the task that you're trying to achieve. And if you think you have set a truly high bar, then try achieving less intimidating tasks, even if you aren't successful for the original task you've set for the learning journey can even be more rewarding.
Yes, perseverance really matters, and that comes either from interest or grit. But it's not always enough. It can be a lot of fun practising guitar for 8 hours a day if, after a few months, you feel you're making some progress. It's not fun, if even after a few months of long hours of practice, you forgot the concepts from the beginning. Passion only goes so far, we shouldn't romanticise failure too much. Sometimes it just isn't a good fit and sometimes that's because of limitations.
That having been said, not trying to dismiss your point, it could very well be that the person is intellectually capable enough, but just doesn't think programming is fun. But I wouldn't take that as a given and in all honestly, it doesn't seem like the most likely case either.
What I'd take away from what both godelski and me are saying (if I were you): Find topics that sound interesting to you, dig your heels in, learn about those, play with the concepts. 9 times out of 10 something will come out of it, and if its just yourself understanding better what you're actually looking for.
... and it's hard to be interested in something you aren't competent at.
Took me multiple years, probably a decade between my first hello world and my first job, to become a programmer.
I just didn't give up
It sounds like you're basically at square one. Do you have another skill set? Are you particularly interested in some other field? It's difficult for a stranger to give you life advice when all we know is what you are not interested in or capable of. Tell us more about what does feel engaging for you, and we may be able to help more.
If you find yourself having trouble figuring something out, do not beat yourself up over how much trouble you’re having. That type of thought takes you down a really rough negative spiral.
Instead, focus on your desire and will to figure it out or get it done. Believe in your ability to figure it out and then go prove yourself right by using your will to do so to power the work that will get your where you want to go.
You have the power to pull yourself out of the rut, and you can get help from folks like counselors and peers too. But fundamentally, I have found that it takes a strong internal will to get out of a rut. I think that you can find that will and act upon it.
If youve already made the decision you are leaving programming... Can you think of things you have enjoyed about your career to date (i.e. coding, testing, designing, meeting people etc)? and what was it that steered you towards the career in the first place?
The answer to your dilemma might be a new career. It might be cognitive behavioral therapy. It also might be an SSRI or modafinil.
I have my guesses but they aren't at all interesting, the point is to get in touch with a professional who can help you figure this out.
What you're experiencing isn't normal, or inevitable, and it doesn't mean you're not intelligent. Although hey, you might not be, how would I know? I think that's the least likely explanation out of all of them.
Some points:
- pattern recognition is basic brain function and everyone has it
- you need PERFECT health to be smart; check testosterone, sleep, weight, nofap, exercise etc.. 90% people have brain fog for some stupid fixable reason
- there is nothing wrong with CRUD app maintenance if you make good money. Challenge is nice, but gets old very fast, unless it is a hobby.
- avoid relationship until your life is in order. Huge time sink and ruins concentration.
- stop reading crap (politics, twitter... )
Not sure what was condescending. And I am smart, my mother had me tested ;)
Oh boy.
> 90% people have brain fog for some stupid fixable reason
[citation needed]
> avoid relationship until your life is in order. Huge time sink and ruins concentration.
A healthy social/romantic life is never a time-sink, unless you're extremely short-sighted.
If we read between the lines here, it's clear that the OP is struggling not with what they were literally describing (somehow not being smart enough) and instead something different (burnout and maybe depression). And, if that's the case, then, as another commentator noted, "mental issues can can make subjective impressions unreliable or misleading" -- if this is the case, planning for increased productivity and mental hygiene (as wonderful as that all is) is probably not going to be a very useful next step. The next step is addressing the root cause, which is career dissatisfaction, potentially early career dissatisfaction.
First of all, OP, do you enjoy the labor and lifecycle of permanently helping your customers solve their problems? It's okay if you don't particularly care about the customers you are serving now while on the job -- you can change that. It's okay if you're not the star producer for the team -- you're still early on in your career, and so you're still learning to how to produce like a professional. What's important is that you at least somehow like the act of problem solving for customers, and that you are orienting yourself correctly to ensure you remain growing. It sounds like you feel like you're not growing anymore, or that you're stuck.
Why aren't you growing anymore? Is it a feeling, or a measurable issue with a very specific metric boundaries where it wouldn't be an issue? Are you running into problems inside your company or team? Do you think it would still be there if you were on a different team, or one at a different company? Do you think your issues have to do with purely internal factors or a mixture of both? Anywhere in between here could be possible, but if you're early career, just know that having experience at multiple companies really reduces a lot of ambiguity into things. Don't back project your identity in stone based off of a single work experience. Companies are a lot more chaotic free-for-alls than they are well run meritocracies, so it's not always easy to accurately trace back your track directly to your capability. Of course, as you do gather more data, you will be able to detect patterns and trends, but they'll be specific to you as a person. I think that's why it's important to work with a professional or in other way focus on healing if you're at the point of feeling burnt out, which is necessarily something that you have to spend some dedicated time recovering from (having been there before, it has taken me months before). For some folks, it can even be years.
First of all, you need to find a new job. Even if the new one doesn't work out, you need to collect data and experiences about what it's like at different companies. There's a world of difference between a stagnating train-car, a sinking ocean liner, and rocket ship. Once you've been on more than one...
I understood that some relationships can bring a unbelievable chaos in your live. Been there, done that.
But I think it's very very important part of your life and you can't really have your life "in order" if this question is left unsolved.
I'm skeptical of the idea that you're not smart enough. In my experience, becoming a good programmer requires some relatively low-threshold capacity for logical thinking combined with a tenacity for debugging and understanding how things work. Being a genius who picks up math and CS concepts quickly is far from required.
If you struggle with patterns and applications but are bored by simple CRUD apps then it may be the case that you just don't like programming that much. That would certainly make it very difficult to learn and retain anything.
Overall though, you sound more depressed than anything. If that is the case then it colors all perception of what you enjoy or don't enjoy, and probably should be addressed directly before making any major career decisions.
Try taking some time off to decompress and talking to a psychologist. It's a slow process and it can be very challenging but with time you can start getting excited about new challenges again.
All that really matters is if you can build things that work.
People who can do the above will get paid, can even be CTOs.
So what if Google wouldn't want you as a programmer, that's for a particular type of person.
Again,I really believe its more about preserveerance and interest, not inherent intelligence. If you can build and maintain CRUD apps without an issue, then with time and effort I am certain you could progress to other more interesting challenges given enough effort.
I guess part of the problem is that those problems tend to be rare. The way I feel, is that if I have a problem, it's likely already been solved (in which case I'll just use that solution), or people much more intelligent than me are already working on it.
Another issue seems be be is that as time goes on, the problems I take interest in seem to become much more difficult to solve. This may be because they are technically complex, but can be for other reasons too. Often I don't even know what I need to be learning / researching to solve a problem, and that basically halts me.
Complex problems are good if you care about them. A smart person working on it is a good sign. You just need to find a small way to contribute or even just to learn, you don't need to take over the world. Just do one small thing towards finding what you care about.
In short, don't worry about changing your current routine and job, try to find something you really care about and work more on that in your free time. Trust your gut.
Also look up 'imposter syndrome', it does sound a lot like you're suffering from self-esteem issues too so maybe get someone to talk with?
But if you really can't think of anything that suits you or motivates you, then I think the problem is your own behavior and thinking patterns, that you need to change. You seem to have gotten stuck in a rut, so a nice break from it in a form of say school doesn't seem like a bad idea.
Don't however, let the fallacy of sunk cost misguide you. Just because you have been doing software development doesn't mean you can't switch to manual labour. Or that your next job has to be somehow related to your current. Listen to your own emotions and thoughts, don't let the past weight you down.
For example, that one very good programmer and Youtuber, bisqwit, actually works as a bus driver. Which I think is really encouraging in showing that even if you are really good at something (or you like to do as your hobby), doesn't mean you have to pursue it as your career.
Sooo... right now thanks to covid19 basically every class at your local community college is online try a GIS class, it's a little bit python, a little bit SQL, a little bit data science-y and sometimes you go fly a drone around.
Or you know something else, the point is there's plenty of fields that aren't explicitly tech adjacent that the ability to program at all gives you a somewhere between a head start and superpowers.
BUT also I'm with the other guys too, maybe talk to a therapist.