3 ms·
Agreed, it's a poor argument. I once worked for a hardware company which manufactured Set Top Boxes (like TiVO). They could have developed the UI engine in any
by jondubois 8y ago
Agreed, it's a poor argument.
I once worked for a hardware company which manufactured Set Top Boxes (like TiVO). They could have developed the UI engine in any language, but they chose JavaScript (running on their own custom JS engine). It's surprising how many companies use JavaScript to implement the UI for their hardware devices; to infer that developers only use JS because they don't have a choice is inaccurate.
JavaScript has become a great language. I've programmed in pretty much everything else so I think I'm qualified to say this. In my opinion, if a developer needs to know just two languages today, it's JavaScript and C/C++.
With knowledge of JavaScript and C/C++, you can do anything on any device. A developer who knows JavaScript and C/C++ is usually a pragmatic developer; a good developer.
- scarface74 8y agoI once worked for a hardware company which manufactured Set Top Boxes (like TiVO). They could have developed the UI engine in any language, but they chose JavaScript (running on their own custom JS engine). It's surprising how many companies use JavaScript to implement the UI for their hardware devices; to infer that developers only use JS because they don't have a choice is inaccurate. This is true. Another example is the 2nd and 3rd gen AppleTVs. They were based on iOS but the “apps” for it were all hosted on top of WebKit using Apple’s own markup language - TVML. While I’m definitely not a fan of the movement toward JS everywhere, I have to admit that of you want to tie your horse to one language, JS is the way to go.
- jondubois 8y agoI remember at the company I worked for, we used AppleTV as inspiration for our own UI so it makes sense why we would use similar tech.
- pjmlp 8y agoYou named three languages.
- jondubois 8y agoC and C++ are not separate languages, one is a subset of the other. I just mentioned C explicitly because some hardware devices don't have a C++ compiler.
- pjmlp 8y agoNo they are not, this is a compiler error in C++. char *ptr = malloc(1024); And this uses a different evaluation order int i = a ? b > b ? 1 : 3 : 5; There are other subtle differences when talking about C89 and C++98, let alone when talking about C11 and C++20.