Skip to content

Ditching GitHub Copilot and OpenAI

I see concerning actions by OpenAI that have made me cease supporting them.

I already posted about my experience with ChatGPT. Despite being a paid customer, the service was inaccessible, they didn’t provide customer support, and they temporarily made me unable to cancel my subscription. As a result, I switched to Claude, and I’ve been a happy customer ever since.

According to Business Insider’s article “Don’t ask OpenAI’s new model how it thinks’ unless you want to risk a ban“, things are going downhill at OpenAI. So, I switched to Cursor, using its Claude model instead of GitHub Copilot, which I canceled. Cursor is working great so far.

Void is yet another AI-centric Visual Studio Code fork, like Cursor. It’s especially promising given its support for a wide range of LLMs, including local ones. It’s early days, though, so I’m not switching yet.

I encourage everyone to hold companies, such as OpenAI, to certain standards and switch when these standards are not met.

Álom Játszótér: Így vertek át

Dióhéjban: Rendeltünk az Álom Játszótértől egy játszóteret, amelyet hiányosan teljesítettek. Konkrétan háromkiállású hinta helyett kétkiállású hintát kaptunk, homokozótetőt pedig nem kaptunk. A teljes összeget kifizettem, ők pedig megígérték, hogy visszafizetik a különbözetet, aztán kámforrá váltak. A Facebook üzenetemet válasz nélkül törölték.

És akkor kicsit részletesebben…

A feleségem játszóteret szeretett volna a gyermekeinknek, így talált rá az alomjatszoter.hu weboldalra. A Facebook oldalukon rendszeresen promotálják magukat.

A feleségem 2024. június 13-án írt nekik üzenetet, majd kérésükre átutalta a kért előleget.

Ezután június 14-én az utalás címzettjeként szereplő T. Géza felhívta a feleségemet egyeztetés végett, majd ő és kollégája kiszállították és összeszerelték udvarunkban a játszóteret. A helyszínen kifizettem a játszótér teljes árát.

Miután Géza és kollégája elmentek, a feleségem megérkezett és észrevette, hogy hiányos teljesítés történt, mert háromkiállású hinta helyett kétkiállású hintát kaptunk, homokozótetőt pedig nem kaptunk. Feleségem felhívta Gézát, aki azt mondta, hogy két héten belül visszautalják nekünk a többletet.

A visszautalás sosem történt meg, és innentől Géza semmilyen kommunikációs csatornán nem volt elérhető. A Facebook oldalukra is beírtam a hiányos teljesítés kapcsán, amely üzenetemet törölte válasz nélkül. Hab a tortán, hogy számlát se adtak.

Elérkeztünk rövid történetünk végéhez. Ki nem állhatom az ilyen eseteket, mert a Gézához hasonló gerinctelen suttyók miatt nem bíznak az emberek egymásban. Nem lett volna nagy érvágás neki, ha átutalja a különbözetet, de neki még ez az összeg is többet ér, mint a becsülete.

Mondanom sem kell, nem ajánlom az Álom Játszóteret. Sajnos alternatívát nem tudok ajánlani, de bárkit is választasz, azt javaslom, keress rá, hogy megbízható-e!

Working around Jabra’s power-saving

I use a Jabra Evolve2 85 headset, and after 10 seconds of no audio activity, its power-saving feature kicks in.

When power-saving is active, it can take a second or two for the audio to be audible, which is a big problem. If I get a short instant messenger notification, it goes unnoticed. If I start a video, I don’t hear the first few words.

Jabra’s Sound+ application doesn’t offer a way to disable power-saving. According to Jabra’s customer support, the following justifies this feature:

There is a purpose to this behavior, what you may consider a flaw, and that is to decrease BT radiation, preserve battery and help with density issues – in an office with tens of workers, it would be impossible for all employees to all use wireless devices if this feature was not turned on.

The delay is slightly greater via Bluetooth than with USB devices on the cable since the HFP Bluetooth profile used has a relatively high latency. This is usually not noticeable in communication and is used for integrated error correction, but is technically anchored in the Bluetooth standard, not in the product.

It’s not a good enough reason. To me, this is a major misfeature, and it should be possible to disable it. I wrote a script to keep the wireless audio connection alive and avoid delays, which I hope will be useful to others.

I can’t recommend Jabra products until they provide a related option and offer replacement batteries.

Block international calls on Android

Occasionally, I get foreign calls from our business partners, and I never pick them up because I don’t want them to interrupt my workflow. If they want to contact me, I expect them to email me.

I always wanted to automatically reject such international calls but never could. All the tutorials I could find suggested Android settings that my Android version didn’t support.

