#rustlang unlocked a lower-level world for me. In my previous experience, I didn't have to worry about memory management and therefore it has been a fascinating topic to explore. The rust compiler is a helpful guide on this path. I still have a lot to learn though!
#elixirlang! I have been reading some books and done some small exercise in the last few years. I am far away from being proficient with it, but I taught me immensely about #functional#programming and thinking list operations using #recursion rather than loops
#Java: Object-Oriented Programming (and many of its patterns) plus a good amount of algorithms (as it was the language I mostly used at the university). It has also taught me that #composition is better than #inheritance and that often you don't need too many abstraction layers!
β’ β’ β’
Missing some Tweet in this thread? You can try to
force a refresh
How many times did you have to store settings (creds & other preferences)? Where do you save the conf file? Which format do you use? How do you load and update the file?
Conf takes care of all of this (and more!) with an extremely simple API
"Yo, why are #JavaScript and its ecosystem so messy?!" π‘
Well, I am glad you asked... Let me tell you a story! π€
π§΅π
For starting... #JavaScript was not designed to be the language that it is today!
JS was created in 1995 by @BrendanEich for Netscape, a web browser that was trying to come up with a language to make the web more interactive
@BrendanEich#JS wasn't related w/ #Java, so why did they call it Java-Script?! Duh! π³
Java was trendy! it was possible to build interactive sites by embedding Java apps in pages (applets). So it was mostly a #mktg move: "JS: the lightweight Java alternative" or something like that I guess
This is easy and it works! But the implementation is very specific to our struct.
The rest of the codebase doesn't really know that this type can be converted to a String and therefore you cannot build abstractions on top of this... π€¨
1οΈβ£Β You can't tell where a program is going to spend its time. Bottlenecks occur in surprising places, so don't try to second guess and put in a speed hack until you've proven that's where the bottleneck is.
2οΈβ£ Measure. Don't tune for speed until you've measured, and even then don't unless one part of the code overwhelms the rest.