• 0 Posts
  • 10 Comments
Joined 2 years ago
cake
Cake day: June 14th, 2023

help-circle


  • IMHO, LISP is ok for theoretical fundamentals but it won’t necessarily get you a practical understanding of how computers work. Functional languages are more like how mathematicians wish computers worked. All programming languages are abstractions, but functional languages abstract away how the underlying hardware works in ways that procedural languages don’t.

    And Java is pretty useful if you want to get a job but if you don’t want that, then there are less painful options. The difference to Python is mostly that Java often feels like it was intentionally made annoying to use. But it’s a pretty high level language, I wouldn’t call it more fundamental or basic than Python. Java wins on performance but that has nothing to do with how high level it is.

    For practical fundamentals, if you actually want those, I’d recommend starting with microcontrollers and their assembly. Modern CPUs are so complex that learning fundamentals from scratch with assembly is quite difficult. But with smaller/older microcontrollers (like PIC or something) it’s both more approachable and more useful. It’s almost a shame that hobbyist microcontroller platforms are pretty advanced now too. But you can move on to C first, you can ignore MicroPython for a while if you want.

    If you want a game way to learn absolute basics, there is a game called Turing Complete. It basically teaches you how to build your own CPU architecture from logic gates. You start with the basics about logic circuits and eventually build a simple CPU, and then another more complex one. I think this actually goes a bit too far in terms of fundamentals, it will take you forever to learn how to even make something write Hello World on a screen. But I guess this is the closest to how I started out. Of course for me the logic part was theory only. And the CPU I eventually learned programming first was a 6502 and not something I designed myself.



  • Pretty much everybody in this thread who is laughing at Amazon’s drones is thinking of drones as they are right now. But Amazon is not using drones because it’s a good idea now. They’re using drones now so they already have the experience and the setup when inevitable technical progress happens.

    The drones might never work out or they might eventually work out, but this is exactly how Amazon got so big in the first place. They started selling books online when a lot of people still weren’t sure whether that could work and they started selling cloud computing almost ten years before anyone else thought to do that.



  • Comparing to macOS is actually impossible because fde can’t be turned off on Macs at all. Macs (and iPhones etc.) handle encryption of internal storage transparently in hardware at pretty much no overhead and without the CPU even having access to the key. You can only choose whether a login is required for the Secure Enclave hardware to be able to access the key.

    On other platforms it’s pretty much a hardware question too. PC vendors and hard disk vendors could do the same thing Apple is doing regardless of whether the OS is Windows or Linux or whatever. How fast the OS based encryption is only matters on hardware that doesn’t have this functionality.