Slow systems are a bane of any product. Ask the audience of web applications, and you would know. Research has found that 47% of users expect web pages to be loaded in 2 seconds or less, while 40% of users would abandon a site if it takes more than 3 seconds to load¹!
While there are numerous methods to optimize the performance of a web application, we want to focus on the performance of our backend for this discussion. …
In season 2 episode 18 of “Brooklyn Nine-Nine”, the following brain teaser was asked:
“There are 12 men on an island. 11 weigh exactly the same amount, but one of them is slightly lighter or heavier. You must figure out which. The island has no escapes, but there is a seesaw. The exciting catch? You can only use it three times.”
“There are known knowns…There are known unknowns….But there are also unknown unknowns.”
The above phrase was coined by the former US Secretary of Defense, Donald Rumsfield. He ended off the quote by saying “And if one looks throughout the history of our country and other free countries, it is the latter category that tends to be the difficult ones.”
Difficult…that is an apt term for these “unknown unknowns”, or otherwise referred to as “We don’t know what we don’t know”.
And not knowing what we don’t know, is a flaw that applies to all of us. Yet, by being aware…
I am obsessed with achieving high levels of productivity for myself.
As a working adult on a full-time job, I commit myself to work on office hours for the weekdays. Sometimes I pull longer hours if there is a need. Here, I feel truly productive.
However, this obsession with productivity becomes tiresome when wired in other directions. For example, during the weekends or after working hours, when I don’t find myself doing enough productive activities (such as learning, side hustles, etc.).
I feel the lingering sense of dread of being unproductive.
If you have felt this way, like I did…
“Searching” is a classic problem that many web applications face.
Look at any e-commerce site — to find what you want from their vast catalog of products, you can run a search on related keywords. Or social websites like Facebook and Reddit — search serves as an entry point to find relevant content like users, threads, and so on.
At times, implementing search on a backend application can be a simple process. If you are using a relational database that supports Structured Query Language (SQL), plugging in the LIKE operator in a query could work in finding relevant data.
Communication is key to human life.
And that’s not an understatement. Humans, regardless of gender, convey a total of around 16,000 words a day, as found by a study done at the University of Arizona in 2007¹. Yet, this is just the tip of the iceberg — when communicating in English, we look at forming sentences from an active catalog of ~170,000 words². However, if we account for non-verbal communication of body language, we see that it amounts to much more, over 700,000 possible motions!
It’s well established that communication is an important aspect of our advancement as a species…
Author: Adam Grant
Total read time: ~12 hours (audio book was used)
Rating: This was a good book! The later parts were abit slow, but overall a good read even for myself where I rarely finish books in two sittings or less!
Are you a giver, a matcher, or a taker?
At least, that was the feeling that the book left me with, throughout the time I was reading it. The book defines these three philosophical stances as the following:
Taker — Someone who takes more than gives to the people around him/her, most often to forward himself/herself.
There is always the first time. Your first language. Your first script. Your first website.
Not only developers can own websites. With the right knowledge, anyone can do it!
So…how exactly does one get started?
In today’s ecosystem of tools and services, bringing up your own website that is uniquely yours, is no longer an insurmountable task as it was decades ago. You do not need to have your own server rack (or laptop) running persistently in the corner of your room to host your own website/online portfolio.
In fact, it can be quite easy to bring up a site…
Just a while ago, I chanced about this article, briefly explaining about memory utilization of
File.foreach . It made sense — read all the contents of the file at once and “pay the price” in memory cost.
How about writing to a file? I wasn’t able to find any articles directly referencing file write. Well, let’s test it then, shall we? 😆
Writing unit tests in Go ain’t the easiest thing to start with.
Note that I didn’t say that it’s hard to write unit tests in Go. Rather, the “vanilla” test tools may not represent the most intuitive usages, to begin with. However, if you know where to look, it is possible to write effective and understandable tests for your Go applications. It’s even possible to integrate these tools into your environment, and use them to enhance your team’s experience with testing.
I’m here today to share 3 tips I’ve learned over the years, in testing with Go.
As an engineer…