Hacker News new | ask | show | jobs
by senjindarashiva 3751 days ago
Id say, learn about bigO notation rather than assume that it's useless. It doesn't require a university degree but it really does help, the more people that have an idea of algorithmic performance both regarding memory and CPU resources the sooner we can get away from all these "web-applications" that barely work but still loads a few mb of unnecessary js libraries. Apart from being annoying this also often leads to unoptimized code that causes wastes large quantities of cpu cycles draining the already feeble batteries of our mobile devices..

So please learn about and/or think about the concepts of bigO even if you refuse to use the math's involved.

2 comments

>It doesn't require a university degree but it really does help, the more people that have an idea of algorithmic performance both regarding memory and CPU resources the sooner we can get away from all these "web-applications" that barely work but still loads a few mb of unnecessary js libraries.

IMHO, this is exactly the kind of academic fetishization that makes these terrible interview questions so common in the first place: Knowing CS theory isn't going to slim down your build size or resource usage - knowing how to slim down your build size and reduce resource usage will do that.

And besides: no junior developer is going to be handed the kind of task where CS knowledge is remotely applicable. They are going to be building React/Angular/Etc components making backend CRUD APIs. They aren't going to be rewriting searching or sorting algorithms. For that matter, they aren't even going to be deciding what libraries to include that overload your phones resources.

I know more than enough CS theory to play the interview games. How much have I used it on the job? Maybe a couple of times a year, if that. In the first few years, never at all.

I do kind of see your point at least regarding the usefulness of those types of questions in an interview. I would however still maintain that understanding of fundamental CS theory is and always will be a great benefit.

You say that you "never" use your CS knowledge if that's the case how to you decide if you are going to use a bogosort or a quicksort? I know that javascript simplifies a lot of these things, but you still need to be able to make informed decisions about performance trade-offs in your applications. And we still have a fairly large tech job market that does not involve any javascript at all, forcing developers to have at least some minor knowledge of datatypes.

Finally even if your target is to be a javascript(Angular/react/"whatever is cool right now on the web") developer at some flashy startup, I can't believe that some knowledge of design patterns, algorithms and datatypes would be considered anything other than beneficial.

And I would maintain that the internet as a whole would be a lot better if it was possible to view a page designed to display some text without having to download every framework created.

Sorry for the rant, I do really agree with you that there might be an unnecessary bias towards actual University degrees, this does not mean that the knowledge they represent (that can be learned without ever stepping a foot outside your door thanks to eh internet)is useless or not beneficial to any tech career.

How does stating otherwise differ from stating that civil engineers don't need to know math the have calculators.

I can only speak for myself but I'm at my first job out of university -- been here about 11 months -- and 6 months in I was tasked with implementing a feature that required directed graphs, (recursive) depth first search, and memoization at its core. These weren't concepts I was told to use ahead of time but ended up coming in handy to conceptualize the problem in the most basic way, without letting business rules cloud my thought. I don't have a degree from a top 100 school or work at an exotic place either, and I don't think my situation is unique. Just wanted to add a counter example.
Personal story for another POV: I've worked at seven tech companies in my career. BigO notation has never come up once in an interview.