3 ms·
I learned on Java and I really feel like it slowed me down in some fundamentals of programming logic. Books were raving about garbage collection, JVM, "everyth
by Timpy 4y ago
I learned on Java and I really feel like it slowed me down in some fundamentals of programming logic. Books were raving about garbage collection, JVM, "everything is an object"; I had no idea what any of that meant or why it would make Java "superior". Boilerplate like `public static void main(String[] args)` got me into the habit of ignoring things I didn't understand. The netbeans IDE was doing a lot of great quality-of-life stuff like handling imports for me and as a consequence I had a very poor understanding of how any of that worked. When you don't know how to write a for-loop yet things like accessor methods, pointers, or encapsulation are going to go way over your head.
- Aperocky 4y agoJava is great for learning OOP and certain design patterns, but eludes all other programming knowledge. They are 'encapsulated'.
- ithrow 4y agoYou could say the same for Python/Ruby/Javascript or most high-level languages that rely on a VM.
- the_doctah 4y agoIt took me forever to understand what the heck the Java classpath was.
- Gibbon1 4y agoOne of my heresy's is I think things like classpaths are an antipattern. In that determining the location of files and other resources should be a separate process. One that's explicit and debuggable.
- the-alchemist 4y agoFunny enough, that's exactly why the Clojure community created deps.edn [0]. - optional dependencies - use JARs on disk, local projects that build JARs, or Maven Central - pull in code from git repo via url and git hash or tag ("git dependencies") - different variations for the above for different targets (run, test, integration-test, etc.) [0]: https://clojure.org/guides/deps_and_cli https://clojure.org/guides/deps_and_cli
- jjice 4y agoMy highschool "Intro to Programming" class teacher (she is a wonderful woman) would say out loud "string box args" to have us memorize the boiler plate. Needless to say, we never even got to loops in that class.