Written by Pete Sahlberg, one of our web developers who has worked on websites for Arrowhead EMS, Duluth Running Company and ShipRock Management.
I’ve survived my first year at Swim Creative—and become a WordPress* developer in the process. I’d call myself a WordPress maestro, but I continue to learn something new about it every day. It’s led to me becoming more fluent in PHP (a hypertext preprocessing language) and knowledgeable of web best practices. What I used to think of as a simple blogging tool has become an everyday essential. But why do I consider WordPress like a friend? It all comes down to ease-of-use, extensibility and a supportive online community of developers.
*In case Mom is reading this, WordPress is a content management system (CMS), which is an online program that manages your web content/pictures/words/etc.
Before using a CMS, my initial perception was that they were complicated and not very user-friendly. Turns out the WordPress interface is pretty darn intuitive. Easily navigable menus can be found for pages, posts, media, themes and appearance and a handful of others. Furthermore, the transition from viewing your live site to editing its content is quick and seamless. In regards to front-end development (making websites look and function well), there are a ton of built-in, predefined PHP functions to utilize your website’s content and data. Parsing HTML with PHP code (injecting functions and data into the framework of the website) was a new and exciting experience for me—it answered a lot of pent-up questions I had about pulling and manipulating information from a database to the front-end of websites.
During my first sessions with WordPress I also noticed that the interface was virtually the same as the CMS I used at my previous internship—a system that was developed by the company itself by in-house software engineers. It’s comforting to see that whether it comes to proprietary or open-source software, things tend to manifest similarly.
Over time I’ve slowly wrapped my brain around just how extensible WordPress can be. The beauty is it can be as simple or as complex as you want—it just depends on how much you want to do with it. Every function and template can be located, modified or appended, making it completely customizable (as long as you know what the hell you’re doing in there). This provides a great sense of freedom and power when it comes to development. The template system is also very intelligent; it utilizes a finite set of templates that are arranged and repurposed to form every page on your site—this allows for less coding, greater efficiency and abides by the web best practice ‘DRY’ (Don’t repeat yourself).
Although the built-in functionality already has great potential, you can implement any number of widgets, plug-ins, themes, hooks, queries, custom posts, taxonomies, categories… the list goes on. All of these elements alone are simple and easy to understand, but when combined create awesome, complex and dynamic systems that can either be user-driven or automatic and behind the scenes. That being said, I’m hard pressed to think of any website project that couldn’t be efficiently built and managed using WordPress.
The aforementioned items definitely make me appreciate WordPress, but my overall favorite aspect has to be its online community of developers and its extensive documentation—this is a saving grace for new developers like me. WordPress also has a library of thousands of plug-ins (software components that help customize your site) made by users, companies and organizations. While It’s not ideal to rely on other’s plug-ins, the odds are that someone has already solved your coding problem and posted about it online. The ability to do one Google search and have real, helpful answers is super useful—and helps keep me from bothering Ben, our director of interactive media, about some function I can’t get to work. (Sometimes I still bug Ben because it’s pretty fun and he knows a ton.)
Learning the ins and outs of WordPress has changed the way I approach my web projects. I’ve grown extremely fond of its intuitiveness, extensibility and large support system. In many ways it is similar to any good friendship—mostly fun and exciting, but often times humbling and downright frustrating. While sometimes it’s a lot of work, it’s constantly forcing me to learn, grow and become a better person… at developing. But, that’s enough anthropomorphizing for one blog. I look forward to another exciting year at Swim developing for WordPress, and I’m very excited to make more kick-ass web experiences.