It’s Not Too Late to Learn How to Code

Coding is sort of like a superpower; with it you can create things that millions of people see. You can change the way people behave, the way they think, and the way they interact with others. This is beyond awesome, but I’ve also met a lot of people that think that this ability is inaccessible to them. I’ve met a lot of “non-technical” people who seem to think that this superpower is only bestowed on those fortunate enough to have it come easily to them at a very early age.

I took two Computer Science courses in high school, and I’m fairly confident that had it not been for those classes, I would have been way too intimidated to major in it in college. Those who major in CS with no pre-college programming experience get my greatest respect, because even with a few classes under your belt, it can feel extremely daunting.

Beyond college, I’ve spoken to several friends who have expressed the same sentiment to me. They wish they had known how important it was, how many opportunities being “technical” opens up, and wished they had learned to code. They always say this with a wistful attitude that implies that they assume it’s too late. They are around my age, 24 to 25.

It’s easy to think that it’s too late, because look at those people who spent four years in college learning to code! But those four years I spent in college learning CS? The first two I spent trying to figure out what to major in. Over the next two years I took eight courses in the department, but many have no direct relation to applications-focused programming, which I assume is what most people want to do. In my entire four years at college, I took only one class that was applications-focused. Going into it, I had no practical knowledge of HTML or CSS, but worked with two other similarly inexperienced students to build a webapp with MySQL, PHP and HTML/CSS.

It’s easy to think that it’s too late. There will almost always be people who have more experience, but it’s important to remember that every one of those people started off as a complete beginner.

So if you’ve been thinking to yourself “I wish I had learned to code,” why not do it? When you do, please keep some things in mind:

  • It is difficult! Things that take awhile at first will come naturally to you later on. Of course some people are more naturally disposed toward the type of logical thinking that programming demands, but I believe that in the majority of cases, people assume they aren’t cut out for it before giving it a fair shot. Though of course, having people believe that programming is “too difficult” and that the average person is “not smart enough” strokes our egos and makes us feel like we’re part of some super-elite hyper-intelligent group.
  • Mentally prepare yourself for roadblocks. I used to think I was cursed, because every time I tried to setup something new (new development environment, tool, library, etc), something would always go wrong. It took many years for me to realize that with all the different combinations of user operating systems, software versions, etc, the documentation was often outdated or not comprehensive.
  • Do you like it? Forget about if you think it’s too hard; do you think it’s fun? When you struggle for hours debugging something, and finally, it runs as expected, do you feel a rush of excitement? Do you look forward to having a few hours to figure something out? Those are the things that attracted to me to software–I just didn’t worry too much about if I could make it or not.

There are plenty of great resources out there to get you started, but I’ll stick with one to avoid option overload. Stanford provides free online access to a good number of CS courses, including three introductory classes. Click here to get started!

Related posts:

16. October 2011 von jean
Categories: Uncategorized | 88 comments

