AI isn’t what helps you solve that

Yesterday everything that involved automation by a computer was “robotics”. Robot Process Automation was the solution to every single human process problem ever in any business, and it was the only solution. You may as well have renamed the computer to the “Robotic Process Machine”, because everything it did was reduced down to that.

Well times have changed, and the hot new technology of matrix multiplications have replaces RPA. Now everything is AI. On some level, It’s hard to care. Lay people will call anything a computer does the wrong thing, and who can blame them. Our terminology is often so convoluted and technical that we have a hard time sticking to it. The difference this time is the amount of shit being sold to them. A person mislabeling useful software products as RPA might buy a license to IBM RPA, whereas a person mislabeling useful software as AI will give all their money to Sam Altman since the functional economy is going to end.

[]

Invest in AI by staying the fuck away

The age of AI is here! We’re all so excited for the machine to finally generate an incomprehensible amount of garbage, but just imagine if all that garbage was actually useful.

Well I refuse. I’m not interested in imagining how useful you could be to me if you did anything I actually wanted. If you want me to be excited, then maybe do something interesting1.

Inexplicably I’m alone with this opinion and everybody and their dog is trying to get into AI. Investors want the stocks badly enough that none of these companies are public. Executives want to implement the technology badly enough that they are making direct threats to their employees. American politicians and oligarch are talking about this technology as if it’s opium, and they can’t wait until we’re addicted. This from a technology that is fundamentally disconnected from physical reality. It generates text. It can never build a house or grow a potato.

[]

Beauty in engineering

Discussions around Software engineering as a profession is often framed as objective, focused around absolute truths, rules, and hard guidelines. Don’t repeat yourself, You ain’t gonna need it, the SOLID principles. All of these are discussed as absolute truths, and when a dissenting opinion is voiced people rush in to either disagree or point out how actually the claimed dissenting opinion is some sort of fringe case is only relevant to absolute experts. The vast majority of mortal programmers should still adhere strictly to the rule.

[]

Another look at terminal emulators

I had some time this weekend to look back at my frametime project from last year. Drawing inspiration from an article on lwn from 2018 called A look at terminal emulators I figured it could be fun to dive into the relative performance of terminal emulators is 2022.

The lwn article used an application called Typometer to asses the relative latency of the different terminal emulators. Typometer works by sending some input to the application, and monitoring the display buffer until the change is reflected. Assuming the other parts of the chain are unaffected by HOW this change comes to be, it’s a really simple pure software solution to getting a latency number.

[]

Word Macro Stuff

Faced with over 100 Word VBA macros and a request for information about which macros call a certain webservice. How do you get that information without going insane? With a lot of python, some Windows black magic, and a couple of open Microsoft “standards”.

Recently a team came to me to ask if it was possible to figure out who called one of our old applications. The application is a horrible pain for the team maintaining it, and they’d like to shut it down. Not least because it’s basically impossible to build. They had traced down a lot of applications already, but they were stuck on a folder brimming with Word VBA macros. From experience, they knew some of them called this application, but which?

[]

Towards GUI latency benchmarking

I am a huge believer in latency as an important part of UI feel. I am also a believer in optimizing against what you can measure. In this regard I see a hole in the open-source ecosystem: We have no structured ways to measure GUI lag.

Lag

When I say lag I mean the time between you pressing a physical button on your keyboard/mouse, and a change becoming visible on screen. I worry that this measurement in particular is suffering on modern systems with modern programming techniques and with no cheap and easy way to measure the effect we can’t even discuss it.

[]

Reuters 3000 keypad

I recently obtained the keypad section from a Reuters 3000 Xtra keyboard. I’m a fan of tiny keyboards like the planck. These keyboards usually don’t have a numpad, so an external keypad is appealing to me.

Discovery

To start of with we will take a physical overview of this keypad. Both to learn what we have to work with, but also just to document it.

Description of the keypad

On the outside the first thing that catches the eye are the giant colored MINE and YOURS buttons, quickly followed by the other weirdly labeled and colored buttons. I’m sure they were meaningful in the 3000 Xtra system. I will make good use of them as macro buttons. Also notice the alarm label, behind that white cover is an led. I’m probably going to place the numlock indicator there.

[]