« Keep Pushing It
Past Interest »

Learning Again from Scratch

I am currently trying to work on a mini project that uses JavaScript. I have used JavaScript many times before but I never took the time to properly learn the language. A university course covered the basics, but it focused on chemical engineering problems. The course did not look at the language itself and included many bad practices (lots of document.write()).

Every other time I have used it, I have hacked away at my code and searched for answers online. I never bothered to understand how the language worked. I never took the time to understand what the best practices were. I only cared about getting my program to work. Or at least appear to work.

This project has exposed some of my weaknesses. My previous projects usually involved modifying something someone else built, but this time I am working on my own. From scratch.

I can tell that I am doing things wrong: I am having to repeat things (not DRY). Sure a maze of loops can work but it is pretty ugly and difficult to follow. I have lots of variables and functions stored in the main environment. I know that I shouldn't do it, but I don't know what I should do instead.

Last week, when searching for an answer to a "how do I do x" question, I came across a free book on the subject. While the book did answer the question, it also piqued my interest. It has made me want to know more. It has given me a chance to actually understand what I am doing rather than hacking away at the code.

So for now my project is on hold. I can see many places to improve my code, but I don't want to start yet. I want to make sure that I actually know what I am doing before I continue. Of course if I finish the book and still struggle to reformat the code, then I know I haven't learnt properly. I know that I need to try again. It's like having a course test but without any of the stress.

Go Top
« Keep Pushing It
Past Interest »


I would love to know what you think. To comment on this article, send me an email

No comments yet.