9 reasons hand-coding always beats site builders
If you use any kind of social media like Facebook or Twitter, you won’t have been able to avoid the merciless onslaught of ads promoting WYSIWYG website development. I’m not talking about those fancy software applications like DreamWeaver, but actually hosted site building applications that offer drag-n-drop website building systems complete with predefined templates. You could easily think that this is a great idea because on the face of it these kinds of systems are supposed to save you time and effort, but the reality is a little different. Here are just some of the reasons why you’re better off coding everything yourself.
1. You retain 100% control over your site and where it is hosted
Pages built on site builders stay on site builders (the same site builder). There is no easy way to transfer them out because the source code of your page is translated into metadata. Many similar services operate the same way. This means if you decide you want to change to a different hosting platform, you will have to reconstruct the pages and whatever functionality they contain.
2. Free WYSIWYG sites aren’t really free
What did you actually expect? But the issue here is that if you don’t want to provide free advertising for the service you built your site on, or you don’t want to have any restrictions over what you can do on your own site, you’ll have to pay extra for it, and the price will be typically higher than it would be for normal hosting.
3. You make yourself seem irrelevant to clients
If you build websites for other people, the last thing you should be doing is promoting websites that encourage them to use a DIY approach. You’ll practically be declaring that they’ve wasted their money by hiring you for a job they can do themselves. Most clients can’t make websites, but they can be given the impression that they can do it. That’s really dangerous because it means there’s an awful lot of really bad websites out there. One of the most interesting observations is that clients always notice every flaw (real or imagined) in anything you create and will use that to make your life hell, but they never notice the massive and very real flaws in whatever they create.
4. You understand your own code
If you’re any good at coding, writing fresh code line-by-line doesn’t take more time than building stuff using code created by other people, and may even take less time. If you’re not that good, and you’re selling websites, consider that you may be in the wrong line of business. When you use code from third parties, you have to spend a lot of time working out how to integrate it and then finessing it to do what you want. In some cases, you may not understand everything that third party software does and it may do some completely undesirable things. In the worst cases, it may do undesirable things of which you never become aware. The other obvious issue is that if there is a flaw or bug in the third party code, you have to spend much more time diagnosing and fixing the bug than you would have to do if it was your own code. The same holds true if you want to add extra functionality or you want to change the way it works. That’s not a suggestion you should never use third party materials, because there’s some really great stuff out there for you to use. But you have to accept that by incorporating those items into your design, you are also accepting the risks and complications that come with them. Just choose wisely.
5. Your own code is nearly always more efficient
Those WYSIWYG sites add additional complexity to your design. Look at the source code of any site builder template, and you’ll see a lot of weird metadata that contains hundreds of URL instructions. If it’s a free site, then extra lines will be added for the mandatory advertisement. Having so many URLs indicates a heavy dependency on external components. This increases the chance of your site failing on a technical level. Less is more, and you need to keep things as local as you can if you want to avoid worrying about dependency problems.
6. Your own code is more secure
This one is fairly obvious. Your own code isn’t inherently more secure than a site builder’s, in fact it may be worse. But site builders use the same code for all sites, so they’re an attractive target. Economics of scale mean that hacking every template site churned out by a site builder may be worth it, hacking your code probably isn’t.
7. It’s easier to iterate your own code
Need to move a component in your directory structure to make it more secure? Need to use custom PHP code to translate or encrypt something? Want to do some kind of fancy database stuff that doesn’t fit into a cookie-cutter design model? When you write your own code, there are no limits or restrictions on what you can do. You are literally the webmaster!
8. Your own code is original
Have you ever noticed that some websites have a lot in common? And then, every once in a while, you’ll come across two or more sites that have way too much in common? That’s the problem of template-based design. There’s nothing wrong with templates if you’re properly customizing them and turning them into something completely original, but huge numbers of people just seem to be too lazy for that. The result of that lack of effort is going to be less customers for you (or your client) because they don’t see your site as offering anything unique.
9. Writing your own code helps you grow as a developer
All the challenges that you’ll face and overcome in creating a website that is based mostly on your own efforts will help you become better at coding. It all adds up to more experience, and that means you become more efficient as a coder over time. Eventually you can face any challenge with confidence, as you’ll develop coding fluency. So there you have it. Nine reasons why you should not be relying on WYSIWYG too much or even at all. Writing your own code is more rewarding in a lot of ways, and as you get better at it, you may even find that you save more time than if you struggled around trying to understand other people’s templates, other people’s WYSIWYG systems, and other people’s source code. You also keep control over your website hosting, your domain name, and who benefits from your work.