Bill’s competitive advantage lies in the optimized system he has built over the years, to create beautiful sites at a fraction of a cost compared to other agencies. His streamlined process is as follows:
- Share as much educational material as possible upfront so that you minimize the amount of communication you need to do with prospects who aren’t a good fit.
- Schedule a call to understand the client’s current state and how you can solve their problems.
- Discovery, Design, and Development phases follow.
By tailoring two different timelines to fit a small project or a large project, he is able to have a general stepping stones already in place that guide the process.
Templates vs. Custom Code:
Bill works with starter themes built on Underscore and Genesis, which act as the foundation for the sites. This means that there is a large amount of custom design and coding. However, when it comes to reusing and optimizing time, he focuses on functional elements like calendars and social buttons.
5:50 “When it comes to custom functionality, I’ll reuse what I can. For instance, I have an event calendar plugin I’ll use as my base when I’m building out a simple events calendar.”
Social Sharing Plugins:
One of these specific plugins is Shared Counts, a social sharing plugin. Bill and Jared Atchison originally built it for their clients to provide simple, easy-to-use, high performance social sharing buttons that preserve both HTTP and HTTPS share counts. It also makes the social sharing data to be analyzed in the backend and queried on the frontend for popular post listings (more information).
Workflow and Collaboration:
While this helps streamline the workflow, Bill recognizes the limitations of automation as an independent developer. It is most helpful when you’re finding yourself doing repetitive tasks, but trying to utilize every new tool on the market can be counterintuitive.
14:18 ”You don’t necessarily need them (automation tools) in your environment if you don’t have the same problems that they’re solving. Before trying to systemize things make sure there’s an actual problem that you’re trying to solve and that this is going to save you time rather than just increase the overall time you spend building.”
When it comes to actually deploying a site, Bill says that using WPEngine makes this process easier and streamlined.
- He puts the entire WordPress install under version control, and uses .gitignore to exclude everything but his custom code. This process is helpful from a management perspective, tying code changes to issue solving.
- Migrate DB Pro helps him migrate the database and media to different environments (production, staging, development…)
- On sites with a large media library, he uses BE Media from Production to simplify migrations by keeping all media on the production site.
What he’s learned:
In the beginning, he was trying to systemize things to get more work done in the same amount of time, but now things have changed.
21:11 “Over the past few years I’ve used the exact same approach to just scale back the amount of work. I have this much work that needs to get done but I have this few hours, so how can I optimize it to get more work done in less time rather than more work in the same time.”
His advice is to keep listening and evolving. One thing he wishes he had done more of and that he practices regularly now, is reviewing what went wrong and what went right, from both his perspective and the clients.
There will be problems in the short term, but it won’t really affect those who are doing minimal backend work. For those who are deep in the developing side, there will be will be new learning curves and challenges. Bill is already preparing, communicating with past clients about what the change that this will bring, as well as learning as much as possible beforehand. He already builds Gutenberg compatible themes and shares what he learns about Gutenberg on his blog.