
Ask HN: I am 30+ and bored with life and the software industry, what do I do? - zippy786
I used to love software&#x2F;programming but it&#x27;s getting boring now. It seems so clear to me that so much futile effort is being put into building yet another language, yet another editor, yet another UI rework, yet another infrastructure rework. And for what, just because people would have something to show for. Seems the number of people trying to come up with futile things for the sake of popularity has outnumbered the ones who try to do real work.<p>The hate for one language as if other languages are elite. Trying to use all the features of a language and thinking a one liner is cool even when a five liner and a one liner is same when compiled into machine code. Too much jargon, falsely claimed software engineering practices and overly zealous object oriented mentality (Seems people try to use Object Oriented for everything, they call it the best, even better than simplicity in many cases.)<p>Quite frankly many years of self hacking&#x2F;studying and experience in industry, I think I&#x27;ve just had it with software industry. Does it get any better ? Am I seeing things correctly ? Is this a burnout ?
======
yankoff
Try diving deeper into real CS, there is the entire world of things that can
revive your passion. If you mainly were focused on building CRUD apps and
websites it's not surprising to get bored and burned out. Get out of your
typical routines and try finding challenging stuff to do. Some ideas:

* Figure out how to write AI for games. A simple example would be, how to write a bot that finds shortest path out of labyrinth.

* Check out graphics programming

* Try to see if low-level programming is for you: kernel level, GPU, OS

* Check out infosec industry, there should be a lot of fun there: malware analysis, penetration testing, etc

* Machine Learning: tons of coolest stuff. predicting, classifying, reinforcement learning, neural networks. Check out Kaggle machine learning competitions.

* Checkout competitive programming sites. My personal favorite is hackerrank.com, but other popular ones are topcoder.com, codechef.com, codeforces.com. Try doing challenges for a couple of weeks you may find that you learnt as much as you previously learned in a year. Also through it you may get interested in particular algorithms and fields.

* Distributed programming, system engineering. How to build systems at scale? How to process tons of data in parallel.

If you don't seek for the new challenging things to do that could improve you,
then you will find boredom and burn out in any field.

~~~
ak39
An Ode to "CRUD" Apps:

There's nothing unexciting or less complicated or challenging about producing
_good_ CRUD [sic] applications.

I don't understand the industry cynicism towards producing good quality "bread
and butter" software for any vertical market.

It takes years of experience to learn good (relational) data modeling.

It takes years of dedicated attention to assemble tried, tested and efficient
user interface designs that your user community loves to use on a daily basis.
User interface design (and yes, we are talking about your "boring" invoice
capture screens here) may seem easy at first glance to be dismissed as
unexciting, but almost every real world example is a challenge that requires
creative thinking. Many are implemented badly.

It takes hard knocks experience to add gems of strategies to your repertoire
of "boring" reporting solutions. Producing industrial volumes "TPS reports"
may sound boring, but architecting reliable and efficient reporting solutions
is hardly easy.

Another challenge of the "1 inch deep and 1 mile wide" mental specter
associated with "CRUD" apps is managing the challenge of excatly that - the 1
mile wide sprawl. Each CRUD app may be simple and boring on its own, but how
do you manage several of them on one site such that each one not only operates
efficiently with its own specialisation but also as an integrated whole with
others? These are not simple or by any means boring.

I love CRUD apps. I love seeing different CRUD apps in specialised domains and
how similar concepts of the CRUD world manage to solve specialised needs of a
particular niche.

Fascinating.

:-)

~~~
bbcbasic
> User interface design (and yes, we are talking about your "boring" invoice
> capture screens here) may seem easy at first glance to be dismissed as
> unexciting, but almost every real world example is a challenge that requires
> creative thinking.

But how does this tie in with the manager who says 'it's just an invoice
screen, why are you taking so long' probably based on the mentality that $
revenue is proportional to # features.

~~~
ak39
Fair enough. This sort of standoff with pointy-haired managers is always
politically tricky. You have to show the manager that there is business value
in creating effective and efficient user interfaces and that "getting it
right" ultimately saves money. If you are developing software for high-volume
capture, your manager will understand that doing it correctly is the main
feature.

Also, I've noticed many end users are not confident to comment on what they
believe is an inefficient interface. So, problems with user interfaces are not
spoken openly unless the interface completely blocks the user from completing
his/her task. It takes some amount of permission-giving from the developer's
side to get valuable feedback that would otherwise not be spoken about.

~~~
bbcbasic
Unfortunately in the enterprise, the purchasing decision maker is usually not
the user, and may not even use the invoice screen before deciding to buy. So
in the short-medium term it is not in the interested of the business to make
it awesome. In the long term ... maybe.

The exception to this is in situations where the market is being disrupted.
For example when the iPhone 3g came out it just made any other hard-to-use
smart phone look like shit. And thus the competition was forced to catch up.

However in enterprisey applications we are a long way off that. The awesome
invoice screen may add value to the customer, but not much if none of that
will be captured by the provider of the software.

Unless a certain class of invoice screen is on the list of must-have things
the buyers must have, because it is a particular pain point. In which case you
will be told by the pointy haired boss to make it awesome, it won't be your
choice as the developer.

Damn I sound cynical!

Your point about users is spot on, and we have all been such users. I mean you
have used MS Word ... right? And often at work we have to use such
applications. We just push on through. Users that are not programmers may not
even know to question it, they assume that is the way it is unless they have
used a competing product.

------
leap_ahead
I was there some years ago. I realized that the root cause of the problem was
focusing on the wrong things (at least they were wrong for me).

Tools are just that - they are tools. Granted, there are many of them, new and
shining, coming in all packages, but that gets tiresome after you've spent a
substantial period of time with them. They are all essentially the same and
sooner or later you lose interest in them.

What never gets boring is using tools to create things that affect people's
lives. And I gather from your message that you've missed that joy.

My advice is simple. Think of some thing that would be helpful to (non-
technical) end users. Come up with some kind of service that would solve even
a small problem for them. Then see your eyes light up as people are adopting
your offering and giving you their thanks.

