Category: tech

  • Fusion

    This is now the last application that I am not able to run on Linux, and it doesnt matter what I try. Native Wine, proton, different bottle setups etc. Just this is the last piece of stopping me from removing windows partitions from my nvme drive.

    I am thinking about OSes too much in last year or so. I’ve moved to Fedora few years ago, then moved to Arch and still am sitting on Linux as my daily driver for enough time to not want to get back to windows. UI of my KDE desktop is so clean, windows tiling is so great with my current setup, multi monitor setup is working perfectly in all configuration, as I am using laptop display only, external widescreen only, tv only, 15` external only… or All of them at once, or laptop+wide or laptop+tv or … you understand right?

    And each setup I have managed to have its own windows tiling setup that is perfect.

    Also I have managed something that I have ever reached on windows: run three websites at once, each of them playing audio on different set of speakers or headphones. Like one movie from netflix on TV + BT headphones, one live sport coverage on widescreen + audio on the same screen audio and other movie on laptop screen with audio on usb headphones.

    I have never managed it on windows. And here I have done it just using gui in kde settings while running them.

    So Fusion is making me crazy now.

  • Learning Ghost

    I just started blogging… using Ghost. And It’s really great tool. Unless you want to do any automatizations using API for creating / updating your posts, pages, etc. Editing any content using this API is mess. And lets play a bit.

    <p>My first paragraph of text</p>
    <p>My second paragraph</p>
    <h2>middle text header</h2>
    <p>Third paragraph</p>

    I would think that using something like HTML or Markdown inside your DB for storing text would be great. It is simple. It is well known. We all know how to handle this shit and we all can pass it to email, any browser, or import/export between different engines.

    {"root":
        {"children":
            [
                {"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"My first paragraph","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},
                {"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"My second paragraph","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},
                {"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"some header","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"extended-heading","version":1,"tag":"h2"},
                {"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"My third paragraph","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1}
            ]
            ,"direction":"ltr","format":"","indent":0,"type":"root","version":1
        }
    }

    This is the same part of data. 2 paragraps, 1 header, 1 paragraph. Oh and just a bit of additional shit.

    Sorry -> i do not want anymore to add a page for stuff that I want to read. I planned it as a really simple page with a list of links with titles and short note from myself about why I think its worth reading. etc.

    But hey. If I need to create this whole shit… I do not want to do it. Even once. Sorry but someone is really SICK and should rethink his life. Creating something like that is maybe great… but as a learning purpose, not to push that to people.

    lets play a game

    {"children":
    [{"detail":0,"format":0,"mode":"normal","style":"","text":"My third paragraph","type":"extended-text","version":1}]
    ,"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},

    this is one line of text. One paragraph.

    First: seriously, you have to tell your app that inside an array a item is… CHILDREN? who would think about it…

    Second: if stuff is in default state someone decided to still put it into object… all these “xxx:0″ or :normal or :””

    Third: version… first version has still a number? for what?

    Fourth: D E F A U L T S for fuckin sake. LTR is not a default? Maybe we should put it as default for language of whole post or whole website? Or … oh fuck it. 90% of this object is just passing a defult values and killing world overusing electricity, data storage, networks, ram, cpu cycles and everything else.

    AND making harder to create a proper object by 3rd party automations. Because fuck the community.

    So maybe it is not worth staying with ghost?

  • Links for…

    5th try of writing this

    Ok, so I have a problem.

    I got now over 2000 links in my browsers bookmarks. And I tell only about two folders: /toRead and /toRead(1). Beside of them I have also about 2 hundred of normal links to tools, githubs, apps, websites that I just use ~daily.

    Lets dig in these two folders. I need to do it finally.

    /toRead

    its just a folder with ~1.5k links in some subfolders that some day I decided that I should read some day. And to most of them I have never get back.

    /toRead(1)

    here I have stuff that I have read and decided that I should get back to them in future*.

    Now as I have additional tools in my box I want to make it a bit cleaner. So lets assume that I have some spare time. I am moving all that mess into shaarli app that I am running on my home rpi. All of /toRead got “toRead” badge, and these from /toRead(1) got “reReadNeeded”.

    Now the plan is easy: get thru them one by one and make one of two things: remove or add new tags.

    Depending on tags it will go into new area of “to read”, new area of “worth to know, or reread” (and it would be even here in some form?). Oh and all these stuff should go into linkwarden as copy to read later.

    but

    I have to find a way to put them here. Maybe I just make an html table and include it using simple js, or whatever. Even IFrame is better then messing with ghosts post formating shit.

  • Mobile soft

    I would like to know that sick Lenovo engineer who created keyboard in my Legion laptop. Anyway cleaning it after some minor wine incident is a hardcore action.

    So lets play with mobile. I have some … ideas? wannabes? maybe just i like to test some soft and write about it. Especially when I just* decided that I would like to get rid from a lot of bittech apps on my phone… and life. So for example I have now three different apps for browsing pixelfed: original one, pixelDroid and pixelix. I now have also Box, Box for Formula 1 coverage, and few more that I’m testing and trying out for fun.

    DroidPad

    I think its the most important app in my whole list. That simple app is fully configurable network … i don’t know. Its a remote pilot for any online stuff. You can make buttons, sliders, dropdown lists… and they will call any websocket, http1 request, mqtt queue, BTLE call…,

    Its great app that is so simple, you can create your own view with all needed shortcuts, runners, etc. I have there shortcuts for my own API, for refreshing rss reader, for moving data between different apps, for updating my server, for pushing buttons on websites etc. Great toy for playing with. I love that part of software.

    NFSee

    Another app that is important in my life. It is just a NFC scanner for any cards, tokens, etc… gives just all info from cards, tokens etc. Simple tool for simple stuff.

    ACode

    Simple IDE for mobile with FTP, GIT, and syntax coloring included for nearly everything + a lot of available plugins. As BT keyboard owner I really like this solution to have option to write some simple bugfixes on the fly on my mobile. Much easier is to take a BTKeyboard then to have a laptop and backpack with me. Simple and nice solution.

    Box, Box!

    app that gives you everything about Formula 1 without ads and mess from official one. News, statistics, results, calendar… and no “register now” mess. Great tool that I use ~ 243 days a year. Just in time of race weekends. But its still easier then using website or F1App. Also it takes just a bit of data and storage so I don’t have to consider “is it worth staying on my phone”.

    Thats ones that are staying with me for longer. Maybe some day I’ll try to write next part.

    Have a nice day

    – just in this one means 5 or 6 years ago

  • Shrava

    As I want to write more about my last post discovery -> Droid Pad. Its time for something else. For being fit. You know, new year new… no not that. I hate Strava. Really. It is one of worst pieces of shit that I’m forced to use. Lets go!

    forced soft

    Nearly every sport mobile software can push their trainings into strava, nearly each gps device with gsm or wifi communiation can push onto strava. If it have BT they have an app that is (in many cases) strava pusher…

    So you are forced to use this piece of software, because most of them cannot even push anywhere else. So now I want to get back. Not from having account, but from using it as really active user.

    I understand that they are using our tracks for their own profit, but that is not important for me. I also assume that they are solding my tracks with some kind of token connecting me, my tracks and my ads tokens, and maybe even email address etc. So yes its hardcore but who cares 😉

    It’s easy to use, because its embeded into most fitness/sport/etc stuff. And even there is NO other rational/open alternative. Even no simple “ftp upload” or some other universal way like dropbox or other easy upload files method.

    why

    I want to have my bicycle trips on single map. I want to have an possibility to find where I was, where was that nice lake deep in forest few years ago… etc

    But I hate this strava standard of forcing you to socialize, all these dark ux patterns pushing you to TRAINING instead of just having fun of sport, trips, or tourism. You have to train, you have to check you times, your power, etc…

    Really it is destroying you while a random app that you want to use as a track storage is trying to use any possible ux trick to push you to pay them for training add-ons, for some extra statistics, for … shit that you dont need.

    Also when I log in its great what I see:
    1 * prompt to change my private settings
    3 * prompts to give kudos for others| (2 in notifications)
    3* “try some function” which is only in paid option
    2* join challenge prompts
    Very big “YOUR GOALS” section (available only for paid plan)
    Suggested friends that I dont know but maybe we crossed our paths somewhere on bike trips or while running…

    And yes i try to just not use their UX, So whats next? Ill try to use some other software that is selfhosted to use as my map of choice.

    how

    It will be something quite tricky, as they are cutting out their API endpoints, so I will try to put some scripting to make it in a way:

    Device => strava => (my script) => my software + remove this gpx from strava.

    So on Strava there will be no data for long time, but i will try to use them as a storage between device and my fitness software of choice… but where to go?

    Options

    Ok so what do I need for web component

    • Website with maps of my tracks
    • Some summary for month/year
    • Way of automatic adding new tracks (API, upload folder, sth like that)
    • SelfHosted

    What also would be nice:

    • any open app for android that supports the web component upload
    • and maybe even a WearOS (or how the hell is that named today) app for my smart watch?

    So what do we have:

    FitTrackee


    Thats moment when I have done some pause of writing this post and meanwhile my friend gave me access to his FitTrackee server. So for now I am not comparing them and just use what I was gave to.


  • Lenovo power brick bricked

    Ok, so this one will be really fast. My Lenovo PowerBrick (ADL170SDC3A) for Legion 5-15ARH is bricked. It died few days ago and I had to use my old 65W charger added to some old, random, Lenovo Yoga.

    BUT it was still discharging battery while using this laptop, so it wasn’t too nice experience. Also Lenovo didn’t gave me opportunity to use USB type C to use my PD chargers … But years ago I had Lenovo W530 with another Lenovo 170W power brick. Solid, BIG, heavy one.

    What if… I cut both cables that should connect laptop and charger and swap them? So i have square connector (with its PinID) on the old charger. Which also delivers 20V@8,5A (so 170W same on both ones).

    You cannot imagine 😉 but now I have a bit bigger power brick with the same wattage, longer cable and … doesn’t have to buy a new charger. Win for my laptop (its charged), Win for me (didn’t pay for new one), Lose for Lenovo (who cares for bigCorp).

    So I have a big Win here.

    Have a nice day

  • 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.