• 4 Posts
  • 282 Comments
Joined 1 year ago
cake
Cake day: June 24th, 2023

help-circle


  • Yes, I was shocked at how small it is. I had no experience working with such limited resources going into this project. Our router had 32MB of storage. At one point I was looked into adding a python interpreter, and it was like 11MB. The Lua interpreter is like 250KB. Tiny!

    Also, the ternary operator has the best syntax of any language I have ever used.

    x = [condition] and [true value] or [false value]

    No question marks or colons or anything weird. It’s a logical extension of && and || after commands in bash using keywords since it is a verbose language. I wish every language had this syntax.

    For contrast, python is:

    x = [true value] if [condition] else [false value]

    It just seems weird to me to have the condition in the middle.



  • I was the lead engineer on an Openwrt router for 2 years at my old job. Their documentation is complete and utter shit, but their design is extremely intuitive. Whenever I said to myself, “hell, let’s just try this and see if it works,” it had an insanely high success rate.

    I didn’t know Lua going into this project, but when I left the company, it made me really wonder why more people don’t use Lua. It’s a really nice language.

    I really enjoyed having my own open source router that I could just drop new features into by adding packages and recompiling. I was sad when I had to send all my dev units back.


  • It was my first time using a Linux GUI. I was comfortable with CLI, but it was my first time having it installed on a laptop instead of just sshing into a server somewhere.

    So naturally, instead of learning how the GUI worked, I tried changing it to be exactly like Windows. I was doing things like making it so I could double click shell scripts and other code files and they would run instead of opening them up in an editor. I think you see where this is going, but I sure as hell didn’t.

    Well, one of my coworkers comes over and asks me to run this code on this device we were developing. We were still in the very early stages of development, we didn’t even have git set up, so he brought the code over on a USB stick. I pop it into my laptop. I went to check it once by opening it in an editor by double clicking on it… Only it ran the code that was written for our device on my laptop instead of opening in an editor.

    To this day, I have no idea what it did to fuck my laptop so bad. I spent maybe an hour trying to figure out what was wrong, but I was so inexperienced with Linux, that I decided to just reinstall the OS. I had only installed it the day before anyway, so I wasn’t losing much.