In short, your work must have a meaning. You should know that somehow what you
do improves the world we live in, even if in a small and seemingly
insignificant way. For as long as you're just finishing tasks prepared by
somebody else for somebody else's meaningless projects, you're not going to be
happy. As with all creative professions, in programming too you have to take
matter in your own hands.

You've just realized (subconsciously) that your work has been meaningless. You
basically need to find your path. What you could do:

\- Forget about the tools, just pick up something you're comfortable with and
create something useful for people

\- Change jobs until you find a project you can personally identify with and
where you'll see you work affecting the outside world in a tangible way

\- Change profession or role to the one where your need for meaning will be
satisfied

That's hard I know. I wish it weren't but it's just the way things are in
life.

~~~
CyberFonic
Amen! You've said it far better than my attempt.

------
ChuckMcM
It sounds a lot like burnout, that happens when you've worked really hard to
achieve something which, after achieving it, you come to realize wasn't all
that important to you personally. It can really take a toll on you mentally.

It can also be something of an intra-life crisis. For some reason 34 hit me
really hard. I think part of it was that suddenly I knew that there was some
things that I had considered "something I'll do some day" were probably off
that list, permanently. Like a friend of mine who realized he wasn't going to
ever be one of the world's top jazz musicians. (for me it was being an
astronaut) And the realization that this is "all" there is, you live, you
experience life, and you die. There is no "win" there is only great times and
not so great times. All of that came down pretty hard on me in my 30's.

My coping mechanism is finding something new to learn, but that certainly
doesn't work for everyone.

~~~
meric
You can save up $200,000 for Virgin Galactic, it has some delays and problems
but I think it will be ready in time for you to experience being an astronaut.
(Training, preparation, take off, landing, and telling stories about it). If
it's what you want to experience, go for it.

If not Virgin Galactic there will be another company.

~~~
jacquesm
Space tourist != astronaut, _if_ they will ever deliver. Roughly like being a
bus passenger is not the same as being a busdriver.

~~~
robryan
I suspect most people don't have much of an interest in the actual job of
being an astronaut. Simply want to experience a trip into space.

~~~
ChuckMcM
Well in my case it was "doing science, in space!" which was something I
thought would be really cool, after all if you're in space you're already in a
target rich environment for discoveries, and then getting time to do science
there? Well no end to the things you could find out. As a kid I used to write
down space experiments in my notebook[1] that I would do when I was in space.

[1] Not exactly epic experiments though, I recall that one of the sillier ones
was tie two fans together at the base, with their blades facing opposite
directions, and see how fast it would spin.

------
CyberFonic
So you've stopped drinking the Kool-Aide ?

I totally agree with you. Technology for the sake of playing with technology
gets stale after a while.

The software industry loves re-inventing things and attaching new labels. You
are absolutely correct that regardless of what language/paradigm/methodology
you use eventually every program results in machine level instructions being
executed. In some cases less efficiently than in other cases. It's not about
the program, it's about the problem being solved.

Only you can decide, based upon the other comments and preferably after
competent medical advice, whether your situation is a case or burn-out,
depression, mid-life crisis, etc.

Assuming that it is none of the above, then you might want to consider finding
a "real world problem" and using your knowledge and expertise to create a
solution for it. If you can't find any worthwhile problems (yet) then go
travelling! It will open your eyes to a massive, colourful, complex REAL world
out there with its myriad problems. Sooner or later you'll find something you
care about enough to want to solve.

~~~
leap_ahead
Something I also wanted to say. Consider changing your scenery. It might give
a boost to your morale and supply you with new and better ideas. Perhaps find
a job on another continent for a change.

------
ranty
You've not burned out, you've matured as a programmer. You can see all the
crap for what it is so now try and make a difference...

Champion the cause of code that's legible - and that doesn't mean covering it
in syntactic sugar. Legible code makes it _damn_ _obvious_ what it does and
how it does it. Sometime find the "power take off" for a tractor ... that's
what you're trying to do.

You can also champion the cause of not fixing that which is broken. There is
also fun to be had demonstrating the technical debt is real debt and it does
need to be paid back.

Much fun introducing peer review, too.

Get yourself, your team or whatever to sit next to your damn customer. Have
them look at what you're doing at least once a day so they can say "oh, no,
not like that" before it turns into a $100k fuckup.

So, yeah, you've just got through to the next level. It's not the software
that's the challenge, it's the people.

~~~
wtd
I agree. You need to take it to the next level, and don't just consider
software and coding projects. We all love to hate on 'management' in companies
of all sizes, but the world would be a better place for all of us if managers
had your deep technical expertise. You'll be of more value to the company
architecting the solution (or preventing the next $100k screwup), and matching
people to the right places, than you were coding.

------
batou
I'm there. I decided one day that it's just a job and found what I really
wanted to do.

So I'm reading maths and physics now. The joy in my life is actually from
taking things to pieces and seeing how they work and there is plenty of that
there.

For more of being with you, my company drank the microservices kool aid.
Rather than concentrate on building a quality product we've got buzzword
soaked boiled shit that doesn't work properly. There's nothing wrong with
microservices in principle but they lack the talent and experience to pull it
off. So there I am, a doomsayer, a figurehead on a ship of fools.

Edit: Just to add, I work for liars and a personality cult and that is the
root cause. Why don't I leave? Money is amazing and that gives me the freedom
I need.

~~~
Bahamut
I'm sort of in the same place, but I made a choice for less income (compared
to the open market at least - still more than my last position) for less over
40 hour work weeks.

I don't mind when a company I join has some awful code - it sucks to work with
at first, but it leaves me never bored since I can make my mark improving it
and learn while I am at it. I work to schedule fixes to go along with feature
development & try not to worry beyond that. There are many things to do in
life, most not involving programming. I rather run with friends, travel &
visit places with friends, research & code whatever I want without work
pressure, play video games, and just overall have the freedom of choice.

