Tusim, ze tak, ze nekdo napsal, ze vsichni vyvojari potrebuji umet pocitat v binarni aritmetice. JS FE dev byl protiargument.
Stejne tak ale podle me bude platit i o webari (BE nebo full-stack) v Pythonu, Ruby, JavaScriptu, Jave, C#. To, ze to jazyk podporuje, neznamena, ze se to ma pouzivat, nebo ze to dev musi umet. Na urcitych pozicich se neocekava, ze budete kouzlit s jazykem za kazdou cenu usporeneho znaku nebo 0.1% vykonu - napr. mit nekolikrat zanoreny operator ?: v JS neni moc dobra praktika, prestoze to muze usetrit hodne mista oproti pouzivani if. Stejne tak pouzivani bin. posunu >>, << a bezznamenkovych posunu >>>, <<< na FE neni stastne.
Ja chapu, ze v embeded je to bezna vec. Tam ale opravdu potrebujete sahat na bity, protoze jste tak blizko HW. Tam se dokonce i ty mikrooptimalizace muzou vyplatit, protoze ten HW muze byt velmi slaby a/nebo mit velmi malo mista v pameti. Koneckoncu C/C++ je mnohem blize ASM a strojovemu kodu, nez JavaScript nebo Java a neprovadi se zadny JIT, mate tedy mnohem vetsi jistotu, ze vase optimalizace neni zbytecna a VM ji neudela lepe, protoze za behu vyzkousel a zmeril nekolik mutaci. Cim vys v jazycich a frameworcich jdete, tim vyssi vykon se od HW ocekava a tim vetsi abstrakce by jste meli pouzivat. A na ty opravdu vykonostne kriticke operace mate potunenou knihovnu, engine nebo VM.