Recently I gave a talk at School of Code’s first Festival of Learning event: A discussion around the usage of modern technology in a digital agency.
At adaptable, we’re all big believers in learning in public and sharing the knowledge that we’ve accumulated over the years. Being able to provide the experience and advice to new developers that we wish we had as we were learning is fundamental to us, so we’ve been looking for the right outlet for this for quite some time.
It’s not exactly a secret that software development is huge, with more technologies than you could name in a lifetime and new languages/frameworks being released faster than anyone can reasonably keep up. The feedback point we see most commonly from beginners is that it’s just so difficult to know what to learn and where to focus.
So that’s where I wanted to start – A two-part showcase of “here are the tools that we use every day” and “here’s how to get started learning them yourself”. If you missed us on the day, here’s a summary of the technology we discussed.
From day one, we’ve built websites using WordPress. As of 2022, WordPress powers over 43% of websites on the internet – Whilst it’s not particularly new, we like to think that the modern ways that we use it enable our enterprise-level WordPress offering to unlock the full potential of the CMS.
There’s a few industry-standard features & plugins in WordPress that allow the CMS to be extremely flexible. These include:
- Advanced Custom Fields – A plugin that allows you to create custom fields that allow you to capture any data you can imagine within the CMS editor pages
- Custom Post Types – A built-in feature in which you can logically group different types of data
- Block Editor – Codenamed “Gutenberg”, this allows you to create reusable “blocks” that can be used to construct pages of a site.
You should also take the time to learn some PHP – WordPress templates are written in PHP, so you’re going to have a much more challenging time with WordPress development if you don’t understand the language it’s written in. You don’t need to go super deep – Just the basics will be good enough for custom theme development!
We consider a “digital product” to be something that you “use” rather than simply something that you “browse”. These interactive apps need a completely different technical approach to our WordPress websites, with each product solving a unique set of challenges in interactivity and user experience.
We use a number of different tools to support us with building digital products – We use React as our frontend framework, Next.js as an extension of React and to provide server-side functionality, Express as a standalone backend framework for custom APIs and Prisma as an ORM to make database management much simpler.
When a project requires the content-driven aspects of a CMS but the interactive flexibility of a digital product, we like to reach for “headless”. This means that we’ll decouple the frontend framework (e.g. Next.js) from the backend systems (e.g. WordPress for content, a custom API for interactivity) and have data flow between each layer via APIs.
The “head” relates to where your content ends up, and the “body” is where your content is stored and authored. This might sound a little strange at first, but the point of a headless CMS isn’t that you don’t want or need a head, it’s that you get to pick and choose which heads (outputs) you send your content to.
We’ve built headless websites with content management systems from WordPress and Sanity CMS, but you can realistically use any data source as long as the data is consistently available over an API.
It’s important to remember that nobody needs to be an expert at all of these technologies. If you have one in particular that interests you then just focusing on that will make you a valuable developer in that area.
With software development, practice makes perfect. Learning the basics of a technology then practicing it will help you to understand how to use that technology to solve problems on your own. Creating personal projects to learn new things also showcases your programming skills and putting them on GitHub is also a great way to share those skills with potential employers.
School of Code
On a more personal note, I’m incredibly supportive of what School of Code are trying to do. They’re doing great work in making a career in technology accessible to everyone, which is something I care a lot about. Events like the Festival of Learning enable industry professionals to share their knowledge and experience with beginners – building bridges allowing more people to jump into the professional world themselves. I found all of the talks at the event insightful even from an experienced perspective, and I hope they do more events like this in the future.
My fellow engineer Reece joined our team a few months ago after completing a course with School of Code. I asked him for his thoughts on the process and joining our team:
“I’ve always been interested in code, but it always eluded me since I believed it was too complicated and an extremely specialist career that I would’ve felt alienated in. After starting the course, all of these myths I’d previously told myself were shattered, and I very quickly learnt that the most important part of being a developer is communication and genuine interest.
“I have loved every day working for adaptable. No one day ever seems the same as the next, since there is a huge variety in clients, and projects that come through the door. It’s a learners paradise being exposed to such different technologies and having the flexibility to explore my own solutions to assigned tasks, which then will be discussed with the developers to see how their methods would differ, or not.”
adaptable is a growing digital product studio with clients across the UK and the US. Consistently growing our number of client partnerships and working on more complex projects means we are always on the lookout for enthusiastic individuals to join our team of engineers.
We pride ourselves on an open, flexible and friendly culture where everyone is treated equally. On top of monthly socials, an annual retreat and Friday breakfasts, we also offer a whole host of great benefits including healthcare plans, additional learning contributions and a peer recognition scheme.