In Practice: Web Development Vol. V

I’m just finishing up my 2-month excursion to Norway and my time here has been a little both a blessing and a curse. A little background: my bank account was hurting so I took an opportunity to work on a website for two gentlemen in exchange for room and board in Norway.

As I’m a newcomer to the game, it was a terrific opportunity to learn how to create websites for a client, and I’m considerably better at my job than I was prior to this experience.

What did I learn in the last two months?


Figuring out how to find out which rules are applying to what areas of a page. Getting used to utilizing the “Inspect” option in my browser has vastly changed how I can modify my sites.

Don’t let clients design your sites.

From accounts that I’ve heard from other developers, there seems to be a negative correlation with how much a client pays for a site and how ‘good’ that client is. If a client is paying a large amount of money – $5,000+ – they tend to keep their input to a minimum, letting the developers do their job: creating a website that helps the client’s business.

Clients that purchase cheaper websites usually err on the ‘worse’ side of the scale. Maybe this has something to do with the fact that by spending less money, they have to put less trust in the developer to do a good job. Cheaper clients are known to constantly ask for alterations and they can bog down the development process.

So you can imagine how much of a nuisance it is to work on a large project for no exchange of money. To be frank, the amount of redesigning that my two clients requested took the look of the website completely out of my hands. At this point, I won’t even use it as a portfolio piece because very little of it is actually my design.

Create mockups

I’ve spent a lot of time working on my Photoshop skills, and I’m now capable of creating entire page-length mockups to send to clients as JPG files. I would much rather spend a few days going back and forth with a client to perfect a mockup and take the finalized version into development rather than developing an entire site and having to scrap it and start from scratch. Plus, by using a design tool like Photoshop, I’m forced to think outside-of-the-box when designing layouts which will lead to a more unique, as working with page-builder tools can lead to creating the same cookie-cutter designs created by other developers using the same tools.

Use a contract

The general website selling process for developers involves agreeing to a price, developing the product, and then either handing the site over the client with a few brief lessons on how to run it, or getting the client to sign on to a ‘care plan’ where they pay monthly instalments so that the developer continues to handle the website. A good developer will have a contract that stipulates exactly what services are included in the care plan, such as how many alterations can be requested per month, and they’ll stick to their obligations.

I’m in a situation where I’ve developed a full, informational website on a gardening product. Unfortunately, even though my obligations are over as I’m no longer residing with them in exchange for work, they’re hoping to transition the site into an eCommerce platform where they sell imported goods to the Norwegian market. Of course, I’d like to help them get their business off the ground as they’ve both been recently laid off, but being at their beck and call for free for the foreseeable future is not something that I find financially appealing.

I’m in the situation where I hold all the cards, and if I were a worse person I could forget about their site and move on with my life. If I were under contract, I would be obliged to provide them support. Then again, I would never agree to a contract where I get paid nothing for my work. Volunteering web development services in exchange for a short-term vacation is just not a good setup.

Optimize images in Photoshop

This may seem obvious to some of you, but pictures found on stock photo websites are almost always way larger than necessary for basic webpage usage. Taking those photos into Photoshop or other image software to crop them has greatly reduced my page-loading speeds. I also use Optimus, a WordPress plugin, to optimize the images to reduce their file sizes before uploading them to my sites.

Creating a subscriber list

When online business-owners are asked, “what would you do differently if you had to start your site from scratch tomorrow?”, a common answer is that they would start collecting emails from the outset. Emails are a veritable goldmine for online businesses because they’re a direct line to getting repeat customers, and as the 80/20 rule states,  20% of a business’ total customers will contribute to 80% of their sales (or something along those lines. College was a long time ago).

To get site visitors to subscribe, it’s important to offer them something of value in exchange for their email. That ‘something of value’ can be a free ebook, video tutorial, a chance to win a lottery prize, or anything that ropes them in.

At the moment, I’m using Mailchimp on God Jord’s site with the promise of giving updates on upcoming lectures to those that subscribe. The conversion rate is sitting around 20% which is pretty solid!



For all the things I learned, I also discovered quite a few things that I’m not comfortable with:


I hate looking for plugins. It’s about time that I get my hands dirty and dig into learning PHP. I know it can be incredibly powerful in creating my own WordPress sites, but because I haven’t learned, I don’t quite understand just how it can help me.

From what I’ve found in the development community, the best WordPress developers know how to create their own plugins. Yes, they use plugins that are available in the public domain, but getting that extra step up on the competition by creating custom plugins to solve problems is huge.

Creating custom themes and child themes

Similar to PHP, if I want to make a name for myself as an accomplished WordPress developer, I need to understand the framework that keeps my sites running. I’ve learned how to get into the backdoor of my sites through FTP to make minor alterations; creating my own themes is the next step. Plus, I can sell themes which would be a nice little surprise for my bank account.

Advanced Custom Fields

ACF is a plugin for WordPress that can create custom post types rather than the same ‘blog’ format every time. It’s similar to another Plugin called PODS that also creates custom posts, however, PODs works better with my software. I’ll have to check them out and see if they’re worth the investment. At this time, I don’t have any projects that could benefit from either so there’s no rush to purchase anything.

Creating contracts and billing

I haven’t the faintest clue where to start in this category. Stripe is a solid credit card transaction medium, although I haven’t had the chance to test it out. Once I get paying clients, this will be my first investment.

Objectives from last update: 

  • Revamp God Jord’s website

Done. Well, sort of. The owners’ have made some design decisions that I disagree with, so I cleaned up the header area on the pages, added some separators between rows where necessary, and tightened up the footer.

  • Get confrontingdesign.com to look reasonable

Fooled around with it for awhile, but couldn’t get a look to work. I’m focusing on building another client’s site right now, then I’ll reassess upon completioin.

  • Pull foundationalphotography.com over to Siteground and get it up and running again.

I have yet to migrate the files over. I think I’m just going to redo the whole things so it may not even be necessary. Once again, client’s site is taking precedent.

Objectives for next update: 

  • Learn some PHP
  • Create a custom plugin
  • Build a basic child theme
  • Complete the new client site
Share this:


Robert works part of the year as an international tour guide in Asia with Life Before Work Travel . When he's not getting paid to travel the world he's out in the field taking photos, on his laptop creating new sites, or sitting in the gutter petting stray dogs.