I currently work in a good environment where I'm appreciated and paid well. Not many people in the world can say that, so I have a lot to be thankful for. Programming has done good by me.
But I don't love it. Alan Kay is right, it's like building "an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves". There's no elegance and no higher vision. It's an Asperger profession; smart but artless.
I would prefer, if I could retire, to make short films and maybe to write plays. But I can't retire yet. So I'll push stones. It pays well.
Sorry, but I would have to disagree with you on this. I've been programming now for over 35 years, and really cannot see myself doing anything else. I find I can channel my creativity into programming in many ways, and writing a good piece of code gives me the same satisfaction as writing or recording apiece of music. Yes, I am a musician too, and while they are very different, I see a lot of similarities between them too.
ANY job can become a task of 'piling bricks via brute force and slavery' at some point in time. Every good friend who has had a seemingly dream job has broken down and despaired at some of the drudgery involved over a beer.
One of them does, in fact, write plays that do very well in the UK theatre scene and he also writes TV shows that do well locally - but he often speaks of the interminable problems dealing with promoters, agents, crew and transport.
Another good friend tours the world as a physio with an international cricket team. First class flights and hotels everywhere, rubbing shoulders with celebrities. Many of us (thought we) would kill for such an opportunity, but he says he is tired of living out of a suitcase and having to check the local papers under the door every morning to remember which city he is in.
But at least those jobs don't have the stigma of being (in the words above) Asperger professions. This makes it difficult to share your problems with other people, and of course, also because people in general would, I suppose, find the problems that musicians or theatre writers have more interesting, and more approachable than the problems of a software developer.
Also, this makes that a musician can be a "musician" in normal life. He or she doesn't need to change their identity. Developer culture does not blend with the normal world, and as a developer I believe you really have to switch between two worlds. That can be tiring.
I've never felt stigmatized because of my profession, or as though I have to "switch between two worlds". I suppose there's a point to be made that it's not easy to discuss with someone outside the field the difficulties of implementing algorithm X or integrating API Y with service Z, but I imagine the same must be broadly true of any highly technical field. Are biology and surgery and piloting "Asperger professions", too?
If anything, I've often found that the perspective and knowledge that come with my professional experience are socially valuable, rather than the converse. I get a fair bit of my social interaction over beer and cider at a nearby bar, and it's pretty common that, when a conversation gets around to professions, I find myself fielding questions on all manner of subjects from the plausibility of widespread voting machine fraud to the rise of the machines - I spent a good few minutes the other day allaying fears that turned out to go back to that Ars article with the picture of Arnold as the T-800 that turned up here a little while back. I suppose the possibility exists that I did so in a particularly Aspergery way.
As a law student, I experience this a lot.
Computers and programming were/are my only passion and obsession.
My life is dedicated to computers, but professionally I have to be a lawyer.
I just had an interview at an IT Law Firm, and made a fool of myself.
That's why I completely agree that, we as "people who are good at computers" need to keep seperate identities.
Because if you go full Aspergers, you make yourself vulnerable.
Once people realize you're "different", you get the "poor boy treatment" and that hurts.
PS: I am still trying to get over the interview, sorry if I don't make any sense.
>Once people realize you're "different", you get the "poor boy treatment" and that hurts.
Or worse, once you're pegged as a hopeless geek then people tend to walk all over you and you're not seen as the kind of person who advances, becomes management, etc. You're a freakshow human resource to perform labor that, unfortunately needs to be done, until everything can be a one-click cloud solution.
I make a very special effort to hide whatever geeky qualities I have. I think ultimately a lot of geek culture is manboy-ish and the kinds of people who let all of that loose at work are seen as childish or immature, right or wrong. Sadly, those of us into things like hard sci-fi or DIY maker stuff get lumped in with the guy who still buys Superman comics at age 40 or thinks over-sexualized fan-service anime is humanity's highest artistic calling.
i try to never let it slip at work that i went to college for graphic design, can shoot great photography, am very proficient in photoshop, do UI/UX design and edit video as well... the things i really dislike doing on a professional level but love to do in my spare time, i don't let on about at work, don't want to muddy the waters. the places where i did let it slip, ended up wanting me to do all that kind of stuff so they didn't have to outsource it or go to another team.
Smart people should never have to feel ashamed for what they know. The other day I - as an underemployed 24 year old teaching myself software development - was at the cafe of a software company. Some guy was telling his coworker that in the near future we may have patches that read our temperature and heartrate throughout the day (I'm thinking contact lenses). He's coworker answered with a sarcastic "Okay..?" and pretty much had nothing to say on the subject. I've been that guy. People are intimidated by things they don't know the same way a baby is intimidated by the cup without a sippy lid. You have to train them to let them know they're able to use the cup and sadly society at large hasn't trained themselves to accept new information.
Cold world but I'm sure there's a way to go about it that inspires more awe than resent.
It takes a lot of courage to do this, but more less now than you will ever need. You will start earning $150k a year then and then the opportunity cost might be $80-100k to go down to a junior developer. Then you have a wife, kids, mortgage, credit card loan...
Especially in criminal law this can be done. For the other areas of law software could really help.
There are decent platforms for searching cases/articles, but they're all mostly keyword based.
On the other hand most lawyer work is monotonous. Research, believe, make believe :). It doesn't matter which side you're on.
Good. you got out there and made mistakes. Now you can learn from them and you wont ever be that bad henceforth, hereunto. I made a total ass out of my self the first few programming interviews I went to. First one, recruiter called me (woke me up at ~10am) and I thought I'd show "initiative", I said "sure Ill be there in 2 hours". Went totally unprepared, didn't even bring a copy of my resume. They even lectured me about improving my interview skills.
Second one, I made the mistake of asking my potential coworker "what college he went to", thinking anyone in an engineering profession went to college. The manager interjected that he was 'self taught', this wasn't a total faux-pas on my part, but it created an awkward moment where I didnt really know what to say. I further erased any possibility of getting the job by getting too relaxed/comfortable and blurted out that I'm really groggy in the morning (cringe). I learned quickly, eventually got good at interviews, and ultimately got a job at bloomberg, which is fairly difficult to get past their interiew process.
So dont take it out on your neck, pick yourself back up and make a list of things you can take away from your experience. you have no other direction to go than up.
>I learned quickly, eventually got good at interviews, and ultimately got a job at bloomberg, which is fairly difficult to get past their interiew process.
Bloomberg, where it's just one giant open noisy room? Doesn't sound like much of a reward to me.
Personally, I wish I had never gone into programming. I wanted a profession where I could sit in peace and quiet and work on interesting intellectual problems on my own. Little did I know that programming would not be like that after the year 2010. If I had known this, I would have chosen a different profession, probably something involving medicine, since at least there's lots of women in those workplaces.
The point of my comment was not that bloomberg was an awesome reward. I only stayed a year, and yes it was noisy as hell. The floor sounded like a drum when people walked on it. My point was that I went from a blundering buffoon in an interview to passing a notoriously difficult software engineering interview in 8 years (with a few jobs in between).
I think turnover is pretty high there. People dont want to get locked into BB's proprietary (or in some cases antiquated) technologies. However, there are tons of departments, many of them are modernized, and you can really learn a lot for your first few years out of school. If you stay and are faithful you can go up the ranks.
I am doing fine. I went contractor, and currently in healthcare / imaging. I dont even sweat interviews anymore :)
Thanks for the support. It's been an embarrasing experience, but I've learnt a lot.
First, I shouldn't mention my passion for computers. They're looking for a lawyer, not an engineer. They already employ engineers, who are active in legal research.
Second, I should pick a career outside of IT-Law. Solely working on technology feels too close to the heart.
Third, I shouldn't speak a lot and reveal details about my life when I'm too excited during an interview.
Now, I only have to endure the next couple of days, then the sting will go away. After a couple of months, I'll remember this as an experience and I'll laugh at how foolish I was.
If you know HN, you've probably heard of above-the-law, but if you haven't, definitely brush up on their how-to-get-a-job articles. Network with other lawyers/3L's (or whatever rank you are), go to practice interviews, rehearse. I've heard its difficult to get a job as a lawyer so if you aren't putting in 110%, do it.
I dont know much about law, but to ignore your passion doesn't seem wise. I think you'd just have to spin it. Come up with a narrative that says tech has always been a part of your life, "but not as much as law", or "but it was missing something", or some other bullshittery that makes sense in that field. People want an impassioned person. And I also disagree that you should ignore IT law, it's in very heavy demand right now, isn't it ? The lawyers who can write amazing briefs struggle to understand technical protocols. Dont pass up on a dynamic field that will drive you. Also, shout out to https://www.reddit.com/r/LawFirm and other subreddits that might be of assistance to you. Good luck.
Are you looking to get involved in the patent-law field? You can apply your love for computers and as far as I understand, there's more job stability as well.
I never have issues like this. Of course I am not a programmer that thinks about code all day every day either. I am good at what I do, but I also have many other interests. No one stigmatizes me.
The key is to not let your profession define you no matter who you are. Once you let your profession take up every part of your life that is when it is difficult to discuss problems with other people. This would be the same with any profession even artists of any type.
It's tremendously difficult to share the problems inherent in most showbiz professions.
That's partially because they tend to be very complex and counterintuitive. If we wanted to have a conversation about my problems selling a feature film (assuming I was currently doing so - thankfully I'm not), I'd first need to give you a 90-minute seminar on how selling films works in 2016, unless you're also in the business.
It's also partially because people are usually very jealous of you working in such a cool profession, and thus any problems you have become "complaining about diamond shoes pinching".
Just to add into another comment, a 90 min seminar on how selling films works does sound fascinating, as would a whole series of seminars on how various industries operate.
I think that the stigma is less than it was, and these days people are quite interested if you're working on a cool public facing service. No, what we do isn't really /cool/ and you will still bore them if you get into details, but that applies to most white-collar professions.
You don't need to change your identity or succumb to "developer culture" in order to succeed, and in fact being a citizen of the "normal" world is a distinct advantage in many regards - product design, communicating with non-developers, team management..
> But at least those jobs don't have the stigma of being (in the words above) Asperger professions.
Works both ways though. I'm a writer (albeit a technical writer) and I find developer culture a bit intimidating as I'm trying to educate myself and hopefully change careers. Devs can be quite sniffy and elitist if you're not one of the club.
But, as a freelance writer who works remotely, I do get the "you can't possibly understand what it's like to have a real job" attitude from a lot of people too. It's not like creative professionals are entirely accepted by "mainstream culture" either.
Not a native speaker either so I may be wrong in this assessment, but a physio is someone who also gives therapeutic massages when needed. Hence, rubbing shoulders.
Yes, "rubbing shoulders" is a coloquial term to mean that you are standing next to other/famous people - at a crowded party or lining up next to each other for a photo opportunity etc. Your shoulders tend to bump or rub against each other in those situations. This is my friends case, as his Facebook feed is full of pictures of him standing next to (rubbing shoulders with) famous actors & politicians etc.
@oneeyedpigeon cunningly made the connection between my friend being a physio (physiotherapist) whose main job is providing healing and relief from muscle pain usually by rubbing or applying pressure. (Computer programmers like me who spend a long time at the keyboard often visit a physio to get our shoulders manipulated and rubbed to relieve built up tension).
Or rather rubbing shoulders is usually used to describe networking, though if you are mingling with the great and the good/important or famous, hobnobbing may have been a better term.
remark on a tangent - before siting down to a bunch of tasks I ask myself how I can make this funny/creative, how is it hilarious and how interesting can this be made. suddenly perspective changes.
Exactly. It's about reframing the task so that it goes from tedious to fun. I know it is an old and probably out of fashion book now, but I really think a lot of people who feel stuck in dead end jobs should read Fish! by Stephen Lundin [0]
To reframe this from the 'musician' side of my life, a lot of other guitarists I play with absolutely hate changing the strings on their guitars. They treat it like a chore to be avoided and rushed through only when really needed.
But a few years ago, I read a short story about how Samurai warriors used to care and polish their sword blades on a regular basis. I was entranced by the ritual and ceremony around this mundane process, so I set up a similar process around my guitar string changes. Now I actually look forward to doing string changes, as it give me a lot of meditative time to bond and learn more about my instruments and my music.
Or, if you need a reminder of your capabilities, look at your current project and think of how much havoc you could wreak if you decided to go the nefarious route.
i.e. the sysadmin bringing down the company from within. The Web Developer commandeering his own botnet. The backend developer who makes a fortune mining doge coins. And so forth.
This is why it's so important for me to work on something people use.
At a previous job I'd sometimes hit a wall. I would log into one of the production API hosts and tail -f the access logs, where I'd see many different people and applications using a piece of software that I'd help write. I'd grab an IP address and geolocate it and see where the person was from.
The humanization of work can be extremely powerful. It reminds you that you're providing value to the world, that you've created something useful even if it sometimes feels so pointless.
Seriously, create a small report based on the logs that tracks visits, popular calls etc. It will do you good every morning to check it (charts and comparisons are great) and it will be an asset when promotion time comes around and you have define your "contribution" to the company :)
Though I know that your intentions were harmless, I'd like to add that it's not a good idea to do such a lookup without a sound reason. At some places where I worked, I could have been fired for doing that unless I was looking to fix a bug and this particular bit of data was essential.
I'm going to assume that those companies u worked at had good intentions as well, but this seems like an unfounded fear.
Unless u are working on a heavily confidential project that has a certain legal anonymity requirement (in which case the user's IP should be scrambled anyway), I don't see how doing a whois query could create any damage.
- It shows by example that this behaviour is okay thus others are less reluctant to run queries of smilar nature
In itself each of them is not so big but all these behaviours add up to the 'culture' of either respecting the user's privacy or taking it not very seriously.
This depends entirely on what you're working on - programming is just a tool to make something after all. As an example, I'm a video game programmer who specializes in gameplay (characters, weapons, metagame, other mechanics), AI, and user experience. This means I'm also part game designer, so there is a ridiculous amount of creativity required for my role on a daily basis (which I absolutely adore). It's really nice not working to a hard spec, a lot of my job is trying different approaches and seeing what's fun.
Many people who are actually on the autism spectrum (such as myself, though technically I was diagnosed with Aspergers a long time ago) don't want your help.
I'm continually annoyed that I actually have to say "autism spectrum disorder" to describe MYSELF, lest I be called politically incorrect.
Many just want to live a normal life, and having other people (with no vested interest whatsoever) rushing to our "defense", is quite honestly more condescending than OP's original comment.
> Many people who are actually on the autism spectrum ... don't want your help.
Many, sure. But all? And even regardless of the answer to that question, I don't think that's a good reason to not call someone a jerk for being a jerk about it.
Well, I have an opposite problem. I work in VFX (visual effects) industry, have dozens of credits on IMDB, but completely adore programming and solving variety of problems that involve data processing and connecting various systems together. Unfortunately, it's too late.
You work in a particular field, is it possible to take your knowledge of the "daily grind" to one of the development houses making tools you use? Is there some software that would be particularly useful that doesn't yet exist? Can you write plug-ins for existing tools (and sell them, a friend did that for audio processing software)?
You have domain experience, you don't have to forfeit it if you make the switch to programming.
Not really. Our software is essentially a set of quite advance image/data processing pipelines. Companies who produce it are looking for people with (very) advanced math/C skills as it's not as simple as "import cv2".
Wow, so the credits are really that thorough? That's awesome to hear. I also now have new respect for movies with really short credits - I'd wondered if there were any positions deemed "too irrelevant" and not included.
I'm also particularly curious about the "no formal education in CS" bit - for various complicated reasons I haven't (yet?) completed basic HSC, and am wondering how to break into the industry in general. I'm not 100% sure where I want to start, but "simple Python scripts" sounds rather interesting. I assume there was a bit of being in the right place at the right time, but besides that, how did you get yourself noticed?
I got a formal education and degree in software engineering over a long, hard fought four years, which still has me about $25K in debt.
I got my job by getting noticed through my GitHub blog, to which I dedicated only about a half hour every other night for a month or so.
One night I got an article at the top spot of HN's front page. I had a great job offer within hours from a dev at a company which I've always respected.
Content on my blog was self taught, 99% of what I do at work is self taught. Formal CS education is still useful, but the ratio of cost/reward is terrible.
Funny enough, sometimes our crew isn't included in full.
In VFX? I dropped from the Uni, went to the local VFX shop and offered them to work for free during night shifts. It was during the crunch time, so essentially it was an offer they were unable to refuse :] After some years of low quality TV spots I got into feature film industry. That's what I still do.
Ah, so sometimes people do get dropped out. I'm not surprised.
Very interesting, working for free is (for hilarious reasons) something I could probably pull off right now. I'm curious what kind of work this was - was it more generic coding or industry-specific? I've wanted to play around with graphics for some time, but "get a GPU and mess around with it" has repeatedly not worked out for me, so I've no industry experience.
Yeah, don't worry too much about the lack of a formal education. I've worked with multiple people who didn't have that and were successful in the field.
I would also like to make short films and plays, as well as improv and acting in local theater. I think it's something you can do in your evenings and weekends. I started doing it recently and realized that I'm not good at it, and it's going to take a lot of practice before I get better. It's important to stay active and keep practicing your hobbies, even while you're working. Because if you wait until you're retired, you might have forgotten how to do things. Or even worse, you might have lost your interest.
No worse than any other profession. Sure, most days I do more of the same, build reports for finance/corporate problems. It's rolling stones up a hill every morning, but that has nothing to do with programming itself. The issue you're describing is that you're working to haul someone else's stones. Fine, all well and good, pay is good. Wouldn't be any different if I was a musician or a painter... all they ever request is that I play Piano Man.
For me the art comes in doing it a different way each time. Maybe it's a function of my inexperience, I've only been doing this for a few years so far but the horizon seems so far away and there's so much to learn that I can't imagine getting bored anytime soon. Everything is amazing and I can't learn it all! In the meanwhile there's stuff to learn outside of tech. Like gardening or baking. Baking bread is a series of simple tricks (temperature of the yeast, bowl type, kneading techniques, etc.) that people do in order to produce an outcome (a certain crust or flavour). I'm struck often by how similar I find it to writing code.
Try rolling the stone with one hand tied behind your back.
> "an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves"
True for outsourced departments of big corporations (Java chicken farms). Not everywhere creating the software is at this stage of development though. There are many creative and agile (not necessary "Agile") businesses and places where creating the software evolved. They are at the stage of XIXth century civil engineering - a lot is being built, plenty of experimenting, people are getting hurt, and most of it collapses. Only couple of magnificent monuments will survive but the rest will be discarded.
So, it's just not for you. You fail to see art in it, That happens, it's ok. Maybe you need to think about gradually moving to the movie business, they need programming too, you know.
>> "I wanted the reward and not the struggle. I wanted the result and not the process. I was in love with not the fight but only the victory. And life doesn’t work that way." << The Subtle Art of Not Giving a Fuck by Mark Manson
I learned to pick struggles I love, to pick processes I love and to pick fights I love. Writing code a.k.a. "programming" is a part of struggles I have chosen for myself and I am fine with it. What I learned through the process:
- Do "programming" if you love to pile bricks on top of each other, with no structural integrity, done by brute force as one of thousands of slaves, building a pyramid for someone else.
- Do "programming" if you love to pile bricks on top of each other, sometimes with structural integrity, sometimes with elegance, as a lone wolf or a part of a small team working on its own business. Just remember Derek Sivers.
- Do "programming" as a part of solving your own problems you would otherwise solve by boring manual work. Don't tell about your programming skills to your boss. Make a short day and have a beer while others are solving their own problems with boring manual work! Cheers! Credit goes again to Derek Sivers.
But if you care about "working on the next pyramid" and you are not the pharao... well, to cite Mark Manson, you "are giving too many fucks where fucks do not deserve to be given".
Sorry for the offensive language, blame Mark Manson for it, if you want to.
> I would prefer, if I could retire, to make short films and maybe to write plays. But I can't retire yet. So I'll push stones. It pays well.
Please don't stay because of the pay. You won't look back in 25 years and say "I'm so glad I bought a new iPhone in 2016, but didn't do the things I wanted to in life"
The last company I worked for was full of people only staying because retirement was "only" 10-15 years away, and they were not a healthy/happy lot.
You'd be giving up your life "now" in the hopes of a good life "then", which is insanity.
I have left Software twice now to pursue my goals - the first time I spent two years driving Alaska->Argentina more-or-less on vacation, and right now I'm spending two years driving around Africa. I'm exploring my passions while on the road for writing, photograph, videography, languages, etc. etc. I have less money now, and a lot more happiness.
Quitting a high paying relatively lax job could possibly make your life a whole heck of a lot worse, especially 10 to 15 years from retirement. If anything start building something on the side.
Yes, I use Alan Kay's pyramid image[1] in my talks about software architecture[2][3][4]. But then I compare it to the Cologne Cathedral, which encloses a vastly larger space with vastly more light using 1/50th the material, yet it's the same kind of material: cut stones piled on top of each other.
So there is hope, I think, and that hope, I think, is improving our understanding and practice of software architecture[5].
And it's not like there we don't have examples in software. Let's take Bentley's challenge[6]: Don Knuth with 12 pages of (literate/web) Pascal, Doug McIllroy with 6 lines of shell. Or Nile/Gezira, a modern graphics subsystem (think Cairo or Quartz) in ~500LOC. Yes, 500LOC.
So we need to figure out what makes these examples work so much better and how we can apply what we've learned to make our lives better. That's what I am doing, care to join me? [5]
Notice that I'm quoting Alan Kay. You're not just disagreeing with me, you're disagreeing with a Turing Award winner -- and that's not to say that he's right, or by extension that I'm right, but you can't simply hand wave it away as coming from someone who doesn't understand it well enough.
I didn't word that well. What I'm saying is that it specifically is missing what architecture or math has, which is a sense of higher understanding and managed view. So in other words, this isn't just a failure to find the beauty of PHP, but that PHP (for example but any language will do) is fundamentally misshapen and malformed.
I'd say that's job specific. My engineering role feels very artful, elegant, full of vision. And bruh, the whole "slaves built the pyramids" thing is a myth. Easily Google-able.
And that pyramid, well, it definitely is the way how a corporate and enterprise Java software has been and still being made. Java itself is an ecosystem for creating coding factories - to parallelize the process of coding (one cannot honestly call this programming) among teams of easily replaceable, uniform (in terms of abilities) cheap workers. Every manager will tell about this ideal.
For programming look at PAIP or the lisp code supplement to AIMA - this is programming. Take a look at Plan9 - this is programming. People who have created Erlang were engaged in programming. Code that runs Google's AI is programming. This is an art, same as writing poetry, composition of music, writing symphonies or complex novels.
But there are very few slots available, because demand for programming is very low - it is still difficult and very expensive. Conveyor belt coding, on the other hand, is indeed fits the Kay's pyramid metaphor. And the result of such process is crap - everyone have seen "enterprise code" made by such sweat shops..
The crucial difference between an art and merely piling up more crap is that art means an attempts to approach an ideal, an optimum, perfection - it is, ideally, a reduction process with eventually converges to the closest possible approximation to an ideal. Something like this:
[] ++ ys = ys
(x:xs) ++ ys = x : xs ++ ys
While in the in the second case is just a process of production. Not in the sense of Japanese perfection of every move and detail, but in the sense a hipster produces yet another narcissistic blog post.
> And that pyramid, well, it definitely is the way how a corporate and enterprise Java software has been and still being made. Java itself is an ecosystem for creating coding factories - to parallelize the process of coding (one cannot honestly call this programming) among teams of easily replaceable, uniform (in terms of abilities) cheap workers. Every manager will tell about this ideal.
So is the web today, its bloat eclipsing even Enterprise Java. The idea you described is the idea all businesses pursue, because it's the one of reducing costs and increasing profits.
> The crucial difference between an art and merely piling up more crap is that art means an attempts to approach an ideal, an optimum, perfection - it is, ideally, a reduction process with eventually converges to the closest possible approximation to an ideal.
Unfortunately you can rarely get paid for this.
In a way, I'm happy markets are not efficient. A lot of good, important, useful and/or beautiful stuff would never be done if the market was perfectly efficient.
Pyramids are nothing. Judging how things are going, I'm sure in a far distant future on the most advanced spaceships in the galaxy there will still be a Windows XP workstation running some critical machinery.
And they'll have a couple cryogenically frozen 20th century sysadmins in case the thing breaks.
Not really. Most pyramids are throwaway. The web is 99% throwaway code. Businesses themselves are throwaway too, so a lot of software made by them and for them goes to bin after few years.
What remains? Projects that are so useful that dominate their niche. Windows, Linux. Office. Photoshop. CAD tools. I suspect VLC will remain, 7zip may too. Some of those tools are pyramids, some others aggregation of small artpieces. I don't think survival depends on whether or not the software is a pyramid or a thatch hut.
Personally, I'm evidence for it, since I spend my days building pyramids, and program only on the side.
But the entire thing does not add-up. The artful activity is so much more productive that I can not stop believing that in any market you are able to create a slot doing it, you will outcompete all the pyramid builders. (Yet this pyramid pays me too well to just abandon it.)
I think about leaving programming every day. I love programming, but I'm not sure I enjoy software development as a career.
I enjoy coding and understanding how computer systems work, but I don't care for the constant changes in tools and techniques in certain domains of development. I'd rather practise with and improve my existing knowledge of a subject, instead of constantly playing catch-up with someone else's tools and workflow. I also don't care about waterfall, agile, scrum, kanban, scrumban or any other development methodology that I've missed. I hate that my job has me chained to a desk (sitting or standing) instead of being able to use my body. All of this makes me think that real-world software development doesn't really suit me.
I'm about six weeks into a new job after leaving a company I worked at for just over five years. Amongst many other reasons for leaving, I thought that a new environment would change how I felt about continuing a career in software development, but I'm not sure that it has. I'm aware of how lucky programmers have it, but I can't help feeling like I just want something else. Grass is always greener, etc.
What are the career options that allow one to work mostly by oneself in one-to-two week stretches without having to play the development workflow game with the daily standups and so on?
Sadly I'm not sure what I'd do if not programming, but music is a big interest and I'd considered teaching music.
> without having to play the development workflow game with the daily standups and so on?
It never used to be like this. I think management has reacted to the traits they perceive in programmers - get distracted too easily, work on things that don't need doing, take too long, cannot provide work-time estimates, etc - by putting in place this micro-managing approach: "only do it if it's on the kanban and tell us each and every day what you have done and will be doing". I know agile, etc, weren't designed to do that, but that's what they've been used for whenever I've been subjected to them.
Programming and dev-ops used to be fun, self-directed, creative work which kept me interested for a couple of decades. Now the pace of change (much of it unnecessary or over-sold) and the constant micro-management have me looking for other things to do.
I believe Agile (at least as thought of by management) is designed to make programmers interchangeable. If programmers are interchangeable, they are easily replaceable.
We just started doing "by the book" Agile with daily stand ups. Now that you mention it, it does feel like I'm being micro managed. Put in your time every day so we can email everyone the burn down chart. Lets add some more pressure to the job if you are behind a day. There are no milestones, just an endless grind. I don't know why programmers don't push back against that stuff.
Push back and you'll just be replaced by someone younger or more naive or willing.
At the end of the day programmers are mostly just factory workers of the 21st century. The best ones are perhaps closer to the mechanics of the industrial revolution.
Compared to factory workers of 50+ years ago? Certainly.
Compared to programmers 25 years ago? Absolutely not. The pay is worse (inflation-adjusted), and the working conditions are far, far worse (see: open-plan offices).
(My apologies for crappy formatting. All I wanted was a bulleted list. Wasn't that doc'ed in the FAQ or something?)
Let's see what I was doing 25 years ago:
* Private office with a door that closed.
* Status updates mail to $SOMEONE once a week that were mostly auto-generated from the tools we used. Took 30 seconds.
* Sat down to a chunk of work uninterrupted for long periods of time because no one was micro-managing me or bugging me on Fashionable-Chat-App-of-the-Week.
* Used development tools that had a half-life measured in years, not months.
* Got to really, *really* know my tools because they weren't swapped out for the new hotness every six months. Man, the ways I used to abuse FoxPro bordered on criminal. I can't do that these days since the tools get swapped from under me so often.
* Was paid well, and treated with professional respect. Sometimes a collared shirt was required, but I didn't mind when everyone else had to wear ties.
* Was provided with good equipment, often without asking. "I have a quad-core server box with an assload of RAM for a...mikestew?" "That's me, but I didn't order it." Boss: "oh, thought you might need that for multithreaded testing." Thanks, boss!
* Went in at 9:00, went home at 5:00. Every day.
Today:
* Today I'm sitting in a retasked storage room because I refuse to sit at the "hotel desks" (note that I'm currently a consultant, so it's not *as* egregious. But 20 years ago, clients that wanted me on-site provided a desk or sometimes an office.) My last full-time position was in an open office plan sitting next to people that literally (and I use that word literally) spent more time talking about the fucking Seahawks than they did working.
* Daily stand-ups to justify my existence.
* Treated like an interchangeable line worker.
* Working on the cheapest Macbook Pro that Apple would sell the client. With a 120Gb drive, I spend at least a billable hour a week trying to free up space what with Android/iOS dev environments and the multi-gig simulator images. But, hey, at least they saved $100 on the cost of the machine!
So much this. And the biggest fools are the programmers that believe that they are unique wizards working magic and being special. They are simply factory workers working under an illusion.
> work on things that don't need doing, take too long
These are also traits of junior developers, who now get boosted into non-junior roles due to demand for developers.
Hiring cheaper juniors and trying to micro-manage them into intermediates... The same approach suffocates eventually when "unaccounted for" tech debt creeps in.
That said, there is also something to certain devs wanting to play with shiny tech (and build their cvs) rather than the best tools for the job. This, along with " cannot provide work-time estimates" point to the need for some senior role who can management overall project development, including goals, estimates, planning and tech stack choices; and this has to be a senior technical role, not a MBA-ed middle manager with a list of methodology-derived rules carved into stone tablets.
Yeah Agile is the assembly-line version of software development. You're reduced to optimizing effort for your very local problem space. And its a grind. The 'sprint' is well-named though - you constantly race toward another crappy feature done with minimum effort.
I think it's just that the business wants to know where their money is actually going (and they have every right to, it's effectively their money, or managed under their auspices). and unfortunately agile is one way they can accomplish that. It's unfortunate because it costs a lot of developer time to go through the motions, and we are the closest witnesses to this overhead/waste.
I think using/not using agile is like doing business with a contract vs a handshake. When there are few enough people who trust each other, you can get by on a handshake. When you get into larger dollar amounts (like paying an office full of developers), sometimes its better to use a contract so you have some perception and promises about where your money is going.
Now, agile is of course not a contract, but if teams meet their deliverables, the business can at least see where their money went, which they are entitled to do.
Look for older development companies, where the developer staff is all over 40. The work tends to be in C/C++, you'll find none of the modern programming fashions (Agile, whatnot...) and they expect you to be a mature adult capable of self managing. They don't care how one works, as long as you own your work, can fix if issues or bugs are found, and can generally operate as a respectful peer to the other developers. The work you'll be given will be significant, you won't be able to slack off, but if you're an individual that appreciates honest, hard work that includes machine learning, advanced math and stats, 3D and GPU programming, plus responsibility for the entire UI, software documentation, and support of your development - its a dream situation. But ya gotta be capable of deep self directed research plus the entire development cycle yourself, as these older development companies tend to have deep libraries of past projects you'll need to learn for the core of whatever they task you to create.
Do you have any examples of this type of company? I'm a sophomore CS student looking to work in Aerospace, and this type of company, where the work is done in a self driven manner and where the work matters, that I'd love to work for.
Academia has some of these qualities (and more). Depending on the school and or department you could be doing anything from basic full stack web dev on down to lower level comp sci work. Deliver good results and move around (big university) every now and then and your pay will go up pretty quick.
Just don't expect the big software firms to be knocking on your door if you need those bullets on your resume (unless you have a PHD).
make sure you have a github or some sort of portfolio of personal projects you've done. Write your own kerbal, or wind-tunnel simulator, drone autopilot, something that shows you are captivated by the field and took matters into your own hands to work with it.
Also, prepare to work in a formal-verification development environment. Some aerospace jobs are like this, which basically means code moves as slow as molasses. If it's flight control software, you may find yourself writing 20 pages of documentation/paperwork for every one page of code. (Think about it, if your code could destroy a $12 million jet engine, you should be pretty confident your code actually works, right ?). So research CMMI [1] and if that is a dealbreaker for you, make sure you avoid those kinds of jobs.
> honest, hard work that includes machine learning, advanced math and stats, 3D and GPU programming, plus responsibility for the entire UI, software documentation, and support of your development
I'm in an eerily similar situation. Been doing software development for about 5 years (though at different places, doing primarily Android development), am just over 6 weeks at a new job and I'm beginning to feel that software development's just not for me anymore. I don't feel passionate about most aspects of it - constantly playing catchup with the latest frameworks, the development/management methodologies/processes, wrestling with the Android framework, pushing pixels, UI/UX...
There are still elements that I enjoy. I still love the creative, mathematical problem-solving aspects, but those moments feel few and far between.
I also feel at times I'm taking my position for granted - I'm not sure what else I'd do besides programming. I've always had a casual interest in security, so I'm thinking I might look into that. Being a "bug bounty-hunter" seems like a dream, though I'm not entirely sure how realistic that would be!
I also love music, but I think that's even less feasible. I'm not proficient enough to be able to teach it. But I would like to be able to dedicate more time to learning/producing it.
Good luck - here's hoping we find something more fulfilling :).
I'm a freelance programmer without much self-worth, and currently no work. Given the right environment, people and projects (for me), I know I'd be happier and wealthier, and may even thrive. Rather than the abandonment that I've felt on many freelance gigs. With age, I find it increasingly difficult to sit in front of a computer for long stretches of time (more than 4 hours). I've been in a rut, where I've barely earned enough to get by for the last 15 years, and have nothing to show for it, other than a bust shoulder. No landmark projects or piles of cash. Cash would help! My other half frequently tries to talk me out of the profession. I work occasionally with impassioned newcomers, who assume with my depth of knowledge and skill-set I'd be earning shed loads and taking the best gigs. But they have the needed drive and zeal that I feel I could do with a shot of. Or rather, I can program, but I'm not a successful programmer/worker. I still like problem solving, but also appreciate some donkey work. I often think what else can I do, but my imagination and confidence fails me. And I'm too shy to ask for help (UK).
I agree that the layers are insane and change frequently. Bigger companies go with stacks that don't change as much (C# or Java) vs. JavaScript but that's all relative and that may be too much change still.
Going the graphics programmer route (OpenGL, DirectX, Vulkan) would make for some fun work in a stack that changes in a different way and not as fast.
Bottom line though, technology is the business of change and we enable change for those that we work for.
As I've mentioned before I own a gym business (multiple locations) with my wife and some other business partners. Part of the purchase process was financial disclosures of everyone so we all know what each other makes on paper, what we actually take home, household wealth and assets, etc.
I'm 30, younger than my business partners by multiple decades, and am the only one not in a strictly management position. Two of the partners are PEs and I make more than anyone else.
I say this not to brag but only to point out that it takes a lot to leave programming simply because the money isn't there is a lot of other professions. I almost went into civil engineering and I'm glad I didn't, because apparently I would've had to bust my ass to make it into management only to be 20 years older and making less money to boot.
I did see some data on US News Best Jobs on salaries for various positions. It's a roundup of BLS data, and provides data based on location.
I find the data a whisker suspicious, but this is BLS data. Supposedly, the media salary for a software developer in SF is $118k a year. Keep in mind, in San Jose, it is $142k, which sounds more like it.
But now look at salaries for other fields. A registered nurse in SF earns a median salary of $123k. Every time I point this out, I always make sure to emphasize that I am not complaining that registered nurses earn a lot of money in SF - they should! And yes, it is a hard job, but perhaps a rewarding one as well. Would you rather do a hard job that is important and pays well, or log into JIRA to fix bugs and report on them in your daily "standup"?
Dental Hygienists, according to this roundup of BLS data, earn about $102k a year. Ok, that's less than developers, but do 45 year old dental hygienists get run out of the field because they are too old, or because they withdrew for a few years with kids and family responsibilities?
And keep in mind, salaries for lawyers, nurse practitioners, physicians, physician assistants, and other professionals or para-professionals often substantially exceed what software developers get paid. If you want a relatively low stress job, there are better options. If you're ambitious, there are better options as well. In short, you'd better really like code if you ant to do this, and you may find you don't, once you discover what that means on an "agile" team. Great for hobby, sure, so is music, dance, and painting. Do you like it more than music, dance and painting?
The unspoken truth is that Software development isn't really that great a job for the pay, career prospects, and working conditions. It's not horrible, either, but there's no need to scratch our heads about an alleged "shortage". I know the industry has a bunch of reasons they promote for the "shortage", but in the end, it's a market response to pay and working conditions. People with the skill to do this have realized they're better off in a different field.
Thanks, that's very interesting. I often think of doing something else with my life, but the money's good, and the work is easy. Makes it very hard to walk away. Plus over time you (and your family) get used to a certain lifestyle. Golden handcuffs as they say.
I'm aiming for Quant development since I read quantjob.blogspot.com/2011/12/how-to-avoid-quantdeveloper-black-hole.html
Software dev is less about enjoyable hacking, and more about "housekeeping", or a million yak-shaving data management tasks that you are paid to care about.
I'd sooner do something else that merely involves software, but has some other domain of knowledge, and keep the majority of my coding as off-work hobbying.
I think it depends what kinda code you write. Also, what kinda management structure you find yourself in.
Sounds like you're writing code with hard specs (enterprise company?) where you just feel like a cog in this vast code outputting machine. In that case, it's totally natural to feel like you're dying inside. That's natural. We're creative beings, and you either need to find a different job or calibrate other dimensions of your life to meet that need (physical fitness, start a family, serious hobbies, be part of a community).
The actual company feels more on the other side of the spectrum, and has a fairly 'young' culture, along with an overwhelming amount of 'social coding', for want of a better phrase, including various guilds for different technologies, tech meetings, demos, meetups, ad nauseum.
I feel pretty out of place, but I can't help feeling like I just can't cope with this much day-to-day interaction. I just want something quieter, more low key, if that makes sense?
You might consider digging deeper into other professions where programming experience/systems knowledge would be essential.
You might also dig deeper into discovering what you like and don't like about the programming profession:
Do you prefer going to meetings? Do you like solving new problems constantly? What drives your satisfaction? What do you not like about programming? What do you like about programming?
What one person considers to be a lucky profession may not be the same view shared by another :)
When I picture someone with a strong background in programming and CS going into another field I always imagine there's a lot of potential for really understanding problems in that field and applying computing to solve them. Essentially, using computing to really support work in another field rather than just computing for it's own sake.
Thought about it, and then tried it. I followed my dream and started a creative project that had been dogging me for a long time. EVERYBODY wanted me to do it. Family, friends, people on the street with whom I discussed it. I expected it to be a big moneymaker. And it didn't work out. Not only that, but it became very clear that it was a really poor fit for me on a fundamental level.
I'm glad for the experience, though.
Going back to programming, here's what I figured out:
- I was working on stuff I didn't enjoy, with people I didn't particularly care about.
- I was taking on new work projects without any particular selection criteria.
- I wasn't thinking about the kinds of work that got me excited about programming and chasing it down.
So I recently nailed the first two back into place. I'm working closer to my values system rather than paychecks. In exchange, I'm just saving more money so I have more freedom.
Anyway, burnout is real. I thought I was done for sure and that my interest in programming and computers was a thing of the past. But that was just the burnout talking.
It helped to keep a journal during this time. Not a chronicle, but a thought-dump process in which I asked if my life was actually improving daily. That made it pretty quick to pinpoint my frustrations, as you can only write about the same pains a few times before you start to really zoom in on the causes and potential solutions.
This speaks to me. Career curation; making sure it means something. Burnouts can sometimes afford to be selective in their work. Illness is very expensive.
I'd been working at the same job for about ten years, and I started to work on a different group that made the same product with a never technology. I hated that, I found it hard to work in that and I wasn't that productive. Also I had some burnout, some depression, and not much to look forward to...
Except for dancing. I had begun some years prior and I became somewhat good, and I even began to teach.
Then an offer came, resign from the job for money was offered to all, I accepted.
For about two years I just gave classes and worked as staff. Unfortunately the money was not enough.
Then I started helping on the dance school's webpage. The money wasn't enough yet.
So I got a programming job and resigned from most of my job in the dance school. I just teach one hour a week.
I really lost my dream job because of money and not being good enough earn enough to life with that.
I'm sorry but dancing is definitely not one of those professions where "if you believe you can do it".
Depending on the specific dancing style there are strict body types and features that you need to have, and not all of them can be acquired by training. So yeah, nature is not fair but feel-good comedies don't always apply to real life.
Others have pointed to you that to dance you only need to be able to move, to that I agree. But between dancing and have a profession out of dancing there's a big difference.
There are lots of reason why now I can't base my income in dancing, I'm telling them as to give a data point as to why it's not allways as easy as "if you want you can".
First: I don't live alone anymore. Married with some obligations. My income needs have grown, even though there are two sources of income.
Second: Physical activities require discipline, that I lack, and time, which is now spent on my "new" job, my partner and housework.
Third: There are several possible incomes for dancing. None of them make the cut as a great source of income.
* Payed exhibition dancing is usually done by younger and more talented people, also it's inconsistent income. Done a bit, enough not to find it feasible.
* Competitions don't pay that much, lots of politics in there.
* Teaching (which is what I love) doesn't pay much unless you have a name, with low salary you'd need lots of classes, but names teachers get most of them.
* Staff work pays less than teaching, necessary for the school to function, but boring.
Fourth: compatible schedules. Being with someone that lives in "the real world" means that working 15 to 23/24 is not seeing them (staff+classes+parties). That and money where the primary causes for my change of career. Priorities matter.
Fifth: People tend to prefer tall, fit, young, handsome male dancers and short, fit, young, beatiful female dancers. Each point where you diverge it's a handicap, I have several.
So yes, I could have kept on my dream job, but I would have to leave behind too many things that I need, like my SO, and would have to go back to living with flatmates. All that, in my early 40's, is not what I want of my life.
"Never stop dreaming!", "if you believe you can do it" are nice phrases to throw at people, but you can cause them to lose their grounding in reality, where sometimes dreams have to be crushed for the greatest good.
In the end, you gave it a shot, you chased the dream, and have good hard reasons why you gave it up. Be consoled with the knowledge that you tried, you would have never known if you had not tried!
I understand. You're balancing the life you have now vs your dream career. And you don't foresee anything better in the latter. It's ok. Due to today's society, a lot of us sacrifice what we love doing for economical comfort.
I never said it was easy. Unfortunately, this is not a perfect world, and most of the time you have to make sacrifices in order to do what you love. In your case, it means lowering your living standards, but that's up to you, I respect that.
At least that one doesn't not seem to imply dreaming about the same exact thing forever. In other words it might be something else if dancing didn't work out. Still seems to me (I'm in my 30s) that someone with a dream can definitely get further compared to someone with "bullet points" so to speak.
That's a bit like saying "besides having reasonably good eyesight and ten working fingers that can type, I can't think of anything else one might need to be a developer as a profession..."
Well, obviously you need to need to train ... [...], but OP I was referring to, implied that you have to be born a certain way in order to dance, which is completely BS as long as you have all your limbs and good health.
Unless you're severely handicapped, I don't understand why wouldn't you be able to dance whatever type of dance you want.
If you have all your limbs and can walk, you can perfectly dance whatever is that you want. If you're fat and can't dance no more that one minute without getting out of breath, get in shape and train endurance. As simple as that.
If you're 5.4" or less and feel intimidated dancing with a taller woman, find yourself a woman of your same height.
You shouldn't be cutting away wings and locking up birds in cages telling them they can't fly.
Mental handicap imposed by oneself -or others, which at the end of the day ends being oneself- is the worst of all.
I dunno but I think you guys might be talking past each other a bit - this discussion is different depending on whether "dancing" is ballroom dancing, e.g. or ballet, modern, or what have you.
Although even with modern, there is a strong school aiming to democratize dance. My family were performers in Kaeja D'Dance (http://www.kaeja.org/) Porch View Dances this year (look it up if you like dance) and the performances were very good. The choreographers were very careful to work around body types and capabilities.
This is silly. This is like claiming that just because you have arms and legs and can run, you can play football. Yes, almost anyone can toss a ball around, and lots of people can play amateur football (choose whichever definition of "football" you want here) on the weekend with friends. But very, very few people can make a real living playing football.
Not my kind of site. My dancing information needs are covered by my Facebook feed, the swingdancing reddit and sporadically yahoodi.com.
As I don't think I'll be able to earn my living with dancing, nor will my free time be dedicated to it, I'm trying to finally learn lisp, so most of my news' search is about that.
Also.. I don't like pages with the look and feel that that one has, I know modern pages tend to be like that, but I prefer other kinds of formatting. Take this with a grain of salt, because I'm no longer in your target demographics.
I did consider a career as a lion tamer, but the vocational guidance counselor said I was an appallingly dull fellow, unimaginative, timid, lacking in initiative, spineless, easily dominated, no sense of humour, tedious company and irrepressibly drab and awful. So I decided to stick with programming.
Yes, I want to do something more meaningful than build and maintain web CRUD apps. Despite the media perpetuating this notion that there's a shortage of engineers, I actually feel that this field, particularly the web space (where most of the actual jobs are), is starting to get really saturated. And from a job security perspective, the barriers to entry are fairly low.
These days I'm most interested in economics and politics because I believe that our most important problems right now are in this realm (eg. poverty, job automation, healthcare costs, housing prices, college prices). The Javascript framework wars are laughably insignificant compared to these problems, yet unlike web development, there aren't enough logically-minded people really tackling these problems. Unfortunately there's probably no job out there that I could realistically obtain that would pay me to work on these problems, thus I'm just saving money for retirement and learning on the side.
Oh man, 1000x this. This election season in particular has made me consider how we could get more smart, rational, self-less people into positions where they could influence the overall outcome positively for the vast majority of the population. I don't think our current political system achieves that outcome.
I'm smart. I think I'm rational. I'm not self-less enough to give up my and my family's financial security to leave the field to tilt at these particular windmills. (I'm unconvinced that any single politician, even the President, could change the systemic problems our system is facing, to say nothing of the likelihood that any individual would be cast aside at some point during the election tournament ladder.)
This is an economic problem at heart. If you could find a way to make investing in, say, peace, or hunger, as tempting to investors as software we could solve the really important problems.
Yes. I love programming, but I really dislike how inactive I must be to work as a programmer. I don't like sitting/standing all day, and being chained to the computer. Short activity breaks, and workouts in the morning and evening don't cut it.
When I'm outdoors and active, I am so much happier. If I am on a multi-day outdoor trip to hike or rock climb, I feel like a completely different person. This is especially true on long trips that last more than a week. I have much less stress. I smile compulsively, instead of baring my usual strained expression. I have more energy. You might think at first that is simply because I am on vacation and I don't have to think about work obligations, but when I am on a normal (non-outdoor) type of vacation, I don't get the same feeling at all. I think it has more to do with the outdoor environment and physical activity.
I recently met someone who works as a park ranger, and I became envious of her job. I would love to patrol the woods all day as a ranger, or to be a mail carrier walking from house to house. I make much more money as a programmer, but "money cannot buy happiness", and I wonder often if I should change course.
I've considered both of those career switches (ranger and mail carrier) myself for those exact reasons. Deliveroo too, as the idea of being able to cycle around all day seems quite appealing.
I'm mostly happy with programming, but I often think I'd like to try working in a coffee shop, especially a Starbucks. I spend so much time in cafes as a customer, and I really appreciate the difference that a barista's smile or greeting can make to my day. I'm curious to experience that from the other side for a while. I also read books about retail businesses & brands & Starbucks & customer experience for enjoyment, but I'm sure practice is wildly different from theory, especially at ground level dealing with customers for long hours.
But I've never tried applying, because I have no retail experience, and my work experience is mostly as a lone-wolf remote developer or indie developer (also I'm middle-aged now). Always thought I'd be laughed out of the interview. But I still think one day I'd like to try.
Barista-turned-programmer here. I was fond of it much of the time, and it was a good experience for me, and I think you would also like it based on what you've written. But keep in mind what you often don't notice from the outside is a lot of standard bullshit like mopping floors, keeping composure toward rude customers, worrying about food-handling/health provisions, etc. And, of many differences between the occupations, no longer being frequently treated like I'm dumb sticks out.
Nonetheless, I say go for it. You would learn a ton and probably become the best kind of coffee snob, one who can back it up with chops ;)
I quite enjoyed working at Starbucks as a teenager, because it gave me a cool that a nerd like me hadn't had before.
Careful about the drudge work though (especially cleaning floors/toilets at the end of the day), and if you're not used to spending all day on your feet you'll feel pretty sore at the end of the first few days!
You should make this happen! I ended up getting a part time over the weekend gig at a San Francisco coffee shop - it was super satisfying to be on the other side.
I made the effort to befriend the baristas since I see them every day anyway. Eventually asked one of them to teach me during slow hours and I started to make my own drink each time I came in. One of them baristas ended up referring me to a different cafe (allowed me to avoid the awkward conversation of a weird looking resume) and I passed the interview by making decent drinks.
I've really thought about this as well, I'd love to work a couple hours in a coffee shop on a weekend. It's mainly the fact that you get to interact with somebody, make them something, and see them enjoy it immediately.
Sometime's it's difficult for me to get motivated to push out code when it's just for myself.
Apparently, there are quite a few of us who enjoy the idea of a coffee shop. I doubt I'll ever do it, but a year ago, I did a cost analysis spreadsheet of opening my own shop, but now a coffee cart seems like a fun side project. :)
I want to start a math-cafe, where the loyalty cards are replaced by puzzles (you solve today's puzzle, tomorrow's coffee is free.)
They have such high margins on individual drinks (and people will totally buy a pastry if the coffee is free) that this shouldn't cost too much. Plus you can always make the puzzles harder, or have 2 or 3 easyish ones and then graduate people onto harder ones that they'll take a few days to solve.
You can imagine how to decorate the place - blackboards for walls, encourage the customers to use them to practise the spare puzzles lying around today, etc...
That's a great idea! It sounds kinda wonky like AirBnb when they pitched it to YCominbator but... it'd be pretty cool if you could execute on the idea!
Why Starbucks? It's the McDonald's of coffee. Pick a local cafe you like and see if they'll hire you part time for weekend shifts. A place that takes pride in their work.
I'm a big fan of Starbucks as a customer. It isn't about the coffee for me (clearly!) so much as the whole experience, the "Third Place" concept. The design of the stores, the comfy chairs, the handfeel of the mugs, the quality of the free WiFi & power points, the opening hours, the lighting, the light jazz music that doesn't interfere with conversation.
If I found a local cafe that paid that much attention to the experience, I'd certainly apply there. But I find many small cafes focus only on the coffee product, but not how the customer feels about the product.
Probably depends where you live. I imagine it would be tough, especially for a one-income family. In Australia however the minimum wage is $17.70/hour, or $22.12/hr minimum if you're a casual worker, so I assume baristas here earn at least that much.
I got kind of burned out after I got laid off at the tail end of the first dotcom implosion—I'd stayed in a really toxic environment for a couple of years too long because things were rough for a junior/early-mid-level developer back then, at least in my market. So I spent several months depressed and unemployed before deciding to go back to school which ultimately led me to preparations to go to med school.
Ironically, I took a semester off and took a contract gig for a few months to pay off some bills and save up some cash, and that turned into a full time job writing software in the public health sector. I never did return to finish the undergrad, and have doubts I ever will, as my career in software has been about as good as medicine would have been when you balance the ten extra years of earnings against a slightly higher salary. The only reason I'd do it now would be to pursue a masters in something interesting.
I think if I had it to do over again I'd have probably just stayed in the market a little longer and skipped out on the student loans. I loved biology and medicine but i'd love to not be paying off the student loans too.
I graduated with a degree in CPSC in the early 2000's and worked in the field for about 10 years before my wife and I moved to a more rural locale, bought a small herd of dairy goats, and started making cheese. It's a very different and difficult life, but on the whole is very rewarding.
The money will never be the same as working in tech, and you'll almost certainly have to scale back your lifestyle expectations. I still do remote freelance work in slower periods to keep cash-flow flowing, and to fund farm expansion as we grow.
More recently, I've been applying my past development experience to farming automation using Raspberry Pi's. I built an automated greenhouse controller last year and this year am working on a device to automatically mix and dispense milk replacer for all of the goat kids we have born each year. (You can of course purchase commercial versions of the projects, but it was a fun application of programming, while learning about the RPi and automation, which I'd never done before.)
random idea: why not open a hostel/retreat for programmers to come work on your farm for weeklong increments. Free room/board in exchange for 8hrs labor. Post videos of exactly what kind of work is awaiting them, and interviews of people who have tried it. You get free labor on your farm, and a passive "income" source, they get to step away from their burned-out, fluorescent-lit cubicles and actually get to try living as a farmer. A lot of people have this fantasy, so I suspect there would be a good-size market of people who would love to try it.
Honestly, I'd rather hire someone at a reasonable wage, train them, and turn them loose without my supervision, or spend 10k and automate part of my production, than have to supervise people. It's likely a bit different in dairying than it would be for something like vegetable production - I don't have lots of repetitive, low-skill tasks (sorry, vegetable farming people!) like weeding or harvesting that I could safely unleash untrained people upon.
I have a hard enough time finding reliable paid help (and we're well above minimum wage); managing people with even less incentive to put in a day's work isn't that appealing. :)
After a particularly terrible period at a large e-commerce company that comprised of endless and useless meetings, stupid product plans to nowhere, psychpaths galore, brutal waste of shareholder vale, and enough process to make Hell seem desirable, I decided that maybe I was not cut out for the original passion of my life, i.e. development. I started to take evening classes in accounting etc. with the aim of getting a CPA. I also left the above corporate Hades around that time and found a situation at a quirky startup, where I realized that software development is truly what I love, particularly when unencumbered by process feces. Off by the wayside went the CPA plan and I went on to learn more things in a year at that startup than I had in many years at other places. I also realized that leaving something that I have loved and lived since I was 13 is a little difficult and that the things that were causing my disillusionment were not related to my passion but to various unfortunate diseases that have come to afflict my industry.
As we were driving to lunch one Friday, another programmer and I saw a backhoe in use, and started favorably comparing 'backhoe operator' to 'programmer': you get to work with heavy equipment, you can see the results of your work, when the day is done you go home and don't have to think about it. We laughed and cringed, as backhoe operator sounded like a better job by the time we were done.
For me, I can't do anything else. I'm sure I could learn something else, and I certainly get burned out from time to time. However, I find the whole development process fascinating, I still get a kick out of solving the puzzles and making things work, I am deeply gratified to see something I made help someone else solve one of their problems, and code is affecting more and more of the population for better and worse. There's no place I'd rather be.
There's a scene in 'Heat' where De Niro's criminal and Pacino's cop characters are talking about why they do what they do over a cup of coffee at a diner, and it turns out they're both compelled and couldn't do anything but what they do. I'm not sure what I'll do when the Butlerian jihadists or the twenty-something Angular developers come for me, and I have to go find something else to do, but I think I'll keep at it until then.
Wish I could remember where I saw it (reddit?) but just last week I read a comment from a backhoe operator that said basically, "it's fun for the first four or five hours then it's hours of tedium making sure you don't kill someone who's stupid enough to stand in the wrong spot."
Left to work in equities after 5 years of software dev. I find the work much more stimulating mentally, as you learn about the world and how business works, not just abstractions.
Luckily there is still a lot of use from my old skill set, and I suspect there will be more as time goes on.
Can I ask how you got started in the field? I actually began my career in Accounting (my undergrad is in it), and still find the world of finance pretty interesting. Somewhere along the line I ended up in Engineering and have been a Software Dev ever since. But I do still think about getting into trading at some point, but not sure how to transition.
I spent about 2 years reading in my spare time, learning, trying to understand the world and markets in general. All the while applying for jobs. You end up getting a good feel for the job market, what you're actually lacking, what people are actually looking for.
I would have properly applied for every job that appeared in the country over that time.
Surprisingly a lot of people enter the field laterally, not everyone goes through the investment banking angle.
Edit to my own thread - I actually did go back to college for a Master's in Software Engineering. It was neither quick nor easy for me, but in the end I did get a degree and have had a pretty successful career for some years now. However, I agree with all the other comments that a degree isn't necessarily required and sometimes wonder if it was even worth the effort.
Malcolm Gladwell's much contested principle that 10,000 hours of deliberate practice can make anyone world-class in a field, aside.
Software engineering is incredibly high in demand, there are countless free resources and courses available online, and there are a lot of people out there with the capacity to teach themselves. Software engineering is probably the single most enabling thing one could teach themselves in today's world.
There are people who learned how to code, tossed an app in the App Store and made millions. Or someone who started a wordpress blog, dabbled in some customization and discovered a passion for writing code that they never knew existed. It's like teaching yourself how to read, it enables you to learn and understand more.
It's probably one of the few professions where Malcolm Gladwell's contentious principle holds true. Do it religiously for 5-6 years and absorb everything you learn like a sponge, and you are probably more of an expert in your field than someone graduating from a University because you're on the cutting edge whereas they're just figuring out where they fit into the picture.
You know, not everyone needs to do a degree to be good in a field.
There is such thing as a traineeship. Yes, they lose out on a lot of the concepts and focused study, but I'd take sharp trainee over a hand pressed graduate any day.
Universities have a vested self interest in controlling who can join a profession, they would prefer it if every worker everywhere needed a degree. Just look at the slow assimilation of vocational studies into uni courses (stuff like wine making, nursing, etc.)
It is needed in some cases, you want people to be properly educated, but that's only when the tuition is necessary for that education.
Engineering (software) probably doesn't for the most part, and I think most people resent the hoops they have to jump through because a university wants to stay relevant, hence the down votes.
Ha. When my career started I was one of the first in the office with a relevant degree. Everyone else had started as an accountant. Which, if you think about the evolution of business computing, makes perfect sense.
Tangentially, presumably for the same reasons, both genders were evenly represented.
Condescending? Please explain why you see it like that.
When you go to a doctor, you expect that they completed training and are certified to practice medicine. It is the same for the engineering profession. Would you want to work in a high rise building that was designed and built some self-titled engineers who have never been appropriately trained?
That's incorrect. In the US, you take the Engineer In Training (EIT) exam when you graduate university, then require 4 years of industry experience before you can sit the PE (Professional Engineer) exam. If you pass that, you can call yourself an Engineer.
But that's only for actual Engineering disciplines. We in software don't need to take an "Engineer" test for the same reason we don't need to take a "Rock Star" test or "Ninja" test. We use the title as a courtesy, not an indication of qualification.
> In the US, you take the Engineer In Training (EIT) exam when you graduate university, then require 4 years of industry experience before you can sit the PE (Professional Engineer) exam. If you pass that, you can call yourself an Engineer.
I believe you that this is the requirement for some fields of engineering. However, there are thousands of people reading HN with the job title 'software engineer' who did not take those exams.
For four years, my business cards read "engineering". As in, does engineering work but cannot sign off on documents and thus is not an Engineer.
I left for software before sitting the PE, so they'd read the same were I to return to doing Mechanical Engineering work.
But of course it's silly to stand on principal on such things, so I've never taken offense to anybody calling themselves whatever they like. If the janitor can be an engineer, certainly anybody else can too.
I imagine Architects feel the same way. And Cardiologists will as well, when we start appropriating their title.
You don't need a PE to call yourself an "engineer". Every working engineer calls himself an "engineer" on his resume. What you people are forgetting is the Industrial Exemption. Companies are allowed to call their employees engineers and use that word in their job titles because of the exemption.
The PE thing really only applies to stuff like civil engineering projects.
Well there are certifications and licenses for civil engineers. But not other forms of engineering, and 'engineer', unqualified, is not a protected word. In fact for the most part we don't really have protected words (1st amendment and all that).
I can call myself any of those things without getting into legal trouble. If the context is that I misrepresent myself to have credentials I do not, that could be a crime yes. But saying I'm a doctor, professor, or even judge doesn't automatically get me in trouble as it would in other countries.
Interesting. I actually had the opposite experience. I majored in Economics and worked in commercial banking for a number of years, then moved to Chicago and took a job at a proprietary trading firm, mostly trading Grain contracts intra-exchange. It was incredibly fun, extremely lucrative, but also pretty stressful. That being said, it was great trading from 9:30 am to 1:15 PM, then calling it a day, heading to a ball game, taking in sun. Then of course, 2009 came along, I and a bunch of my peers were laid off by 2010, some of us (including myself) were actually profitable on the year. The firm as a whole really took it on the chin, and a few years later I found out they closed shop. Probably some errant trades in Treasuries or Eurodollars.
In any case, I'd already moved on. I started dabbling in web development in 2008, but by 2010 the Chicago startup scene was taking hold. I got involved, taught myself how to code mostly in Ruby. I had learned QBasic and VBA when I was a kid, and plenty of Matlab at the trading firm, so you could say I had some knowledge, but nothing career worthy at the time. I did the Michael Hartl tutorial for Rails. Started working on an overly ambitious startup idea that went no where. At some point I stopped applying for trading jobs. It occurred to me that I've never been so passionate about anything in my life. I could spend 24 hours straight trying to solve a problem like it was some kind of puzzle that needed to be solved. I redid my resume and quickly went from getting 1-2 hits on my resume a week for trading, to 6-7 hits a day for programming. Ruby on Rails had taken off and demand was soaring. I took a bunch of contract jobs, making $40 an hour. I still remember reporting that I worked on something for 4 hours even though it really took me 12 hours or more. I faked it until I made it. And it worked. Now, I know some 6-7 different languages quite well, and I'm respected by all of my peers.
The thrill of solving a problem still hasn't gotten old for me. Maybe some of the juvenile bro-ish culture has, but the challenges are getting more and more exciting by the day. I'm experimenting with home automation and AWS lambda on my free time, dabbling in hardware.
Now, 6+ years later I have the title of Senior Software Engineer. I've been a lead, I've mentored other developers. I work from home, have the flexibility to live and travel anywhere I please. I couldn't ask for a better career. I've made it a point to learn as much about all the little things that graduate students like to lord over us non CS wielding engineers' heads. I can hold my own and I'm proud of the choices and dumb luck that got me here. To me it is an incredibly rewarding and creative endeavor and I'm still as curious to learn as I was when I started some 6-7 years ago.
I work full-time for adhocteam.us, a government contractor. I'm active on vets.gov and we're hiring. Tag me on something you're proud of on Github and I'll take a peak, I'm saneshark on there too.
Buying and selling shares of companies, I work in a team of 10 and we manage roughly $10b (equivalent in USD).
Every day we will discuss new developments and how they affect our valuations for these businesses. These decisions are then factored into a portfolio model, which is then implemented by the dealer.
All in all, you have a lot of freedom, you aren't accountable for your time. I could be gone for the week and nobody would bat an eyelid, but the work is honestly so interesting you wouldn't squander your time like that.
After years of software, I discovered that my favorite part of the job was teaching stuff to my peers.
I started by dabbling in teaching:
- Mentored some high school robotics teams in the evenings
- Taught night school / weekend classes as adjunct faculty at local universities
- Shifted my day job from developer to developer advocate
And then a few months ago I took the plunge... sort of. I went on sabbatical for a semester to teach CS 101 full time at a small university across the country.
It's been a great experience, but it made me realize how much I miss programming. I really miss the intellectual growth that I get from working with professional software developers. I suspect I'll resolve the conflict by going part time in my day job, and picking up more classes as an adjunct.
For contrast, I went the other direction. I taught middle and high school math, then got an MS in math (really enjoyed TAing) and started programming. I really appreciate the intellectual stimulation; I love the fast pace with which ideas evolve in the community. But I miss being that teacher who helped someone "get" math.
One of the coolest experiences I've had: one of my students managed to end up in my class for 6th, 7th and 8th grade math... Then 7 years later I hired her as an intern! She totally crushed the internship. Meaningful relationships with students like that, where they still check in occasionally and give me updates on how they are doing and tell me how I changed the way they see things... that is something I miss a lot.
For what it's worth I still think pretty often of my high-school math teacher who helped me "get" Calculus, almost 20 years ago. I wouldn't have my current programmer job and interest in abstract things if it weren't for him.
No, I started my programming career late and have had many different jobs before that. Programming is the only job where I don't loathe being there and constantly watch the clock for the day to end.
I think you should experience how horrible 99% of all other jobs are. Then you will truly appreciate what you have.
Was a programmer and researcher in AI and security for 20 years. 15 years ago was feeling burned out and started looking for a financial planner for my family. I fell down the rabbit hole learning everything about the field and with the birth of my third child 14 years ago, I quit my job and opened my own business as a financial planner.
Programming and computer research went back to being a pure passion. And I haven't looked back since.
I have been mostly happy with programming in my early days. I’m now 28 years old, and been a programmer for the past 5 years. I mostly code Android apps, and sometimes server side code in Node/ExpressJS. For the past 1-2 years, I really want to change my career into more unique/niche fields of engineering. Programming, as I see it now, does not need a computer science degree or any degree at all, to do effectively. And people from other domains are getting into programming, and doing it a lot better than I do. I considered getting trained in Industrial Automation (PLC/SCADA/LABVIEW) and get into more mission critical domains, where I can work with lot of other Engineering domains as well. Another option I consider is to go for a masters in a niche engineering field. But as I analysed my thoughts, what I really (really) want is a unique engineering job, where the entry barrier for others is high. I don't have any idea if I could be a success in the new field. To conclude.
- Programming is boring after a number of years
- Programming is more of an art-form rather than engineering
- Entry barrier for programming is low, so you don’t have to be an engineer to do programming
- Your programming skills plateau after a certain age
- Your engineering mindset will be lost if continued in certain type of programming jobs.
Sadly yes. It's been very frustrating at times. I thought of becoming an environment artist for videogames instead.
Though OP hasn't asked for the following here goes, I feel the IT field has a lot of people wanting to change career paths, more than any other field because of the following:
1. Programming is an art, if not done right and assuming the product is in continuous development, will come back to bite you in the rectum like there's no tomorrow.
2. 99 percent of the industry is about shoving products out without any care for proper architecture or refactoring of any sort. Result -> feature addition/ bug fix times grow exponentially with time.
3. The IT field has no concept of overtime pay
4. 1 + 2 + 3 => loads of burnt out devs :-> people wanting to switch jobs regardless of how high paying programming can be
I feel the IT field has a lot of people wanting to change career paths, more than any other field
This feels like a bold claim. Is there anything to support it?
I would also dispute "The IT field has no concept of overtime pay" as being a meaningful reason - many "white collar" professions don't really pay overtime. (I will say that as a contractor, I managed to negotiate a higher rate for working at weekends a few times, but as a permanent employee, the best I ever managed was "time in lieu", which at least a few times basically meant a lie-in after working late.)
Points 1 and 2 can be a good thing, if you have the mental fortitude and cast-iron gullet to specialize in cleaning up other people's messes. There's a lot of money to be made that way. It doesn't tickle the artistic urge the same way greenfield development often can, but that's what creative hobbies are for - I write - and you can derive considerable satisfaction from the knowledge that you're bringing order from chaos, and being quite well paid and appreciated for it besides.
> if you have the mental fortitude and cast-iron gullet
> to specialize in cleaning up other people's messes.
> There's a lot of money to be made that way.
How does an individual or a consultancy go about finding these messes to be cleaned up? I feel reasonably-qualified to go in and take the necessary steps to get engineering projects back on track, but I'm not sure how you would get started doing that?
This is surprising and interesting... how do companies who do not value quality when the code is first written come to value quality later?
I'd expect a pattern where the original thrower-of-spaghetti-against-the-wall has left, and management assumes the later devs - who can't go as fast, or get more bugs because of the holy mess of the codebase - are just not as good as the first guy.
> how do companies who do not value quality when the code is first written come to value quality later?
Not for nothing is it said that the burned hand teaches best.
It also helps to avoid organizations where immediate management is nontechnical - not an absolute guarantee of sensible behavior, of course, but at the very least it's a good baseline to set. And it's hard for any manager, especially any manager accustomed to being on the hook and under the gun for the myriad problems with unmaintainable code, to get too upset when people start saying things like "wow, this is amazing, this never used to work before and now it does exactly what we need, thank you so much, you guys are awesome!"
this very much depends on the location. The US seems to be lax on overtime laws, whereas in europe its more strictly defined, and I have not worked for any company in europe where we didnt get overtime pay/compensation
The US is actually very strict with a variety of penalties for companies that violate the law regarding overtime. The amount of overtime pay and the hours at which it starts are clearly defined.
There are, however, some exemptions for some occupations. Computer professionals, farmers workers, artists, professions (i.e. doctors and lawyers) and managers are all exempt.
It's debatable which professions should remain on this list but the law is reasonably strict with respect to over time pay.
Not true everywhere. In the Netherlands I'm expected to learn courses in my own time. A new major version of the opensource system we extend came out recently, it's completely different, and I'm expected to read it in my evenings and weekends.
I mean, I'm okay with investing in my own knowledge, but at some point it's just too much.
A bit too late, but if I could do it all over again, I would have gone into health care. I have lot's of friend in the industry.
Ask them about their day, they just saved lives - heart surgery, brain surgery, trauma stabilization in ER, just saw a toddler through cancer treatment, and so on and so forth.
I came the other way -- I quit medicine (completed Medical school then did not do residency) for programming. I very much enjoyed the material and rigor but the day-to-day work ultimately left me feeling extremely bored and depressed. What I found in the field was it was incredibly bureaucratic, inefficient, and quite frequently unprofessional feeling. Depending on the hospital, many patients were sick because they outright didn't take care of themselves. Surgery is much less precise than you'd imagine and depressingly impersonal. In the six week rotation I did in the pediatric ER, I saw extremely few cases where the treatment was actually urgent and made a difference (like I can count on one hand). I don't want to bash it too hard, because ultimately I just wasn't a good fit for it. It has its good parts and the social perception you get when you say "I'm a doctor" is real. But you are very much a cog and if you ever think you want to change (and you can, if you want) -- make sure you spend some real time shadowing the profession you think you'd go into.
I was interested in radiology after doing a contract development work for an X-Ray manufacturer. I thought "Hey, I'm young enough, lets check out the field and if its something that I really like, med school isnt completely out of the question", come to find out, the one slice of medicine that seemed appealing to me is among the top 5% of the most elite and selective practices to get into. Really disappointed me. Like, I get it, you have to be good enough to read films accurately so as not to kill anyone, but I disagree with the elitism. I mean, a bus driver also has hundreds of peoples' lives in his hands each day.
What's going on there has a lot to do with lifestyle. Some of the most challenging specialties (cardiovascular, neurosurgery) are understandably selective. But others (Radiology, Dermatology) have more to do with people wanting a good lifestyle. Those specialties which may already have short hours, then strategically limit the amount of Doctors they let in to keep the supply low and the salaries high. Thus you get highly competitive specialties because of short hours and high pay. So if you've ever needed a Dermatologist, but struggled to get an appointment less than 6 months away... its not because nobody wants to do derm. Its because they don't let many doctors do it. Its sad.
That is sad. So now the patient's $2000 MRI bill is at least partly due to Comcast-like monopolistic practices with both the equipment owner and the rads reading the films. And the dr's are incentivized to create their lucrative cartel to payback their $300k student-loans, which only cost that much because of...a cartel in medical schools (or at least certain residency specialties). I guess I wont feel too badly when Watson takes away all the rads'/ GP jobs (edit: GP's are good people, underpaid and overworked, I think it will be good when Watson liberates them to pursue more rewarding practices)
Hah! I don't work for a startup, I work for enterprise, we give meaning to bureaucracy too!
I'm not going to a startup, please don't suggest it. I've been there done that. Too broke for my liking, Enterprise got money, plenty of it! I like money and not worrying about it.
Call me crazy but I have always had this exit plan. If my business completely fails, I'd give away my stuff and live in buddhist temples, would visit Tibet, travel around and spend my days meditating and helping people.
Sounds like an insane idea, but as a Buddhist that would be a fulfilled life for me.
I have a good five digit amount of cash prepared. That's enough to buy plane tickets and pay drivers to get where I want.
I live in Europe and not far away from me is one of the largest European pagodas - even the Dalai Lama has been here. I'd just go there to start my journey. I could stay there for some time.
Actually, I think it's like it is always with the Buddhism; the plan is not to have a plan.
Constantly. I considered shepherding. (Seriously.) I spent some time on a farm during lambing season, which is busy, and I enjoyed it. But it's incredibly hard work, and you really have to be 100% dedicated to it. Plus I like traveling, and it's extremely difficult to leave a flock for any appreciable amount of time.
I've thought about teaching (programming) too. My dad is a retired professor, and I entertain no delusions of present-day teaching careers being anything like those of his generation. Still, there's something appealing about even just teaching as an adjunct once I no longer really need the money.
Code is clay. What you do with it can make you a Michelangelo or a bricklayer. Sometimes it can make you good money, sometimes it becomes tedious in the wrong job. Still if you pursue other economic means of production, code is always a way to express your imagination, a nice hobby to have.
I'm slowly working my way toward park ranger, though I've considered paramedic. Wood working also sounds interesting, and I'm great with my hands. Certainly, programming is my passion; having to do it under someone else's terms can spoil the deal though.
> having to do it under someone else's terms can spoil the deal though
Exactly. This is my main gripe about programming. I will still be programming at some level as I age, but I don't see myself doing programming competitively after 35 considering the cut throat business needs of a 3rd person/entity for whom I will be programming. My best bet is to program for my own business, and then again money and profitability is a matter of concern and there is no better way to know than trying it out.
I like programming, but I don't really feel satisfied working as a programmer. While in college I worked in a supermarket, I found that a lot more satisfying that what I do now - I don't really know why, but I think I just like dealing with people (although I'm quite an introvert, I can do it if my job requires).
As others have said programming is probably the lesser of all evils compared to other jobs though. I don't think there is any other profession where I could so easily get paid as much as I do, and work from pretty much anywhere on the planet.
My mid-term goal is financial independence. I'm 28 and should achieve that in the next few years (I'll probably take short-term contracts and then a big break between rather than quitting completely). I don't really have any other hobbies, so I'm not sure what I'll do then though. I wouldn't mind going back to university to study physics.
I hate programming as a job. Spending all day sitting at a computer with little human interaction outside of the person next to me and having to concentrate for hours on hard problems is really bad for my mental health. Most programmers seem to either burn out, or spend their day trying to avoid programming by going to meetings and so on.
There is also an extreme amount of micromanagement at my current job. I just get very specific issues and then resolve them. There is no autonomy. The project manager just sees me as a typewriter for his novel.
Jobs where I have been physically active and interacted with a bunch of different people that I don't work with have been much better in terms of my mental and physical health.
I am thinking of dropping down to part-time as I could manage 4 hours per day of programming, and maybe getting a physical job as the other 4 hours.
My father never really retired, he just took longer breaks between shorter jobs. In between he toured national parks.
Obviously for financial/economic system reasons this isn't open to people anymore, think of the cost of medical insurance or cost of real estate, it was much easier to be independently wealthy in the 80s/90s (for a small enough value of wealthy of course). But something similar could probably still be arranged today, somehow.
Another thing to think about is not all programming jobs are excruciatingly boring. Boring jobs should pay a substantial premium to be staffed such that you can afford mental health vacations each weekend of arbitrary expense, to recover.
Also in my starving student days I worked some physical labor jobs that were as excruciatingly boring as your description implies for programming. You feel physically better and more energized if you move more, but you'll be just as mentally bored.
Sounds like you'd be much happier at a place like Bloomberg, where there's just a big open room and a lot of noise and zero privacy and lots of talking and "teamwork".
There's no shortage of workplaces like this. Go apply for new jobs and look for ones that use "Agile" and have "open-plan offices".
I'd love to have a programming job where I have little human interaction and have to concentrate for hours. Those jobs are very rare these days thanks to the open-plan office.
I love programming especially solving difficult problems. But sometimes I fanatize about being a professional photographer or a writer. These 2 professions seem perfect to me. Perhaps because they provide freedom to work from anywhere, and be creative. When I was pursing these professions semi-seriously, almost everything around me was an inspiration or a creative idea; movies, driving, conversations, food, advertisements, etc.
About a year ago, I started portrait photography semi-profesisonally. I really enjoy photography but didn't enjoy the business aspect of it. And it was hard to coordinate with clients when you have a fulltime job.
A few years ago, I got serious about fiction writing, wrote a lot but could not write anything that I felt was good enough for anyone to see.
Now I am just focused on programming and enjoy photogrpahy when I have free time.
Writing. I love writing, I've published a couple of technical manuals and I'm currently submitting to various short story anthologies whilst working on another (Self published) manual. Writing leaves me happy and fulfilled and generally free of stress.
Trouble is, it does not pay the bills. I'm currently working very hard to pay off all my debt and once that's done I'll be taking up writing full time and leaving the tech industry behind.
Share what you've written! Hats off to you. Can't quite make that kind of leap myself, but trying to get a body of work made up for business and pleasure.
The two technical manuals are Puppet Reporting and Monitoring, and the DevOps automation cookbook. I had fun writing the puppet book, but the second was for various reasons not as fun to write. That being said, it was still more enjoyable than my day job!
Mechanical Engineering -- I work through a different mechanics textbook once a year, or so, for fun. I think I enjoy the theory of how the physical world works more than the practice, which keeps me where I am. :)
I sort of went the other direction. Went to school for mechanical engineering, near the end of it I realized that software development was kind of fun too. As much fun as it is to work with free body diagrams and simulate control systems in Matlab (SimuLink), the development and iteration cycle with physical product is a lot longer, and you end up spending months designing eg a ball bearing. On the other hand, with software, you can get a lot further a lot faster, and it becomes a constant cycle of near-instant gratification.
I love programming and am also part of a start-up developing a cutting-edge computer vision tech.
I have learnt a lot of concepts by learning programming that can be applied to many real world problems as well.
I desperately want to work in Renewable energy sector like Solar, Wind.
And the best part, my idol, Elon Musky Musk has applied the concepts that we programmers deal with in day-to-day life to producing machines that produce machines that are currently some of the best solutions to the problems like Global Warming, Energy storage & Electric cars manufacturing etc.
This part really gives me kicks. Even though, I think about leaving programming may be in 10 years(I'm currently 24), but the concepts I learnt are going to come in super-handy what ever Engineering things I'd like to do.
I'd like to do something that does not involve looking at screens all the time. As it is, I'm stuck with my one skill that's highly valued until I can finish paying off my loans.
Teaching. But the money difference is so ridiculous that I would have to go back in time and make every financial decision differently for the past ten years including having less children in order to afford it. Instead I have taken second jobs coaching at a gym, volunteered for hour of code and other programs at my local library and started teaching Sunday school at my church.
If you are willing to teach and relocate a few years there are international schools which pay 80k - $90k (Asia, Middle East, certain rich islands). Don't underestimate how demanding it is though. I've done both and coding is a breeze compared to teaching.
Anything involving pragmatic problem solving. Keep the mind occupied with varied tasks and satisfied by frequently delivering solutions. Skip the intricacies and subtleties of dealing with software.
There are so many people performing repetitive tasks who could benefit greatly from relatively small optimizations. I would be able to directly witness the impact of my work and make a difference on a personal level. It's hard to do this in software because the landscape changes so quickly.
It would also be super fun to practice apprentice-style learning in multiple fields and document/share everything.
A few years ago, I briefly considered going back to school, getting a degree in Exercise & Sports Science, and getting into athletic training. But in the end, I could never quite convince myself to do it, and the moment passed. I also flirted with the idea of becoming a private detective a couple of times in my life. I actually still find that idea somewhat interesting, but I doubt I'd ever make the money doing that, that I make in software. And here in NC the training requirements to become licensed are somewhat onerous, so I doubt I'll ever pursue it.
Private investigators with a good grasp of IT are very rare and white collar crimes, etc are rife. As for the training, much of it is common sense and not above the levels required to get a degree in any other field.
as for the training, much of it is common sense and not above the levels required to get a degree in any other field
Arguably true, but at my age, it's more effort than I'd be willing to put in at this point. Had I done it when I was younger, it might have been a good thing, but I think the time for that has passed.
Of course I could always move to a state that doesn't even require a license to be a PI. There are a couple of them out there.
Not sure about your location, but in Australia there are fairly accessible courses to help people get into personal training. I imagine that falls short of full, accredited athletic training.
However, could you not get some lower-level qualification and set yourself up doing training 1-2 sessions a week? Gives you something different on the side without needing to make a full income or quit what you already know.
Yes, that was / is an option. I actually did buy a bunch of books on the topic (beyond ones I already had in my collection for my own use), and bought a certification course training manual for a personal trainer certification. But I guess inertia turned out to be too powerful a factor to get around. I was making good money in tech, and I do actually enjoy it, and in the end the motivation to truly step away was never strong enough.
In moments of madness I've considered both locksmithing and plumbing. Both are jobs that cannot be outsourced, and which SEO can be useful for.
That said I'm a sysadmin rather than a programmer, and I have no immediate plans to change.
One thing I would not do is become a photographer; that's my hobby (well that and rock-climbing / gyming), and I've seen too many people be burned by trying to become professionals. I charge money to shoot old ladies, hookers, and pets. But having to make a living from it would change how I viewed the subject and not in a good way.
Indeed that's exactly why I'd not want to do it full-time!
I do it frequently enough to make me happy, and I'm lucky enough to get paid for it, in my small niches. But I've no interest in the rest of the stuff that I'd have to do if I needed to fund my life (rather just fund new camera-toys/lighting gear every month or two.)
I believe a lot of us here on HN would consider leaving programming for doing business. A lot (including myself) already did.
Programming being very often about solving business needs, sometime in your career, you might be in a position to realize that it could make sense to go higher up the chain and build a company.
IMHO, that will depend on the type of business, but getting basic understanding of sales (like, actual deal closing), marketing, and hiring are crucial no matter what.
Even if you plan to bring co-founders on board, understanding the basics of what they do goes a long way establishing trust.
Another thing, which is not a skill, is to understand that techcrunch is not a fair representation of the tech world (& neither is HN), and that building a business is not about making the frontpage, it is about bringing solutions to problems so painful that people are willing to pay you for it.
Every day. I’m a bit jealous of all my friends with professions that don’t require any of their free time. They can have all kinds of hobbies and spend their free time doing whatever they want.
Want to know really the only thing all of us have in common today? We're all alive. Think about it. Tomorrow for at least one or more of us, that may not be the case.
Despite many great comments from those in the profession or not, go with your gut instinct. When you get to the point where you are thinking of leaving what you do for something else, it doesn't matter whether or not other people got to the same point.
Trust your gut and go with it. Usually, it knows what's best for you.
I always wanted to make films. Probably specifically small documentaries about people and sub cultures. But I never really saw that as a profession or much of an option. And ultimately I never really put a tonne of effort into it. I had talked to a few people who I thought were interesting subjects, but they backed out and I realized I didn't have the skills to try and rope them in and get them to do it (in a nice way). Maybe it's just because I don't have very many friends in that field that would support me.
On top of that I think I'd like to own a cafe or roast coffee or something.
But ultimately I got into development work because I was so motivated that the time it took to build experience on my own came easy. And doing the work day in and day out comes _pretty_ easy as well.
Though of course sometimes your interest wanes a little. But I know that it's a lot more satisfying than any job I've ever had. And I haven't thought much about others that I hear about.
In addition to that I just honestly don't think I'd make as much money anywhere else. So as long as I'm into it and it's the best place to make money, I don't see why I wouldn't keep at it.
I just hope I can try to do my other interests in my off time, which over time has become a lot harder than it felt previously.
I love programming. Even if I still had to use Perl I still wouldn't give it up.
Admittedly that's because I like Perl, but I also freely admit I'm more productive with full-stack JavaScript.
That said, I wouldn't mind writing about programming, but I can't afford to stop my day job.
I'd love to write an ebook on JavaScript, a spiritual successor to Marijn Haverbeke's Eloquent JavaScript but using ES6/ES7.
Maybe also a book effectively about making your own JavaScript framework — beginning as a way to build a simple website or MVP without jumping on a framework bandwagon. The book would later develop into a cautionary tale, warning against reinventing existing frameworks like Angular or Ember. All culminating in a sober recommendation to choose vanilla JavaScript and direct DOM manipulation for simple websites and MVPs; later upgrading to React and Redux for a large-scale, client-side applications, esp. if a team is involved.
I'd also like to write an ebook about CSS and how to use it effectively — not as in "pure CSS solution to problem x which is actually in JavaScript's domain" rather "CSS doesn't work like that, it works like this, see?"
Maybe also a series of primers: CORS, React, ES6, CSS, 60fps animation/UI on the web, web accessibility...
I'm married. What spare time I do have is inevitably eroded by wanting to spend time with my partner. What remains is not easily used for writing a coherent book.
Google fails me now but there was a survey/study that showed most polymaths are ending up in CS or engineering.
All I can find via the google is a harvard business review article by the ifixit guy claiming its common knowledge/everyone knows the above and now boring suits can have this secret knowledge, which is not exactly rigorous proof.
Famously there was a clustering in the 70s where the Venn diagram of hobby photographers, ham radio guys, and home computer guys was ridiculous near perfect overlap. Obviously, the guy wire wrapping a Z80 board carried a Pentax Spotmatic whenever he went outside (that was the thread mount, not the K mount variant, my dad had a spotmatic I had a K1000) and spent the occasional weekend working DX on 20 meters probably CW. If you were wealthy enough to own a floppy drive in 1982 you had a minimum of 3 interchangeable lenses for your SLR and at least two ham radio antennas on your roof. If you had a compuserve account in '84 then you almost certainly were capable of developing your own black and white film. Also you probably either wanted to, or did, sail or pilot general aviation aircraft or both. That's just how it was back in the old days. It all intermixed too, my dad built a large box of SSI TTL logic to implement a timer for his darkroom enlarger, back then that would have been, I donno, a 20 hour project maybe.
I would theorize that whatever genetic "something" makes programmers able to problem solve also makes them polymaths. Or polymaths naturally drift into programming as an easy source of cash.
On the whole, I think a lot of us really do enjoy coding and it's hard to overestimate how freeing financial security is. It's that security that enables other hobbies, too.
I personally enjoy having at least some interests (mainly coffee and photography) that I can pursue without having to worry about costs. If I ever leave programming, I'd probably take one of those up, but I'm afraid the financial support requirements would diminish my enjoyment some. (Sometimes, I want to work on side projects but after programming for 40 hours a week, enough is enough...)
I am though considering opening a coffee cart -- but not to make money. Opening a coffee cart sounds fun precisely because I wouldn't need to worry about profitability and I could just focus on providing something tasty and meeting people.
Your coffee idea, I'm scared to admit, might be both a good business and fun project. Good coffee place across the street is next to my company. They have decent donuts. I go and spend $3.65 there, most of the working days. This is basically like getting $70/mo subscription service--the thing, the most of SaaS startups would kill for. And I now it's not wise monetarily, but I still go there.
I've thought about going back to school to get a Mechanical Engineering degree, or Chemical Engineering degree.
I grew up with my father being a machinist, and eventually going on to being a QA specialist for a large defense contractor, so I've be lucky enough to be able to learn a lot when it comes to machining and designing. Spitting out a 3D design from a printer is really cool, but nothing beats slapping a chunk of steel into a Bridgeport and ending up with a precisely-milled widget.
My wife is also an engineer at one of the largest (probably largest) physical testing companies in the world, and got her Chemical Engineering degree as well. There's constantly stuff she's telling me about, problems at work, custom things she's doing, and we get pretty deep into conversation sometimes about how to best solve the problems.
The money just isn't there compared to being a software engineer, but like a lot of people have said in this thread, maybe this is just a "grass is greener" thing: these problems that I can't work on just seem that more tantalizing than being the person who is actually dealing with a backlog of them. Vacationing in other people's jobs is fun and easy, and ignores actually being that employee.
I've had programming as a lifelong hobby, and in my teens I thought it'd be my profession. But then I realized I don't really care for what the industry is doing, figured I'd have a very hard time finding a software job I'd like.. so I went on to pick up a new skill. I became a machinist. In hindsight, I regret it, because most machining jobs are too simplistic and repetitive to satisfy my intellectual curiosity (simply doing the same thing over and over again fast and making few mistakes matters more) and the good ones are hard to get into. So now I'm looking to get into software, where even the average job will probably suck less for me.
Problem is it's hard to sell myself to an employer with no degree, no job experience, no portfolio of projects done using the fashionable tech that is in high demand (and which I have no personal interest in). At this point I'm at a crossroads, but the best way forward seems to be to start building my own business. Of course, there are plenty of unknown intersections ahead in going that route, and I have no prior experience from running a business, so where I end up is one big question mark.
I definitely have. I enjoy programming and I think I'm pretty good at my job, but I can't help but think that maybe there's something out there.
A lot of my most compelling business ideas I've ever come up with haven't been apps or anything I could start programming right away, but rather have been totally different brick and mortar retail businesses. Opening a retail business is something I've thought about doing for a while, but I looked into some of the details and was somewhat turned off by the extremely high startup costs. I simply wouldn't be able to afford it without some partners.
One of my largest interests nowadays isn't software, but rather cities and urban planning. The idea of designing city features that would have a real, dramatic impact on people's every day lives is really compelling to me. I've thought about taking a break from software and working in this area, but at this point I really don't know if going back to school for this stuff is worth it at all. It's unfortunate that I hadn't discovered I was so interested in this topic when I was in highschool or early university.
I feel the same pull towards cities and urban planning. I've been thinking about how best to combine programming, data analysis and urban planning, but apart from data visualization of city data, it's quite difficult without being actually involved with the local government.
I've thought about potentially starting a consultancy for cities, in which I could work with cities, by analyzing their data for insights and future projects.
> The idea of designing city features that would have a real, dramatic impact on people's every day lives is really compelling to me.
Maybe you might want to go into urban water management? It is done both at an academic level (environmental engineering), governance level (the city's sewer and water supply planning organizations) and private level (e.g. companies building special-purpose solutions for urban water management).
Although you said you want to get rid of programming, keep in mind that your programming capabilities get you miles there. Most stuff is still done in Excel, etc. but the field is getting more and more technical, and cities start to plan and simulate their sewer and water supply systems with sophisticated simulators (e.g. SWMM or Epanet), so your knowledge might be well received.
I am in a similar position as david927, working in a good environment, good colleagues, good pay.
I actually have a degree in molecular biology and have transitioned to computer science and an engineering degree, which I think was the right choice for me. I thoroughly enjoy being an engineer but lately I can't help but being drawn towards the arts - music in my case. I have been eye-balling a music academy that offers a state accredited professional guitar degree. According to their information material, their alums are quite sought after because of the hands-on approach, studio skills, etc. I looked at the requirements for admission and I am pretty sure I can get admitted with some preparation, having played on and off for quite a few years now.
The catch here is that music industry is actual shit to work in, as I have heard on multiple occasions. And I cannot afford making less than a certain amount of $$ because I have to/want to provide for my wife and two kids.
On the other hand I started having the (completely irrational) fear of being a complete failure if I don't become a professional guitarist.
I started off as a software engineer for 2 years but began to explore the business side of things. I moved into designing/building systems for business analysis (i.e. data warehousing, reporting, analytics, etc.), did strategy consulting for insurance and financial services as well as studied for my MBA. I'm now in charge of leading the analytics initiatives for our credit card business.
I'm still in touch with my programming side through my side projects but the experience I gained through my software development years have been extremely helpful both in dealing with business & technical audiences as well as in solving problems logically.
The main point is that the programming skills you've learned can be useful in another setting. Starting off as a programmer doesn't mean that you will have to do it for the rest of your life. You have many different choices and it's up to you to shape your career the way you want it.
I think about it often, but I assume it's some kind of burnout. None of my hobbies would translate into even my current pay level.
There's that nagging idea of the 'real programmer' who is getting paid big money to solve interesting problems. Almost certainly a myth but still a frustrating idea.
Depending on what you think big money is, and what problems you find interesting, I'd say that's probably not a myth.
If that's what you aspire to I suggest getting involved in solving interesting problems -- there are a lot of them in the open-source world too -- and once you have a reputation in the interesting-problem world you stand a pretty good chance of getting offers from the big-money people.
I had a lot of fun being a mover: just be at embauche at 7:00am, no BS required, no love of the job, being outside, seeing awesome landscapes ... being tired at the end of the day, with your job let behind and able to enjoy a simple life.
It was a simple life, but fun. And now season is over. So I look for a job in the IT.
It really changed my life.
I also learned doing bread, alcohol (wines and ciders), playing more music, and did some gardening, illegal picking of (common) plants in the wild ... brawling (movers are no angels) and winning. I grew a spine and a pair of balls.
Don't be scared, life out of programming is quite awesome.
In fact, life is amazing as long you don't feel like in a jail that sometimes is only in your head. I now live with my true colours ; I love to be dirty, mean and sweaty.
First time I quit programming, burned out, went working on a friend's farm. After some times, I felt much more valuable helping them with computers/website/payment processing problems. Didn't took long, I was back in programming.
Second time, I took some time to execute on a non profit to help our local community. Being good with data really help organizing event people really liked so I tried to spin that into a startup and failed. Like other commenters said, I was doing stuff I didn't really like.
I'm back to programming but I'm really glad I tried different things. Not everything was a failure, I eat fresh organic food from my friend's farm and I have an impact on my local community.
I enjoy programming, and I count myself lucky to have a good, well-paying job in an industry that is unlikely to run out of work for the likes of me.
However, I originally set out to become a visual artist. While I doubt I'd be able to pull that off as a career now, I would still much prefer to be doing something in that world rather than instructing machines for the Man. I often think about "transitioning" but so far I haven't found a path (you pretty much have to self-finance), and remain an "artist with a day career."
If anybody is seriously thinking about another profession, and is under 30, I strongly encourage you to give it a shot. It gets exponentially harder once you pass 40.
Writing, honestly. I get absorbed into stringing words into entire worlds, complete with flowery descriptions and characters of my choosing. I find that I can write anywhere, be it on laptop or paper, so it affords me more movement than programming.
It's not that I want something more creative than programming, I consider programming to be equal parts art and skill. I want something more flexible, not tied to a company that requires me to work in ways that I don't find productive (looking at you stand ups). However, for now I'll be following the money and writing on the side, although it does get draining to split most of my day's effort into two creative professions.
Yes. My goal is to reach $10 million net worth (so I am no longer dependant on income to survive - yes, I can live more cheaply, but my favorite cities happen to be the most expensive).
Then, I would retire from the industry and focus on doing computer generated art and sculpture.
That would let me stay in software, but let me be creative (I don't want 'creatives' to design thing, as if they were a different species - I'm creative myself!). No scrums (aka micromanagement), no testing, no bureaucratic processes or anything like that - I would just spend all my time creating.
I think about law school or an MBA at least once a week.
The opportunity cost is extremely high though. It's pretty hard leaving six figures of income in a low cost of living (and the grass is always greener I'm sure).
Did the MBA thing, didn't manage to land an MBA job so I'm back in tech, six figures poorer. It's not a slam dunk by any means, and yes the opportunity cost stings as much as the sticker price.
A lot of companies support their employees getting an MBA while they still work. It takes a little longer, and it pretty much devours your life while you do it, and you usually have to keep at least a B+ for the company to support you, but it's doable.
I know a guy who did this at UC Berkeley. Took him a while to get an "MBA-ish" job afterwards but it seems to have worked, and anyway he got as far as the MBA itself without quitting his job.
Me too. My kid is now 2 1/2. I'll stick to work until April. Then I'll quit and do something else. I also want to get more involved into business, so I'll enter business school. Saved me a good amount of money!
One thing that is important to me is that we have quite low costs of living. And I mean really low costs. No expensive car to maintain, no fancy hobbies. So this works... Don't know about your situation though but I learned that you can cut back tremendously if you must.
Only so much. Things like rent and medical insurance are impossible to avoid, and rent is highly dependent on your location, which is tied to your job. You could get cheaper rent by moving to rural Wyoming, but you're not going to find a tech job there. If you can work remotely, however, or you have your own work-at-home business, this does give you the freedom to seek out lower CoL locations. But medical insurance is still a big factor, esp. when you have a family.
I'd say that these days, housing is easily the #1 cost for most Americans, and in terms of the fraction of a person's income, it's really ballooned from 20 years ago.
I think about this a lot. I truly enjoy coding, it's definitely a fun activity. What I don't enjoy the most is the belief that your work experience is secondary. If you can't pass a coding interview, you don't have an active Github account, and you don't blog regularly, some companies won't take a second look at you, even if you have a proven record of success.
I personally admire what jwz did, turning his technically skills into something that supported a venue he really enjoys (DNAPizza and DNALounge).
Back home in India I used to work for one of the big IT services company in a support/maintenance project. Due to the bureaucracy, lack of innovation and the general self-righteous attitude at the company I used to think that all software development jobs are like that. I wanted to get out of the entire industry once my two year bonded term was over.
Once I left and ended up joining a small startup, I then realized that all programming jobs aren't like that and working on even enterprise software can be fun. Never looked back.
Yes! I'm graduating school in a month, and I've already considered this. I have a couple years of prior industry experience, though. I love the challenges, but I ultimately feel unfulfilled by writing code. It's something I can do happily for five, maybe ten years, but not for thirty-five.
So recently I've been planning to fund a creative life by saving like a college kid for a decade. The prospect's actually led to a heavy side interest into finance. There are tons of resources on early retirement and financial independence floating around, as well as other ways to create passive income. Based on my starting salary, I'll likely be able to supplement a new career within a decade.
As for what I would do, I'm looking into making music, writing books, and chemistry. Been keeping a journal of book ideas for a few months - challenged myself to write a new one every day - so that I can choose the best ones to practice writing once I get some downtime. I've been playing guitar for over ten years, and I love the production of music. It would likely be recreational, but I want the ability to produce professional quality songs. And chemistry is the moon I shoot for. It's what I've enjoyed learning most in school, so learning and understanding as much of it as I can will bring me great satisfaction.
I recently flipped off my code-as-hobby switch and went into writing myself. It was a gradual thing, but after a few months of dumping ideas I moved to writing prompts (like those in /r/writingprompts). I challenged myself to write one a week. then two. Now I find myself participating in NaNoWriMo, which appeared out of nowhere, and the writing comes almost naturally.
Best lesson I've take from it is to push through and finish something, starting with smaller bites (blurbs, then stories, then books :)
I'm on the same boat. Music is my main passion, IT is my second passion.
I simply had to start working with IT. My parents were unemployed at the time and things were rough. My first job offered good pay and allowed us to survive the storm.
After my parents got re-employed, I continued working and advanced my career. With the money I bought a car (my other passion), built a home studio, and now I'm rebuilding the whole house.
I guess I became too attached to having financial security and the nice things it brings.
But I don't plan on letting my main passion die, I still have a rehearsal scheduled today after work!
what did you try to make it happen? No offense, but I know a lot of talented musicians that don't bring it to anything because they only 'business'-like thing they do is to upload their stuff on youtube/soundcloud....
I came from the complete opposite direction. I actually learned programming in BASIC on an Apple II computer in a community education course at my local middle school back in 1980. Programming was a big part of my life for the next 5-10 years, until I fell into other career and education opportunities. It went something like this...
During this timeline of about 30 years I never stopped programming as a hobby. I HATED the politics of teaching (which I did for nearly 20 years) but it paid the bills. Ux...well, everywhere I designed, I felt expendable and, like education, it was highly political. For many decades I felt like there was a big hole in my life. I wasn't happy. Then...I decided "F it!" and dropped it all to pursue programming as a career. While it hasn't been bliss, I am much happier. I am not inclined to slave away as a hired gun. Programming has been a way to express my ideas in a way that I was never able before. At 47 years old I feel like I'm preparing for a trip to the base camp at Mt. Everest. I figure that by time I hit the summit I'll be ready to retire, but I WILL retire on such a high note. Maybe I'll die on the summit :)
If I could make a much money as I do now, I still don't think I'd choose something else. If I did it would probably be, in order:
- Robotics (more on the hardware side)
- Woodworking
- Custom motorcycle/classic car building and restoration
The common theme for me is the creative problem solving, building things in general, and attention to detail/craftsmanship specifically that maintain my attention. As it is those are all hobbies of mine, so I still get to dabble while making a good living doing another thing I really love.
Like some dozen others here, if it weren't for the money.. sure, I'd run a bike shop, with a frame building shop in the back room.
As careers go though, what we do is interesting, ever changing, and an exercise in learning almost every day. Oh, and the pay kicks ass. So, yeah, I've thought it. Lots of us think it all the time, but really, we've got a great job, so while the grass may be greener over there, it's pretty green here too.
I agree. The grass is pretty damn green here. I think programming has taught us to think and solve problems. I cant wait to see a world where programmers apply their problem solving skills in other domains and make great leaps.
I did not stop programming but I got a dramatically different job of what I had before. You didn't say why you're curious for that question, that might be like me simply for the need to change.
Even with a gratifying job full of technical challenges, I feared I was becoming a 9to5 zombie. So, I got a new job a few weeks ago. I joined a non profit offering free WiFi in the city as the one man army tech guy. Instead of just software/web/mobile development, I also have kind of managerial type of responsibility and more public relation to do. It's something like a safe steady job with nearly startup mindset.
There's still a bit of programming involved, but it's so different from what I know that it's a real professional challenge. And for that I had to accept a big salary downgrade.
It really depends on what's your motivation. Is it salary, challenges that go in pair with your personal growth or simply working in a different context / mindset?
That may be the tasks you do that aren't fulfilling? For some people, manual work is really gratifying. Last week I was setting new cables in a patch panel; there's nothing challenging about it but it's simple and you can be proud of a cleanly done job.
Not really, but it could easily be the case that most programming jobs suck. That is, it was clear to me from a young age that programming was my favorite thing to do, but the mundane, backward, pointless, political, and/or stupid nature of most jobs can make things unbearable.
My solution was to eventually either become a consultant/freelancer, or create my own startup. When I then realized that a tech lead (Staff Software Engineer) spends about as much time doing manager-related tasks as they do developing software, and that a Senior Staff Software Engineer or Principal Engineer is essentially a manager (almost no coding), I knew my days dealing with corporate world BS were numbered.
My plan didn't really fall into place, as I became a Targeted Individual (likely at the hand of one of the idiots managers I had to deal with) 2-3 years after graduating from college. That BS left me sitting in this room for the last 5-6 years being harassed all day long.
After a few years of the torture, I was pretty much done working, as I was now unemployed for too long a period of time, my intelligence and reasoning ability were waning away, and the harassing/intrusive thoughts were still present and were still getting in the way.
Would you mind explaining what you mean by targeted individual? Did you do something to attract someones attention in a really negative way? How did this come about through programming?
Most end up saying I have some sort mental illness (Paranoid Schizophrenia, usually) and am imagining everything.
I'm not sure what was the cause of me being in this situation, but I had to deal with enough idiots and idiot managers along the way that I'm not entirely surprised.
Based on information available online, it seems TIs are usually whistleblowers, activists, minorities, LGBT, women, and/or people with good morals. They are also usually smart. That is, it seems to be something done to people out of jealousy/envy, or because they seemed like a threat.
At the end of the day I'm not sure what started it all, but I strongly suspect it was the idiot manager I had while at my first job out of school (the place was rated one of the 50 worst companies to work for by Glassdoor).
The puzzling thing was that the workplace harassment portion continued at the next job. I don't know how anyone would be dumb enough to keep it going like that.
I prefer not to call myself a programmer, although it's a decent way of describing what I do.
I create [value] and solve problems. I used to this by fixing hard datacenter problems as an IT/Ops person, and now I do it as a Full Stack Web Developer. The creating things / solving problems mindset is what is really important to me. Programming is just one interesting "medium" to do this in.
I could see myself creating things and solving problems in other profession. One that I thought heavily about is medicine, law, and writing. I think there are many possible places you can do this in life - it's just a matter of picking a medium you enjoy.
If you need to work on something else, then you can always pick it up as a side project or hobby. I used to find philosophy fascinating. I spent probably a decade of my life reading it as a hobby. Part of me wanted to go back to school or somehow figure out a way to learn it/do it professionally...but I honestly got what I needed out of the hobby. Now I've moved onto other things.
ANYWAY.
If programming made me miserable, I'd consider getting a second degree in psychology and perhaps doing a ph.d eventually. Or maybe go into management. Or maybe go into medicine. Go with the flow or something.
Yes and did to some degree when I left a captive software dev position and started my own business. Still involves lots of programming but mixed with a ton of other things.
I sometimes day dream though about doing something outside of software such as landscaping or remodeling houses. Something I can do away from the screen & keyboard. Something that still involves creating and being able to see the end results of your creation.
I started as programmer in school, but decided you don't need to study it. It's easier to learn it by your own. Then I became architect, but mostly automated my problems and solutions. After architecture became tiring, without enough pay, I went to more engineering jobs.
Survey, civil engineering, city planning and finally stage design and film.
This was all fun and got well paid, but I ended up as director of SW development soon after. After this was not fun anymore I went into hard core engineering, Formula 1 HW/SW simulation and support, but in the end I did more SW development than HW support. HW is always tricky and unreliable. SW is much more logical and reliable, much easier to analyze. And you are not that dependent on others. In SW it's easy to solve everything by yourself on 10x less time than waiting a year for someone else to approve something or until this piece is replaced.
So I went to full time SW work again, even if I still do work a lot on movies also. This is just for fun, helping out, going to festivals and such.
I went into college for computer engineering but immediately double-majored in journalism (my first love in school) and didn't even bother looking for an engineering job after graduation (though I did fail a Microsoft interview).
Today I do both but I'm extremely thankful I stuck with programming. Not just as a useful job skill but as a different, powerful way to see the world.
My dream is writing for a living, and I'm currently writing the first draft of a novel. I'm about 1/5 of the way there, began a couple of weeks ago. I've tried a few other times, but couldn't get past the first few chapters. I'm now at 18k words and going strong, I hope this will be the one.
Be aware, jwz.org used to (accidentally verified a month ago) have a rather NSFW image that it would redirect you to if you were linked to the site from HN. Copy/paste that link, don't click on it.
Another example: Paul Lutus (of Apple Writer fame and @lutusp on HN), gave it up for solo circumnavigation of the world in a small boat and photographing bears, among other things[0].
The thought flashes by every now and then. I haven't been doing this for very long (~2 years professionally) but I've already started to see little glimpses of burnout on the horizon and plan on working in a proper break from work at some point.
I can't say for definite what I'd do. Music's always been a side passion and I'm attracted to the idea of getting back into music production. I studied it briefly back in college (UK, so I guess high school?) but I don't think my heart was really in anything back then so I let it slip through my fingers. For some reason I also sometimes get these day dreams of working in a market food stand. I can't see how i'd enjoy it considering how disdainful I was of my youth working in retail, but cooking is another little passion of mine so maybe i'd dig it, even if it felt a bit like an step down.
Yes and I still do. Nowadays I mainly just want to do research in Math/Theoretical Computer Science, but before I also considered becoming a chef or piano teacher.
I should have realized it back then but I enjoyed CS in college much more than software engineering in industry and I miss the difficulty and rigor of the problems.
No. I have been programming professionally for the last 30 years and I still enjoy it. I did get a bit fed of working for other people though. So I set up as an independent, selling my own software products (http://www.perfecttableplan.com and http://www.hyperplan.com) 11 years ago and never looked back. It was financially hard for the first 12 months, but now it pays better than I ever did in a permanent job. I probably spend about half my time programming now and the rest doing marketing and support. I don't have any meetings and no management BS. The biggest downside is having to take a laptop on holiday. But that seems a small price to pay for the freedom and lifestyle.
I did [0], but after that I reassessed, relaxed, decided not to push so hard... and raised my rates.
It's a job, and like any job it sucks (hugely) at times. It also provides money to keep my family, and I get to work on interesting, brain-teasing problems (sometimes! Damn web development).
Frankly, I'm not good at thinking what I'd do until I'm doing it. If I did something else it'd be one of:
Research scientist
University lecturer
R&D
Psychologist
Photographer
I already had the option of a career as a photographer (back before the market tanked, which I saw coming) and classical musician. I'm (mostly) glad I chose neither.
I've considered it a couple of times.
Being a chef or someone researching climate change are the two things that I've considered. I have no background in either (I can cook up a decent meal but nothing impressive) and the thought of having to start from scratch bothers me a lot.
> someone researching climate change are the two things that I've considered. I have no background in either
Don't worry. In case of so-called 'climate science' the most important is whether your results are 'in line with', your background and the way you obtained these results are secondary.
I almost did. I earned my black belt in karate and was teaching a few classes per week. I had frequent conversations with my sensei about working full time for him or starting a dojo of my own. We had a location picked out and everything.
Martial arts can be incredibly fulfilling. I got to help people improve their physical and mental fitness, gain confidence, overcome anxieties and fears. There were constant opportunities for fun, new friendships, and doing good in the community. Plus it was really cool knowing I could do some of those Bruce Lee / Chuck Norris moves I'd see in the movies.
At the time, I was the sole income for our family (wife & 3 kids). The income possibilities were just not there. We could not have made it work financially. Now, I'm an old out of shape desk jockey.
If I had the money I'd stop being a coder, but still use a computer for music composition and production.
I'd play the piano and also write about social/political/historical things. I had this luxury once a while ago, and am now working hard again to get back there!
I took a year off in my 20's for spiritual pursuits and volunteer work. Best thing I ever did, it wasn't well planned and on a shoestring. If I could do over I would have done the finances differently. I cam back to software, but with a much different outlook and world view.
After master and 3 years experience I was a trader in a prop firm for one year. And this was...
Best experience in my life, I have learned a lot about myself and that world outside pure IT can be even more astonishing and challenging. Psychological leap I would say, advancing to new level. Despite my friends who couldn't understand with I sacrificed my top salary (yeah, I had it best among my programming friends).
Though I failed (yeah, can admit that proudly, because I tried) and I am back in my profession, with even higher salary then before 1-year challenge I got much better perspective now. I try to widen my horizons more often and in different ways. Oh, and after few months break aiming to jump back into trading on my own account... Real fighters never surrender, right?
my thoughts of other work are often fanciful, I keep thinking cancer cures are taking too long and I'm sure my debugging experience would sort that field out. Nuclear Fusion power reactors are taking far too long to sort out, and I'd kind of like to get stuck into that problem.
Then I sometimes wish I was a full time philosopher.
Other times when I've moved between countries and thought I'd take a break from programming to refresh myself.... I end up thinking about ideas around coding and end up coding anyways. So I think I'm a lifer. Not quite sure what role I'll take if there is a zombie apocalypse though, however I have played through a lot of computer simulations of such events and I seem to be a kick ass warrior
I love programming, though I have thought that if it didn't exist--I would probably go into archaeology.
I have always enjoyed discovering things in subtleties, and learning the reasons behind strange things with research. There are still plenty of things that we have yet to figure out.
However, regardless of whether I did archaeology or programming, I'm sure I would get burnt out every once in a while. That just happens, and it isn't necessarily a bad thing. (Even if it is annoying...)
It helps me to remember that this sort of thing passes as my inspiration swings back and forth, and that I don't actually dislike my profession. And until I am back into it, I just do things to force myself to be productive.
In general, when those thoughts crossed my mind it was when I was working a job I should have left already. There are good companies that value developers and/or give them a reasonably good balanced work environment. Generally the two go hand in hand. For places that don't, frustrations and poor practices tend to push us into less fulfilling lifestyles.
But if pressed... Corporate pilot comes to mind. I've spend I don't know how much money on training and aircraft rental. Most piloting jobs for corporate clients have you working only 2 weeks out of the month. That is, you only fly about ~250hr a year. The rest of the time can be spent hacking or doing whatever else you'd like to do.
I met a pilot recently with one of the best jobs I've ever heard of. His job is to deliver private jets, and once there, train their would-be pilots. So not only does he get to travel around the world, but also stay in these places for up to a month or more while training. And since there are pretty strict laws about how many hours he can fly in a given period, he has plenty of downtime to enjoy the places he's at.
oh wow! I have been on a Boeing 737 simulator once and it was a unforgettable experience. Hoping to earn enough money to fly real aircraft atleast once. Life experiences is what matters.
I bought a small commercial fishing boat and occasionally do that on the side. I make no money but love every minute of it. I'm working on getting my charter license so I can take folks out fishing and hope to do that p/t when I retire in 20 years.
It's a job that solves a lot of the problems people complain about in programming, like spending all day staring at the screen or not interacting with people or doing things that might be pointless.
The downside of course is that you eat what you kill.
I'm interested in sales, particularly enterprise software sales. As a software engineer, I find it alluring: generally a higher income potential than programming combined with the social aspect.
Like the the other commenter, I'd be interested in hearing from those who work in sales.
As I understand it -- and I could be way off here -- the path from Software Engineer to Sales in the corporate world goes through Sales Engineering.
So if you really want to get into that, I would recommend finding some sales engineers in your company or another friendly company and ask them for advice.
Another closely related thing AFAIK is "Solution Architect" jobs -- in abundance at places like IBM and SAP. There you'd normally be in contact with the folks in Sales as they would want to make sure you're doing the required nerdy stuff to keep the customer happy and open-checkbooked.
I have a software development background and am very interested in software sales, but it's been surprisingly hard to make the transition. I can't make it past a resume screen at most places. And coming from a development background, not a lot of my connections are in sales. I reached out to the ones that are and they said they'd keep me in mind.
A recruiter friend reached out and I'm considering working sales for his staffing agency.
I'd love to hear from people that made the dev -> sales switch!
I love programming, I feel I can express my self threw code. However, I wish my wife and others could appreciate what I do like I do. If I could do it again, I think I'd like to be a carpenter or something that can be appreciated in the physical world.
Work to live not live to work. You're at least the 4th programmer/woodworker on HN I know of. One thing I enjoy about programming is the pay and free time and lack of physical exhaustion such that my fine woodworking tools are proportionately cheap compared to most woodworkers.
I've been doing this awhile and my first dovetail joint was pretty cool... but the hundredth is just sweaty labor, eh. My first whatever is always fun, but the dozenth or hundredth gets pretty boring.
Be careful with the table saw. I'm not a big fan of binary comparisons but there's only two sets of people, those who are terrified of table saws and treat every use as some kind of lion tamer trick and those who have missing fingers.
Enjoying doing something as an hobby is completely different than enjoying it as a career.
What people like is the 'creative part' associated with a skill. When you do something as a career, most of your time will be used dealing with the 'boring part'.
I absolutely want to be done with coding by the age of 40. Coding is a young man's game. It'll always be a passion and hobby of mine, but it wouldn't fulfill me to still be primarily writing code for someone else's company.
I was an athlete in a former life that allowed himself to get woefully out of shape. I went on a health kick a couple of years ago, got into better shape than I was in college. Now I do personal training on the side, just finished my first triathlon, and am now training to compete in American Ninja Warrior. I really wish American Gladiators was still around though as I would've much rather preferred that.
Not really. I use programming as a tool not as an end goal. I enjoy programming because it gives me the ability to do things I otherwise could not. I also like the deep technical side of it but there isn't much to do there for me.
For 10 years programming has been my thing, but for a while now I have been getting the feeling that programming won't be big in 30 years. If all my eggs are in the programming basket and I can't keep a programming job in the future, I would be out of luck. (presumably because it's a blue collar profession by that point).
With that fear in mind, becoming a M.D. actually seems like it would be a good decision. Even this late in the process, doctors have been well paid and relatively rare for thousands of years; a tried and true profession. Plus it will sate my curiosity about the function of the human body.
I am curious as to why you don't think programming will be big in 30 years? One of my partners (we studied Biomedical Engineering together in undergrad) completed medical school, and then he decided it wasn't for him, and that he wanted to go back to technical work and in particular programming. A big part of his reasoning behind the transition was that he felt a large fraction of what doctors do is very repetitive and could be replaced by computers. I suspect he could give much more detailed reasoning than I can, but I can say that he felt strongly enough about this that he ate many many thousands of dollars of debt to go into programming instead of medicine.
Anyway, I certainly don't mean to discourage your pursuit of becoming an MD--I am just very curious to know your reasoning.
It will be big, but there will be so many other programmers that our worth will go down. It seems that our Silicon Valley salaries are extremely high compared to other professions, and only recently went up (what was a 90s programmer paid?). It seems like a flash in the pan, but on the order of decades.
If kids of age 8-9 get to learn Python and write simple programs, by the age 20 they'll be building real products that will cover 10--20yo category, and the hard stuff will be like ... really hard. Research hard.
I can't imagine myself wanting to leave. We are defining the worlde for everyone else. The amount of power over the course of human affairs is staggering when you think about it. A fullstack can be toiling away on some CSS layout problem today and come up with a better design of some widget or other which leads to a breakthrough in UI/UX approach. Several months later nobody is using webpages in the same way. A novice can innovate things that an old hand would not think of and turn the whole world on it's side. The reach and breadth of computing makes it too exciting to forgo.
I'm in the process of going back to studying. My employer knows this, as well as most my friends and peers. I plan to spend the next two scholar years (starting in 2017) to take a master in cognitive science. I have worked for 3 years in web development since graduating and have enough money stashed to make the transition.
I'll likely write a lot less code, and more maths and english.
My primary motivation is that I believe that breakthroughs in AI and cognitive science at the computational Marr's level are going to have a huge impact, and I want to be a part of it.
Not true. Geoffrey Hinton is only interested in cognitive science (he said in a speech I heard that he thinks it's delightful that there are practical applications that lead Google to pay for his research, but he doesn't care at all about them, only about understanding the brain), and Rich Sutton started there and continues to actively follow and think about cognition.
I guess my point is that to some of the top researchers, the current developments are a means to an end, and the end is understanding cognition.
Totally agreed that if you're into the deep learning/CNN development, especially the practical side, the connection to brains is only through the "neural" analogy.
Tried retiring. Opened a brewery (beer & cider) and going to run a bar/restaurant; brewery runs well but I just like programming too much. Combining them works well and keeps me fit.
I'm an electrical engineer via a nontraditional path. Like software dev, it still involves large swaths of time spent staring at screens while inside a box.
I've been mulling over the possibility of some kind of work that would be more conducive to my long term sanity. My imagination has me developing and deploying instrumentation for environmental science. 1/3rd screen time 1/3rd workshop, 1/3rd fielding instruments.
I'll figure something out. Probably when 12 hours of daily screentime becomes unbearable.
Sounds a bit like my story, although I suspect I'm a bit older. I wanted to bail for several years and then one of the recessions led to my department being downsized. Took the opportunity to move abroad. Missed some of the tech work but having a hardware background made it hard to do much where I live. Then with the rise of MOOCs I was able to pick up software skills and do some projects. And now with so much cheap hardware and components coming out of China with free shipping to my location I can do all manner of hardware + software projects. Currently into creating robotics projects for young kids.
That sounds like a smart plan your imagination has. In the coming global climate catastrophe there will be a whole lot of instrumenation needed, and I bet you could build an awesome lifestyle/niche business on it.
Yep. I was working in a startup (which eventually went public) for close to 6 years. Life became monotonous there and I really felt burnt out. I finally decided to quit and wanted to do anything but programming. 2 week later, I started missing programming again but this time I decided to freelance. I'm getting paid decently while I can do a lot in my free time. I've started reading books and working on small side-projects which I wasn't able to while working full-time
Not all people like programming. Some people do it only for the money. I internally call them "paycheck zombies", and I try to just stay away from them since they're a bit draining at times, and rarely lead to learning something new.
Some other people are more career oriented and seek professional growth. There are various lines of professional growth, in each stage of the SDLC. Even if someone is new to the industry, a good attitude will eventually lead to growth.
I've only been programming professionally for a year but can't see myself wanting to get out of it anytime soon, maybe ask me in 10 years to see if that view changes. But at the moment am thoroughly enjoying learning as much as I can - coming from a job I didn't enjoy as a full time baker to having my weekends back, normal social hours and just having more spring in my step by doing something I have a genuine passion for is a great feeling.
I became a programmer to avoid being pigeon holed professionally. Programming has strengthened my critical thinking ability for other creative endeavors, and I could leave for actual engineering (e.g. electrical), applied mathematics, music, art, design, entrepreneurship.. basically I chose programming to leave the door open for any of these activities. I feel that this isn't a flexibility as easily afforded to say, physicians or lawyers.
Yep, going to be a police officer. But I would get a lot less money and very bad work schedule / vacation policies. So I stay with developing awesome software.
One day....when I have enough to live comfortably, I want to get into gaming (Youtube and Twitch or whatever is the main medium for games then).
I LOVE gaming (and transferring my skills learnt from programming & the startup world to the gaming/streaming world).
Apart from that...I've wanted to try and be an investor/trader but I don't know if it's really something I'd get into given the commitment & resources they require.
I did this just recently. Before I went to a middle east country for an SEO job, I am a PHP dev for 7 yrs and my last work made me realize that I'm not growing or something and this new environment would make me do this change. Unfortunately, after working for only a few months, I was sent home due to health reasons and dev jobs are hunting me again which I think because of my qualifications in the past.
I pretty much enjoy programming most of the time. But there are times when I feel, only if I could take a small break and do something else without worrying about money.
I would like to
- Work at a General Store
- Be involved in a full movie / tv series making process ( Because movies have always had a deep impact on me, and I would love to contribute my ideas in that domain )
- Invent new food recipes
- Research on Ancient History
Not really. For me programming isn't something I do for money, but something I like to do, which just happens to make good money. I do semi-boring stuff for money, but do fun stuff (game development) at home. I don't see myself burning out any time soon and looking for something else. Also programming fits my personality type, allowing me to avoid too much contact with people :)
I'd love to change to working in 3D, preferably with Rhino (which I have a license for). But, that's not what a career is made of and lacking any practical experience pretty much means I'm stuck.
I'm not opposed to starting over at the bottom, as long as the work is engaging. Unfortunately, there's not much call for people with only minimal experience in Rhino3D, that I've found.
Law has always interested me. Unfortunately the cover charge is such that I would only be willing to give it a go in the event of an equity lottery win or something similar.
Another thing I've been toying with is prop trading. It's not entirely separate from programming, but the industry is pretty isolated in terms of expertise so it might be considered separate.
Quite often! But it pays well and my co-workers aren't terrible. Most efficient way to have job security and make a good bit of $.
Id always be inventing -something- though, recently I got into designing and building high voltage distortion prone vacuum tube hybrid solid-state instrument signal drivers: aka guitar amplifiers :) analog electronics is a lost art!
I fell in love with programming, when I was about 13, and I love it now (29). Commercial programming (e.g. what I'm paid for) is rarely fun for me, but not bad either. And I have a lot of fun doing programming as my hobby, some experiments, etc, when I'm not constrained with anything. I don't think I would ever change my profession.
Oh lord yes, I've left it behind only to take the next job offered to me and becoming a Business Analyst. Not enjoying it so far.
I'm putting more focus at the moment on exploring issues of Mental health in the IT industry as it's something I've dealt with and continue to deal with.
That seems to give me a degree of fulfilment. Doesn't pay the bills though.
I recently started playing a game that I haven't played in a long time. I miss the feeling of being engaged like this. Programming just doesn't do it for me.
I want to love what I'm doing, but unfortunately there's few things that tickle my brain like this. What should I do, take ADHD meds and go to work, like everyone else?
Yeah I wonder what our dev skills be worth when we are 60. And still need some years do get to a pension. And meanwhile you have 21 year olds without a mortgage, kids or wife... with all the time in the world to work and learn new things.
Take for example current js webdev, with a new hot tech every week.
I thought I was leaving programming when I went back to school to do a Masters and then a PhD in environmental economics. I'm now a lecturer (assistant professor) ... but programming is so useful in academia, and such a rare skill, that I hardly do any less now than I did before. And I'm OK with that. :)
i did actually leave programming (almost 10 years ago) for a job as a people manager (of programmers/test). it's a lot more fun to write code as opposed to dealing with all the nuances of personalities, politics, processes, etc. i do have a few side projects which have allowed me to stay as a pretty effective coder, but at the end of the day, i'm also doing a lot of non-development things on my side project like go to market definition, managing people, project management, and slideware.
there are definitely very tedious things that programmers have to deal with like unmarshalling and marshalling data across backend to frontend components or test automation (think of having a multi-tier system with ios app, database, email service for forgotten password and having to automate all of that). but at the end of the day, the thing i like most about programming is the ability to see the things i create doing something useful. seeing the end result that's of high quality gives me a sense of pride. i'm definitely a maker, it's what i was born to do. but at the end of the day it's about risk/reward and opportunity cost, at this point there's just too much to give up, and the side project isnt panning out yet.
on a slight tangent, i have an electrical/computer engineering background and was supposed to go into hardware like most of my classmates, but i ended up liking the fact that i had something tangible after hours of programming, even though it was virtual, and with hardware i'd have nothing to show for it, but a pic controller lighting up some led's, a breadboard with a bunch of mixed logic implementing some simple thing, or some vhdl state machine that effectively did something simple. no offense to all the engineers working on this type of thing, but it just wasnt as exciting to me.
i find that there's some balance to it all, like getting paid well, but also having hobbies on the side that you can soak yourself into. but then again, i've heard many a story about people doing what they love and for lots of money.
My original plan out of school was to become a Japanese translator and I still enjoy Japanese-language stuff. But honestly I couldn't deal with the vicissitudes of being a freelance translator while at the same time never making much money. I enjoy this too and it's much more stable.
I would try doing anything that doesn't involve sitting in an office. Fixing bikes and cars, I would love to have a garage and do things with my hands, there's something incredibly satisfying about getting an old car to work, comparable excitement with getting your program to work.
fwiw, I graduated with a degree in painting. Got into an ecommerce shop. Figured out how to automate my position. And felt a big draw to programming. Went back to school via a bootcamp and have been a "developer" for the last two years. Mostly CRUD but recently ML and the tools to shuffle data around to input into the ML. I have been in a slump lately, decided to pick up doing part time bicycle messenger/delivery work on the weekends and for an hour or two after a few times a week. There is something satisfying peddling items around the city for people. Tangible and visceral with immediate feedback. I've found it helpful, it has rebalanced my priorities in a sense. Being out in the world, as opposed to continuosly being in an abstract space all the time.
Then I got certified in Autocad, got a qualification in Manufacturing Engineering at part-time school, used that to start a degree in Supply Chain Management in the UK. I'm now on an internship in Miami and I already did a semester on exchange in Finland.
I've been working for almost 2 decades and have recently rearranged life to study part-time. A combination of luck and good timing let it happen. It's done wonderful things for me in all aspects of my life, professionally and personally, and is opening new doors.
The thought has crossed my mind, but only in the line of "What would I do?" to which I have no answer.
I also love programming (since maybe 12/13 year old me read HTML books and Flash actionscript to make games) and I don't really want to do anything else anyway.
I got my undergrad in CS and am now pursuing pure math in grad school. Not exactly what you asked, but the time i did spend in the industry was enough to make me want to do something other than programming for money.
I often fantasize about leaving programming for ... programming. It's amazing the sheer number of things that aren't programming a job in programming might entail (depending on where you end up).
I left programming to get into application security, and I love it. There is still some programming and a lot of reading code, but it's a million times more enjoyable than writing endless REST APIs for me.
If it didn't require such a huge time commitment I'd consider becoming a PA or MD, but once you already have a family and bills it's practically impossible to get through the required schooling.
I have been a professional dev for 12 years but have often considered other paths. Just a few: Placer gold miner (yep, like the TV shows), Brazilian Jiu Jitsu instructor, metal sculptor, mechanical engineer
I have always wanted to become a full time wookworker. The problem has mostly been the fact that programming pays much better, especially if I were to start as an apprentice.
Everyday I think about leaving my job, but then I figure out that the problem isn't being a programmer, but working for customers that have no idea of what they want.
Just to follow up. How did your day to day work change after PhD? I am sure you would have gotten a chance to work on more interesting things. What are they?
That's what I'll be doing in two weeks.. I started my working career as a teacher, but didn't like it that much as I was teaching smaller kids learning MS Word, Excel and similar tools. Eventually I worked as researcher, finished a PhD and start working as web developer.
But doing crud apps all day got boring pretty fast, and I think my current expertise on web and mobile development will be great for my classes as I'll be teaching older students (MAster's degree). Since I have some freedom on the way I get to teach those students, I'm really looking forward to be really practical (teach them over the command line, etc.), instead of being highly theoretical.
That is exactly what we need in the Education sector I guess. teachers with experience in working on real world products. I completely agree CS overall is very practical field and too much theory should be avoided
It might be fun and interesting. But for most persons it has not a good salary and really bad working hours. So it depends on what you are looking for.
Same here. There is room for creativity in programming, but it's very constrained and there are always a lot of hurdles you have to jump over before you can express your creativity. With music, you have a lot more freedom and can dive right into it.
I'm 25, I finished my bachelor of laws last year (started in 2010) and I'm doing my master of laws atm (it's a 5 year programme where I live, bachelor is 3 years, master is 2). I've always wanted to do something in IT and lately Infosec has really started interesting me.
Last year I took up some programming classes (java) and I actually liked it, however I kept convincing myself that despite that, I was going to finish law school. Mainly to keep my job prospects open, maybe even get a management position in an IT firm faster that way. But honestly, aside from the pragmatic things that law teaches you, it sucks. It really does. Everyone I know either aspires to pick up notary or fiscal law, just so they could satisfy their own prospects of a well paid, highly regarded profession. It's a fairly depressing field to study and to work in.
I did a summer internship during summer vacation this year at a fairly prestigious firm. I hated that job, it consisted of looking up the latest jurisprudence about i.e. 'higher power', it made me read law books that were too boring to even want to comprehenend. I read an M&A template contract, which was interesting, but I couldn't imagine doing that for the rest of my life. All the lawyers there aged 27 and up were anything but living the dream. They worked their ass off from 8am to 10pm to bill enough hours per month just so they could keep their respective partners happy. The partners were well dressed, hardworking and very prestigious people. They were nice to be honest, they weren't assholes like you would expect. They actually made me, and the lawyers that worked there, aspire to become one of them. But then you hear the dark side of things. One of the partners had 2 kids she hardly saw, she actually had a babysitter/cleaning maid who took care of them all the time. Another one was divorced and spent his time harassing every hot secretary he met. Actually many of the male part ners thrived on exploiting their prestige to flirt with the fairer sex. Which I can't help but feel a bit jealous of, having such prestige must be awesome.
Except that's all it is really, prestige. It's the main reason people study law, to my knowledge.
As I'm writing this, I'm contemplating quitting my master's and enlisting in a bachelor of IT focused on cybersecurity. I'm aware that it won't give me the same prestige, or the nice suits (I really like suits), but maybe I'll stop feeling miserable.
Just wanted to give you guys a view from another perspective, law school and law in general aren't all they're cracked up to be. They're miserable places to study and work. Just google the words law and depression in the same sentence.
I think automation will replace the need for SEs. Sites like weebly, jeenka, snapmobl eliminate the need for a programmer if you want to build your own website. If I were a programmer, I would start thinking about exit paths within the next 10 years
FYI people have been saying this since the 50's. Symbolic assemblers were supposed to make 'programming' obsolete; there's a relavant quote by Richard Hamming I can't be arsed to look up.
I wasn't a full time programmer til 2010, been programming since I was a kid in the 80's, didn't think I was good enough at programming to do it for a living (confidence issues) so I spent 8 years working for Staples and gradually mostly by accidents of the "I can build that for you" sort built up a customer base, one of those customers offered me a full time job as a programmer on double the salary I was on and I jumped and never looked back, these days I run my own business doing contract work for SME's and while it has its moments I generally love it, mostly the freedom of starting and stopping when I want.
I'm 34, only got into programming this year after completing a boot camp. Got my first full time job in July. I always wanted to be a programmer but also had confidence issues. When I changed my mindset from over thinking to not giving a fuck and going for it, my whole life changed for the better.
My career has mostly been spent building and growing business around people who are programmers, and while I'm relatively technical, I'm not a proficient software developer. In part because of dyscalculia. I went to art school.
Programming is a creative art, and when I say that to my non-programmer friends, they laugh it off, but if you think about it, it is true.
Just like artists, the programmers, coders, developers all design and create new things that didn't exist before, and no 2 programs or applications or completely functioning code will be identical for anything other than a fizzbuzz type test.
So it is natural for the creatives to experience burnout and falsely interpret that as having lost interest in our craft / art. I went through this too at a fairly young stage in my career as I had accomplished a lot in 5 short years. I had the pedigree and training -- internship at Magnum Photos in New York -- so I tried being a War photographer like my Grandpa and traveled to Iraq in 2008. 1 week in there and I came running back. It was a fairly freaky experience.
You think you are there to document something big and consequential to the world and initially it is exhilarating leaving the cube and CRUD applications, but all it is for most part is an online newspaper or blog paying you a few $ per shot. Totally not work the risk. Plus the Radical Islamic Jihadis (ISIS) crossed a new line and started kidnapping and beheading journalists.
I also realized I didn't truly have the stomach for it. Imagine actually being on the scene at 1 of these photographs, and having the courage to shoot, only to find out the media (AP, Reuters) won't publish it. => http://www.theatlantic.com/international/archive/2014/08/the...
( When Kenneth Jarecke photographed an Iraqi man burned alive, he thought it would change the way Americans saw the Gulf War. But the media wouldn’t run the picture.)
Like someone else has stated here, we have it really cushy indeed. So don't get used to it and "itch" for something else. Just work on your side-projects, or learn a new language, or simply stop by to smell the roses and live a little.
Your passion will soon come gushing back and you'll start to wonder why you ever thought of leaving this creative, immensely satisfying craft in the 1st place!
Programming involves very little creativity compared to actual art, so to call it a "creative art" is a gross exaggeration.
A programmer is given a very specific set of tasks (eg. send data from A to B, fix bug, implement X), and his problems are mostly technical. This doesn't even compare to the creativity involved in a real artistic endeavor like designing your own videogame, writing your own screenplay, or composing a song. The latter is totally open-ended, and chances are that whatever you create will be way more unique than the 10,000th CRUD app written in the hottest web stack (React/Redux/Sass, or whatever the cool kids are into these days).
Lack of creativity is actually one of my biggest complaints with this field.
That's only a partial view. I could also say...many paintings that are considered art these days...big whooop they were just work for hire with specifications. Paint that daughter of this rich dude.
Same for classical music...we need some new song to wow people at our event...Mr. Bach, we need some new church music get going mate.
I'd say most interesting programming tasks certainly have elements of interesting artistic tasks. They usually involve a problem that is hard to put in words but needs solving. Especially in the startup context it's fairly close to art (imo) since your canvas is so empty...often you don't even know if you're working on the right problem to boot and will only find out through a process.
>A programmer is given a very specific set of tasks (eg. send data from A to B, fix bug, implement X), and his problems are mostly technical.
I don't think this is a fair comparison. This is actually one of those cases where I like the distinction between "programmer" and "coder". What you're describing sounds like a "coder" or a "code monkey," not at all like what I do in my job. If you were to translate this job over to art, it would be something like tracing over lines, making very minor touchups to pre-specified areas, or perhaps mixing paint.
An artist who has complete freedom over their tools and their subjects would best translate to a programmer who also has complete control over their tools and their subject. They are not beholden to a company for specifics, except perhaps that something actually gets built. More likely this is one person who has an idea for a project and designs and implements everything themselves - and spends more time considering what features to add, the best way to add them, or otherwise experimenting with techniques, than actually writing production code.
Programming and coding are the same thing. I think the distinction you were looking for was engineer vs. programmer/coder, and programming is simply the implementation part.
What you described seems more like a managerial role and/or an engineering role that also encompasses product/UI design. In my experience, most of the design work - the actual creative part - is delegated to other people, and the actual implementation of these designs is the task of the engineer. As engineers, we're working on the least creative part.
Perhaps I've just been lucky with jobs, but my daily work hasn't been "send data from A to B, fix bug" since my first job before college (except for ramp-up time when I was just starting at Google, and even then my manager was like "Do you really want to just be fixing unit tests?". It was "Give quants a development environment where they can quickly write algorithms that will run on our parallel-processing cluster", "Visualize violations of Reg NMS for the SEC", "Let teenagers build their own casual games through a WYSIWYG interface and share them with their friends", "Redesign the Google Search Results Page", "Figure out who wrote what on the Internet", "Make webapps perform as well as native ones", and "Fix unemployment" (along with some newer startup ideas I'm not ready to talk about yet). There's been plenty of creativity in all of them - sometimes too much, since with creativity comes risk and the possibility that it won't actually work as well as it did in your mind.
If you're working / have worked at the Big 5, your experience is vastly different than the rest of the profession toiling away at CRUD apps and web sites 9 to 5. Lucky doesn't begin to describe it.
Just like how some photographers focus solely on wedding shoots, or some treat photography as art. Or how some architects specialize in copy-and-paste homes, whilst others spend time engaging with and designing something specific to the client - I think there's a huge spectrum in terms of 'creativity' for all specializations that 'make' things, and it's hard to say that one is more creative than the other.
Perhaps whether or not you're exposed to creativity depends on where you, or the industry places you in the field.. perhaps the more experienced you are in an industry, the more opportunities you have for creativity?
> A programmer is given a very specific set of tasks (eg. send data from A to B, fix bug, implement X), and his problems are mostly technical.
That does not describe what I do as a programmer. I work with a lot of really smart people who respect my expertise and we discus the programming plan together. I am expected to come up with creative solutions to the problems we encounter and generally enjoy doing this. I code my own solutions and support the resulting software.
Frankly I'm sick of the whining from all the corporate drones who got into this field because they thought it would be a good way to make some stable money. If you sold out, if you didn't do it for the love of it, then you deserve what you got.
Setting the "cool kid angst" aside, most art forms and especially song composition is a rather repetitive task where you compose certain rigid templates (tunes and chords) into a passable song according to demands and structure of current society, make your record company listen, have them edit the song, repeatedly master it until they are satisfied. My point is, however boring and repetitive, you still have some room to think, tinker and choose just like composing.
That's the point. The main difference here is getting told what to do. Even a song writer can get told what to do. Write a song about politics, or injustice or love, write a screenplay of x talking to y about z, paint using x color with y shape communicating z values.
That's only to a certain extent. You can imagine a set of all the pieces of art you can make and all the interesting pieces of art in that set. If they're are few interesting pieces, then the constraints do more harm than good. A good medium for expression will allow you to both express many ideas and restrict you from expressing the uninteresting ones.
To make this concrete, in programming, type checking eliminates all the programs which would have a type error so they are good constraints. But some languages constrain you in arbitrary way which hurts. For example, Java doesn't let you do any functional programming and has a weak type system, which means introduces design patterns.
Ian Bogost wrote a good piece on this called "Shit Crayons" comparing games like Spore to Photoshop, where even though Photoshop is more powerful, most of the stuff you can produce is bad, supporting the idea of constraints. But then he took apart Minecraft for being overly restrictive, causing many things like houses to be dull. http://bogost.com/writing/shit_crayons/
CRUD apps are probably not the most creative things, indeed. But I've had a fair bit of problems where I'd say solving them was a creative endeavour. Especially on the UX end there are lots of such problems in my experience.
I guess to more simply articulate it, there are levels of creativity. Being tasked with making something function correctly or making a UI look like a psd is more of a technical problem and involves way less creativity than creating something more open-ended like an original work of art. It's like designing a board game vs. being handed the designs and building it.
Disclaimer: Have been writing music for almost 20 years, programming about the same.
"I want a picture"
"I want a picture of a bridge"
"I want a picture of this bridge that I built"
"I want a picture of this bridge that I built, in these colors"
"I want a picture of this bridge that I built, in these colors, from this angle"
"I want a picture of this bridge that I built, in these colors, from this angle, in this scale, made on this canvas, with these materials, painted with oil"
Do you get my point? The creative decisions could be endless, even with restrictions. Sure, not all programming is creative, but that's true about any creative field. Most of it is creative though, or rather, it's as creative as you are.
Ok. Apparently you have the wrong concept of creativity, or you're looking through it with only one glass.
Creativity is not only doing aesthetics or poetry, the bare concept of creativity is unifying things that otherwise don't seem unifiable. Associate a dog with a circuit, that's creativity; innovation.
And boy, you have a lot in bare programming. There are many ways to write a code that does the same thing. Sure, not every code involves the level of creativity a painting can, but that's not to say programming doesn't have creativity whatsoever.
React, Redux, Sass, those all are great examples of programming creativity, just beginning by the problem they solve, it's creativity on his own...
I think coding is a craft, and like any craft, it can be used to make art, but it can also be used to less than artful ends.
Same with my profession: writing. I'm a professional writer. I get paid quite a lot for what I write, but what I write isn't art. I've just trained myself to produce a commodity that others find valuable. Obviously the craft of writing can be used to create art, but that's not what I do.
The craft of programming could be used to create great art, but that's not what most programmers do with it.
Most artists lack creative freedom because they're locked in to expectations from their previous work and feel pressed by dealers media, audience, etc. to continue in the same way. Meaning that they too face a lack of agency that kills their passion for their work and thereby also reduces its quality.
I think it's more similar to an architecture position. Lots of architects churning out copy -> paste work, but some offering really unique, inspiring and we'll thought designs.
except after a certain point it's not e.g. send data from A to B, it's send data from a to be with these C E and F constraints. Now take programmer G (you in the future or someone else) and make them able to understand it. Now you're thinking about design and architecture. Sure at a pretty abstract level. There's an art to it, admittedly with varying degrees of longevity and visibility.
I think it is all about balance. I am happy that I get to write new things every day and enjoy this aspect of it; I do not enjoy short deadlines and stress to get things working for a customer with incessant clock-watching. I enjoy learning new parts of development-land but I watch the industry and find new technologies and devices somewhat boring. I find the new aspects of programming languages (like C++ etc.) really interesting, in contrast to this.
So I have decided to reduce the amount of time I spend at a computer and read more. I play my bass more. I try and get the balance right, and hopefully I can reduce the number of days I work because there is a danger that whilst slaving to make a living, we forget to live.
Yes, that is also an option. In fact intersection of two or more mediums is incredibly satisfying, if you can actually achieve it and be "successful" at it (whatever metrics you measure success in).
Elon Musk's wife calls this "Idea Sex".
> Choose one thing and become a master of it. Choose a second thing and become a master of that. When you become a master of two worlds (say, engineering and business), you can bring them together in a way that will a) introduce hot ideas to each other, so they can have idea sex and make idea babies that no one has seen before and b) create a competitive advantage because you can move between worlds, speak both languages, connect the tribes, mash the elements to spark fresh creative insight until you wake up with the epiphany that changes your life.
Regardless of industry and profession, you need agency to feel fulfilled. Most don't have that, like the photographer in your example. If you were in his situation today, you could have still published it but on your own Instagram account, and that way preserved your agency.
Regarding all discussion about creativity and programming, I heard a usability expert that had been painting for 30 years say this about GUI engineering:
Usability as a subject is the opposite of art, it is kitsch. You actively try to make simple and obvious; to have just one possible meaning.
She also said that art/painting was the best of hobbies, but would have been the worst possible of jobs. Too little money and too many interested people, so it was a rat race.
Personally, I've found hundreds of subjects I love to learn about. But it seems only one thing I really love doing. So they'll have to break my cold fingers off the keyboard. I love to teach about subjects I love, but sadly lack all pedagogical talent. (Maybe I had liked art if I wasn't color blind or so unmusical that I can't clap hand to most of my favorite music. :-) )
Yes, Yes and yes!
I consider myself a quicklearner. I am 28, been working as .NET consultant but know the other languages such as javascript/node, php, swift, java. Paid well, but I cant help feeling like I was meant to do something else. I wish I could use my brain capacity to help other people. UNICEF, UN or other NGO. I believe technology can have massive impact on countries which lags behind the "western" standards. I wish I could be part of a program to help out people with the use of technology.
This feeling is so intense, I wouldnt be surprised if I quit my job tomorrow. I am not scared of leaving my country (Norway) if there was a great opportunity to work abroad.
Dont really know where to start when it comes to tech + UN. If someone knows please give me a pointer to start.
I have switched to be a guide for Tibet tours (Lhasa, Kailash-Manasarovar) and high altitude trekking and motorcycle tours in Nepal, Sikkim and Ladakh. Customers enjoyed my guided tours in Jokhang and Potala.
Better demand and much more tolerable life than in a coding sweatshop. For everything else there is literally no demand for anything except Joomla websites and Android apps outside the valley, which is already saturated.
And, of course, I have zero interest in things like React or Node.
The sad truth is that indie and small shop IT is already dead. Unless you are a young CS major in US there is no demand for programming jobs. Otherwise there will be a market, not just a few brokers like Toptal.
Well, I am actually a mathematician. I knew cateogry theory well before I was even able to hack a web page with php and jquery. :-)
And still, I find that most of the abstractions that appear, say, in Haskell have little mathematical content. Even less so their imitation in Javascript. ¯\_(ツ)_/¯
I was referring to the capital intensive nature of the business. My fairly lucrative programming career is what keeps my farm operating. Being able to leave programming to farm is a long way off for me yet.
If you have family willing to hand down the business or already independently wealthy, then maybe leaving programming to farm is more realistic.
I have noticed that the agriculture market has seemed to settle on an average of about 2-3% ROI. Meaning, for every $1 you invest in your farm business, you can expect to get 2-3¢ back each year profit-wise. On average. Some years you will make more, some years you will pay to get rid of your product. Right now is closer to the latter of those two.
If you come to farming with $2-3M cash in hand, you will typically be in pretty good shape (~$60K average yearly income based on the above assumptions), assuming you have figured out the management aspects. But most don't have $3M lying around doing nothing, and that's the real challenge. The way forward seems to be to hold another job (programming in my case), and take all you can from that job and put it into the farming business until you have built up enough capital that the farm becomes self-sustaining.
It's a long road, but hopefully worth it. As they say, if it were easy, everyone would be doing it.
as a hobbyist, I don't think I would ever do anything else.
as an employee/employer, become a technician. everybody needs repair work, and very few can call the result maintainable and sustainable. focusing on residential areas helps, too.
But I don't love it. Alan Kay is right, it's like building "an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves". There's no elegance and no higher vision. It's an Asperger profession; smart but artless.
I would prefer, if I could retire, to make short films and maybe to write plays. But I can't retire yet. So I'll push stones. It pays well.