Autodidactisism: The Concept of Learnability in Web Development

web development tips

Give a man a fish, he’ll eat for a day; teach a man to fish and he’ll eat for a lifetime. Now that artificial intelligence (AI) development has ramped up considerably, various prominent thinkers have floated the idea of a universal basic income as one proposal to combat the potentially reduced amount of jobs that would be taken over by AI and that particular cliche has been on my mind quite a lot. The idea behind the quote is rather simple, instead of simply giving someone what they need, give them the ability to obtain what they need by themselves.

I like to think of myself as a progressive but perhaps because it’s because of the values my family have instilled in me, I believe in the idea of making a living out of an honest day’s work. Self-sufficiency has always been a concept that I found to be admirable, which is why the idea of a universal basic income isn’t something I’m ideologically on board with, even if I know it is somewhat inevitable. It’s also thanks this belief that I’m a huge proponent of the concept of learnability in web development and software development in general, as it promotes the idea of self-sufficiency on behalf of the users.

Learning the ropes in web development

You know how when you’re just starting out on a video game, you’re inevitably be presented with a tutorial of some sorts that shows you how to play the game? In the video game industry, this tutorial is usually divided into two broad categories, the hand-holding approach and the hands-off approach. The hand-holding approach takes its name from how parents usually hold their children hands whenever they’re together. In the hand-holding approach, players are practically infantilized in that the game basically tells them everything they need to do in order to play the game.

The hands-off approach uses a different tack in that it doesn’t force this information down player’s throat and instead acts more like general pointers that players are free to ignore. I’ve always despised the former approach because when a game needs to have its mechanics explained in full detail, that’s either a sign of bad design or a lack of faith in the developer’s part for the players. Good design shouldn’t be obtuse, it has to be something that is easily recognizable and learnable even without excessive hand-holding, which is where the concept of learnability comes in.

Websites are nowhere as complex or as interactive as a full-fledged video game but as technology progresses, websites now have considerably more features baked in compared to how it was a decade ago. Web developers then have to figure out a way to make sure that users are capable of using these features the way it was supposed to without excessively overwhelming them with tutorials and guides. This is especially important in web apps as they’re considerably more interactive than the typical websites.

Familiarity breeds security

If you’ve ever spent a prolonged amount of time away from what you refer to as home, then you’d no doubt be familiar with the idea of comfort food. For the South Asian diaspora for example, something as simple as a yogurt starter is enough for them to bring the comforts of their homeland into wherever they currently live. The usual insult thrown at familiarity is that it breeds contempt but it can also breeds security (and in the case of comfort food, affection) and this no truer than in the world of web and software development.

There are a number of free office programs you could use as an alternative to Microsoft Office but you would also notice that practically every single one of them uses a visually similar interface. I typically use Google Docs for my office needs but I also have Open Office installed for emergencies and moving between these two and Microsoft Office installed on my work computer is as seamless as it gets. The icons used are mostly similar and the options & features are located and labeled just as how I expect them to be.

The easiest way of making your website easy to learn is by following on what is considered best practices. A magnifying glass or a box labeled ‘search’ would be used for the search function. An image of a shopping cart opens up items that you’ve placed in your virtual shopping cart and an envelope, even though almost no one sends physical mail anymore, is used for the built-in messaging feature. Clicking on your username or profile picture would lead to your profile page. All of the above concepts are considered industry standards and to provide a seamless experience for users, don’t ignore them.

Use microinteraction features

You walked into an unfamiliar office building for a meeting on the 15th floor but when you pressed the elevator button, you noticed it doesn’t light up the way you expected it to. You automatically assume that the elevator is out of service so you tried the elevator on the opposite of the hallway and you noticed the same thing. You then asked the receptionist at the lobby if the entire elevator is out of service and then they answered that the elevator actually works, it’s just that the buttons don’t light up. Microinteractions are small but they are essential as is the case with elevators and for websites.

Microinteractions are the little things that act as a signifier to confirm that the user has performed a certain action. A filled heart sign when you liked a post on Instagram for example or things flying to your virtual shopping cart whenever you add an item in an e-commerce site. Microinteractions are useful to provide clarity as it could prevent users from performing the same action twice, something that I tend to do when the internet is spotty.

Always try to keep it simple

One thing I heavily dislike about reading fantasy books is that typically, even before I arrive at the first page and their plethora of made-up words, I’m going to be presented with a bunch of supplementary information that is central to the book’s lore. I find this to be seriously off-putting as the last thing any writer should do is to overwhelm the readers with information, and this philosophy is also true to the world of web development.

Always strive to keep your homepage simple, which can be especially important for e-commerce sites that feature thousands of different products. Web apps tend to be guilty of this as well, providing dozens of unnecessary options and features that might not be necessary to the majority of users. Having lots of features are great but unless they’re essential, hiding them behind a menu might be more preferable so as to not make your interface became too cluttered.