Ok so I just finished a computing course at college (UK) and am looking to carry on my studies at University, although I still feel a noob when it comes to programming etc, is there any advice that anyone could give me to help me get started in this field while i'm on my gap year working in a office, as i'll have a lot of time to study at work and at home.
Take a look at Microsoft Visual Studio Express. There's a free version, and C# and C++ in particular are extremely valuable (as they're amongst the most popular development languages for the mainstream). I'll tell you right now you should try to pick a language that's popular and well supported unless you're absolutely happy with developing on your own and potentially not making money from it. However, try to also pick a language that YOU think you'll be able to understand.
For example, i understand Object Pascal, Delphi to be specific. I find it simple to understand, though there's 2 different frameworks for Delphi. One is VCL and creates traditional "grey window" desktop applications. The other is Firemonkey and creates completely customizable styled applications for both Windows, OS X, and iOS (though the latter 2 need a Mac). I originally worked with VCL (due to it being the only framework for Delphi) but Firemonkey allows me to focus more on creating intuitive designs. I wouldn't recommend Delphi due to the fact it's only used in a few large companies throughout the world, and the cost is rather high for even the basic product (almost £170 for the basic edition, and almost £3000 for the top end "Software Architect" edition). If the cost wasn't so high, i'd recommend it above anything.
The moment i set on using Firemonkey over VCL, the quality of my code increased. This was an immediate benefit as i was finally able to create interfaces that i'd dreamed of and thus was more interested in making fantastic designs that worked. Since late January this year, i've created 4 new applications, and rewritten 2 of them in Firemonkey (from VCL). I've had a total of 13 projects in the works, many of which never got released, and some which are new and are pitched to be release before Christmas.
This is in the space of 10 months, 2-3 months of which were spent on 2 example projects that i never released (1 had no real direction in the end). Prior to that, i knew very little about coding. I had some experience, but much of it was useless by todays standards, so you could consider it 10 months of learning and i've still got projects released in that time. I'm continually rewriting existing code in projects and improving the designs, though i spend quite an immense amount of time getting things right.
Once you've got your chosen development environment installed, create a new project, and simply experiment. I don't mean with code necessarily. Just look at the "Tool Palette" and you'll see lots of different components such as buttons, memos, edit boxes, checkboxes, etc. Just click one then click on your form (the main area usually located in the center of the screen). Then simply run the application. It won't do much besides sit there, but it'll lead you to explore more.
Software development at the beginning is all about exploration. You should never go into your first voyage with any intent to come out with something truly fantastic, but it should leave you with shards of experience.
Originally Posted by Kane49
Step1: Find something on your computer that you think is missing, be it some automation of tasks or unifying different systems into one.
Step2: Program it.
A huge percentage of programming nowadays it not writing something standalone but enabling systems to work together.
Definitely. I particularly agree on point 1 as that's how i got started (many years ago, before focusing on it properly this year). The beauty of this is that it can be done in any language and that you get to create it how you want.