• 2 Posts
  • 34 Comments
Joined 3 years ago
cake
Cake day: July 10th, 2023

help-circle



  • That’s a valid point, the dev cycle is compressed now and customer expectations are low.

    So instead of putting in the long term effort to deliver and support a quality product, something that should have been considered a beta is just shipped and called “good enough”.

    A good example I guess would be a long term embedded OSS project like Tasmota, compared to the barely functional firmware that comes stock on the devices that people buy to reflash to Tasmota.

    Still there are few things that frustrate me like some Bluetooth device that really shouldn’t have been a Bluetooth device, and has non-deterministic behaviour due to lack of initialization or some other trivial fault. Why did the tractor work lights turn on as purple today? Nobody knows!


  • My type is a dying breed too, the guys who do their best to write robust code and actually trying to consider edge cases, race conditions, properly sized variables and efficient use of cycles, all the things that embedded guys have done as “embedded” evolved from 6800 to Pic, Atmel and then ESP platforms.

    Now people seem to have embraced “move fast and break things” but that’s the exact opposite to how embedded is supposed to be done. Don’t get me wrong there is some great ESP code out there but there’s also a shitload of buggy and poorly documented libraries and devices that require far too many power cycles to keep functioning.

    In my opinion one power cycle is too many in the embedded world. Your code should not leak memory. We grew up with BYTES of RAM to use, memory leaks were unthinkable!

    And don’t get me started on the appalling mess that modern engineers can make with functional block inside a PLC, or their seeming lack of knowledge of industrial control standards that have existed since before the PLC.


  • Great to hear this story of success. That plus

    $266.99 per probe for the original proprietary one

    Reminds me of Schneider’s stupid proprietary dongle for programming their PLCs. It’s just a CH341 in a funny shaped case that fits into the funny shaped slot on the PLC, where it plugs onto an ordinary 0.1" pin header to talk logic level serial.

    Plus it has a custom USB ID of course. Probably costs $2 to manufacture, sells for almost $300 as well.








  • If you don’t want memory-safe buffer overruns, don’t write C/C++.

    Fixed further?

    It’s perfectly possible to write C++ code that won’t fall prey to buffer overruns. C is a lot harder. However yes it’s far from memory safe, you can still do stupid things with pointers and freed memory if you want to.

    I’ll admit as I grew up with C I still have a love for some of its oh so simple features like structs. For embedded work, give me a packed struct over complex serialization libraries any day.

    I tend to write a hybrid of the two languages for my own projects, and I’ll be honest I’ve forgotten where exactly the line lies between them.


  • They should really stay away from the dirty word of Live Service / GaaS in that case!

    They should have gone with something like “We plan to support the game for years to come”. This model is well respected with games like Terraria and Minecraft that just refuse to stop coming out with free updates despite having no subscription model. Klei has done this with a lot of their games, Don’t Starve, Oxygen Not Included come to mind.

    Everyone loves seeing new content for a game that they own, even if it’s just little things, QoL or a new item or two.

    Hell, AoE2 still has support with Definitive getting patches all the time, and it’s decades old at this point.



  • I wouldn’t try parametric models in freecad

    I would clarify that you’re talking about a specific usage case, that OpenSCAD does indeed do better at. However for most CAD tasks I find OpenSCAD is overkill and less intuitive.

    “Parametric design” usually refers to the workflow used in the Part Design workbench, as well as SolidWorks etc. where geometry is defined by constraints.

    The Part Design workbench does work well and despite the topological naming issue is sufficient for most hobbyist and many light industrial tasks. If I need to draw up an arbitrary bracket or bushing or similar, I don’t even bother using a workflow that guards against the issue, I just use it casually like I would SolidWorks. Only if the part is complex or if I know it will need to be tweaked do I bother doing everything on datum planes etc. because it’s a lot slower and more hassle.

    That’s very good news that the topological naming issue is being solved, though. #1 issue with FreeCAD IMO and the one that holds it back from serious industry use.




  • For free tier, Google Cloud is more transparent about what you get than AWS IMO.

    The only catch is to make sure your persistent disk is “standard” to make it totally free as it defaults to SSD.

    However if you do mess up the disk you’ll still only be paying $1-2/mo. Been using GC for years, and recently they finally started offering dual stack so you can do your own 6to4 tunneling or translation if you want, depends on your usage case.

    AirVPN also are legit and will let you forward ports to expose your local services if you’re worried about DMCA type issues.

    I finally got IPv6 here through Starlink, it’s nice to have full access to the internet again after a decade behind CGNAT