No one likes a rush job. They usually mean high stress and late nights, and leave you disappointed in the end result. Unfortunately, many clients only come to you when they need something yesterday. But just because the deadline is tight, doesn’t mean the project has to be a hectic rush.
Plan
Often clients try to “speed up” the development process by skipping the early stages. If you bypass the proposal, discovery and planning stages, and jump straight into development, then you’ve circumvented half the work, right? Wrong.
If you have loads of time on your hands, you can afford to skip the planning stage (although it still would be a terrible idea). But when you have a tight deadline, proper planning becomes even more important. If you try to skip it to save time, you’ll end up losing significantly more time down the line.
“Give me six hours to chop down a tree and I will spend the first four sharpening the axe.” —Abraham Lincoln
Whether it’s a website or application, following the Minimum Viable Product concept will help streamline your development process. Separate each requirement into “Must Have” and “Nice to Have”. You can then further separate them into what needs to be included for the initial release, and what can be added on in a future round.
Finally, if you’re not 100% sure on an idea, prototype it before building it out completely. When the deadline is tight, you can’t afford to lose valuable hours by coding up a flawed concept. Prototyping will allow you to test out your ideas quickly, get feedback from your client, and avoid wasting time going down the wrong path. There’s been an influx of prototyping tools in the last couple of years, so you’re spoilt for choice here. Some notable ones include InVision, Atomic and Marvel.
Pick the Right Tools for the Job
Using tools that are either too lightweight or too complex for the job will drastically slow down your web development process. Many agencies jump immediately to WordPress whenever a basic site is needed, but if you’re creating a blog or simple marketing website, consider using a Static Site Generator. Not only will they speed up your development process significantly, but since the end product is plain HTML, it’ll load around 6x faster!
If you’re creating an eCommerce website, instead of going straight for one of the old-school mammoth CMSs like Magento, take a look at some newer options like Shopify or SquareSpace. Both of these have beautifully-designed themes and take care of all the minor things – like hosting, analytics, and SEO – that would otherwise all add up to take away a lot of your precious time.
Don’t Start From Scratch
Whether you’re creating a completely customized design or a standard layout, using frameworks to jumpstart development is a great way to save time without sacrificing quality.
You can pick and choose the elements that you’ll need, to avoid bloating your site with unnecessary code. Even the most customized layouts will benefit from normalizing CSS, which makes your site render more consistently across different browsers, or a simple grid system like the one included in Bootstrap or Foundation.
If you’re a fan of Material Design, the developers at Google have put together a framework called Material Design Lite, which will allow you to quickly install its basic components to use in your site.
If you’re doing similar projects again and again, consider creating your own boilerplate code. For example, if most of the work you do is creating WordPress sites, creating a custom boilerplate will allow you to skip the repetitive part of the development process. Make sure your boilerplate includes all the generic functionality you need, while making it easy to build custom layouts on top. You could even include one of the above frameworks in your boilerplate.
If you’re creating a fairly run-of-the-mill design, it’s a good idea to start with a theme and modify from there. ThemeForest provides themes for many of the major CMSs like WordPress, Magento, Drupal and Joomla. Some of the newer CMSs like Shopify and SquareSpace have themes built into them. Unfortunately, many themes are quite difficult to modify, so unless the theme you pick almost completely fits your design, you’re probably better off coding it from scratch.
Even if you don’t go with themes, using plugins instead of custom code is a must when you’re pressed for time. Try and go for plugins that are style-agnostic, so that you don’t need to spend time overwriting the plugins code to get it consistent with your site’s design. For example, Wufoo is a popular way to build and insert a form into your website. Unfortunately, their solution is to iFrame in a form, which forces you to use their themes that may or may not mesh stylistically with your designs. As an alternative, FormKeep’s solution embeds plain HTML into your site, which gives you complete control over how it looks.
Done is Better Than Perfect
When you’re doing a rush job, you’re never going to be completely happy with the end result. Keep in mind that “Done is better than perfect.” This was one of Facebook’s maxims for almost 10 years. It represents the hacker culture that allowed them to grow so quickly, and will allow you to ensure your project makes it out the door on time. The maxim has since been retired, but only after reaching 1 billion users and being worth hundreds of billions of dollars.
If you’ll be working on the project after launch, a really great idea is to use a shame.css. The idea behind this is to put all of your hacky code (and there will probably be some hacky code, given that it’s a rush job) into one file that you can fix up when you have more time. By putting all of these hacks and quick-fixes into one file, they keep your main codebase clean and make them easier to isolate and fix later on.
Ultimately, when you’re in a rush, the most important thing is get get it done by the deadline. This means letting go of what it should be, and focusing on what it can be. “Out of all the different directions a design could go, the best one is the one that gets finished and ships.” —Dan Cederholm, co-founder at Dribbble.