Category: tech

  • Python

    I really like the functional programming with the simplicity of making stupid things. You can just take a python, or bash, or (even) c# or java and just write straightforward code that does your direct need.

    You know without building whole ecosystem and cicd pipeline and crud and whatever. Just joining things to do in logical pipe of actions.

    the good

    Python is great for that. You are taking your build blocks aka libraries, initialize them, use on an object to work on and throw modified ones. Step by step to get a result.

    the bad

    Of course there are bad parts like building an venv for these fucking scripts, and always messing with that hilarious method of downloading new ones using one of two dozen different repository tools, and … you know what I mean. pip, pipx, distro packages, and other shit that you have to use to get these required libs.

    Oh and I have to mention that great movement of “do everything in JS” with the same mess with versions of node.js and its libraries… at least these bastards have quite unified world of dependency downloading

    and the ugly

    spaces. tabs. indents. No braces. So code looks like the “evidence” of dozen of guys that walked out from the pub after 5 or 6 pints to the snow and decided to make a contest about “who have the strongest pressure of pee”.

    And yes. This post have been bought to you by another python mess that I found on github, but I needed to adjust it as it was not working on my machine, and download threescore of dependencies that I already have on my system, but maybe in different venv so I cannot use it and need to download them one more time.

    Have a nice day friends

  • how i hate AI…

    This whole enshitification process in the world is so fucking terrible. We cannot just make an business ready application, now we have these all shit trends about llm/ai, vibe coding, copilots, etc and its so deep in the ass that I even cannot believe.

    Due to some personal reasons I am not working now in this messy IT industry, I look from the side and using tools like hammer, hex driver, screw driver, pliers, file, vice… for living. And Oh god how i love that distance.

    But sometimes I need something from the internet or from my computer. Then I use a sheet of paper, project what I really need and go to create it.

    A, middle finger, I – this is how MS copilot creates “big A, old mans hand showing finger with green nail, big I” And the nail is blue not green, and this is very weird hand, mostly woman hand with some man hairs on it.

    It can be a new 3d project to print on my old Ender 3 – and yes, i use plotter paper to create that kind of projects first, before I go into some 3d modeling software on my computer.

    But sometimes the stuff that i need is a software. It was few days ago when I tried to use these AI bullshit for code creation. I have asked MS copilot, G gemini, ChatAI and two random models from huggingface that should focus on python code creation. I wont tell you which ones because i have already deleted them.

    It was simple: just creating a python script that goes into SQL db, gets data from simple select with two joins, on that basis it should go into directory, get a file for each SQL row from our select, and make a http post onto some API (just http://localhost/upload, with bearer token) posting a simple multiform data structure including a file from directory AND short simple json created using sql data.

    I was lazy, so I created instructions – i needed to write them anyway so… lets do it in more formal way – and put them onto all five models. tweaked them and put them another time…

    I had a plenty of time because in the meanwhile I was cleaning house, and working on our plants, and… many other much more interesting things than playing with AI and computers. So after about 10 iterations (10! its sick… human would do it after first description) all AI generated code was a bullshit…

    Sorry it was looking pretty, All had exception handling, parameters validation, config stored in additional file, nice cli argument handling.

    NONE of the code works.

    Some cannot make two joins in one select… so it was a 100 code line mess of selecting data 3 times, merging and comparing data on the client side… shit

    Some can but cannot just find a file in /home/user/script/data directory … because when I asked for using table.id for filename and .gpx for extension… it decided to look for a file: “datetime.gpx” instead of “id.gpx”why? I dont know and I dont care

    BUT all of them halucinated on the http POST request. None of the models was able to create this request. All of them tried to use “requests” library, and none of them saw this page: https://stackabuse.com/bytes/how-to-send-multipart-form-data-with-requests-in-python/ or this: https://requests.readthedocs.io/en/latest/api/#requests.Request or … oh it doesnt matter. It just hallucinated that It can use json= and files= in one request, oh and sometimes it even tried to use .addFile() and .addJson() methods that are not exist in requests…

    So For me now AI is still worth two things:

    being dumped in a big pile of shit

    generate deepfakes, deepvoicefakes, porn, and stupid images like one before. Especially that MS copilot even didnt try to follow my instructions to the end… like colour of nail or sex and age of hand. So lets leave it like that.

    Time to go back to real life, real tools and working to make some people happy.

    Post Scriptum: title “How I hate AI” is not a mistake, I still hate it from the first day, so it is why I didnt write “How I hated AI” as this was already hated on the day of trying.

  • Its always DNS

    You know that meme-like sentence about errors, outages, etc… that its always DNS? I hope yes, because a lot of people doesnt understand DNS, and docs for it are – mostly – hardcore to understand for younger people.

    Its mostly because it is documented in an old way – using tech docs, rfc`s, etc. And not with fancy json, yaml and tweets from random tech gurus.

    So what I did lastly was … setting up my own DNS in the home network but with limited access from outside. So at least my all devices at home, and my mobiles have access to it.

    Why?

    No way, no one would ask that question. Its silly. Because I can. Also because I wanted to. And because Its much easier to manage home network with much of a domains that are easy to remember. You know without that all .local mess etc. I can just use whatever domain I want to.

    So when I want to go onto my blog i can put https://blog in my website address bar, same with git, video, photos, etc

    It is great to just put whatever I want onto address bar and go to some place. And You know whats funny? IT IS GREAT

    Also I can block or … overwrite ANY domain that i want to 😀 and its even greater because I can push any youtube.com link onto my home owntube instance etc

  • SSO – Shit Security Option

    Let’s assume that I want to use some random webapp. I don’t know… strava, perplexity, whatever. Maybe I want to play some stupid online game. Whatever.

    And there is one thing that pisses me off – forcing me to using SSO where i should use no account or have a possibility to use just login+pass and some kind of second factor 😉 just because i think that should be. But hey… If you are making some stupid shit and you are too lazy or stupid to implement login+pass+mfa but force me to pass my FB or G or anything else account from other company.

    Sorry but I hate it. Sharing everywhere ONE account, or two because you cannot have FB on G, or LI on FB… whatever … its shit. It is stupid. If you want any of my data – you have to do some things by yourself.

    You have to provide me an option to just use login+password+MFA. It is very simple – really. We – IT industry – done it before, and we all have access to papers about how to do it in line with the art of coding. Really its not hard. Just take these papers and implement it.

    Oh and – its important – allow us to use MULTIPLE authentication methods for ONE account. Like – I register using login+password+mfa BUT later I can add my G SSO and F SSO and LI and … have many of them. Because it is possible and its better for you – app owner.

    Because IF I lost access to my X account because I am too lefty or I am from Iran or whatever… I still can use your app using login+password or using some other SSO… And you dont own google or facebook or whatever, and you cannot be sure that they will not create a new “great” app that will be clone of your app … and while you made it really great, they just decide that “sso on yourgreatapp.com” is no longer active… and no user will be able to restore their accounts … but they can start free now on GClone or FBClone…

    So – friends – fuck this SSO trend and just allow us to use mail+pass+MFA + multiple SSO … all of them on ONE account. Because we can.

  • Signal?

    Since I was ~10 or 11 I have access to the internet. At early stage it was thru internet cafe, then very slow DSL and … then world somehow managed to push me into “always online” state where even my watch has its own eSIM and internet connection. So where are we now at the story my friend?

    Oh yes, at the begining I was using IRC and ICQ, then we had in Poland also GG communicator which make all ICQs looking like an grandmas chat. But I still was using IRC and other stuff like XMPP at some point, and then we had some friends on XMPP by Google (aka talk/chat/hangouts/whatever) or XMPP by O2 (Tlen) and some other ones.

    And in modern era I am talking with people using Meta stuff – Messenger (and a while ago it was also instagram), SMS, Signal and … email. Thats all.

    But I have a problem – Signal doesnt have any nice API for bots. And I Love bots. I truly love to have a chatbot in my pocket that will answer to my silly needs. Really. Because its faster and less distracting then any other way of getting these answers.

    Examples – checking current weather with a short forecast – I have an instant text answer. No icons, no emoji, no graphics, no maps… etc. Simple action. My second best friend is adding new source to RSS reader -> just write RSS https…feedurl.something… and its in my freshRSS. Simple and fast. And mobile friendly 😉

    I have also notifications from my two fav youtube channels, and i can share a quick text that lands here -> in ghost, as a draft. So I dont loose my ideas for later. Ofc most of them is not for new blogpost, but just notes with some quasi-important stuff that I dont want to loose. But it works for me.

    And It was tough experience of creating that bot. It will be some day on some OSS friendly git hosting. But didnt decided yet which one is enough OSS friendly for me. But I am using signal-cli with signal-cli-rest-api addon and my bot is written using least FOSS of all FOSS software 😉 – C#+.Net because Its my hammer that see everything as a nail.

    But it is a very powerful hammer that can use a lot of stuff as a nail. Even people that laughs from me can be a nail… 😉

    Oh yes but I have been talking about bots.

    Thas stuff that I hate in Signal. Why the fuck I cannot just register a BOT account without a mobile, that would be hardcore marked as BOT in all signal conversations and so on… Instead I had to buy a SIM card or eSim or rent a number online… just to have this one service working. Its so stupid… but hey – its popular so I have it on my phone anyway.

    It is still much cheaper to once buy a sim card in Poland (~1,2€ for few days, and after you register number in signal and make it PIN safe + remember to login in regular manner its safe) then use SMS bot ;-). I am trying to get rid of Messenger so it was a no-go. And E-mail itself is a distractor for me. Distractor that have its own BOT gate in my ToDo list.

    And yes – I was considering telegram, irc, xmpp and other “easy to implement” bots but it would be another communicator app on my mobile that I would like to NOT have.

    So for now I am dealing with c# signal app and thinking which git hosting is last on my own git suck list content. As each of them is not a good place to be.

  • databases

    I love how docker, especially docker compose has changed life of (server) software distribution. It is just like two or three commands and you can host your own website, blog, wiki, photo gallery. It is also just few clicks in IDE or commands in CLI to have full work environment ready to test your new feature. With all dependencies, all stuff that you would miss or use wrong version of.

    But…

    There is also a quite big downside – If you are using a lot of docker composes predefined by software authors, then you can became a dependency hoarder. For example how many databases you need for 10 apps that are hosted from your home server?

    10? 5? 1?

    That was something that hit me yesterday while I was exploring why my Raspberry Pi have so high usage of RAM. It was … 1 Influx DB, 3 MySQL, 6 PostgreSQL. Now after about two hours of playing I have still 10 DBs but with only 3 DB engines running instead of 10.

    My laziness … or just ease of use of these predefined docker compose files… created a sick env that had SIX running engines of PostgreSQL on ONE small raspberry Pi. It was taking so much RAM and CPU cycles that I really see a difference now after merging them to be just 3 engines with multiple databases on them.

    So… I will still use docker compose yamls, I will still be lazy and will use these predefined defaults. But I need to remember that if software that I am trying is good enough and I want to hold it on my server, then I need to do another migration.

    Because it is much easier to remove whole setup from docker compose file from my rpi then removing single db from an engine that hosts multiple production-like dbs that I want to still have working… Whoever never misspelled filename for rm command can now laugh, but I had this mistake.

  • easy 3d printing

    Recently I started to really hard use a Fusion 360, its an 3d modeling tool that’s free for non-commercial use with some additional asterisks. After that I need to share some thoughts about most 3d models available at printables, thingverse and so on.

    People are just lazy about thinking how 3d printers work, and clone well known ideas from molds that they know. 90° angles on the bottom side, not thinking about bridges, forgetting that some side should be considered as base.

    Examples? Ok. Lets talk about engineering Ravensburger Gravitrax Junior rip-off. That’s a great toys for learning some basic rules of physics. And are not cheap if you want to create something more complicated to simple loop.

    And its of course molded in original set. So when you will look at printables or any other free/cheap models website you will see… perfect rip offs of that model. So you will have one of two issues.

    1. printing in the air on the sides
    2. manual cleaning after using supports

    So what you can do instead? I have seen one really good idea:

    One piece is a top with a place to mount a “ring” that fits into lower part. And its great for printing: much faster because of nearly no bridging, much lower use of material due to no supports etc. BUT you have to manual join them and use some glue to make it permanent.

    And you can use some 3d printing tricks that will make that prints much easier to print, not need for use long bridges and supports. How? For example using technique of stepping up layer by layer a bit further. 3d printers can do it pretty easy, even older ones, and they can do it for 5-20mm at step depending on printer. Even my old Ender 3 can do about 5-8mm at once. What I mean? Just making bottom not 90° but for example 70° like here:

    And yes – I have just recreated most of models from web to just have it much easier to print.

    Also I am thinking about … legal stuff. How the hell is it possible that hardcore ripoffs of copyrighted items can be available to download from everywhere. OK I understand that there is a lot of new items for (for example) Gravitrax that are not even exist from Ravensburger sets, and its OK, that’s like custom mods, custom add-ons. But hey, rips of original ones are much easier to find than that custom ones.

    How these companies are not fighting with prusa, and other owners of maker websites for these models? Or our makers world is so small that they not care, or even are happy because people post it on r/someShit or youtube and make their sets more popular, and know that beyond these 20 guys no one will print it?

    Are we still so deep in our basements that they don’t care and just piss on it?

    PS YES these graphics were made in KolourPaint – soft like MS Paint for KDE Linux UI. I am proud of them.