Development Philosophy

I have a specific philosophy in regards to web development and coding. I’m going to break it all down here. I’m open to arguments and I plan to revise this as my philosophy evolves. I’m sure some people who read this will disagree strongly with some of my points, especially when I get to my preferred coding standards.

The primary concern for everything I do is that it be easy to understand, to refactor, and to rework. The products I build should work efficiently, but not at the price of being unable to be refactored. To me programming is one of the most creative of mediums. When I read a great piece of programming it’s a similar experience to reading a great poem or a piece of music on paper. It expends in my mind and makes me reconsider what I thought I knew.

My main concern with my coding standards is that they be easily readable. I also use different coding standards for each language I work in. Originally , I tried to use the same standard for all languages, but I eventually found that it just wast applicable everywhere. In PHP, I prefer the Kohana standard. For javaScript I’ve adopted the jQuery standard. For CSS and LESS I use a my own standard. Mostly I use LESS to write stylesheets these days. At some point I’d like to document those standards, though I’m not sure if anyone would be interested. Coding standards are also exceptionally boring, because much or is just the display level of the code tot the programmer. It should be as simple in an IDE to swap between different styles as it is to swap change the width of a tab.

I guess the best place to start is to talk about the process from start to finish. I’d like to have a process in place that makes it easy for work to be swapped among developers. This is one of the core principles in the Japanese management philosophies of Kaizen and Kanban.

One thought on “Development Philosophy

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>