DEV Community

Cover image for What Data Structures and Algorithms should mean to you

What Data Structures and Algorithms should mean to you

Linda Okorie on April 04, 2020

Cover Photo by Tim Gouw on Unsplash Pursuing a career in Software Engineering is a lot of work. I get a lot of advice from different angles that i...
Collapse
 
therealchiko profile image
Chiko Mukwenha

Great post. What resources have you used that have enlightened you or made the topic exciting?

Collapse
 
ben profile image
Ben Halpern

Great first post

Collapse
 
jhelberg profile image
Joost Helberg

Nice one! Other reasons, besides performance: correctness of implementations and better readability for others as the design is based on common knowledge.

Collapse
 
dauntless profile image
Linda Okorie • Edited

Thanks. I see how that helps, especially when working in teams.

Collapse
 
roselle profile image
ChloΓ©

Thanks for the post. I've learned those last year but your post made me realise that I don't see myself using them in my job (well, apart from basic algorithms of course). So I'll dive more into DS & A and see if things I've coded could be improved.

Collapse
 
nyashanziramasanga profile image
Nyasha (Nash) Nziramasanga

Thanks for sharing this Linda, I have also been learning DS & A and I have realised a lot of my old code wasn't efficient because I used to just do the brute force method. DS & A has really helped in writing better efficient algorithms

Collapse
 
phantas0s profile image
Matthieu Cneude • Edited

Well, I would say: "it depends".

Depend on what? you might ask. Well, I'm a web developer for quite some time now, programming for even longer, and I rarely had to focus on algorithms to make my code more efficient.

Why? Because our hardware is so powerful nowadays, it doesn't matter if I do a bubble sort O(n^2) or a marge sort O(n).

So it depends of what you're doing. For web apps, what many people do, having this knowledge is not required to me. On the other side, if you work for the NASA or you code video games, you need to know that, and much more.

I'm trying to learn computer science at the moment, and I love it. Because I have some experience in development beforehand. It brings me some interesting foundations.

I wouldn't advise it to beginners though: it's difficult, if you're a Javascript developer for a small startup you won't necessarily see the application in your daily work, and you already need to manage so much only for your code to work, more or less, to maintain it, and to understand the code of others, among many other things.

Collapse
 
dantefrank profile image
David Dante Frank

Thanks a lot Linda. This was a great read. I have mulling over why I should learn DS & A and after reading this, it has become quite clear to me. What material would you recommend please?

Collapse
 
dauntless profile image
Linda Okorie

I recommend starting out with videos on Big-O notation. It would put you more in the mood and open your eyes to how terrible the code we write is (had that effect on me).

Collapse
 
dantefrank profile image
David Dante Frank

Thanks. I'll do that

Collapse
 
jgb profile image
Jean GΓ©rard Bousiquot

Awesome post! Thanks for encouraging me to study those more.

Collapse
 
bamoohaa profile image
Bashir Hamza

This is a great post. I love it!!

Collapse
 
sz4m profile image
SZ4M

Enjoyed reading the topic, currently, I have an introduction to DS&A, and after reading your topic I am more motivated.

Collapse
 
ilya_sher_prog profile image
Ilya Sher

searching for a number in an array

and then you a left with itching question whether it should be an array in the first place :)

Collapse
 
dauntless profile image
Linda Okorie

πŸ˜‚πŸ˜‚ yeah should it be a linked list or a tree?! More nuances to it all.

Collapse
 
damsalem profile image
Dani Amsalem

That's a great reason to study Data Structures & Algorithms. I'm a self-taught front-end dev as well and your article provided more clarity on the subject as well as nudging me to dig in.