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

help-circle
  • what happened is the programmer made assumption based on the illusion created by the libraries: writing application on arduino is just like using a library on a unix-box. (which is not correct)

    That is why I have become carefull to promote tools that make things to easy, that are to good at hiding the complexity of things. Unless they are really dummy-proof after years and decades of use, you have to be very carefull not to create assumptions that are simply not true.

    I know where you’re coming from. And I’m not saying you’re wrong. But just a thought: what do you think will prevail? Having many people bash together pieces and call in someone who understands the matter only about things that don’t. Or having more people understand the real depths?
    I’m afraid that in cases where the point is not to become the expert, first one will be chosen as viable tactic

    Long time ago we were putting things together manually crafting assembly code. Now we use high level languages to churn out the code faster and solve un-optimalities throwing more hardware at the problem until optimizations come in in interpreter/compiler. We’re already choosing the first one





  • That can become an issue but IMO the person in your example used the tool wrong. To use it to write the boilerplate for you, MVP, see how the libraries should be used sets one on the track. But that track should be used to start messing with it and understand why what goes where. LLM for code used as replacement is misuse. Used as time booster is good. Unless you completely don’t want to learn it, just have something that works. But that assumption broke in your example the moment they decided to add something to it

    I have a very “on hands” way of learning things. I had in the past situations when I read whole documentation for a library back to back but in the end I had to copy something that somehow works and keep breaking it and fixing it to understand how it works. The part between documentation to MVP wasn’t easier because I’ve read the documentation
    For such kinds of learning, having an LLM create something that works is a great speed up. In theory a tutorial might help in such cases. But it has to exist and very often I want something like this but… can mean that one is exploring direction that won’t address their use-case

    EDIT: A thought experiment. If I go to fiverr asking for a project, then for another one, and then start smashing them together the problem is not in what the freelancers did. It’s in me not knowing what I’m doing. But if I can have a 100 line boilerplate file that only needs a little tinkering generated from a few sentences of text, that’s a great speed up


  • Illusion — Why do we keep believing that AI will solve the climate crisis (which it is facilitating), get rid of poverty (on which it is heavily relying), and unleash the full potential of human creativity (which it is undermining)?

    Because we keep reading sensationalist advertisements presented as articles instead of experimenting with it ourselves, understanding what it is

    And unfortunately, this article is also just a response to media clickbait, not a discussion point it tries to look like





  • wrote a library in BASIC for screen / window applications in DOS. (you know, pop-up text-windows and so on). How do I do that on linux (in C)?
    (…)
    I know there exist things like QT and ncurses

    So it’s graphical interface we are after or text based?

    For text, I agree with others, ncurses

    For graphical

    • pyGTK
      basically everything you need, some learnig curve as it’s big and versatile. But to be honest, when trying to achieve something I’d suggest to start from GTK reference to me it somehow conveys the logic better than the PyGTK reference
    • Kivy
      haven’t used it, but might be fun to use
    • wxWidgets
      very cross-platform. Not only you can use it to write UI that will require minor fixes to have the same code for Windows and Linux at the same time, you can also tell it whether the toolkit used under the hood on Linux should be QT or GTK
    • Tk
      old, simple (more fancy things need some gymnastics) but simple (easy to use) and supported in Python out of the box (you don’t even need to install anything)
    • QT
      I’m putting it here just for fairness. I don’t like it, don’t like its signal-slot design, I think it’s hogging up too much resources. But last time I used it was ~10 years ago and in the end, it does in fact work






  • Gentoo unstable was a little bit tiring in the long run. The bleeding edge, but often I needed to downgrade because the rest of the libraries were not ready

    Gentoo stable was really great. Back then pulseaudio was quite buggy. Having a system where I could tell all applications and libraries to not even link to it (so no need to have it installed at all) made avoiding its problems really easy
    But when my hardware got older and compilation of libreoffice started to take 4h, I remembered how nice it was on Slackware where you just install package you broke and you’re done

    Arch looked like a nice middle-ground. Most of the things in packages, big focus on pure Linux configurability (pure /etc files, no Ubuntu(or SUSE?) “you need working X.org to open distro-specific graphics card settings”) and AUR for things there are no official packages for. Turned out it was a match :)


  • Windows (~6 years) -> Mandriva (Mandrake? For I think 2-3 years) -> Ubuntu (1 day) -> Suse (2 days) -> Slackware (2-3 years) -> Gentoo unstable (2-3 years) -> Gentoo stable (2-3 years) -> Arch (9 years and counting)

    The only span I’m sure about is the last one. When I started a job I decided I don’t have the time to compile the world anymore. But the values after Windows sum up to 21, should be 20, so it’s all more or less correct


  • Personally I don’t but my grandpa was electronics engineer by trade and hobby and I was also talking to some electronics engineers in my previous job when I was toying with the idea myself. In both cases for home projects they were etching the paths by covering the plate with laser printer ink. When you get really good at that you can even get into SMD range of path width. The higher part of the range - you can’t outdo machine ECB printing if you want to get the paths really narrow - but workable.

    1. print your paths on regular paper. The more DPI, the better
    2. clean the empty board
    3. use hot iron (like the one for clothes) to transfer laser printer ink from the paper to the board
    4. take the paper off
    5. inspect the paths, apply some marker (or wax, I think? I might misremember) in places where it’s not perfect
    6. etch the board

    Although, some of my colleagues at work were saying that at the prices you can order an ECB to be printed nowadays (for hobby better to find something local, so you have easier contact and shipping won’t cost you a leg) it’s not worth the hassle anymore. Pick the business which page looks like from the 90s. You are looking for electrical engineering veterans so they know more about electronics than webpages

    You might want to search for your local hackerspace. For sure they have it all figured out for the area they operate in