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

help-circle

  • Probably not what you’re asking for, but I have an impression, that your primary motivation is curiosity and just good feeling of using the open platform, so I figured I’ll mention it.

    I’m using ESP32-C3 boards with some sensors and ESPHome to monitor air quality in my house. The board is RISC-V based and can be bought for real cheap. (single digit $ price generally) ESPHome is quite easy to work with and (If you’re realistic with your expectations around very low power device) also quite powerful.

    Honestly the ESPHome itself is almost too good if you’re really curious as it abstracts the differences between various boards quite well. You’re just editing a yaml file to define your desired functionality.

    Even if you’re hesitant to do some soldering, you can get pretty far if you buy board and sensors with pre-soldered pins and some jumper wires.



  • The example even used unwrap_or_else where they should use unwrap_or. Then it uses std::i64::MIN as fallback value where they could use something like 0 that would be a better example and honestly make more sense there.

    let parsed_numbers = ["1", "not a number", "3"]
        .iter()
        .map(|n| n.parse().unwrap_or(0))
        .collect();
    
    // prints "[1, 0, 3]"
    println!("{:?}", parsed_numbers);
    

    Even without trimming this to something less convoluted, the same functionality (with different fallback value) could be written in more readable form.

    Obviously in the context of the page something like this would make way more sense:

    maybe_number.unwrap_or(0)
    

    Or perhaps more idiomatic version of the above:

    maybe_number.unwrap_or_default()
    


  • You can’t do much about users that just don’t care. But more technically inclined folks often do care and these are the people that develop the web and maintain the computer/browser for other people.

    A lot of folks in my circle use chrome, but the moment the AdBlock plugin stops working they’ll likely switch to anything that works better. They are not necessarily too concerned about privacy, but they also don’t want to have most of their browsing made effectively impossible by ads everywhere.

    I mean, just try and use the web without any sort of blocking. A lot of sites don’t even have their content visible.


  • I don’t have much experience with TS, but in other strongly typed language it goes even further than string vs number.

    For example you can have two numbers Distance and TimeInSeconds and even though they are both numbers, the type system can make sure that you won’t do distance+time.

    It can also let you do distance/time and return Speed type.

    It will prevent many logical errors even though everything is technically a number.






  • “If” being the key word here. There are nuances to be considered. One DB might run really well on arm, the other not so much.

    I’m saying it as huge fan of the arm servers. They are amazing and often save a lot of money essentially for free. (practically only a few characters change in terraform) In AWS with the hosted services (Opensearch, and such) there’s usually no good reason to pay extra for x86 hardware especially since most of the intricacies are handled by AWS.

    But there are workloads that just do not run on arm all that well and you would end up paying more for the HW to get to the performance levels you had with x86.

    And that’s beside all those little pain points mentioned above that you’re “left to deal with” which isn’t cheap either. (but that doesn’t show up on the AWS bill, so management is happy to report cost savings)


  • I’m not sure where this idea of high profile target comes from. The sim swap attack is pretty common. People just need to be in some credentials leak DB with some hint of crypto trading or having some somewhat interesting social media account. (either interesting handle or larger number of followers)

    There are now organized groups that essentially provide sim swap as a service. Sometimes employees of the telco company are in on it. The barrier to entry is not that high, so the expected reward does not need to be that much higher.





  • Interesting. I wonder what were the circumstances. The wording on their page is quite vague as for when they’d might require this identification:

    Where a booking appears to have been made through a third-party travel agent who has no commercial relationship with Ryanair

    I generally avoid Ryanair where I can, but I flew with them many times before and never had this issue. They were one of the first airlines I encountered that required login to purchase tickets, so this is all in line with their behavior.


  • I think this is just Ryanair trying to discourage 3rd party ticket sales more than anything else. They have always been very hostile towards that option. Of you want to fly Ryanair, buy directly from them, from my experience the prices are the same anyways and there’s no face id required.

    As for the €55 airport check-in fee, that definitely goes to Ryanair. They are just famous for trying to extract as much money post-sale as possible. It has nothing to do with the identification, it’s just Ryanair not having free check-in on airport. I don’t think your face has €55 value to them, it’s the other way around. Using the airport check-in is kind of last resort option (for example when you didn’t do the online check-in on time) and they know that customer would be in desperate enough situation to pay that much to fly.


  • Yeah it’s pretty amazing system all things considered. It’s kind of as if 8-bit home computer systems continued to evolve, but keep the same principles of being really closely tied to the HW and with very blurry line between kernel and user space. It radiates strong user ownership of the system. If you look at modern systems where you sometimes don’t even get superuser privileges (for better of worse) it’s quite a contrast.

    Which is why it reminds me of Emacs so much. You can mess with most of the internals, there’s no major separation between “Emacs-space” and userspace. There are these jokes about Emacs being OS, but it really does remind me of those early days of home computing where you could tinker with low level stuff and there were no guardrails or locks stopping you.