July 30th, 2012, 11:48 AM
Help getting started in programming [was: Help]
my name is Danijel, I just turned 22 and I'm from Croatia - currently attending the Faculty of Food and Biotechnology.
I'm new to this site (and to programming in general) and I'd like to ask you a few questions.
What do you think, is it too late for me to start programming; how much time (approx.) would an average person need to become a proficient programmer?
Also, I'd like to know how and where to start. I'm asking this because I want to quit college and focus 100% on programming.
Hope you understand everything and thank you in advance.
P.S. Please answer honestly (without lying and comforting)!
July 31st, 2012, 07:53 PM
No, 22 is not too late. Most programmers probably do very little if any commercial programming until around that age. So, 22 isn't too late to start out. I wouldn't recommend quitting college to focus 100% on programming, but do it alongside college. You may need something to fall back on if you find programming too complicated. You could always quit once you're confident your future definitely resides in programming.
How and where to start... it depends what you want to do with your programming. You need to research into what kind of programming does the kind of thing you want to do. If you want to build software that controls robots, then you need to find out what programming language is typically used to do that... if you want to build iPhone apps then you need to find out what programming language is used to do that.
Once you know what you want to do with your programming, and what language(s) you need to do that programming, then find some online tutorials, or a basic book, and start reading from the start. Make sure to try the examples, and learn through practice.
When you feel that you understand the basics, try challenging yourself. Decide on some functionality you want to achieve, and try and make it happen. I've often found that the questions people pose on this forum are useful for providing those challenges... pick something of interest, and write something to answer the question. If it's already answered, then take the answer and see if you can do it in a better way, or with cleaner code.
Time... that's a tough question. Everyone learns at their own pace, and it depends what you mean by "proficient". It also depends upon the type of programming. Java may take a few years of practice to become proficient enough to get that first job, PHP will take less.
Originally Posted by BrainDis
August 6th, 2012, 09:29 AM
As binky already said, it depends what you want to do. There are several skills involved here, the first of which is the ability to think logically and to analyse what it is you're trying to achieve.
For example, if you're interested in numerical algorithms there's no need to get bothered with graphics. There are many traditional languages that can be run directly from the command line (Linux is usually better than Windows for this). All you need is a notepad to edit the code.
After that I would recommend Java, mainly because an IDE (development environment) like Eclipse offers superb facilities for helping with the syntax, for single-stepping and for debugging. There's a lot to learn before you'll be doing much more than outputting your own name, but there are plenty of books and online help.
If it's graphics you're after you'll find it harder going as there are some really complex things going on. To get a feel for the processes involved (and find out if you have the right kind of mind) it's not necessary to learn C or Java; the core skills are really quite independent of the syntax. If you have an Android phone may I suggest my own product, EasyCoder (sorry, as a new member I can't provide a URL but it's in the Play Store), which is written to be suitable for beginners and which you can use to write visual apps from the very start. Everything runs on the phone itself; there's no development system to learn and you can always ask me for help.
Whatever you decide to do you'll need plenty of patience. Give yourself time; don't set deadlines. If you've found your natural calling you'll know it, but this may take months. In terms of motivation, programming is very rewarding, so expect to eventually be having fun. If you don't you'll know to look elsewhere for a career change.
August 14th, 2012, 09:00 AM
Im as well, new here, but not that new to the programming world, however i got inspired with your replies, Thanks alot
August 15th, 2012, 08:49 AM
It's never too late to do anything with your life, especially something entirely mental like programming.
Proficiency can come as early as 6 months, or it could take years. Count on it taking a few years. Remember also, your competition in the job market are mostly formally trained programmers who also program as their hobby.
Solve interesting problems, or do something useful for yourself. Make yourself a data-driven application that you'll actually use. Make a note-taking app, a workout tracker, an address book, a database for a personal collection, or whatever else you think you'll use. Continually improve it. Sure, you could use google or flickr or whatever, but do it yourself.
Don't do that, a degree is still very valuable in the job market.
HEY! YOU! Read the New User Guide and Forum Rules
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin
"The greatest tragedy of this changing society is that people who never knew what it was like before will simply assume that this is the way things are supposed to be." -2600 Magazine, Fall 2002
Think we're being rude? Maybe you asked a bad question
or you're a Help Vampire.
Trying to argue intelligently? Please read this.
November 1st, 2012, 05:25 AM
hi i'm also new to programming. I'm an electronics engineer, 28 years old and already have a job as a technician for computer repairs, cameras, monitors and other consumer electronic products. Ever since I've always been curious about what programmers actually do. I had always this idea that programming is really hard and only super smart people can do it.
I've been studying C language for about a month now, just trying it out. Studying it reminds me of my programming subjects during college days. I haven't learned much during that time and also i forgot everything about it since that was so long ago. I do self studying right after work or during my day off. Somehow i begin to enjoy it. It's better to try something than doing nothing at all and it feels good to know that you are improving at it. Im planning to continue studying and will try different language. Also, I did some research on other programming languages and download eBooks and tutorials.
Im quite confused, i want to try them all for me to decide clearly on what will i choose but i will take more time. I need an advice from experts to elaborate their differences and probably a good line up or a good set of programming languages which are quite related.
i just want to ask if how good must anyone be in order to get hired in a programmer position.
November 1st, 2012, 12:10 PM
Don't try to cover everything
If you want to learn for its own sake, try a bit of everything. But if you want to be employed quickly it's best to focus on just one or two areas. Get good at one language and it's much easier to learn another.
C++, C#, Java and PHP are all similar in many ways. The big differences aren't in the languages, they're in the programming environments and the libraries you'll need to use to achieve anything significant.
Try to decide if you want to be a front-end (user interface) or back-end (website, database etc.) expert. You can do both but it's unlikely you'll ever be the best at either. In the Java and C worlds most of the jobs are for back-end programmers, so GUI experts find it hard to get a job, but when a company wants one there are none to be found as there are relatively few of them. In PHP maybe it's a little different since the job of PHP is mainly to generate GUI screens.
How good do you need to be? The best, of course! As in all walks of life competition is steep during a recession. Though programming skills are still more in demand than many others, so it's a good profession to go into if you're suited to it. And unlike brain surgery you can learn at home. In fact, that's pretty well essential; it proves you have the motivation and the ability to find out how. Get some projects under your belt and get them on your resumé. And don't give up; quitters don't make programmers.
November 29th, 2012, 10:19 AM
Hello. Thank you for the wonderful reply.
With the plan of learning C, C++ and Java in series, i am still stuck at studying C now. I would just like to ask if how long must i stay w/ C before proceeding to C++? I was about to study C and C++ together but someone advised me that it would be a bad idea since both programs are closely related. And that it is better to stick with one language first to avoid getting confused.
Even with this, I am still not comfortable with studying C alone. If i get stuck at some point, i want to do something else. Probably I'll study other stuff, then after i clear my head and willing to try it out again I'll go back to that part.
November 29th, 2012, 10:41 AM
I didnt even learn C, I started with C++ with my masters degree,
First i would say stick with one language, and maybe look into programming principles.
If you get stuck you cant just give up and do something different. however if you do struggle with attention span etc(we all do at some point) then you can just attempt a different problem within a different aspect of the language.
Learning is not a single linear path.
Once you have learnt one language well, a lot of the basics for the other languages will come very fast.
However if you try and learn multiple you will spend too long getting confused with the slightly different syntaxes instead of the basic principles you need to know
December 7th, 2012, 08:07 PM
Hi im am very new to everything including this site. Like the others i basically just want to know where to start. Im looking to make an phone app and also an website. I pick up things very fast and i have done a few things nothing major very beginner things,and few pointers directions about software,books,websites, or anything would go along way in shorting my learning curve so that i can really get started.
Thanks in advance for your time