I hope the OP hasn't fallen into this trap.

~~~
batou
Yep. I decided to take the piss as much as possible.

I wanted the income and less hours and demanded it. They said no, so I
automated most of my responsibilities and do a 25-30 hour week anyway. I work
from home and most of my job is thinking and that's non-deterministic.

You only live once (I shudder saying that but it's true).

------
pm24601
Software is just a tool. A crescent wrench is just a tool. A paintbrush is
just a tool.

Don't fall in love with a tool, fall in love with using the tool to make the
world a better place. If you are not making the world better, then you are
missing the whole point.

~~~
taphangum
The best answer.

------
grecy
I got to the same point a few years back.. so I quit my job, sold all my stuff
and drove a $6000 Jeep Wrangler from Alaska to Argentina for 2 years. [1]

I've just been back at a desk for 4 years, but am again burnt out so now I
quit again, and I'm driving around Africa for 2 years starting in a couple of
months.

Get out and live, I say!

[1] theroadchoseme.com

~~~
fidz
Pretty cool. Btw, how was your feeling when you spent your money for this?
(Given the fact that those are your money you get from your job)

~~~
grecy
I've never been happier to spend money in my life!

I honestly felt like I was spending money to live, rather than to die slowly
by going to work.

I spent roughly $1200 a month on the trip [1], and prior to leaving, simply to
go to work every day in Calgary I was spending that much monthly. So it really
was a great feeling to be spending no more money, but to be really alive every
day.

[1] Full breakdown - [http://theroadchoseme.com/the-price-of-
adventure](http://theroadchoseme.com/the-price-of-adventure)

------
youngButEager
Invest in Real Estate. Period. I've made million$ in Silicon Valley property.
I bought a bank-owned, decrepit 9-unit apartment building just 2 years out of
college. Making huge monthly deposits into savings/brokerage account is
exciting stuff.

Reason I mention this -- RE save my arse when I reached your level. Easily
replaced the coding income, even though I was consulting in my last few years
for $120 to $400 per hour.

I have friends who could not get hired in their 40s. At that time, I had not
had a regular job in software for 10 years. I'm now 20 years past my final
full time job and just making tons of money in Real Estate. Unlike coding
tools, the tools you develop to purchase and manage properties _does not get
rotten_ like vegetables at Safeway.

Let's face it. We're some of the smartest folks on the planet. Do you _Really_
think any of us can find intellectual stimulation after many years of doing
the same thing? Very few of us can.

Do something different. RE is different and will replace your income.

~~~
AdieuToLogic
Glad you shared your monetary success in real estate, but how does that have
anything to do with the OP's question?

> I have friends who could not get hired in their 40s.

In the software development field, this is just plain BS. Of course, your
friends "who could not get hired in their 40s" may not be in software
development. My apologies if interpreting your statement led me to an invalid
conclusion.

------
donquichotte
Have you considered taking a break? I did 3 years of menial work after
graduating from a good university, got really bored, and now I'm going from
central Europe to Mongolia on a motorbike. It's an absolutely refreshing
change. I'm not sure how long the euphoria will last after getting back
though.
[http://www.silkroadmadness.blogspot.com/](http://www.silkroadmadness.blogspot.com/)

~~~
atmosx
Thats fantastic! What kind of motorbike? Good luck, i am sure you will have a
lot of fun! Turkey (Kapadokia, etc) is amazing but I am sure what you will
find deeper into Asia is even more fascinating.

------
tuyguntn
I am not in your situation, younger than you. HNers already advised you with
lots of technical things to do in next days/month, my advise would be (if you
dont have) get married and have a child, you will be amazed how little child
can make you relax after stressed workday.

What you get:

* Family who is waiting for you at home

* Happy weekends

* Rest, visiting places with them and take a rest

and lots of other things, also visit your parents, make them happy, remember
about old days and be with them

P.S: I am not native speaker, probably made lots of mistakes and my text
sounds like robotic, sorry

------
n0us
Assuming you have some money saved up, go on amazon, buy some books, anything
you really like that isn't tech; philosophy, history, literature, music
theory, whatever makes you tick. Find a job far away (figuratively) from a
computer screen. Manual labor, crewing on someone's yacht, working at a ranch,
being a ski instructor, (preferably not something like fast food). But take
some time off. Write code for what you want to write code for. Sounds like you
could put your head up from under the surface of the tech industry and get a
breath of fresh air, this field can be an echo chamber and its easy to start
drowning in it. It sounds like you see the forest for the trees and a break
could give you some time to reflect on that.

~~~
godzilla82
I have no experience and dont fancy myself to be capable of giving life
advice, but I think the manual jobs you mentioned "crewing on someone's yacht,
working at a ranch, being a ski instructor" are based on some glamor you
associate with those jobs. After some time you will come to know the
unglamorous aspects of those jobs and you will be back to square one. For
example, a few days back I read an article by an airline pilot who was fed up
with the politics and other administrative tasks that come with the job. Even
though I am not brave enough to practice it myself, I feel the way out would
be to take a job with no glamour whatsoever with the attitude that you can
come out of it if you wanted to anytime.

~~~
netheril96
Well, perhaps after he realizes how other jobs are even more boring and
tiring, he would suddenly find software engineering enjoyable again?

------
informatimago
You're ripe for Lisp!

[http://cliki.net/Getting+Started](http://cliki.net/Getting+Started)
[http://www.gigamonkeys.com/book/](http://www.gigamonkeys.com/book/)
[http://mitpress.mit.edu/sicp/full-
text/book/book.html](http://mitpress.mit.edu/sicp/full-text/book/book.html)

And no, it's not yet another language, it's that feeling you have had all your
life. That feeling that something was wrong with the world. You don't know
what it is but it's there, like a splinter in your mind, driving you mad,
driving you to me.

------
Axsuul
Is sounds like you need some more diversity in your life. Doing nothing but
programming can often lead you down the path of thinking that's all there is
to life, which is extremely far from the truth. It's essential to take up
hobbies that have absolutely nothing to do with programming so that you can
start seeing things from a different perspective. Trust the process as this is
a problem that I see time and time again. Getting into deeper subjects about
programming is not the solution, especially if you're not seeking this out
naturally. The solution is to step outside of your comfort zone right now.

------
S-nickname
The language war it probably will always be, its just like soccer teams (or
any sport)

A couple of years ago I've read about Lisp, and I started picking on it. At
first I didn't get whats the point, already knowing Java and C. But months
later, I got a course in which we used Haskell. And then functional
programming started to make more sense.

Recently I got interested in Lambda Calculus, which is in the same branch of
functional programming. And for me its amazing, seeing this different
languages. And also making contrast with imperative or OO programming. Cause
they are different way of expressing, each with its own
advantages/disadvantages.

And there's also prolog, which I plan to pick up next...

So my point is, I personally like to learn about other languages. I have
colleague friends who told me, "But why Haskell, what is it for?, I can do it
in Python" "You can't do real-world applications with that", things like that.
And for me, it's about learning, it's not only "what is popular" or "what will
get you a job". It goes beyond that.

------
SwellJoe
I experienced this, to some degree, a few years ago; I was mid-thirties at the
time. I bought a motorhome and started driving. I traveled for about four
years; my business and my income suffered for it, but my mental health
improved. I started another non-tech company, a worker-owned cooperative, and
mostly failed at it (it never made much money, but I had fun, helped make some
really cool stuff happen in my community, and learned some things).

Somewhere along the way I started to regain some of my joy in technology
(mostly I realized how much magic I have at my disposal compared to most
people who can't program, can't build/deploy/administer servers, etc.), and
have begun several new projects and begun to refocus on my primary
project/business in a manner I haven't been able to do for a while. I moved
into a regular house a year ago, but decided I didn't like it, so two days ago
I bought an old Avion travel trailer (one of the shiny silver classic kind)
and will be moving the rest of my stuff into it tomorrow.

I'll be hitting the road again...but, will do so in a way that enables me to
be connected to tech more deeply, rather than almost completely disconnected.
I'll spend some time in Silicon Valley, will catch several relevant Open
Source conferences, etc.

I'm not telling you to buy an RV and travel from Alaska to southern Mexico for
four years. But, it worked for me. Maybe a major change really is what you
need. If you've been reasonably successful with your tech work, you probably
have some flexibility in what you do, at least for a little while. Make use of
it. I wound up quite broke in the process of all this, so maybe don't go as
far off the reservation as I did; that may be part of my impetus for getting
back into tech with such gusto...money comes so much more easily for tech work
than any other work I've ever done (maybe partially because I'm so much better
at it than any other work I've ever done).

------
chmike
It could be that you are a little depressive. With a depression everything
looks gray and tastless, useless and hopeless. While there can be many cause
for depression, alcool is known to worsen it, as lack of sleep. Beware of
that. Burnout is also a kind of depression. You may need to step back and
rest.

This said, you are right on most points. Most people want to contribute in
changing this world, make it a better place, etc. You apparently lost the
meaning of it. There is alot of noise, new things, but what for ?

My feeling is that if there are people who like creating new things, we also
need people calling back to simplicity. And I also think that simplicity
trumps all in the end. Your perception of the ambient noise and how the things
can be made simpler is a gift. You could find a meaning for your contribution
to software/programming in this.

------
a3n
It sounds like whatever you've been doing, wherever you've been doing it, has
focused on software for itself, and on building so much of the useless and
short lived things that come out of SV and similar places.

Software, computer science, can be your ticket into whatever industry you
want, whatever interests you, because it all needs software.

So think about what's interesting to you in the world. Aircraft? Aerospace?
Trains? Medicine? Medical devices? Business? Movie making? Publishing?
Oppressive scheduling algorithms managing on call jobs in the legal slavery
known as retail? Shipping logistics? Law enforcement? Surveillance? Human
rights? Gambling?

Man, the world is infinite for all intents and purposes, and you get to
participate in any part of it you want. Raise your head up from your tools a
bit and look around.

------
scotty79
>Quite frankly many years of self hacking/studying and experience in industry,
I think I've just had it with software industry. Does it get any better ? Am I
seeing things correctly ? Is this a burnout ?

You need to realize that what you think is not the source of your feelings,
even though it seems like it.

It's actually the other way around. What you feel dictates what you think
about the stuff you have contact with in life.

If you are sad, you start thinking hopeless thoughts about what you do, about
who you interact with. Those thought seem objective and you are led to believe
that they are source of your feeling because they deepen it.

But that's not the case. The source of all this downward spiral is the
feelings.

To get out you need to do things that are counter-intuitive to you. Stop
reading. Don't drink alcohol. Cut off the things you were doing to comfort
yourself. They are not working. Force yourself to find new ones. Meet new
people that are passionate about the things you have no idea about, listen to
them, go outside into the woods and be bored. Run. Take many hour walks
preferably around some trees. Basically do all the physical stuff that was
found to reduce depression. If you have a partner, interact with her, listen,
agree, do things together, don't worry you are bored and faking it, just
perform well. When you make her feel better she will make you feel better a
little bit.

Realizing helps, that actual content of your thoughts is virtual because it's
induced by the way you feel. If you felt better you would think completely
different thoughts about same things.

~~~
ZeroFries
Spot on. Keeping a journal can help, to compare the thoughts you have about
similar topics and how they vary based on your mood (be sure to include some
measure of mood as a meta-tag for each entry).

------
vzaliva
I went through the same disillusionment. My solution was go from the routine
of learning of 20th programming language or mastering 100th API back to
fundamentals computer science. Go deeper and explore beautiful mathematical
concepts behind programming. Refresh your lambda calculus, read about type
theory, explore issues related computational complexity, study how people
model parallel computations, dig into correctness proofs, etc.

------
rebootthesystem
Hmmmm. That simply tells me you (a) don't know enough or havent learned enough
or (b) have been stuck in or focusing on what I call the "will write software
for clicks" world.

I don't mean this as a put-down at all. Any time I hear so ething like that it
usually means the person saying it has been wearing blinders for a long time
and has no clue what else is out there.

How about this: Go figure out how to make a machine really think. You could
devote a lifetime to that alone. Then, if you succeed, figure out how to use
it to help doctors and researchers diagnose patients and/or find cures for
diseases.

One thing that really re-ignited my love for technology (not that I lost it)
was to become a mentor for our local FIRST FRC team. Experiencing the
discovery, passion and excitement of technology through the eyes of a bunch of
smart kids eager to learn is really neat.

------
jmui
I definitely see your point of view regarding all the efforts in the community
to make the next shiny thing. It's very prevalent on the front page of HN all
the time. I can't tell if it's representative of the culture as a whole or
just those who are frequent posters of HN.

In any case, I think that you'd have a lot in common with David Heinemeier
Hansson. You can see in this video
[https://www.youtube.com/watch?v=lBfVxBj61z0](https://www.youtube.com/watch?v=lBfVxBj61z0)
and a lot of his blogs that he approaches things in a much more realistic down
to earth manner than many other engineers out there. I think that if that's
what you want, then it's all a matter of finding the right company that thinks
the same way about using technology to solve real problems.

~~~
bonobo3000
Wow thanks for that link, that was awesome. I just spent 2 hours watching that
and another interview by Jason Fried. The company philosophy is also very down
to earth

[https://www.youtube.com/watch?v=UZGS_IOPZpk](https://www.youtube.com/watch?v=UZGS_IOPZpk)
at 25:18 - "People always ask, thats always the next question. Will that scale
if you have a 100 people? I don't give a fuck. Because we don't have a 100
people". GOLD.

------
th4t
How about switching your focus from tech to business? There is a great talk
[1] by Jason Cohen, that might inspire you to find joy in looking at the craft
from a different angle. Otherwise, in "Start Small Stay Small" [2] Rob Wailing
addresses your exact issue in one of the first chapters - after a while you
start "topping out" and moving from tech to tech feels like rehashing. That's
one of the reasons he lists for making the switch from dev to entrepreneur.
Maybe give it a read.

[1] [https://vimeo.com/74338272](https://vimeo.com/74338272)

[2] [http://www.amazon.de/Start-Small-Stay-Developers-
Launching/d...](http://www.amazon.de/Start-Small-Stay-Developers-
Launching/dp/0615373968)

------
BuckRogers
I completely relate. I see the whole programming scene today as a cynic. My
first computer was a Commodore, but I wish I'd been a programmer in the 80s
rather than a kid. At least back then it wasn't cool.

The software industry is very trendy and it's amazing how people can be smart
enough to program but don't care about simplicity, it's almost as if being
smart-enough leads to boredom which leads to technical churn. Which is why
there's so little technical innovation.

The worst kind are those who think technical innovation moves at a fast pace
because of their startup's efforts, rather than the glacial pace it does in
reality.

------
jetskindo
Good, you know software so much you are bored with it. Now is a good time to
use your knowledge to create a product. Programming for the sake of
programming is always gonna lead to boredom. Make a product that generates
money.

------
dennmart
I started to feel like this when I got to my 30s, especially when moving to
San Francisco, where these issues you mention are much more pervasive than
other places I used to live.

There were two things that helped me clear my head a bit - going to the gym
and focusing on my well-being (a.k.a. actually going to a gym 3-4 times a
week) and learning something outside of computers (in my case, learning the
Japanese language). I think just focusing for a bit on something more than
computers can help you take a step back and gain some of that lost energy
back, at least it did for me.

------
walterbell
Study the history and biographies of science, if you want to escape being an
industrial cliche. Many have forged their own paths throughout history and now
is no exception. Naming the cliches is a good start.

------
brobinson
I feel exactly the same way, so I'm trying to start my own businesses now.
Even though they're software-based, my main struggles are on the non-software
parts of the business (validating products, determining market fit,
advertising, logistics, etc.). The software part just kind of happens without
effort in comparison. I just use whatever tool makes the most sense for the
job. I don't see the point of proselytizing for any particular technology
anymore. I also moved to Asia to get a change of scenery.

------
ilitirit
I feel exactly the same way, and yet I don't feel the same way. I've been
programming since I was 12. Professionally for about 16 years. I'm 37.

Life is bigger than your job or your immediate interests. Take a break.
Travel. Challenge yourself. Break out of the circle that you don't like and
find something else, even if it's just for a short while. That's what I
usually do. At the very least you'll find something else to rant about, and
maybe eventually realize that things could be much worse.

------
fatterday
Quit programming and start growing food.

~~~
batou
I do this on a small scale. Couldn't agree more. It really does bring a lot to
your mental health.

I'm sitting in the kitchen writing this staring out the window at a nice juicy
tomato with my name on it. I'm having it for lunch in my sandwich.

You do have to get used to failure. For example, it's July an my butternut
plants are only 2 inches tall an have no chance of fruiting ever.

------
GotToStartup
_" Trying to use all the features of a language and thinking a one liner is
cool even when a five liner and a one liner is same when compiled into machine
code"_

Thing is, it's pretty easy to code for a machine. It's REALLY hard to program
in a way that other developers can understand you. And, like in literature,
using less words to describe something is more often better for the reader.

 _" Too much jargon, falsely claimed software engineering practices and overly
zealous object oriented mentality"_

I used to hate all the jargon too but then I realizes it gives programmers a
vocabulary to discuss things. When everyone understands the jargon, it makes
discussing complex solutions a lot easier. OO can definitely be overused, but
honestly 99% of the problems I face are people just writing unmaintainable,
procedural code. You're right though, OO can often be less simple (harder to
read all at once) but that's the trade off we devs need to balance when
writing code.

I don't want to sound condescending but is it possible you are making excuses
for learning hard things. Maybe it's the people you work with who are pushing
it down your throat the wrong way. Maybe you already know these hard things
but just haven't had to use it so you're giving up on the ideas. Or maybe I'm
still in the cynical phase of my life.

~~~
zippy786
> Thing is, it's pretty easy to code for a machine. It's REALLY hard to
> program in a way that other developers can understand you.

I feel this statement is way too subjective and has been used very often in
the industry in a negative way. Just because one does not understand the depth
of the problem or style doesn't necessarily mean the style is bad or the
solution is bad. I first realized this when I picked up AOCP.

> OO can definitely be overused, but honestly 99% of the problems I face are
> people just writing unmaintainable, procedural code.

I've seen unmaintainable OO code and maintainable procedural code.

> OO can often be less simple (harder to read all at once) but that's the
> trade off we devs need to balance when writing code.

And it's often vague when rules of maintainability pops up somewhere and
people try to pick that up. Suddenly, it feels like there is no need of
"Science" in CS.

> I don't want to sound condescending but is it possible you are making
> excuses for learning hard things. Maybe it's the people you work with who
> are pushing it down your throat the wrong way.

May be it is the people but then you have to deal with people in the industry.
Not too sure about what you mean by "hard things". The hardest problem I've
faced at work was the interview question (in a Fortune 500).

~~~
Kabie
I'm surprised that no one mentioned Functional Programming languages. I think
the way they think would be quite refreshing for someone get bored of OO.

------
pekk
You almost say it yourself: do something else instead of programming. Maybe
you'll want to come back later, maybe not, either way you come out ahead of
where you are today.

------
mooneater
The world of developers can seem like an echo chamber. But if your goal is to
improve the real world, development is just a means to an end. Can you use
your tools to help people who dont care about code at all? Does that
perspective help?

There are also very different paradigms which I find renew my interest.
erlang, rlang, golang... you may have to dig to find what keeps you
interested.

It sounds like you need something new, something refreshing. Maybe take a
break from your existing approaches?

------
segmondy
Why do you care what is going on in the industry? Why don't you focus on you,
and enjoy software development on a personal level? I personally don't think
you are seeing things correctly.

Learn what you want to, work on what you want to. Tackle the difficult
problems. We still have very difficult problems in this industry. I suspect
you are not challenging yourself enough and that's why you are getting bored.

~~~
mathgenius
I agree, OP seems way to concerned with what other people are doing. My
question is, what does _he_ want to do? Forget about keeping up with the
joneses, find a cave somewhere and don't come out until you built something.

~~~
zippy786
The thing is you always have to deal with people, it's a team effort in the
end. After a certain point, you get sick of even trying to state your opinion
because people so avidly follow a certain book/someone/language/OS/paradigm
and everything else is secondary.

~~~
Gigablah
"Having to deal with people" is not limited to the software industry.

------
vlladin
I was in the same boat recently and this is what helped for me. I quit my job,
and took a few years off. I have to admit, I was really burned out. Took as
much time as I needed to rest, take walks, talk to people, and in general just
change the perspective. Just like you, I had this huge dilemma. While
programming was my biggest passion, I was sick of all the bitching and BS that
revolved around it. After taking the rest I needed, I started learning new
technologies. Without preconceptions. Just like I used to do when I first
started coding. So far it keeps the flame burning. I am working again, and I
am happy doing it. I am aware that one day I will get bored of it again, and I
will repeat the process. I think the more you dwell in a technology, the more
knowledge you get, the deeper down the rabbit hole you go. And the darker
things get.

Take a break. Learn something new, and apply the cross technology knowledge
you acquire to new fresh projects. Always keep an open mind, and by all means
avoid pointless topics that try to establish the best language, the best IDE
and so on.

------
acqq
I'll ignore the psychological aspects you can be facing (you certainly
shouldn't!) as others wrote good comments on them, I'm trying to address the
professional topics you've touched ("just because people would have something
to show for" and "falsely claimed software engineering practices"):

Fred Brooks, managed the development of IBM's System/360 and the OS/360 in
sixties. He also thought deeply about the false claims in the field many years
ago.

"No Silver Bullet — Essence and Accidents of Software Engineering" 1986:

[https://en.wikipedia.org/wiki/No_Silver_Bullet](https://en.wikipedia.org/wiki/No_Silver_Bullet)

For one 2014 take of that, see: Kenneth M. Anderson, 2014. No Silver Bullet.
CSCI 5828: Foundations of Software Engineering. Lecture 02 — 08/28/2014:

[http://www.cs.colorado.edu/~kena/classes/5828/s12/lectures/0...](http://www.cs.colorado.edu/~kena/classes/5828/s12/lectures/02-nosilverbullet.pdf)

------
chipsy
I realized this the moment I started interviewing for engineering positions,
after doing game design for some time. I decided I would go back to design
from whence I came - albeit now I've expanded from game design to include UX.
That recontextualized my programming skills as execution on a design idea -
instead of as engineering towards optimal code quality. I get to stay near the
top of the stack and not worry _too_ much about how broken it all is, because
I'm not going to try building my career around that.

There will always be folks eager to be employed as cogs or who try to attain
"thought leader" status. That's not really a judgment on those people, since
maybe their personality or situation makes it a good fit. But if it's
bothering you that you can't go farther from within this lens, find a slightly
different one.

------
mcnamaratw
I've fixed this several times by going camping alone for a week with nothing
to read, no devices, no pencil and paper. Just me, a tent, food and coffee. I
come back full of ideas. Stuff I've been stuck on for a year becomes easy.
Motivation returns.

I rarely "have time" to do it ... but somehow I always have time to work in
circles for weeks or months and not get much done.

A common answer here is "learn something new" and that works for me at first.
When "learn something new" isn't enough, I bring out the big guns and go
camping. I haven't isolated what about camping does it for me. (I believe
Danny Hillis, the founder of Thinking Machines wrote that he would never have
finished his dissertation if he hadn't written the first draft at Disney
World. Not my kind of thing but I guess it worked for him.)

Good luck!

------
aliostad
I was exactly where you were. I felt I was solving problems that look almost
trivial to me. Of course there are lots of hard distributed computing problems
at the scale that Facebook and Google operate but not anyone is to work on
them.

I found scientific programming: i.e. using Machine Learning and related
disciplines to solve hard AI problems. I can guarantee you might get
frustrated by lack of success and hardship of challenges but never ever bored.

In case you are interested, this is my blog post when I got inspired by this:
[http://byterot.blogspot.co.uk/2015/01/future-of-
programming-...](http://byterot.blogspot.co.uk/2015/01/future-of-programming-
rise-of-the-scientific-developer-bigdata-datascience-machine-learning-and-
fall-of-the-craftsman.html)

------
NumberCruncher
Thanks to HN I discovered the homepage of Derek Sivers [1] and the book "So
Good They Can't Ignore You" by Cal Newport [2].

He sais that a great job has to offer you great creativity, impact, and
control over what you do and how you do it. IMHO this is why so many people
are mesmerised by startups. Anyhow, if you miss one or more of these three
traits in your current job than you have to find an other one which fits
better to you.

Read the book! I hope it will help you as much as it helped me!

[1] [https://sivers.org](https://sivers.org) [2]
[https://sivers.org/book/SoGood](https://sivers.org/book/SoGood)

------
stevewilhelm
I would recommend joining an enterprise startup that is solving a problem for
an industry you find interesting. Make sure the startup's customers are
leaders in their particular industry.

When working for such a startup; the primary focus will be solving your
customer's problems. You should work one on one with your first couple of
customers. Doing so will be very challenging and if things go well very
rewarding both intellectually and fiscally.

Issues of programming languages, editors, infrastructure frameworks will be
secondary. But as the company grows, the technical challenges of scaling,
reliability, managing teams, feature growth, etc. with will need to be met.

------
pheon
Its interesting reading all the comments here, and think most of it misses the
OP`s point. That software development as a _JOB_ means working coherently with
other people / teams. The result: you need to be complicit to work effectively
within that team/companies imaginary tower/religion. Otherwise you`ll loose
your job or become "that" PITA engineer.

What`s worked well for myself is starting a small niche tech business. We`re
small and focused on resolving customer problems. Not bickering over class
hierarchy, design rules or other crap thats irrelevant to building products
that customers really enjoy.

------
bovermyer
What you're describing sounds like too much focus on the What instead of the
Why.

WHY are you building software? Start with answering that question. Then, do a
bit of soul-searching; figure out what truly feels meaningful for you. That's
something no one can answer but you. Then go and do it.

If you can't come up with an immediate answer, then start trying different
things.

Building a bridge isn't enough. Connecting two communities over an otherwise
impassable chasm is.

------
sixdimensional
If it's any consolation, I am the same age that you are (approximately), feel
similarly, got laid off on Monday, and am looking at a "tabular rasa" (blank
slate) for what to do next. Happy to chat with you if you like. I don't have
an answer but I'm searching!

I was working for an org that turned out to be all about the technology and
not enough about solving real known problems.

------
arh68
Is there still anything you'd like to see built?

I mean, if you were on a desert island, would you even _want_ a computer? What
would you do with it?

~~~
CyberFonic
I'd sooner build a boat and sail away.

~~~
n0us
The two happiest days in a boat owner's life are the day he/she buys his boat
and the day he/she sells it. Trust me, you don't want to build a boat. But I
get the sentiment.

~~~
ZenoArrow
I know this is a commonly used meme, but I don't buy it, I know quite a few
people who enjoy sailing, including those that own boats.

~~~
n0us
I love sailing, the meme is that boat upkeep is very difficult and there are
many commonly unforeseen costs both monetary and time related.

------
euske
Reminds me of that "the more you stray from the path, the closer you get to
Zen" thing.

I stopped thinking of software technology in terms of technologies, but rather
tried to think it as a means to help other people. I might be bored by
technologies in its own sake, but I'm never bored with the idea of helping
others.

------
TrevorJ
Sounds like you've recognized some pitfalls inherent in the culture.

I think the good thing is, _you_ don't need to be defined by this. There are a
lot of people out there who prize solid planning and skill above gee wiz
buzzwords. Find some of these people and work with them. Or if not, start your
own gig and grow it.

------
dynomight
You're probably a bit burned out. Check out this though. It _might_ give a
glimmer of hope and looks like a nice hobby/research/interest side project
whatever.

[https://www.youtube.com/watch?v=jN9L7TpMxeA](https://www.youtube.com/watch?v=jN9L7TpMxeA)

------
tgrass
I studied civil engineering in college, worked in the field for six years, and
got my PE.

It bored me. I slowly studied programming and left the civil field for
software. I now make as much designing for the web as I did designing bridges.

Life is not a predefined trajectory. It is chaos. Roll where your heart leads
ya.

------
nidhi40
Normally human gets bored when he does repetitive work, and innovation come
from chaos, when you make change in few parameters of the current system. I
feel you should try something new, you can start a startup in your favourite
domain, go and visit new places and meet people.

------
ratsimihah
Technology isn't an end, just a mean to accomplish some things. If you focus
your life on tech because that's where the money is, it should be no surprise
that it's boring you. Find something you really want in life, maybe it has
nothing to do with tech.

------
gizi
Do something else for a while and take a good look around you while doing so.
What do you see? Things only got worse. Life elsewhere is even more prone to
bullshit. There is only one notable difference. Most of them do not even seem
to make money! Go figure ...

------
tk120404
Get a housing loan, car loan and other loans, for sure you will start liking
the job and life :)

~~~
fidz
"Liking" or "Trapped"? I don't know psychologically how does this work. Even
though i have a credit card, i will always pay all the outstanding to avoid
debt. Personally, being in loan makes me feel scared.

------
vatotemking
You need to have a hobby that has nothing to do with the software industry,
make you sweat and go outside. Mountain biking, hiking, running, backpacking
are some examples I can think of. You'll also get healthier.

------
jacquesm
Take a break. 6 Months, a year, however long. In that time do physical work,
don't work with your head. Look back at the end of your break and decide what
you want to do. For perspective you need distance.

------
tmaly
I would try making a small startup on the side. You can learn design,
marketing, devops, sales, etc just from a small endeavor. It is a nice change
of pace from always banging on a keyboard.

------
rquantz
Van Gogh took up painting at 27, and people live longer now. Go do something
else. The world will be better off with one fewer person working to eliminate
inefficiencies.

------
latenightcoding
Man I can't get enough: Machine Learning, bioinformatics, algorithmic trading,
database design, GPU programming, 3D modeling/printing. Wish I had more time

------
spacemanmatt
Get out before you have obligations (mortgages/kids)

------
soheil
Study theoretical physics, this is exactly how I felt in my mid-twenties and
what I did, once you get bored of that try philosophy.

------
vvpan
Go on a vision quest. Only a half-joke.

------
dsap5432
Hardware and Software makes a perfect mix, start with IoT it is fun.

------
big_paps
perhaps you should a) search for something exciting beyond your job, b) use
your expertise for something new i.e. building your own company.

------
curtis1234
The demand for local internet marketing is booming

------
nphyte
take a break and travel. Share your knowledge with kids who are eager to
learn. do something your right brain approves of

------
AdieuToLogic
You've presented numerous topics to consider, many deserving of discussion
beyond what this thread can supply. If you don't mind, I'll try and give some
guidance/advice on the aspects I can.

Recognizing "the churn" so often present in our industry is a major milestone
in maturation as a person delivering solutions to problems via creating
software. The rush many initially experience when exposed to the fact that
their thoughts can be reified as programs which dutifully encode their wishes
is quite intoxicating. Key here is "initially."

Progression from "I can make a computer do what I want" to "I can make my
favourite environment do what _other_ environments do" is a short leap indeed.
Herein begins "the churn." Specifically, I mean that problems previously
solved in other environments present themselves as an opportunity to be
transcoded into (insert environment here). It is far easier to dissect an
existing solution and produce an equivalent in another language than it is to
tackle something new.

With this background established, let's discuss some of the specific points
you have broached.

> I used to love software/programming but it's getting boring now.

A lot of responses have said you might be burnt out. I do not belive this is
the case based on what you have written and the title of this thread. Instead,
perhaps the fact you are "bored with life and software industry" is because
the passion you have for what you love to do has been muted (more on that in
just a moment and not the same as burnout).

> It seems so clear to me that so much futile effort is being put into
> building yet another language, yet another editor, yet another UI rework,
> yet another infrastructure rework. And for what, just because people would
> have something to show for.

This is experiencing enlightenment. When this sort of epiphany happens, seeing
efforts addressing the same things over and over again becomes obvious (as you
state). And once our eyes are open, we cannot close them again. Given a
situation where a person has experienced this type of growth, yet may not feel
they are in a position to progress with it, some combination of
boredom/frustration/dejection/futility are sure to follow.

> Does it get any better ?

Yes. And you are at the precipice of it being so.

It gets better by accepting that those junior in the field experience the
aforementioned progression and will duplicate projects often for the ease of
being able to simply transcode. And that's OK, as they are in a period of
discovery which is entirely new to them.

It gets better by recognizing that still others will reinvent the wheel just
because that is all they can do. Their growth has stopped for whatever reason.
And that's sad, but their choice.

It gets better by realizing that you have reached the point where _you_ can
discern duplicate efforts and choose what of those offerings are best for
_your_ way of thinking and/or working.

Finally, it gets better by allowing yourself to choose your own path, trusting
your awareness/experience, with what you feel is best for how you can
optimally do what you love to do, and eschewing what others espouse since they
simply are not _you_.

------
robg
Sounds like burnout.

------
kont
study islam

------
curiousjorge
I've experienced this earlier and try not to read too much into it. Keep
building things the way you want to build it and ignore people trying to
introduce politics (trying to please as many people as possible and shitting
on existing and tried solutions). Ignore it! Channel it into something
positive, create something. That's all I care about, solving real world
problems and creating my take on it. March forward comrade.

------
paulhauggis
I started a business. You get to experience many other things besides
programming and it's always interesting.

~~~
lucamartinetti
Agree. Being a founder will force you to wear many different hats. Technology
will still be very important but you will also need to focus on many other
different tasks and improve your human skills

------
irascible
Sounds like burnout. I take a month or 2 off for every year I work.. sometimes
at the start of that break, I feel like you do, but a bit of sun on my face
and some outdoors, and suddenly the desire to sit inside and code for hours,
starts to return. :D

------
sagivo
First, go travel and clear your mind. After try to do something that actually
help someone, actually make a difference and make you feel better. Either its
programming or gardening, follow your love and get away from the crazy race.

------
JAdamMoore
I gave up years ago, but then again, I began sooner than most. I vote for
moving on. It won't get fixed before we destroy the planet.

------
Firegarden
My take on what is exciting yields the following questions:

How much time have you spent with design patterns?

How much time have you spent with WebSockets?

How much time have you spent with Asynchronous coding?

How much time have you spent with Taligent MVP concepts?

How much time have you spent with Reactive Extensions?

How much time have you spent with ReactJS?

How much time have you spent with drinking and playing CS:Go?

Have you ever considered the concepts that are being taught as the 'leading
edge of thought'? AKA Abraham Hicks. There is a whole new world that talks
about an evolution of the human species simply by realizing that you have a
'higher mind' which exists in spirit world and that you can connect with that
pure positive energy and when you do your life becomes an explosion of
Synchronicity (see bashar.org).

~~~
batou
Not joking but these are all fads, mostly recycled ideas and nowhere near the
leading edge of thought. The moment you hit your mid 30s or ~15 years
experience, motivation is driven by two aspects:

1\. what hurt you badly in the last 15 years

2\. which things have already been done but have been reinvented an repackaged
differently.

I've seen all these before in other incarnations.

