Showing posts with label learning. Show all posts
Showing posts with label learning. Show all posts

Monday, April 20, 2009

Revamping Old Code



remember that program you had to write for your C++ class... Rewriting your old code can be a great way of learning another language. By rewriting something that you already know in a different way, you can quickly pick up new syntax.

This isn't just a great way to learn a new language; It is also a great way to improve your programming skills. Go back and look at some of your old programs. Chances are, you will find ways to improve their implementation, either in speed or amount of code.

For example, I recently took an old piggybank program I had to write in C++ and converted it to Python. All this simple program did was asked for a dollar amount and turned it into the least amount of change. Back when I wrote it for the first time, I used all if statements. While I was re-writing it in Python, I discovered that I could create a better implementation using modulus arithmetic.

Isn't it great how you can learn new material on your old material. Any other suggestions on re-using old code to teach yourself?

Sunday, April 19, 2009

Programming to Program



To learn to program you must program. This is a concept that a lot of time flies over beginners. They get excited about coding, but instead of grinding out some code, they read tutorial after tutorial, or search through the web looking for something that isn't there.

But, once you realize this concept, what do you do about it? It can be pretty tough to think up a program to write yourself. One of the things that I have learned is that often, if you aren't in a class or some environment that forces you to learn, i.e. gives you tasks or assignments, it can be difficult to push yourself.

Probably the best learning tool that can be found on the internet is programming challenges. These appear in books and forums. Someone gives a list of programming quandaries as a challenge to other programmers to solve. These can greatly help you learn to program faster, sharper, and more efficiently.

A great place to find these are forum threads. Right now Programming Forums has some great challenges out there. There is also an e-book that has challenges in it, with robotic judges as well.
These challenges are your best friend, they invite you to program, and even give you what to program. You can't help but learn. Great Stuff!! If you have any sites that you have found, or have made yourself, post them below!