Comments (88)

  1. Great article! A lot of people will definitely benefit from reading this. :)

  2. This is very inspiring. Thank you

  3. Very encouraged. I know the guy who is over 70 and started learning Python.

  4. Jean,

    Cold you point to a couple of more resources?

    • Sure, what would you like to learn? I tried to limit to one link because it can be overwhelming to see a whole bunch, but I can compile some more for another post. Some people on Hacker News have pointed out a few good resources, including Codecademy. Check out the comments for more resources. I’ve heard Python is a great place to start. http://news.ycombinator.com/item?id=3119304

      • Hi,
        First, many thanks for this great, motivating article !
        I’d just like to witness that Python is actually a good choice for people with no coding background.
        There are many great books to get you started, many of which freely available on the Net. Python’s and standard library’s docs are excellent. Last but not least, there is the _great_ Python Module Of The Day site/book by Doug Hellmann (http://www.doughellmann.com/PyMOTW/) which is, AFAIC, one of the most important reference for Ptyhonistas wannabe.
        At the end of june I started to write my first software, no other coding experience than a few bash scripts and no CS education (I learned corporate law at University). By the end of the week, the 3K lines of python will be running in production.
        The software is a daemon based on (py)inotify implementing a workflow engine with activities homed in folders. It will soon be released under a FLOSS licence on github or bitbucket.
        My code is surely ugly ATM, but what I learned from this first project is the importance of having something real to do and have it basicaly working in a relatively short time (a month in my case). Nothing gives more self confidence and is more encouraging when code sudenly gets screwed (and it surely gets !). Now, I have an interesting code base and playground to go further learning OOP, code testing, documentation, refactoring…
        Hope someone will benefit of this.
        Bests

      • 4clojure.com is a nice resource for lisp beginners. It’s got a very forgiving learning curve, all you need is a browser, and it can be quite addicting once you get going.

    • Http://www.programr.com is where you can practice programming free 24×7 right in your browser. In any language.

    • Code Academy is a great way to touch on the basics. It barely touches the surface, but it’s a great way to overcome the intimidation factor, as it’s interactive, kind of fun, and gets you the basics. It actually goes quite fast in the material, but once you look up a few things, you’ll be good.

      SEOmoz mentioned it, thus how I heard of it. So yes, I agree with Jean’s comment below.

  5. *Could you point to a couple more resources

    Jesus. Gotta stop huffing so much glue…

  6. Thanks for always writing interesting stuff, Jean.

    To everyone else: I’m an avid reader of HN and TechCrunch. It took me a long time to take the plunge. Actually, I’m 27 and I just started to learn to program. I’ve built websites with HTML, CSS, and Javascript for the longest time, and I need to press forward. I’m looking primarily to emphasize on developing web applications. I had to choose between Ruby and Python, so that I could eventually dive into Rails or Django/Web2Py. After doing a bit of Ruby and not liking it too much, I switched over to Python (beautiful code and easy to go back to). The resource I’m using is “Learning Python the Hard Way,” located here: http://learnpythonthehardway.org/. It’s by far the easiest free resource I’ve come across. It’s split into 52 mini-lessons and you’ll feel like you’re accomplishing so much in very little time. Just my thoughts.

  7. Spot on Jean, awesome job!

  8. It’s very inspiring.
    I left coding 7-8 years ago and decided to focus on sales and marketing and now that I need more programmers I hate myself that I don’t remember how to program and it makes me sad.

  9. Thanks for interesting article, btw, if you are not passionate about computers and especially coding stuff, you’ll end up with understanding nothing at all.

    Khanacademy currently provides few interesting videos relating to computer science, where Python is used very often.

    http://www.khanacademy.org/

  10. It’s never too late to learn to do anything. I started learning how to code at the ripe old age of 32 or thereabouts while living in California. Started with PHP, then MySQL, then CSS. At the age of 35 I moved to Europe and at 36 changed careers and started learning 3d modeling with Maya (a daunting task). Worked in 3d for 5 years, in a couple of feature films, then changed careers again and went back to coding. Now, at age 42 I’m learning Ruby and love it, it’s the best language I’ve ever seen. After Ruby it will be Objective C and iPad development. Of course, the older you get, the harder it is but it’s never too late. If you like it go for it!

  11. Pingback: It’s Not Too Late to Learn How to Code | [Jean Hsu] | Be Kishore

  12. I am a 24 year-old who started learning to program last May and I cannot agree more with your post here! I spent *years* putting off programming because I was afraid I would be competing against all the guys who were programming complex applications at age 13, but instead I’ve found that the community has been open, helpful and decidedly non-intimidating for the beginning programmer. After 5 months of coding, I feel like I may have found my passion. My only wish is that I had taken the plunge the first time I considered it!

  13. Jean, a honest answer: how long will it take for a slightly (and I emphasize the “slightly”) technical person to learn web development?

    Code doesn’t scare me. I’m curious by nature. I have a basic understanding of CSS and HTML, but can’t wrap my big stupid head around hardcore programming – PHP, databases, etc.

    There are plenty of private institutes around my place that offer 3 to 12 month courses that teach web development. Is that really enough?

    • Personally, I think javascript is an awesome way to get start as it will have immediate application. You can make bookmarklets! As you’ll learn the basics of scripting, definitely check out autohotkey. The syntax will be a bit different, and it’s applied in a slightly different manner, but you can have immediate results. Lifehacker as a few articles on some good hotkeys and scripts to use. From there, as you learn concepts you can apply them.

      I use scripts to add gestures and hotkeys to my favorite websites. Rename batch files, open multiple programs at once, etc.

  14. Getting started in programming is like learning to walk when you are just born, sometimes you fall, sometimes you succeed, just need to keep trying and never giveup. Once you are on the move it seems everything so easy.

  15. I wish :-( . I have a bunch of domain names that I can’t wait to scrap together some cash to get someone to properly develop. I can throw WordPress up, but I just wish I could do it on my own–creating an awesome custom site.

    Maybe one day :-) . Great post!

  16. Thank you for the really encouraging post, Jean. As a 57 year old educator, I need to ‘tech-up’ and apply more technology into my coursework. WYSIWYG text editors only take me so far.

  17. The free Intro to CS course available through MIT online teaches Python.

  18. This article was reassuring for me. I often think that it’s too late to get good.

    I majored in CS at University with limited coding experience beforehand, was told it would start from the ground up. How wrong that turned out to be!

    I somehow managed to get through it, my final year project in PHP and MySQL. Though I have no idea how!

    A few years on, I still don’t consider myself a coder even though I would really really like to be.

    I’ve done the Codecademy & Codeschool tuts, built small bits and pieces in RoR and Python and I am working through the MIT and Stanford courses.

    No matter how much I practise I feel like I’m still missing something. I feel like I start from scratch every time I sit down to build something and have to re-learn it all again.

    I often wonder at what point I’ll feel like I’m a proficient coder. Now I think I’ll just focus more on enjoying it instead of the progress I’m making.

  19. Thanks for sharing your story, I’m still somewhat of a newbie but I love it. Every time I solve a debugging or complex problem, I jump up out of my chair and thrust my fist through the air, it’s usually accompanied with some type of verbal sound effect. And to mirror what our Python friend David said: “Learning Ruby the Hard Way,” is also a good resource to get started – http://ruby.learncodethehardway.org/

    ‘I’m 26 and it’s not too late’

  20. Very well written. This is how exactly a lot of people feel. You got it right. Nice job

  21. Great post, Jean! Here are other resources for folks who are looking:

    http://openclassroom.stanford.edu/MainFolder/HomePage.php

    http://see.stanford.edu/see/courses.aspx

    Stanford is making a number of their CS lectures free. There are a couple of intro web development/iPhone dev classes in there as well as more advanced topics.

  22. Awesome. That’s the kind of encouragement people need. I am in the process of trading out my Systems Admin career for a career in Development. At 35, it’s a daunting task but it can be done. Carpe Diem!

  23. There is a hurdle that I think is what stops a lot of people from getting into coding. In general, in our current society, most people do not spend much time thinking, and when they do they let their intuition do all the lifting, and they look down on critical thinking and logic as anything from just boring to downright immoral and dangerous. During their teenage years, they either come to understand and respect intellectual rigor and applying exacting logic to their thinking, or, more often, they come to an appreciation for just going with their gut and avoiding anything that requires exactness. This isn’t just a minor issue, they come to see it as an important part of their personality.

    It’s not that logic and critical thinking is very difficult, it’s really not. The rules apply absolutely, and there are no exceptions. The ideas are fairly basic, and even children can grasp them. The choice to apply them to your thinking is a personal one, often not even consciously made. Our society is structured such that you can live your whole life without thinking. You can get by with just doing what others do, guessing and feeling your way through things. Most serious consequences to choices have been removed. Even if you make a terrible choice, like to not vaccinate your children, you usually end up protected by all the other people who just did it because they never gave the issue any thought and those who thought it through and figured out that it was a good idea. Naturally, your children would die in your arms from that choice, and you might come to understand the danger of not thinking rationally. But those sorts of visceral consequences that drove a deep respect for intellectualism in the past are mostly gone, thanks to the intellectuals who came before us and did the rigorous, exact thinking necessary to set up such safety for us.

    People who think rationally are generally seen as cold, calculating, uncaring, inhuman, arrogant, and even dangerous. Most people don’t pick up on those ideas and say ‘I want to be like that!’ And you cannot learn to program without adopting rational thought at least while you are doing it. Computers are machines of absolute logic, and they cannot tolerate “maybe,” “sometimes,” “usually,” and other such approximations. You can’t figure out how to write a proper program by considering your personal experience and just seeing how you feel about the different commands at your disposal, which is the tactic that most people use to guide their decisions in every aspect of their life.

    Like any skill, rational thought becomes easier with practice, and you get better and faster at it the longer you use it. Kids exposed to programming early pick it up quickly because their brains are more plastic, and they don’t have 20 years, or however many, of avoiding such thinking. They also quickly pick up on the fact that everything works this way, and everything is logical. For kids, that’s just a simple observation. For many adults, it is a condemnation of the way they have lived their life and approached the world for decades. Even if they don’t approach the issue consciously, the cognitive dissonance is disconcerting. They get frustrated, and feel angry that their ‘normal’ ways of thinking are impotent when it comes to designing and implementing systems out of absolute logic. Their rejection of anything absolute (usually they think absolutes are naive, silly, extremist, or even dangerous) get directly thrown in their face. They usually don’t have to deal with that thanks to our civilization, so it can be an uncomfortable experience.

    Learning to code is definitely possible for everyone. And it has benefits beyond simply being able to make a computer do what you want it to. But to pick it up, you have to, at a bare minimum, accept that the way you understand the world to work is wrong when it comes to coding. And the things you rejected as the wrong way to go about things long ago are right. If you can manage to compartmentalize this, say by believing that it is just computers that are this way, it doesn’t even have to bother you much. You, and everyone around you, would be much better off if you took this as an opportunity to embrace critical thought more widely, though.

  24. I started coding at 22 when I got laid off from a project management position at a small agency and saw that none of the engineers had gotten the axe.

    This post is awesome! And especially important for women to read.

    <3

  25. Thanks for the inspiration!

  26. I am in the same boat age-wise as Nyteshades. I am 35 as well and I’m trying to trade out my QA job to become a developer. It’s proving to be more difficult than I thought, but writing my own Java code to help with my testing tasks is actually helping quite a bit.

    Thanks for the resource links. They should be useful.

  27. this helps a lot! thanks

  28. Totally do-able. I learned programming in my late 50′s and switched from accounting/finance to full-time programming a dozen years ago. Never took a CS class, learned it at home at night at the kitchen table on my laptop. If you need even more motivation, consider that there is an acute shortage of developers in some areas — .Net is one — yes, in the United States! The pay and job opportunities are excellent. And it’s a lot of fun!!

  29. I realized that I needed to learn about computers when I was 24. Gave up the geology and went to a trade school to learn the basics. It just made sense. ALmost ituitive for me. I still code now 29 years later. I know lots of other stuff as well obviously, but maintinaing my coding/programming abiliity has saveed me many a time. It is not too late. Especially in your 20s.

  30. People at 24-25 think they’re too old? Ha ha! I had a few college classes in C/C++ but didn’t start programming ‘for real’ until I was in my 30s, and now I do it professionally. Mid 20′s is absolutely not too old.

    I think your article would benefit a lot from an addendum pointing out that there are now *so many* tools out there to help people get in the game quickly (IDEs/platforms like Qt, VBasic, video tutorials, online classes), which are free! There are many new languages that are much easier to learn (like Lua) than more traditional ones, which may have been the turnoff for some of your friends. Finally there are terrific support communities like Stack Overflow where, if you take the time to ask a well-thought-out question, you can essentially get 100-200 $/hr tech support for free.

  31. Excellent post. I took a few CS classes 10 years ago and aced them, but failed in my Cal classes. Working in IT now, but I’d love to get into web design/development. I know I have alot more passion for development and the stress in IT is pretty unbearable at times.

  32. It’s not so difficult, but it’s not easy too. I think that everybody who enjoys to think can do it :)

    • That’s true–I think you have to have realistic expectations. It will take some time before you feel like you know what you’re doing. I guess what I’ve seen is a lot of people assuming that it’s too hard for them because they find it somewhat difficult, but many people find it difficult at first but persevere to get past that roadblock.

  33. I started learning at 39 years of age. Now 42, I’m far from an expert, but I’ve managed a release a few useful toys to the FOSS community, and, of course, I continue to enjoy learning more.

  34. I know several people that started programming after their retirement, just for fun. Ok, it’s not industrial SwEng, but they are very enthusiastic about it.

    |=

  35. Love the blog, Jean (and Pulse btw). Please write a book to inspire my daughter to code. She’s 7, so you have some time!

    –nye.

  36. I took CS in Engineering school and learned Pascal (as useful as Latin) and C. I never got to C++ and JAVA, which I understood were the coding standards of the Internet.

    Then I learned first about HTML and said, “Oh brother! Another language to learn!” and subsequent Internet site coding.

    I want to be able to do what I was taught you could do with JAVA: learn to code in a non-platform-specific way so that it could be compiled on any platform. All I could get a hold of was tutoring that said “use this program and that program to code in JAVA, and use our proprietary library.” Even the books I got on C++ and JAVA had their own disk of proprietary libraries.

    Where do I start where I can code something non-proprietarily, and then how do I learn to compile it on any computer? Does it really take a program in order to code? Can I take my program I wrote on the (real) chalkboard and compile it into any computer? How much does it take to make any computer say, “Hello World!” ?

    So where do I start?

    • V Jolly,

      HTML5, CSS3, and Javascript (which, confusingly, has nothing do to with Java) enable you to write sophisticated applications that run in all modern web browsers (Firefox, Chrome, Safari, IE9, Opera). These three languages (and their interpreters) are the closest thing to Java’s “write once, run everywhere” ideal.

      Learn Javascript. If you write “hello world” in JS, almost anyone in the world with a web browser can execute your program. That’s pretty amazing! If you are concerned about your program’s potential reach and portability, you can’t do better than open standards on the web.

    • I still love Pascal (Modern). With FreePascal and Lazarus I create my apps and just recompile them on the platforms I need. Have a look at lazarus.freepascal.org.

  37. i’m a girl studying coding, which is my dream, i’ll keep working hard on it, haha, to change the world, at least my own one!

  38. Pingback: Jean Hsu:什么时候学习编程都不晚 « PHP培训 OnlineStudy

  39. thanks you.Now i feel more confident in starting studying coding

  40. thanks a lot. from china.

  41. I think the thing that makes the most difference is which language is your first language. I was fortunate enough to peek and poke around on Commodore64s, log into BBSs on teletype machines, while cutting my teeth on BASIC across TRS-80s, Apple 2Cs & Es and that was all in a single classroom. Although we all had similar or same assignments you were able to pick which computer you used. While most didn’t like the teletypes, I loved them primarily because you had to log into the school district mainframe to be of any use. Of course where some students were busy just doing the assignments, a few of us were talking to other students throughout the school district and getting into all kinds of other network/BBS inspired mayhem.

    Needless to say its unfortunate that first time programming classes tend to be so structured. I’d almost recommend that even colleges emulate the early environments that most of us experienced in the 80/90s through virtual tools. The pressure associated with coding is going to come regardless but more effort should be made for new students to be exposed to the fun and yes joy of the computer environment. The only thing that maybe comes close is taking a UNIX/Linux class first with shell scripting. Aside from that if there isn’t a codex of perfect languages for new dyi learners, there should be. Great post.

  42. What a great positive article.

  43. Pingback: Codecademy.com is Manna for Programming Dunces | AvocadoPress.com

  44. I taught myself some C, shell scripting, HTML/CSS, PHP in last few years after I started using Linux. I am at the point where the question is what’s next after you start coding? I have a plethora of questions that i thought would be best asked by email, but i couldn’t find your email address :( .

  45. I started to code when I was 35. It is a lot of fun. I code almost everyday now.

  46. You don’t want to learn programming. It’s boring as hell.

  47. I learned to code when I was 28 on an Apple II+, and I am currently working on a Linux kernel module. Before going back to school in CS, I wrote some graphics programs in Basic (shapes that I was able to move around like little spaceships) that gave me visual feedback. I highly recommend just playing with code initially and writing programs that give you immediate feedback so you can see how different instructions affect your program.

    I also encourage everyone who writes code to learn about operating systems, networking, and secure programming. This is generally not taught in programming classes, so many programmers coming out of college don’t know what they don’t know until they get burned by badly performing code or exploits against security holes.

    Finally, for anyone looking for free technical reference material, here is a great link:

    http://www.freetechbooks.com/

    Later . . . Jim

  48. Hi there, great article. It almost seems like it’s speaking to me because I’ve been struggling with this. I love everything IT, including networking and programming. But I’m good at networking, I’m not good at programming. I’ve been studying programming off and on for at least five years or more. It doesn’t stick. I find it extremely fun, but for whatever reason, I’m not learning.

    A lot of my confusion comes down to the two items below. Perhaps you can speak about them?

    1.) Language Overload
    I like Java, C#, Python, Ruby, and C++. Of all the languages, those catch my interest the most and I have a book or two on each except Ruby. The question here is how do programmers balance knowing more than one language? How do they not get the Syntax in one confused with another when they start coding? How do they keep these languages separate in their heads?

    2.) Do programmers memorize the entire language?
    When I study programming, I try to remember as much as I can. I try to memorize each statement, and so on. Is this truly the way? Do programmers actually have the entire dictionary of statements for their chosen languages memorized, or do they just use code snippets and look at examples in books when coding? I can’t imagine memorizing the entire list of statements in any of the languages, but I’m curious if my mindset on this is just wrong.

    I’m hoping to learn a language or two well enough to offer solutions to businesses as part of my consulting gig. Right now I’m studying Java and it’s coming along okay, but a lot of it is just not sticking.

    • Hi Jeremy,

      At any given time, I am really only very familiar with the language I’m currently immersed in. And even then, I don’t memorize everything, and still have to look things up online. For language overload, it is indeed overwhelming, but just choose something that you like and has a strong and friendly developer community and start working on a project you’re excited about. Reading books, in my opinion, only takes you so far and can be pretty dull =) If you’re interested in Java, you might want to look at Android development, as there are a lot of tutorials to get something up and running, and you can decide where you want to go from there!

      Jean

      • Thank you for your comment. I’m studying Java now because it’s required for a class that is coming up in college and I wanted to get an early start on it. I really like the syntax alot, but I despise Oracle so I don’t think I’ll stick with it. Not only that, but not a lot of Linux development seems to happen with Java. I also love the Syntax of C# (it’s similar to Java) but I don’t like the Microsoft roots. C++ seems fine but overly complicated. Do you have any recommendations based on this?

    • Jeremy,

      Learn ONE program first. Trying to learn more than one program at a time will lead to confusion.

      Syntax is different in all cases, but you will learn the differences once you get the first programming language down.

      Do NOT try to remember all the statements. Learn the concepts of how to do something and why you do it that way. To solve a particular problem, there are many ways to go about it, each way has its own twist. With code completion in most common/popular IDE’s out there, you just start out, and the IDE will help you complete the code.

      You will never learn everything about one language. Again, learn the concepts, and the syntax will take care of itself. IF you learn the concepts, the concepts will translate to other languages quickly.

      Give yourself more than a couple of months of learning before dropping it. It takes a couple of years to actually get a lot of the concepts down and actually see advanced things happen. Do not skip the simple programs, learn how/why it was done that way.

      See my theme here????

      if not, let me remind you

      LEARN THE CONCEPTS :D

  49. I’m infinitely more impressed with people who take the time outside of their jobs and use their free time to write software. I’m one of these people.

    Anyone who doesn’t write software outside of their day job will end up writing bad code (college education or otherwise). That is, code that could easily show up on sites like thedailywtf.com.

    • Jim, have you ever met anyone who likes to program and works hard at their job, but also likes to do other things than program? Me personally (when I have work), I enjoy several styles of dance (mostly swing) and singing in a chorus. I have other friends who do things such as play in symphonic bands and swim who work in the computer field.

      Some people seek balance in their lives. It is possible to write high quality, robust code while you are working, and do something else in your off-hours.

      I think it is unfortunate that attitudes like yours have become so commonplace that some people are not even considered for jobs if they do not have ‘github’ profiles or some other high-profile open-source contribution. Not everyone expresses themselves in this way; some people just work at lot on what their company needs them to do, on proprietary projects and platforms, and do other things in their spare time.

      • As long as your brain is intact it’s never too late to pick up any sort of intellectual skill. I’ve always been the logical technical type for most of my life and have worked as an engineer. At the tender age of 45 I taught myself how to play the piano and now at 55 I’m playing classical music and am creating my own compositions. A whole different part of the brain has woken up.

  50. I learned to code from late 30′s to middle 40′s. I know how to code in C, C++, Java, Visual Basic, C#, SQL, and Android (basically Java).

    I am not a developer full time, I test software. I just enjoy coding for my own pleasure, not to make money. I have created programs to help me in my job, and also use coding to create automated testing scripts.

    If you can think logically, like to troubleshoot, strive for perfection in anything you do (knowing that you will never be perfect, but still want to be as perfect as possible) you can learn how to code and enjoy it. It does have some long hours since you can lose track of time while troubleshooting a problem piece of code, but if you get satisfaction out of getting it to work correctly, you can be successful.

    If you decide to try it, do NOT give up one or two semesters into it. It takes a couple of years to really know if you are cut out for it or not, and even if you do not develop full time, you can still use that knowledge for your own personal programs to solve some of your problems in computers to help you do whatever you decide to do in life.

    if an old dog like me (now in my 50′s) can learn to code, YOU CAN TOO!!!!!!!

  51. I’m 24,and I feel that I just begin to learn ,because I always stay in the low level,and I have no progress I think .So I’m so confused about myself that if I should continue to learn write code. Now after seeing this artice ,I learn something ,thinking.

  52. Wow. This article cracked me up. I saw the words “coding” and “superpower” in an email I got from internet.com. I had to click it. I say this because I also took CS in college and went into an IT career. But I always loved software. I decided to take some programming classes to get started. Yes it can be very intimidating at first. But after I got the hang of it, it became exciting. I went from C++ to .NET to Java to PHP and MySQL. And after every class was completed, I felt like someone had handed me, yes, a new superpower. Like the first class I got super-strength. The next class I could fly. The next class I had x-ray vision and so on. Its very empowering.

    So if you are interested in learning to code, don’t be afraid to just dive in. Trust me, I started with “Hello World”. Its five years later and no I build social networks and backend management systems for small businesses.

    There will never be enough coders, so go for it.

    Great Post

  53. Great writeup! I think the single most helpful resource to new and experienced coders is stackoverflow.

    Very useful resource for anyone struggling with coding issues.

  54. If you are learning PHP, here are two free resources:

    Free PHP Reference book: http://www.phpreferencebook.com/

    PHP Code and Syntax Checker (help discover problems):
    http://phpcodechecker.com/

  55. Hey Jean,

    Just wanted to say I think it’s awesome that you’re encouraging people to learn how to code (if they’re into it). Would love to see more women in tech… especially doing the dirty work. Good stuff!

  56. If you’re wanting to learning about CSS (basically what it is):
    http://whatiscss.michaelfokken.com/

  57. Having been a recovering IT professional for 25+ years, I now treat it like country and western music. Just about everything has already been thought of and coded. You just have to change around the chords and the words a little and you’ll have a hit.

    Don’t waste time writing code that has already been written. Learn to use and integrate technologies.

  58. Thanks for the post Jean. I am approaching my 41st birthday and have been wanting to learn some basic coding for quite awhile. I am been slowly building up my confidence by using CSS, HTML, XML and working in the back-end of Joomla. I took a BASIC class in high school and literally had to audit the course b/c it was killing my GPA! Now I look back and laugh at how intimidated I was. I have spent over 15 years in IT/support, so that has all helped me move forward with my plan. Thanks for the encouragement Jean!

  59. I have to agree with Chris. I enrolled at University to study computer science at 25, even though I was never technically or mathematically inclined. I finished my degree at 28, after failing many papers and trying and trying again. I am now 34 and looking at all options how to escape the coding and technical world. Why? Because it is not what I am naturally good at doing.

    There is much more value to be provided by non-technical people, in non-technical areas. Don’t bother learning to code, unless you find it natural and easy to do.

  60. Unique article.

    I’ve started learning programming When I was 15 years old and Why because I love it to do and there is nothing more fun then doing programming now I’m 19 and I was earning money If I’ve not learned the programming at that age and instead stick to the bio I would be living in boredom

  61. 你能看懂中文吗?
    我是一名二流大学生,目前大三,想学习编程,但是有好多种语言,让我无法抉择。我知道其实任何一门都很好,但是我还是想学好一点的,我的老师现在要我学习.net技术,可以嘛?

    • I can read Chinese but it’s much faster for me to type in English =). I think it depends on what you want to do, and I’m not sure what the courses are like there. I’ve heard amazing things about python. Of course if you’re looking into mobile, Java or Obj-C would be good.

  62. i am a university student,my university is not vey well in china,i am a student in computer college science and technology .but i have not learnt lots of useful skills,i really don’t know how to start the way7 of my study,can you give me some suggestions.thank you! looking forward to your reply!

  63. I’ve given up programming years ago thinking I couldn’t compete with others as I get older. This still applies, but on the other hand, as your article mentioned, there is an excitement that something finally works after hours of struggling/exploring. I guess this is why the programmers can work 24/7

    For those who want to try programming, go with tablet or phone. These programs are usually simple and fun to play around, which should be a good starter. Plus you can easily share with your friends too.

    Lastly, thank you so much for the Stanford link. Much appreciated!!

  64. Thanks for your enthusiastic help, really inspiring.

    Greetings from Buenos Aires.

  65. Pingback: Day 1: Free Stanford Intro to Computer Science Courses « TreeCoder

Leave a Reply

Required fields are marked *