Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>First of all, abstractions are inevitable because they help us to deal with the mind-blowing complexity of things.</p> <p>Abstractions are also inevitable because it is more and more required of an individual to undertake more tasks or even complete projects. To address the problem, one uses libraries which wrap lower-level concepts and expose more complex behavior.</p> <p>Naturally, a developer has less and less time to know the intrinsics of the things. The latest concern I heard about on SO pages is starting to learn JavaScript with jQuery library, ignoring the raw JavaScript at all.</p> <p>The issue is about the balance between:</p> <ul> <li><p>Know the little tiniest details of some technology and be a master of it, but at the same time being unable to work with anything else.</p></li> <li><p>Superficial knowledge of a wide variety of technologies and tools which however proves sufficient for common everyday tasks which allows an individual to perform in multiple areas possibly covering all sides of some (moderately big) project.</p></li> </ul> <p>Take your pick.</p> <p>Some work requires the one, another position requires the other.</p> <blockquote> <p>So, in you're opinion, how important is it that programmers actually know what is going below the abstractions?</p> </blockquote> <p>It would be nice if people knew what is happening behind the scenes. This knowledge comes with time and practice, up to a certain degree. Depends on what kind of tasks you have. You certainly shouldn't blame people for not knowing everything. If you wish a person to be able to perform in a variety of fields, it is inevitable he won't have time to cover each up to the last bit.</p> <p>What is essential, is the knowledge of the basic building blocks. Data structures, algorithms, complexity. That should provide a basis for everything else.</p> <p>Knowing tiniest details of some particular technology is good, but not essential. Anyway, you can't learn them all. They're too many and they keep coming.</p> <blockquote> <p>Finally, what do you think about the issue that schools are preferring to teach Java instead of C and Lisp ?</p> </blockquote> <p>Schools shouldn't be teaching programming languages at all. They're to teach basics of theoretical and practical CS, social skills, communication, team work. To cover a vast variety of topics and problems to provide a wide angle view for their graduates. This will help them to find their way. Whatever they need to know in details, they'll do it on their own.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload