• December 22, 2016

CMS vs Hand Coding websites

CMS vs Hand Coding websites

1024 684 Milton Menasco

Technology moves fast, real fast. A few years ago you needed some real programming skills to make a slick looking, functioning website that might have an online store, contact form and photo gallery. Now, with CMS programs like Wix, Square Space and WordPress, you don’t need to know a lick of code to make a functional, good looking website. Content Management System websites tend to be considerably less expensive to make (because they are less time intensive and come with more presets and templates etc.), and can be managed by you or one of your staff.

So why have a website hand coded?

Hand coded websites are great when you have very specific needs of how you want your website to perform, look and function. Often you will want a hand coded website if the site is more of an application, like Facebook, Google or Dropbox, rather than a straight informational website. Technologies such as the library Angular and the framework React allow developers to take hand coding to the next level by incorporating these technologies’ massive pre-written lines of code into their sites. These libraries and frameworks give them functions and performance that would otherwise take even the most skilled of programmers endless hours to write. Don’t get me wrong, there are plenty of developers using basic code to build great looking sites and using plugins for functionality or code (if that is in their skill set), but these sites tend to cost more to make, and the trend (rightfully so) seems to be moving toward CMS for many small and medium sized businesses.

There are no hard rules when it comes to building websites. Not long ago, programmers were pretty much the only option you had when it came to web development. The process was lengthy and the skill set was fairly advanced if you wanted any kind of real functionality with your site.  Thus, the price to have a website built and hosted was proportional to that work and skill.

In today’s world of Content Management Systems and hand coding templates (pre-done hand coded sites), it is not uncommon for web development companies to unfairly charge custom hand coded rates while utilizing CMS and templates.  The amount of time it takes to build a website this way is greatly reduced, yet the savings are not passed on to the customer.  Another common practice of an unscrupulous development company is to sell the client on advanced technologies that neither benefit the client nor make it possible for the client to make their own edits or changes. This same developer may also have their client sign a contract that gives the developer ownership over the client’s site and content, locking the client into this one-sided overpriced business relationship.

Luckily, people are becoming more educated about web development and the available technologies, and are able to navigate the website building industry with a little more confidence. The trend now seems to be moving toward development companies that are willing to match the appropriate technologies to the client, and then charge clients according to the amount of time it takes to build a site for them.

So what should I use to build my website?

When I first finished a programming boot camp that I attended, I was hell-bent on using the latest greatest technologies and skills that I had acquired. Even building a site using just HTML and CSS seemed archaic and antiquated. We had been pushed and immersed in the latest technologies such as React and Angular at the boot camp, and anything less seemed like a step backwards in the betterment  of mankind. After some time back in the real world working with my own small business, I quickly started to realize the potential downside of pushing your business into using the latest and greatest technologies. They are complicated, change quickly and some of them are not even open source (React is owned by Facebook and is not open source). All of these things do not really lend themselves to small business since the maintenance and upkeep for ever-changing and newly developing technologies can be extremely time consuming.

When I started to build websites and do development for small businesses, I became even more convinced that CMS sites are ideal for most small and medium sized businesses. Eventually I decided on WordPress as my CMS of choice due to its open-source and developer-friendly model. WordPress is a little more in depth and complicated than the drag and drop styles of WIX and Square Space, but I love the fact that it is open-source and there are so many plugins for just about anything you can think of that are designed by top notch developers. I also really like that I can easily add my own custom code, modify the WordPress themes code, and get into the database no problem. If you have no website development experience or coding experience, and just want to drop and drag content onto a template, WIX or Square Space are both good options.

As far as hand coding goes, an HTML, CSS, Javascript, PHP site is a classic way to go, and you still can’t go wrong with it. You will want to make sure to pay close attention to optimization and search engine registration, but you can still make a great site using these technologies. When it comes to newer libraries and frameworks, I would personally stay clear of React unless you are a very large business.  It is complicated, not open-source and in my opinion, designed for big businesses (and if your developer bails on you, you might have a hard time finding someone who can work on it for an affordable price). I personally recommend Angular if you are looking for a one-page load newer tech website. Angular is owned by Google and is open source.  It matches well with their front end library Materialize (for buttons, menus, columns for responsiveness, etc). Angular has a bunch of great built-in functions and is well suited for small and medium sized businesses. But keep in mind that building, maintaining and updating a hand-built Angular site takes a programmer and/or developer that is knowledgeable about Angular, HTML, CSS, Javascript and some backend language such as PHP or JS node.

In the end, I would say one of the most important things you can do is to think about what you need your website to do and either educate yourself on the different technologies, or find a developer who can help you pick the best technology for you and your business. Have a game plan and make sure not to get sucked into a contract with a development company that wants to own your content, site and data, and oversell you on unnecessary technologies. Find a web development company that wants to help your company grow and has a vision for your web presence.  A good web developer realizes that helping you succeed is helping them succeed.

Leave a Reply