4 ms·
Forgetting fundamentals is not normal, at least that is what I thought. Responses in this post is changing my perception. No wonder, recruiting is hard. I hav
by ahati 4y ago
Forgetting fundamentals is not normal, at least that is what I thought.
Responses in this post is changing my perception. No wonder, recruiting is hard.
I have found a knowlge of OS, computer organizaton, digital logic, networking, compiler design are crucial. If you are into datascience or ML, math is absolutely essential. I don't know why so many people think forgetting fundamental is normal.
- going_ham 4y agoExactly (esp for ML/Graphics/Vision). However, I cannot say for other fields. That is why it is necessary to keep revising these fundamentals. I always plan to do it, but end up doing something else. >.< If anyone has idea on ways to design a revision schedule, please help me. Thank you in advance!
- barrysteve 4y agoWhen you're up in the tree branches, it's easy to forget what the roots look like. You're right though, we should hang on to the fundamentals to make adapting to new tech easier.
- scarface74 4y agoBecause most of the 2.7 million developers in the US are “Dark Matter Developers” writing yet another CRUD app.
- enumjorge 4y agoNot sure why people are surprised that others can have different experiences than they do. Sounds like your job requires knowledge of those fundamentals. Not every job is like that. If you’re writing an Android app or crud web service I’d say you’re likely not having to apply knowledge of compiler design. It’s pretty normal for people to forget knowledge they’re not using. Do you remember the physics, chemistry, etc fundamentals that you learned in high school/college if you haven’t been using them?
- arinlen 4y ago> I don't know why so many people think forgetting fundamental is normal. Because it is normal. The notion that you recall everything from a random class you took some semester years ago, and that it won't ever leave your memory, is not realistic nor grounded on reality. Furthermore, "fundamentals" don't mean the same for all people. Most developers will go through their entire career without implementing a single data structure or write a single pet OS or put together a single parser. They will however have to handle OO programming and software architecture and concurrent programming. I guess that the definition of "fundamentals" is tied to what you need to do to perform on your every day life, and that's why absurd things like interviewing candidates based on data structures and ask stuff like what's placement new in C++ is a complete waste of time and effort to assess how a candidate will perform.
- ahati 4y agoC++ and DS are not the sum total of CS fundamentals. They are just tiny part of it which I think a lot of people use and it is necessary to learn them. I am curious, do you enjoy your work? Considering that even if you do not have to 'use' any knowledge of how your 'system' is built, how do you resolve problems in your 'system'? Even then, what is is fun of not knowing what you are actually doing? It amazes me.
- tfsh 4y agoYour commennt exudes a particularly unpleasent pretentious tone. The average software engineer does not need to remember compiler design, digital logic, esoteric datastructures etc to do their job well. If people are forgetting "fundementals" (of which I would not classify specialised subjects such as compiler design), then it's because they don't need it for the job they're doing. Although I do agree that Computer Science theory is definitely important and knowing it is better than not. Sometimes a project your working on would benefit from knowledge of datastructures, cache locality, etc, and that makes the years of academia worth it.
- tempxyz 4y agoSo then, computer science puts you passed average.
- Kamq 4y agoI'd say it's more of a skill mismatch for what developers actually do. You're much more likely to end up debugging an issue with the interactions between 5-6 annotations in a spring controller than to be implementing any sort of exotic data structure yourself. Also scoping working differently in different languages seems to break certain people's brains, which is increasingly important with python becoming more and more popular and having a... unique scoping model (function based/LEGB). Some people manage to use that knowledge to bootstrap an understanding of the software ecosystem they find themselves in, and others really struggle with it and flail around. Then some other people manage to bootstrap these things from a biology degree or art history degree (or no degree at all)... somehow. I'm not entirely sure what correlates with success on that front actually.
- ahati 4y agoYou have nailed it.
- ahati 4y agoWhat pretense? I have already read other comments before posting. It is unpleasant for you to be on the other is of this argument? May be that is. I am wondering why you had a prenatious tone.
- raffraffraff 4y agoDepends on your age. If you left college 25 years ago and haven't use that knowledge since, of course it's gonna fade. My uncle left Hungary in the 1950s, aged 18. By the 1990s he couldn't hold a conversation in his mother tongue.
- ahati 4y agoI have left uni 19yrs ago. 6yrs to reach 25. CS topics are too interesting to forget. I always find fundamentals are useful to take good decisions in my work. Guess what? I don't speak much my language for straight 15 yrs. But am still able to enjoy books written in that language, I can speak on phone fluently.