Quality Data, Quality Decisions: Why Web Scraping is Essential for Advanced Analytics
Gediminas Rickevičius·9 min


A list of all the frameworks. Illustration by Eric Heikes on ericheikes.com[/caption]
If you are a computer scientist you might have noticed that new frameworks are constantly popping up. Programming languages just keep showing up and old ones that can’t keep up are becoming deprecated.
Popular JavaScript frameworks and libraries on rubygarage.org[/caption]
Believe me, you do not have to master all the frontend web frameworks to be a frontend web developer, just use things that make you comfortable. It just annoys me that there are so many different frameworks that it gets confusing.
Popular Web frameworks on nickjanetakis.com[/caption]
Adding to that, the level of abstraction in these frameworks can also be very hard to understand. This doesn’t only apply to frontend frameworks because backend frameworks also have a lot of ‘magic’ frameworks. These ‘magic’ frameworks are very confusing for people who want to learn to program, the level of abstraction in some of these frameworks are so high-level that it’s hard to grasp the basics. In the end, you might end up memorizing code other than understanding them.
Even though memorization seems like the most likely answer to this problem, frankly it is not. Memorization of code is the worst thing to do because different programming languages already have different syntax, but a framework based on the same language also have different syntax. It is not the optimal answer, that’s what I am trying to say…
St. George and the Dragon by Peter Paul Rubens[/caption]
In a hero’s tale, the villain overpowers the hero in the first battle. Only for the hero to train intensively and face the villain again to finish the tale once and for all. This story is a good metaphor for the learning curve. At first, it seems impossible to learn every single thing to complete a task, but when we ‘train’ ourselves by doing these tasks separately and repetitively it becomes easier and it becomes more understandable.
[caption id="attachment_18054" align="alignright" width="300"]
Illustration of a Learning Curve by Alan Fletcher[/caption]
Illustration of an MVC architecture on Wikipedia[/caption]
For example, Ruby on Rails and Django are web frameworks designed with the same architecture in mind. The Model View Controller architecture or MVC for short. If you understand the fundamentals of an MVC framework transitioning from Ruby on Rails to Django is only a matter of syntax. Development-wise there will be a lot of similarities. Learning the basic architecture pattern is are like beasts.
Hercules taming Cerberus by Peter Paul Rubens[/caption]
Taming the beast should be the first thing all of us ought to do. Like in every story to save the beautiful heroine you must tame the dreaded beast. Sadly, not everyone is fond of your journey. Some might worry, some might question, and others are skeptic. But all you should know is to tame the beasts and to save the heroine. What I am trying to say is. Yes… theory sucks, learning algorithms aren’t as fun as building a website with Rails, and architectures seem unimportant. But knowledge about these fundamentals is going to define you and what you know.

Agustinus currently works as an IT Architecture and Web Services Staff at Bina Nusantara IT Division. Handles crucial API for the company's core data process. His hobbies include reading, writing, and coding (obviously!). His interests include automation, natural language processing, and artificial intelligence. Though he isn't a tech-specific writer, you can read more about Agustinus and his works on his blog.