Why I code by hand

I wanted to take a few moments to talk about something I'm very passionate about when it comes to web development: coding by hand.

Sure there's plenty of programs and tools out there to do some, a majority, or all the coding for you. Some people might argue "What's wrong with that? They save time". Well, I find plenty wrong with that./

First of all, there's a sense of pride in making a well functioning website with your own code. To make something that works well, solves problems, is easy to use, and keeps customers happy gives me a warm and fuzzy feeling inside. Knowing that I'm the one who did it is a huge confidence boost.

Don't get me wrong. Finding other developers and designers' work, finding a great piece of code on a blog, using pre-made plugins and modules are all okay in moderation. The web dev/design community is strong and collaborative. We share, grow, cry, sweat, and learn together. I use tidbits and code from other places often to learn, then adapt to my own projects.

My issue is with people who dabble around in Dreamweaver, dragging and dropping components, doing a tad of design, then claiming the work as their own. These are not works to be proud of, unless you're someone from outside the industry who wanted to learn something new. Then be proud for accomplishing something new and learning from the experience.

When you only ever use tools that do the work for you, you don't end up learning and growing. If you view the source code and have no idea what's really going on, that's when you need to stop using the tools and start trying to do the work on your own.

When I was in college people around me, including professors, kept teaching that it was okay if you didn't understand the code these helper tools were placing in your projects. The attitude was eventually you would learn more and more what the code was and what it does. Problem is once you get in the habit how do you break it? Other people would say things like "these tools will someday replace people who do the work by hand anyways". So I was supposed to blindly drag and drop and use the GUIs to do my work for me? No sir, I didn't like it.

I pushed myself from the beginning to make sure I understood what each HTML tag, each PHP function, and each jQuery effect does. I wanted to write them all on my own to fully understand them and how they affect everything else in the file. I wanted to utilize every feature they all could bring to my projects, plus discover new uses for them.

At the beginning many of my peers couldn't see the use of all my troubles. I would constantly stop working to look up something. Someone would say "All you have to do is click __" or "drag __ to ___" or "it should fill that in for you". My response was "Shhhhh!".

I was always asking questions about what this or that does, how to use it, when not to use it. I didn't care that they gave me that "what a nerd" look. I really wanted to learn and do well. I'm glad I did.

Now usually with a quick glance at source code I can spot bugs and potential problems. If the QA team at work comes back with screenshots of problems on a site I usually instantly know how to change code to fix the problem.

My understanding of my code has brought much value to my work. Speed, accuracy, cleaner code, and a sense of pride. Plus it's easier for others to dive into my work later on down the road since it's laid out nicely and well commented, and that's always a nice thing to see when you're assigned to make a change to someone else's work.

blog comments powered by Disqus