Anticodeguy
Kanalga Telegram’da o‘tish
Technomad & systems thinker exploring paths to freedom and prosperity https://stan.store/anticodeguy
Ko'proq ko'rsatish641
Obunachilar
+124 soatlar
+27 kun
+130 kun
Postlar arxiv
641
Your own hardware instead of a driver
<written by a human being>
One more way to solve the problem of a device driver you can't get officially signed by Microsoft - move the device command processing outside of Windows. And pass into Windows only standard signals, the ones the system understands in its native language.
For example, Apple Mouse connects to the computer over Bluetooth. The cursor movement signals are clear to the system and it recognizes them. But touches on the mouse's touch surface - no, processing them is impossible without a driver that "translates" these signals. That's why scrolling and multitouch functions are not available in Windows.
You can write a driver, but it will only work with an official Microsoft signature, which I wrote about yesterday. But what if you move this driver outside, so that only native commands end up in the system again?
If you take a board like Raspberry Pi Pico W, write firmware for it that recognizes the functions of the device you need and passes over USB only what Windows can read - problem solved! And no hassle with signing or dependence on other parties - you can flash the board however you need.
By the way, this is one of the reasons why many peripheral makers ship their devices with their own receivers. That's how they avoid the headache with pairing, with whether the right receiver device is even present in the computer.
So, shall we make our own Plug-n-Play devices?641
Driver Signing Nightmare
<written by a human being>
The Apple Mouse driver for Windows turned out to be way harder than I thought at first. Right away: working with hardware support is a first for me, and so is writing a driver for it, so I'm sharing my findings as a pioneer.
Turns out you can't just write your own driver for a device and install it in Windows. The system only lets through drivers signed by Microsoft itself, which in turn is not that easy to get. Even if you're not distributing the driver and just using it for personal and test purposes, still no.
There's a special test mode in the system that lets you test exactly this kind of stuff, but obviously nobody wants to live in Windows test mode permanently. And you can't anyway, since some programs will just refuse to launch.
Okay, if you still go down the road of writing your own driver, then that signature mentioned above has to be obtained from the software giant. For that you need to register your own legal entity with them (again, not just any), pay around $740 for the first year, and then $360 every year after that.
Seeing these numbers, of course, the desire to do this whole thing disappears - it's way easier and cheaper to just pay a sum dozens of times smaller for two years of using a ready-made driver, but then the whole point is lost.
There's also OSSign, made exactly to solve this problem - it's a Swedish initiative that signs open-source drivers through their own Microsoft account. But you have to pass a selection by certain criteria, wait months for approval with no guarantee at all.
Not our way either. And do you know how this can be solved?641
The New Business Moat
<written by a human being>
Before starting a business project, the question of its long-term viability naturally comes up. Before AI, technology and code were that impassable moat around the castle. That's why developers cost so much, so the biggest corporations could keep them inside their walls, since the key business idea and its execution rested on their work.
Today for $20 a month you've got a pretty decent programmer at your fingertips, and if you don't skimp on $200, there'll be enough of him to work for you practically around the clock (not forgetting about limits). Which means it can't be a protective moat anymore, one that makes your business unique and shields it for long from the ever-watchful competition.
What are the options? Actually there are plenty, you just need to look at the world wider, beyond your own professional bubble, and a whole new brave world of possibilities will open up. The examples I'll give next were overheard in a fresh episode of My First Million, but you can take them further.
Remember there was a time of a boom in InternetOfThings, or IoT, when everything from irons and light bulbs to fridges and TVs was made "smart". Now it seems everything in this area has settled down and we're no longer surprised by robot vacuums or lamps that save electricity with a central control system, even though those things are far from being in every home.
But I've already written several times about my own delight when, with the help of AI agents, I wrote my own program controlling a desk lamp and the lamps in the ceiling. That's a whole untilled field, now available to mere mortals, not just corporations that have factories making hardware and staff able to write drivers to control that hardware.
The combination of IoT and AI, now real, not the marketing label "smart", may well become a real business moat, one that solves the next everyday problem. To be continued.641
Keep Your Agents Under Control
<written by a human being>
I finally found a simple and convenient way to keep track of multiple agents at once and pick up yesterday's work, or Friday evening's, after the weekend!
Recently I wrote about the eod command, which automatically sends my server and PC to shut down once all the agents are done. I went further and built a mini dashboard that shows the state of all currently running sessions.
As soon as any of them needs my attention, the dashboard highlights it. And if all the agents are working, I can go do other things in the meantime. The dashboard just sits on my second monitor all the time, which is super convenient, and I can pick up the signal with peripheral vision.
Breakdown by project lets me see right away which VSCode window needs attention. The same grouping is in the session resume list - I just click through the copy-command buttons and launch the whole set of yesterday's sessions.
Why do you even need this? If you've worked with AI agents on complex projects, not the ones that finish in a single session, you'll get right away why a thing like this is needed. Constantly switching between tabs in agent-checking mode eats a lot of cognitive resource, and my dashboard lets me focus on other tasks and still be sure that no agent is sitting idle waiting for my input.
Have a productive week, everyone!641
My Room Reacts To The Screen
<written by a human being>
Remember I wrote about the utility for controlling my desk lamp, and then the ceiling lamp too? And I was threatening to do it on a bigger scale. So, a couple days ago my lamps arrived, I screwed them into the lampshades in two rooms and yesterday I vibecoded the next version of my program to control them.
First of all, each bulb can be controlled separately, but you can also sync them all together. I split the lighting into two rooms, obviously, so I can control the light in each independently.
Besides the lamps I added a keyboard, mouse and microphone, which also have backlighting.
But the most important thing is Ambient lighting. Maybe you've seen TV panels with RGB strips installed on the back, whose color syncs with what's happening on the screen. And when you watch movies it makes the atmosphere more immersive.
Imagine you're watching Dune with scenes of the Arrakis desert and the space around the screen floods with the red-yellow color of sand rich in melange. Looks very epic.
So I made the same thing for my monitors. Every couple of seconds the program takes an approximate screenshot of what's on the screen in a very low resolution, so it doesn't eat up resources, and figures out the dominant color on the screen. And sends it to the smart lamps and all my devices with backlighting.
This way the whole room floods with the color of what's happening on the screen. Looks especially great after sunset, of course. But now playing games and watching movies has become way more atmospheric!641
The absence of failures makes you relax
<written by a human being>
We often judge the older generation for hoarding stuff, stockpiling supplies and all those other habits, without realizing they have deep roots. And those roots lie in the years lived by their own parents, when food wasn't as available in abundance as it is today, and in such huge variety. They lie in a time when without winter supplies, you could literally not survive it.
Just two generations ago, my great-grandmothers were among many kids in a family, where they gave birth to dozens (!), which is especially hard to imagine today, just to raise the family's chances of survival!
And my generation, which grew up like a flower in a garden, carefully tended, watered, given every condition for healthy growth and development, just doesn't get why you'd take all these precautions. In our entire life nothing that out of the ordinary ever happened to make us lay down straw in advance where we might fall.
Exactly the same thing happens with businesses and with IT infrastructure - years without failures make you relax and you don't even think about bothering with proper precautions. But the moment it's already too late, you realize how expensive this mistake can be.
I myself thought for a long time that standard website backups were enough, because they're made by the hosting's automatic system, which is responsible for the security of its whole infrastructure and makes sure they're spread across different servers by the book, have fault tolerance and everything needed. Right up until the incident that wipes out that hosting's entire network infrastructure clean.
Take precautions. Especially if you haven't needed them for a long time.641
Cybersecurity market is growing before our eyes
<written by a human being>
The cyberattacks that have already become routine exposed one more truth that used to seem non-obvious: the cybersecurity market is badly undersupplied. And demand, honestly, wasn't exactly saturated either until now.
When everything generally works fine and stable, you stop thinking about global threats that can literally paralyze your business for days, weeks or even months in a matter of minutes.
Websites, for example, are such a trivial thing by now that business owners stopped thinking something could happen to them at all. So they don't really spend on cybersecurity. It became something from the premium-services category, the kind of thing people usually try to save on.
But it's exactly in moments like this, force majeure, when everything goes to hell, that you instantly get the value of every possible insurance and preventive measure for cases like this.
So right now pretty much every agency that builds and maintains websites will be raising prices on backup and guaranteed recovery services, and quite deservedly.
And more and more agencies specializing in cybersecurity will start showing up. On the flip side, businesses are now definitely ready to pay attention to such services and will save less on them.
In moments like this you get it: even if force majeure hasn't happened for 20 years straight, it doesn't mean it can't happen tomorrow. And it's better to be ready.641
A Reason Not to Change Your Hosting Provider
<written by a human being>
I’m continuing to share lessons and observations from the biggest cyberattack incident of my life, the one that hit my hosting provider. By the way, we’re now on the fourth day of recovery work, and some of my clients’ websites are already back online, so I’m busy right now doing something I should have done long ago.
But it’s not moving to another hosting provider, as many of you have probably assumed. And as many people, judging by the comments under the provider’s incident update posts, are writing: “We don’t trust them anymore, we’re moving, just give us our site or a backup, we’re packing up.”
There’s no logic in that course of action, though, beyond panic and an emotional reaction to a stressful situation. Say you move to another host. What guarantee do you have that tomorrow it won’t be hit by exactly the same kind of attack? No hosting provider in the world can guarantee that these days.
Let me remind you that just a few weeks ago, a force majeure event happened at Yandex, the Russian analogue of Google, which also provides cloud services, hosting and everything that goes with it. Recovery work there is still ongoing.
The second point is that after an attack like this, the affected hosting provider will clearly put in place every possible protection against a repeat. The same can’t be said of its competitors, who won’t learn the details of the attack and won’t be able to anticipate the specific layer of defense needed. That actually makes all the other providers more vulnerable to this kind of attack than the one that has already gone through this reality training.
So if you ever find yourself in a similar situation (God forbid, I wouldn’t wish it on anyone), I recommend thinking through this logic and not following the emotional decision that seems obvious in the moment: running to someone else.641
Crisis Reveals Character
<written by a human being>
The second lesson from the massive cyberattack on my hosting provider is about how companies and businesses behave in force majeure situations, because that’s exactly when their true face shows, even if until then it was wearing a flat poker face.
Interestingly, in almost two decades of continuous work with this provider, there hasn’t been a single major incident like this. That’s exactly why I always moved all my clients here: the reputation for quality was built over literally decades.
On top of that, my provider has always had the best tech support, not just among hosting providers but among all the services I’ve ever used, no exaggeration. A real human gets connected to every question, never a bot. It happens within a few minutes of the request, at any time of day, no days off. And the question always gets resolved competently: the guys actually help instead of firing off canned replies and showing the incompetence that’s so common in many companies.
And clearly, the current incident came as a huge surprise to them too, because you could see from the outside that they simply didn’t know how to behave in a situation like this. They were just caught unprepared. For almost 5 hours there were no signs of life or notices on social media about what had happened, even though users could obviously see that their sites and services were down and the hosting control panel wouldn’t load either.
The first post was published on Telegram, and it predictably drew thousands of comments, where furious business owners, site owners and admins called down every curse imaginable. One girl on the hosting side had to fend them off single-handedly, someone who had clearly been woken up along with the rest of the team in the middle of the night, since the incident happened around 2 a.m.
Anyway, I wish my colleagues a speedy recovery of the infrastructure, strong nerves, and a lesson that will be useful to everyone: you have to prepare for force majeure in advance. Even if there hasn’t been one in 20 years.641
The Outage Lesson
<written by a human being>
Yesterday's incident with the hosting provider, which, by the way, is still going on, showed me a few things I'd like to point out. Btw, the first thing they restored was the NS servers, so some of my projects are already alive again, but the sites hosted with this provider are still down.
First and key - it's force majeure and critical situations that reveal people's true face, and it shows in how they react to this kind of stuff. For example, every single one of my clients is so sane that I haven't heard a single reproach, panicky comment or accusation from them - everyone took the situation calmly and with understanding.
As opposed to, for example, plenty of the hosting's customers who spew bile, anger, curses in the comments under the provider's incident update posts, blaming everyone around and lashing out at them for every mortal sin.
Also the situation exposed obvious incompetence in cybersecurity - mine personally and all these angry people's, who, as it turns out, have no backup DNS channel and no normal backup systems to restore operations from on any other hosting.
In my case half of the resources are hosted with another provider, while the affected one only holds the NS with the domains. But either way, there has to be a backup channel - and that's a good lesson for the future and a new item in my security standards as of today.641
DNS Blackout
<written by a human being>
Monday started with a bang: my provider suffered a mass DNS failure, and it somehow hit servers in several different countries at once. As a result, millions of sites went dark, a huge amount of data was put at risk, and there was nothing fun about any of it.
Once again, an incident like this reminds us how fragile everything we build is, especially in a world where it’s all woven into a dense web of connections, dependencies, and mutual influence.
The irony is that right before I discovered my own resources were down, I’d read a post by a colleague saying that a wipe of the entire internet, not to mention a breach of banking systems or really any systems, is a perfectly expected scenario these days.
And here I honestly don’t know what to say. I want to advise backing up absolutely everything you can, but there’s no guarantee the backup storage won’t get compromised too. We definitely need new security systems that are not merely resilient but even antifragile, in Nassim Taleb’s sense (if you haven’t read him, I recommend it).
Beyond data, you should back up everything that usually doesn’t make it into the primary metrics: infrastructure configurations, secrets, and emergency access credentials, and, as today showed, DNS, including setting up a secondary, independent provider.
It’s also worth spreading all these reserves out not just across different servers, but across different providers, different countries, and even different continents.
One way or another, the incident will be resolved, but don’t wait around for the next one. Do everything you can to protect yourself, your business, and your resources.641
Financial Magnum Opus
<written by a human being>
It is with great relief that I declare I've finally finished cleaning up the data in my home bookkeeping! And now it's truly the final polish, refactoring and tidying up of the project before the final release.
By the way, I've been using the new system for more than a week already, fixing all kinds of bugs and shortcomings along the way, but even now the difference is noticeable: the time I used to spend entering data the old way versus what's now captured automatically in 80% of cases without me being involved at all.
Let me remind you, I've got 16 years of home bookkeeping data, from the moment I bought a program for it and since then logged every movement of money, every purchase, every loan, every coin and banknote that passed through me. I know a lot of people here will tap a finger to their temple, but this is where I direct my OCD urges.
The result is a magnum opus of my whole financial life. After finalizing it I plan to make some things public, because I want to share an interesting take on money, cost of living and even life stages, which are very clearly reflected precisely from the financial point of view.
And since this weekend project is coming to an end, I'm smoothly starting to roll out a new one: a Windows driver for the Apple Mouse, which I currently have to pay for, and the license payment is coming due right about now. So here I've got a real deadline.641
AI Made Me Fix It
<written by a human being>
Since AI entered my life, something has changed: I’ve stopped putting off repairs around the house, electronics included.
As a kid, I did some soldering from time to time, fixed old speakers, built things with my hands. But later, when I started working as a programmer, I sank completely into software, and the need to tinker with electronics faded on its own. IT salaries meant I could simply buy a new one when the old one broke beyond repair, or pay someone to fix it.
And frankly, I begrudged the time. Repairing electronics takes skills and knowledge I didn’t have, and I knew perfectly well I’d have to invest time in learning them.
But now, with AI agents at hand, everything has become much easier and more accessible. You can just send ChatGPT a photo of what you’re fixing, and it will point you to the next step, explain what could go wrong, or find a detailed guide so you understand the process better.
A couple of days ago I got caught in a tropical downpour and soaked my favorite headphones, which have served me faithfully for more than four years. After the incident, the control joystick started acting up a little. So, without thinking twice, I grabbed my tools and started taking them apart.
It’s my weekend project, but I’ll get those headphones fixed, and I have an all-knowing AI agent to help, one that will find and order whatever parts I need.641
Security In The Age of AI
<written by a human being>
News about this or that network resource getting hacked will keep showing up more and more often. I think you've already heard about the Binance crypto exchange hack, where $6.3 billion in crypto got taken, noticeably shaking the whole market.
A week earlier, by the way, a vulnerability was found in PHP, which runs most of the internet's resources, and even earlier Hugging Face got hacked, with its model storage and all the add-ons for them.
Obviously this can't be avoided, especially as the intelligence of the models keeps getting better. Time to remember not just the basics of information security, but even to rethink them, taking the changed landscape into account.
The obvious one: don't keep your crypto on an exchange, I think that's clear. Cold wallets are still the most reliable way. Same goes for password managers, though I know a lot of people don't use them, and they should. So, keep them only locally on your own machine, no password storage services. Wherever it's available (it's pretty much standard now), use multiple authentication factors.
About passwords, by the way, I'll still mention it, because it's very common to use simple passwords, and the same ones across different services. Ban that for yourself, completely! Ideally you shouldn't know your passwords by heart at all. If you do, it means it's too easy (including to crack).
And yeah, let's hope banks do have really strong protection against hacks and attacks, plus a lot of backup channels, blocks and so on, they're known for that, after all.
Stay safe, everyone!641
Alert blindness
<written by a human being>
Now that AI agents work as DevOps engineers, I don't hesitate to wrap the system in every monitor and alerting setup possible for when something goes wrong. But this approach has its downsides.
Pretty quickly the number of monitors, and so the notifications, balloons. And that's normal as the system grows. Then these notifications start coming in - here's a warning that TLS needs to be reissued soon, there's a health probe that hasn't updated for more than five minutes, or something else that seems to need attention but usually resolves itself. Because TLS renews automatically, and the temporary probe failure is caused by a short-term "blink" on the hosting provider's side.
After a while you get used to these regular alerts. And you glance at them sideways with one eye so you don't miss something important. But after a few months of this, you literally develop blindness and just start ignoring them as harmless white noise.
Yesterday was the same story - I just didn't pay attention to yet another alert. And long after it, when I went into production to check the latest release, I saw with horror that data from the API server wasn't loading onto the platform! The incident was fixed by simply restarting the container in a couple of minutes, but prod was down for a couple of hours.
And there WAS an alert - I just missed it!
After that I audited the alerting system and raised the tolerance on the ones that are really just warnings, not notifications about critical failures. The main thing here is not to overdo it in the other direction, and miss what actually does deserve attention.
The key lesson from this story - tune your monitoring and alert thresholds carefully. Don't turn it into the fable of the prankster constantly crying "wolf", but don't muffle them to the point of missing the important stuff either.641
I Sleep. Agents Work
<written by a human being>
Before I go to sleep, I usually load up my agents with a final batch of sessions for the day. The problem is that once they finish, I have to go back to the office, check that no background agents or shell commands are still running, and shut the computer down.
Yes, with the mobile app I can now go through all the sessions right from the bedroom, see what’s happening, and ask the last one to shut down the server and the computer. But what if I’m already asleep and they haven’t finished yet?
For a long time, before leaving I’d write a prompt into every active session: once your work is done, check whether the other sessions are still active, and if there’s no activity, shut down the server and the computer. If there is activity, do nothing.
Then it hit me that this process can (and should!) be automated. So I asked Claude to write a script that watches Claude Code and Codex sessions. The script takes the status from the session registry, checks activity against the actual transcript entries, subagents included, and after a set timeout automatically shuts down the server and the PC.
I launch the script myself before leaving, which effectively replaces pressing the computer’s power button, except now the machine turns off only when the work is truly done. And sometimes that happens 3-4 hours after I’ve fallen asleep.
In the morning I have a log of which sessions were running, how the server responded to the shutdown command, and a set of commands to resume those same sessions. It turned out convenient and very simple. Good night and sleep well, everyone! After all, while we sleep, the agents work.641
AI Moves Fast. Big Tech Doesn't
<written by a human being>
Yesterday I caught up for a couple of words with a former colleague. We were on the same team 13 years ago, working on e-government rollout, doing our bit for the digitalization of society.
Back then it was still hardcore classic programming with the full cycle: starts with systems analysis, then the results get handed over to the programmers.
So he told me they got access to Cursor, and he's trying himself out as a vibe coder. And how much more convenient and faster it's become to get an idea to a prototype compared to the long wait on "capricious" developers. Interestingly though, vibe coding doesn't reach the production stage yet. Meaning the big companies where my ex-colleague works now still can't do without the classic pipeline.
All of this got me thinking a couple of things.
First. AI penetration into the masses hasn't actually happened yet. Even people working directly in IT, doing literally what amounts to driving a horse cart along Mr. Ford's factory, are still nowhere near as deep into using it every day as it seems to some, like me, who wake up and fall asleep in Claude Code sessions.
Second. Big companies adapt to AI very slowly because of the huge inertia of established processes and a massive bureaucratic machine. That's a clear signal to fast-moving startups, who can obviously turn it into their advantage and in some business sectors start competing with the mastodons for real.641
AI Gets Dumber On Weekends
<written by a human being>
I swear, models degrade on weekends!
I see a clear correlation between the weekend kicking in and a noticeable drop in intelligence, even in flagship models.
Right now I use Opus 5.5 by default for everything, including orchestration, and I've got nothing to complain about. All it takes is stating the task and the model handles it properly: gathers context first, asks if something's missing, designs the solution and implements it.
But the same tasks I gave it this weekend, for some reason the model does way worse. Missing important context only comes out at final acceptance, decisions are questionable and suboptimal, and the implementation is buggy. And across different tasks, even simpler ones.
Saturday was still tolerable, but yesterday, in Sunday sessions, I literally stopped Opus 5.5 in every single one, asked what it's doing, changed direction, hinted at obvious solutions and so on.
On weekdays I don't see this at all. Usually it's enough to blindly trust the model and it does everything top class. Of course there are misses, but not on this scale and not as often as yesterday.
I bet it's about the heavy load on the models because of token-maxxing, when everyone tries to burn through the remaining limits and make it before the reset on Monday.
Do you feel it too, or is it just me?641
Vibe-coding Smart Lights
<written by a human being>
Some people do whatever on weekends, and I'm vibe-coding for smart lamps!
By the way, I didn't know the wireless modules are built right into the bulbs themselves, and to make them work you just screw them into the socket! No extra wiring or add-ons. You just turn on the light and it works.
Through the mobile app you connect the bulb to WiFi, in my case (there are models that connect over Bluetooth), and just like that it's on the local network. In the official app you can change the bulb's color or even set up music sync. But that's not interesting to me.
A couple months ago I vibe-coded a desktop app for a USB desk lamp. And now I thought it'd be cool to sync it with the ceiling one!
Said and done: one session with Sol and we upgraded our app, which now controls both lamps. You can change colors and modes separately, or both at once. Now you can make a real ambient lighting for the room.
This bulb was experimental. But now I'm thinking about buying the same ones for my office too and screwing them in. You could sync them with, say, the keyboard backlight for full atmosphere!
IoT for all!641
When Less Is More
<written by a human being>
Yesterday I rewatched RoboCop, which I last saw as a kid, and was pleasantly surprised by things the movie showed very carefully and literally predicted how modern AI systems behave.
For example, there's an episode where they loaded hundreds of different directives into the cyborg that he had to follow. And, predictably, something went wrong and RoboCop started doing all kinds of crazy stuff and reacting totally inadequately to what was happening around him.
Reminds you of anything? Same thing today: pile any AI agent with instructions, surround it with rules it has to follow, and the result of its work looks pretty depressing, and getting anything coherent out of such a system gets very hard.
That's why lately, when it comes to editing project disciplines, I prefer removing rules and guardrails rather than adding new ones or tweaking the old ones. And it leads to a noticeable jump in the quality of the agents' work.
This is exactly the case where less is more. And the latest models are already smart enough to handle most tasks even without strict rules and instructions, like it was some time ago.
Same way RoboCop worked way better and more adequately with just 4 basic directives in his software. Everything else can easily be left to the human brain inside the robotic body.