MacroDroid to the rescue!

That’s it! +36 is Hungary’s country number. Negating it blocks international calls.

MacroDroid is an extremely versatile tool that I highly recommend.

ChatGPT, we’re breaking up

I’ve witnessed the recent AI revolution with great awe and have been a ChatGPT Plus subscriber since the early days.

However, the service has been inaccessible for days recently, which shouldn’t ever be the case for a paying customer, and if it is, they should offer compensation.

Naturally, I wanted to contact customer support, but I discovered there was no customer support, only a help center. It’s a very frustrating experience, and I’m baffled that companies are allowed to operate this way.

Then, I wanted to unsubscribe, but to my shock, I couldn’t, as I was welcomed by their “ChatGPT is at capacity” page, disabling me from accessing my subscription page. Since unsubscription was impossible, I submitted a chargeback at my bank.

At this point, I felt trapped because I didn’t know about an alternative, similarly powerful language model. Luckily, there is: Claude‘s 3.5 Sonnet model is very capable, and I recommend it. I’m considering subscribing.

It’s unfortunate that ChatGPT forgot about its customers in the pursuit of showing off its latest tech. I won’t advocate them anymore and advise people to move to Claude.

Logitech is a mess

I wanted to adjust the speed of my Logitech G502 Hero mouse. Since Logitech doesn’t support Linux, I had to fire up my rarely used Windows laptop.

I searched for “Logitech configurator software”, which made me install Logi Options+. After installing it, I realized that it doesn’t support the G502.

Another search revealed that the Logitech G HUB software supports Logitech’s gaming gear, such as my G502, so I installed it. Then I realized that G HUB doesn’t save settings in the mouse’s onboard memory, which is a deal-breaker because even if I could run G HUB on Linux, I wouldn’t run a background app just for this purpose.

A third, longer search revealed a Logitech support article featuring their Logitech Gaming Software. I installed it, but a popup said that I should use the new and shiny G HUB instead, and it didn’t allow me to use Logitech Gaming Software.

Finally, I uninstalled G HUB, started up Logitech Gaming Software again, and this time, it worked. It saved the mouse speed to the onboard memory, just as I expected.

From a user standpoint, the above experience is inexcusable. Logitech should have one configurator that works on all OSes, and they shouldn’t rewrite or fork it whenever a manager comes up with a wonderful new idea, such as creating a new brand.

Sadly, I couldn’t find any good alternative to the G502. All manufacturers support Windows, some support Mac, but none support Linux.

To draw a stark contrast, the Agent configurator software of the Ultimate Hacking Keyboard supports Linux, Windows, and Mac. It does its job well and doesn’t have semi-working alternatives. As a bonus, we develop it the open on GitHub. I’m the development lead of Agent, we deeply care about it, and our customers love it.

LiPo battery finder

There are thousands of LiPo batteries, but I couldn’t find the ones that best fit my project, so I’ve created the LiPo battery finder, which allows you to filter batteries based on x, y, and z sizes.

My tool contains a scraper that extracts the pages and subpages of https://www.pdbattery.com/li-polymer-battery-cells-list.html and https://www.lipolbattery.com, creating an .mjs file as a result.

The .mjs file gets imported by the web application, allowing the scraped records to be searched interactively.

Easy KiCad PCB panelization with kicad-util

There are multiple panelizers available for KiCad, but only one is suitable for easily placing multiple oddly-shaped PCBs onto a panel: the kicad-util panelizer.

You simply place the PCBs next to each other and draw lines between them on the Eco1.User layer. Then run a kicad-util command, and voila! The lines are transformed into mouse-bites.

Unfortunately, kicad-util is not compatible with KiCad 6’s updated PCB format, so the drawn lines are no longer converted to mouse bites.

Luckily, a merge request contains the fix, but kicad-util’s creator is not available anymore. Although the contributor of the merge request created his fork, the .jar file has not been recompiled, so the fixed version is not easily accessible to most users.

Given the above, I recompiled the fixed kicad-util version with the mvn package command and made the .jar file available. I use it as:

java -jar ~/bin/kicadutil.jar pcb -f=myboard.kicad_pcb panel --inset=0 --hole=0.35 --pitch=0.7 --width=2.5 --fillet=1

Introducing the Ultimate Hacking Keyboard

I want to take this opportunity to reveal the trailer video for the Ultimate Hacking Keyboard, a high-end mechanical keyboard of which I’m the founder and lead developer. Our keyboard will be kickstarted soon, so please share it, follow us, and subscribe to our list to get notified when our campaign starts.