Techzim

Zimbabwe and regional technology news and updates

advertisement
advertisement

RECHARGE

Nyaradzo logo

The 20 tips for aspiring developers

Developers at a tech event in Zimbabwe
Developers at a tech event in Zimbabwe

Who wants to be a developer? Here are a few pointers from my own personal experience….nothing from Google.

  1. You don’t have to be super intelligent to be a developer
    In fact i feel as if my IQ got better the more i exercised my brain muscles. So for me intelligence is a product of programming rather than programming being a product or result of intelligence.
  2. Age is not an issue
    I know many super coders who started at 40 and didn’t even go to college.
  3. I also felt like giving up when i started
    I think i swore a couple of times and told myself the stress was not worth it…….But then again the more it gets complicated for you, the more awesome you feel when u finally solve the problem.So when a piece of code is not working and it’s taking literally two days to get a solution, just hang in there because the longer it takes to solve a problem no matter how many times, the more you will rejoice when you finally solve it.
  4. DO NOT listen to those loud mouth programmers who go on and on about which is the best language
    Or those show-offs who tell You how they can improve your code. Yes there is always a better way to do anything and yes advise is golden. But when you are starting off and you know it, you really have to stick to the basic thing that works.When the basic solution is now as easy as ABC and you understand it inside out, only then can you move to the more elegant, efficient and cooler way of doing something. My golden rule…..MAKE IT WORK FIRST, THEN IMPROVE IT LATER. 
  5. Try to solve your coding problems alone
    ..stay away from Google, stackoverflow and experienced developers. Its better to stay up late trying to figure out why your code is printing “hello world” twice instead of once, than to be spoon fed with the solution.The more you struggle on your own and eventually come up with a solution, the more awesome and confident you become.
  6. I recommend QBasic to start with or maybe good old C.
  7. Reading a book from cover to cover is a serious waste of time
    Programming is like football, its all practical stuff from day one. You don’t learn to be the next Danny Welbeck from reading dummies to football in 30 days…and yes i am a Gooner.
  8. Stay up late as often as possible
    Maybe once in a while go through the whole night without sleep, it will boost your confidence believe me.
  9. The fun with coding is in problem solving
    So be stingy with your problems and get to feel soooo good when u solve them with little or no external help.
  10. Learn one language
    Get to a point where you are productive with it. Then believe me, you will be in a position to pick any other language you want. Just GET GOING with the first one.
  11. You will never be super awesome
    How long does it take to be super awesome…errrm you will never be super awesome and you will never get there. Coding is a life-time learning process. Everyday of your life you will seek new challenges and you will learn new technologies.
  12. What resources do i need to join this awesome and well paying trade?
    Don’t believe the hype about super fast Intel (core i-what what) machines. QBasic or C languages, which give a very good foundation, need a simple Pentium I desktop machine with 64 MB memory and 3 Gig hard-drive, even with windows 95, 98 or XP.
    I recommend this type of machine not only because that is what i was using in 2006 to learn programming but also because its perfect for coding with those 2 languages and that is just about the only thing you can do with it. So every time you boot-up your machine u know you can’t watch a movie, you can’t play FIFA and you are always running out of space on your hard-drive, the only thing that you end up doing is coding.
  13. Do i need internet? Nope
    Because the internet will spoon feed you with ready made solutions to your problems, making you just a copy-paster rather than a coder.
  14. Web, Desktop, Mobile apps where do i start?
    Just get going already.
  15. Is programming profitable?
    Well actually if you find yourself asking yourself this question only then should you realise programming is not for you.
  16. Qualifications?
    Actually you need three things (i) A valid birth record (ii)Patience (iii)A lot of curiosity. With these three you can get a job ahead of someone with a Phd at Google or Facebook….Yeeep! they don’t care about qualifications, only what you can do with a keyboard in front of you.
  17. Do i need to be good in Mathematics? Absolutely NO!
    I sucked in math in school. Maybe it’s because Mathematics on its own really sucks. But when Mathematics will make your Mario game character jump up over a Piranha Plant, BELIEVE me you will get the equation just right.
  18. No matter how small your piece of code or program understand every line that you typed in
    Understand its contribution to the whole program. THIS IS VERY IMPORTANT. Do not rejoice when the code runs but you really don’t understand the purpose of the ‪#‎include‬ statement that is at the start of your code.If your code runs and you get the results you expect, you should also be able to explain to your friend in plain English what each line from line 1 is doing right up to the last one.
  19. DO NOT procrastinate start now
    Get all the tools you need. Programming software like QBasic and C is free and should be the size of an mp3 song. you only need to buy a $50 P I machine (of which 50 bucks will be a rip-off)
  20. Finally when you start getting the hang of it, be a modest programmer
    Even when people call you Bill Gates or Mark Zuckerberg or the next Steve jobs. NEVER Admit you are any good. If you are modest, naturally you always seek to improve yourself and you will not sit on your current abilities and lie to yourself you are a genius. Genius programmers don’t exist…its a myth.

