-1

Headline explains all, My major is CS and I am in the verge of starting my sophomore year in college. I did some programming in python (mainly gui programming) and I know the basic concept and syntax of C language but have never done something beyond some projecteuler questions. I want to do something practical and improve myself as a software developer, what should I do?

  • http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list – phimuemue Aug 28 '11 at 10:21
  • 3
    Try posting your question on programmers.stackexchange.com – koan Aug 28 '11 at 10:21
  • First of all , in my humble opinion, Read Accelerated C++, then keep reading, read C++ primer and the TCPL, and then practice, practice, practice ... – Umut Tabak Aug 28 '11 at 10:22
  • 3
    There's no such thing as C/C++. Going depth into C and going depth into C++ is as different an endeavor as building houses and building cars. – Alexandre C. Aug 28 '11 at 10:30

4 Answers4

2

Try to write a program that would serve some specific purpose for yourself or someone you know. It can be a fun exercise and it will improve your skills.

Kaslai
  • 2,445
  • 17
  • 17
0

First decide on if you want to learn C or C++. Secondly buy a book and read it. Third write some code to learn and practice the topics covered in the book.

Ed Heal
  • 59,252
  • 17
  • 87
  • 127
0

You could start by looking at code of a open source project you like (and use), and start with debugging, proposing patches, writing new features...

It would probably also help you gain some experience with versioning systems, and working with other people's code.

Thom Wiggers
  • 6,938
  • 1
  • 39
  • 65
0

Cliche, but Try working on some open source projects such as ones on Google Code or the like.

Also, what kind of practical application would you be interested in? If you're interested in games, start by creating something very simple, say moving a ball arond with the keyboard or mouse, and slowly build up things like acceleration, collisions, bouncing, etc.

If software development is your thing, build something ridiculously simple, say a calculator, and in the same spirit as above slowly build up features such as storing value, bracketing, more advanced functions, etc.

I personally find that starting small is way more effective than jumping into some mega-project all on your own, as it usuall involves reading up on way too many things which may lose your confidence.

WaelJ
  • 2,942
  • 4
  • 22
  • 28