I can remember being a young programmer, having memorized the syntax of my new favorite language from array to ℤ I had no idea where to go next. I felt I didn't know enough to launch into a larger project, there were only thousands of beginning tutorials for me, but nothing to take me somewhere after that. I coded around aimlessly with no idea what to do for several months, asking on message boards and getting not very good answers. My coding quality stagnated and then worsened as I had less to code. What was I to do?
If you start to find yourself in a similar situation then here are some tips on what to do that I finally figured out after forcing myself through the slump:
If you start to find yourself in a similar situation then here are some tips on what to do that I finally figured out after forcing myself through the slump:
- Make Sure You Know Everything The Language Has To Offer
Depending on the language, there could be tons of libraries available that give you capabilities from GUIs to Sockets to Mobile support. Explore your language's standard libraries and you might find yourself with a head fresh full of ideas on where to go next in no time. Sometimes you'll have an extremely well documented language as well that will make it extremely easy to start using the libraries if you already understand the basics of the language well enough.
- Form A Specialty Interest
Find out your niche. You've got specific interests, so let them flourish. I can understand that you might find so much about Programming interesting that you just have no idea where you want to go, but you can't master it all. Sample different things you find interesting until you find something that really gets you going. Then go and check out some basic, de facto books in that area from the library. Those should be full of ideas and examples for you to implement.
- Learn an API or Framework
You might not know how to implement some more complicated problems in your language with only what you know. Don't worry though, someone else did, and they made the solutions to those problems widely available. APIs can add an abundance of functionality to your programs, and if you already understand the basics of the language the API should meld in seamlessly with that knowledge (that is if the API writers did a good job.) Either that or try writing your own API for something.
- Get Your Hands Into Something GUI
Perhaps you have a lot of simple programs that you've written, but you're tired of pulling up the command line to run them. Start learning a GUI and integrate it into all of your previous programs. Good ideas of GUI APIs to learn are: Win32, DirectX, OpenGL, GTK, QT, Swing (for java), and so on. GUI programming is also a very desirable skill for getting jobs.
- Learn Another Language
Ok, so this is really just a cop out way to move forward. If you already understand the basics of another language, the only thing learning another language can do is give you another way of looking at how you program. Not that doing that is a bad thing, but unless your new language has an API full of libraries for useful things then you're just holding off learning more useful things.
- Read a Good Algorithm Book
Another way to go is to start learning about algorithms. At first it may seem like you're still just kind of sitting around in the same place just making up new tricks to do with what you already know, but understanding algorithm analysis and problem solving will get you further in the long run.
- Start to Work With Databases
Integrating databases into your programs isn't only an easier way to store data for later use, it's also a great skill to have when you're job hunting. Most jobs I've applied for have included a desire for some sort of database knowledge. Be it just understanding SQL or having Oracle certification, they've wanted something there. There's a lot more to databases than just storing information too, just understanding them well enough can score you a pretty comfy job.
- Two words: Design Patterns
If your eventual goal is to work alongside other programmers then you're going to need to talk their talk. I know what you're thinking, "Isn't that what the whole learning a programming language was all about?" Yes, but programming languages have some pretty confusing lingo. Coding alongside someone who has learned Design Patterns as opposed to someone who hasn't is like talking to someone who is a Linguist as compared to someone with a cockney accent. But what exactly are Design Patterns? Basically, they're solutions to common problems you run into while programming and have been tested to be efficient and graceful. You'll use them all the time, and you'll love them. I suggest the book Head First: Design Patterns for starting out.
- Join an Open Source Project
Jumping into something like this may be a bit over your head at first, but it's a good thing to get in the groove of. Contributing to OSS can be extremely beneficial for you, and for the rest of the world. You get experience coding on larger projects, reading lots of different people's code, and something to actually show an employer for your experience. Before you just jump into an Open Source Project though, you have to make sure it's right for you. Don't go diving into something like the Firefox source right off. Find a smaller project, preferably something you actually use. Find out what technologies it uses and start looking into them (does it use GTK as a GUI or QT? Is it written in a language you know? Does it use libraries you've never looked at?) Finding the right project for you is a pretty involved process if you're just starting out that warrants its own entry (which it will have eventually.)
- Don't Give Up
Perhaps most importantly, you need to keep from getting discouraged. If you try to jump into something only to find that it's a bit over your head it doesn't mean that you'll never be able to understand it. Just move back to something else and then come back after you understand a bit more. Don't swamp yourself with too much to learn and you won't feel like it's not getting learned. Just take it all one step at a time and don't be afraid to say that you don't know. Help will usually be there for you. You're not the first person in your situation.
0 Comments On This Entry
← January 2022 →
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | 31 |
Tags
My Blog Links
Recent Entries
-
Moving On Properon Apr 22 2009 09:10 AM
-
Proper First Stepson Apr 21 2009 01:59 PM
Search My Blog
0 user(s) viewing
0 Guests
0 member(s)
0 anonymous member(s)
0 member(s)
0 anonymous member(s)



Leave Comment








|