Table of Contents |
In a previous lesson, you learned that web developers have a wide range of tools at their disposal. If you work for a development firm, the company may limit the tools you can use. However, as a freelance web developer, the choice will be yours. As such, it will be important to have an idea of the different approaches to web development and content management so you will be prepared to make the best choice for each project.
Common approaches include the following:
While using standard code editors and managing files and resources manually might give you the most control over your product and be ideal for smaller projects, this approach can easily become overwhelming for organizations to manage, much less an individual. Long-term organizational strategies, like thorough documentation, need to be employed from the beginning in order to make this approach possible for medium to large scale projects.
Additionally, this approach does not lend itself to taking advantage of today’s fast-paced and ever-changing environment. Businesses and organizations need to pivot quickly and adapt to changes in their environment, which means their sites and web applications need to do so as well. Utilizing a manual approach requires a lot more time and effort on the part of the developer and reduces the opportunity for real-time collaboration between the developer and designers.
The next step up from using a standard code editor is to use a WYSIWYG editor. WYSIWYG editors allow developers to interact with a website’s content directly. The page is rendered into an editor and the developer can directly select, cut, copy, delete, and edit content on the page. This allows them to easily deploy standard code structures and common page elements by simply selecting it from a menu or dragging and dropping it where they want.
WYSIWYGs often allow the developer to see and interact with the code while seeing the results of the code as if it had been rendered by a web browser. For example, DreamWeaver from Adobe Creative Cloud is a web IDE that will show you the rendered WYSIWYG version alongside its code. The developer can quickly drag and drop content and elements onto the page and then fine tune them in the code. This also creates a great opportunity for designers to get involved in the development process. Website designers may have little coding expertise and being able to see the rendered site alongside a developer allows them to make small changes to the design and have the developer implement them in real-time.
WYSIWYG editors provide a nice bridge between the previous approach of using standard code editors with the next approach.
Content Management Systems are software that removes the technical details and tasks of managing a website manually. Utilities, tools, and features of a CMS are focused on abstracting away the complexities of managing a site directly. Instead of managing files and assets, copying templates, editing lots of code, and having to update pages across the site, a CMS provides GUI-based tools that automate most, if not all, of these tasks. This approach is more ideal for large-scale projects that require lots of changes, have an emphasis on standardization, and/or when human resources are limited. This is also an ideal approach for small organizations that have fewer resources available to them and need to focus those resources on operations and tasks that add value to the business. Once the site is up and running, using a CMS the organization can spend less time and effort administering the site and more time on the business.
Many developers may tend to lean on one approach more than others, but being flexible is a valuable skill since different projects will come with different requirements and goals. A valuable web developer is able to effectively use a code editor, WYSIWYG editor, and CMS, to adapt to the specific needs of a project.
CMSs are another valuable approach that web developers should have in their arsenal as a working professional. A CMS enables a developer or site administrator to produce consistent and quality site content quickly.
One example of a CMS that is commonly used to manage websites is WordPress. WordPress is an open-source project that was designed to be very extensible by allowing developers to customize how the CMS works (wordpress.org, 2023). As such, not only are there many productivity and convenience benefits to WordPress itself but there is also a vast community of user-created plugins available to augment WordPress’s functionality and capabilities.
WordPress provides administrators with a convenient dashboard for managing content elements such as blog posts, pages, and menus while also providing tools to manage designs, themes, users, and plug-ins. The plug-ins themselves can change how the site looks and functions, as well as modify how WordPress operates.
EXAMPLE
WordPress was originally designed for managing blog posts and made managing a page’s content oversimplified and rigid. Plug-ins, such as BeaverBuilder, provide WordPress with a WYSIWYG interface that allows administrators to use drag and drop to quickly build new page layout structures and add premade, purpose-built content blocks.
WordPress
A popular open-source content management system.
The main drawback to utilizing a CMS is a loss of control over some aspects of the site and its code. Since a CMS has to be able to understand the code that it is managing for us, there are restrictions to how much code the developer can access and customize. As a result, if the desired feature or capability does not exist within the CMS and cannot be provided by a plug-in, then it is likely the feature will be able to easily implement manually.
Another drawback to such an extensible platform is that user-created plugins can rely on other plugins to function properly. This can result in an unstable environment if a plugin that other plugins rely upon goes through an update. This scenario can easily lead to a broken page or worse, an unresponsive website. Therefore, it is important for all developers and site administrators who utilize a CMS to carefully research the plugin they use, their developers, and reduce layers of dependency as much as possible (i.e. plugins that rely on other plugins that rely on other plugins).
Source: THIS TUTORIAL WAS AUTHORED BY SOPHIA LEARNING. PLEASE SEE OUR TERMS OF USE.
REFERENCES
WordPress (2023). https://wordpress.org/about/.