Computing
How hard is to code?
Submitted by Ralito, 07-12-2018, 08:22 PM, Thread ID: 108388
Thread Closed
RE: How hard is to code?
05-03-2019, 04:11 PM
#103 It depends on what you want to do.
Python is quite popular these days and its numpy library is used quite a lot in machine learning.
C is a fantastic language and essential for any type of kernel space programming (at least in Unix-like operating systems).
Java is used when building Android applications, and a lot of web applications are also written in it. I like its object-oriented model better than C++'s. It feels like Java tries to do one thing (object-oriented programming) well, while I get the impression that C++ tries to excel at two things (C's procedural model overlaid with object-oriented programming) and ends up accomplishing neither. In that regard, it's subtly reminiscent of PL/I (which would be interesting to learn if only to learn how to not design a programming language).
Despite the reservations I have about C++, I will recognize it for introducing some interesting concepts, like operator overloading. C++, being compiled to (native) machine code, is also faster than Java. C++ is used a lot in computer graphics (e.g., ray tracing) and computer games.
While I'm not aware of any instances of Pascal being used in any substantial projects, I think it's a very well-designed language. If I had to choose a language to teach in a first programming course, I would choose Pascal. I wouldn't use Pascal for anything serious, however - it's too limited. If you are interesting in a programming language to implement a compiler for, Pascal is an excellent candidate.
Both LISP (and other functional languages) and Prolog are worth learning, just to understand how it's possible to think about programs in a completely different way. With Prolog, there is the added benefit of having to learn something about the predicate calculus.
PHP and JavaScript are worth knowing, if only due to their ubiquity in web applications. PHP has some of the same problems as C++, except it also has the disadvantage of being interpreted. My only comment about JavaScript is that the new ECMAScript specifications are introducing some interesting features (e.g., async functions).
For low-level programming, understanding assembly is invaluable. While a language like C is often considered to be low-level, it (along with every language on this list) will seem like a very high-level language after writing in assembly. Knowing assembly is essential for any type of substantial video game "hacking".
Python is quite popular these days and its numpy library is used quite a lot in machine learning.
C is a fantastic language and essential for any type of kernel space programming (at least in Unix-like operating systems).
Java is used when building Android applications, and a lot of web applications are also written in it. I like its object-oriented model better than C++'s. It feels like Java tries to do one thing (object-oriented programming) well, while I get the impression that C++ tries to excel at two things (C's procedural model overlaid with object-oriented programming) and ends up accomplishing neither. In that regard, it's subtly reminiscent of PL/I (which would be interesting to learn if only to learn how to not design a programming language).
Despite the reservations I have about C++, I will recognize it for introducing some interesting concepts, like operator overloading. C++, being compiled to (native) machine code, is also faster than Java. C++ is used a lot in computer graphics (e.g., ray tracing) and computer games.
While I'm not aware of any instances of Pascal being used in any substantial projects, I think it's a very well-designed language. If I had to choose a language to teach in a first programming course, I would choose Pascal. I wouldn't use Pascal for anything serious, however - it's too limited. If you are interesting in a programming language to implement a compiler for, Pascal is an excellent candidate.
Both LISP (and other functional languages) and Prolog are worth learning, just to understand how it's possible to think about programs in a completely different way. With Prolog, there is the added benefit of having to learn something about the predicate calculus.
PHP and JavaScript are worth knowing, if only due to their ubiquity in web applications. PHP has some of the same problems as C++, except it also has the disadvantage of being interpreted. My only comment about JavaScript is that the new ECMAScript specifications are introducing some interesting features (e.g., async functions).
For low-level programming, understanding assembly is invaluable. While a language like C is often considered to be low-level, it (along with every language on this list) will seem like a very high-level language after writing in assembly. Knowing assembly is essential for any type of substantial video game "hacking".
Users browsing this thread: 25 Guest(s)