Low Friction Coding - Part 2

by mgordon 23. July 2007 11:33

Making it an even dozen.

  1.  Use Control Libraries - Not long ago, I was working on a rather complicated web UI I had envisioned.  For days, I tweaked the HTML and CSS to get the page to do what I wanted.  Most common and some not so common UI scenarios are easily implented with most any of the top control libraries.  Most allow you to change behavior with a line or two of code and look and feel with a single property.  The UI I had worked on for so long was later redone using a control library in less than a day.
  2. Use a Process - What do I mean by process?  You can save a ton of time by establishing, up front, how your development process or lifetime is going to flow.  What things have to happen and in what order?  Establishing this type of thing in advance allows you to flow from one task to the next without having to decide, on the fly, what do to next.  There are many well thought out processes to choose from (Waterfall, Agile, Extreme, SCRUM, etc)
  3. Use Convention - This is related to using a process in that you pre-establish things like variable naming conventions, source code repository structure and the layout of files in a project.  Again, it uses the principle of thinking through these things once and establishing how you're going to work so you don't have to pause and figure them out each time.
  4. Use Automation - Computers excel at doing repetitive and mundane tasks.  Stop and think of all the productivity suckers that you encounter regularly.  For example, when you've finished coding a project, you typically have to get the source code into source control, version it and package up the binaries and move them into an environment for QA testing.  Once testing is complete, the binaries may need to be moved to a staging or other environment.  Perhaps source control needs to be labeled or a branch created for this version of the application.  Continually knowing the state of your code is the most touted benefit to using a build server, but consider that it also automates most of the steps I outlined, above.  Once again, thing through things once (write the build script) and reap the benefits with time savings.  If you're not currently using a build server, take a look at Cruise Control.
  5. Know Your Language - Countless times, I've seen developers write tons of code to accomplish what could have been done much more quickly and easily with the correct language features.  Good productivity and how much you enjoy the task of programming are very much dependent upon how well you know the language. 
  6. Know Your Framework - The .Net platform has a framework as does Java.  Ruby has Rails.  Like the previous example, it's easy to get caught in the trap of writing tons of code when you don't have too.  Many times, ignorance of the functionality offered by a framework drains our time, productivity and sanity.  Spend some time getting familiar with what's available.  You never know when the knowledge will save you hours of frustration.

Tags: ,

.Net | Productivity

Comments are closed

Powered by BlogEngine.NET 1.5.0.7
Theme by Extensive SEO