This article was written by Luke Madzedze, Founder and CEO of yFLix. Luke is an avid developer who eats, lives and breathes coding, tech and everything Arsenal FC related. You can contact him on lukemadzedze@gmail.com or Skype him on lukealvin13


Quick NetOne, Econet, And Telecel Airtime Recharge

11 thoughts on “The 20 tips for aspiring developers

  1. 4)DO NOT listen to those loud mouth programmers who go on and on about which is the best language: – sometimes you need to listen otherwise you will start programming in obsolete languages like Basic, COBOL, LISP
    7)Reading a book from cover to cover is a serious waste of time : – sometimes you need to know the basics in those books
    8)Stay up late as often as possible: – UMMMM – thats a bad advise, if you know what you are doing you dont need to stay late… efficiency, efficieny, efficiency
    13)Do i need internet? YESSSSS – you dont need to reinvent the wheel… reuse of components and classes, that where programming is heading
    17)Do i need to be good in Mathematics? YESSS – you are in a better position to grasp the programming constructs and semantics if you are good at mathematics. for simple programs, you may not need mathematics, but if you have ever developed a complex system you will appreciate the need to know your algebra
    16)Qualifications?: YESSSS you need a qualification. A university qualification teaches to think… after all programming is about problem solving which is what you learn at university

    1. LISP is not obsolete as far I am concerned because a good portion of what makes a lot of languages today “modern” has been a part of LISP from day 1. LISP is not just another language. LISP is a concept and besides it doesn’t matter what language you write in. What matters is what you have done with it.

      Just to add to your Mathematics assertion, without a good mathematical aptitude you can forget recursion, pointers and anything to do with functional programming.

      On the university qualification, you do not need university qualifications but you need university enlightenment to upgrade from just being a programmer to being a computer scientist or a software engineer.

  2. As stated mathematics is no necessary but it does help in quite a number of situations.

    Programming is easy but in some cases there is a tendency by programmers to impose solutions on users and always important to understand what exactly what users want and it’s prudent to do a through R&D (research & development).

    1. Writing a series of programming language instructions is easy.

      Writing good code (aka elegant, maintainable, scalable,readable and following best practice) is another entirely different matter altogether.

      1. Cowboy coding is easy. CRUD applications are easy. I guess the article does exactly what it says on the tin (for ‘aspiring developers’).

        However, I am looking forward to a follow-up article on “Tips on being a good/decent developer”, with topics that include
        – maintainability
        – appreciation for Maths (those ‘difficult’ SQL joins become easier to write when you have a solid grasp of Set Theory)
        – A good book/course on data structures & algorithms is requisite
        – software in the real world (project mgt-lite)
        – revision control
        – what is the SDLC: a primer. Bonus topic: how to do deployments correctly.

        1. I agree. However, “best practices” are not to be followed blindly. The only best practice is reusable, efficient and bug-free.

  3. Mudikani, usanyepere vanhu

    Go back to writing 1st year programming problems, because clearly you are yet to do real life projects. One does not simply learn to program without studying and practising, A LOT

  4. This article is not about full time programming, it’s about those who want to start somewhere, one must start somewhere then they can start asking around something they have a small idea about. Its good to pursue a degree, and mathematics, but sometimes with those qualifications we are not to discourage those who start without them. Remember at school you get programmed, the best is to be a product of your own thinking. Educated people lets stop stalling development in this country by limiting people by their educational status all we need is analytical and inovative thinkers not degrees.

  5. Good article as a programmer myself i do appreciate when such articles are written but i don’t agree with some of the points.
    5. Stackoverflow… This is a necessity for any programmer except if you think you are super programmer you can do it all on your own.
    7. Reading books. Man this is serious how can you be a programmer without reading any books its like expecting a kid to pass form 4 without reading any books. Honestly haven’t you read any programming books… Those dummies…
    13. Do i need internet? Yes again except if you plan to write those form 4 computer science projects which just sit on your computer.
    17. Do i need to be good in Mathematics? Absolutely NO! Man that is wrong i guess it should have just been NO. Absolutely no just loosen’s up the tread. One thing i was taught in my first year is to be proud of tread. Besides if you are not good in maths hahaha u’ll probably play around CMS and tell yourself that you are programmer.

    But well said its a good article.

  6. I usually avoid commenting on ignorance, but this time TechZim you have crossed the line. The author doesn’t understand the purpose of a university degree. It’s meant to teach you to think and avoid writing such ignorant articles as this one. Don’t mislead people. Talk to real developers before writing future articles.

Comments are closed.