One of the guiding principles in modern web design is that Content is king. Old websites are characterized by gradients, borders, and superfluous features. Modern web sites are clean, well thought out, and focus primarily on content. Content is the reason why people visit a website to begin with.
In the spirit of ubiquitous principles, this core principle of modern web design can be applied to modern web development too. When planning a new project, I’ve seen these conversation happen over and over again:
- We need to build a new website, so we should use Node, MongoDB, and SPDY.
- We need an application to send automated emails, so we should use Maven, Jenkins, Google Apps, and Node.
- We need an analytics toolkit, so we should use Scala, Go, and Redis.
Programmers have an innate desire to learn the latest and greatest technology in our field. It keeps us sharp and on the cutting edge of our industry. This desire to use new software is great, but the goal of any new project is to create something people can use.
We as developers have the tendency to forget that customers don’t really care which technology we use to make a product work. The end user just cares that it works. We could be using something as antiquated as COBOL behind the scenes. The goal of a project is to make a customer’s life better.
If we happen to use a NoSQL DB in a project, then great. We’ve used something new. Customers only care that we produce something of worth. This is a central tenet of modern web development that needs to be hammered home again and again until we developers have it as ingrained in our brains as possible.
Developers need to keep this principle in mind when doing anything related to work. We should always be moving towards the goal of the project. Answering emails may look like work, but does it move us closer to the goal of the project as actually writing code? Meetings help keep everyone on the same page, but does it make our goal be achieved faster than code?
These kinds of trade-offs need to be evaluated and acted upon every single day. Emails and meetings are necessary, but need to be balanced against creating actual content. If 30 minutes each day can be spent coding instead of meetings and emails, you will gain 30 minutes of coding each day. If you are constantly focused on creating, you will end up creating more.
End results are why we code to begin with. Code produces the end result of a usable product for users. In this case, content is code. In both cases, content is king.
The post Content is King appeared first on Zach Gardner's Blog.