I am currently nearing the end of my first year of my CS degree and have been disappointed with the lack of coding I have been asked to do (one unit).I am basically looking for an effective way to gain practical knowledge but am unsure where to look for experience from a near beginner's perspective.
Effective way to gain practical knowledge
programming practices;knowledge
I didn't get the whole picture until I took Operating Systems, Database Management Systems, Computer Networks and some programming courses.Start with learning a programming language of your choice. (I started with C and proceeded to C++, which is very powerful)Do some simple projects requiring non-trivial algorithms such as the ones at ProjectEuler.After becoming comfortable with the language and common algorithms, move to GUI programming like Windows Forms, WPF or Qt.Gain some experience with GUI and event driven applications and learn about cross-platform GUI libraries again such as Qt.You may want to develop some small games for fun.Then you want to learn about processes, threads, multi-threading, database programming, network programming and so on. You will learn most of these in your CS courses.Web development is a great way to expand your skills as it requires both server side development and network information like HTTP.Just take your time, enjoy coding. Do not get depressed when you see code that you don't understand anything .)