can you get good at programming in one year?

by 0oo0
35 replies
OK I have a basic question, Can you get good at programming in one year?

And please don't give me that stupid well we all know the 10000 hour rule... because...

one: it's not true

two: I'm not looking to become a MASTER just be good enough.

Can anyone answer this for me?
#good #programming #year
  • Profile picture of the author NuZu
    Good enough for what? Try to be a little more specific.

    Short answer is you can be as good as you want to be. How much are you willing to put in to it?

    Check out Code Academy for starters. You will need to decide what language you want to learn and then dive in head first.
    {{ DiscussionBoard.errors[6883208].message }}
    • Profile picture of the author Brandon Tanner
      "Good" is a relative word, of course, so it depends on exactly what your idea of "good" is. You can learn a LOT in one year, no doubt... but at the end of the year, there will still be a LOT that you won't know (regardless of which programming language you choose)... so it's an ongoing process.

      Think of it like learning a foreign language... no matter how long you study a new language, you will never learn ALL of the words in that language. Of course you'll be able to communicate basic ideas within a relatively short period of time, but it will take years of committed study before you even come close to "mastering" a language. Same thing with programming.

      That said, I think that a decently smart person can learn how to develop simple to slightly complex programs/scripts within a year. So it really just depends on the type and complexity of the programs you wish to create.

      My advice is to buy at least 3 or 4 different books about the language you want to learn. Because oftentimes a specific concept won't make sense to you in one book, but it will make perfect sense in one of the other books. And vice versa. So the more ways that you can have a difficult topic explained to you, the quicker you will understand it.

      Also, if you're more of a "visual" learner, then check out video tutorials at places like Lynda.com, VTC.com, etc. I've purchase several video tutorial courses from VTC... great stuff.
      Signature

      {{ DiscussionBoard.errors[6887229].message }}
  • Profile picture of the author johnpea
    Yes - if you do a bit of programming every day then you can become reasonably competent in most languages within a year.
    {{ DiscussionBoard.errors[6886930].message }}
    • Profile picture of the author spradlig
      I'd agree with this assessment. I'm self taught in PHP mostly from the PHP.net site. If you are building anything for public consumption - i.e. not on your LAN - then I'd start by giving yourself at least a couple of days to become familiar with the security concerns of your language of choice. SQL injection in particular. It's much easier to simply build your base tools - like a Data Access Object - with security in mind and use that secure tool/class than it is to constantly have to add the security into each and every function.
      {{ DiscussionBoard.errors[6893587].message }}
      • Profile picture of the author spradlig
        I'd agree that you can become reasonably competent in a year in any language you put the effort into. It's not going to happen if you just spend a couple of hours on the weekends but a couple of hours 5-6 days a week will have you proficient in the areas you use the most.

        I'm self taught in PHP mostly from the PHP.net site. If you are building anything for public consumption - i.e. not on your LAN - then I'd start by giving yourself at least a couple of days to become familiar with the security concerns of your language of choice. SQL injection in particular. It's much easier to simply build your base tools - like a Data Access Object - with security in mind and use that secure tool/class than it is to constantly have to add the security into each and every function.
        {{ DiscussionBoard.errors[6893613].message }}
  • Profile picture of the author FirstSocialApps
    Yea It depends on what you mean by 'good' .. what are you trying to do? Good enough for a website? Good enough for a RIA (rich internet application). I have been coding for 7 years and I still learn things ... I spent 4 months just learning the Facebook Graph API inside out and backwords .. but within just a year you could be writing reasonably complex , medium size scripts with proficiency if you work at it.
    {{ DiscussionBoard.errors[6887655].message }}
  • Profile picture of the author rajeevrla
    surely. 1 year is a lot of time and if you'll work consistently you can master from basic to advanced concepts. Start the programming and try to work on live projects as soon as you can, it will teach you a lot.
    Signature

    Have a great day!

    {{ DiscussionBoard.errors[6888031].message }}
  • Profile picture of the author wayfarer
    Why would you want to learn programming, but not become a master? Don't you want to excel at what you do? If your goal is just to get a job, that's fine, but don't think your mission is accomplished just because you meet that goal.
    Signature
    I build web things, server things. I help build the startup Veenome. | Remote Programming Jobs
    {{ DiscussionBoard.errors[6888187].message }}
    • Profile picture of the author mojojuju
      Originally Posted by wayfarer View Post

      Why would you want to learn programming, but not become a master?
      I don't think it's necessary to become a master at everything I pursue and I'm sure, positive, that you're not a master at everything that you do.

      It's fine to learn a skill and not attain mastery in it. For instance, I know how to sew well enough to attain the goals I had when I learned how to use a sewing machine. I can also repair my car, but I can't repair every car, and I can't tune Indy cars for performance. And I'm fine with that. I can read and write too, but I will never win a Pulitzer.

      Maybe OP just wants to get some basic programming skills under his belt. Many people's goals can be accomplished without mastery.

      Not everybody who learns programming is going to become a master. Not everybody wants to. Not everybody needs to.
      Signature

      :)

      {{ DiscussionBoard.errors[8154514].message }}
  • Profile picture of the author whiterock
    It depends how good your logic is and what type of programming background do you have. Accordign to me you can learn little programming in one year but you cannot be master
    {{ DiscussionBoard.errors[6889300].message }}
    • Profile picture of the author Liran Williams
      Yes it's surely possible... Length of time is not as important as how much practice you put in. When I was 16 I picked up one of those programming in 24 hours books, and I went through it many times.

      I have a real passion for creating applications and programming, and I feel that is really an important trait to possess. When you love something you put more effort in to that task, it's much more fun and the result is usually much better.

      So if you want some advice... I would say you need to do 3 main things.

      1. Get some good resources. Books, Video tutorials, websites, forums.
      2. Get a few mentors. If you get stuck, it's much better to ask for help than to smack your head against the wall 50 times. You should get mentors at different levels. Some who are just a little better than your level and others which are at the top of their game. You don't want to be wasting the advanced mentor's time over simple basic questions.
      3. Practise, practise, practise... Code tools that make your life easier. Code basic fun useless apps. Code to explore.

      Just have fun coding and you can become very good in a very short amount of time. If you put in enough effort and you're a natural you could achieve your goal in a matter of months. However, if you don't put enough effort in to it, it could take you years and you still won't be good at it. I hope that helps. :-)
      {{ DiscussionBoard.errors[6889759].message }}
  • Profile picture of the author programmerscott
    you can become a programmer in a year, but definetely not a good one
    {{ DiscussionBoard.errors[6890968].message }}
  • Profile picture of the author Johnnsonap
    depends on how much smart are you . some people can do It, some people can . if you are smart enough and spend lots of time in the next year ( like around 6 hours per day ) you'll become a good programmer in some areas
    {{ DiscussionBoard.errors[6891420].message }}
  • Profile picture of the author umbraco01
    Yes , 1 year is an big duration we can learn and get experience if you use properly.
    {{ DiscussionBoard.errors[6891927].message }}
  • Profile picture of the author kyle8820
    I don't want to disappoint you but It's impossible if you don't have any experience in programming . It took even the most intelligent programmers more than just a year to become a good programmer . you need to practice a lot, at least 4 years
    {{ DiscussionBoard.errors[6892640].message }}
    • Profile picture of the author wayfarer
      Originally Posted by kyle8820 View Post

      I don't want to disappoint you but It's impossible if you don't have any experience in programming . It took even the most intelligent programmers more than just a year to become a good programmer . you need to practice a lot, at least 4 years
      That may be true if you're talking about calling yourself a real Software Engineer, but if all you want to do is make some basic web-apps, and this is considered "good" enough, you don't need nearly that much time. It's a lot easier to get started on the web, though it still takes some diligence to get there.

      On the flip-side, it would be foolish to think that a single year is nearly good enough for you to be anything other than a junior developer. It really takes upwards of 10 years before you become truly senior, because there are so many things to practice and get good at. Even after this period, it would be madness to think you will stop learning. Learning seems to me the very definition of the job.

      I'm sitting at approximately 5 years of professional experience now, and I learn new things every day.
      Signature
      I build web things, server things. I help build the startup Veenome. | Remote Programming Jobs
      {{ DiscussionBoard.errors[6893451].message }}
  • Profile picture of the author troy23
    It depends which route you take.

    Web programming has more things to learn and you need to have a good handle on each of them.

    -html
    -php
    -asp
    -xml
    -javascript
    -sql


    For Windows programming it's mainly the language you need to learn.
    In my case it's VB.Net, but others may choose C#.
    Also you may need to learn how to use the backend SQL database.

    I've done some web programming, but I prefer Windows programming because there is less I need to know.
    {{ DiscussionBoard.errors[6892832].message }}
  • Profile picture of the author GFI
    Definitely dear, one year is enough for learning programming, if you are a hard worker then you can do.
    {{ DiscussionBoard.errors[6893000].message }}
  • Profile picture of the author Gail.Tennessee
    I know this is an old thread but I thought this was an interesting enough question to make a comment on.
    The first thing that comes to mind is what "you" OooO, wants to accomplish by learning a programming language. Is it to be proficient enough to provide a service or to create something like an app or software or...
    The next thing that came to mind was... Unless "you" have a burning passion for doing something/anything, it's going to take longer and be a lot more boring and tedious than doing things that you enjoy.
    So... "you" may want to consider learning how to do or improve on the skills that you already have and love and outsourcing or partnering with someone that already has those skills that you do not.
    I purchased a course from Alex Jeffries a while back (No. I'm not an affiliate) that stopped me in my tracks of trying to learn everything about everything in IM before I launched our company's site. Alex showed me what a HUGE mistake I was making. HUGE!
    I jumped into doing what I liked best and outsourced all sorts of stuff I never wanted to do in the first place and... tada... Our business is thriving.
    I know lots of people with loads of talent and some with a PhD, that are struggling to make a living. I also know people that are dyslexic and barely made it through high school that are millionaires.
    We are a wonderful complexity that can do more than we will ever fully realize.
    My point is that there is no relation between knowledge and action.
    Unfortunately, there are too many unfulfilled lives that know much about many things but take very little action to accomplish anything at all.
    Psalm 139:14 in the Bible says that we are "Fearfully and wonderfully made"
    No doubt you've also heard "we can accomplish anything we set our minds to"
    The questions still remain... Why and how much do you want to?
    {{ DiscussionBoard.errors[8153846].message }}
  • Profile picture of the author 1stranked
    I guess that depend on person itself. Someone can learn faster than others. However, note that programming can't be "learned" - even when you think you know enough there will always be something more to learn.
    {{ DiscussionBoard.errors[8153939].message }}
    • Profile picture of the author nightstorm
      Yes its possible to be good at one language (but difficult if you don't have any experience in programming) but i think it takes longer and experience of multiple languages to be really good.

      However, note languages and software development are different things you can be great at writing code in a particular language but suck at designing and building good software. Software development is a subject in its own right.
      {{ DiscussionBoard.errors[8154132].message }}
  • Profile picture of the author seasoned
    Well, troy IS right that you should learn more things with web programming, assuming that you ALSO use SQL with client or stand alone software.

    OK, so I have established you should write to SQL. Otherwise, you must learn about locking, race conditions, etc....

    asp must be learned ONLY if you use M/S IIS server or similar. So you can FORGET that!

    XML is good to know, but not NEEDED.

    Javascript is good for client side functionality. Otherwise, you don't need to know THAT either! BTW, to M/S junkies, Microsoft wanted to kill javascript ALSO! So their johnny come lately attempt was VBS! Eventually, they were FORCED to capitulate and accept NETSCAPES javascript.

    PHP is only needed if you will be programming in PHP. It IS one of the more popular ones though, and more popular than VB or C#. BTW C# exists because Microsofts attempt to take over Java failed after SUN hauled them into court. That is ALSO why J++ isn't around anymore.

    and you certainly SHOULD know HTML, regardless.

    Can you learn to program in a year? Certainly. It is best if you have good examples, an aptitude, and a PASSION. BTW an hour WITH an aptitude and passion is FAR better than 100 hours with no passion or aptitude, The 10,000 hour rule is STUPID! MANY work over 10,000 hours on things and get NOWHERE! ALSO, you probably want at least 2-3 daylight hours to be productive. Otherwise, you will forget, lose the habits, etc.... 10 hours a week can get you far and will certainly get you farther than 10 hours a month!

    BTW 10 hours a week is only ~520 hours a year.

    Steve
    {{ DiscussionBoard.errors[8154805].message }}
  • Profile picture of the author ColorVila
    Focus only on one area, for example css/html/php or C#/.net or Java...
    Do some projects again and again is the key, the improvement of your skills comes from solving all kinds of problems.
    Good luck!
    {{ DiscussionBoard.errors[8154956].message }}
    • Profile picture of the author Jasmn
      OooO,
      I'm curious...It's been over two years since the original question has been presented. What was/is your experience in the process? What are some tid-bits you can offer the next newbie who wants to be be efficient enough in software programming in a designated year?
      What have you encountered that was easy/difficult, etc...
      {{ DiscussionBoard.errors[8194438].message }}
  • Profile picture of the author SergioFelix
    1. The 10,000 hour rule is NOT stupid.
    2. You can learn how to create your first complete program today.
    3. What you will be capable of doing in one year will depend directly from how committed you are and what you want to accomplish.

    And please don't give me that stupid well we all know the 10000 hour rule... because...
    That mindset is not going to take you far, I can tell you that in advance.
    Signature
    My Zero To Hero Marketing Blog
    MarketingWithSergio.com
    {{ DiscussionBoard.errors[8195370].message }}
    • Profile picture of the author seasoned
      Originally Posted by SergioFelix View Post

      1. The 10,000 hour rule is NOT stupid.
      2. You can learn how to create your first complete program today.
      3. What you will be capable of doing in one year will depend directly from how committed you are and what you want to accomplish.



      That mindset is not going to take you far, I can tell you that in advance.
      40 hours a week, 10,000 hours is about 4.8 YEARS. The average worker with a strong passion would then take about TEN years to learn it. The average person with a little passion would take TWENTY years. OK, WHO came up with that rule!?!?!?!? BTW this means that a surgeon should wait about 20 years before they operate on a living person. After all, they won't have that much time to practice, etc.... And I guess it takes a person about 20 YEARS to learn to speak, about 20 years to do math, etc....!

      Steve
      {{ DiscussionBoard.errors[8195814].message }}
      • Profile picture of the author SergioFelix
        Originally Posted by seasoned View Post

        40 hours a week, 10,000 hours is about 4.8 YEARS. The average worker with a strong passion would then take about TEN years to learn it. The average person with a little passion would take TWENTY years. OK, WHO came up with that rule!?!?!?!? BTW this means that a surgeon should wait about 20 years before they operate on a living person. After all, they won't have that much time to practice, etc.... And I guess it takes a person about 20 YEARS to learn to speak, about 20 years to do math, etc....!

        Steve
        Here you go buddy! ;-)
        Signature
        My Zero To Hero Marketing Blog
        MarketingWithSergio.com
        {{ DiscussionBoard.errors[8197749].message }}
        • Profile picture of the author crescendo
          Definitely you can learn of things about web programming in one year only if you work hard and do projects,it will improve your skills.so keep practicing you will come to know about many things and how too solve problems.
          {{ DiscussionBoard.errors[8199526].message }}
        • Profile picture of the author seasoned
          Originally Posted by SergioFelix View Post

          Here you go buddy! ;-)
          WOW, what examples! Jobs and kutcher were much at the last, as they were at the beginning. And mastery, whatever that is, is certainly more than understanding and ability.

          As for the beatles? 1200 concerts? REALLY? They played unique tunes they developed on the fly for over 8 hours at each concert? I doubt it. BTW they generally say you can learn something after 11 attempts and that it can become HABIT within 500. So playing a concert, as the beatles did in that stretch could get the songs down. But teach musical theory, etc? NOPE!

          Steve
          {{ DiscussionBoard.errors[8200798].message }}
  • Profile picture of the author wayfarer
    Before we all argue about this any more, I suggest you all read this article by Peter Norvig:

    Teach Yourself Programming in Ten Years

    It's one of my favorite articles about programming of all time. I don't think anyone is saying it takes 10 years or 10,000 hours to achieve basic competence, but it certainly does to achieve something resembling mastery. Of course most people never achieve mastery, but that is another story...
    Signature
    I build web things, server things. I help build the startup Veenome. | Remote Programming Jobs
    {{ DiscussionBoard.errors[8197021].message }}
  • Profile picture of the author TheApex
    In one year, you'll definitely learn something about programming, so you'll probably have a basic understanding of the code. But if you're a complete beginner, I think it's gonna take more time...

    Many people can learn programming, and make a program that "works" but very few know how to actually "write" / organize their code. Also, it's quite difficult in one year to learn all the tricky parts (security, efficiency, etc.) - those usually require time and experience. Usually you can tell if a programmer is good or not by looking on the source code he wrote.

    The somehow concludes basic programming...then there are APIs & Frameworks that you might also need to know...

    Anyway you can test your knowledge by trying to write applications similar to those you know you'll have to develop as a programmer - not writing the entire application, only the parts that seem difficult.

    As a short answer...I think it takes more than one year.

    // this is just my opinion, maybe it's wrong...maybe it isn't...
    {{ DiscussionBoard.errors[8201272].message }}
  • Profile picture of the author shivlal829
    yes programming is ongoing process it comes with your practical knowledge and practice, more and more practice help you to become master of programing.
    {{ DiscussionBoard.errors[8202466].message }}
  • Profile picture of the author PaidAllDay
    I think you can get good at programming in one year depending on how hard you work at it and how much time you put into it. I do believe that it takes quite a bit of time to learn best practices and what separates good code from average or even below average.

    Most programmers are just average, especially if they do it just to earn a living, but if you really have a passion for it you can get good. Now how much time does that take? Hard to say, but I think I did it for about 5 years before I started to feel like I was on another level.
    {{ DiscussionBoard.errors[8202514].message }}
  • Profile picture of the author htmlthis
    Yes, from my experience one year is plenty enough to get started in any programming language. But keep in mind that you would need to code everyday for at least a few hours!
    {{ DiscussionBoard.errors[8202822].message }}
  • Profile picture of the author euraffiliates
    It totally depends on your prior theoretical knowledge (ability to use basic programming keywords like if/then and database structure) basic logical sense and dedication. Without these two you can never become a programmer. I can remember, when I started learning programming back in 1996 I use to leave my office at 11-30 to 12 at night and catch the last train. I had no engineering degree or IT training. But I could learn and later many engineering guys learnt from me in my organization.I It took time for me as I started from scratch and had no teacher.

    But to be a good programmer I think one year is not enough. I have seen the learning curve in my organisation in last 10 years. Normally they become good programmer suddenly after 1.5 to 2 years of solid experience (8 to 10 hours work per day). Good programmer means ... they understand the business logic defined by a customer and can implement the idea. But they all join my company only after having basic theoritical knowledge.

    I will suggest you to take a personal training (not institute) to avoid time wastage. If you have the basic logic sense, prior knowledge in programming and database structure / relationship you can be a good programmer in 1 year provided you give full effort.

    You should master one language first. Next language can be learnt in 1 month only, provided you are master in one language.

    Thanks
    Lutfal
    Signature
    Euraff - Next-G Affiliate Software. With all advanced tools. Know Source and Keyword behind every Non Affiliate Sale and Lead too. Automate 'Revenue Sharing Deals' with your Suppliers and JV partners. Special Edition for Multiple Website Owners. 30 days Free Trial!
    {{ DiscussionBoard.errors[8209352].message }}

Trending Topics