Better Website Development in Guyana

Better Website Development in Guyana
4-minute read

Given the modern advancements in web technology I find it funny that we as Guyanese have been “evolving but backwards” in providing businesses and customers with websites that are optimized for lower end devices and take into account the internet speeds available to the average Guyanese person. Upon analyzing multiple site performance metrics, I have come to the realization that many websites that are supposedly well known to the public are made by people who couldn’t care less about who opens a webpage or which file is too big or too hidden or if a link shifts from under my thumb as I try to navigate an already confusing layout.

What bothers me the most is that some companies doing web development appear to be legitimate companies with multiple full-time employees yet no one can find the time to make a website without a content management system (CMS) like WordPress and Drupal or an overpowered Javascript library like React. I’m talking static websites - websites with no need for user login and data collection (no sane person would want to freely give you their email address for a newspaper website btw). This even counts for dynamic websites where a framework that provides a template engine (like Django with Jinja and Laravel with Blade) would be a superior option.

I have no issues with being an efficient worker but using the wrong tool for the job is the name of the game here. I understand that it takes time to learn a new tech stack or tool but it’s a drop in the ocean when it comes to creating a national standard for tech products and systems in Guyana. I don’t like complaining about issues without providing solutions so here’s a few tips:

Don’t collect the user’s data if you are not going to use it for something useful. This counts for informational websites and other dynamic websites. If I want to read the publicly available content on your website I shouldn’t have to sign in for it.

Create your own stylesheets for your website. Using someone’s 3 megabyte css file just so you can do an off-canvas and 4 display headings is a waste of bandwidth.

Use the height and width attributes for images and include a min-height and min-width in their style attribute. Their object-fit should also be considered. I hate that your web pages expand like a balloon before I even begin to scroll.

Optimize your images to be appropriately sized and preferably webp format. There are various command-line tools and even language-specific packages that can help automate this process (Python has an Image.thumbnail() function in the PIL package; make a script to use it).

Off-load sending dynamic web pages to a static file server like nginx or Apache. Have your framework create static files from the dynamic pages generated by the template engine and stash these files locally. Refresh the static file generation daily and leave the heavy lifting to a tool that’s built for sending files.

Logos don’t need to be big Make them tiny.

Font sizes have to allow pages to be readable Use rem not px (1.15rem is good). We can’t talk about having responsive websites if the people are peeping to read it.

Stop loading videos on your website. If we wanted to watch videos we would be on youtube. Use a youtube embed if you are desperate. Videos are too big. They don’t belong on a mobile device screen unless they are tiny in size and in portrait.

Don’t use a content delivery network (CDN) pretending like it will solve your main issue of web bloat. A bloated webpage served from Brazil is just as slow as one served from India. Fix the real problem here.

Ease with the analytics Stop using the user’s device to load huge Javascript code chunks that send their browsing habits back to your server or someone else’s. If you really want to know how many users are visiting your website just use a server-side analytics tool. Your server knows when it sends a file - you don’t need my phone to tell you about it.

Use an analytics tool Websites like DebugBear and Google’s PageSpeed Insights provide free site analysis and advice on how to improve your users’ experience with websites you build.

Just put some more care into what you do. I don’t imagine that you will ever become a worse developer by trying to optimize your websites to be blazingly fast. I know I have learnt quite a lot by simply trying to make a few small tweaks here and there on my websites. Attention to detail is what we need to train more often. It should bother you when you go to sleep that you are not doing your best. This applies to every facet of life but especially to web development where the lives of other persons can be negatively impacted by the performance of your software product.

Conclusion

These are just a few points but hey it’s a start.