Data Structures are Overrated?

Jaideep Pahwa
Geek Culture
Published in
8 min readJun 19, 2022

A question for which every developer wants an answer.

Trees, Tries, Maps, Graphs, we are not planning any camp trip (though we would love to:)), here we talking about data more specific data structures. Data Structures are one thing that is most popular and hyped among any software engineer around the globe. There are many aspects of Computer Engineering it may be programming languages, cybersecurity, computer networks, and many more but no topic is discussed as much as Data Structures.

Different questions might come to your mind, What are data structures? What are this hype and popularity about? Does this really deserve such popularity? We will discuss Data Structures and their hype in detail in this article.

What are Data Structures?

As the word Data Structure, itself says it is the structure of data. Data Structure is made of combining 2 words. First is Data, which means any form of information, knowledge, or collection of values; second is Structure, which means any form, shape, or way the data is collected or stored. Together we can say that data structure is a specialized way we collect, store and present the data such that it can be used for different purposes.

Data is everywhere. You browsing the web, watching videos, using social media, or even if you have just logged into your system, data is being collected. All the may be present in different forms it may be stored in some tables in different databases or in some centralised Data Lake in structured or unstructured form and may be used later for different purposes. One thing is common in all these types of storage which is for using this data or performing some operations on this data it needs to have some specific structure. That is where Data Structure comes into the picture. For example, we may want to represent the data in some hierarchal manner, for that we would be using a tree data structure to represent the data.

Types of Data Structures:

Data Structures are of different types based on how the data is stored in them. The following are different types of data structures:

  1. Linear Data Structure: These are data structures as the name suggests where the data is stored in a linear fashion having entries one after the other. These include data structures like Array, Linked List, Stacks, Queues, etc.
  2. Non-Linear Data Structure: These are data structures and the name suggests the data is stored non-linear fashion. These include data structures like Trees, Graphs, etc.
Types of Data Structures

Each type of data structure is built keeping different use cases in mind. For example when we want to store a list of data such that random access of values from any index is possible then we may want to use Array and if we don’t want to access the values using the index and we don’t have a large chunk of continuous space that we may use a linked list.

You would have noticed that I have used the word may instead of must in the above paragraph. That is because there are no hard and fast rules for using any data structure but every data structure has some specific properties that will make using a particular data structure best for that particular use case.

Importance of Data Structure?

Data Structure is everywhere when you start working on anything related to computers. We can say that ‘Where there is data, there is a data structure’. With the advancement of technology, more and more people are coming online and sharing data. Snapchat users share 527,760 photos, more than 120 professionals join LinkedIn, users watch 4,146,600 YouTube videos, 456,000 tweets are sent on Twitter, and Instagram users post 46,740 photos all this is happening in just one minute of the day. Now it is you to imagine how data this would be. This is just the small part of the big picture.

All this would not be nearly possible without the Data Structures. When you are online surfing the Instagram stories and reels, Would you like buffering and loading after each reel?…. No!! All the smooth experience you may have on the internet is due to the efficient use of data or indirect data structures. This is why data structures are becoming more and more important. With the increase in scale and amount of data to be handled, so has the importance of data structure.

Why the Hype?

Till now we have understood the, what is Data Structure, the types of data structures and why it is important. But, What is the reason for the hype about data structures among the developers?

With everything coming online, even the jobs that required manual intervention a few years back are now getting automated. AI/ML is making our life easier and companies profit higher. Many large companies are investing huge amounts of money in their tech talent that can not only handle this large scale of data but also use data efficiently to get the max out of it. handling all this is require a great number of skills. You may work in any part of this system but one common skill you will always require will be the skill of data structure. Data structure and become the backbone for everything related to computer science. You think about computer networks, cyber security, hot topics like AI/ML, you name it and data structure is there.

This has resulted in computer engineering students who want to join and work in any of the big companies focusing on everything else + Data Structures. As demand and hype always go together, hence the hype. Even companies wanted to have engineers who have some skills + Data Structures, hence the hype.

Modern Interviews

As the industry started moving towards automation and adopting computer systems in their working the demand for computer engineers started increasing steeply. Each company wants to hire the best talent that helps the company support and grow its tech. When it comes to hiring developers there are a wide variety of skills that need to be tested for a particular candidate due to this industry strongly required one common skill that can be used as the base for choosing a candidate. That is where the industry chose Data Structures as a base for testing skills.

Each tech company started using data structure as the base for selecting candidates. This is when data structure started becoming more and more popular among computer engineers. While many companies along with the data structure have also adopted a complete process to test a candidate, truth be told, Data Structure is still the giant in the room and one of the most important parameters. This has resulted in changing psychology of computer engineers, where the data structure is the center of their preparations among all other things.

Competitive Programming

This has not stopped till the interviews, but data structures are now moving over their current push for interviews to the level that it has become a competition for engineers. This has resulted in the creation of sports/challenges like ‘Competitive Programming’.

Developers are coming together to solve monthly, weekly, and daily challenges. This has given birth to many competitive programming sites like CodeForces, CodeChef, LeetCode, HackerRank, HackerEarth, etc. Developers wear ranks from these sites with the proud. Generally, it is considered that the higher the rank higher the chances of getting their dream job. Even companies are not left behind. Companies like Google regularly organizes a different competition in which developers take part to show their skills.

Now, let us come back to the question of the moment,

Are Data Structures Overrated?

My answer would be No and Yes.

No, Why? Data Structure as we discussed earlier is the core of everything related to computers. Being a developer, one can easily understand its importance. you may write a single line of code and think that you have not used any data structure, but that's not the case, data structure is the base for any modern programming language. Modern Day programming languages are full of inbuilt functionalities that it becomes difficult to notice/understand the use of data structure, as the result many developers take Data Structures lightly and hence their code quality suffers. One should understand data structure to make use of the programming languages at their best. Believe me, the importance of data structure is only going to increase from here with an increase in data and its usage. And it will not wrong to say

Developers is as good as he/she is good in Data Structure.

Yes, Why? There is no doubt that data structure is important and will remain important. But all the hype around it really not worth it. Many developers are overthinking when it comes to the data structure. Yes, competitive programming improves problem-solving skills but that is also a fact that the best competitive programmer may not be the best understander of Data Structure. Companies and their interview structure have only magnified the situation. Many developers these days are running behind ranks in competitive programming and solving as many problems as they can or even cramming those. But the understanding of data structure demands none. What one should focus on is developing overall skills and understanding of data structures. This has also resulted in many good developers missing out on different opportunities.

Conclusion

In this article, we took a deeper look at the Data Structures and types of Data structures. Then we checked out what is the importance of data structure. Then we took a look at the hype behind the data structure. In the end, we tried answering our question of the moment, Are Data Structures Overrated?. We can conclude that Data Structure is one of the most important parts of computer science but we should try to avoid overhyping the data structure and should focus on understanding data structures.

On a lighter note:

If you loved my work please like and share this article(and it's free :)). Also, do follow me for more articles like these.

More Reads :

FHIR for Developers

9 stories

--

--

Jaideep Pahwa
Geek Culture

Software Engineer at Walmart | Tech Enthusiast | Avid Learner