while(true){💩};

  • 0 Posts
  • 79 Comments
Joined 1 year ago
cake
Cake day: June 11th, 2023

help-circle



  • OP asked for FOSS, and if this keyboard had met OPs other criteria, it would have failed the FOSS check (it’s a source-available license). It’s also a roll-your-own license and a very very short one at that. It’s missing a lot of key protections for both the company and the consumer.

    I’m pretty steadfast on using GPL software wherever i can, especially for something as mission-critical as a keyboard. Non-gpl projects have a tendency to get bought up and relicensed or corrupted in some other way over time (sometimes a very long time, but time nevertheless). I’ll make exceptions for things that are less critical, like games, but core system must be GPL or offer equivalent protections for the end user.

    Source-available is still good for auditability though, making it more secure in the short-term.




  • I’m not sure if i’m missing a joke here, so:

    In case you’re making a joke: The people who don’t type JSON are using controllers.

    In case you’re asking a serious question: the people who don’t type JSON are the people in OP’s image. They are technically using types, but that type is literally always string. They don’t use integers, they don’t use booleans. This is functional but may not be the best choice, depending on what kinds of data their system is supposed to handle.


  • JSON has types.

    Many API developers may choose not to use them, but they are absolutely there.

    You specify the type by including or excluding quotation marks, and then for the types without quotation marks, you either include or exclude a decimal point to specify float or integer, and for boolean you use characters (specifically true or false). Arrays are wrapped in [] and objects are wrapped in {}.

    JSON data as a whole is passed as one giant string because the REST protocol demands it. But once it’s been pulled in and properly interpreted, there are absolutely types in the data.