Web Development Must Be Considered as a Whole

“Visit our website” is the phrase found in every press release and at the end of articles and white papers. Websites have become the primary medium to inform the public about products, services, leisure, news, education, and just about everything. But to fulfill the websites’ mission, their developers need a fine understanding of their website visitors, their tools, and the deployment of their back-end applications.

In this article, I explain why it’s important to understand usability and accessibility deeply—the user experience (UX), but more—to understand the impact of the tools you use to build your website, and to deploy your application efficiently on your servers.

Usability and Accessibility

Keep informed about innovations in the display of information that can make your website easier to view and navigate. It’s the responsibility of the web developer to create a structure for the website that allows visitors to navigate the contents in a reliable, agile, and efficient way.

An example of a successful web design element is the accordion, which displays brief summaries of the most popular questions about a topic. When a visitor clicks on a summary, it expands into a fuller explanation. This element displays content that interests most visitors concisely, and makes navigation friendlier. The accordion works better if an open element collapses when the visitor opens another element. The accordion is particularly suited to the many visitors these days who visit websites on their phones, because the element reduces scrolling.

Most websites today are not accessible to all visitors—even though accessibility is required by regulations such as the Americans with Disabilities Act in the USA and the European Accessibility Act in the EU, and even though the World Wide Web Consortium (W3C) offers precise guidelines for accessibility.

Websites still put backgrounds that are not distinguishable enough from the print that appears on them, or provide important features through graphics that have no accompanying explanatory text. The sites don’t work well for visitors who require assistive technologies such as screen magnifiers, screen readers, or voice recognition. Many sites are also not responsive: that is, they don’t adapt to the size of the visitor’s screen. Others fail to support all legitimate forms of payment.

These usability problems plague many sites even if they use content management systems Drupal or WordPress, and depend on themes that create the user experience. It should be noted that addressing the needs of disabled users (the blind, those who have trouble manipulating a mouse, and so forth) usually also provides a better user experience for other visitors.

Performance is also your responsibility as a web developer. Websites often contain large graphics that don’t respect the needs of people with slow Internet access. Some popular web modules also create a performance problem, by making features a priority and loading sites down with all kinds of programming code that your site might never use. Before you use a module, research its security record, its behavior, and its potential effects on performance,

But too many developers assume that performance is fine because pages load quickly into their browsers in the office, or at home on their high-speed Internet connections.

Project Integration

User experience is not the only topic calling for research. Web developers must also think about how to integrate their code into their organizations.

It’s important to deploy your application in a manner that doesn’t affect other projects. When I started web development, my work environment was on a virtual server with a Linux system. A single directory held all the projects we had developed, including those that had been retired.

These projects shared system resources. Therefore, when we needed to update a website, other projects were affected.

That’s when I saw the need to investigate and implement another solution. I chose the container management system Docker, which put my code in an independent container. This change allowed me to configure the precise requirements of each project, such as a specific version of the database engine, web server, or interpreter.

While exploring deployment options, I discovered other collaborative tools such as the version control tool Git. Version control is very useful in web development, as on other projects requiring updates. Using Git let me share my work with other developers.

Resources such as the Web Development Essentials program from the Linux Professional Institute (LPI) offer web developers the opportunity to acquire basic knowledge of critical tools such as HTML, JavaScript, CSS, and SQL.

The practical experience you obtain by completing the program allows you to step into the wonderful world of web-based software development, to understand the workings of the systems, applications, and websites that we use every day, and little by little to discover how you can create your own solutions for your organization or personal project.

In summary, our work as web developers, in addition to producing websites, is focused on researching, testing, innovating, and especially enjoying these other sides of programming. In addition to writing source code, a broad approach to our job allows us to improve the end user’s experience in accessing information.

<< Read the previous post of this series | Read the next post of this series >>

About Marbellys Martinez Alfaro:

Computer Engineer with emphasis in Project Management. I have worked in this field for 15 years and in the last four years I have dedicated myself to developing websites at the University of Costa Rica. My experience with visual disability has allowed me to learn, advise, and implement solutions related to web accessibility. Also, educate other people about the importance of access to information for the different types of users according to their needs. You can contact me through Linkedin.

Leave a Reply

Your email address will not be published. Required fields are marked *