7 ms·
Is this really realistic: self-taught programmer?
So I'm 31, and decided to change careers. I was previously an engineer (not CS), and did well @ a small company, made and saved money, and now I make about 60k per year after tax from my invested money.
I live off about 2.5k per month, but can probably live off less, so I'm still saving money per year, but not making any money other than my investments. I made about 20k worth of angel investments via angel.co, so hopefully I win the lottery there, but I'm not planning on it.
I have always tooled around with computers, but I'm nowhere near an expert, nor have I ever been a coder.
I am currently taking the one month rails course, and also considering something like LPTHW or similar, with the main goal in mind to just make prototypes, then hire the real talent if I get something going. I don't expect to get hired as a dev, but what about getting work or consulting from front end stuff, or just prototype stuff?
I read posts on here all the time about people who have CS degrees, the whole 9 yards and have problems finding work. So it seems asinine for me to believe that I could do it on my own.
What should I expect? Should I just accept that my life is going to suck and go back to my old job that I hated? I really don't like not working, but I really don't see how this whole coding thing is going to work out for me. I need some HONEST feedback. I feel like maybe I've been a bit jaded by all this entrepreneur/ self taught coder talk. I mean, my chances to make millions doing this is pretty much non existent, isn't it?
- CyberFonic 13y agoIf you already have a degree in engineering and solid experience, then you probably have the ability to learn effectively. Software development is often called software engineering - which is how it should be practised. That is, construct "things" based on sound engineering practices and a good understanding of the underlying physics / maths. Any given library/framework is a collection of sub-assemblies that you then "glue" together using the programming language that it is implemented in. Personally I like Python with its "batteries included" philosophy. As long as you can avoid the "not invented here" syndrome you will do well by reading the documentation and source code for the components you are looking at using. I've met history majors who became accomplished programmers purely by teaching themselves. There are lots of resources out there, books, videos, forums, etc. I would suggest that you pick a language and stick with it. Once you are competent in one language and a couple of frameworks implemented for it, it is much easier to transfer the knowledge to another combination. Just remember that almost all languages are "Turing Equivalent".
- beginagain 13y agoBut is it really realistic that I will make money doing this? I hear about all this freelancing etc..., but is that just to lure in dumb money into the industry? I just have trouble comprehending that I will be able to compete with the current force, especially when their foundation in CS is much more stable than my layman understanding. I will essentially just know how to write code for the sake of writing code. I won't understand assembly and compilers, etc...
- CyberFonic 13y agoIf earning money is your sole criteria, then you'd be better off doing what you already have qualifications for. You can learn about assembly, compilers, etc by reading a couple of good text books. There are some excellent video CS courses out there if you prefer that sort of tuition. Yes, there will be a period while you are learning and not earning. But that's how it was with your original degree - wasn't it? If you have a keen desire, then you will accomplish your goals. Read some Anthony Robbins, e.g. Awaken the Giant Within. Everything is possible, and you have to work for it, which means you really have to want it.
- Q4273j3b 13y agoIf I read all that right: - you are making $60k/year post-tax off non-angel investments - your yearly expenditures are about $2.5k * 12 = $60k - you are about to quit your job (or already have) and anticipate an even lower expenditure next year (<$60k) Dude/dudette, forget switching careers---if this is really and truly your financial situation (no debt, etc.), you could just go ahead and retire. You don't have to go back to your old job that you hated. You don't have to go back to any job. You are pressure- and fancy-free. If web development is what you want to do in your first year of retirement, well, go for it. Financially speaking, you have nothing to lose. You could just as easily become a fly fisherman in Montana. High five yourself! And go read http://www.mrmoneymustache.com/ http://www.mrmoneymustache.com/.
- beginagain 13y agoWell I think your math is off there, more like 30k, or closer to 35 actually per year for expenditures. I want to have a lot more money though. I want to be one of those guys with 100 million. So I don't like the idea of not working anymore. Plus, I want to work on something I am passionate about. I have had enough relaxation and vacation to last me a lifetime. I am sick of it. I want to find meaningful work. I feel guilty right now that I'm not producing anything, and ashamed. [There are people a lot less intelligent than me with a lot more money than me. What is wrong with me? Why can't I be one of those people?] is the recurring thought in my head. But I think it's more about finding meaningful work than it is the money. Easy example, but if I was Anthony Bourdain, Paul Graham, Carl Icahn, Steve Jobs, I would be more than happy doing their work even without making the insane amounts of money that they obviously do. Because their work is meaningful. I worked hard and made some money, but I am 31 and this is all I have to show for it http://i.imgur.com/ACsNRpi.png http://i.imgur.com/ACsNRpi.png. I mean, I was paid by an employer and the market for that money. I want to create my own way, not crutch someone else's way. I must figure it out somehow. Just stuck and scared right now. I'm just not sure what to do. I need to push myself more I think.
- cprncus 13y ago> "Just stuck and scared right now." This just says something about human psychology, that someone can be a wee bit past late adolescence, be making $60k clear for doing nothing, and yet feel "stuck and scared." Thankfully, most of the people in, say, Bolivia or Sierra Leone are unable to easily read Ask Hacker News. Ahh, humanity, you're a gas!
- skormos 13y agoComputer Science <> Practical software engineering / development!! If you're a competent problem solver, learn something very practical and immediately in demand; mobile development comes to mind. Expect to be paid entry-level salary, and work your butt off to prove yourself, and move up. I have an engineering degree, but had only a few comp sci classes. My friends are in the same boat, but we're all good problem solvers, dedicated, and willing to learn. My friend was a hardware engineer, was worried about transitioning to development. He's smart, dedicated, and made the most of the opportunities given him. I can't say that any of us will be making millions off our ideas, but we're all successful in our careers, and that proves that it's possible. Just set your expectations, make most of your opportunities, work hard, and you'll do great.
- saluki 13y agoCongratulations on your success so far . . . As for changing careers start here . . . http://www.youtube.com/watch?v=0CDXJ6bMkMY http://www.youtube.com/watch?v=0CDXJ6bMkMY Then catch up on . . . http://StartUpsForTheRestOfUs.com http://StartUpsForTheRestOfUs.com Sounds like you would be more interested in starting your own business rather than working for someone else. Learning development is a great start . . . and great skill to have. Rails is a good choice . . . Before jumping into Rails I would start with HTML/CSS create some basic websites . . . Then learn some javascript and jQuery . . . I think you would learn more by building a few simple web apps using PHP and MySQL so you can learn what it's like to build one without a framework . . . login/user types/CRUD . . . then once you have the basics down then see what it's like creating the same app in Rails. Rails is easier to understand once you know what is going on behind the scenes. http://teamtreehouse.com http://teamtreehouse.com Has some great tutorials . . . for HTML/CSS, js, PHP MySQL and RAILS. If you're not interested in starting your own business becoming proficient in rails is a great career track.
- NonEUCitizen 13y agoA friend of mine used to say, "for software you just need a computer, electricity, and time." You probably can afford a computer and electricity. And since you spend less than your passive income, you have time. Your other advantages: 1. You have an engineering background 2. Internet makes it so much easier to find information; don't even need to buy so many books from amazon You can definitely become a very good self-taught programmer, if you put the time into it. But whether this translates into millions is a different story (more subject to randomness -- whether market wants to pay for your software, etc.)
- robotys 13y agoSeems like you not need an occupation, but motivation, preceeds by vision. Think deeply on what you want to make better of this world. Start from there.
- SuperPosition 13y agoIf you are motivated you can learn to program well, as good as any other. BUT: Do you envy the success of industrious males and covet their hard earned money and its attached status? Why do you want to "be one of those guys with 100 million (idol-worship)?" The people you listed had nothing in terms of financial assets during the start of their careers. Jobs was a nobody who lived with his parents.It may be difficult for you to muster up that same level of motivation with 1 million in your portfolio. Look, programming and computer manufacturing may have been the medium through which a subset of motivated and imaginative people created their wealth during the past 20-40 years, but programming and computer manufacturing were just the medium. The foresight of these men is what led to their success (Paul Graham is a brilliant guy.) Do you deserve to take a job from a younger, hard-working CS guy just because you are not satisfied with your career choice? Do you think that human progress is measured in dollars? Maybe what you need is some substance in your life other than phantasies of wealth and portfolio screenshots. If you had had the foresight of the successful men that you listed, then maybe you would already have "100 million," or more! (Are you married? Kids?)
- jardaroh 13y agoHere is my story. 5 years ago I was an apprentice copper and tin smith, I have always been good with my hands, and because of the dot com crack around 2000 I decided to go for a career in construction. However, it didn't turn out that way. To cut a long story short, 5 years later I started to learn web development, 2 years into web development I was the acting lead developer and teacher of others. Now 4 years later I am in a new job, well paid, respected by my bosses, and I am still learning new languages and frameworks. Point is, anyone can learn programming, and I dare say, after what I have witnessed, anyone can excel at it too.
- robwgibbons 13y agoI have no degree and I am 0.5 out of 1 full time programmers at a major footwear apparel company. Just keep working, keep reading. Fuck the paper credentials. Never stop learning.
- conjecTech 13y agoIt's entirely possible to teach yourself to be a very competent programmer. It's going to take time though and a lot of dedication, but I'd say it's a very worthwhile thing to do. Before you launch into that though I'd try to reassess why it is you hate using the skills you have. You might find there are plenty of opportunities there that don't require completely retraining yourself. While programming is great, there is a huge need for other skill sets and products that aren't webpages. What's your technical background? What are you interested in? What aren't you interested in?
- retrogradeorbit 13y ago"You've got to find what you love... And the only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle." -- Steve Jobs
- twotwotwo 13y agoConcretely, go further with programming and see if you like it: see if it's hard not to think about the things that could be built, and the hard part is picking a single thing to work on; if new tools and technologies or ways to do the work better are interesting even if you're not sure where you'd use them yet; if you can see yourself occasionally building stuff for fun. Building shippable software will still be maddening when you're almost done but for one fiddly piece of code that behaves wrong and you can't explain why. The clever and visible and intrinsically exciting stuff will only be a small part of the larger product. Much of what you do will sound interesting to nobody (maybe not even fellow techies). But if there's fun there, it's a huge help getting past all that and finding the whole exercise worth it nonetheless. Relatedly, I don't think you should necessarily cut yourself off after introductory Rails or Python classes; as long as you're having fun, you're probably learning something, too. And work on subject matter you care about--you seem to have a bit of room to do what you want, and liking the goal to which you're applying your skills is huge.
- elaineo 13y agoI wrote something up some time ago about my friends and I, many of whom switched from electrical engineering to software dev. We are the same age as you, and nowhere near as well off. But we are all infinitely happier for having changed careers. http://elaineou.wordpress.com/2013/08/10/how-do-i-change-careers-without-investing-in-an-expensive-degree/ http://elaineou.wordpress.com/2013/08/10/how-do-i-change-car...
- ShabbyDoo 13y agoSo, even though you hated your previous job, you obviously did well at it -- at least well enough to save-up a nice nest egg. Let's presume that you will progress over time from crappy programmer to a solid one. Anyone like you will get at least that far and likely much farther. The question at hand is simply what you should do to facilitate this progression. Have you considered solving some small but pesky problem which you know is common in your industry? A calculator for compliance with Governmental Rule XYZ? A converter between two 90's era (or worse) file formats still in use within your previous industry? I have no clue what you did before, and I probably wouldn't know what projects to suggest even if I did. My point is only that you can make-up for being a mediocre programmer with deep knowledge of a specific industry. If Patrick can make $30K+ selling bingo card software to teachers, you ought to be able to do similarly in the niche you know well. To avoid having to be a good salesman, maybe you put up a website with the file converter thingy and then sell premium advertising space to vendors in that niche.
- deckiedan 13y agoAlternatively, since you're financially stable and don't technically need any more money, how about working for a non-profit as a volunteer? Sure, learn software development in your spare time, but why not find ways to use your engineering skills & talents in (say) building wells in rural Africa, or helping Haiti become a safe and stable country again? What about teaching engineering or building safety in Cambodia or Laos? Help figure out how to get plumbing or sanitary systems that are affordable in the slums of Manila or Rio? Or even spending 3 months a year teaching or helping out in the Dalit schools in India? Instead of making millions, how about helping millions? (I've been working the last 7 years for 'OM' (www.om.org) mainly doing Audio/Visual Engineering, and some software development. I'm not financially independant, so rely on sponsorship from friends/family/churches, etc.)
- beginagain 13y agoI may not 'technically' need more money, but I feel extremely uncomfortable where I am right now. While I appreciate volunteers who do these things, it also makes me depressed as I know their efforts are largely for naught. Unpopular opinion I'm sure, but I think it's ridiculous how much money is poured into these efforts when the real cause of the problem is not addressed. Humanity is suffering by the hands of immoral government. Would I fund ventures to kill the people responsible? Absolutely. But this would also include taking out many members of our own government, which is illegal and not realistic. So until some major changes are made in respect to political authority, I feel like it is a waste of effort, and I would not be happy being a part of it. As tragic as it actually is. Thank goodness for the people who ease the pain and suffering of the people who are being oppressed. They desperately need some kind of hope.
- kisitu 13y agoHi beginagain, check out: http://teamtreehouse.com http://teamtreehouse.com http://codeschool.com http://codeschool.com (those are perhaps some solid references for good paced learning).
- pillr 13y agoHi beginagain, the truth lies somewhere in between. It shows courage and it seems a good idea that you're looking for help or encouraging words from others in order to understand your situation better. Now, for what I see, you already took a decision, didn't you? "So I'm 31, and decided to change careers". That's the first step. Now, 22 hours ago you might have had a bad day but hey, you already decided to change careers - so, that's all you and we and everyone needs to know. Many people with a CS degree will never start or work at a startup as well as many others with an engineer degree will never invent a new machine or technology. Many people will live and die and never have a year's salary in their savings account. It doesn't make them better or worse, some decisions you take, some others life takes for you. But as you don't seem to be living neither in Bangladesh nor Sierra Leone, you're in the wonderful position to just give it a try. Shine a little bit, give it a try and have a look if it works out. If it does fine, if you think you have committed sincereously to it but can't find the strength to go ahead, it's okay as well. Just do something else. "A life spent making mistakes is not only more honorable, but more useful than a life spent doing nothing." George Bernard Shaw