• 2 Posts
  • 209 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 really depends. For example, the app might not be sending data on what is happening. It might just say “event 1 happened” which triggers it to flash blue or “event 2 happened” which triggers it to flash rainbow. If there are no additional information, then the only way it could be done is by modifying the app.

    And that’s not even getting into creating custom firmware for the device. You would either need to get your hands on their source code for that or reverse engineer it.

    I’m a firm believer that nothing is impossible, but one this is for sure, it would likely be a ton of work.




  • Thank you for the explanation. I admittedly am a bit cautious about this feature. But I can see how it can be a powerful tool to prevent bullying.

    Hopefully we can trust our admins. But theoretically a bad actor could make an instance that federates with everyone and then takes this info and posts all the vote counts publicly for every post and every comment. And if we don’t know which instance is the one responsible, we wouldn’t be able to defederate from them to stop them from getting this info.

    Not that this feature is the cause of that. Admins could already do this with a db query. And I don’t think there is any way around that without making votes completely uncrackable. Just kind of thinking out loud.