<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Melabit</title>
    <link>https://melabit.com/en/</link>
    <description>Recent content on Melabit</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Sat, 27 Jun 2026 18:00:00 +0000</lastBuildDate>
    <atom:link href="https://melabit.com/en/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Siri AI and more on Apple Intelligence</title>
      <link>https://melabit.com/en/2026/06/27/siri-ai-and-more-on-apple-intelligence/</link>
      <pubDate>Sat, 27 Jun 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/06/27/siri-ai-and-more-on-apple-intelligence/</guid>
      <description>&lt;p&gt;Earlier today, I tried to activate &lt;code&gt;Siri AI (Beta)&lt;/code&gt; on the Macbook Air M1 that I &lt;a href=&#34;https://melabit.com/en/2026/06/25/golden-gate/&#34;&gt;updated to Golden Gate&lt;/a&gt; a couple of weeks ago.&lt;/p&gt;&#xA;&lt;p&gt;For now, and who knows for how much longer, here in Europe there&amp;rsquo;s no hope of using Siri AI on the iPhone or iPad due to the ongoing disputes between Apple and European regulators. But on the Mac, there shouldn&amp;rsquo;t be any issues, provided you use English as the language for both your Mac and Siri.&lt;/p&gt;&#xA;&lt;p&gt;So, &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//#configuration&#34;&gt;here I am again&lt;/a&gt;, heading to &lt;code&gt;System Settings &amp;gt; Apple Intelligence &amp;amp; Siri&lt;/code&gt; &amp;mdash; oops, on Golden Gate it has been renamed simply to &lt;code&gt;Siri&lt;/code&gt; &amp;ndash; to configure Siri so that it uses the same language as the Mac, which is already set to English.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate.png&#34; alt=&#34;&#34;&gt;&lt;h4 id=&#34;hey-siri-ai&#34;&gt;Hey Siri (AI)&lt;/h4&gt;&#xA;&lt;p&gt;Nothing new so far. However, even though I was apparently placed on a waiting list to be notified when the new version of Siri would be available for my Mac,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate-waitlist.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;after just a few seconds, a popup appeared allowing me to set up Siri AI right away.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate-onboarding-1.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate-onboarding-2.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate-ready.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;As soon as I finished the setup, the &lt;code&gt;System Settings &amp;gt; Siri&lt;/code&gt; pane changed to what you see below,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/siri-ai-golden-gate-configured.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;and, after the usual long wait for the &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//#configuration&#34;&gt;language model download&lt;/a&gt;, my Mac running Golden Gate was finally ready to use Siri AI.&lt;/p&gt;&#xA;&lt;p&gt;Now, I just need to find the time to give it a proper spin! 😇&lt;/p&gt;&#xA;&lt;h4 id=&#34;apple-intelligence-on-sequoia&#34;&gt;Apple Intelligence on Sequoia&lt;/h4&gt;&#xA;&lt;p&gt;While I was doing all this, Apple Intelligence also got activated on the two Macs running Sequoia that I use daily for work. It all started with a notification on my Mac Mini M1,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/sequoia-ready-for-apple-intelligence.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;and straight after that, the System Settings for Siri changed too, becoming as shown below.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/apple-intelligence-sequoia.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The exact same thing happened on my Mac Studio M2 Ultra, which I hadn&amp;rsquo;t even touched yet.&lt;/p&gt;&#xA;&lt;p&gt;It is clear that these changes were triggered by configuring Siri to use the same language as the Mac, in my case, English (though it obviously works for Italian and other major languages as well).&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s strange, though, that this didn&amp;rsquo;t happen a couple of months ago when &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//&#34;&gt;I did the exact same thing&lt;/a&gt; to use &lt;code&gt;apfel&lt;/code&gt; and Apple Intelligence on the very same Macbook Air, which was running Tahoe at the time and has now been updated to Golden Gate.&lt;/p&gt;&#xA;&lt;p&gt;But whatever the reason, Apple Intelligence&amp;rsquo;s &lt;code&gt;Writing Tools&lt;/code&gt; are now working on Sequoia too,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-27-siri-ai-e-ancora-su-apple-intelligence/sequoia-show-writing-tools.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;even though, unfortunately, as already noted in my &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//&#34;&gt;previous post on Apple Intelligence&lt;/a&gt;, they lack flexibility since there&amp;rsquo;s no way to change the default settings. Such flexibility is instead offered by &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//&#34;&gt;apfel&lt;/a&gt;, which I can&amp;rsquo;t use here on Sequoia because it &lt;a href=&#34;https://apfel.franzai.com/&#34;&gt;explicitly requires macOS Tahoe&lt;/a&gt;. Too bad!&lt;/p&gt;&#xA;&lt;p&gt;Having activated Apple Intelligence now also allows me to use Image Playground on the Mac. Whether it&amp;rsquo;s actually worth using is a different story. In any case, it&amp;rsquo;s another tool to play around with, which never hurts.&lt;/p&gt;&#xA;&lt;h4 id=&#34;final-thoughts&#34;&gt;Final thoughts&lt;/h4&gt;&#xA;&lt;p&gt;I didn&amp;rsquo;t know Apple Intelligence could work on Sequoia too. Reading the &lt;a href=&#34;https://support.apple.com/en-us/120283&#34;&gt;documentation&lt;/a&gt;, Apple Intelligence has been available in English since Sequoia version 15.1, released in late October 2024, while support for other major languages, including Italian, was added starting with 15.4 (late March 2025, now we are on 15.7.7).&lt;/p&gt;&#xA;&lt;p&gt;But, partly due to the time that passed between the announcement and when Apple Intelligence actually became available here in Europe, and partly because Apple Intelligence requires both Siri and the Mac to be set to the same language, I had completely forgotten about it.&lt;/p&gt;&#xA;&lt;p&gt;And I wouldn&amp;rsquo;t have noticed it today either, if I hadn&amp;rsquo;t seen the notification on the Mac Mini. A notification that definitely did not appear when, a couple of months ago, &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//&#34;&gt;I did the exact same thing&lt;/a&gt; to try Apple Intelligence and &lt;code&gt;apfel&lt;/code&gt; on the Air.&lt;/p&gt;&#xA;&lt;p&gt;In any case, the requirement to use the same language for both the Mac and Siri just to activate Apple Intelligence is almost ridiculous nowadays. Using two different languages for your Mac and Siri might not be the norm,&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; but I&amp;rsquo;m certain it&amp;rsquo;s not such an isolated scenario as to not deserve the same attention Apple usually dedicates to other user niches.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;As I noted in my &lt;a href=&#34;https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence//&#34;&gt;post on apfel and Apple Intelligence&lt;/a&gt;, while you can set a Mac to use English and an iPhone to use Italian, Siri&amp;rsquo;s configuration is global. Therefore, once English is selected on any Apple device, the choice automatically propagates to all other devices linked to the same account.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;But I&amp;rsquo;m sure it&amp;rsquo;s quite common among those who, like me, work in software development and systems administration without being native English speakers.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Golden Gate</title>
      <link>https://melabit.com/en/2026/06/25/golden-gate/</link>
      <pubDate>Thu, 25 Jun 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/06/25/golden-gate/</guid>
      <description>&lt;p&gt;The development of macOS has always followed a tick-tock pattern, more or less &lt;a href=&#34;https://en.wikipedia.org/wiki/Tick%E2%80%93tock_model&#34;&gt;like Intel processors&lt;/a&gt;: the &lt;em&gt;tick&lt;/em&gt; versions are more &lt;em&gt;exciting&lt;/em&gt; and introduce new and spectacular features, while the &lt;em&gt;tock&lt;/em&gt; versions are &lt;em&gt;relaxed&lt;/em&gt; and focus on integrating these features into the operating system, fixing bugs and optimizing  the overall behavior of the system to make it faster and more responsive.&lt;/p&gt;&#xA;&lt;p&gt;In short, the &lt;em&gt;tick&lt;/em&gt; moments innovate the operating system, but it&amp;rsquo;s the &lt;em&gt;tock&lt;/em&gt; moments that make it great and memorable, as happened with Snow Leopard, Mountain Lion, El Capitan, Mojave, or Monterey.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-06-25-golden-gate/960x0.jpeg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;The Golden Gate Bridge under construction. Source: &lt;a href=&#34;https://www.sfgate.com/bayarea/article/1933-construction-begins-on-golden-gate-bridge-12471089.php&#34;&gt;SFGate&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Golden Gate, also known as macOS 27, already seems to be on its way to becoming a tock. After the disasters of Tahoe, a version of macOS that addressed the many &lt;em&gt;shortcomings&lt;/em&gt; (to put it politely) of Tahoe was just what was needed.&lt;/p&gt;&#xA;&lt;p&gt;Isn&amp;rsquo;t it a bit early to make that claim? After all, I&amp;rsquo;ve only been using Golden Gate for a couple of weeks, and the developers&amp;rsquo; beta is just on its first (since a couple of days second) version?&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;d say definitely not, and for a very simple reason: ever since updating to Golden Gate, I no longer pay attention to the user interface. I no longer notice the Finder toolbar, the myriad icons in the menus, or the many other graphic inconsistencies of Liquid Glass. I just focus on using my Mac for work.&lt;/p&gt;&#xA;&lt;p&gt;After all, that&amp;rsquo;s how it should be. An operating system is not a showcase item, it is not a high-fashion dress that looks great but is impossible to wear. An operating system is the foundation on which a computer operates, and the more transparent it is, the better. If we don&amp;rsquo;t even notice the existence of operating system&amp;rsquo;s existence, as happened with the great macOSes mentioned above, this means it is fast and stable and does everything we ask of it without getting in the way or complicating our lives.&lt;/p&gt;&#xA;&lt;p&gt;There will be time to examine the differences between Tahoe and Golden Gate in detail, but until then, kudos to the Apple developers for their excellent work. It wasn&amp;rsquo;t easy to fix Liquid Glass without discarding it entirely, but it seems they are on the right track.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>A few words about WWDC26</title>
      <link>https://melabit.com/en/2026/06/09/a-few-words-about-wwdc26/</link>
      <pubDate>Tue, 09 Jun 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/06/09/a-few-words-about-wwdc26/</guid>
      <description>&lt;p&gt;I won&amp;rsquo;t make it long, just a few quick hot takes (or should I say &lt;em&gt;lukewarm&lt;/em&gt;, since a day has already passed?) on what struck me most in the introductory keynote for WWDC26.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Parental Controls&lt;/strong&gt;. Maybe it is because my daughters are already grown up, but I&amp;rsquo;ve always had many reservations about the effectiveness of parental controls. Kids easily bypass them, perhaps with the help of a nerdy friend, while parents gain a false sense of security and, worse still, use them to deceive themselves into thinking they have no responsibility for their children&amp;rsquo;s online activities.&lt;/p&gt;&#xA;&lt;p&gt;We&amp;rsquo;ll soon see if this time Apple has gotten the right balance between control and freedom.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Siri AI&lt;/strong&gt;. Speaking against Siri is like shooting the Red Cross, and since my daughter is a doctor, I won&amp;rsquo;t do that. That said, maybe this time we&amp;rsquo;ll finally be able to use Siri to interact more easily and quickly with our Apple devices, without the &lt;a href=&#34;https://melabit.com/it/2022/06/19/ehi-siri/&#34;&gt;nonsense&lt;/a&gt; of the past.&lt;/p&gt;&#xA;&lt;p&gt;I wrote &lt;em&gt;we&amp;rsquo;ll be able&lt;/em&gt;, but the sad truth is that here in Europe we will have to wait who knows how long to be able to use Siri on iOS and iPadOS, while it should be available immediately on macOS. We&amp;rsquo;ll see.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;macOS 27 Golden Gate&lt;/strong&gt;. After the Tahoe disaster, and in particular the awkward implementation of &lt;em&gt;Liquid Glass&lt;/em&gt; in macOS Tahoe, Apple seems to have listened to the criticisms of many dissatisfied users (I&amp;rsquo;m one of them, but I doubt Apple noticed), trying to correct the most glaring flaws of Liquid Glass.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-09-due-parole-sul-wwdc26/macos27-toolbar.jpg&#34; alt=&#34;&#34;&gt;&lt;p&gt;The impression I got from the keynote is that Golden Gate is a version of macOS focused more on improving what&amp;rsquo;s already there than on introducing new features.&lt;/p&gt;&#xA;&lt;p&gt;To me, this is very welcome news, given that these are the versions of macOS I loved the most and that I still consider the best, from Panther and Snow Leopard, to Mountain Lion and El Captain. As soon as I finish writing this, I&amp;rsquo;ll try downloading Golden Gate, so stay tuned!&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Such as, for instance, &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/&#34;&gt;macOS Tahoe: see you in September&lt;/a&gt;, &lt;a href=&#34;https://melabit.com/en/2025/07/08/macos-tahoe-where-is-my-terminal/&#34;&gt;macOS Tahoe: where is my Terminal?&lt;/a&gt;, &lt;a href=&#34;https://melabit.com/en/2025/11/10/macos-tahoe-again/&#34;&gt;macOS Tahoe, again&lt;/a&gt;, &lt;a href=&#34;https://melabit.com/en/2025/11/24/macos-tahoe-lets-free-the-icons/&#34;&gt;macOS Tahoe: let&amp;rsquo;s free the icons!&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>From HFS&#43; to APFS</title>
      <link>https://melabit.com/en/2026/06/08/from-hfsplus-to-apfs/</link>
      <pubDate>Mon, 08 Jun 2026 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/06/08/from-hfsplus-to-apfs/</guid>
      <description>&lt;p&gt;For years I have had two external drives always connected to my home Mac Mini M1.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; The first is a 2 TB external SSD containing all my work and personal documents, the code for the scripts and applications I develop, documentation, and so on.&lt;/p&gt;&#xA;&lt;p&gt;A second mechanical drive keeps all my photos and music, as well as a large software library, mainly for macOS and Linux, which I started archiving more than twenty years ago, when you couldn&amp;rsquo;t find everything online, and which I still keep updating today.&lt;/p&gt;&#xA;&lt;p&gt;This setup is necessary because the internal 1 TB drive is too small for my needs. But it also proves very useful every time I move to a new Mac: once macOS is configured and the essential applications are installed, I just need to connect the two external drives to be ready to work.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-06-08-da-hfsplus-a-apfs/william-warby-ykyUSsbDviA-unsplash.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://unsplash.com/@wwarby&#34;&gt;William Warby&lt;/a&gt; on &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In terms of speed I don&amp;rsquo;t notice any significant difference between the internal drive and the external SSD. This is partly because the tasks I usually carry out, mainly writing and developing software, are not affected by the read or write speed of the drive. Even the media files on the mechanical drive aren&amp;rsquo;t an issue; when using Photos and Music I can surely afford to lose a few extra seconds.&lt;/p&gt;&#xA;&lt;p&gt;Until macOS Monterey, displaying the contents of external drives was always almost instantaneous, even when dealing with folders containing thousands and thousands of files.&lt;/p&gt;&#xA;&lt;p&gt;With Sonoma, suddenly everything changed. Every time I opened a folder containing a large number of files or subfolders, I had to &lt;a href=&#34;https://melabit.com/en/2024/05/31/apple-we-have-a-problem-a-look-at-macos-sonoma-bugs-update/&#34;&gt;wait several tens of seconds&lt;/a&gt; before being able to see the contents. Sequoia &lt;a href=&#34;https://www.melabit.com/en/2025/02/04/apple-we-fixed-some-issues-from-sonoma-to-sequoia/&#34;&gt;improved this behaviour sligthly&lt;/a&gt;, but only temporarily, as its latest releases have made opening folders on external drives as slow as before.&lt;/p&gt;&#xA;&lt;p&gt;This slowness is not due to a hardware problem; the same drive connected to a Mac running Monterey displays files almost instantly. The problem lies in the software, or more precisely in how macOS manages the two main filesystems of the Mac world, HFS+ and APFS.&lt;/p&gt;&#xA;&lt;h4 id=&#34;apfs&#34;&gt;APFS&lt;/h4&gt;&#xA;&lt;p&gt;In 2017, after nearly twenty years of &lt;a href=&#34;https://eclecticlight.co/2025/04/12/a-brief-history-of-mac-native-file-systems/&#34;&gt;HFS+&lt;/a&gt;, Apple introduced a new filesystem optimised for solid-state storage devices, unimaginatively named &lt;a href=&#34;https://eclecticlight.co/2017/01/27/apple-file-system-what-it-means-what-it-brings/&#34;&gt;Apple File System&lt;/a&gt; (APFS).&lt;/p&gt;&#xA;&lt;p&gt;Up until Monterey the two filesystems coexisted peacefully: &lt;a href=&#34;https://eclecticlight.co/2022/05/16/should-you-continue-using-hfs/&#34;&gt;APFS had become mandatory&lt;/a&gt; for the system drive (that is, the one from which the Mac boots and which contains the operating system and applications), but nothing prevented you from continuing to use HFS+ for external drives, which in this way remained readable on older Macs and, with some effort, on &lt;a href=&#34;https://www.phoronix.com/news/Apple-HFS-2025-Linux-Maintain&#34;&gt;Linux&lt;/a&gt; and &lt;a href=&#34;https://www.paragon-software.com/home/hfs-windows/&#34;&gt;Windows&lt;/a&gt; as well.&lt;/p&gt;&#xA;&lt;p&gt;Starting with Sonoma (perhaps even from Ventura, which I always avoided using), access to the contents of folders on HFS+ drives became extremely slow. I don&amp;rsquo;t think Apple did this intentionally, perhaps to force users to switch to APFS. It is more likely that it was a simple bug that has never been fixed because Apple is no longer interested in supporting HFS+. In fact, the slowdown only affects the &lt;em&gt;display&lt;/em&gt; of files in Finder, while opening or saving them is not affected.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Due to laziness, I tolerated these slowdowns for two years. In the meantime, I replaced the 2 TB mechanical external drive with an NVMe SSD,&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; but the speed at which folders opened improved much less than I would have expected.&lt;/p&gt;&#xA;&lt;p&gt;So, a few days ago, I decided to take the plunge and convert both my external drives to APFS.&lt;/p&gt;&#xA;&lt;h4 id=&#34;from-hfs-to-apfs&#34;&gt;From HFS+ to APFS&lt;/h4&gt;&#xA;&lt;p&gt;With &lt;code&gt;Disk Utility&lt;/code&gt;, switching from HFS+ to APFS is very straightforward: just right-click on the drive you want to modify and select &lt;code&gt;Convert to APFS...&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-08-da-hfsplus-a-apfs/convert-to-apfs.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Before starting, it is useful to select the &lt;code&gt;Show All Devices&lt;/code&gt; item from the &lt;code&gt;View&lt;/code&gt; menu (or by clicking the &lt;a href=&#34;https://melabit.com/img/2026-06-08-da-hfsplus-a-apfs/show-all-devices-toolbar.png&#34;&gt;&lt;code&gt;View&lt;/code&gt; icon&lt;/a&gt; in the Disk Utility toolbar), so you can see how the structure of the drive changes as you switch from HFS+ to APFS.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-06-08-da-hfsplus-a-apfs/show-all-devices.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;In theory, the conversion process should not damage the files on the drive. However, it is better not to take risks and make a backup first. I write this from experience, as you will read shortly.&lt;/p&gt;&#xA;&lt;p&gt;I had no problems with the first drive, the 2 TB SSD, perhaps because it was relatively empty with only 500 GB of the total 2 TB used. Converting from HFS+ to APFS took only a handful of seconds, after which the drive finally became fast and responsive, as expected of an SSD.&lt;/p&gt;&#xA;&lt;h4 id=&#34;you-can-read-but-not-write&#34;&gt;You can read but not write&lt;/h4&gt;&#xA;&lt;p&gt;The conversion of the mechanical drive was an entirely different matter. This drive, unlike the previous one, has only 500 GB free out of 2,000 total. But 500 GB is still a quarter of the total capacity and so, after the positive experience I had just had, I decided to start without making a backup, as the files it contained could always be restored from Time Machine.&lt;/p&gt;&#xA;&lt;p&gt;When it went to convert the drive to APFS, Disk Utility started grinding away for quite a while; maybe it was only a minute or two, but a minute can feel like an eternity when you&amp;rsquo;re doing something like this. After that, Disk Utility stopped and warned me that the conversion process had failed.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, despite the error, the drive continued to work as usual. For that, I would like to thank the Apple developers, who did an excellent job of ensuring that the file system conversion &amp;ndash; an extremely delicate process that modifies the underlying structure of the drive &amp;ndash; could fail without damaging the files stored on it.&lt;/p&gt;&#xA;&lt;p&gt;Needless to say, I tried again with the same result.&lt;/p&gt;&#xA;&lt;p&gt;ABefore trying again, I decided it would be wiser to make a backup of everything onto another external hard drive first. This took the whole night, but it was better not to take too many risks.&lt;/p&gt;&#xA;&lt;p&gt;It must have been a premonition, because on the third attempt Disk Utility gave up and reported an error &lt;code&gt;-69860&lt;/code&gt;, &amp;ldquo;The underlying task reported failure on exit&amp;rdquo;, which was so vague as to be meaningless. However the consequence was clear: that the drive had become &lt;code&gt;read-only&lt;/code&gt;. I could read all the files without any issue, but I could no longer write a single bit.&lt;/p&gt;&#xA;&lt;p&gt;Since I had a fresh backup on hand, I didn’t panic too much. Using Disk Utility, I erased the entire drive, this time choosing APFS as the filesystem. To do this, simply select the drive and then click the &lt;code&gt;Erase&lt;/code&gt; button in the Disk Utility toolbar.&lt;/p&gt;&#xA;&lt;h4 id=&#34;restoring-the-files&#34;&gt;Restoring the files&lt;/h4&gt;&#xA;&lt;p&gt;The next step was to restore the files from the backup. First, I tried using the Finder to manually drag each folder from the backup drive to the newly reformatted APFS drive.&lt;/p&gt;&#xA;&lt;p&gt;There were no problems with folders containing relatively few files, but when it came to a much larger one, the Finder eventually gave up, claiming that the drive already contained a file with the same name. The file obviously wasn&amp;rsquo;t there because I was rebuilding the drive from scratch, but I didn&amp;rsquo;t want to waste any more time investigating, only to end up with the same error an hour later.&lt;/p&gt;&#xA;&lt;p&gt;So, I opened the good old Terminal, moved with &lt;code&gt;cd&lt;/code&gt; into the root folder of the drive to be restored (which I&amp;rsquo;ll call &lt;code&gt;Media HD&lt;/code&gt; here),&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% cd &amp;#34;/Volumes/Media HD&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and copied the folders one by one from the backup drive (&lt;code&gt;Backup HD&lt;/code&gt;) to the destination drive. Before doing all this I reformatted again &lt;code&gt;Media HD&lt;/code&gt; to start from a &lt;em&gt;clean&lt;/em&gt; state.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% cp -p -R &amp;#34;/Volumes/Backup HD/&amp;lt;directory A&amp;gt;&amp;#34; .&#xA;% cp -p -R &amp;#34;/Volumes/Backup HD/&amp;lt;directory B&amp;gt;&amp;#34; .&#xA;...&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here, &lt;code&gt;&amp;lt;directory A&amp;gt;&lt;/code&gt;, &lt;code&gt;&amp;lt;directory B&amp;gt;&lt;/code&gt; (without the trailing &lt;code&gt;/&lt;/code&gt;) and so on refer to the names of the folders (or &lt;em&gt;directories&lt;/em&gt;) to be copied. The &lt;code&gt;-p&lt;/code&gt; option specifies that the copy should not modify the file attributes,&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt; while &lt;code&gt;-R&lt;/code&gt; means that all files and folders being restored should be copied recursively. Please note that the &lt;code&gt;.&lt;/code&gt; at the end of each command is mandatory, as it specifies that the files must be copied into the current folder of the destination drive.&lt;/p&gt;&#xA;&lt;p&gt;The great thing about using Terminal is that once you have started the copy process, you can set it aside and let it work while you do other things. Just make sure you don&amp;rsquo;t close Terminal or touch the backup or destination drives.&lt;/p&gt;&#xA;&lt;p&gt;The downside is that you have no idea what is happening or how many files have been already copied. Using the &lt;code&gt;-v&lt;/code&gt; option is out of the question, because it would cause &lt;code&gt;cp&lt;/code&gt; to print the name and path of every copied file, slowing down the whole operation.&lt;/p&gt;&#xA;&lt;p&gt;It is much better to open a second Terminal tab and navigate to the root folder of the drive being restored (if it doesn&amp;rsquo;t already appear automatically) with&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% cd &amp;#34;/Volumes/Media HD&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and then run the command&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% du -h -d 1 &amp;#34;/Volumes/Media\ HD/&amp;lt;directory A&amp;gt;&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;which returns the list of folders contained in &lt;code&gt;&amp;lt;directory A&amp;gt;&lt;/code&gt;, together with their respective sizes. The total size occupied by &lt;code&gt;&amp;lt;directory A&amp;gt;&lt;/code&gt; is shown at the end. By comparing this with the size of the folder on the backup drive it is easy to get an idea of how much is left to copy.&lt;/p&gt;&#xA;&lt;p&gt;One word of warning: when &lt;code&gt;cp&lt;/code&gt; is busy copying a large file, &lt;code&gt;du&lt;/code&gt; can be very slow to respond. Be patient and don&amp;rsquo;t worry, these are Unix tools, reliable stuff that crashes pnly when you hit them with a hammer!&lt;/p&gt;&#xA;&lt;h4 id=&#34;even-the-terminal-can-act-up&#34;&gt;Even the Terminal can act up&lt;/h4&gt;&#xA;&lt;p&gt;Although the Terminal is usually more reliable than the graphical interface, there are rare cases where it can cause problems.&lt;/p&gt;&#xA;&lt;p&gt;It happened to me with a folder of about ten gigabytes, containing an enormous number of very small files arranged in deeply nested folders, which has always been difficult to transfer from one drive to another. Usually, the best thing to do is to compress the folder from the Terminal,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% tar -czf large_folder_with_many_files.tar.gz &amp;#34;Volumes/Media HD/Large folder with many files&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;transfer it to the other drive and then expand again it with&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% tar -xzf large_folder_with_many_files.tar.gz&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I&amp;rsquo;ve done it many times before and it has always worked. This time, however, it didn&amp;rsquo;t. When I tried to decompress the file, a &amp;ldquo;Special header too large error&amp;rdquo; appeared, which could be related to some weird modification to the folder or its files that occurred while I was trying to convert the drive to APFS.&lt;/p&gt;&#xA;&lt;p&gt;The problem here was that I could have all the backups in the world, but if I couldn&amp;rsquo;t decompress the file, I would have ended up restoring the folder from Time Machine, which would have taken an inordinate number of hours.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, on my Mac I always have a few utilities that I might rarely use, but that turn out to be essential when I need them. That’s the case with &lt;a href=&#34;https://apps.apple.com/it/app/the-unarchiver/id425424353&#34;&gt;The Unarchiver&lt;/a&gt; by MacPaw, which is available on the App Store. Don’t ask me how or why, but The Unarchiver managed to unpack the &lt;code&gt;tar.gz&lt;/code&gt; file without a hitch, and it did so very quickly, too, perhaps even faster than the usual &lt;code&gt;tar&lt;/code&gt; command in the Terminal.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;In the end, everything worked out fine, and I managed to convert my two external drives from HFS+ to APFS without losing a single bit of data and in less time than I would have expected.&lt;/p&gt;&#xA;&lt;p&gt;Access to the drives is now lightning-fast again, just as it was in Monterey and earlier versions of macOS. I still don&amp;rsquo;t understand what happened &lt;em&gt;inside macOS&lt;/em&gt; to make drives formatted with HFS+ so inefficient. I don&amp;rsquo;t think Apple did it on purpose to push users towards the new filesystem. It is far more likely to be a bug that Apple is no longer interested in fixing.&lt;/p&gt;&#xA;&lt;p&gt;While my personal experience of converting from HFS+ to APFS is statistically insignificant, I believe it is reasonable to conclude that the conversion process should not cause any problems provided the disk is relatively empty (i.e. up to 50% full). I haven&amp;rsquo;t been gazing into a crystal ball; the reason is simply that, under these conditions, macOS should have ample space to create the data structures of the new file system without touching the existing ones.&lt;/p&gt;&#xA;&lt;p&gt;Above that threshold the conversion might work or, as happened to me, it might throw errors. In that case it is better to play it safe and make a preventive backup rather than risk losing your documents or getting stuck in arcane repair processes that you never know how (or when) will end.&lt;/p&gt;&#xA;&lt;p&gt;Many users love to live on the edge and consider backups to be a waste of time. However, backups are never a waste of time, they are insurance for your data. And, unlike regular insurance policies, they are free or almost so.&lt;/p&gt;&#xA;&lt;p&gt;In any case, never panic if something unexpected happens. It’s better to take a break, think it over, and look up information online, because reacting (badly) on instinct can do more damage than has already been done.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;There is also a third drive dedicated exclusively to Time Machine. But that drive is indispensable and doesn&amp;rsquo;t count.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;If you want to force someone to do something, it is better to do it properly, isn&amp;rsquo;t it?&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;I was lucky to choose the right moment. Today, the same drive would cost more than twice as much, and it might not even be easy to find.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;File attributes are the metadata associated with a file that define its behaviour and access modes. These include the file&amp;rsquo;s creation and modification dates, read and write permissions, file ownership, and so on.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Apfel, an apple for Apple Intelligence</title>
      <link>https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence/</link>
      <pubDate>Mon, 11 May 2026 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/05/11/apfel-an-apple-for-apple-intelligence/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/photo-1763288755349-41ace219fd3d.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://unsplash.com/@juzwe&#34;&gt;Julian Zwengel&lt;/a&gt; on &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;One of the (few) reasons to switch to macOS 26 Tahoe is the opportunity to use the language model that powers Apple Intelligence.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://www.apple.com/it/apple-intelligence/&#34;&gt;Apple Intelligence&lt;/a&gt; is the final product, natively integrated into the Apple ecosystem, with which we can process text (but also images) directly on our device. For example, by selecting a section of text and right-clicking with the mouse to choose &lt;code&gt;Show Writing Tools&lt;/code&gt;, we have at our fingertips a useful tool for summarising those mile-long documents or for rewriting hastily jotted-down sentences.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;As shown in the figure below, these tools are not limited to Apple applications alone, but can also be used in third-party applications like Firefox.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-writing-tools-it.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-writing-tools-it.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://developer.apple.com/documentation/foundationmodels&#34;&gt;language model (LLM)&lt;/a&gt; behind Apple Intelligence is accessible through the &lt;a href=&#34;https://developer.apple.com/documentation/foundationmodels&#34;&gt;Foundation Models framework&lt;/a&gt;. And it is precisely this &lt;code&gt;framework&lt;/code&gt; that allows developers to integrate artificial intelligence functions into applications running on macOS 26 as well as on iOS and iPadOS.&lt;/p&gt;&#xA;&lt;p&gt;A  few months ago, Apple added a new &lt;code&gt;action&lt;/code&gt; to &lt;code&gt;Shortcuts&lt;/code&gt; that also allowed end users to &lt;a href=&#34;https://www.macstories.net/notes/i-have-many-questions-about-apples-updated-foundation-models-and-the-great-use-model-action-in-shortcuts/&#34;&gt;use the Foundation Models framework&lt;/a&gt;, but it wasn&amp;rsquo;t something that was really within everyone&amp;rsquo;s reach.&lt;/p&gt;&#xA;&lt;p&gt;A few weeks ago a new tool called &lt;a href=&#34;https://apfel.franzai.com/&#34;&gt;apfel&lt;/a&gt; (&amp;ldquo;apple&amp;rdquo; in German), became available, with which anyone can use the LLM integrated in macOS Tahoe via the command line and also through a simple GUI.&lt;/p&gt;&#xA;&lt;h4 id=&#34;installation&#34;&gt;Installation&lt;/h4&gt;&#xA;&lt;p&gt;Installing &lt;a href=&#34;https://apfel.franzai.com/&#34;&gt;apfel&lt;/a&gt; is a breeze for those who already use &lt;a href=&#34;https://brew.sh/&#34;&gt;Homebrew&lt;/a&gt;. From the Terminal you must first run&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew update&#xA;% brew upgrade&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to update &lt;code&gt;homebrew&lt;/code&gt;, followed by&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew install apfel&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to install the application itself. Those who don&amp;rsquo;t use Homebrew (but they should!), can install it following &lt;a href=&#34;https://melabit.com/en/pages/how-to-install-homebrew/&#34;&gt;these instructions&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;As already mentioned, apfel only works on Macs with macOS 26 Tahoe and Apple Silicon. If you try to install it on Sequoia you get this error message.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew install apfel&#xA;==&amp;gt; Fetching downloads for: apfel&#xA;✔︎ API Source apfel.rb                                                                        Verified      1.1KB/  1.1KB&#xA;apfel: A full installation of Xcode.app 26.4 is required to compile&#xA;this software. Installing just the Command Line Tools is not sufficient.&#xA;&#xA;Xcode 26.4 cannot be installed on macOS 15.&#xA;You must upgrade your version of macOS.&#xA;apfel: This software does not run on macOS versions older than Tahoe.&#xA;Error: apfel: Unsatisfied requirements failed this build.&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;configuration&#34;&gt;Configuration&lt;/h4&gt;&#xA;&lt;p&gt;Before using apfel you must either close and reopen the Terminal or open a new tab.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; But that&amp;rsquo;s not enough, you also need to activate Apple Intelligence on your Mac by running&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% apfel --model-info&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and following its instructions, visible in the image below.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-model-info.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-model-info.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Basically, you need to go to &lt;code&gt;System Settings &amp;gt; Apple Intelligence &amp;amp; Siri&lt;/code&gt;, configure Siri to use the same language as the Mac (I had to do this because I always use the Mac in English with Siri in Italian) and then activate the switch related to Apple Intelligence.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/system-settings-siri.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/system-settings-apple-intelligence.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Don&amp;rsquo;t trust the &lt;code&gt;100% complete&lt;/code&gt; text that appears immediately after activating Apple Intelligence. This is probably a bug, because shortly afterwards, macOS starts downloading the model and this takes a while.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/system-settings-apple-intelligence-download.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Once the model has finished downloading, apfel confirms that we are ready to use the model, so we can begin.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-model-info-OK.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-model-info-OK.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;many-different-ways-to-use-apfel&#34;&gt;Many different ways to use apfel&lt;/h4&gt;&#xA;&lt;p&gt;The simplest way to use apfel, which is also suitable for integration into a program, is to run the &lt;code&gt;apfel&lt;/code&gt; command from the Terminal followed by the prompt within quotation marks. For example:&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% apfel &amp;#34;What is the capital of Italy?&amp;#34;&#xA;The capital of Italy is Rome.&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The &lt;code&gt;apfel&lt;/code&gt; command has several useful options, well &lt;a href=&#34;https://github.com/Arthur-Ficial/apfel#unix-tool&#34;&gt;described in the README&lt;/a&gt; of the program. The most interesting options are listed below, where the symbol &lt;code&gt;&amp;lt;n&amp;gt;&lt;/code&gt; represents the numerical value associated with the option:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;--temperature &amp;lt;n&amp;gt;&lt;/code&gt;, sets the temperature of the response. A lower temperature (&lt;code&gt;&amp;lt;n&amp;gt;&lt;/code&gt; close to 0) makes the response more repetitive, a higher temperature (&lt;code&gt;&amp;lt;n&amp;gt;&lt;/code&gt; around 1 or more) makes it more random and unpredictable.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;--seed &amp;lt;n&amp;gt;&lt;/code&gt;, sets the initial value of the random number generator used by the LLM. Fixing the &lt;code&gt;seed&lt;/code&gt; value means that the same question will always produce an identical response.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;--max-tokens &amp;lt;n&amp;gt;&lt;/code&gt;, sets the maximum number of tokens in the response. A low value of &lt;code&gt;&amp;lt;n&amp;gt;&lt;/code&gt; makes the response more concise, a high value allows the LLM to generate a longer response.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;--permissive&lt;/code&gt;, allows generating responses with &lt;a href=&#34;https://github.com/Arthur-Ficial/apfel/blob/main/docs/PERMISSIVE.md&#34;&gt;less strict security filters&lt;/a&gt;. Frankly, I didn&amp;rsquo;t quite understand what it means in practice, but maybe I didn&amp;rsquo;t ask the right questions. In any case, it seems that the responses acquire a lighter and friendlier tone.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;It is also possible to &lt;a href=&#34;https://github.com/Arthur-Ficial/apfel#openai-compatible-server&#34;&gt;activate a server&lt;/a&gt; based on apfel, which can be queried via the &lt;code&gt;curl&lt;/code&gt; command. The advantage in this case is that the response is a &lt;code&gt;JSON&lt;/code&gt; file that can be easily processed automatically.&lt;/p&gt;&#xA;&lt;p&gt;Alternatively, you can open a &lt;a href=&#34;https://github.com/Arthur-Ficial/apfel#quick-testing-chat&#34;&gt;chat session&lt;/a&gt; in the Terminal via the &lt;code&gt;apfel --chat&lt;/code&gt; command. This allows you to communicate directly with the LLM without putting questions in quotes. Here, you can use the arrow keys to scroll through the history of the current session and edit the previous questions.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-chat.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-chat.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Lastly, a &lt;a href=&#34;https://apfel-chat.franzai.com/&#34;&gt;GUI for apfel&lt;/a&gt; is also available. It&amp;rsquo;s a very basic GUI, so don&amp;rsquo;t expect the same level of sophistication as with Claude, Gemini, ChatGPT and the like.&lt;/p&gt;&#xA;&lt;h4 id=&#34;putting-apfel-through-its-paces&#34;&gt;Putting apfel through its paces&lt;/h4&gt;&#xA;&lt;p&gt;Before starting, it is worth noting that Apple&amp;rsquo;s language model, unique among those produced by the major companies in the field (OpenAI, Anthropic, Google, Microsoft, Meta, you know the names), does not require an internet connection to work, but runs exclusively on the machine where it is installed (with &lt;a href=&#34;https://www.apple.com/it/apple-intelligence/&#34;&gt;some caveats&lt;/a&gt;). A guarantee for the privacy of our data that only Apple can offer.&lt;/p&gt;&#xA;&lt;p&gt;However, as it has to run on iPhones, iPads and Macs, the Apple model has strong limitations in terms of size and, consequently, processing capacity. This is a detail to keep in mind when evaluating &lt;a href=&#34;https://developer.apple.com/documentation/foundationmodels/generating-content-and-performing-tasks-with-foundation-models#Understand-model-capabilities&#34;&gt;what it is capable of doing&lt;/a&gt; (and not doing). But this is a problem common to all &lt;a href=&#34;https://realpython.com/ollama/&#34;&gt;local models&lt;/a&gt;, i.e., those that can be run on our personal machines. Ultimately, it&amp;rsquo;s a choice between power and privacy, and it&amp;rsquo;s never an easy one.&lt;/p&gt;&#xA;&lt;p&gt;But, aside from answering trivial questions like the ones above, what is apfel really capable of doing (and consequently the Apple language model that apfel relies on)?&lt;/p&gt;&#xA;&lt;p&gt;Forget about using it for math, logical reasoning or writing code. Apple isn&amp;rsquo;t exaggerating when it writes that all these activities are &lt;a href=&#34;https://developer.apple.com/documentation/foundationmodels/generating-content-and-performing-tasks-with-foundation-models#Understand-model-capabilities&#34;&gt;beyond the scope of its model&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In italian, the usual test on the &lt;a href=&#34;https://melabit.com/en/2025/06/18/phi-4-strikes-back/&#34;&gt;death of Marie Antoinette&lt;/a&gt; produces very &lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-marie-antoniette-it.png&#34;&gt;variable answers&lt;/a&gt;, sometimes correct and sometimes completely made up. When &lt;a href=&#34;%28img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-marie-antoniette-en.png%29&#34;&gt;using English&lt;/a&gt; it performs slightly better, but that is normal because English is the &lt;em&gt;native&lt;/em&gt; language of all LLMs. Math is not its strong point, either. It&amp;rsquo;s not so much because the answers are wrong, but because they are &lt;em&gt;sometimes&lt;/em&gt; wrong. Would you ever use a calculator &lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-maths.png&#34;&gt;that usually gives the correct result, but every now and then makes mistakes&lt;/a&gt;? Needless to say, writing code is not an option, too.&lt;/p&gt;&#xA;&lt;p&gt;When staying within the capabilities declared by Apple, things go much better.&lt;/p&gt;&#xA;&lt;p&gt;I  tried having apfel summarize a long note I dictated on my iPhone while I was out walking and, despite the presence of many transcription errors, repetitions and uncertainties, it did an excellent job. The note in question contains material that is still confidential, so having the security that the text fed to the LLM will remain only on my computer is an added value that far exceeds the model&amp;rsquo;s limitations.&lt;/p&gt;&#xA;&lt;p&gt;No problem also asking it to be more or less concise, which in many cases can be really useful. It is also very easy to change the tone of the response, converting in a few seconds what we wrote into a press release or into a text understandable even by grandma.&lt;/p&gt;&#xA;&lt;p&gt;It also does well with translations, I tried English and German but there&amp;rsquo;s no reason to think it wouldn&amp;rsquo;t do the same with other supported languages.&lt;/p&gt;&#xA;&lt;p&gt;The responses are a bit slow, but I only tested apfel on a MacBook Air M1 (the only Mac I upgraded to Tahoe) and I guess newer Macs could give better results in terms of speed.&lt;/p&gt;&#xA;&lt;h4 id=&#34;why-apfel-and-not-apple-intelligence&#34;&gt;Why apfel and not Apple Intelligence?&lt;/h4&gt;&#xA;&lt;p&gt;It is simple: because the &lt;code&gt;Writing Tools&lt;/code&gt; integrated in Apple Intelligence have default settings that work well in most cases. However, only apfel allows you to define in detail what you want to achieve.&lt;/p&gt;&#xA;&lt;p&gt;Indeed, if I ask the &lt;code&gt;Writing Tools&lt;/code&gt; to summarize the same note as before in a way that even grandma can understand, it replies that it cannot do it, without any further explanation.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-grandma.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-unable.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;If I ask the same thing to &lt;code&gt;apfel&lt;/code&gt;, not only does it summarize the text without hesitation, but since I asked the question in English, it also translates it into this language (part of the text in the image below is blurred because, as I said before, it contains information that is still confidential).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apfel-grandma.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;In short, Apple Intelligence is a tool that anyone can use immediately. However, if you need flexibility, apfel is without doubt the best choice.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;Apple is right: its language model isn’t a general-purpose model capable of competing with ChatGPT, Gemini, or Claude. But it does well what it is supposed to do, and the fact that it runs on a Mac (or an iPhone or iPad) is an added value that more than compensates for its limitations.&lt;/p&gt;&#xA;&lt;p&gt;According to Apple, only the &lt;a href=&#34;https://www.apple.com/it/apple-intelligence/&#34;&gt;most complex requests&lt;/a&gt; need to rely on larger models in the cloud. This seems to be true when using apfel: whenever I disabled the network connection, apfel continued to work without any issue.&#xA;However, with the &lt;code&gt;Writing Tools&lt;/code&gt;, it&amp;rsquo;s a different story because some functions are deactivated as soon as the internet connection is lost.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-no-internet.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-05-11-apfel-una-mela-per-apple-intelligence/apple-intelligence-no-internet.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;A difference in behavior that deserves further exploration.&lt;/p&gt;&#xA;&lt;p&gt;When using apfel you have to deal with a certain slowness in responses. I used a MacBook Air M1, on a newer Mac the processing would certainly be faster. However, I doubt it will be &lt;em&gt;much&lt;/em&gt; faster because, after all, we&amp;rsquo;re still using a personal computer and not a server farm that costs billions of dollars.&lt;/p&gt;&#xA;&lt;p&gt;From my point of view, the most serious flaw of Apple Intelligence and consequently of apfel, is that you have to configure your Mac and Siri to use the same language. As this change is global, it affects all Apple devices connected to the account. I noticed this when Siri on CarPlay suddenly started to speak in English instead of my home language. Luckily I was alone, otherwise I would have looked like a stupid presumptuous nerd.&lt;/p&gt;&#xA;&lt;p&gt;If I want to go back to using Siri in Italian (and I do), I will be forced to deactivate Apple Intelligence, at least until Apple decides to remove this constraint. A constraint that technically makes little sense and seems only a retaliation against the &lt;a href=&#34;https://techcrunch.com/2024/10/28/apple-intelligence-is-coming-to-the-eu-in-april-2025/&#34;&gt;rules imposed by the European Union&lt;/a&gt; on Apple and its competitors.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;If you don&amp;rsquo;t like the screenshot (I don&amp;rsquo;t like it either), blame the designers of Liquid Glass.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;The &lt;code&gt;%&lt;/code&gt; symbol in &lt;code&gt;zsh&lt;/code&gt; (or the &lt;code&gt;$&lt;/code&gt; in &lt;code&gt;bash&lt;/code&gt;) represents the &lt;a href=&#34;https://en.wikibooks.org/wiki/Guide_to_Unix/Explanations/Shell_Prompt&#34;&gt;shell prompt&lt;/a&gt; and is not part of the actual command. I use it to visually distinguish commands executed in the Terminal. which are preceded by &lt;code&gt;%&lt;/code&gt;, from their responses, which do not include it.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;It&amp;rsquo;s a small annoyance that applies to any application installed via Homebrew.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>How to install Homebrew</title>
      <link>https://melabit.com/en/pages/how-to-install-homebrew/</link>
      <pubDate>Mon, 11 May 2026 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/pages/how-to-install-homebrew/</guid>
      <description>&lt;h4 id=&#34;installation&#34;&gt;Installation&lt;/h4&gt;&#xA;&lt;p&gt;To &lt;strong&gt;install Homebrew&lt;/strong&gt;, open Terminal, &lt;a href=&#34;https://mac.install.guide/commandlinetools/4&#34;&gt;install&lt;/a&gt; the &lt;a href=&#34;https://developer.apple.com/documentation/xcode/installing-the-command-line-tools/&#34;&gt;Command Line Tools for Xcode&lt;/a&gt; using the command&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% sudo xcode-select --install&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;and then run the script&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% /bin/bash -c &amp;#34;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;answering the questions that appear on the terminal. Once the installation is complete, it’s always a good idea to run&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew doctor&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to &lt;strong&gt;check&lt;/strong&gt; that the installation process was successful.&lt;/p&gt;&#xA;&lt;h4 id=&#34;available-formulas&#34;&gt;Available formulas&lt;/h4&gt;&#xA;&lt;p&gt;The &lt;strong&gt;packages available in Homebrew&lt;/strong&gt; (or rather, the &lt;code&gt;formulas&lt;/code&gt; in the program’s terminology) are listed on &lt;a href=&#34;https://formulae.brew.sh/&#34;&gt;this page&lt;/a&gt;, and can be installed from the Terminal using the command,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew install &amp;lt;formula name&amp;gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;where &lt;code&gt;&amp;lt;formula name&amp;gt;&lt;/code&gt; is the name of the formula to be installed. For example, &lt;code&gt;brew install tree&lt;/code&gt; installs a (very useful!) program that displays the entire hierarchy of files and folders in a directory using a tree view.&lt;/p&gt;&#xA;&lt;h4 id=&#34;updates&#34;&gt;Updates&lt;/h4&gt;&#xA;&lt;p&gt;Every now and then, it’s a good idea to &lt;strong&gt;update your installed packages&lt;/strong&gt; (I do this about once a week) by running these three commands in Terminal,&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew update&#xA;% brew outdated&#xA;% brew upgrade&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;which update the list of packages available in Homebrew (&lt;code&gt;brew update&lt;/code&gt;), list the installed packages for which updates are available (&lt;code&gt;brew outdated&lt;/code&gt;), and update the installed packages (&lt;code&gt;brew upgrade&lt;/code&gt;).&lt;/p&gt;&#xA;&lt;p&gt;When you run &lt;code&gt;brew update&lt;/code&gt;, a list of &lt;strong&gt;new formulas available&lt;/strong&gt; in Homebrew appears, which is useful for discovering interesting new programs. When you find one, just run&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew home &amp;lt;formula name&amp;gt;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;to access the program&amp;rsquo;s home page using your default browser.&lt;/p&gt;&#xA;&lt;h4 id=&#34;cask&#34;&gt;Cask&lt;/h4&gt;&#xA;&lt;p&gt;Homebrew also lets you &lt;strong&gt;install and update&lt;/strong&gt; many of the standard &lt;strong&gt;graphical applications available for macOS&lt;/strong&gt;, such as 1Password, Chrome, or Zoom, from the Terminal. In Homebrew, these applications are referred to as &amp;lsquo;casks&amp;rsquo;. To do so, use the &lt;code&gt;--cask&lt;/code&gt; option followed by the name of the program you wish to install. For example&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% brew install --cask audacity&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;installs Audacity, one of the best audio editors currently available. The &lt;strong&gt;complete list&lt;/strong&gt; of available casks &lt;a href=&#34;https://formulae.brew.sh/cask/&#34;&gt;can be found here&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;If you prefer, you can use the graphical application &lt;a href=&#34;https://aerolite.dev/applite&#34;&gt;Applite&lt;/a&gt; to search for, install, and uninstall &lt;code&gt;casks&lt;/code&gt;, but in my opinion, that kind of misses the point of using Homebrew.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>50 years with Apple</title>
      <link>https://melabit.com/en/2026/04/01/50-years-with-apple/</link>
      <pubDate>Wed, 01 Apr 2026 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/04/01/50-years-with-apple/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/Bit-5-nov-1979-p30-with-caption.jpg&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/Bit-5-nov-1979-p30.jpg&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;The first image of an Apple II computer ever published in Bit, the most important Italian magazine dedicated to personal computers between the late 1970s and early 1980s (Bit no. 5, November–December 1979).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Fifty years ago, I was a spot-ridden high school student who wouldn&amp;rsquo;t have known about Apple until the early &amp;rsquo;80s, when Bit —- the first Italian magazine dedicated to personal computers -— started featuring the first advertising pages dedicated to the Apple II computer.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/Bit-6-feb1980-backcover.jpg&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/Bit-6-feb1980-backcover-small.jpg&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;First advertising page dedicated to an &amp;ldquo;Apple Computer&amp;rdquo; (Bit no. 6, February 1980, back cover).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;In those years, most of the coverage of the Apple II came from Bit&amp;rsquo;s main competitor, &lt;a href=&#34;https://www.marcomar.it/rcretrocomputer-rc0-mc_story/&#34;&gt;MCmicrocomputer&lt;/a&gt;, which, from its very first issue in September 1981, dedicated significant space to the California company.&lt;/p&gt;&#xA;&lt;p&gt;In 1981 an Apple II with 48 KB of RAM, an 11-inch monitor and a floppy disk drive cost 5 million lire, more than a &lt;a href=&#34;https://www.facebook.com/watch/?v=1544780529899322&#34;&gt;small FIAT city car&lt;/a&gt;, just to give you an idea. An amount of money that was out of reach for a university student like me, who could  afford at most a Commodore 64 bought after winning on &lt;a href=&#34;https://italoamericano.org/totocalcio-story/&#34;&gt;Totocalcio&lt;/a&gt;.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/MCmicrocomputer-1-sep1981-p84.jpg&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/MCmicrocomputer-1-sep1981-p84.jpg&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;The complete price list for Apple products from September 1981 (taken from MC Microcomputer no. 1, September 1981, page 84).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;However, there were quite a few Apple IIs in the Physics Department, because they could be used to build the first &lt;a href=&#34;https://sci-hub.st/10.1119/1.2341547&#34;&gt;automatic measurement instruments&lt;/a&gt; or to digitize images.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; You just had to wander through the various labs to find one, and if you were lucky you could also use it when it was free.&lt;/p&gt;&#xA;&lt;p&gt;One of the first &lt;a href=&#34;https://melabit.com/it/2022/10/30/schede-perforate-mac-128k/&#34;&gt;Macintosh 128K&lt;/a&gt; arrived soon. I only managed to use it briefly, as it was stolen after a couple of days.&lt;/p&gt;&#xA;&lt;p&gt;Shortly later, at my first conference, I noticed that Ken Gray, one of the most prominent speakers, had used a Macintosh computer to prepare both the article and the slides. Among a hundred participants, all with texts written on typewriters and images glued on, his work stood out and was immediately noticeable. The Mac sparked immediate sympathy between us two, so much so that he asked me to move to Chicago to work with him. But I had already accepted going to the &lt;a href=&#34;https://melabit.com/it/2018/08/16/tutto-anzi-niente/&#34;&gt;Physikalisch-Technische Bundesanstalt&lt;/a&gt; (PTB) in Germany, and preferred to keep my word.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;It was precisely at PTB that the turning point came in terms of Apple products. Besides sophisticated instrumentation and one or two older Macs, my measurement laboratory housed a &lt;a href=&#34;https://en.wikipedia.org/wiki/Macintosh_II&#34;&gt;Macintosh II&lt;/a&gt;, the first expandable Mac (at last!), a true &lt;a href=&#34;https://en.wikipedia.org/wiki/Workstation&#34;&gt;workstation&lt;/a&gt; that could rival the much pricier &lt;a href=&#34;https://en.wikipedia.org/wiki/Sun_Microsystems&#34;&gt;Sun&lt;/a&gt; and &lt;a href=&#34;https://en.wikipedia.org/wiki/Digital_Equipment_Corporation&#34;&gt;DEC&lt;/a&gt; models. It had plenty of expansion options, which was great! I don&amp;rsquo;t remember if the Macintosh II was connected to a system for acquiring and processing images for a microscope, which was truly state-of-the-art at the time (once back in Italy, I spent years trying to create a pale imitation of it).&lt;/p&gt;&#xA;&lt;p&gt;But I remember very well that it had an analogue-to-digital conversion card installed, which could be used to digitize measurements on our samples. This card arrived together with the first version of &lt;a href=&#34;https://en.wikipedia.org/wiki/LabVIEW&#34;&gt;LabVIEW&lt;/a&gt;, the first visual programming language, which for that reason ran exclusively on the Macintosh. For various reasons we used the card little, but LabVIEW immediately became the favorite pastime of mine and a Danish colleague (and friend). In the evenings, when no one was around, we would spend hours using LabVIEW for the most absurd things, the further they were from the original purposes of the language, the better.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;The Macintoshes in the lab were set up to use German, and &lt;a href=&#34;https://en.wikipedia.org/wiki/System_6&#34;&gt;System 6&lt;/a&gt; at that time didn&amp;rsquo;t support multiple users and languages. But despite my German being very poor (very poor, actually) I managed to use the Mac without too many problems because I remembered the position of the menu items that I had seen in manuals or magazines. Compared to the proprietary Unix system localized in German that I was forced to use occasionally, it was truly another world!&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Back home, my &lt;em&gt;Apple winter&lt;/em&gt; began. That lasted until the dawn of the new millennium. Apple computers had become incompatible with &lt;em&gt;everything&lt;/em&gt;: keyboards and mice for PCs didn&amp;rsquo;t work on Macs and vice versa. The same applied to RAM or video cards. And also to more sophisticated stuff that I used every day, like data and image acquisition cards or instrument control cards. Even transferring a file via floppy from a PC to a Mac tested the patience (and stubbornness) of a saint.&lt;/p&gt;&#xA;&lt;p&gt;Then came Mac OS X.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;In the early &amp;rsquo;90s I had discovered Unix, mostly because it was the only way to manage to do some rather &lt;a href=&#34;https://pubs.aip.org/aip/jap/article-abstract/79/10/7860/491907/Step-width-enhancement-in-a-pulse-driven-Josephson&#34;&gt;complicated&lt;/a&gt; numerical &lt;a href=&#34;https://rescience.github.io/bibliography/Maggi_2020.html&#34;&gt;calculations&lt;/a&gt;.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt; So when Linux arrived, I immediately jumped on the bandwagon and started using it everywhere.&lt;/p&gt;&#xA;&lt;p&gt;Technically Linux was awesome, but the graphical aspect was, shall we say, somewhat &lt;em&gt;limited&lt;/em&gt;. Therefore, when I saw an &lt;a href=&#34;https://en.wikipedia.org/wiki/IBook&#34;&gt;iBook G3 &amp;ldquo;Snow&amp;rdquo;&lt;/a&gt; with &lt;a href=&#34;https://en.wikipedia.org/wiki/Mac_OS_X_Jaguar&#34;&gt;Jaguar&lt;/a&gt; in a shop display and read in Macworld that the new operating system was based on BSD Unix, I knew I had to get one.&lt;/p&gt;&#xA;&lt;p&gt;The same happened with the iMac G4: I saw it, fell in love with it and bought it immediately. And for weeks colleagues came to the office, admired the monitor and started looking for the computer&amp;hellip; 😂.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Since then, and it&amp;rsquo;s been almost twenty-five years, I&amp;rsquo;ve always used Apple products: Macs, iPods, iPads, iPhones, Apple Watches, I&amp;rsquo;m surely forgetting something. After all, they work (almost) always, and even the most technology-resistant family members can use them without any problems. They&amp;rsquo;re elegant and, although they cost somewhat more than competitors&amp;rsquo; products, they also last much longer. It wouldn&amp;rsquo;t make sense to change, at least for now.&lt;/p&gt;&#xA;&lt;p&gt;Sure, Apple has recently made some questionable decisions, such as macOS Tahoe and Liquid Glass, the imminent discontinuation of Rosetta, the introduction of paid versions of Pages, Numbers and Keynote (not to mention Freeform), the growing restrictions on third-party applications, and the Siri debacle. Not to forget the restructuring of System Settings, which has made them difficult to use, even for someone like me who needs them almost every day.&lt;/p&gt;&#xA;&lt;p&gt;However, until Apple decides to prevent the installation of third-party applications also on macOS, as happens (not always) rightly on iOS and iPadOS, it will be difficult to leave the mother ship. After all, just as in a marriage with its ups and downs, fifty years spent almost always hand in hand are not easily forgotten.&lt;/p&gt;&#xA;&lt;p&gt;So many, many, many happy returns to Apple for the next fifty years!&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-04-01-50-anni-con-apple/ray-hennessy-gdTxVSAE5sk-unsplash.jpg&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;Fonte: &lt;a href=&#34;https://unsplash.com/@rayhennessy&#34;&gt;Ray Hennessy&lt;/a&gt; su &lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;If you compare the price of the base Apple II reported in this image with that of the advertisement on Bit, you&amp;rsquo;ll notice that in less than two years the price of the base Apple II had increased by a whole million lire (roughly 1,000-1,500 euros today) due to the rampant inflation of those years.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;It was the era of transition from &lt;em&gt;human digitizers&lt;/em&gt;, who spent their lives bent over huge images that they &lt;a href=&#34;https://cds.cern.ch/record/1772154&#34;&gt;digitized&lt;/a&gt; by &lt;a href=&#34;https://cern70.cern/tracing-particles/&#34;&gt;hand&lt;/a&gt;, to semi-automatic digitization systems, which in the simplest cases were almost always Apple IIs.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;All &lt;code&gt;shell&lt;/code&gt; commands were localized in German, so the standard &lt;code&gt;whoami&lt;/code&gt; command, that  shows the name of the logged-in user, became &lt;code&gt;wobinich&lt;/code&gt;&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;PCs were too slow. As if that wasn&amp;rsquo;t enough, and despite the &lt;em&gt;threatening&lt;/em&gt; signs I left around, some colleagues persisted in turning off the PC on which I was running simulations overnight. They didn&amp;rsquo;t want to &amp;ldquo;waste electricity&amp;rdquo;, they said 😱.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Antigravity: the LLM does it better</title>
      <link>https://melabit.com/en/2026/03/16/antigravity-the-llm-does-it-better/</link>
      <pubDate>Mon, 16 Mar 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/03/16/antigravity-the-llm-does-it-better/</guid>
      <description>&lt;p&gt;Over the last few weeks, I’ve been writing about my experiments with Antigravity, or rather, with the (more or less) &lt;em&gt;intelligent agents&lt;/em&gt; integrated into the editor. The results have been mixed: sometimes &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/&#34;&gt;the agents proved to be very effective&lt;/a&gt;, accurately easing some complex or repetitive tasks; in other cases &lt;a href=&#34;https://melabit.com/en/2026/02/16/antigravity-from-surprise-to-doubt/&#34;&gt;they didn&amp;rsquo;t accomplish anything worthwhile&lt;/a&gt;, only wasting a huge amount of time.&lt;/p&gt;&#xA;&lt;h4 id=&#34;coding-badly-with-an-llm&#34;&gt;Coding badly with an LLM&lt;/h4&gt;&#xA;&lt;p&gt;Among all the more or less useful applications of LLMs, one of the most controversial is the idea that anyone can use an LLM to program, even when they don&amp;rsquo;t know the first thing about it. This is the so-called &lt;em&gt;vibe coding&lt;/em&gt;, a concept that can be &lt;a href=&#34;https://x.com/karpathy/status/1886192184808149383&#34;&gt;summarized more or less like this&lt;/a&gt;: &amp;ldquo;I just see stuff, say stuff, run stuff, and copy paste stuff, and it mostly works&amp;rdquo;. This is not a quote from &lt;a href=&#34;https://www.youtube.com/watch?v=-w9EBTB8a3Y&#34;&gt;Nanni Moretti&lt;/a&gt;, a famous italian actor and director; it was reported by Andrej Karpathy, one of the founders of OpenAI.&lt;/p&gt;&#xA;&lt;p&gt;Now, setting aside the many issues regarding security, the maintainability of code produced without really knowing what it does, and the &lt;a href=&#34;https://taylorandfrancis.com/knowledge/Engineering_and_technology/Engineering_support_and_special_topics/Regression_to_the_mean/&#34;&gt;regression to the mean&lt;/a&gt;, which here implies that the quality of AI-produced code will inevitably tend to collapse, it only takes a bit of personal experimentation, even with simple projects, to realize that the very idea of &lt;em&gt;coding for everyone&lt;/em&gt; doesn&amp;rsquo;t work. If you want to get something good out of AI, you have to know exactly what you want and how you want it.&lt;/p&gt;&#xA;&lt;p&gt;I tried &lt;em&gt;vibe coding&lt;/em&gt; myself: I asked Gemini to &lt;a href=&#34;https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/&#34;&gt;write a driver for an Arducam camera&lt;/a&gt;, explaining only the bare essentials and waiting for it to do everything on its own.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;However, this approach did not work. It took hours upon hours of work, errors, inconclusive answers, corrections, and advice from me to reach an acceptable result.&lt;/p&gt;&#xA;&lt;p&gt;And this was only possible because I eventually abandoned the idea of letting Gemini do everything and provided it with specific advice on how to proceed. Without that, it would have only been a massive waste of time.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://emeralit-muloblog.statichost.page/&#34;&gt;Mimmo&lt;/a&gt; also tried, on his own, to have &lt;a href=&#34;https://lumo.proton.me&#34;&gt;Lumo&lt;/a&gt; write a Micropython program to manage my Arducam Mini 5MP Plus with the Pico. Even Lumo, which is undoubtedly one of the best chatbots around, couldn&amp;rsquo;t do it.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/br&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/Gemini_Generated_Image_jb08gsjb08gsjb08.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;coding-better-with-the-same-llm&#34;&gt;Coding better with the same LLM&lt;/h4&gt;&#xA;&lt;p&gt;This doesn&amp;rsquo;t mean that an LLM can&amp;rsquo;t be useful when programming; you just have to use it properly. You must explain exactly what you want it to do, provide all the necessary materials, and set boundaries within which it must operate.&lt;/p&gt;&#xA;&lt;p&gt;In short, you have to treat it like a graduate student or an intern, with little experience but a great desire to learn.&lt;/p&gt;&#xA;&lt;p&gt;It only took two carefully written prompts to make a difference. The first defined the project&amp;rsquo;s directory structure and instructed the agent to use &lt;code&gt;git&lt;/code&gt; for version control and &lt;code&gt;uv&lt;/code&gt; to install any necessary Python packages,&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;Start a new project and name it &lt;code&gt;project13-pico-camera5mp-reprise&lt;/code&gt;.&lt;/p&gt;&#xA;    &lt;p&gt;Read the &lt;code&gt;AGENTS.md&lt;/code&gt; file that defines your basic behaviour.&lt;/p&gt;&#xA;    &lt;p&gt;Create a new directory with this name and initialize an empty &lt;code&gt;git&lt;/code&gt; repository using &lt;code&gt;git init&lt;/code&gt;&#xA;    Use &lt;code&gt;uv&lt;/code&gt; for managing Python packages.&#xA;    All the code must stay in the &lt;code&gt;code&lt;/code&gt; directory, with no subdirectories within it.&#xA;    This project does not need a &lt;code&gt;data&lt;/code&gt; directory and the &lt;code&gt;output&lt;/code&gt; directory must be renamed as &lt;code&gt;images&lt;/code&gt;.&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;while the second prompt contained everything I could think of to help it work.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;I have a Rasperry Pi Pico 2W connected to a Arducam 5MP Plus OV5642 Mini Module Camera Shield (&lt;a href=&#34;https://www.arducam.com/arducam-5mp-plus-spi-cam-arduino-ov5642.html%29&#34;&gt;https://www.arducam.com/arducam-5mp-plus-spi-cam-arduino-ov5642.html)&lt;/a&gt;.&lt;/p&gt;&#xA;    &lt;p&gt;I have connected the camera to the Pico using the standard layout found in the documentation:&lt;/p&gt;&#xA;    &lt;table&gt;&#xA;      &lt;thead&gt;&#xA;          &lt;tr&gt;&#xA;              &lt;th&gt;Camera&lt;/th&gt;&#xA;              &lt;th&gt;CS&lt;/th&gt;&#xA;              &lt;th&gt;MOSI&lt;/th&gt;&#xA;              &lt;th&gt;MISO&lt;/th&gt;&#xA;              &lt;th&gt;SCK&lt;/th&gt;&#xA;              &lt;th&gt;GND&lt;/th&gt;&#xA;              &lt;th&gt;VCC&lt;/th&gt;&#xA;              &lt;th&gt;SDA&lt;/th&gt;&#xA;              &lt;th&gt;SCL&lt;/th&gt;&#xA;          &lt;/tr&gt;&#xA;      &lt;/thead&gt;&#xA;      &lt;tbody&gt;&#xA;          &lt;tr&gt;&#xA;              &lt;td&gt;Pico&lt;/td&gt;&#xA;              &lt;td&gt;GP5&lt;/td&gt;&#xA;              &lt;td&gt;GP3&lt;/td&gt;&#xA;              &lt;td&gt;GP4&lt;/td&gt;&#xA;              &lt;td&gt;GP2&lt;/td&gt;&#xA;              &lt;td&gt;GND&lt;/td&gt;&#xA;              &lt;td&gt;3V3&lt;/td&gt;&#xA;              &lt;td&gt;GP8&lt;/td&gt;&#xA;              &lt;td&gt;GP9&lt;/td&gt;&#xA;          &lt;/tr&gt;&#xA;      &lt;/tbody&gt;&#xA;    &lt;/table&gt;&#xA;    &lt;p&gt;The main documentation for the camera can be found at these links:&lt;/p&gt;&#xA;    &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Introduction/&#34;&gt;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Introduction/&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Hardware/Arducam-Shield-Mini-5MP-Plus/&#34;&gt;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Hardware/Arducam-Shield-Mini-5MP-Plus/&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Software/Quick-Start-Guide/&#34;&gt;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Software/Quick-Start-Guide/&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Pico/Camera-Module/SPI-Camera/&#34;&gt;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Pico/Camera-Module/SPI-Camera/&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://www.uctronics.com/download/Image_Sensor/OV5642_DS.pdf&#34;&gt;https://www.uctronics.com/download/Image_Sensor/OV5642_DS.pdf&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://blog.arducam.com/downloads/shields/ArduCAM_Camera_Shield_Software_Application_Note.pdf&#34;&gt;https://blog.arducam.com/downloads/shields/ArduCAM_Camera_Shield_Software_Application_Note.pdf&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://www.uctronics.com/download/Amazon/B0067-B0068-Pico.pdf&#34;&gt;https://www.uctronics.com/download/Amazon/B0067-B0068-Pico.pdf&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;/ul&gt;&#xA;    &lt;p&gt;The code to drive this camera with the Pico is written in C (i.e., for Arduino) and CircuitPython, and can be found here: &lt;a href=&#34;https://github.com/ArduCAM/PICO_SPI_CAM&#34;&gt;https://github.com/ArduCAM/PICO_SPI_CAM&lt;/a&gt;. You can download all the files you need from this repository.&#xA;    In particular, the files for CircuitPython are in the &lt;code&gt;Python&lt;/code&gt; directory:&lt;/p&gt;&#xA;    &lt;ul&gt;&#xA;    &lt;li&gt;&lt;code&gt;Arducam.py&lt;/code&gt;, which contains the functions to drive the camera,&lt;/li&gt;&#xA;    &lt;li&gt;&lt;code&gt;OV5642_reg.py&lt;/code&gt; which, as far as I have understood, defines the resolutions  allowed  when taking pictures, and&lt;/li&gt;&#xA;    &lt;li&gt;&lt;code&gt;boot.py&lt;/code&gt; , but I don&amp;rsquo;t know what it does.&#xA;    In the same directory there is also the script &lt;code&gt;ArduCAM_Mini_5MP_Plus_VideoStreaming.py&lt;/code&gt; which sends the video captured by the camera to a Windows application and that is of no use here.&lt;/li&gt;&#xA;    &lt;/ul&gt;&#xA;    &lt;p&gt;Please write a basic CircuitPython script that uses the functions defined in &lt;code&gt;Arducam.py&lt;/code&gt; to test that the camera works and can take photos.&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;These two better-crafted prompts allowed &lt;code&gt;Gemini 3 Flash&lt;/code&gt; to quickly generate a CircuitPython script that runs directly on the Pico and performs all the requested tasks.&lt;/p&gt;&#xA;&lt;p&gt;Actually, the very first version of the script didn&amp;rsquo;t work. But Gemini was able to modify just a single line in the &lt;code&gt;Arducam.py&lt;/code&gt; driver provided by the manufacturer to fix it (specifically, it removed a zero from the frequency value).&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/one-line-diff.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/one-line-diff.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&amp;ndash; &lt;em&gt;The line highlighted in blue shows the only change that Gemini made to the &lt;code&gt;Arducam.py&lt;/code&gt; file; the original file is on the left, and the Gemini-modified version is on the right.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;All of other files provided by the manufacturer remained intact.&lt;/p&gt;&#xA;&lt;p&gt;As it turned out, the manufacturer&amp;rsquo;s driver worked perfectly with the Pico. Gemini simply learned how to use it to write the script that captures the image directly from the microcontroller (with a bit of patience, I could have done that myself).&lt;/p&gt;&#xA;&lt;h4 id=&#34;guide-the-llm-or-let-it-run-on-its-own&#34;&gt;Guide the LLM or let it run on its own?&lt;/h4&gt;&#xA;&lt;p&gt;The difference with respect to the &lt;a href=&#34;https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/&#34;&gt;previous approach&lt;/a&gt; based on &lt;em&gt;vibe coding&lt;/em&gt; is striking.&lt;/p&gt;&#xA;&lt;p&gt;Then. Gemini worked frantically for hours and created such a mess that I was forced to restart my Mac twice. Meanwhile, it had convinced itself (and me, too) that the &lt;code&gt;Arducam.py&lt;/code&gt; driver was incompatible with the Pico and thus rewrote it from scratch, discarding an essential library for communicating with the camera (the library marked by the red arrow),&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-libraries.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-libraries.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&amp;ndash; &lt;em&gt;Changes to the first few lines of the &lt;code&gt;Arducam.py&lt;/code&gt; file; original file on the left, Gemini&amp;rsquo;s modified version is on the right. The arrow marks the library that was removed by Gemini.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;and removing most of the functions defined in that file for no reason and without any real gain in efficiency or functionality (quite the opposite, actually!). The image below shows the difference in the length of the original code, on the left, compared to the modified version, on the right.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-file-length.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-file-length.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&amp;ndash; &lt;em&gt;Changes to the &lt;code&gt;Arducam.py&lt;/code&gt; file. The red rectangles highlight the difference in the number of lines between the original code (left) and Gemini&amp;rsquo;s modified version (right).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Not satisfied with that, Gemini also completely altered the &lt;code&gt;OV5642_reg.py&lt;/code&gt; file containing the camera configuration data, claiming  memory issues. These problems evidently didn&amp;rsquo;t exist, given that everything went smoothly in this second experiment using the manufacturer&amp;rsquo;s original file.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-registers.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-16-antigravity-l-llm-lo-fa-meglio/diff-registers.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&#xA;&amp;ndash; &lt;em&gt;Changes to the &lt;code&gt;OV5642_reg.py&lt;/code&gt; file, containing the camera configuration data. The original configuration (left) was overridden by Gemini (right).&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;what-about-arduino&#34;&gt;What About Arduino?&lt;/h4&gt;&#xA;&lt;p&gt;At this point, it was inevitable to ask Gemini to generate the Arduino driver, using the same information that I had already provided for CircuitPython.&lt;/p&gt;&#xA;&lt;p&gt;At this point, it was inevitable that I would ask Gemini to generate the Arduino driver using the same information that I had already provided for CircuitPython.&lt;/p&gt;&#xA;&lt;p&gt;Gemini struggled more this time, mostly because I had forced it to make only minimal changes to the original Arducam libraries. However, this constraint was impossible to satisfy since the libraries do not natively support the Raspberry Pi Pico.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;answer&#34; open&gt;&#xA;    &lt;summary class=&#34;answer&#34;&gt;&#xA;        Response&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;answer&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;strong&gt;Researching Arducam Library Compatibility&lt;/strong&gt;&#xA;    I&amp;rsquo;ve thoroughly inspected both the original &lt;code&gt;ArduCAM&lt;/code&gt; library and the &lt;code&gt;Arducam_mini&lt;/code&gt; library. Neither version contains native support for the RP2040/RP2350 (Pico) architecture. Specifically, both libraries are missing the necessary definitions for &lt;code&gt;regtype&lt;/code&gt;, &lt;code&gt;regsize&lt;/code&gt;, &lt;code&gt;cbi&lt;/code&gt;, and &lt;code&gt;sbi&lt;/code&gt; for this platform, which is the root cause of the compilation errors.&#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Once the constraint was relaxed, things went smoothly, and in a short time, the driver modified specifically for the Pico and the related image acquisition program were ready.&lt;/p&gt;&#xA;&lt;h4 id=&#34;free-or-paid&#34;&gt;Free or paid?&lt;/h4&gt;&#xA;&lt;p&gt;Many argue that &lt;a href=&#34;https://www.oneusefulthing.org/p/a-guide-to-which-ai-to-use-in-the&#34;&gt;paid models are much better than free ones&lt;/a&gt;. Consequently, my &lt;em&gt;vibe coding&lt;/em&gt; problems would supposedly have disappeared if I had paid for Gemini or Claude.&lt;/p&gt;&#xA;&lt;p&gt;That&amp;rsquo;s not exactly how it went. During my testing, I mainly used the free version of Gemini to see what would happen to a non-professional user playing with these tools. However, when I ran out of tokens, I switched to the paid version of Gemini provided by the university, but I never noticed any significant differences. I can&amp;rsquo;t say much about Claude, because paying 200 dollars a month to use it seriously makes no sense for someone like me, who isn&amp;rsquo;t a professional programmer.&lt;/p&gt;&#xA;&lt;p&gt;What I did notice was that Claude Opus and Claude Sonnet were much better than Gemini at solving the problems that arose during code development. However, since I only used them once the work was already in progress, they might have just been helped by what Gemini had already done.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;It goes without saying that neither this experiment nor &lt;a href=&#34;https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/&#34;&gt;the previous one&lt;/a&gt; are &lt;em&gt;scientific&lt;/em&gt;. For them to be considered as such, I would need to use different types of microcontrollers and modules, define a well-defined set of prompts, and measure how the agent responds to changing experimental conditions.&lt;/p&gt;&#xA;&lt;p&gt;Despite this, the experiment has one merit: it is fully &lt;em&gt;reproducible&lt;/em&gt;. Anyone can repeat the experiment using the same low-cost hardware and prompts to verify whether my findings are correct.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;This is something that the &lt;em&gt;vibe coding&lt;/em&gt; apostles with tens of millions of views always carefully avoid proposing. Their posts are full of certainties and bold predictions yet they never provide any evidence to support their claims.&lt;/p&gt;&#xA;&lt;p&gt;Today, no one can deny that LLMs can be a great help during programming. However, it’s hard to believe that they can truly do so without any human intervention. At least until those apostles decide to provide us with clear, repeatable data to support their claims.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Although I know a little bit about programming, I had no idea how to develop a driver and didn&amp;rsquo;t want to spend days learning how to do it.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Actually, this file is a library of functions. However, since microcontrollers don&amp;rsquo;t have an operating system, these functions access the hardware directly, just like the drivers that control the components of a computer. Therefore, in this case, the terms &lt;em&gt;library&lt;/em&gt; and &lt;em&gt;driver&lt;/em&gt; are interchangeable.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;The term &lt;em&gt;low cost&lt;/em&gt; must now be taken with a grain of salt. The shortage of electronic components has caused the price of the Pico to skyrocket, and even more so for the Arducam Mini 5MP Plus. The latter, which cost 40 dollars a few months ago, now costs more than triple that on Amazon or AliExpress. Fortunately, some retailers are maintaining more reasonable prices, at least for now.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>The Dory effect</title>
      <link>https://melabit.com/en/2026/03/09/the-dory-effect/</link>
      <pubDate>Mon, 09 Mar 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/03/09/the-dory-effect/</guid>
      <description>&lt;p&gt;I am well aware that LLMs have &lt;a href=&#34;https://melabit.com/en/2026/02/16/antigravity-from-surprise-to-doubt/&#34;&gt;poor memory&lt;/a&gt;, but I never imagined that I would suffer the consequences so quickly.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-09-effetto-dory/Gemini_Generated_Image_q8d3k9q8d3k9q8d3.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Immagine generata da &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Note to the reader.&lt;/strong&gt; This article complements the previous one, &lt;a href=&#34;https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/&#34;&gt;Antigravity: a driver written by AI&lt;/a&gt;, and should be read afterward. However, here&amp;rsquo;s a brief recap for the lazy readers.&lt;/p&gt;&#xA;&lt;p&gt;&lt;em&gt;Not knowing how to write a driver for a &lt;a href=&#34;https://en.wikipedia.org/wiki/Serial_Peripheral_Interface&#34;&gt;SPI camera&lt;/a&gt; attached to a Raspberry Pi Pico, I asked Gemini 3 Flash for help, working entirely inside Antigravity. After many hours, the agent managed to produce a working Arduino program. Then I made a fatal mistake by asking for even more without taking any precautions.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;premise&#34;&gt;Premise&lt;/h4&gt;&#xA;&lt;p&gt;The &lt;a href=&#34;https://melabit.com/en/2026/03/04/https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/#ai-at-work&#34;&gt;working code&lt;/a&gt; generated with such great effort by &lt;code&gt;Gemini 3 Flash&lt;/code&gt; assumed the Pico acted as a bridge between my Mac Mini and the SPI camera.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; On the Mac, a Python script commanded image capture, while the actual acquisition was performed by the Pico, running an Arduino program (a &lt;em&gt;sketch&lt;/em&gt; in platform jargon) that is essentially C/C++ code adapted for microcontrollers.&lt;/p&gt;&#xA;&lt;p&gt;Controlling everything from a PC works fine for early tests, but it becomes cumbersome when you want to use such a setup for fieldwork.&lt;/p&gt;&#xA;&lt;h4 id=&#34;automatic-captures&#34;&gt;Automatic captures&lt;/h4&gt;&#xA;&lt;p&gt;I asked Gemini to modify the code so it would automatically snap an image every N minutes or when a button is pressed, then send the picture to a computer over Wi‑Fi.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;[...] However, this means that I need to use a Pico for the capture and another computer, even a Raspberry Pi Zero for commanding the capture process. Would it be possible to do everything on the Pico, eg press a button and perform the capture or via a timed process (defined in the .ino file itself) every N minutes (but there should be a mechanism that sends the images to a computer connected by WiFi, avoiding to fill the pico storage space).&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Gemini jumps straight into the work, still using Arduino. In principle, it should be a trivial task, but no matter how hard Gemini tries, the code never works. After many fruitless attempts I got fed up and asked it to revert to the last known‑good version of the program.&lt;/p&gt;&#xA;&lt;h4 id=&#34;backtracking&#34;&gt;Backtracking&lt;/h4&gt;&#xA;&lt;p&gt;And here Gemini hits an unexpected wall because, despite my guidance and constant suggestions, there is absolutely no way to succeed.&lt;/p&gt;&#xA;&lt;p&gt;Stupidly, I hadn&amp;rsquo;t kept track of the various code versions as they were generated, and that&amp;rsquo;s entirely my fault.&lt;/p&gt;&#xA;&lt;p&gt;On the other hand, even though I am well aware that large language models (LLMs) have a &lt;strong&gt;working memory&lt;/strong&gt; that resembles &lt;a href=&#34;https://youtu.be/3JNLwlcPBPI?si=lBu7revGCsYQ-nJY&amp;amp;t=62&#34;&gt;Dory&amp;rsquo;s, the blue tang fish&lt;/a&gt;, I would have never imagined that these ultra-sophisticated systems couldn&amp;rsquo;t even &lt;strong&gt;retrospectively reconstruct&lt;/strong&gt; what they&amp;rsquo;ve already done. Despite having dozens upon dozens of &lt;code&gt;implementation_plan.md&lt;/code&gt;, &lt;code&gt;task.md&lt;/code&gt;, and &lt;code&gt;walkthrough.md&lt;/code&gt; files that detail every previous step. I counted them: for this project alone, Antigravity produced over 250 distinct files.&lt;/p&gt;&#xA;&lt;p&gt;Going back to a prior state is something that tools like &lt;code&gt;Git&lt;/code&gt; and its predecessors &amp;ndash; tools that are entirely devoid of any &lt;em&gt;intelligence&lt;/em&gt; beyond that of their creators &amp;ndash; have been doing flawlessly for &lt;a href=&#34;https://blog.tarynmcmillan.com/a-history-of-version-control&#34;&gt;more than fifty years&lt;/a&gt;). Maybe developers of these &lt;em&gt;intelligent&lt;/em&gt; agents could give it a thought, huh?&lt;/p&gt;&#xA;&lt;h4 id=&#34;epilogue&#34;&gt;Epilogue&lt;/h4&gt;&#xA;&lt;p&gt;In the end, stubbornly relying on my notes,&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; I managed to get Gemini to repeat everything it had already done. It took hours, it reproduced all the earlier mistakes, but eventually the rebuilt code worked again.&lt;/p&gt;&#xA;&lt;p&gt;While I was at it, I also had Gemini redo the whole thing for CircuitPython, and that port required many other hours of work and errors. And before getting there, Gemini caused such severe issues that macOS had to disable USB communication with the Pico, forcing me to restart the Mac a couple of times.&lt;/p&gt;&#xA;&lt;p&gt;Needless to say, this time I had it keep track of every step with &lt;code&gt;git&lt;/code&gt; and I also put all the code on &lt;a href=&#34;https://github.com/sabinomaggi/pico-camera5mp&#34;&gt;GitHub&lt;/a&gt;, just in case.&lt;/p&gt;&#xA;&lt;p&gt;One of the next steps will (hopefully) be MicroPython, but that&amp;rsquo;s another story.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Why does Arduino struggle so much, despite being a far more mature microcontroller development platform than MicroPython or CircuitPython? Because the camera module I chose isn&amp;rsquo;t supported on the Raspberry Pi Pico; it only works with &lt;em&gt;classic&lt;/em&gt; Raspberry Pis (those running a full OS, such as the Pi 4, 5, or Zero), as well as with the Arduino and ESP286 families of microcontrollers.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;English isn&amp;rsquo;t great here; it&amp;rsquo;s more a stream of thoughts than a polished discourse. But I prefer jotting down whatever comes to mind while writing rather than losing the thread of ideas.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;I&amp;rsquo;ll never stress enough how important it is to keep written notes of what you&amp;rsquo;re doing. At the beginning it seems like a waste of time, yet it&amp;rsquo;s the best way to avoid losing a huge amount of time later.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Antigravity: a driver written by AI</title>
      <link>https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/</link>
      <pubDate>Wed, 04 Mar 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/03/04/antigravity-a-driver-written-by-ai/</guid>
      <description>&lt;p&gt;Among all the Raspberry Pi and Arduino boards I am spending my days with, my favorite is the &lt;a href=&#34;https://www.raspberrypi.com/products/raspberry-pi-pico/&#34;&gt;Raspberry Pi Pico&lt;/a&gt;, a small yet powerful &lt;a href=&#34;https://en.wikipedia.org/wiki/Microcontroller&#34;&gt;microcontroller&lt;/a&gt; that can be programmed not only in C/C++ via the Arduino IDE, but also in &lt;a href=&#34;https://www.raspberrypi.com/documentation/microcontrollers/micropython.html&#34;&gt;MicroPython&lt;/a&gt; and &lt;a href=&#34;https://learn.adafruit.com/getting-started-with-raspberry-pi-pico-circuitpython/&#34;&gt;CircuitPython&lt;/a&gt;, two competing Python variants for microcontrollers.&lt;/p&gt;&#xA;&lt;p&gt;Unlike the other Raspberry Pi models, the Pico does not have a &lt;a href=&#34;https://en.wikipedia.org/wiki/Camera_Serial_Interface&#34;&gt;dedicated camera interface&lt;/a&gt;, but it can use cameras that communicate over an &lt;a href=&#34;https://en.wikipedia.org/wiki/Serial_Peripheral_Interface&#34;&gt;SPI interface&lt;/a&gt;,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; such as the &lt;a href=&#34;https://www.arducam.com/arducam-5mp-plus-spi-cam-arduino-ov5642.html&#34;&gt;Arducam Mini 5MP Plus&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In theory, this shouldn&amp;rsquo;t be a hard job. After glancing at the &lt;a href=&#34;https://docs.arducam.com/Arduino-SPI-camera/Legacy-SPI-camera/Pico/Camera-Module/SPI-Camera/#1introduction&#34;&gt;official documentation&lt;/a&gt;, it should just be a matter of wiring the camera to the Pico, pulling the driver and test programs from the manufacturer&amp;rsquo;s &lt;a href=&#34;https://github.com/ArduCAM/PICO_SPI_CAM&#34;&gt;GitHub repository&lt;/a&gt;, copying them onto the Pico after installing the supported Python version, and finally trying to snap a few pictures.&lt;/p&gt;&#xA;&lt;p&gt;I couldn&amp;rsquo;t have been more wrong.&lt;/p&gt;&#xA;&lt;h4 id=&#34;we-need-a-driver&#34;&gt;We need a driver&lt;/h4&gt;&#xA;&lt;p&gt;The only two test programs available, one for Arduino and one for CircuitPython, assume you&amp;rsquo;ll view the video output on Windows, which is odd because most people working with these devices use Linux or macOS. Moreover, CircuitPython is less common than MicroPython, and I&amp;rsquo;d have preferred the latter for compatibility with the other components already connected to the Pico.&lt;/p&gt;&#xA;&lt;p&gt;With patience, and armed with a reference program that shows the main functions for handling the device, you could try translating the CircuitPython code to MicroPython (or vice‑versa),&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; but there was nothing like that available.&lt;/p&gt;&#xA;&lt;p&gt;Other guides I found online looked promising, yet they didn&amp;rsquo;t work in practice. The only option left was to bypass the official tools and write a driver for the camera.&lt;/p&gt;&#xA;&lt;p&gt;Easier said than done!&lt;/p&gt;&#xA;&lt;p&gt;I know how to write code to solve differential equations or analyse measurement data. I&amp;rsquo;m comfortable with micro‑controller programming and sensor data acquisition. But this is a completely different beast. It requires digging into the low‑level communication between the Pico and the camera, a job for specialist engineers who write the drivers that let us &lt;em&gt;humans&lt;/em&gt; perform complex operations (like taking a photo) with just a few lines of Python code.&lt;/p&gt;&#xA;&lt;p&gt;So why not let one of the agents built into Antigravity do what I&amp;rsquo;m not able to do?&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;p&gt;I didn&amp;rsquo;t have to stick with Antigravity, Claude Code, Google Gemini, DeepSeek, or any of the countless other LLMs at our disposal could have easily handled the task. However, as I&amp;rsquo;ve &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/&#34;&gt;already written&lt;/a&gt;, using an Antigravity-integrated agent lets you work directly in the editor and access the underlying OS, a huge advantage when you need to keep iterating on the generated code.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/br&gt;&#xA;&lt;h4 id=&#34;ai-at-work&#34;&gt;AI at work&lt;/h4&gt;&#xA;&lt;p&gt;When you read countless enthusiastic posts about &lt;em&gt;vibe coding&lt;/em&gt; &amp;ndash; the notion that AI can develop software with little to no human programmer intervention &amp;ndash; it looks very easy (read for example, this &lt;a href=&#34;https://shumer.dev/something-big-is-happening&#34;&gt;post&lt;/a&gt; that amassed millions of reads, or &lt;a href=&#34;https://www.oneusefulthing.org/p/claude-code-and-what-comes-next&#34;&gt;this one&lt;/a&gt;; not to mention the tweet that &lt;a href=&#34;https://x.com/karpathy/status/1886192184808149383&#34;&gt;started it all&lt;/a&gt;).&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; In summary, you write a couple of sentences asking the LLM or the current &lt;em&gt;agent&lt;/em&gt; to do something, you go have lunch or take a walk, and when you come back everything is ready.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s try doing the same with &lt;code&gt;Gemini&lt;/code&gt;, giving it only the essential information and checking what it can actually do. In this case, this information boils down to the link to the camera&amp;rsquo;s web page and a table describing how the camera pins are connected to the Pico (it&amp;rsquo;s more than three lines, I know, but I&amp;rsquo;m a bit verbose).&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;I have a Rasperry Pi Pico 2W connected to a Arducam 5MP Plus OV5642 Mini Module Camera Shield (&lt;a href=&#34;https://www.arducam.com/arducam-5mp-plus-spi-cam-arduino-ov5642.html%29&#34;&gt;https://www.arducam.com/arducam-5mp-plus-spi-cam-arduino-ov5642.html)&lt;/a&gt;. I have connected the camera to the Pico using the standard layout found in the documentation:&lt;/p&gt;&#xA;    &lt;table&gt;&#xA;    &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;        &lt;td&gt;Camera&lt;/th&gt;&#xA;        &lt;td&gt;CS&lt;/th&gt;&#xA;        &lt;td&gt;MOSI&lt;/th&gt;&#xA;        &lt;td&gt;MISO&lt;/th&gt;&#xA;        &lt;td&gt;SCK&lt;/th&gt;&#xA;        &lt;td&gt;GND&lt;/th&gt;&#xA;        &lt;td&gt;VCC&lt;/th&gt;&#xA;        &lt;td&gt;SDA&lt;/th&gt;&#xA;        &lt;td&gt;SCL&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;        &lt;td&gt;Pico&lt;/td&gt;&#xA;        &lt;td&gt;GP5&lt;/td&gt;&#xA;        &lt;td&gt;GP3&lt;/td&gt;&#xA;        &lt;td&gt;GP4&lt;/td&gt;&#xA;        &lt;td&gt;GP2&lt;/td&gt;&#xA;        &lt;td&gt;GND&lt;/td&gt;&#xA;        &lt;td&gt;3V3&lt;/td&gt;&#xA;        &lt;td&gt;GP8&lt;/td&gt;&#xA;        &lt;td&gt;GP9&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;    &lt;/tbody&gt;&#xA;    &lt;/table&gt;&#xA;    &lt;p&gt;Please write a basic Micropython code to test that everything is right and that the camera can take photos&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Gemini attacks the problem furiously, spits out MicroPython code that doesn&amp;rsquo;t run, tries to fix it based on my hints, and inevitably introduces new errors (I keep saying &lt;code&gt;Gemini&lt;/code&gt; for brevity, but I&amp;rsquo;ve also tried &lt;code&gt;Gemini 3.1 Pro&lt;/code&gt;, &lt;code&gt;Claude Opus 4.6&lt;/code&gt;, and &lt;code&gt;Claude Sonnet 4.6&lt;/code&gt;, as my tokens ran out).&lt;/p&gt;&#xA;&lt;p&gt;At some point, completely stumped, Gemini starts suspecting a hardware issue, such as a bad connection or a defective camera (but probing the individual pins quickly finds that everything is wired correctly).&lt;/p&gt;&#xA;&lt;p&gt;After hours and hours of work, and because it can&amp;rsquo;t produce anything decent with MicroPython, I ask it to switch to Arduino, a more mature software platform. More hours later, stubbornly, it succeeds, and the image below is the very first picture ever taken with the Arduino code generated by Gemini (the original image was upside-down; I simply rotated it 180°).&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2026-03-04-antigravity-un-driver-scritto-dall-ia/capture.jpeg&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-04-antigravity-un-driver-scritto-dall-ia/capture_small.jpeg&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Soon after, I make a serious mistake that forced me, or better &lt;em&gt;it&lt;/em&gt;, to start from scratch. But that&amp;rsquo;s a story for another post.&lt;/p&gt;&#xA;&lt;h4 id=&#34;epilogue&#34;&gt;Epilogue&lt;/h4&gt;&#xA;&lt;p&gt;Once I had a working Arduino program, I asked Gemini to redo everything for CircuitPython. This port also takes several hours of work, interspersed with a couple of forced restarts of the Mac which, after some nasty CircuitPython bug, was forced to disable communication between the USB ports and the Pico.&lt;/p&gt;&#xA;&lt;p&gt;In theory I should repeat the cycle a third time for MicroPython. But the thought of wasting even more time watching Gemini work makes me shiver, so I shelved that idea, at least for now.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t know what those who write countless articles proclaiming that anyone can have AI write a perfectly functioning program in no time, even if they don&amp;rsquo;t know a thing about programming, are using.&lt;/p&gt;&#xA;&lt;p&gt;Even though I know something about programming, I&amp;rsquo;ve only succeeded with the simplest experiments described in the two &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/&#34;&gt;previous&lt;/a&gt; &lt;a href=&#34;https://melabit.com/en/2026/02/16/antigravity-from-surprise-to-doubt/&#34;&gt;articles&lt;/a&gt;. And it certainly didn&amp;rsquo;t happen here. It is worth noting, however, that I&amp;rsquo;m in &lt;a href=&#34;https://vladimir.varank.in/notes/2026/02/freebsd-brcmfmac/&#34;&gt;good company&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-03-04-antigravity-un-driver-scritto-dall-ia/Gemini_Generated_Image_attiipattiipatti.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Immagine generata da &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;True, following the &lt;em&gt;vibe coding&lt;/em&gt; mantra to the letter, I didn&amp;rsquo;t write a single line of code. I even let Gemini execute terminal commands that I could type blindfolded. But it&amp;rsquo;s equally true that without my constant dialogue, without guiding the agent step-by-step, without correcting its countless, and often trivial, mistakes, Gemini would have gone nowhere.&lt;/p&gt;&#xA;&lt;p&gt;And it took many hours of uninterrupted work, too many hours in my humble opinion, to achieve something usable.&lt;/p&gt;&#xA;&lt;p&gt;Forget speedy, intuitive programming. Forget coding based on &lt;a href=&#34;https://www.youtube.com/watch?v=apBWI6xrbLY&#34;&gt;good vibrations&lt;/a&gt; from the 1960s. Forget programming &lt;em&gt;for dummies&lt;/em&gt;!&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;If you don&amp;rsquo;t roll up your sleeves and get your hands dirty with the code, even code produced by a more or less intelligent agent, you won&amp;rsquo;t get you anywhere. I&amp;rsquo;d love to be proven wrong.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;The SPI (Serial Peripheral Interface) is a fast and reliable serial communication protocol widely used to connect a microcontroller (&lt;em&gt;master&lt;/em&gt;) to one or more peripheral devices (&lt;em&gt;slave&lt;/em&gt;).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;While writing the article I found &lt;a href=&#34;https://www.youtube.com/watch?v=l254lxm78I4&#34;&gt;this video&lt;/a&gt; that explains how to mix MicroPython and CircuitPython code in the same script. If it works for more complex tasks than toggling an LED, it would be a real breakthrough.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Is it a coincidence that they are always very long posts but never contain a shred of evidence, a prompt, a few lines of code, or links to support the many unverified (and unverifiable) claims?&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;Being true nerds, no one ever says they&amp;rsquo;re going to have sex.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:5&#34;&gt;&#xA;&lt;p&gt;From the title of the famous &lt;a href=&#34;https://en.wikipedia.org/wiki/For_Dummies&#34;&gt;For Dummies&lt;/a&gt; book series, covering everything from using DOS to playing chess.&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Antigravity: from surprise to doubt</title>
      <link>https://melabit.com/en/2026/02/16/antigravity-from-surprise-to-doubt/</link>
      <pubDate>Mon, 16 Feb 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/02/16/antigravity-from-surprise-to-doubt/</guid>
      <description>&lt;p&gt;As effective as Antigravity may be, digging a little deeper reveals that the agent-based systems working inside it, while helpful and capable at answering &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/&#34;&gt;many complex questions&lt;/a&gt;, are not exempt from the usual issues of the large language models (LLMs) we&amp;rsquo;ve been dealing with for the past three years.&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s look at some practical examples.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/Gemini_Generated_Image_vzsj3tvzsj3tvzsj.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;example-1&#34;&gt;Example #1&lt;/h4&gt;&#xA;&lt;p&gt;After successfully trying to extract data from &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/#task-1-extracting-data-from-images&#34;&gt;images in one of my articles&lt;/a&gt;, I immediately got to work trying to apply the same method to other figures similar to those analyzed the first time, such as &lt;a href=&#34;https://www.sciencedirect.com/science/article/pii/S0341816225007738&#34;&gt;this one&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/1-s2.0-S0341816225007738-gr4_lrg.jpg&#34; alt=&#34;&#34;&gt;&lt;p&gt;The figure is clearly more complex than my previous ones: the top part features a histogram showing monthly precipitation and snow depth measurements for two locations with unpronounceable names in Québec, where different measurements are represented with varying shades and colors. Below it, and partially overlapping the histogram, there is a line graph with the average monthly temperatures for the two locations, with the vertical scale positioned on the right side.&lt;/p&gt;&#xA;&lt;p&gt;Even though the figure is more complex, I never expected &lt;code&gt;Gemini 3 Flash&lt;/code&gt; to struggle so much. It tries, and tries again, but every time something is off. The histogram isn&amp;rsquo;t a huge problem, but there&amp;rsquo;s no way to make it understand what to do with the data in the line graph. This issue persists even when I explain exactly where it should look to determine the temperature values for each month.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Hint: To evaluate temperatures for a given month you should take a point on the temperature plot that is between the two precipitation bars &#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;I am truly surprised by Gemini&amp;rsquo;s difficulty in repeating and extending the results of &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/#task-1-extracting-data-from-images&#34;&gt;my first test&lt;/a&gt;, even as it continues to reassure me, claiming it has &lt;em&gt;understood&lt;/em&gt; perfectly what I want and has performed a &lt;em&gt;meticulous&lt;/em&gt; job.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;answer&#34; open&gt;&#xA;    &lt;summary class=&#34;answer&#34;&gt;&#xA;        Answer&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;answer&#34;&gt;&#xA;        &#xA;I have completed a meticulous re-evaluation of Figure 4 using the &#34;midpoint&#34; method you suggested (reading the temperature at the horizontal center between the two monthly precipitation bars).&#xA;Final Corrections Applied: [...]&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Actually, it seems that Gemini has no idea what the &amp;ldquo;midpoint&amp;rdquo; method is and is just repeating what I say, changing only a few words. If it were otherwise, it would have resolved the issue in seconds, pulling out the right data just as it did the first time.&lt;/p&gt;&#xA;&lt;p&gt;In the end, I give up. It makes no sense to waste hours making an &lt;em&gt;intelligent agent&lt;/em&gt; do a job that would only take a few minutes by hand.&lt;/p&gt;&#xA;&lt;h4 id=&#34;example-2&#34;&gt;Example #2&lt;/h4&gt;&#xA;&lt;p&gt;I must admit I&amp;rsquo;m disappointed, but perhaps I expected too much from my intelligent agent.&lt;/p&gt;&#xA;&lt;p&gt;So, I try to make things easier by choosing a graph from an &lt;a href=&#34;https://pubs.aip.org/aip/apl/article-abstract/86/4/042501/117168/Overdamped-Nb-Al-AlOx-Nb-Josephson-junctions&#34;&gt;old article of mine&lt;/a&gt; that shouldn&amp;rsquo;t be too challenging for Gemini 3 Flash.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/042501_fig2.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Instead, it gets stuck and makes incomprehensible mistakes. With a little help, he manages to pull out the data shown in this graph, which still has several missing points (highlighted by the colored boxes) or, even worse, points added quite imaginatively (such as the one indicated by the arrow).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/recreate_figure_2.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Another disappointment. Why use an &lt;em&gt;intelligent agent&lt;/em&gt; if it&amp;rsquo;s faster to acquire the points by hand?&lt;/p&gt;&#xA;&lt;h4 id=&#34;example-3&#34;&gt;Example #3&lt;/h4&gt;&#xA;&lt;p&gt;But I don&amp;rsquo;t give up easily and try once more to get it to do something good. I use a figure from &lt;a href=&#34;https://pubs.aip.org/aip/apl/article-abstract/91/25/252505/334515/Nb-Al-AlOx-Nb-overdamped-Josephson-junctions-above&#34;&gt;another article&lt;/a&gt;, which is quite simple from a graphical point of view. However, it would be useful to be able to acquire it automatically, as the amount of data it contains makes it difficult to digitize accurately by hand.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/252505_fig1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Burned by the previous experiences, I first ask it to describe what it &lt;em&gt;sees&lt;/em&gt; in the figure.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Now could you describe in simple words what you &#34;see&#34; in figure 1?&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;The response is long, precise, and almost flawless,&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;answer&#34;&gt;&#xA;    &lt;summary class=&#34;answer&#34;&gt;&#xA;        Answer&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;answer&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;Looking at figure 252505_1_f1.jpeg, I can see:&lt;/p&gt;&#xA;    &lt;p&gt;&lt;strong&gt;Two side-by-side graphs&lt;/strong&gt; showing current-voltage (I-V) characteristics:&lt;/p&gt;&#xA;    &lt;p&gt;&lt;strong&gt;(a) Left graph (T = 2.0 K)&lt;/strong&gt;:&lt;/p&gt;&#xA;    &lt;ul&gt;&#xA;    &lt;li&gt;Shows a &lt;strong&gt;hysteretic&lt;/strong&gt; behavior - the curve forms a loop&lt;/li&gt;&#xA;    &lt;li&gt;The current jumps abruptly at certain voltage points&lt;/li&gt;&#xA;    &lt;li&gt;There&amp;rsquo;s a clear gap between the upward and downward voltage sweeps&lt;/li&gt;&#xA;    &lt;li&gt;The vertical jumps occur around ±1 mV&lt;/li&gt;&#xA;    &lt;/ul&gt;&#xA;    &lt;p&gt;&lt;strong&gt;(b) Right graph (T = 5.8 K)&lt;/strong&gt;:&lt;/p&gt;&#xA;    &lt;p&gt;Shows &lt;strong&gt;non-hysteretic&lt;/strong&gt; behavior - smooth, continuous curve&lt;/p&gt;&#xA;    &lt;ul&gt;&#xA;    &lt;li&gt;No loop or gap between voltage sweeps&lt;/li&gt;&#xA;    &lt;li&gt;The transition is gradual rather than abrupt&lt;/li&gt;&#xA;    &lt;li&gt;The curve is more rounded at the critical points&lt;/li&gt;&#xA;    &lt;/ul&gt;&#xA;    &lt;p&gt;&lt;strong&gt;Key observation&lt;/strong&gt;: This demonstrates how the same Josephson junction behaves differently at different temperatures. At the lower temperature (2.0 K), it shows hysteresis (memory effect), while at the higher temperature (5.8 K), the hysteresis disappears and the junction becomes &amp;ldquo;overdamped.&amp;rdquo;&lt;/p&gt;&#xA;    &lt;p&gt;Both graphs show current ranging from about -15 to +15 mA on the y-axis, with voltage on the x-axis measured in millivolts (mV).&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;but, in reality, there is an error at the end of the response that would render any attempt to digitise the data in the two graphs impossible.&lt;/p&gt;&#xA;&lt;p&gt;When I point it out, Gemini 3 Flash corrects itself immediately and seems almost sorry. But, as we all know, LLMs are programmed to always please the user.&lt;/p&gt;&#xA;&lt;p&gt;I move forward and try to help it out, explaining exactly what it should do.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;No problem. Now could you extract the values of voltage and current from the two images? Please produce a table for each image, and export the table as a csv file and a markdown file, with suffix `_table`.&lt;/br&gt;  &#xA;Since one of the I-V curves is hysteretic, I suggest this strategy for extracting the data: start from V=0, increase V up to the maximum value following one of the paths, decrease V to 0 following the other path, do the same for the negative values of V.&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;But despite the suggestion, there&amp;rsquo;s no way to get it to do a decent job. The best I get is this, which at first glance looks like a great result.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/252505_1_f1_lowres_v22.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;It&amp;rsquo;s a pity, though, that there&amp;rsquo;s a serious and incomprehensible error, which I&amp;rsquo;ll leave it for you to discover.&lt;/p&gt;&#xA;&lt;p&gt;In any case, the previous image is truly the best of the best of the best, and it was obtained after hours of failed attempts (like &lt;a href=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/252505_1_f1_recreated.png&#34;&gt;this&lt;/a&gt; initial attempt, or &lt;a href=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/252505_1_f1_lowres_v13.png&#34;&gt;this&lt;/a&gt;, or &lt;a href=&#34;https://melabit.com/img/2026-02-16-antigravity-dalla-sorpresa-al-dubbio/252505_1_f1_lowres_final.png&#34;&gt;this&lt;/a&gt; one) and of hints that went from vague to increasingly precise, much like with an unprepared student from whom you try to get a few words out. Not to mention responses that always tried to adapt to the current suggestion without ever, or almost ever, making use of what had been discussed previously.&lt;/p&gt;&#xA;&lt;p&gt;All these fruitless attempts were made even more frustrating by the fact that, several years ago, I had solved the same problem accurately and reproducibly with barely two hundred lines of Python code (&lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/#fn:3&#34;&gt;I remembered wrong&lt;/a&gt;, it wasn&amp;rsquo;t C but Python).&lt;/p&gt;&#xA;&lt;p&gt;And when I finish explaining exactly how it should be done, even suggesting that the key is to convert the original &lt;code&gt;JPEG&lt;/code&gt; file into a &lt;code&gt;PBM&lt;/code&gt; format (which is basically a grid of 0s or 1s depending on whether the pixel is white or black),&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;My suggestion is to change focus completely. If I were you I would:&lt;/p&gt;&#xA;    &lt;ol&gt;&#xA;    &lt;li&gt;&#xA;    &lt;p&gt;take note of the extreme values of voltage and current on the X and Y axes;&lt;/p&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;li&gt;&#xA;    &lt;p&gt;get rid of the extraneous information outside the plot area and of the text (if any) inside it;&lt;/p&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;li&gt;&#xA;    &lt;p&gt;convert the image to the PBM (or PGM) format, that gives you a clean grid of black and white (or gray and white) pixels;&lt;/p&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;li&gt;&#xA;    &lt;p&gt;remove the extraneous grid dots using a 3x3 or 5x5 filter (or anything like that);&lt;/p&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;li&gt;&#xA;    &lt;p&gt;calculate the X and Y position of each black pixel, converting the [values] to Voltage and Current (it is just a proportion).&lt;/p&gt;&#xA;    &lt;/li&gt;&#xA;    &lt;/ol&gt;&#xA;    &lt;p&gt;Clearly you can change the order of the steps or do something different if you believe your approach is better than mine.&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;there&amp;rsquo;s still no way to get it to do something useful.&lt;/p&gt;&#xA;&lt;p&gt;What&amp;rsquo;s even more frustrating is that Gemini didn&amp;rsquo;t hesitate to try to cheat! When it found the original file of measured values that I was using to compare its results with the &lt;em&gt;real&lt;/em&gt; data, it tried to use that file to generate the data I was asking for. Clearly, the results were perfect this time, but did I need an artificial &lt;em&gt;intelligence&lt;/em&gt; to achieve that?&lt;/p&gt;&#xA;&lt;h4 id=&#34;further-examples&#34;&gt;Further examples&lt;/h4&gt;&#xA;&lt;p&gt;During the days I spent testing what I&amp;rsquo;ve described in this post, I also ran many other tests, such as asking it to write some simple LaTeX code or convert the tables contained in a few PDF files into &lt;code&gt;CSV&lt;/code&gt; or &lt;code&gt;Markdown&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;t handled LaTeX well, but often struggled with tables, even when the layout was simple. There&amp;rsquo;s no need to go into detail here, as there aren&amp;rsquo;t many differences compared to previous examples.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;After the excellent results &lt;a href=&#34;https://melabit.com/en/2026/01/21/an-unexpected-antigravity/#task-1-extracting-data-from-images&#34;&gt;described in the previous article&lt;/a&gt;, I was confident I could use the intelligent agents integrated into Antigravity to easily extract data buried in many scientific articles from a few years ago, which would have allowed me to perform new comparative analyses quickly and efficiently.&lt;/p&gt;&#xA;&lt;p&gt;Unfortunately, all the more in-depth tests described in this post turned out to be unsuccessful.&lt;/p&gt;&#xA;&lt;p&gt;The model used here, almost always Gemini 3 Flash (though I also briefly tried Gemini 3 Pro and Claude Sonnet 4.5),&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; showed &lt;strong&gt;inconsistent and unrepeatable behavior&lt;/strong&gt;. For example, it would use different methods to solve the same problem without it ever being clear whether the choice of an algorithm or library had a specific technical motivation or was just a matter of statistical probability in the generation of responses.&lt;/p&gt;&#xA;&lt;p&gt;Another serious issue was the &lt;strong&gt;lack of memory&lt;/strong&gt;, much like &lt;a href=&#34;https://youtu.be/3JNLwlcPBPI?si=AuWIQu80vuFst1KP&amp;amp;t=62&#34;&gt;Dory&lt;/a&gt;, the funny fish from the cartoons. Despite successfully solving the problem of extracting data from a histogram just a few days earlier, Gemini was unable to apply the same methodology to a similar case. On other occasions, once a problem was partially solved, Gemini would start working on it again from scratch instead of refining and improving the previous answer.&lt;/p&gt;&#xA;&lt;p&gt;But the problem that perhaps bothered me the most was the &lt;strong&gt;inability to generalize&lt;/strong&gt; the work already done. If you ask to extract data from an image, Gemini creates a program suited only for &lt;em&gt;that&lt;/em&gt; specific image, without ever trying to develop a general method applicable to other images of the same type. Similarly, if you ask it to generate a graph from a data file, Gemini creates a script suited only for &lt;em&gt;that&lt;/em&gt; file, which is nearly impossible to adapt to other similar cases.&lt;/p&gt;&#xA;&lt;p&gt;When humans tackle a problem, they tend to become fond of the solution and try to reuse and extend it to similar problems. An LLM doesn&amp;rsquo;t care; it reinvents the wheel at every new iteration. It seems the triumph of the throwaway culture, a waste of resources and intelligence (however artificial) taken to the extreme.&lt;/p&gt;&#xA;&lt;p&gt;I&amp;rsquo;m just a guy playing around with these tools. However, very serious scientific studies &amp;ndash; which, for instance, tried to use LLMs to rediscover &lt;a href=&#34;https://arxiv.org/abs/2507.06952v4&#34;&gt;Newton&amp;rsquo;s law of gravitation&lt;/a&gt; starting from the orbits of planets around the Sun, or to predict the &lt;a href=&#34;https://pubs.rsc.org/en/content/articlelanding/2025/dd/d5dd00176e&#34;&gt;behavior of a molecule&lt;/a&gt; based on different representations of its structure &amp;ndash; have reached the exact same conclusions.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;em&gt;Our analysis reveals that these models instead behave as if&#xA;they develop task-specific heuristics that fail to generalize.&lt;/em&gt;&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;em&gt;Simply increasing model size does not improve performance or generalization ability.&lt;/em&gt;&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Lastly, even if  at first glance it seems otherwise, we must never forget that LLMs &lt;strong&gt;don&amp;rsquo;t actually understand&lt;/strong&gt; what they are being asked; they are just very good at finding a needle in a very, very, very large haystack. An LLM can explain in great detail what a &amp;ldquo;Josephson junction I-V characteristic&amp;rdquo; is because it has &lt;em&gt;read&lt;/em&gt; many books and articles on the subject. But when it comes to connecting the ideal concept of &amp;ldquo;I-V characteristic&amp;rdquo; with its experimental representation in a figure, it fails miserably, proving it is just a well-trained parrot.&lt;/p&gt;&#xA;&lt;p&gt;Someone claims that the latest generation of LLMs can write an &lt;a href=&#34;https://arstechnica.com/ai/2026/02/sixteen-claude-ai-agents-working-together-created-a-new-c-compiler/&#34;&gt;entire C compiler&lt;/a&gt; on their own or tens of thousands of lines of &lt;a href=&#34;https://shumer.dev/something-big-is-happening&#34;&gt;perfectly functioning code&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Personally, I would be satisfied if these models could produce a data file or a table in a reproducible manner, without running into inexplicable errors or inconsistent results. They should also avoid awkward situations like the ones I experienced, where one day everything goes smoothly, and the next day, nothing works.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;I also used the paid version of Gemini, kindly provided by my university, without noticing any differences compared to the free version. Those who claim that paid models do things the free ones can only dream of should provide solid evidence before being believed.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;K. Vafa &lt;em&gt;et al.&lt;/em&gt;, &lt;a href=&#34;https://arxiv.org/abs/2507.06952v4&#34;&gt;What Has a Foundation Model Found? Using Inductive Bias to Probe for World Models&lt;/a&gt;, arXiv 2507.06952v4, 2025.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;B. Yan &lt;em&gt;et al.&lt;/em&gt;, &lt;a href=&#34;https://pubs.rsc.org/en/content/articlelanding/2025/dd/d5dd00176e&#34;&gt;Inconsistency of LLMs in molecular representations&lt;/a&gt;, Digital Discovery vol. 4, 2025.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>An unexpected Antigravity</title>
      <link>https://melabit.com/en/2026/01/21/an-unexpected-antigravity/</link>
      <pubDate>Wed, 21 Jan 2026 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2026/01/21/an-unexpected-antigravity/</guid>
      <description>&lt;p&gt;I confess, when I &lt;a href=&#34;https://melabit.com/en/2025/12/15/photocopied/&#34;&gt;started using Antigravity&lt;/a&gt; I had many doubts, because the new &lt;em&gt;revolutionary&lt;/em&gt; editor produced by Google seemed to me like just another clone of Microsoft&amp;rsquo;s &lt;a href=&#34;https://code.visualstudio.com/&#34;&gt;VS Code&lt;/a&gt;.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;But as soon as I started using the &lt;em&gt;agentic&lt;/em&gt; features of Google Antigravity, I had to change my mind, because there is truly something good there.&lt;/p&gt;&#xA;&lt;p&gt;Of course, there are also many limitations, but these are shared by all other LLMs (&lt;em&gt;Large Language Models&lt;/em&gt;), which work well when guided step-by-step through the task at hand, but also lack imagination and struggle with new and slightly complicated problems.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/Gemini_Generated_Image_nu8qhynu8qhynu8q.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;editor-and-ide&#34;&gt;Editor and IDE&lt;/h4&gt;&#xA;&lt;p&gt;Google Antigravity is an &lt;a href=&#34;https://en.wikipedia.org/wiki/Integrated_development_environment&#34;&gt;IDE (Integrated Development Environment)&lt;/a&gt;, that is, an editor with additional features that help write and debug code.&lt;/p&gt;&#xA;&lt;p&gt;Being a derivative of VS Code, it inherits all its positive and negative aspects, first and foremost the fact that it is based on &lt;a href=&#34;https://www.electronjs.org/&#34;&gt;Electron&lt;/a&gt;, a multi-platform framework that is very convenient for developers but also very demanding in terms of resources and disk space.&lt;/p&gt;&#xA;&lt;p&gt;In fact, as I already noted in my &lt;a href=&#34;https://melabit.com/en/2025/12/15/photocopied/&#34;&gt;last post&lt;/a&gt;, once installed, Google Antigravity occupies a whopping 700 MB on my Mac (696.6 MB to be precise), a hair more than VS Code itself (683.9 MB) and slightly less than its &lt;em&gt;father&lt;/em&gt; Windsurf (718.7 MB). For comparison, my two favourite editors, TextMate and BBEdit, occupy 40 MB and 65 MB respectively. &lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;There is little to say about the code editing and development support features. They are identical to those of VS Code and can be greatly extended through the 8,500+ extensions available on the &lt;a href=&#34;https://open-vsx.org/&#34;&gt;Open VSX Registry&lt;/a&gt;, a database of extensions specifically designed for VS Code-derived editors.&lt;/p&gt;&#xA;&lt;p&gt;In theory, one could use &lt;a href=&#34;https://marketplace.visualstudio.com/&#34;&gt;VS Code extensions&lt;/a&gt;, but Microsoft recently &lt;a href=&#34;https://freedium-mirror.cfd/https://medium.com/@S3CloudHub/microsoft-quietly-blocked-cursor-from-using-its-vscode-extension-heres-the-line-of-code-that-40d65f14ef0f&#34;&gt;blocked&lt;/a&gt; the use of the VS Code marketplace for all other derivative editors (including Cursor, Windsurf, or Antigravity). So much for &lt;a href=&#34;https://code.visualstudio.com/&#34;&gt;open-source&lt;/a&gt; principles&amp;hellip;&lt;/p&gt;&#xA;&lt;h4 id=&#34;agentic-functions&#34;&gt;&lt;em&gt;Agentic&lt;/em&gt; functions&lt;/h4&gt;&#xA;&lt;p&gt;So, what exactly is &lt;a href=&#34;https://www.ibm.com/think/topics/agentic-ai&#34;&gt;Agentic Artificial Intelligence&lt;/a&gt;? It is an AI system that can act autonomously and achieve complex goals with minimal human supervision, without needing detailed, well-defined instructions.&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s a bit like the dream of amateur cooks: having a robot that can look at what&amp;rsquo;s in the fridge and cupboard and prepare a complete lunch all by itself, after we vaguely explain what we want.&lt;/p&gt;&#xA;&lt;p&gt;But it is also the dream of the amateur &lt;em&gt;vibe coders&lt;/em&gt;, those who would like to be able to ask the AI to program an application &amp;ldquo;like this and that,&amp;rdquo; go out for a pizza, and find everything ready upon return, including the porting for major platforms and an e-commerce site to sell it.&lt;/p&gt;&#xA;&lt;h4 id=&#34;putting-antigravity-to-the-test&#34;&gt;Putting Antigravity to the test&lt;/h4&gt;&#xA;&lt;p&gt;So far, all these experiments haven&amp;rsquo;t exactly &lt;a href=&#34;https://freedium-mirror.cfd/https://ninza7.medium.com/anthropic-gave-an-ai-a-job-the-results-were-hilarious-and-terrifying-e85a204b06f4&#34;&gt;looked great&lt;/a&gt; but, as &lt;a href=&#34;https://www.google.com/search?q=https://it.wikipedia.org/wiki/Mai_dire_mai_%28film%29&#34;&gt;Sean Connery teaches us&lt;/a&gt;, never say never. So let&amp;rsquo;s see how the agentic functions integrated into Google Antigravity work in practice.&lt;/p&gt;&#xA;&lt;p&gt;To test them, I asked the program to perform a few specific tasks, ranging from simple things to a particularly complex task. I tried to to leave it free to decide what to do and to intervene only when it was truly necessary. Although I chose tasks that were relevant to my own research, I believe the results are significant nonetheless.&lt;/p&gt;&#xA;&lt;p&gt;Here is how it went.&lt;/p&gt;&#xA;&lt;h5 id=&#34;before-starting&#34;&gt;Before starting&lt;/h5&gt;&#xA;&lt;p&gt;Before starting, I pretended that I was using Antigravity for the first time, and deleted all the files generated by the application with &lt;a href=&#34;https://freemacsoft.net/appcleaner/&#34;&gt;AppCleaner&lt;/a&gt;. I ran the &lt;em&gt;onboarding&lt;/em&gt; process again, choosing to &lt;code&gt;Start fresh&lt;/code&gt; without importing configurations from VS Code or Windsurf, and to use the &lt;code&gt;Review driven development&lt;/code&gt; mode without modifying the default options.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/agent-mode.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;I didn&amp;rsquo;t install any extensions, because I prefer to decide for myself what I need.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/extensions.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;One more thing: the version of Antigravity I used to write this post is 1.11.17. However, given the speed of development, it&amp;rsquo;s possible that some aspects of the interface and how the program operates may have changed by the time this post is published.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/version.png&#34; alt=&#34;&#34;&gt;&lt;h5 id=&#34;task-1-extracting-data-from-images&#34;&gt;Task #1: Extracting data from images&lt;/h5&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s start with something simple, yet very important when dealing with old scientific papers: extracting data from images. My goal was to verify whether it is possible to instruct the Antigravity AI to extract data on its own from the figures in &lt;a href=&#34;https://link.springer.com/article/10.1007/s13762-025-06837-z&#34;&gt;this paper&lt;/a&gt;, which has recently been published. I am not at all proud of it (to put it mildly), but the referees surprisingly accepted it almost without a word.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;p&gt;Today, the &lt;a href=&#34;https://www.nature.com/collections/prbfkwmwvz&#34;&gt;reproducibility of results&lt;/a&gt; has become a key principle and it is normal to share all the data from a scientific paper on public repositories like &lt;a href=&#34;https://zenodo.org&#34;&gt;Zenodo&lt;/a&gt;, &lt;a href=&#34;https://osf.io&#34;&gt;OSF&lt;/a&gt;, &lt;a href=&#34;https://dataverse.org/&#34;&gt;Dataverse&lt;/a&gt; or maybe &lt;a href=&#34;https://github.com/&#34;&gt;GitHub&lt;/a&gt;. Until a few years ago, however, the original data were essentially only accessible through the figures in papers. This is precisely why it is important to be able to extract them from images.&lt;/p&gt;&#xA;&lt;p&gt;Although there are many programs dedicated to extracting data from figures (like &lt;a href=&#34;https://akhuettel.github.io/engauge-digitizer/&#34;&gt;this&lt;/a&gt;, &lt;a href=&#34;https://www.digitizeit.xyz/&#34;&gt;this&lt;/a&gt; or &lt;a href=&#34;https://cran.r-project.org/web/packages/metaDigitise/vignettes/metaDigitise.html&#34;&gt;this&lt;/a&gt;), they require user guidance &amp;ndash; at the very least to define the position of the X and Y axes and the coordinate limits. Some programs can work automatically, but only if they deal with well-defined types of images. &lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/br&gt;&#xA;&lt;p&gt;Before starting, I created a new directory in which to save the graphs that I had downloaded from the paper&amp;rsquo;s &lt;a href=&#34;https://link.springer.com/article/10.1007/s13762-025-06837-z&#34;&gt;web page&lt;/a&gt;, just as a colleague who wanted to repeat my experiment would do. While I was at it, I also included the PDF file of the paper, which I will need later.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;p&gt;&lt;strong&gt;NOTE.&lt;/strong&gt; All of the questions listed below have been copied without correcting typos and clumsy syntax, due (in part) to the excitement of seeing the results quickly. However, these errors are useful because they demonstrate that these systems can understand our requests even when the form is far from perfect.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/br&gt;&#xA;&lt;p&gt;I chose to use &lt;code&gt;Gemini 3 Pro (High)&lt;/code&gt;, which is currently the most powerful model in Antigravity. First, I asked it to orient itself within the directory content.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;In the current directory you will find a pdf file, a couple of folders and some inages in png or webp format. Is all this right?&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Gemini thinks for a couple of seconds and then confirms that everything is correct. Very well, then&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Now open the file containing &#34;Fig1&#34; in the filename. This is an histogram showing the concentration of several chemical species in two kinds of Shungite, type Z (darker bars) and type B (lighter bars). Could you extract the values of concentration from the images? Please produce a table with the name of each chemical species and the associated concentrations for the Type Z and Type B material. Export the table as a csv file named &#34;gemini-fig1.csv&#34; and as a markdown file &#34;gemini-fig1.md&#34;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;This is the image that Gemini had to deal with&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/13762_2025_6837_Fig1_HTML.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Despite me being deliberately vague about the file name, Gemini can find it without problems and, after about twenty seconds, produces the two requested files. The table generated by Gemini is&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Chemical Species&lt;/th&gt;&#xA;          &lt;th&gt;Type Z (Concentration %)&lt;/th&gt;&#xA;          &lt;th&gt;Type B (Concentration %)&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;SiO2&lt;/td&gt;&#xA;          &lt;td&gt;41&lt;/td&gt;&#xA;          &lt;td&gt;52&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;C&lt;/td&gt;&#xA;          &lt;td&gt;33&lt;/td&gt;&#xA;          &lt;td&gt;16&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Al2O3&lt;/td&gt;&#xA;          &lt;td&gt;11&lt;/td&gt;&#xA;          &lt;td&gt;16&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Fe2O3&lt;/td&gt;&#xA;          &lt;td&gt;5&lt;/td&gt;&#xA;          &lt;td&gt;3&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;FeO&lt;/td&gt;&#xA;          &lt;td&gt;3&lt;/td&gt;&#xA;          &lt;td&gt;2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;TiO2&lt;/td&gt;&#xA;          &lt;td&gt;0.2&lt;/td&gt;&#xA;          &lt;td&gt;1&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;MnO&lt;/td&gt;&#xA;          &lt;td&gt;0.1&lt;/td&gt;&#xA;          &lt;td&gt;0.2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;S&lt;/td&gt;&#xA;          &lt;td&gt;1.2&lt;/td&gt;&#xA;          &lt;td&gt;0.5&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;MgO&lt;/td&gt;&#xA;          &lt;td&gt;0.5&lt;/td&gt;&#xA;          &lt;td&gt;1.5&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Na2O&lt;/td&gt;&#xA;          &lt;td&gt;1.5&lt;/td&gt;&#xA;          &lt;td&gt;1.2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;CaO&lt;/td&gt;&#xA;          &lt;td&gt;0.5&lt;/td&gt;&#xA;          &lt;td&gt;2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;K2O&lt;/td&gt;&#xA;          &lt;td&gt;1&lt;/td&gt;&#xA;          &lt;td&gt;2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;H2O&lt;/td&gt;&#xA;          &lt;td&gt;2&lt;/td&gt;&#xA;          &lt;td&gt;1.5&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;minor elements&lt;/td&gt;&#xA;          &lt;td&gt;0.5&lt;/td&gt;&#xA;          &lt;td&gt;0.5&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;Comparing it with the &lt;em&gt;real&lt;/em&gt; table with the measured values of concentration&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Species&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Type_Z&lt;/th&gt;&#xA;          &lt;th style=&#34;text-align: left&#34;&gt;Type_B&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;SiO2&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;40.8&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;52&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;C&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;33.4&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;16.3&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Al2O3&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;10.6&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;15.8&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Fe2O3&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;4.7&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;3.2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;FeO&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;3.5&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.9&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;TiO2&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.4&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.9&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;MnO&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.14&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.12&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;S&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.1&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.6&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;MgO&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.3&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.6&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Na2O&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.6&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;CaO&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.4&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;2.3&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;K2O&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;2.2&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;H2O&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.6&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;1.4&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;Other&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.46&lt;/td&gt;&#xA;          &lt;td style=&#34;text-align: left&#34;&gt;0.48&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;it is immediately apparent that all the values extracted from the figure are very close to the real values, with minimal approximations of less than 0.5%.&lt;/p&gt;&#xA;&lt;p&gt;I am truly impressed by the result: Antigravity did everything in a few seconds without any intervention from me other than preparing the files and writing the prompt. While normal chatbots like ChatGPT or Claude can do similar things, Antigravity allows us to work directly on our computer with our files, without having to transfer anything back and forth via a web interface.&lt;/p&gt;&#xA;&lt;p&gt;Task completed with full marks.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-2-replication-of-graphs&#34;&gt;Task #2: Replication of graphs&lt;/h5&gt;&#xA;&lt;p&gt;For reasons that are not relevant here, I contributed very little &amp;ndash; and mostly critically &amp;ndash; to the writing of the &lt;a href=&#34;https://link.springer.com/article/10.1007/s13762-025-06837-z&#34;&gt;paper&lt;/a&gt; mentioned in Task #1. Specifically, I didn&amp;rsquo;t prepare the graphs as usual. Instead, they were created by a colleague using &lt;a href=&#34;https://www.mathworks.com/products/matlab.html&#34;&gt;Matlab&lt;/a&gt;, a scientific computing environment much loved by engineers. They are right to love it, because with Matlab you can perform very complicated calculations with little effort. However, producing high-quality graphs is certainly not one of its strengths&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s see if I can get Gemini 3 Pro to recreate the histogram from Task #1 using the &lt;a href=&#34;https://ggplot2.tidyverse.org/&#34;&gt;ggplot2&lt;/a&gt; library in &lt;code&gt;R&lt;/code&gt;.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Now generate the R code to recreate the same graph, using ggplot2 and whenever possible the functions available in the tidyverse.&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;After a while, the script is ready and is saved automatically in the project directory. I give it a quick look and it seems fine. Thus, I open the integrated terminal in Antigravity and run the script as suggested.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Rscript recreate_fig1.R&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Apart from inverted colors, the figure is identical to the original.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/recreated_fig1.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;I want to be clear on this point: I didn&amp;rsquo;t touch a single thing of the code generated in Antigravity by Gemini, and I won&amp;rsquo;t do so later, either. Yet Gemini manages to recreate an almost perfect copy of the original in &lt;code&gt;R&lt;/code&gt;, &lt;em&gt;reading&lt;/em&gt; the data in the figure and recognizing all the surrounding elements of the graph, such as the X and Y axis labels, the numerical scales, or the legend.&lt;/p&gt;&#xA;&lt;p&gt;I know R well enough and could have achieved the same result in a short time, but there is no doubt that, even in cases like this, Antigravity can be a valuable help for those who don&amp;rsquo;t know programming well.&lt;/p&gt;&#xA;&lt;p&gt;However, I am a hard guy to please and I ask Gemini to invert the colors&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Sorry, but the colors are inverted. Type Z is light grey and Type B is dark grey. Please switch the colors so that they are identical to the original. Save the new R code as `Rscript recreate_fig1-1.R`&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;I run the new script and now the colors are correct. I am pleased to note that the name of the generated &lt;code&gt;png&lt;/code&gt; file has also been updated, making it easier to compare the different files produced by Gemini.&lt;/p&gt;&#xA;&lt;p&gt;Once again, I am very impressed. Gemini did everything perfectly and I didn&amp;rsquo;t have to correct a single line of code.&lt;/p&gt;&#xA;&lt;p&gt;It was undoubtedly an easy job, but the result is still very interesting. This is especially true given that we are talking about a specialised language like R, which doesn&amp;rsquo;t have the same volume of training examples as more popular languages like Python or JavaScript.&lt;/p&gt;&#xA;&lt;p&gt;It seems that also this task has also been completed with full marks.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-3-generation-of-new-graphs&#34;&gt;Task #3: Generation of new graphs&lt;/h5&gt;&#xA;&lt;p&gt;Gemini was able to successfully recreate the histogram from the &lt;a href=&#34;https://link.springer.com/article/10.1007/s13762-025-06837-z&#34;&gt;paper&lt;/a&gt;, but I  I would like to check whether there are any more effective alternative representations.&lt;/p&gt;&#xA;&lt;p&gt;I pass the ball back to Gemini 3 Pro, which comes up with two interesting ideas: a &lt;em&gt;Lollipop&lt;/em&gt; chart and a &lt;em&gt;Dumbbell plot&lt;/em&gt;, which however don&amp;rsquo;t fully satisfy me. I try to get it to make some changes, Gemini always performs flawlessly but the result doesn&amp;rsquo;t improve.&lt;/p&gt;&#xA;&lt;p&gt;In the end, the most balanced graph is the usual histogram, this time with the X and Y axes swapped and very different colors for the two types of material.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/alternative_fig1_horizontal_bar.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Since I am hard to please, I choose a much more complicated figure from the same paper&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/concentrazione_metalli3.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;and I ask Gemini to repeat the process of generating equivalent graphs using &lt;code&gt;R&lt;/code&gt; and &lt;code&gt;ggplot2&lt;/code&gt;. Gemini gets straight to work, understanding by itself that the concentration of the elements at day 0 applies to both types of material, a fact that isn&amp;rsquo;t trivial to understand just by looking at the graph.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;answer&#34; open&gt;&#xA;    &lt;summary class=&#34;answer&#34;&gt;&#xA;        Answer&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;answer&#34;&gt;&#xA;        &#xA;For Day 0 (&#34;untreated sample&#34;), I assigned the same concentration value to both Type Z and Type B in the dataset. This format suggests that both treatments start from the same baseline, which will make plotting lines easier in R.&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;I&amp;rsquo;ll spare you the details. Gemini easily produces several different types of data visualisations from the image above, such as a &lt;a href=&#34;https://www.google.com/search?q=img/2026-01-21-sorpresa-antigravity/fig4_heatmap.png&#34;&gt;heatmap&lt;/a&gt; or a &lt;a href=&#34;https://www.google.com/search?q=img/2026-01-21-sorpresa-antigravity/fig4_sankey_grid_bold.png&#34;&gt;Sankey plot&lt;/a&gt;. While the graphs weren&amp;rsquo;t 100% satisfactory, they demonstrate that Gemini can perform the tasks required by demanding users such as myself.&lt;/p&gt;&#xA;&lt;p&gt;What truly stuns me is that Gemini understands by itself that, when I asks it to arrange the graphs in two columns, one for each material studied, I actually want what is called a &lt;code&gt;facet&lt;/code&gt; in R jargon. This may seem like a small thing, but it means that these more complex representations become accessible even to those who know what they want but cannot express it precisely.&lt;/p&gt;&#xA;&lt;p&gt;It must be said, however, that as convenient (and even fun) as it is to ask and watch Gemini work, when you get to the finer modifications, you lose much more time writing questions and waiting for answers than working directly on the code. This is a detail to keep in mind.&lt;/p&gt;&#xA;&lt;p&gt;However, it must be said that, although it is convenient and even fun to ask questions and observe Gemini in action, when it comes to the finer modifications one ends up spending much more time writing questions and waiting for answers than working directly on the code. This is an important detail to consider.&lt;/p&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s say that this task deserves a passing grade.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-4-interaction-with-code-and-operating-system&#34;&gt;Task #4: Interaction with code and operating system&lt;/h5&gt;&#xA;&lt;p&gt;Now, let&amp;rsquo;s see if the Gemini 3 Pro integrated into Antigravity can perform basic file and folder management operations. Although I ran all the tests on macOS, the examples should also apply to various incarnations of Linux and BSD Unix.&lt;/p&gt;&#xA;&lt;p&gt;First, I asked it to tidy up the files generated so far, moving the R scripts to the &lt;code&gt;code&lt;/code&gt; directory, the data files to &lt;code&gt;data&lt;/code&gt;, and the generated graphs to &lt;code&gt;output&lt;/code&gt;. After thinking about it for a moment, Gemini 3 Pro creates a simple shell script to execute the request. It even made an error, noticed it, and asked for authorization to correct it.&lt;/p&gt;&#xA;&lt;p&gt;First, I ask it to tidy up the files generated so far by moving the R scripts to the &amp;lsquo;code&amp;rsquo; directory, the data files to &amp;lsquo;data&amp;rsquo;, and the produced graphs to &amp;lsquo;output&amp;rsquo;. After thinking about it for a moment, Gemini 3 Pro created a simple shell script to perform the task. It makes an error, notices it and asks for authorisation to correct it. Very, very good.&lt;/p&gt;&#xA;&lt;p&gt;But what I like even more is that it automatically updates all the previously written code with the new file paths.&lt;/p&gt;&#xA;&lt;p&gt;I then ask it to add my usual preamble to each &lt;code&gt;R&lt;/code&gt; script, which creates a well-defined R environment. I give it an example from one of my old scripts, but otherwise allow it to do whatever it thinks is best. Gemini does everything perfectly, again updating all the file paths created so far. Truly impressive!&lt;/p&gt;&#xA;&lt;p&gt;Gemini also handles perfectly the conversion of &lt;code&gt;tabs&lt;/code&gt; from two spaces to four spaces, as I like it. In fact, it even recognises the need to do this without introducing formatting errors into the code. Better than a &lt;em&gt;linter&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Lastly, I move on to  try code_versioning_ with &lt;code&gt;git&lt;/code&gt; which is always useful when a project starts to become slightly complicated.&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;Could you now initialize a local `git` repository for this project? Versioning is very useful as soon as a project starts to become complicated.&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Everything works wonderfully; Gemini creates the requested &lt;em&gt;repository&lt;/em&gt;, makes the initial &lt;em&gt;commit&lt;/em&gt;, and also adds a sensible &lt;code&gt;.gitignore&lt;/code&gt; file. Obviously, I can query the repository &lt;em&gt;status&lt;/em&gt; or perform all the usual &lt;code&gt;git&lt;/code&gt; operations I am used to doing from the Terminal.&lt;/p&gt;&#xA;&lt;p&gt;While I am a bit afraid to allow an &lt;em&gt;agentic&lt;/em&gt; system to perform these operations on my Mac, I must admit that the result is perfect.&lt;/p&gt;&#xA;&lt;p&gt;What I wrote at the end of the previous task still holds true: a user who is familiar with &lt;code&gt;git&lt;/code&gt; commands can work much faster in the Terminal than by asking Gemini. However, for the average researcher (or general user) who is unfamiliar with the Terminal and &lt;em&gt;versioning&lt;/em&gt; systems, using an agentic system like this can be an excellent way to interact with code at a low level without having to study large amounts of pages of documentation.&lt;/p&gt;&#xA;&lt;p&gt;In any case, another task passed with full marks.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-5-statistical-data-analysis&#34;&gt;Task #5: Statistical data analysis&lt;/h5&gt;&#xA;&lt;p&gt;I won&amp;rsquo;t make this long, because Antigravity/Gemini 3 Pro is a bit weak on statistical analysis.&lt;/p&gt;&#xA;&lt;p&gt;If I let it do whatever it wants, it comes up with nonsense, such as creating correlation matrices between concentrations of different heavy metals or trying to compare &amp;ldquo;differences of effectiveness&amp;rdquo; between the two materials. Admittedly, it&amp;rsquo;s not an easy task, but it shows &amp;ndash; should it still be necessary to demonstrate it &amp;ndash; that these intelligent systems are very useful when given precise instructions, but struggle to work independently when the user doesn&amp;rsquo;t have a clear idea of what they want to achieve.&lt;/p&gt;&#xA;&lt;p&gt;In fact, once I explain properly what kind of data I am dealing with and what I want to achieve:&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;The two types of shungite, type Z and type B, are different materials and they are used independently. In other words, the experiments made using type Z material is completely independent from the experiment with type B, so the two materials cannot be directly compared. This means that the stat_difference_boxplot has little sense, and the same is true for the correlation matrix which photographs a single day (I guess day 0 for only one type of material), while we are interested to time series. Therefore you should try to use some statistical analysis able to deal with time series.&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Gemini thinks about it for a while, makes some mistakes but manages to correct them on its own, and eventually comes up with a small model showing how type Z material absorbs heavy metals more rapidly than type B material. If there were more data available, it would make sense to reflect a bit on the model, but for now, it&amp;rsquo;s enough.&lt;/p&gt;&#xA;&lt;p&gt;Gemini thinks about it for a while, makes some mistakes, but corrects them by itself, and eventually comes up with a small model showing that type Z material absorbs heavy metals more rapidly than type B material. If there were more data available, it would be worth pondering a bit over the model, but for now, this is more than enough.&lt;/p&gt;&#xA;&lt;p&gt;Hard to give a grade here, let&amp;rsquo;s say unclassified.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-6-extracting-tables-from-pdf-files&#34;&gt;Task #6: Extracting tables from PDF files&lt;/h5&gt;&#xA;&lt;p&gt;Here we enter into hostile territory. Automatically extracting the content of tables in PDF files may seem trivial, but it is a subject that has puzzled hundreds of researchers, myself included. The main problem is that the PDF format is designed to manage the visual aspect of the page, but &lt;em&gt;knows&lt;/em&gt; nothing about its content.&lt;/p&gt;&#xA;&lt;p&gt;For my tests, I asked Antigravity to open the PDF file of one of the &lt;a href=&#34;https://protezionecivile.regione.puglia.it/annali-idrologici-parte-i-documenti-dal-1921-al-2021&#34;&gt;Hydrological Yearbooks&lt;/a&gt; of the Apulia Region, in southern Italy, and extract the minimum and maximum temperature data measured at a few meteorological stations in Apulia.&lt;/p&gt;&#xA;&lt;p&gt;While daily data is now &lt;a href=&#34;https://reteidrometeo.protezionecivile.puglia.it/polarisopen/gis/map&#34;&gt;available online&lt;/a&gt;, the PDF Yearbooks still remain a fundamental resource as they contain temperature and precipitation data from approximately 150 meteorological stations since 1921. This allows us to &lt;a href=&#34;https://iopscience.iop.org/article/10.1088/1742-6596/1065/19/192005&#34;&gt;analyze&lt;/a&gt; how the &lt;a href=&#34;https://www.sciencedirect.com/science/article/abs/pii/S0048969719344067&#34;&gt;region&amp;rsquo;s climate has changed&lt;/a&gt; over the last century.&lt;/p&gt;&#xA;&lt;p&gt;Years ago, I &lt;a href=&#34;https://presentations.copernicus.org/EGU23/EGU23-15072_presentation.pdf&#34;&gt;solved&lt;/a&gt; the problem of extracting data from these PDF files through a combination of &lt;code&gt;R&lt;/code&gt; and &lt;code&gt;AWK&lt;/code&gt; scripts. However, the procedure is long and complex, as many inconsistencies in the tables must be corrected manually.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt; In the end, extracting data for one year takes a couple of hours of careful work -— not to bad given the complexity of the task &amp;ndash; but it would be very useful to delegate this task to an AI.&lt;/p&gt;&#xA;&lt;p&gt;Therefore, I try to have Gemini 3 Pro do it, writing a long prompt where I explain exactly what to do&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;question&#34; open&gt;&#xA;    &lt;summary class=&#34;question&#34;&gt;&#xA;        Prompt&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;question&#34;&gt;&#xA;        &#xA;    &#xA;    &lt;p&gt;Open &lt;code&gt;annale2013.pdf&lt;/code&gt; and go to page 6, where you will find a pair of data tables with measured precipitations [sic! sarebbe dovuto essere &amp;ldquo;temperatures&amp;rdquo;] for two weather stations. The data is arranged in pairs of columns, and each pair corresponds to a month, &lt;code&gt;G&lt;/code&gt; for &lt;code&gt;gennaio&lt;/code&gt; (january), &lt;code&gt;F&lt;/code&gt; for &lt;code&gt;febbraio&lt;/code&gt; (february), etc,. until &lt;code&gt;D&lt;/code&gt; or &lt;code&gt;dicembre&lt;/code&gt; (december).&lt;/p&gt;&#xA;    &lt;p&gt;As for the pairs, the first column is the minimum temperature and the second column is the maximum temperature.&lt;/p&gt;&#xA;    &lt;p&gt;Each row represents a different day.&lt;/p&gt;&#xA;    &lt;p&gt;At the end of each table there are some summary data, &lt;code&gt;Medie&lt;/code&gt;, &lt;code&gt;Med.mens.&lt;/code&gt; and &lt;code&gt;Med.norm&lt;/code&gt; that you can skip.&lt;/p&gt;&#xA;    &lt;p&gt;Missing data can be marked by either one or more &lt;code&gt;&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;&lt;/code&gt; signs, or by &lt;code&gt;=&lt;/code&gt; or be simply blank. In some tables there are extraneuous signs that you can skip outright.&lt;br&gt;&#xA;    Read the table and generate two different csv files, one for the maximum temperature and one for the minimum temperature, following this example&lt;/p&gt;&#xA;    &lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Date,Altamura,Andretta&#xA;    2007-01-01,13.4, 7.7,&#xA;    2007-01-02,15.7, 9.7,&#xA;    2007-01-03, 7.1, 2.7,&#xA;    2007-01-04, 9.5, 7.0,&#xA;    &lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The header contains the date in ISO format, YYYY-MM-DD, and the name of the weather station which is written in bold at the top of each table, just under the months. All other information in thsi area, eg., &lt;code&gt;(Te)&lt;/code&gt;, &lt;code&gt;Bacino&lt;/code&gt; etc. is not useful and can be skipped.&lt;/p&gt;&#xA;    &#xA;&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Gemini tries repeatedly to solve the problem using Python, but its scripts produce a lot of errors and skip several days of valid data. After all, it&amp;rsquo;s not an easy problem, I spent months on it myself, so I give it a little help.&lt;/p&gt;&#xA;&lt;p&gt;However, at this point Gemini throws an error and it is impossible to make any further progress.&lt;/p&gt;&#xA;&lt;p&gt;The best option would be to start from scratch, but in the meantime I have reached the &lt;code&gt;quota limit for Gemini 3 Pro (High)&lt;/code&gt; and would have to wait several days to continue.&lt;/p&gt;&#xA;&lt;p&gt;That is clearly not option, so I decide to switch model and try &lt;code&gt;Gemini 3 Flash&lt;/code&gt;, which everyone is talking about right now. Gemini 3 Flash starts working and proposes a plan that seems sensible, but that in practice produces a &lt;em&gt;jumbled mess&lt;/em&gt; due to the presence of &lt;em&gt;extraneous characters and unclear formatting&lt;/em&gt;, as Gemini 3 Flash sadly admits.&lt;/p&gt;&#xA;&lt;p&gt;I therefore recommend using the &lt;code&gt;pdftools&lt;/code&gt; library in R. I have used it myself and it produces far better results than similar Python tools. Finally, bingo! Gemini 3 Flash produces a data file that is 100% correct.&lt;/p&gt;&#xA;&lt;p&gt;To be truly useful I should have it repeat the process for all stations and for several different years, but for now I&amp;rsquo;m satisfied, given that I don&amp;rsquo;t want to waste all my quota on this task. In any case, the result achieved with &lt;code&gt;Gemini 3 Flash&lt;/code&gt; is truly promising and deserves further exploration.&lt;/p&gt;&#xA;&lt;p&gt;On the other hand, it&amp;rsquo;s impossible to achieve anything worthwhile with &lt;code&gt;Claude Sonnet 4.5 (Thinking)&lt;/code&gt;. After trying again and again, I reach the quota limit for this model and have to stop.&lt;/p&gt;&#xA;&lt;p&gt;What about grading this task? Gemini 3 Flash achieves the maximum score, while Gemini 3 Pro should be retested under the same conditions as the smaller model. Lasty, Claude Sonnet 4.5 is unclassified.&lt;/p&gt;&#xA;&lt;h5 id=&#34;task-7-programming-a-microcontroller&#34;&gt;Task #7: Programming a microcontroller&lt;/h5&gt;&#xA;&lt;p&gt;Another area in which Google Antigravity&amp;rsquo;s &lt;em&gt;agentic&lt;/em&gt; functions could prove very interesting is the programming of microcontrollers such as Arduino, Raspberry Pi Pico, or ESP32. There are literally mountains of these little gadgets, and it&amp;rsquo;s difficult to navigate the many different models as well as the thousands of sensors and modules that can be connected to them.&lt;/p&gt;&#xA;&lt;p&gt;In this specific case, an AI system capable of quickly producing working code would be extremely useful.&lt;/p&gt;&#xA;&lt;p&gt;For my tests, I decide to use a &lt;a href=&#34;https://www.arduino.cc/pro/hardware-product-nicla-vision/&#34;&gt;Nicla Vision&lt;/a&gt;, which is essentially an Arduino with a built-in camera. The Nicla Vision is a true gem.  It&amp;rsquo;s not cheap, but it&amp;rsquo;s worth every penny. However, it is also far less common than standard microcontrollers. If Antigravity can program it correctly, it will certainly succeed with normal Arduinos, Pi Picos, or ESP32s.&lt;/p&gt;&#xA;&lt;p&gt;I switch back to using &lt;code&gt;Gemini 3 Flash&lt;/code&gt; and ask if it knows the Nicla Vision. I also provide it with a link to the product webpage to help it locate the device. Gemini confirms that it knows exactly what I am talking about, and we can begin.&lt;/p&gt;&#xA;&lt;p&gt;To program these devices, I have only ever used the &lt;a href=&#34;https://www.arduino.cc/en/software/&#34;&gt;Arduino IDE&lt;/a&gt; and &lt;a href=&#34;https://thonny.org/&#34;&gt;Thonny&lt;/a&gt;, and I don&amp;rsquo;t know if Gemini can manage the microcontroller directly from the editor. When I ask, Gemini replies with a very simple command&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;% ls /dev/tty.usbmodem* /dev/cu.usbmodem* 2&amp;gt;/dev/null || echo &amp;#34;No usbmodem devices found&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;that allows checking if the Nicla Vision is connected to the Mac. Once it has found it, it checks whether the Python libraries required for communication with the microcontroller are installed. Since they are not, it proposes installing them. It also rightly gives me the option of installing them globally or in a &lt;em&gt;virtual environment&lt;/em&gt;, and needless to say, I choose the latter option.&lt;/p&gt;&#xA;&lt;p&gt;Gemini also prepares a short test script that makes the LED blink (the classic &amp;ldquo;Hello World&amp;rdquo; of the IoT world). When I confirm that everything works, it proudly proclaims:&lt;/p&gt;&#xA;&#xA;&lt;details class=&#34;answer&#34; open&gt;&#xA;    &lt;summary class=&#34;answer&#34;&gt;&#xA;        Answer&#xA;    &lt;/summary&gt;&#xA;    &lt;div class=&#34;answer&#34;&gt;&#xA;        &#xA;I&#39;m ready to start writing more complex code for your project. What would you like to build first?&#xA;&lt;div&gt;&#xA;&lt;/details&gt;&#xA;&#xA;&lt;p&gt;Up to now, Gemini has done nothing than I could not have done myself with &lt;a href=&#34;https://brew.sh/&#34;&gt;Homebrew&lt;/a&gt; and &lt;a href=&#34;https://github.com/conda/conda&#34;&gt;Conda&lt;/a&gt;. However, I would have had to consult pages and pages of scattered web documentation. Here, instead, I managed to configure everything in just a few minutes and I also learnt many useful things.&lt;/p&gt;&#xA;&lt;p&gt;Since Gemini was so keen to be useful, I asked it to write a small program that uses the Nicla Vision to take photos at set intervals and send them to the Mac via Wi-Fi. The result? Everything worked on the first try.&lt;/p&gt;&#xA;&lt;p&gt;And Gemini didn&amp;rsquo;t even get offended when I told it straight out that I didn&amp;rsquo;t trust it with my Wi-Fi password. In fact, it suggested a more secure alternative. But I am distrustful by nature, so in the end I used my iPhone&amp;rsquo;s hotspot with a disposable password.&lt;/p&gt;&#xA;&lt;p&gt;In conclusion, even the last task is passed with full marks.&lt;/p&gt;&#xA;&lt;h4 id=&#34;leaving-a-trace&#34;&gt;Leaving a trace&lt;/h4&gt;&#xA;&lt;p&gt;&lt;del&gt;One truly annoying thing about Antigravity is that it doesn&amp;rsquo;t have a function to export a complete &lt;code&gt;log&lt;/code&gt; of what you do, with the questions asked and the model&amp;rsquo;s answers, and maybe even its &lt;em&gt;thoughts&lt;/em&gt;.&lt;/del&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Edit.&lt;/strong&gt; I was wrong, the keyboard shortcut &lt;strong&gt;CMD&lt;/strong&gt; (⌘)-&lt;strong&gt;E&lt;/strong&gt; opens the Agent Manager, a separate Antigravity window that, among other things, lets you view the entire history of what Antigravity has done, including its &lt;em&gt;thoughts&lt;/em&gt;. The problem is that there isn’t a specific menu item for the Agent Manager (or at least, I haven’t found one), and the keyboard shortcut is only shown when the program starts.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Edit #2.&lt;/strong&gt; The Agent Manager can also be opened directly from Antigravity’s toolbar: the corresponding entry is located right next to the icons that allow to change the application layout and perform searches. I don’t know why I didn’t notice it earlier, but in my partial defence I should point out that all the other toolbar commands are represented by icons. For this reason it isn’t immediately clear that this entry is a command rather than just a plain text string, just like the name of the application sitting in the center of the toolbar.&lt;/p&gt;&#xA;&lt;p&gt;Anyway, after every operation, Antigravity lets me read a detailed &lt;code&gt;Walkthrough&lt;/code&gt; of what it did. Right-clicking on the relevant Tab,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/walkthrough.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;I see that it is possible to &lt;em&gt;reveal&lt;/em&gt; the file in the Finder. This opens a folder with a large number of Markdown files, all having standard names such as &lt;code&gt;implementation_plan&lt;/code&gt;, &lt;code&gt;task&lt;/code&gt;, or &lt;code&gt;walkthrough&lt;/code&gt; followed by the &lt;code&gt;resolved&lt;/code&gt; suffix and a progressive number&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2026-01-21-sorpresa-antigravity/agent-files.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;that provide the &lt;em&gt;history&lt;/em&gt; of everything I do with the agentic system.&lt;/p&gt;&#xA;&lt;p&gt;Whenever I request something from one of the integrated &lt;em&gt;agents&lt;/em&gt;, Antigravity generates three files containing: (1) what it must do, &lt;code&gt;task&lt;/code&gt;; (2) the work plan, &lt;code&gt;implementation_plan&lt;/code&gt;; and (3) a summary of what it did, &lt;code&gt;walkthrough&lt;/code&gt;. At first glance, it&amp;rsquo;s not easy to relate these files to each other, but the mechanism deserves a closer inspection. For the record, all the files in question are in a directory inside &lt;code&gt;~/.gemini/antigravity/brain/&lt;/code&gt;, but the main &lt;code&gt;~/.gemini/antigravity/&lt;/code&gt; directory contains many other directories with configuration files, generated code, and more.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;It&amp;rsquo;s clear that I enjoyed using Antigravity. In some cases, those who know how to program risks being &lt;a href=&#34;https://mastodon.social/@recantha/115829219381438249&#34;&gt;slowed down rather than helped&lt;/a&gt;, but in general, and in particular for those familiar with Word, Excel and little else, Antigravity&amp;rsquo;s &lt;em&gt;agentic&lt;/em&gt; functions can prove to be a truly valuable help.&lt;/p&gt;&#xA;&lt;p&gt;In my life as a non-professional programmer, I went from writing code while consulting huge books of documentation to searching for answers on &lt;a href=&#34;https://stackoverflow.com&#34;&gt;StackOverflow&lt;/a&gt;. In my view, Antigravity&amp;rsquo;s agentic functions are like &lt;a href=&#34;https://stackoverflow.com/&#34;&gt;StackOverflow&lt;/a&gt; on steroids: not only do they provide answers to our questions, they also interpret and reason about them, proposing solutions almost autonomously.&lt;/p&gt;&#xA;&lt;p&gt;But, just as on Stack Overflow, you should always rely on your own knowledge and experience to distinguish useful, working answers from those that are irrelevant.&lt;/p&gt;&#xA;&lt;p&gt;However, please let&amp;rsquo;s not talk about &lt;em&gt;vibe coding&lt;/em&gt;, i.e. the ability to ask the program to perform a given task and then go for a walk while Antigravity does everything alone! &lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt; As the examples show, if you are not very precise in explaining what you want and you don&amp;rsquo;t check step-by-step what Antigravity proposes to do, you risk the entire process failing or producing wrong results.&lt;/p&gt;&#xA;&lt;p&gt;Just like a thesis or PhD student, or a young colleague, Antigravity can be a great help if you know what you want and how to achieve it, and can explain it clearly. However, &lt;a href=&#34;https://bigthink.com/starts-with-a-bang/vibe-physics-ai-slop/&#34;&gt;making it come up with its own ideas&lt;/a&gt; &amp;ndash; I don&amp;rsquo;t mean original ideas, just sensible ones &amp;ndash; is still just science fiction for now. Or marketing.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;The mere fact that Google was using code produced by a direct competitor for one of its development tools seemed, shall we say, rather unusual to me.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;It is true that TextMate and BBEdit are not true IDEs (in particular TextMate), but the difference in size is still impressive.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Several years ago, I developed a &lt;del&gt;C&lt;/del&gt;, er Python program that could do that automatically, but only with images from a particular type of digital oscilloscope.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;The imagination of those who compiled the tables deserves an award.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:5&#34;&gt;&#xA;&lt;p&gt;Even a very busy programming guru like Linus Torvalds uses vibe coding, but only for his own projects. In any case, he only uses it fo &lt;a href=&#34;https://itsfoss.com/news/linus-torvalds-vibe-coding/&#34;&gt;for his little toys&lt;/a&gt;, certainly not for developing the Linux kernel.&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>A year of melabit.com</title>
      <link>https://melabit.com/en/2025/12/31/a-year-of-melabit-com/</link>
      <pubDate>Wed, 31 Dec 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/12/31/a-year-of-melabit-com/</guid>
      <description>&lt;p&gt;2025 was a turning point for this little blog. Leaving the &lt;em&gt;comfort zone&lt;/em&gt; of Wordpress.com was neither easy nor painless, especially when I discovered that &lt;a href=&#34;https://melabit.com/en/2025/01/02/2025-01-02-da-melabit-a-melabit-addio-wordpress-ciao-jekyll/&#34;&gt;once the site was online&lt;/a&gt;, Jekyll was slow, too slow to be usable.&lt;/p&gt;&#xA;&lt;p&gt;Thankfully, &lt;a href=&#34;https://melabit.com/it/2025/05/24/jeeeeeekyll-no-hugo/&#34;&gt;Hugo saved the day&lt;/a&gt;, although there are still many details to be ironed out, first and foremost the website&amp;rsquo;s graphic design.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-12-31-un-anno-di-melabit-com/Gemini_Generated_Image_r0phqqr0phqqr0ph.jpeg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Managing posts in two different languages is not easy, but it is worth it, as posts in English allow to reach a pool of users that would be unimaginable if I only wrote in Italian.&lt;/p&gt;&#xA;&lt;p&gt;The main concern with the new site is the near absence of comments on posts. I don&amp;rsquo;t know if it&amp;rsquo;s because they&amp;rsquo;re too complicated, too long, or both. The fact is that the lack of comments is really worrying. And this is despite the fact that there are a good number of visitors and that on average 5% of them spend 15 minutes or more on the site. Maybe in the end they&amp;rsquo;re too exhausted to comment, who knows!&lt;/p&gt;&#xA;&lt;hr style=&#34;border: none; border-top: 3px double #333; color: #333; overflow: visible; height: 5px; width: 50%; margin-left: auto; margin-right: auto;&#34;&gt;&#xA;&lt;p&gt;Needless to say, I never use AI tools to write the posts. At most, I use them to look up a few technical terms when I can&amp;rsquo;t remember the Italian equivalent (for instance, I always forget that &lt;code&gt;Tab&lt;/code&gt; in Italian is &lt;code&gt;Scheda&lt;/code&gt;, not &lt;code&gt;Linguetta&lt;/code&gt;). Sometimes I try to use AI to improve the flow of a few sentences, but it&amp;rsquo;s almost always a waste of time. In the end, the text sounds so flat that it&amp;rsquo;s better not to write it at all.&lt;/p&gt;&#xA;&lt;p&gt;However, I admit that I use AI for the initial translations. I need it mainly to save typing time, even though it then takes quite a while to refine the result and make the translation more fluid and natural.&lt;/p&gt;&#xA;&lt;p&gt;I also often use AI to generate the images at the top of the posts. In this case, I have no choice. While I&amp;rsquo;m not bad at writing, I&amp;rsquo;ve always been second to last in the class when it comes to drawing and graphics, and only because the last one was really terrible. So I&amp;rsquo;m doing you a favor. But even with Google&amp;rsquo;s much-celebrated &lt;a href=&#34;https://gemini.google/overview/image-generation/&#34;&gt;Nano Banana&lt;/a&gt;, it took a lot of effort to convince it to generate the image for this post, with the right text, the real homepage, and so on. Anyone who says that Nano Banana is so smart that it understands what you want right away is telling you lies.&lt;/p&gt;&#xA;&lt;hr style=&#34;border: none; border-top: 3px double #333; color: #333; overflow: visible; height: 5px; width: 50%; margin-left: auto; margin-right: auto;&#34;&gt;&#xA;&lt;p&gt;If all goes well, 2026 will bring some new developments. I&amp;rsquo;m not sure in what order, but revising the graphic theme is definitely at the top of the list.&lt;/p&gt;&#xA;&lt;p&gt;Stay tuned! In the meantime, best wishes for 2026. May it be a year full of good things and happiness for everyone!&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Photocopied!</title>
      <link>https://melabit.com/en/2025/12/15/photocopied/</link>
      <pubDate>Mon, 15 Dec 2025 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/12/15/photocopied/</guid>
      <description>&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; allowfullscreen=&#34;allowfullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/SVCBA-pBgt0?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&#xA;&lt;p&gt;The video above is the official presentation of &lt;a href=&#34;https://antigravity.google/&#34;&gt;Google Antigravity&lt;/a&gt;, an IDE (&lt;em&gt;Integrated Development Environment&lt;/em&gt;) that is not just a simple IDE but is &amp;ldquo;a new way of working for this next era of agentic intelligence&amp;rdquo;. I haven’t yet figured out what that truly means, but it surely sounds very smart and up‑to‑date.&lt;/p&gt;&#xA;&lt;p&gt;So let&amp;rsquo;s see what this &amp;ldquo;&lt;em&gt;new way of working&lt;/em&gt;&amp;rdquo; is, in which the agents &amp;ldquo;&lt;em&gt;help you experience liftoff&lt;/em&gt;&amp;rdquo;. An expression that back in the day used to mean something quite different.&lt;/p&gt;&#xA;&lt;p&gt;I download the latest version of Google Antigravity (1.11.17), which once installed takes up a whopping 700 MB. Once I get past the usual onboarding screens and log in with my Gmail account, here&amp;rsquo;s what comes up&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-12-15-fotocopiato/google-antigravity.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-12-15-fotocopiato/google-antigravity.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s basically &lt;a href=&#34;https://code.visualstudio.com/&#34;&gt;VS Code&lt;/a&gt; from Microsoft, plus the &lt;em&gt;agentic&lt;/em&gt; tool &lt;code&gt;Antigravity&lt;/code&gt;, whose exact purpose I still don’t know and, more importantly, whether it’s useful.&lt;/p&gt;&#xA;&lt;p&gt;After all, that&amp;rsquo;s essentially what they told me during the onboarding process, when I was presented with a screen offering to either set up the editor from scratch or import settings from VS Code. Or Windsurf.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-12-15-fotocopiato/google-antigravity-setup.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-12-15-fotocopiato/google-antigravity-setup.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Windsurf?&lt;/p&gt;&#xA;&lt;p&gt;Yes, &lt;a href=&#34;https://windsurf.com/&#34;&gt;Windsurf&lt;/a&gt;, an editor derived from &lt;a href=&#34;https://cursor.com/&#34;&gt;Cursor&lt;/a&gt;,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; which in turn was derived from the always-present VS Code.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-12-15-fotocopiato/windsurf.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-12-15-fotocopiato/windsurf.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The similarity (to use a euphemism) becomes obvious when you place them side by side, with Antigravity on the left and Windsurf on the right.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-12-15-fotocopiato/side-by-side.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-12-15-fotocopiato/side-by-side.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Identical.&lt;/p&gt;&#xA;&lt;p&gt;In short, the revolutionary IDE, the &amp;ldquo;&lt;em&gt;new way of working for this upcoming era of agentic intelligence&lt;/em&gt;&amp;rdquo; that &amp;ldquo;&lt;em&gt;helps you liftoff&lt;/em&gt;&amp;rdquo;, is nothing more than a clone of an editor that was already a clone of another editor that was itself a clone&amp;hellip;&lt;/p&gt;&#xA;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; allowfullscreen=&#34;allowfullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/jBXko1pbowA?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&#xA;&lt;p&gt;&lt;a href=&#34;https://levelup.gitconnected.com/the-2-4b-clone-how-three-companies-carved-up-one-startup-in-72-hours-36039524a9bb&#34;&gt;Digging a little deeper&lt;/a&gt; it is easy to learn that Google spent $2.4 billion to acquire the Windsurf code and hire its two founders, Varun Mohan and Douglas Chen, along with a handful of the company’s developers.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; However, fearing antitrust intervention, Google avoided buying the actual product or the brand, so that Windsurf continues to exist and be developed independently, trying to repeat the David versus Goliath story.&lt;/p&gt;&#xA;&lt;p&gt;It is a more or less as if, in the 1980s, Microsoft had hired Steve Jobs and Steve Wozniak, maybe also Bill Atkinson, Andy Hertzfeld, and Susan Kare, taking the original Macintosh code with them. Then re‑releasing it a few months later as Windows 1.0. In the meantime, Apple would have continued to develop the same code for the original Mac.&lt;/p&gt;&#xA;&lt;p&gt;I get the feeling that the Google team used something else to liftoff.&lt;/p&gt;&#xA;&lt;p&gt;But putting the (silly) jokes aside, are the &lt;em&gt;agents&lt;/em&gt; in Antigravity actually useful during development? I’m not sure myself, and that’s what we’ll find out live next time.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;If you&amp;rsquo;re interested in the controversy that followed the latest price hikes at Cursor, you can read about it &lt;a href=&#34;https://medium.com/@chrisdunlop_37984/wtf-is-cursor-doing-with-its-pricing-i-have-to-swap-at-this-rate-63681001a08e&#34;&gt;here&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;The post is behind a paywall, but you can read it freely &lt;a href=&#34;https://freedium-mirror.cfd/https://levelup.gitconnected.com/the-2-4b-clone-how-three-companies-carved-up-one-startup-in-72-hours-36039524a9bb&#34;&gt;here&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>macOS Tahoe: let&#39;s free the icons!</title>
      <link>https://melabit.com/en/2025/11/24/macos-tahoe-lets-free-the-icons/</link>
      <pubDate>Mon, 24 Nov 2025 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/11/24/macos-tahoe-lets-free-the-icons/</guid>
      <description>&lt;p&gt;It is not just a matter of &lt;a href=&#34;https://melabit.com/en/2025/11/10/ancora-macos-tahoe/&#34;&gt;disk icons&lt;/a&gt;. As soon as I saw what Tahoe had done to the icons of many applications installed on my Mac, I decided I had to do something to restore the original look of the icons.&lt;/p&gt;&#xA;&lt;p&gt;I tried several times, using Apple’s home‑automation tools, &lt;code&gt;Automator&lt;/code&gt; and &lt;code&gt;Shortcuts&lt;/code&gt;, but nothing worked and there was always some function missing. Or maybe I’m just not very good at using them.&lt;/p&gt;&#xA;&lt;p&gt;Then I discovered &lt;a href=&#34;https://github.com/mklement0/fileicon&#34;&gt;fileicon&lt;/a&gt;, a library available on &lt;a href=&#34;https://brew.sh/&#34;&gt;Homebrew&lt;/a&gt; that lets you programmatically modify file and folder icons. With that, the problem was practically solved.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/hennie-stander-ACmOuY2lOug-unsplash.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://unsplash.com/@henniestander&#34;&gt;Hennie Stander&lt;/a&gt; on&#xA;&lt;a href=&#34;https://unsplash.com&#34;&gt;Unsplash&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;h4 id=&#34;the-squircle-jail&#34;&gt;The &lt;em&gt;squircle&lt;/em&gt; jail&lt;/h4&gt;&#xA;&lt;p&gt;With Tahoe Apple introduced a new icon format that now has to conform to the default shape of a &lt;a href=&#34;https://dev.to/ndesmic/how-to-draw-squircles-and-superellipses-3d14&#34;&gt;squircle&lt;/a&gt;, a cross between a square and a circle (or a superellipse, for those who enjoy mathematics).&lt;/p&gt;&#xA;&lt;p&gt;Apple redesigned its application icons to fit the new format and the aesthetic standards of Liquid Glass, although the final effect is often quite debatable. Even John Gruber &lt;a href=&#34;https://daringfireball.net/linked/2025/11/07/tahoes-terrible-icons&#34;&gt;doesn’t spare criticism of this aspect&lt;/a&gt;, going so far as to call the designer of the Automator icon &lt;em&gt;a hack who never should have even gotten a job working at Apple&lt;/em&gt; (and how can one say he&amp;rsquo;s wrong?).&lt;/p&gt;&#xA;&lt;p&gt;The problem, however, isn’t just that many Apple application icons &lt;a href=&#34;https://onefoottsunami.com/2025/11/05/tahoes-terrible-icons/&#34;&gt;lost meaning or are outright ugly&lt;/a&gt;, but also that many third‑party application icons don’t fit properly into the &lt;em&gt;jail&lt;/em&gt; represented by the squircle.&lt;/p&gt;&#xA;&lt;p&gt;It happens with all those applications that have beatifully-crafted icons, such as Audio Hijack, BBEdit, Alfred, Amphetamine, VLC, NValt, Gemini 2, HandBrake, Keyboard Maestro and so on.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/audiohijack.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/BBEditApplication.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/alfred.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/HandBrake.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/VLC.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/Gemini2.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;These are all well-known applications built by medium-to-large teams. Yet overe these months they haven’t deemed it necessary (or useful) to adapt their gorgeous icons to the new standard imposed by Tahoe.&lt;/p&gt;&#xA;&lt;p&gt;And imagine if the smaller developers, or those building cross‑platform  applications where a unique, recognizable look is essential, have done it either.&lt;/p&gt;&#xA;&lt;p&gt;What happens in those cases? Tahoe automatically shrinks the icons of these applications and encloses them within the &lt;em&gt;squircle&lt;/em&gt;. Moreover, almost as if to remind developers to hurry up and comply with Cupertino&amp;rsquo;s dictates, it places these icons on a gray background which calling ugly would be an understatement.&lt;/p&gt;&#xA;&lt;p&gt;In the first beta of Tahoe the final result was simply hawful, as you can see in the images from my &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-rimandato-a-settembre/#il-finder&#34;&gt;first article on Tahoe&lt;/a&gt;. Moreover, this brutal treatment made some icons almost invisible (Tunnelblick, QGIS, OpenMV IDE, Thonny).&lt;/p&gt;&#xA;&lt;p&gt;In the public version of Tahoe, released in September, and in the subsequent updates, Apple toned down some of the transparency excesses of Liquid Glass and also lightened the gray background of the icons that refused to fit within the &lt;em&gt;squircle&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/tahoe-release-applications.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/tahoe-release-other-applications.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;The final effect is undoubtedly better.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; However, the gray‑bordered icons are still ugly and much smaller than they could (and should) be.&lt;/p&gt;&#xA;&lt;p&gt;Can we do something to bring back the look they had before the Tahoe &lt;em&gt;treatment&lt;/em&gt;?&lt;/p&gt;&#xA;&lt;h4 id=&#34;lets-free-the-icons&#34;&gt;Let’s Free the Icons&lt;/h4&gt;&#xA;&lt;p&gt;Obviously the answer is yes, otherwise I wouldn’t have written this post.&lt;/p&gt;&#xA;&lt;p&gt;The manual method is &lt;a href=&#34;https://simonbs.dev/posts/how-to-bring-back-oddly-shaped-app-icons-on-macos-26-tahoe/&#34;&gt;described very well here&lt;/a&gt; and requires right‑clicking the application icon, selecting &lt;code&gt;Get Info&lt;/code&gt; and replacing the icon thumbnail with the one that lives inside the  application bundle itself.&lt;/p&gt;&#xA;&lt;p&gt;To find it, right‑click the application icon again, choose &lt;code&gt;Show Package Contents&lt;/code&gt;, click on the &lt;code&gt;Contents&lt;/code&gt; folder, then on &lt;code&gt;Resources&lt;/code&gt; and look for the file with the &lt;code&gt;.icns&lt;/code&gt; extension (keeping in mind that some  applications may contain more than one such file) and drag it onto the thumbnail in the &lt;code&gt;Get Info&lt;/code&gt; window.&lt;/p&gt;&#xA;&lt;p&gt;It sounds complicated but, with a bit of practice, it becomes fairly quick. This manual method works fine if you only have a few  applications to fix. But if, as in my case, there are more than 20 applications, it quickly becomes tedious and error-prone. And, as if that weren&amp;rsquo;t enough, you&amp;rsquo;ll probably have to repeat the process every time the application is updated.&lt;/p&gt;&#xA;&lt;p&gt;Better to let your Mac do everything automatically. And that&amp;rsquo;s where &lt;a href=&#34;https://github.com/sabinomaggi/IconLib&#34;&gt;IconLib&lt;/a&gt; comes in.&lt;/p&gt;&#xA;&lt;h4 id=&#34;iconlib&#34;&gt;IconLib&lt;/h4&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://github.com/sabinomaggi/IconLib&#34;&gt;IconLib&lt;/a&gt; is a simple Bash script that automates the whole process, relying on the &lt;a href=&#34;https://github.com/mklement0/fileicon&#34;&gt;fileicon&lt;/a&gt; library to actually perform the icon modification. All you have to do is provide it with a file containing the list of applications to update &amp;ndash; and sometimes the name of the &lt;code&gt;.icns&lt;/code&gt; file too, because, darn it!, many developers use icon filenames that have nothing to do with the  application name and often bundle multiple &lt;code&gt;.icns&lt;/code&gt; files inside the  application bundle &amp;ndash; and it does the rest.&lt;/p&gt;&#xA;&lt;p&gt;If you’re not happy with the result, you can run the script again with the &lt;code&gt;-u&lt;/code&gt; switch (for &lt;code&gt;undo&lt;/code&gt;), restoring the Tahoe icons.&lt;/p&gt;&#xA;&lt;p&gt;You can also run IconLib on a list of applications, and then later edit the list to restore the icons for only the selected applications, leaving the others in their pre-Tahoe state.&lt;/p&gt;&#xA;&lt;p&gt;All the details are in the &lt;a href=&#34;https://github.com/sabinomaggi/IconLib&#34;&gt;README file of the GitHub repository&lt;/a&gt; and I won’t repeat them here. Instead I’ll just show how the icons look after fixing them with &lt;code&gt;IconLib&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/tahoe-applications-fixed.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-11-24-macos-tahoe-liberiamo-le-icone/tahoe-other-applications-fixed.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Even though the old icons don’t follow the stylistic dictates of the &lt;em&gt;squircle&lt;/em&gt;, the richer, less constrained look and the absence of the gray background make me prefer them, at least until developers roll out new icons better suited for Tahoe.&lt;/p&gt;&#xA;&lt;p&gt;Bare Bones Software just did it for BBEdit. The fact that such a major software house took so long indicates it’s no easy task, or that developers hoped (in vain) for months that Apple would backtrack. And if BBEdit took that long, it’s hard to imagine other cross‑platform or niche applications adapting quickly.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;IconLib is not a must‑have program at all and it serves an admittedly narrow audience.&lt;/p&gt;&#xA;&lt;p&gt;First of all, it is useful for people like me, who have many programs installed on their Macs, often produced by &lt;em&gt;indie&lt;/em&gt; developers or by specialist teams that lack the time, desire, or expertise to deal with subtle graphics issues (think, for example, of Tunnelblick, for managing VPNs, Thonny, a must‑have for those who program microcontrollers in Python, or JASP, one of the best statistical programs for those who know little about statistics).&lt;/p&gt;&#xA;&lt;p&gt;It also helps anyone who is dissatisfied with the &lt;em&gt;jail&lt;/em&gt; that Tahoe enforces around the formerly magnificent icons of many applications.&lt;/p&gt;&#xA;&lt;p&gt;Finally, it assists those who think Apple is overdoing this trend in macOS, which increasingly feels like an offshoot of iOS rather than a standalone system deserving its own life.&lt;/p&gt;&#xA;&lt;p&gt;And lastly, it serves those who think Apple is going too far with this drift in macOS, which increasingly seems more like a by-product of iOS than an operating system worth its own independent existence.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;While they were at it, couldn&amp;rsquo;t they have used a white background?&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>macOS Tahoe, again</title>
      <link>https://melabit.com/en/2025/11/10/macos-tahoe-again/</link>
      <pubDate>Mon, 10 Nov 2025 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/11/10/macos-tahoe-again/</guid>
      <description>&lt;p&gt;After less than two months since the official release, Tahoe seems poised to become another one of those macOS versions to be forgotten, like Lion, Mavericks, Sierra, Catalina, or Ventura.&lt;/p&gt;&#xA;&lt;p&gt;Aside from Liquid Glass, which I&amp;rsquo;ll discuss in a moment, &lt;a href=&#34;https://www.macworld.com/article/2957775/7-macos-26-features-you-might-have-missed.html&#34;&gt;what does Tahoe have that&amp;rsquo;s memorable&lt;/a&gt;? There&amp;rsquo;s the telephone‑call filter, which actually belongs more to iOS than macOS and still has many limitations, and there are also improvements to Spotlight search. But is it really worth upgrading an operating system just for that?&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Liquid Glass should be the real novelty of macOS 26 Tahoe, but Macworld first &lt;a href=&#34;https://www.macworld.com/article/2861170/this-too-shall-glass.html&#34;&gt;compared it to Vista&lt;/a&gt; and then &lt;a href=&#34;https://www.macworld.com/article/2953108/rip-liquid-glass-september-15-november-3-2025.html&#34;&gt;declared it dead&lt;/a&gt; in the cradle. If Macworld says so &amp;ndash; not PCWorld, not Linux Pro -— there&amp;rsquo;s definitely something to be concerned about!&lt;/p&gt;&#xA;&lt;p&gt;Moreover, Liquid Glass went wrong from the very beginning, when some joker thought of &lt;a href=&#34;https://512pixels.net/2025/06/wwdc25-macos-tahoe-breaks-decades-of-finder-history/&#34;&gt;inverting the colors of the Finder icon&lt;/a&gt;. Without any particular reason, just for sake of change.&lt;/p&gt;&#xA;&lt;p&gt;The criticism was so destructive that Apple had to backtrack quickly, &lt;a href=&#34;https://www.macrumors.com/2025/06/23/macos-tahoe-2-finder-color-change/&#34;&gt;restoring the historic &lt;em&gt;design&lt;/em&gt; of the Finder icon&lt;/a&gt;, the one we&amp;rsquo;ve known for thirty years and that is one of macOS&amp;rsquo;s distinctive marks.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-11-10-ancora-macos-tahoe/tahoe-internal-ssd.gif&#34; alt=&#34;&#34;&gt;&lt;p&gt;Haowever, when it came to disk icons Apple managed to do even worse. In the very early betas of Tahoe the disk icons were identical to the ones we&amp;rsquo;ve been used to for years: the image of a mechanical hard‑disk for internal drives and a rounded orange rectangular prism for external drives. Very &lt;em&gt;skeuomorphic&lt;/em&gt;, but also very clear and even pleasant to look at, with all those little screws, colored LEDs, and even a label warning us not to open the disk.&lt;/p&gt;&#xA;&lt;p&gt;With the fifth beta of Tahoe, Apple &lt;a href=&#34;https://arstechnica.com/gadgets/2025/08/rip-to-the-macintosh-hd-hard-drive-icon-2000-2025/&#34;&gt;throws the old hard‑disk icon into the trash&lt;/a&gt; and replaces it with a more stylized image that should represent the SSD installed in all Macs for years.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; While it&amp;rsquo;s at it, it also freshens up the other disk icons (external, network, and removable) and the result is shown below, where the top row displays the disk icons up to Sequoia and the earliest Tahoe betas, while the bottom row shows the updated icons.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-10-ancora-macos-tahoe/disks-2-1440x810.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://arstechnica.com/gadgets/2025/08/rip-to-the-macintosh-hd-hard-drive-icon-2000-2025/&#34;&gt;Ars Technica&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Soon after, the internal‑disk icon loses all front elements, that perhaps were meant to represent ventilation slots or activity LEDs, and becomes as minimal as the others.&lt;/p&gt;&#xA;&lt;p&gt;Admittedly, the new icons are bland, having lost all detail in favour of greater simplicity, just as has happened to the rest of the graphical interface built around Liquid Glass. But so far that&amp;rsquo;s fine.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;What&amp;rsquo;s incomprehensible is why the icons were redesigned to &lt;strong&gt;appear narrower in the front and wider in the back&lt;/strong&gt;, defying the laws of perspective and how we&amp;rsquo;ve been accustomed to seeing them up to Sequoia. It&amp;rsquo;s merely an optical illusion; in reality (&lt;a href=&#34;https://apps.apple.com/it/app/red-lines-tools/id1469400117&#34;&gt;I checked&lt;/a&gt;) the icons have perfectly parallel sides, but the play of light and shadow makes them look odd and out of place.&lt;/p&gt;&#xA;&lt;p&gt;The effect worsens when the icons are placed side-by-side, because the differing reflections make the gray internal‑disk icon look more natural and less distorted compared to the external units.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-11-10-ancora-macos-tahoe/tahoe-disk-icons.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-11-10-ancora-macos-tahoe/tahoe-disk-icons.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Now, I can understand the need to adopt a homogeneous and well-defined graphic language, but wasn&amp;rsquo;t it possible to design icons that looked more natural? &lt;a href=&#34;https://www.mac-history.net/2023/01/19/susan-kare-pixel-design-apple-mac/&#34;&gt;Susan Kare&lt;/a&gt; managed it with just 32×32 pixels, how can we think that today&amp;rsquo;s Apple designers, who today have immense fields of pixels at their disposal, can&amp;rsquo;t do the same?&lt;/p&gt;&#xA;&lt;p&gt;If Cupertino can&amp;rsquo;t even produce a convincing disk icon, how can we trust that Tahoe and Liquid Glass are serious projects?&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;The annual macOS update cycle is good for marketing, but from a technical point of view it makes very little sense. Not only because it&amp;rsquo;s hard to invent truly novel features for each annual release of macOS, but also because this relentless quest for novelty distracts from equally important activities such as fixing bugs in the current version and optimizing system performance.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Actually, the new internal‑disk icon has nothing to do with an actual internal SSD image, but we won&amp;rsquo;t be too pedantic about it.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Is it still worth learning languages with Duolingo?</title>
      <link>https://melabit.com/en/2025/10/23/is-it-still-worth-learning-languages-with-duolingo/</link>
      <pubDate>Thu, 23 Oct 2025 18:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/10/23/is-it-still-worth-learning-languages-with-duolingo/</guid>
      <description>&lt;p&gt;Learning a language is hard work: you have to learn vocabulary, study grammar, repeat endlessly. And then, once you know a bit of the language, you have to start reading, listening, speaking with others. In short, it&amp;rsquo;s no joke.&lt;/p&gt;&#xA;&lt;p&gt;In the past it was even worse. We studied from massive tomes full of rules, made especially to make you hate the language. My high‑school English book dedicated fifteen pages just to the use of the definite article &amp;ldquo;the&amp;rdquo;. I never read a single line of that book.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, there were courses with discs or tapes. In middle school I learned English with one of those, a Reader&amp;rsquo;s Digest course borrowed from an uncle. It had to be good, because in the end I could read and speak English reasonably well.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/6169764a-9465-4fc7-8061-77a32f2b9459.jpg&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&amp;ndash; Source: &lt;a href=&#34;https://www.subito.it/libri-riviste/l-inglese-d-oggi-selezione-dal-reader-s-digest-milano-614454764.htm&#34;&gt;subito.it&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;I didn&amp;rsquo;t do it for noble reasons, but only because I wanted to preview the original Spider‑Man and Fantastic Four comics that I found, with great effort, at a downtown newsstand.&lt;/p&gt;&#xA;&lt;p&gt;Old times! Today there is a mountain of apps that claim to teach languages, from the classic ones like English, French or Spanish, to more exotic languages such as Finnish, Chinese, Japanese or Korean, and even niche ones like Navajo, Hawaiian or, yes, Klingon.&lt;/p&gt;&#xA;&lt;p&gt;The most famous app is undoubtedly &lt;a href=&#34;https://www.duolingo.com/&#34;&gt;Duolingo&lt;/a&gt;, &amp;ldquo;&lt;em&gt;The free, effective, and fun method to learn languages!&lt;/em&gt;” which has dethroned the venerable &lt;a href=&#34;https://www.rosettastone.com/&#34;&gt;Rosetta Stone&lt;/a&gt;. But a quick look at the iOS App Store (or Google Play for Android users) shows dozens of alternatives, from &lt;a href=&#34;https://www.babbel.com/&#34;&gt;Babbel&lt;/a&gt; to &lt;a href=&#34;https://lingvist.com/&#34;&gt;Lingvist&lt;/a&gt;, to &lt;a href=&#34;https://www.busuu.com/&#34;&gt;Busuu&lt;/a&gt;, &lt;a href=&#34;https://www.memrise.com/&#34;&gt;Memrise&lt;/a&gt;, &lt;a href=&#34;https://www.mondly.com/&#34;&gt;Moondly&lt;/a&gt;, &lt;a href=&#34;https://www.mosalingua.com/&#34;&gt;Mosalingua&lt;/a&gt;, &amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;But is it really possible to learn a language by spending a few minutes a day on a phone? And more importantly, does it still make sense to do it with Duolingo?&lt;/p&gt;&#xA;&lt;h4 id=&#34;four-years-with-duolingo&#34;&gt;Four Years with Duolingo&lt;/h4&gt;&#xA;&lt;p&gt;I used Duolingo every day for four straight years to study German. I think I learned something, because I passed the &lt;a href=&#34;https://www.goethe.de/ins/it/it/spr/kon/stu.html&#34;&gt;A2 level exam&lt;/a&gt;. But, to be honest, if I started today I wouldn&amp;rsquo;t do it again.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2405.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2405-small.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;h5 id=&#34;some-lights&#34;&gt;Some lights&lt;/h5&gt;&#xA;&lt;p&gt;There&amp;rsquo;s no doubt Duolingo is cute, fun, and a pleasant daily habit. Its biggest advantage is that &lt;strong&gt;it doesn&amp;rsquo;t focus on grammar for its own sake&lt;/strong&gt;, but teaches it through practical language use, putting grammatical rules in the background. In general it works, although occasionally it would be useful to dive deeper into more complex rules.&lt;/p&gt;&#xA;&lt;p&gt;Another plus is that &lt;strong&gt;you can decide how much time to devote to study&lt;/strong&gt;. I always spent little, say 10-15 minutes a day, so after four years I&amp;rsquo;m still at the beginning of level B1, and at this pace it would take another two years to finish it.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Finally, there&amp;rsquo;s the game-like nature of the app. As I said, &lt;strong&gt;Duolingo is enjoyable and even fun&lt;/strong&gt;, which is a strong incentive to open the app every day. The challenge of maintaining your &lt;em&gt;streak&lt;/em&gt; of consecutive lessons also helps to ensure that you study regularly.&lt;/p&gt;&#xA;&lt;h5 id=&#34;and-many-shadows&#34;&gt;And many shadows&lt;/h5&gt;&#xA;&lt;p&gt;&lt;strong&gt;But its game-like nature is also one of Duolingo&amp;rsquo;s biggest flaws.&lt;/strong&gt; If you overdo it and get too caught up in the XP points competition with other users, a study session that should be relaxed turns into a race to collect as many points as possible and climb the global leaderboard, just like a video game.&lt;/p&gt;&#xA;&lt;p&gt;I made that mistake myself. I used tricks and hacks of every kind, managing to reach the third place in the &lt;em&gt;Diamond League&lt;/em&gt;, the highest and most prestigious level.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2406.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2406-small.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Then I came to my senses and said enough is enough: I turned off my public profile and lose all contact with &lt;em&gt;friends&lt;/em&gt; and (especially) with the competitions. Because doing that I wasn&amp;rsquo;t learning German, I was just playing.  And indeed, from that moment on, things went much smoother.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;The app isn&amp;rsquo;t that great:&lt;/strong&gt; it sometimes crashes and loses lesson progress. Other times it fails to recognise words I just pronounced, yet moves forward and writes down answers I haven&amp;rsquo;t said yet. Occasionally an advertisement won&amp;rsquo;t close, and the only way to continue is to restart the app. No wonder the developers constantly update it, mostly to fix bugs.&lt;/p&gt;&#xA;&lt;p&gt;A major learning issue is that &lt;strong&gt;you can&amp;rsquo;t go back during a lesson&lt;/strong&gt; to review a previous exercise or recall a new word. It feels like reading a Kindle book where you can&amp;rsquo;t flip back to earlier pages. I understand developers want to prevent answer changes (but it would be easy to block), yet from an educational point of view this is a terrible choice.&lt;/p&gt;&#xA;&lt;p&gt;And there&amp;rsquo;s the limited‑effort problem: &lt;strong&gt;learning is rather slow&lt;/strong&gt;. If I&amp;rsquo;d taken a traditional course I would have reached B2 in two years; with Duolingo it took almost four. That can also be seen as an advantage, because without strong motivation it&amp;rsquo;s hard to dedicate a lot of time each day to learn a language (not just this one).&lt;/p&gt;&#xA;&lt;p&gt;But the worst flaw of Duolingo is the &lt;strong&gt;continuous reshuffling of the course organization&lt;/strong&gt;. Years ago there was a total overhaul of lesson structure, causing massive confusion and a flood of criticism.&lt;/p&gt;&#xA;&lt;p&gt;These changes keep happening: the old 20 groups (&lt;em&gt;Units&lt;/em&gt;) of 10 lessons each can suddenly become 40 groups of 5 lessons each. A month later they might become 30 groups of 8 lessons, or 60 of 4. These periodic changes are very annoying, like having to change routes every day because of roadworks.&lt;/p&gt;&#xA;&lt;p&gt;Even worse, &lt;strong&gt;the reason behind these constant modifications isn&amp;rsquo;t clear&lt;/strong&gt;. I get that developers want to improve the code, update the UI, add new features here and there. But Duolingo is a language course, not &lt;em&gt;rocket science&lt;/em&gt; that evolves daily. Even if there were behind it sophisticated studies on the best way to teach a language (but is that really the case?), I doubt such research progresses so quickly that it requires continual course overhauls.&lt;/p&gt;&#xA;&lt;h4 id=&#34;ai-first&#34;&gt;AI-First&lt;/h4&gt;&#xA;&lt;p&gt;A few months ago, following the current trend, &lt;a href=&#34;https://www.theverge.com/news/657594/duolingo-ai-first-replace-contract-workers&#34;&gt;Duolingo&amp;rsquo;s management put AI first&lt;/a&gt;, deciding to &amp;ldquo;&lt;em&gt;replace the slow, manual content‑creation process with one based on artificial intelligence&lt;/em&gt;,” according to co‑founder and CEO Luis von Ahn.&lt;/p&gt;&#xA;&lt;p&gt;He says it&amp;rsquo;s done out of duty, to &amp;ldquo;&lt;em&gt;provide this content to our students as soon as possible&lt;/em&gt;”.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Hovewer, many users didn&amp;rsquo;t receive this well&lt;/strong&gt;. Not only because, for a supposedly caring company, suddenly firing all its external collaborators is a pretty low move, ethically speaking and echoes what Elon Musk did with Twitter.&lt;/p&gt;&#xA;&lt;p&gt;But also because it means that the &lt;strong&gt;production of high-quality content&lt;/strong&gt;, perhaps slower, but also more accurate and reliable, &lt;strong&gt;has become secondary&lt;/strong&gt; to the multiplication and expansion of courses and, consequently, to profit margins.&lt;/p&gt;&#xA;&lt;p&gt;Unsurprisingly, right after the announcement the company &lt;a href=&#34;https://techcrunch.com/2025/04/30/duolingo-launches-148-courses-created-with-ai-after-sharing-plans-to-replace-contractors-with-ai/&#34;&gt;more than doubled its course offering&lt;/a&gt;. And who cares if the translations are often done sloppily.&lt;/p&gt;&#xA;&lt;h4 id=&#34;money-first-too&#34;&gt;Money first, too&lt;/h4&gt;&#xA;&lt;p&gt;Cory Doctorow coined the term &lt;a href=&#34;https://gizmodo.com/enshittification-is-officially-the-biggest-word-of-the-year-2000530173&#34;&gt;enshittification&lt;/a&gt;, described at great length in this &lt;a href=&#34;https://www.theguardian.com/technology/2025/oct/05/way-past-its-prime-how-did-amazon-get-so-rubbish&#34;&gt;recent Guardian article&lt;/a&gt;. At first, web platforms (or the applications derived from them) treat users with white gloves, pampering them to win their trust. Then they start favoring paying customers, to the detriment of everyone else. In the end, in order to monetize more and more, they also abuse paying customers, becoming nothing more than a giant pile of&amp;hellip; shit.&lt;/p&gt;&#xA;&lt;p&gt;A concrete example is &lt;a href=&#34;https://cursor.com/&#34;&gt;Cursor&lt;/a&gt;, hailed as the ultimate AI‑assisted coding editor, which soon turned into an octopus that &lt;a href=&#34;https://medium.com/realworld-ai-use-cases/wtf-is-cursor-doing-with-its-pricing-i-have-to-swap-at-this-rate-63681001a08e&#34;&gt;devours its own (paying) customers&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;What happened to Duolingo mirrors this trajectory: &lt;a href=&#34;http://web.archive.org/web/20130804201050/http://www.duolingo.com/&#34;&gt;initially the app was free to use and free of ads&lt;/a&gt;, and developers promised it would stay that way forever.&lt;/p&gt;&#xA;&lt;p&gt;Later they politely introduced a small monthly fee for extra features, not essential for learning.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Then management took over&lt;/strong&gt;, making life harder for users who &lt;a href=&#34;https://duolingo.com/super&#34;&gt;clung to the free tier&lt;/a&gt;, stripping essential functions like lesson review or error correction, and locking them behind a paid tier.&lt;/p&gt;&#xA;&lt;p&gt;Finally, a few months ago they replaced the old &lt;strong&gt;Hearts&lt;/strong&gt; system with a new &lt;strong&gt;Energy&lt;/strong&gt; system, represented by a battery icon that drains. A true, scientifically performed scam.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Until July, before a lesson you had up to five Hearts. Each mistake cost a Heart, which could be regained by waiting a few hours, watching an ad or, until a couple of years ago, doing a &amp;ldquo;practice” lesson.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt; This meant that &lt;strong&gt;users who made few mistakes could do virtually unlimited lessons&lt;/strong&gt;, with only occasional ads.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;With Energy this is no longer possible.&lt;/strong&gt; Now you have 25 Energy units, and each response (not each mistake!) consumes one unit. After a streak of correct answers you regain a few units, but never too much. At the end, you can only do two flawless lessons before needing to recharge, three if you&amp;rsquo;re lucky. Energy recharges only via ads, not by reviewing!&lt;/p&gt;&#xA;&lt;p&gt;And if you try to redo a whole lesson group to hit the &lt;em&gt;Legendary&lt;/em&gt; checkpoint, each question costs two Energy units, leaving you with a near‑empty battery even without errors (see image below).&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2413.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2413-small.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;It&amp;rsquo;s crystal clear that this mechanism is a &lt;strong&gt;strong push toward the paid Super Duolingo and the newer Duolingo Max plans&lt;/strong&gt; where, going against all the laws of physics, Energy (or the number of Hearts) is unlimited. Moreover, although paid plans do remove ads, even Super Duolingo still forces you to watch ads promoting Duolingo Max.&lt;/p&gt;&#xA;&lt;h4 id=&#34;how-much-does-super-duolingo-cost&#34;&gt;How Much Does Super Duolingo Cost?&lt;/h4&gt;&#xA;&lt;p&gt;Good question, given that &lt;strong&gt;it&amp;rsquo;s very difficult to find out how much Super Duolingo or Duolingo Max cost&lt;/strong&gt;. If you go to the website, you&amp;rsquo;ll only find a &lt;a href=&#34;https://www.duolingo.com/super&#34;&gt;very nice page&lt;/a&gt; but, unlike any other paid service, there are no prices listed.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/super-duolingo.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The only way to find out is to start the free trial week. After onboarding and the first dull lesson, the screen reveals that Super Duolingo costs €10.99 per month. Paying annually drops it to €6.25 per month (€75 per year). The annual Family plan costs €8.84 per month (€106 per year) and can be shared with up to five other people.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/super-duolingo-plans-euro.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;&lt;a href=&#34;https://talkreal.org/en/blog/duolingo-costs/&#34;&gt;Prices in dollars are similar&lt;/a&gt;: the base Super Duolingo plan costs $12.99/month, or $6.99/month if billed yearly (for a total of $83.88/year). The Family plan is $9.99/month (i.e $119.88/year).&lt;/p&gt;&#xA;&lt;p&gt;Duolingo Max is even less transparent, but estimates put it around $30/month or $168/year. In my view, Duolingo Max isn&amp;rsquo;t worth it compared to Super Duolingo, it only adds a few extra feature: help on errors and the ability to chat with an artificial avatar, which feels far more awkward than talking to a real teacher (I have tried it myself).&lt;/p&gt;&#xA;&lt;p&gt;At first glance, the annula Super Duolingo plan looks very affordable, and the Family plan is even more so, even if shared with only one other user. There are often discount offers as well. &lt;strong&gt;But price isn&amp;rsquo;t the only factor to consider&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;h4 id=&#34;does-duolingo-still-make-sense&#34;&gt;Does Duolingo still make sense?&lt;/h4&gt;&#xA;&lt;p&gt;When Duolingo launched in 2011, &lt;strong&gt;the developers solemnly promised it would stay free and ad‑free, forever&lt;/strong&gt;. Nothing lasts forever on the web, but it&amp;rsquo;s also true that these promises helped to build an active community of users who made Duolingo grow and flourish. Breaking these promises is like slapping  in the face those who trusted you.&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;p&gt;Duolingo was funded by the &lt;strong&gt;&lt;a href=&#34;https://www.nsf.gov/science-matters/nsf-gave-duolingo-its-wings&#34;&gt;National Science Foundation&lt;/a&gt;&lt;/strong&gt;, i.e., public money. The original idea relied on &lt;a href=&#34;https://www.forbes.com/sites/parmyolson/2014/01/22/crowdsourcing-capitalists-how-duolingos-founders-offered-free-education-to-millions/&#34;&gt;&lt;em&gt;crowdsourcing&lt;/em&gt;&lt;/a&gt;: users learned a language for free while helping translate website content. All costs were covered by the sites that used the translations, under the banner that &amp;ldquo;&lt;em&gt;Free education will truly change the world&lt;/em&gt;”.&lt;/p&gt;&#xA;&lt;p&gt;In hindsight, it was a bizarre business model, given that in just a few years, AI-based translation systems have become so good that all that manual crowdsourced work that seemed so ingenious has become unnecessary.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;/br&gt;&#xA;&lt;p&gt;The value of Duolingo lay mainly in its community of users, people who spread the app by word‑of‑mouth, contributed improvements, and kept the forum discussions lively. In short, that made it feel like a &lt;em&gt;living thing&lt;/em&gt; rather than a mere product. Duolingo’s management is tossing all of that away in the name of a god called money. For example, the forums were brutally shut down because they offered free help to users, help that is now available only with the top‑tier plan, Duolingo Max.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;But Duolingo hasn’t only betrayed the original spirit by becoming an &lt;em&gt;also paid product&lt;/em&gt;&lt;/strong&gt;. It has also &lt;strong&gt;rendered the much‑boasted &lt;em&gt;free forever&lt;/em&gt; plan almost unusable&lt;/strong&gt;, a plan that is now clogged with ads and has been stripped of many essential features that are available only in the Super and Max tiers.&lt;/p&gt;&#xA;&lt;p&gt;I can perfectly understand that the creators of an app need money to run the infrastructure, pay developers, and so on. But then they have to choose. They can choose to offer a free app with fewer features than the paid one. Or they can offer a fully functional free app supported by advertising, while the paid version is ad‑free.&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;But they can’t do both at the same time&lt;/strong&gt;: remove lots of useful language‑learning features and simultaneously fill the app with ads. And, as if that were not enough, let the quality of the courses drop.&lt;/p&gt;&#xA;&lt;p&gt;Because there’s no doubt that, after all the changes of recent years, &lt;strong&gt;the quality of Duolingo’s language courses has also declined&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;There’s less variety in the sentences you’re asked to translate, and the translations become increasingly literal, word‑for‑word, probably because there’s no longer any &lt;em&gt;human&lt;/em&gt; inserting less mechanical alternatives into the solution database. The pool of words available in translation exercises is smaller, so you often end up merely arranging them in the correct order without having to choose between similar terms. Even the short stories are always the same; it’s been months since I was offered a new story to read.&lt;/p&gt;&#xA;&lt;p&gt;The new course structure also contributes to this qualitative decay. When I started, four years ago, the courses were organized in a more traditional way, with lessons focused on clearly defined topics (&lt;em&gt;Skills&lt;/em&gt;), ranging from basic concepts to food, animals, travel, and so on. The Skills were laid out in parallel tracks, so on any given day you could decide to do a lesson on plurals and another on food, and the next day focus on animals.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/Skill_advancement_-_percentage.png&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Fonte: &lt;a href=&#34;https://duolingo.fandom.com/wiki/Skill&#34;&gt;Duolingo Wiki&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Once you finished a Skill, a numeric crown icon gave a visual cue that you needed to revisit that Skill periodically, reinforcing your grasp of the topic.&lt;/p&gt;&#xA;&lt;p&gt;All of that vanished in 2022 with the introduction of the &lt;em&gt;Path&lt;/em&gt; in place of Skills. The Path arranges instruction linearly, forcing you to finish a given set of lessons (in purple in the image below) before moving on to the next set (light‑gray, indicating it’s still locked). Nothing prevents you from going back in the Path and repeating one or more lessons, But there’s also no incentive to do so, as there was with the old crown system.&lt;/p&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2414.png&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-10-23-ma-si-puo-davvero-imparare-una-lingua-con-duolingo/IMG_2414-small.png&#34; alt=&#34;&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The current linear Path resembles game levels, where you are required to finish a given level before unlocking the next. Clearly, this approach prioritises &lt;strong&gt;gamification over the pedagogical purpose of the app&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;p&gt;If that weren’t enough, &lt;strong&gt;the very lessons now feel far more mechanical and repetitive than before&lt;/strong&gt;. I can’t say for certain whether a traditional course like the German one I’m following has already been &lt;em&gt;poisoned&lt;/em&gt; by AI‑generated content, but that’s the impression I get. I dare not imagine what’s happening in the newer, less‑popular courses (and I was hoping to learn Hawaiian… 🤣).&lt;/p&gt;&#xA;&lt;p&gt;Lastly, there’s the &lt;strong&gt;cost‑benefit ratio&lt;/strong&gt;. In four years on Duolingo I completed the &lt;a href=&#34;https://www.goethe.de/ins/it/it/spr/kon/stu.html&#34;&gt;A1 and A2 levels&lt;/a&gt;, let’s say I spent roughly two years on each level. I always used the free plan because, making few mistakes, the five Hearts available were more than enough. And even when I occasionally lost all my Hearts, I could recover them with a quick review lesson, which never hurts.&lt;/p&gt;&#xA;&lt;p&gt;Today I couldn’t do the same, unless I’m willing to waste a lot of time watching endless ads, which distracts and kills the desire to do a lesson.&lt;/p&gt;&#xA;&lt;p&gt;The alternative would be to switch to the Super Duolingo plan, which in my usage scenario would mean spending about €150 for each new language level. That’s not a huge amount of money if you consider that a &lt;a href=&#34;https://www.goethe.de/ins/us/en/spr/kur.html&#34;&gt;traditional online course&lt;/a&gt; can cost three or four times as much. But it’s a lot when you factor in that the aggressive &lt;em&gt;gamification&lt;/em&gt; of recent years, combined with pervasive AI, has turned Duolingo &lt;strong&gt;from a program for learning languages into a language‑based game&lt;/strong&gt;. And for a game like that, €150 is a high price to pay.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;If learning a language is just a hobby or a distraction, using Duolingo for free can still work. But if you&amp;rsquo;re serious, paying for Super Duolingo makes little sense.&lt;/p&gt;&#xA;&lt;p&gt;Luckily, there are several &lt;a href=&#34;https://talkreal.org/en/blog/duolingo-alternatives/&#34;&gt;better alternatives&lt;/a&gt;, check out the reviews on &lt;a href=&#34;https://talkreal.org/en/&#34;&gt;this specialized site&lt;/a&gt; for more information. Personally, I would choose &lt;a href=&#34;https://it.rosettastone.com/&#34;&gt;Rosetta Stone&lt;/a&gt;, which teaches languages intuitively, like a child learns its mother tongue.&lt;/p&gt;&#xA;&lt;p&gt;Rosetta Stone does cost more than Super Duolingo, but it uses a solid method and has a &lt;a href=&#34;https://it.rosettastone.com/acquista/&#34;&gt;transparent pricing structure&lt;/a&gt;). Also, frequent promotions often let you buy perpetual access to all courses for just a bit more than two years of Super Duolingo.&lt;/p&gt;&#xA;&lt;p&gt;Currently I&amp;rsquo;m taking a traditional online course at the B1 level with a handsome, native-speaking human teacher, an &lt;a href=&#34;https://deutschfuchs.de/&#34;&gt;e-learning platform&lt;/a&gt;, and useful interaction with my classmates, and I don&amp;rsquo;t have time for anything else. Once that course finishes, I&amp;rsquo;ll probably give Rosetta Stone a try.&lt;/p&gt;&#xA;&lt;p&gt;In the meantime I&amp;rsquo;ll keep spending a few minutes a day on Duolingo, more out of habit and to review what I&amp;rsquo;ve learnt than to learn new material. Four years together aren&amp;rsquo;t easily forgotten!&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Some people brag about &lt;a href=&#34;https://medium.com/swlh/i-completed-italian-on-duolingo-was-it-honestly-worth-doing-26b4c2df9018&#34;&gt;completing a “course” in a year or less&lt;/a&gt;. Excluding the usual idiots on YouTube, they usually refer just to the A1 &amp;ldquo;level&amp;rdquo;, not the entire curriculum, which for German is structured across three levels: A1, A2, and B1. Studying just half an hour a day can comfortably get you through A1 in a year.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Energy is currently active only on iOS; Android users and web‑app users have been exempt from this change for now. If this is a large‑scale A/B test, it doesn’t make much sense.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;There was also the option to restore the 5 Hearts by spending a certain number of &amp;ldquo;gems&amp;rdquo;, exactly like many &lt;em&gt;freemium&lt;/em&gt; games.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Surviving Don Rodrigo</title>
      <link>https://melabit.com/en/2025/08/24/surviving-don-rodrigo/</link>
      <pubDate>Sun, 24 Aug 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/08/24/surviving-don-rodrigo/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-24-sopravvivere-a-don-rodrigo/4d7bc53c4a864b0c.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://www.macworld.com/article/2870568/apple-ceo-tim-cook-presents-special-gold-gift-to-donald-trump.html&#34;&gt;Macworld&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The contrast between the two characters is striking. Tim Cook was born into a working-class family of the Deep South and rose to lead the world’s most important technology company through his own hard work and talent. He is openly gay and proud of it, as well as a &lt;a href=&#34;https://www.nbcnews.com/nbc-out/out-news/apples-tim-cook-raises-concern-lgbtq-laws-us-rcna19662&#34;&gt;defender&lt;/a&gt; of the &lt;a href=&#34;https://web.archive.org/web/20141028120600/http://www.nytimes.com/2014/10/28/technology/apples-tim-cook-calls-on-alabama-to-protect-gay-rights.html&#34;&gt;rights&lt;/a&gt; of &lt;a href=&#34;https://abcnews.go.com/Technology/apple-ceo-tim-cook-reacted-supreme-courts-sex/story?id=32050236&#34;&gt;minorities&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Donald Trump is a spoiled rich kid who managed to fail in all his business ventures. He is a &lt;a href=&#34;https://www.ilpost.it/2024/12/30/condanna-appello-trump-carroll/&#34;&gt;convicted rapist&lt;/a&gt; and a close friend of pedophiles. He likes to act like a boss, but he is actually just a &lt;a href=&#34;https://en.wikipedia.org/wiki/Trump_Always_Chickens_Out&#34;&gt;cowardly chick&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Seeing Tim Cook forced to &lt;a href=&#34;https://www.macworld.com/article/2870568/apple-ceo-tim-cook-presents-special-gold-gift-to-donald-trump.html&#34;&gt;bow down before this petty Don Rodrigo&lt;/a&gt; is truly heartbreaking.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;div style=&#34;position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;&#34;&gt;&#xA;      &lt;iframe allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34; allowfullscreen=&#34;allowfullscreen&#34; loading=&#34;eager&#34; referrerpolicy=&#34;strict-origin-when-cross-origin&#34; src=&#34;https://www.youtube.com/embed/J6SK7lotKZQ?autoplay=0&amp;amp;controls=1&amp;amp;end=0&amp;amp;loop=0&amp;amp;mute=0&amp;amp;start=0&#34; style=&#34;position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;&#34; title=&#34;YouTube video&#34;&gt;&lt;/iframe&gt;&#xA;    &lt;/div&gt;&#xA;&#xA;&lt;p&gt;Still, Intel fared much worse, being forced to &lt;a href=&#34;https://www.bbc.com/news/articles/cvg3zpdl3xdo&#34;&gt;hand 10% of its shares&lt;/a&gt; to these new &lt;a href=&#34;https://arstechnica.com/tech-policy/2025/08/intel-agrees-to-sell-the-us-a-10-stake-trump-says-hyping-great-deal/&#34;&gt;henchmen in suits and ties&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;The only crumb of solace is that, at the end of the story, the plague will strike, and Don Rodrigo and his henchmen will get what they deserve.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Don Rodrigo is the main antagonist of Alessandro Manzoni&amp;rsquo;s novel &lt;em&gt;I Promessi Sposi&lt;/em&gt; (&lt;em&gt;The Betrothed&lt;/em&gt;). He is a petty lord who uses his social status and influence to prevent the marriage of the protagonists, Renzo and Lucia, out of pride and a desire to prove his power. Though a powerful figure in the novel&amp;rsquo;s setting of 17th-century Italy, Don Rodrigo is depicted as a morally weak and mediocre character, embodying the corruption and abuse of power prevalent at the time.&#xA;For English readers, the figure that most closely mirrors Don Rodrigo is Judge Pyncheon in Nathaniel Hawthorne&amp;rsquo;s &lt;em&gt;The House of the Seven Gables&lt;/em&gt;, a corrupt authority figure, feared in his community yet ultimately pathetic and doomed.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Steve Wozniak, 75 years of happiness</title>
      <link>https://melabit.com/en/2025/08/18/steve-wozniak-75-years-of-happiness/</link>
      <pubDate>Mon, 18 Aug 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/08/18/steve-wozniak-75-years-of-happiness/</guid>
      <description>&lt;p&gt;I’ve always had great respect for Steve Wozniak, the tubby nerd who, in the eyes of those in the industry, has always been considered one step behind (if not more) his friend and &lt;a href=&#34;https://en.wikipedia.org/wiki/Apple_Inc.&#34;&gt;Apple Computer&lt;/a&gt; co-founder, Steve Jobs.&lt;/p&gt;&#xA;&lt;p&gt;Without Steve Jobs&amp;rsquo; commercial genius, Apple would never have become the giant it is today. Instead, it would have remained just another company selling personal computers of various shapes and functions in the 1980s, alongside the likes of Tandy, Sinclair, Commodore, &lt;a href=&#34;https://melabit.com/it/2022/08/26/in-prima-linea-con-losborne-1/&#34;&gt;Osborne&lt;/a&gt;, Atari, Compaq and many others.&lt;/p&gt;&#xA;&lt;p&gt;But without Steve Wozniak&amp;rsquo;s engineering genius, the Apple I and Apple II would never have existed, so I&amp;rsquo;d say it&amp;rsquo;s a draw.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-18-steve-wozniak-75-anni-di-felicita/apple-ii.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; Source: &lt;a href=&#34;https://techcrunch.com/2014/11/04/nearly-40-years-later-steve-wozniak-still-brainstorms-ways-the-apple-ii-could-have-been-better/&#34;&gt;TechCrunch&lt;/a&gt;_.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Steve Wozniak&amp;rsquo;s disinterest in money is legendary. Had it been up to him, he would have given away the Apple I project to anyone who asked. After leaving Apple in the 1980s, he sold or gave away most of his shares in the company, shares that would be worth a staggering amount today.&lt;/p&gt;&#xA;&lt;p&gt;But, as &lt;a href=&#34;https://yro.slashdot.org/comments.pl?cid=65583466&amp;amp;sid=23765914&amp;amp;tid=828&#34;&gt;he himself wrote &lt;/a&gt; on the day of his 75th birthday,&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;I gave all my Apple wealth away because wealth and power are not what I live for. I have a lot of fun and happiness. I funded a lot of important museums and arts groups in San Jose, the city of my birth, and they named a street after me for being good. I now speak publicly and have risen to the top. I have no idea how much I have but after speaking for 20 years it might be $10M plus a couple of homes. I never look for any type of tax dodge. I earn money from my labor and pay something like 55% combined tax on it. I am the happiest person ever. Life to me was never about accomplishment, but about Happiness, which is Smiles minus Frowns. I developed these philosophies when I was 18-20 years old and I never sold out.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;He is right. Once you&amp;rsquo;re worth 10 million dollars (though it should actually be 100 million) your life doesn&amp;rsquo;t change whether you reach 20, 50, 100 or even 1,000 million. It’s better &amp;ndash; much better &amp;ndash; to have fun, enjoy life, and be happy.&lt;/p&gt;&#xA;&lt;p&gt;If more people shared Woz&amp;rsquo;s philosophy, the world would be a much better place.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>MDR Dasher vs. Flow 2: fashion or common sense?</title>
      <link>https://melabit.com/en/2025/08/14/mdr-dasher-vs-flow-2-fashion-or-common-sense/</link>
      <pubDate>Thu, 14 Aug 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/08/14/mdr-dasher-vs-flow-2-fashion-or-common-sense/</guid>
      <description>&lt;p&gt;It all started with &lt;a href=&#34;https://en.wikipedia.org/wiki/Severance_%28TV_series%29&#34;&gt;Severance&lt;/a&gt;, the cult TV series that &lt;a href=&#34;https://www.rottentomatoes.com/tv/severance&#34;&gt;almost everyone liked&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;To promote the final episode of the second season, Apple &lt;a href=&#34;https://web.archive.org/web/20250326175811/https://www.apple.com/mac/lumon-terminal-pro/&#34;&gt;launched a webpage&lt;/a&gt; showcasing the Lumon Terminal Pro, the computer used by Lumon Industries employees &amp;ndash; a replica of a vintage &lt;a href=&#34;https://www.reddit.com/r/SeveranceAppleTVPlus/comments/thn49q/a_data_general_dasher_6053_computer_terminal/&#34;&gt;Data General terminal&lt;/a&gt; (more images available &lt;a href=&#34;https://terminals-wiki.org/wiki/index.php/Data_General_6053&#34;&gt;here&lt;/a&gt; and &lt;a href=&#34;https://www.facebook.com/groups/retrocomputers/posts/6022951941067970/&#34;&gt;here&lt;/a&gt;). This sparked a race among fans to own a keyboard inspired by that terminal.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-14-mdr-dasher-contro-flow-2-moda-o-buonsenso/hero_lumon__b5raydh22lg2_large_2x.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://web.archive.org/web/20250326175811/https://www.apple.com/mac/lumon-terminal-pro/&#34;&gt;Apple&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-14-mdr-dasher-contro-flow-2-moda-o-buonsenso/958px-DataGeneralDasher6053.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Source: &lt;a href=&#34;https://wiki.techtangents.net/wiki/Data_General_Dasher_6053_Terminal&#34;&gt;Data General Dasher 6053 Terminal&lt;/a&gt; on &lt;a href=&#34;https://wiki.techtangents.net/&#34;&gt;Tech Tangents&lt;/a&gt;&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Someone &lt;a href=&#34;https://www.reddit.com/r/SeveranceAppleTVPlus/comments/1jfuew2/the_mdr_keyboard_with_a_twist/&#34;&gt;built it themselves&lt;/a&gt;. Someone else started a &lt;a href=&#34;https://www.atomickb.com/&#34;&gt;company&lt;/a&gt; promising to produce the keyboard, and launched a &lt;a href=&#34;https://www.kickstarter.com/projects/atomickb/mdr-dasher-keyboard-for-work-thats-mysterious-and-important&#34;&gt;Kickstarter campaign&lt;/a&gt; which will go live on 19 August. The first (lucky?) backers will be able to get the so-called MDR Dasher Keyboard at the &lt;em&gt;discounted&lt;/em&gt; price of $599, which will rise to $699 for those who pre-order it after the Kickstarter launch. Those who buy it later through official channels will have to shell out $899, virtually the price of an iPhone 16!&lt;/p&gt;&#xA;&lt;p&gt;I could be among those &lt;em&gt;lucky ones&lt;/em&gt;, but I&amp;rsquo;ll gladly pass. I already use &lt;a href=&#34;https://www.logitech.com/en-eu/shop/p/mx-keys-s-for-mac&#34;&gt;a keyboard&lt;/a&gt; that satisfies me 100%; actually I have two identical ones for my Macs at home and at the office. And I don&amp;rsquo;t even like the MDR Dasher: it&amp;rsquo;s too big, too tall, and too uncomfortable for my taste.&lt;/p&gt;&#xA;&lt;p&gt;Above all, I don&amp;rsquo;t buy a product just because it&amp;rsquo;s trendy and looks like something from a TV series. And I definitely wouldn&amp;rsquo;t buy anything from an &lt;a href=&#34;https://www.atomickb.com/&#34;&gt;unknown company&lt;/a&gt; with a fake address, that was created just to capitalise on the current trend.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Instead, a keyboard that I would buy without hesitation is the &lt;a href=&#34;https://www.kickstarter.com/projects/lofree/flow-2the-smoothest-keyboard-evolved-redefined-unleashed&#34;&gt;Flow 2&lt;/a&gt;, a mechanical keyboard that has raised almost a million dollars on Kickstarter, one hundred times the initial request. This is not only because it is much more affordable &amp;ndash; and very convenient overall for a mechanical keyboard &amp;ndash; but because behind it is a &lt;a href=&#34;https://www.lofree.co/&#34;&gt;reputable company&lt;/a&gt; that has been producing quality mechanical keyboards for years.&lt;/p&gt;&#xA;&lt;p&gt;The Flow 2, in particular, is crafted from a single block of aluminium and features a refined, minimalist design, reminiscent of the Macs we all know and love. Even though it is a mechanical keyboard, you can choose a &lt;a href=&#34;https://www.youtube.com/watch?v=f-MT_8PAOq8&#34;&gt;silent version&lt;/a&gt;, which is perfect for those who use the computer at night, or who simply don&amp;rsquo;t want to disturb family members or colleagues with the excruciating typewriter-like clicking that can be produced by a standard mechanical keyboard.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;As the title suggests, on the one hand there&amp;rsquo;s fashion, hype and shameless marketing; on the other, common sense and a somewhat boring tranquillity. The choice is yours.&lt;/p&gt;&#xA;&lt;p&gt;Last but not least, Happy &lt;a href=&#34;https://en.wikipedia.org/wiki/Ferragosto&#34;&gt;Ferragosto&lt;/a&gt; to everyone! Unplug, switch off your devices, and enjoy a day of relaxation and good company.&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>Goodbye dc, welcome luka: a new RPN calculator for the Terminal</title>
      <link>https://melabit.com/en/2025/08/09/goodbye-dc-welcome-luka-a-new-rpn-calculator-for-the-terminal/</link>
      <pubDate>Sat, 09 Aug 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/08/09/goodbye-dc-welcome-luka-a-new-rpn-calculator-for-the-terminal/</guid>
      <description>&lt;p&gt;The &lt;em&gt;Reverse Polish Notation&lt;/em&gt; (RPN) is a method for performing calculations without the need for parentheses. RPN was popularized in the &amp;rsquo;70s and &amp;rsquo;80s by Hewlett-Packard (HP), that used it in &lt;a href=&#34;https://www.hpmuseum.org/rpnvers.htm&#34;&gt;all its scientific and financial calculators&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;When using calculators from rival Texas-Instruments, which all relied on parentheses, it was easy to lose track of how many parentheses had been opened or closed, often forcing users to re-enter the entire expression from scratch. Those who used an RPN calculator didn&amp;rsquo;t have these problems, although they had to overcome a small initial learning curve to get used to the new notation.&lt;/p&gt;&#xA;&lt;p&gt;Today, &lt;em&gt;physical&lt;/em&gt; calculators are rarely used, and almost everyone prefers to use an app on their phone or computer. However, there are still some die-hard nerds who refuse to give in to the graphical interface and insist on using the Terminal. Why? For example, because it&amp;rsquo;s much easier to enter numbers and complex operations with a keyboard than to &lt;em&gt;press&lt;/em&gt; the glass keys of a virtual calculator.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/Gemini_Generated_Image_72y1t072y1t072y1.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;div style = &#34;border-style: solid; border-width: 0px 0px 0px 12px; border-color: #03a87c; background-color: #defef6; padding: 1em; color:black; font-size:100%;&#34;&gt;&#xA;&lt;h4 id=&#34;a-bit-of-history&#34;&gt;A bit of history&lt;/h4&gt;&#xA;&lt;p&gt;Poland gave us Nicolaus Copernicus, Fryderyk Chopin, Joseph Conrad, Marie Curie, Arthur Rubinstein, and Stanislaw Lem. But it also gave us Jan Lukasiewicz, a mathematical logician (and philosopher) who, about a hundred years ago, invented a mathematical notation that did not use parentheses.&lt;/p&gt;&#xA;&lt;p&gt;In this &lt;em&gt;Polish notation&lt;/em&gt;, all operation symbols ( \( + \), \( - \), \( \times \), \( / \) ) precede the numbers they apply to. The same applies more generally to mathematical functions, such as  \( \sqrt{} \), \( \sin \), \( \cos \), \( \exp \) (&lt;em&gt;operators&lt;/em&gt;) and the numbers or variables (&lt;em&gt;operands&lt;/em&gt;) they act on.&lt;/p&gt;&#xA;&lt;p&gt;For example, \( 3 + 4 \) is written  in Polish notation as \( + \ 3 \ 4 \), while  \( (5 + 2) \times (5 - 2) \) becomes \( \times + 5 \ 2 - 5 \ 2 \).&lt;/p&gt;&#xA;&lt;p&gt;For many years, this remained just an odd idea, because the benefit of not using parentheses didn&amp;rsquo;t seem to outweigh the unusual and more difficult-to-read notation.&lt;/p&gt;&#xA;&lt;p&gt;Then, in the late &amp;rsquo;50s, John McCarthy brought back Polish (or &lt;em&gt;prefix&lt;/em&gt;) notation for &lt;a href=&#34;https://twobithistory.org/2018/10/14/lisp.html&#34;&gt;LISP&lt;/a&gt;, one of the most influential programming languages of all time,&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt; developed with the goal of being applied to the development of programs in the field of nascent artificial intelligence.&lt;/p&gt;&#xA;&lt;p&gt;In fact, prefix notation not only greatly simplified the implementation of the LISP interpreter, but also made it possible to represent both code and data in the same form, an invaluable feature for a language designed to make computers &lt;em&gt;intelligent&lt;/em&gt;. But better not to digress.&lt;/p&gt;&#xA;&lt;h4 id=&#34;reverse-polish-notation&#34;&gt;Reverse Polish Notation&lt;/h4&gt;&#xA;&lt;p&gt;But the real breakthrough came by inverting the order between operands and operators, that is, by writing the numbers &lt;em&gt;first&lt;/em&gt; and &lt;em&gt;then&lt;/em&gt; the operations to be performed on them, so \( 3 + 4 \) becomes \( 3 \ 4 \ + \) and \( (5 + 2) \times (5 - 2) \) becomes \( \ 5 \ 2 + 5 \ 2 - \times \).&lt;/p&gt;&#xA;&lt;p&gt;This &lt;a href=&#34;https://en.wikipedia.org/wiki/Reverse_Polish_notation&#34;&gt;&lt;em&gt;Reverse Polish Notation&lt;/em&gt;&lt;/a&gt; (RPN) was discovered and rediscovered at least three times in twenty years, but it only became popular in the early &amp;rsquo;60s when Friedrich Bauer, the inventor of the concept of &lt;a href=&#34;https://en.wikipedia.org/wiki/Stack_%5C%28abstract_data_type%5C%29&#34;&gt;&lt;em&gt;stack&lt;/em&gt;&lt;/a&gt; and one of the developers of the &lt;a href=&#34;https://en.wikipedia.org/wiki/ALGOL&#34;&gt;ALGOL&lt;/a&gt; computer language, and Edsger Dijkstra, famous for solving the &amp;ldquo;shortest path problem&amp;rdquo; and for a thousand other things, took up the concept again, because it reduced access to memory, which at the time was scarce and slow, and ensured that all operations were performed within a well-defined memory area (the &lt;em&gt;stack&lt;/em&gt;), that was therefore easier to manipulate.&lt;/p&gt;&#xA;&lt;p&gt;The advantages of RPN for performing mathematical calculations were so evident that HP used it in practically &lt;a href=&#34;https://www.hpmuseum.org/rpnvers.htm&#34;&gt;all its scientific and financial calculators&lt;/a&gt;, at least until the early &amp;rsquo;90s. The development of larger memories and much bigger displays made it possible to easily view and modify the entire entered operation &amp;ndash; not just the last number entered &amp;ndash; thus reducing the necessity of using RPN.&lt;/p&gt;&#xA;&lt;/div&gt;&#xA;&lt;br/&gt;&#xA;&lt;h4 id=&#34;a-calculator-in-the-terminal&#34;&gt;A calculator in the Terminal&lt;/h4&gt;&#xA;&lt;p&gt;Those who wish to use a traditional calculator in the macOS or Linux Terminal have an almost mandatory choice: &lt;code&gt;bc&lt;/code&gt;, the &lt;a href=&#34;https://en.wikipedia.org/wiki/Bc_%5C%28programming_language%5C%29&#34;&gt;&lt;em&gt;basic calculator&lt;/em&gt;&lt;/a&gt;, that has been a part of UNIX since 1975, a full 50 years. The current version, available on Linux and macOS, has been completely rewritten, but the original was just an interface for &lt;code&gt;dc&lt;/code&gt; (&lt;a href=&#34;https://en.wikipedia.org/wiki/Dc_%5C%28computer_program%5C%29&#34;&gt;&lt;em&gt;desk calculator&lt;/em&gt;&lt;/a&gt;), one of the oldest utilities present in UNIX and even older than the C language.&lt;/p&gt;&#xA;&lt;p&gt;And &lt;code&gt;dc&lt;/code&gt; was&amp;hellip; an RPN calculator. A choice that confirmed HP&amp;rsquo;s intuition: RPN notation was more efficient and easier to implement, and therefore also ideal for the limited-resource computers of the &amp;rsquo;70s.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Today, RPN is no longer a choice forced by hardware limitations, but rather a choice driven largely by convenience. Once you&amp;rsquo;ve spent half an hour learning to use it, you discover that it&amp;rsquo;s really much more convenient to perform calculations with this notation than with the traditional algebraic notation.&lt;/p&gt;&#xA;&lt;p&gt;And then, maybe, there&amp;rsquo;s also a certain pleasure in going against the flow: in a world where everyone conforms to the dictates of (real or presumed) social media influencers, using an RPN calculator becomes a way to stand out, to feel different, almost a declaration of intellectual independence.&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;dc&lt;/code&gt; is still available on Linux and macOS and can be used in the Terminal, but it’s quite a hassle, its fifty years clearly show. The results of the operations are not visible unless you explicitly &lt;em&gt;print&lt;/em&gt; them on the screen with &lt;code&gt;p&lt;/code&gt;. The stack isn&amp;rsquo;t visible either, unless you explicitly request it with &lt;code&gt;f&lt;/code&gt;. Negative numbers are indicated with an underscore &lt;code&gt;_&lt;/code&gt; and not with the usual &lt;code&gt;-&lt;/code&gt;  sign, so that \( - 4 \) must be written as \( _4 \). And so on.&lt;/p&gt;&#xA;&lt;p&gt;But starting (almost) today, there&amp;rsquo;s &lt;code&gt;dc2&lt;/code&gt;, or rather, &lt;code&gt;luka&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;h4 id=&#34;the-21st-century-rpn-calculator&#34;&gt;The 21st-century RPN calculator&lt;/h4&gt;&#xA;&lt;p&gt;Since a few weeks we have a new RPN calculator for the macOS and Linux Terminal, initially called &lt;a href=&#34;https://github.com/mastro35/dc2&#34;&gt;&lt;code&gt;dc2&lt;/code&gt;&lt;/a&gt;, in homage to the venerable, now over-50-year-old calculator.&lt;/p&gt;&#xA;&lt;p&gt;However, &lt;code&gt;dc2&lt;/code&gt; sounded too much like a rewrite of the original, while this is a completely new project, written from scratch in &lt;code&gt;C&lt;/code&gt;. It therefore deserved its own name,  &lt;a href=&#34;https://github.com/mastro35/luka&#34;&gt;&lt;code&gt;luka&lt;/code&gt;&lt;/a&gt;, in honor of Jan Lukasiewicz, the inventor of the &lt;em&gt;Polish notation&lt;/em&gt; (see the box above).&lt;/p&gt;&#xA;&lt;p&gt;Compared to &lt;code&gt;dc&lt;/code&gt;, &lt;code&gt;luka&lt;/code&gt; is truly from another century, and it shows as soon as you start trying it out. It&amp;rsquo;s interactive, it shows the content of the stack at all times, it has a history of the operations, variables, a concise but complete inline help, a crystal-clear manual page (if only there were many more like this!)&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-example.png&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;And &lt;code&gt;luka&lt;/code&gt; is also made in Italy. At a time when national identity is exalted for mostly trivial reasons, it&amp;rsquo;s nice to see something that really deserves to be valued.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/luka-credits.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The program currently has a small &lt;em&gt;bug&lt;/em&gt; related to the display of the history, but the author crunches code much faster than I write words, so it’s very likely the bug will be fixed ASAP (vacations permitting).&lt;/p&gt;&#xA;&lt;h4 id=&#34;evolution-of-the-code&#34;&gt;Evolution of the code&lt;/h4&gt;&#xA;&lt;p&gt;The development of &lt;code&gt;dc2&lt;/code&gt;/&lt;code&gt;luka&lt;/code&gt; has been incredibly fast. Behind the project is Davide Mastromatteo, known among his &lt;em&gt;pen pals&lt;/em&gt; as @mastro35 and author of the excellent blog &lt;a href=&#34;https://thepythoncorner.com/&#34;&gt;The Python Corner&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;In just a few days, Davide went from version 0.1.0, which was perfectly functional but had a still-raw user interface,&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-010.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-010-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;to version 0.2.0, with a much clearer view of the stack, the ability to use degrees and radians, and to change the number representation format, as well as a more compact help.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-020.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-020-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Version 0.3.0 introduced the history of operations and a further revised help,&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-030.png&#34; alt=&#34;&#34;&gt;&lt;img src=&#34;https://melabit.com/img/2025-08-09-addio-dc-benvenuta-luka-una-nuova-calcolatrice-rpn-da-terminale/dc2-030-help.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;while version 0.4.0, which coincided with the program&amp;rsquo;s name change, brought us variables and several new keyboard commands, as can be seen in the first two images of this post.&lt;/p&gt;&#xA;&lt;h4 id=&#34;using-luka&#34;&gt;Using luka&lt;/h4&gt;&#xA;&lt;p&gt;Installing &lt;code&gt;luka&lt;/code&gt; on a Mac or Linux is a breeze, at least for &lt;a href=&#34;https://www.melabit.com/it/2014/04/29/homebrew-software-per-il-mac-fatto-in-casa/&#34;&gt;those who use &lt;code&gt;homebrew&lt;/code&gt;&lt;/a&gt; (and those who don&amp;rsquo;t should start doing so immediately)&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;brew install mastro35/homebrew-mastro35/luka&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Otherwise, just download the &lt;a href=&#34;https://github.com/mastro35/luka/releases&#34;&gt;latest release&lt;/a&gt; of the source code, unzip it, and run&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;make clean &amp;amp;&amp;amp; make&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;from the Terminal, obviously after &lt;a href=&#34;https://melabit.com/it/2018/01/30/script-per-tutti-i-giorni-ricapitoliamo/&#34;&gt;navigating to the directory&lt;/a&gt; that contains the source code.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Needless to say, anyone who has &lt;code&gt;make&lt;/code&gt; and a C compiler installed on Windows can also compile &lt;code&gt;luka&lt;/code&gt; on that operating system.&lt;/p&gt;&#xA;&lt;p&gt;I almost forgot: soon there will be packages for Linux, in both &lt;code&gt;deb&lt;/code&gt; and &lt;code&gt;rpm&lt;/code&gt; formats, and who knows, maybe also &lt;code&gt;aur&lt;/code&gt;. Perhaps even an installer for Windows.&lt;/p&gt;&#xA;&lt;p&gt;There’s little to add about using the calculator itself. Those familiar with RPN will feel right at home and quickly use &lt;code&gt;luka&lt;/code&gt;’ to its full potential. Those who don&amp;rsquo;t know RPN might be tempted to try it, if only to try firsthand how much more convenient it can be to perform calculations with an RPN calculator compared to a traditional algebraic one.&lt;/p&gt;&#xA;&lt;p&gt;There are countless guides to RPN, but unfortunately, they are all oriented toward &lt;a href=&#34;https://hansklav.home.xs4all.nl/rpn/&#34;&gt;explaining its use with a physical calculator&lt;/a&gt;, such as the now legendary &lt;em&gt;vintage&lt;/em&gt; HPs, or with graphical emulators for Android or iOS.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Compared to these guides, there are some differences to consider. The main one is that, lacking physical keys, &lt;code&gt;luka&lt;/code&gt; (but also &lt;code&gt;dc&lt;/code&gt;) requires you to press &lt;code&gt;ENTER&lt;/code&gt; each time to insert a number or function. Some function names are also different, as are the commands for managing the stack or for saving and retrieving variables. For example, &lt;code&gt;luka&lt;/code&gt; uses &lt;code&gt;store&lt;/code&gt; and &lt;code&gt;load&lt;/code&gt; for variables, while physical or emulated calculators generally use keys named &lt;code&gt;STO&lt;/code&gt; and &lt;code&gt;RCL&lt;/code&gt; (but if the author reads this post, maybe he will change them 😂). However, apart from these tiny details, the underlying logic doesn&amp;rsquo;t change.&lt;/p&gt;&#xA;&lt;p&gt;For my part, I tried in every way to make &lt;code&gt;luka&lt;/code&gt; crash, and never succeeded. I tested it with factorials of absurdly large or small numbers, divided by zero, performed the infamous\( 0 / 0 \) and then asked to calculate the reciprocal of the result. But no matter what, &lt;code&gt;luka&lt;/code&gt; always returned the correct result. In short, the quality is definitely there.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;Trying &lt;code&gt;luka&lt;/code&gt; costs nothing. It installs (and uninstalls) in a few seconds, works on macOS, Linux, and, for those who want, even on Windows. The results it produces are exact (and this is the most important thing). The developer is skilled and open to suggestions. In short, it&amp;rsquo;s an ideal tool for anyone who wants to perform calculations from the Terminal.&lt;/p&gt;&#xA;&lt;p&gt;Sure, it&amp;rsquo;s a niche tool, aimed at a select group of sophisticated users who appreciate RPN notation and are not afraid of the Terminal. But that’s also what what gives it its unique charm.&lt;/p&gt;&#xA;&lt;p&gt;And then, what about the beauty of seeing a program evolve before our very eyes, maybe even &lt;a href=&#34;https://github.com/mastro35/luka/issues&#34;&gt;participating in its development&lt;/a&gt; with suggestions or criticisms?&lt;/p&gt;&#xA;&lt;p&gt;And beyond that, there’s something special about watching a program evolve right before our eyes, especially when you can &lt;a href=&#34;https://github.com/mastro35/luka/issues&#34;&gt;join the development&lt;/a&gt; with your own suggestions or feedback.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;And one of the few languages, along with &lt;a href=&#34;https://www.melabit.com/it/2024/10/06/70-anni-di-fortran-piu-o-meno/&#34;&gt;FORTRAN&lt;/a&gt; and COBOL, to still be alive and well.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Not by chance, one of the most efficient programming languages ever is FORTH, which is based on a stack and uses RPN.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;What, you don&amp;rsquo;t even have &lt;code&gt;make&lt;/code&gt;? Then hurry up and install &lt;code&gt;homebrew&lt;/code&gt;!&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;For iOS, I recommend without hesitation &lt;a href=&#34;https://apps.apple.com/it/app/pcalc-lite/id300311831&#34;&gt;PCalc Lite&lt;/a&gt; or, even better, the full version &lt;a href=&#34;https://apps.apple.com/it/app/pcalc/id284666222&#34;&gt;Pcalc&lt;/a&gt;, which costsbout as much as a sandwich and a small bottle of water at a café. Alternatively, &lt;a href=&#34;https://apps.apple.com/it/app/wp-34s/id620255094&#34;&gt;WP 34s&lt;/a&gt;, which manages to compact everything onto a single screen, or &lt;a href=&#34;https://apps.apple.com/it/app/i41cx/id292619450&#34;&gt;i41CX&lt;/a&gt;, perfect for those who once dreamed of having one.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>Do a Maggie</title>
      <link>https://melabit.com/en/2025/07/28/do-a-maggie/</link>
      <pubDate>Mon, 28 Jul 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/07/28/do-a-maggie/</guid>
      <description>&lt;p&gt;The &lt;a href=&#34;https://melabit.com/en/2025/07/22/macos-tahoe-developer-beta-3/&#34;&gt;last post&lt;/a&gt; literally drove me crazy. Not because of the length, although writing a text of over three thousand words and twenty thousand characters in two different languages is no small feat.&lt;/p&gt;&#xA;&lt;p&gt;The real problem started when, at some point, the Markdown file of the Italian version of the post got corrupted. Whenever &lt;a href=&#34;https://melabit.com/en/2025/05/24/jeeeeeekyll-no-hugo/&#34;&gt;Hugo&lt;/a&gt; tried to convert it to &lt;code&gt;HTML&lt;/code&gt;, the generated file showed the dreaded &lt;a href=&#34;https://en.wikipedia.org/wiki/Specials_%28Unicode_block%29&#34;&gt;&lt;em&gt;replacement character&lt;/em&gt;&lt;/a&gt; � instead of Italian accented letters. This is that black diamond with a white question mark inside that we have seen in tons of emails and web pages.&lt;/p&gt;&#xA;&lt;p&gt;It took me hours to fix the issue.&lt;/p&gt;&#xA;&lt;h4 id=&#34;when-a-markdown-file-gets-corrupted&#34;&gt;When a Markdown file gets corrupted&lt;/h4&gt;&#xA;&lt;p&gt;My first guess was that the file contained some rogue character, such as like a space that wasn&amp;rsquo;t really a space, or one of those &lt;em&gt;weird&lt;/em&gt; letters that &lt;a href=&#34;https://eu.usatoday.com/story/news/factcheck/2021/04/30/fact-check-hackers-use-similar-looking-characters-phishing-schemes/4891437001/&#34;&gt;caused quite a stir&lt;/a&gt; a few years ago.&#xA;Trying to hunt them down was a pain, so I did the opposite: I wrote a regular expression to match &lt;strong&gt;everything that wasn&amp;rsquo;t normal&lt;/strong&gt;, and gradually refined it as I went.&lt;/p&gt;&#xA;&lt;p&gt;In the end, the regular expression turned into this.&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;[^a-zA-Z0-9àèéìòùÀÈÉÌÒÙ ,.;:`&amp;#39;&amp;#34;()\[\]\-^/_*#\n]&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;It was a very down-to-earth regex, but it worked, and that was what mattered. Unfortunately, it didn&amp;rsquo;t find anything strange.&lt;/p&gt;&#xA;&lt;p&gt;To narrow down the part of the text that might contain the error, I started removing chunks &amp;ndash; first a few lines, then entire sections &amp;ndash; rebuilding the trimmed file with Hugo each time. Nothing. Those damn black diamonds just wouldn&amp;rsquo;t go away!&lt;/p&gt;&#xA;&lt;p&gt;And that&amp;rsquo;s when I did the one thing that really made a difference: after trying over and over with no success, I gave up and went to have dinner.&lt;/p&gt;&#xA;&lt;p&gt;Yes, because when you&amp;rsquo;re stuck on a problem — whether it&amp;rsquo;s a tricky math exercise, a program that refuses to run, or the opening of a post that&amp;rsquo;s been in your head for hours — the best thing to do is give up and do something else. I don&amp;rsquo;t know about you, but it always works great for me.&lt;/p&gt;&#xA;&lt;p&gt;And sure enough, after dinner the idea hit me: I did a &lt;em&gt;Maggie&lt;/em&gt;, and everything was back to normal.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-07-28-fare-una-maggie/Gemini_Generated_Image_irhit8irhit8irhi.jpg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h4 id=&#34;do-a-maggie&#34;&gt;Do a &lt;em&gt;Maggie&lt;/em&gt;&lt;/h4&gt;&#xA;&lt;p&gt;&lt;em&gt;Maggie&lt;/em&gt; is the nickname of Margaret Secara, who became known for a simple but very effective trick to &lt;a href=&#34;https://tidbits.com/2013/03/28/avoid-and-fix-word-document-corruption/&#34;&gt;recover a corrupted Word document&lt;/a&gt;: click the &lt;code&gt;¶&lt;/code&gt; icon in Word&amp;rsquo;s Ribbon to show formatting characters (if the Word window is narrow, the icon could be hidden inside the &lt;a href=&#34;https://melabit.com/img/2025-07-28-fare-una-maggie/word-show-format-characters-narrow.png&#34;&gt;paragraph section&lt;/a&gt;), then select all the text &lt;strong&gt;except the final &lt;code&gt;Enter&lt;/code&gt; character&lt;/strong&gt; (as shown in the image below), and paste it into a new blank document.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-28-fare-una-maggie/word-show-format-characters.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;If this does not work, you can repeat the process by copying consecutive sections of the text into a new document, in order to isolate the corrupted portion as much as possible.&lt;/p&gt;&#xA;&lt;p&gt;The first time I used this trick, I was working on a document of over a hundred pages, which had been passed around several colleagues and multiple versions of Word, and had become unmanageable: each new character took seconds to appear on the screen and Word kept crashing. With the trick described above, I fixed the problem in no time.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Maggie&amp;rsquo;s trick works because Word files have a dual structure. The first is what is shown on the computer screen, consisting of text, images, and tables, divided into chapters, sections, and paragraphs, with bold, italics, underlining, page breaks, lists, and indents. All of which is placed somewhat randomly by the user.&lt;/p&gt;&#xA;&lt;p&gt;The second structure is that of the underlying XML file, which, after a few additions, edits, deletions, and rethinking, becomes a messy tangle of nested XML tags. These, however, remain completely invisible to the user and are never properly &lt;em&gt;cleaned up&lt;/em&gt; and reorganized by the program.&lt;/p&gt;&#xA;&lt;p&gt;Unless we do it manually, copying all the text into a new document, but avoiding like the plague the last &lt;code&gt;Enter&lt;/code&gt; character which, for some arcane reason, contains the access key to the hidden nasties within the Word document.&lt;/p&gt;&#xA;&lt;p&gt;Margaret &lt;em&gt;Maggie&lt;/em&gt; Secara may have discovered this trick by pure accident, but it turned out to be so useful that her nickname became a real word, like Kleenex, Band-Aid, Post-it, Tupperware, or Google.&lt;/p&gt;&#xA;&lt;h4 id=&#34;but-they-are-text-documents&#34;&gt;But they are text documents!&lt;/h4&gt;&#xA;&lt;p&gt;However, I write my posts in Markdown, not Word. Even so, starting with a &lt;em&gt;fresh&lt;/em&gt; document and copying the contents of the corrupted one into it can be the fastest way to solve many problems.&lt;/p&gt;&#xA;&lt;p&gt;Of course, this trick works with any type of plain text document, whether it is written in Markdown, LaTeX, HTML, XML, JSON, Org mode&amp;hellip; or any other format you can think of, no matter how obscure.&lt;/p&gt;&#xA;&lt;p&gt;In fact, since a text document hides nothing from the user, unlike Word, there is no need to avoid copying the last &lt;code&gt;Enter&lt;/code&gt; character. You can safely select all the text, copy it and paste it into a new, empty file.&lt;/p&gt;&#xA;&lt;p&gt;Before doing so, it is always a good idea to check that the text does not contain any spurious characters, using a regular expression similar to the one shown above.&lt;/p&gt;&#xA;&lt;p&gt;And with that, the post is complete. The two sections below are intended for the handful of readers who are curious to know what really happened to me.&lt;/p&gt;&#xA;&lt;h4 id=&#34;only-for-the-curious&#34;&gt;Only for the curious&amp;hellip;&lt;/h4&gt;&#xA;&lt;h5 id=&#34;why-does-the-trick-work&#34;&gt;Why does the trick work?&lt;/h5&gt;&#xA;&lt;p&gt;Once the immediate problem was solved, curiosity got the better of me and I wondered &lt;em&gt;why&lt;/em&gt; the method described works with text documents. As is often the case, working from the Terminal helps solve the most difficult problems.&lt;/p&gt;&#xA;&lt;p&gt;In a regular editor such as BBEdit or TextMate, the corrupted file looks perfectly normal. But if you view it in the Terminal using the &lt;code&gt;cat&lt;/code&gt; command, you will immediately notice that all the accented characters are replaced by &lt;code&gt;?&lt;/code&gt;, which is more or less what happens when converting it to HTML.&lt;/p&gt;&#xA;&lt;p&gt;The &lt;code&gt;file&lt;/code&gt; command gives the definitive answer. When I apply it to the corrupted file, &lt;code&gt;file 2025-07-22-macos-tahoe-developer-beta-3.md&lt;/code&gt;, I get the following response&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Non-ISO extended-ASCII text, with very long lines (1264)&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;while with any other Markdown file, the result is (as it should be)&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Unicode text, UTF-8 text, with very long lines (1264)&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;In other words, the file had lost the correct &lt;code&gt;UTF-8&lt;/code&gt; encoding, becoming a non-standard plain text file.&lt;/p&gt;&#xA;&lt;p&gt;Had I noticed this earlier, I could have used &lt;code&gt;iconv&lt;/code&gt; to correct the file encoding. However, there is no doubt that the copy-and-paste method is much more practical.&lt;/p&gt;&#xA;&lt;h5 id=&#34;what-really--happened&#34;&gt;What really  happened?&lt;/h5&gt;&#xA;&lt;p&gt;It&amp;rsquo;s hard to tell, but there are some clues. Since the &lt;a href=&#34;https://melabit.com/en/2025/07/22/macos-tahoe-developer-beta-3/&#34;&gt;post was very long&lt;/a&gt;, I wrote it in several stages, partly on my Mac Mini and partly on my Air.&lt;/p&gt;&#xA;&lt;p&gt;I usually copy my work files locally and synchronize them later. But this time I was constantly switching computers, so I preferred to work directly on the synchronized folder (using &lt;a href=&#34;https://melabit.com/en/2024/03/21/syncthing-ovvero-come-liberarsi-dalle-limitazioni-di-dropbox-e-affini/&#34;&gt;Syncthing&lt;/a&gt;, but I don&amp;rsquo;t think it was its fault; otherwise I would have found conflicting files, which I didn&amp;rsquo;t). Instead, there were occasional network glitches, and I guess that these ended up corrupting the file encoding.&lt;/p&gt;&#xA;&lt;p&gt;What&amp;rsquo;s the moral of the story? Work locally and synchronize only when you&amp;rsquo;re done. Or work directly on the network only when the connection is stable.&lt;/p&gt;&#xA;&lt;p&gt;But when you can&amp;rsquo;t do that, remember the advice of the good old &lt;em&gt;Maggie&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;It seems that it might be possible to recover a Word document &lt;a href=&#34;https://learn.microsoft.com/en-us/answers/questions/5037456/how-to-maggie-a-corrupt-word-document-but-keep-all&#34;&gt;without losing track of the changes made&lt;/a&gt;. However, the guide uses keyboard shortcuts typical of Word for Windows, so it is not immediately applicable to the macOS version.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>macOS Tahoe: Developer Beta 3</title>
      <link>https://melabit.com/en/2025/07/22/macos-tahoe-developer-beta-3/</link>
      <pubDate>Tue, 22 Jul 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/07/22/macos-tahoe-developer-beta-3/</guid>
      <description>&lt;p&gt;A few days ago, right on schedule, Apple released to developers the third update of the macOS 26 Developer Beta, better known as Tahoe.&lt;/p&gt;&#xA;&lt;p&gt;Once the update is complete, it doesn&amp;rsquo;t take long to realize that Apple is (slowly) modifying something in the &lt;em&gt;Liquid Glass&lt;/em&gt; graphical interface of the latest version of its operating system.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Perhaps this is also to address the many criticisms it has received over the last month from big names like Riccardo Mori &amp;ndash; whatever you think, his &lt;a href=&#34;https://morrick.me/archives/10048&#34;&gt;first article on MacOS Tahoe and Liquid Glass&lt;/a&gt; is a must-read (but his &lt;a href=&#34;https://morrick.me/archives/10068&#34;&gt;first&lt;/a&gt; and &lt;a href=&#34;https://morrick.me/archives/10078&#34;&gt;second&lt;/a&gt; follow-ups are also worth reading) &amp;ndash; as well as from &lt;a href=&#34;114761754634101153&#34;&gt;John Gruber&lt;/a&gt;, &lt;a href=&#34;https://mastodon.social/@chockenberry/114654922905140087&#34;&gt;Craig Hockenberry&lt;/a&gt;, &lt;a href=&#34;https://mastodon.social/@tolmasky/114713080610786535&#34;&gt;Francisco Tolmasky&lt;/a&gt;, &lt;a href=&#34;https://lmnt.me/blog/rose-gold-tinted-liquid-glasses.html&#34;&gt;Louie Mantia&lt;/a&gt;, &lt;a href=&#34;https://mastodon.social/@marcoarment/114778761310429014&#34;&gt;Marco Arment&lt;/a&gt; and many others, as can be read in one of &lt;a href=&#34;https://mjtsai.com/blog/2025/06/30/assorted-notes-on-liquid-glass/&#34;&gt;Michael Tsai&amp;rsquo;s&lt;/a&gt; masterful collections.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt; As well as, in my own humble and far less masterful writings (&lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/&#34;&gt;here&lt;/a&gt; and &lt;a href=&#34;https://melabit.com/en/2025/07/08/macos-tahoe-where-is-my-terminal/&#34;&gt;here&lt;/a&gt;).&lt;/p&gt;&#xA;&lt;h4 id=&#34;its-a-beta&#34;&gt;It&amp;rsquo;s a beta&lt;/h4&gt;&#xA;&lt;p&gt;Let&amp;rsquo;s clear up a misunderstanding: constructively criticizing the beta version of an operating system, such as macOS, is a good and right thing to do.&lt;/p&gt;&#xA;&lt;p&gt;When Apple releases a beta, they&amp;rsquo;re not doing us a favor by letting us preview an unreleased product. Rather, we&amp;rsquo;re doing Apple a favor by analyzing and dissecting their software in ways that might never have occurred to their official developers and testers.&lt;/p&gt;&#xA;&lt;p&gt;To argue, as many do, that &amp;ldquo;you have to be patient, it&amp;rsquo;s just a beta&amp;rdquo; or that &amp;ldquo;betas always have bugs,&amp;rdquo; is utter nonsense, because it is precisely at this stage, when the product is tested &lt;em&gt;in the field&lt;/em&gt;, that flaws emerge which official developers, accustomed to working on it every day for months, no longer notice.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;After all, if Apple has extended access to its Developer Betas to a much wider audience in recent years, it means that what is done in this phase is indeed useful to them!&lt;/p&gt;&#xA;&lt;h4 id=&#34;the-wallpaper&#34;&gt;The Wallpaper&lt;/h4&gt;&#xA;&lt;p&gt;The first thing you notice when you access your Mac after the update is the new default wallpaper, which now shows the rocky shore of Lake Tahoe, surrounded by a long chain of snow-capped mountains (in Nevada?).&lt;/p&gt;&#xA;&lt;p&gt;I don&amp;rsquo;t particularly like these &lt;em&gt;natural&lt;/em&gt; wallpapers; there are too many details that distract and prevent a clear view of what&amp;rsquo;s on the Desktop. However, compared to the &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/&#34;&gt;anonymous wallpaper&lt;/a&gt; we had before (and which is still among the available wallpapers), this one is much better, so it&amp;rsquo;s all right. And the subtle ripple effect of the waves, which unfortunately isn&amp;rsquo;t visible in the screenshot, is truly delightful!&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/new-default-wallpaper.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;However, changing the active default wallpaper on the fly seems to hint some issues in the development direction of Tahoe/Liquid Glass, as will become even more apparent in the next section.&lt;/p&gt;&#xA;&lt;h4 id=&#34;the-menu-bar&#34;&gt;The Menu Bar&lt;/h4&gt;&#xA;&lt;p&gt;This, to be fair, is a change introduced in the previous beta, which I didn&amp;rsquo;t get a chance to write about here, yet. Apple has added an option to restore the menu bar background (&lt;code&gt;System Settings &amp;gt; Menu Bar &amp;gt; Show menu bar background&lt;/code&gt;), just like in Sequoia and previous versions of macOS.&lt;/p&gt;&#xA;&lt;p&gt;In my opinion, this is an excellent decision because, after using macOS Tahoe for a few weeks, I realized that &lt;strong&gt;having a transparent menu bar available is useless&lt;/strong&gt;. For at least two reasons.&lt;/p&gt;&#xA;&lt;p&gt;The first is that with a transparent bar, menu items and icons tend to blend into the background image, becoming much less legible. This effect is particularly severe when the wallpaper is full of details and gradients, as in the example below.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/menu-bar-transparent.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The difference in clarity when the menu bar has a background is evident.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/menu-bar-background.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The second reason is that, even if the menu bar is transparent, it cannot (rightly) be occupied by application windows, so you don&amp;rsquo;t gain useful space for applications.&lt;/p&gt;&#xA;&lt;p&gt;What is the &lt;em&gt;real&lt;/em&gt; purpose of a transparent menu bar if it is less legible and doesn&amp;rsquo;t provide more useful space for applications? It is just to achieve a (questionable) more homogeneous visual effect without any functional advantage?&lt;/p&gt;&#xA;&lt;p&gt;Most people use their computers to work. They don&amp;rsquo;t spend all day admiring the desktop. Why should they struggle to read the menu items or the battery level, the Wi-Fi strength, and all the other icons that are there for a specific purpose, just because &lt;strong&gt;some dime-a-dozen designer decided that the menu bar should blend in with the desktop&lt;/strong&gt;?&lt;/p&gt;&#xA;&lt;p&gt;It is striking, though, that after no less than two Developer Beta releases, this setting has still not been translated into Italian and, I imagine, other languages. It is a small detail, but that gives the impression of a half-baked, thrown-together thing, something that the team working on this part of Tahoe is still not quite clear on.&lt;/p&gt;&#xA;&lt;p&gt;This reinforces doubts about how Tahoe&amp;rsquo;s development is progressing, as expressed very well by &lt;a href=&#34;https://mjtsai.com/blog/2025/07/07/menu-bar-madness-in-macos-26-and-ipados-26/&#34;&gt;Craig Grannelli&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;[this change] also makes me question Apple�s confidence in its design work. When Apple starts hedging its bets, it signals that it knows something is wrong, but lacks the conviction to course-correct. Or perhaps such settings are a means to temporarily shut people up, while default choices reveal the true intent and direction of travel.&lt;/p&gt;&lt;/blockquote&gt;&#xA;&lt;h4 id=&#34;system-settings&#34;&gt;System Settings&lt;/h4&gt;&#xA;&lt;p&gt;In my &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/&#34;&gt;first article on Tahoe&lt;/a&gt;, I reported that the new &lt;code&gt;Appearance&lt;/code&gt; item in &lt;code&gt;System Settings&lt;/code&gt; behaved strangely: setting the &lt;code&gt;Auto&lt;/code&gt; mode in the section related to &lt;code&gt;Dark&lt;/code&gt;, &lt;code&gt;Clear&lt;/code&gt;, and &lt;code&gt;Tinted&lt;/code&gt; icon (and widget) styles apparently had no effect.&lt;/p&gt;&#xA;&lt;p&gt;In the article, I supposed that this mode would allow the operating system to automatically adapt the display details of the chosen icon and widget style to the active &lt;code&gt;Light&lt;/code&gt; or &lt;code&gt;Dark&lt;/code&gt; mode. However, I also noted that the implementation seemed rather confusing.&lt;/p&gt;&#xA;&lt;p&gt;Actually, it wasn&amp;rsquo;t a poorly implemented feature; it was a true bug, as reported in the &lt;a href=&#34;https://developer.apple.com/documentation/macos-release-notes/macos-26-release-notes&#34;&gt;Release Notes&lt;/a&gt; for this beta.&lt;/p&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;&lt;strong&gt;Finder&lt;/strong&gt;&lt;br&gt;&#xA;&lt;strong&gt;Resolved Issues&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed: Finder does not display Dark Mode app icons or tinted folder colors when the Folder Color setting in System Settings &amp;gt; Appearance is set to Automatic. (152193702)&lt;/li&gt;&#xA;&lt;/ul&gt;&lt;/blockquote&gt;&#xA;&lt;p&gt;Unfortunately, even though Apple claims to have fixed the problem, I don&amp;rsquo;t see any improvement. However, I clearly see that certain combinations of settings still result in such low icon contrast that it becomes difficult to tell them apart.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/dark-tinted-auto.png&#34; alt=&#34;&#34;&gt;&lt;h4 id=&#34;the-finder&#34;&gt;The Finder&lt;/h4&gt;&#xA;&lt;p&gt;As soon as I opened the Finder, I had the impression that Apple had reduced the shadow intensity of the separate groups of icons that now make up the &lt;code&gt;Toolbar&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/finder-window.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Unfortunately, this is not the case; the shadow intensity, as well as the icon transparency, is identical to before, producing the same &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/&#34;&gt;color mess described in the previous article&lt;/a&gt; whenever the more colorful icons in the main Finder window end up beneath those in the Toolbar.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/finder-toolbar.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;To avoid this, it would be enough for the Finder&amp;rsquo;s Toolbar to retain the white background present since Big Sur (that replaced the previous &lt;em&gt;metallic&lt;/em&gt; one). This way, the icons shown in the main Finder window would be visible only in that window, without spilling over into the area reserved for the Toolbar.&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;The more I use Tahoe&amp;rsquo;s new-Finder, the more I wonder what&amp;rsquo;s the point of this confusion, where the Toolbar &amp;ndash; which isn&amp;rsquo;t there for beauty but to manage files and navigate the file system &amp;ndash; has to blend and overlap with the files themselves, in an indistinct mix that isn&amp;rsquo;t even aesthetically pleasing?&lt;/p&gt;&#xA;&lt;p&gt;Even Apple&amp;rsquo;s developers seem to have doubts about their choices, as switching from &lt;code&gt;Icon&lt;/code&gt; to &lt;code&gt;List&lt;/code&gt; view shows the usual clear separation between the main window and the Toolbar (apart from the three-dimensional effect added to the latter by Liquid Glass).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/finder-list-view.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;If we switch to &lt;code&gt;Column&lt;/code&gt; view, we find a third, intermediate mode between the previous two. In this mode, the Toolbar has a white background, but where the icons of applications and files are &lt;em&gt;blurred&lt;/em&gt; well before they reach the Toolbar, as happens in the normal &lt;code&gt;Icon&lt;/code&gt; view.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/finder-column-view.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;This confusion in the display mode of the Toolbar is not only present in the Finder but also in applications like Notes where, depending on the chosen display mode, you can find yourself with a transparent Toolbar that blurs everything that ends up underneath it,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/notes-transparent-toolbar.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;or with a normal Toolbar with a white background, as we are used to seeing since Big Sur.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/notes-background-toolbar.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Something similar also happens with Font Book, albeit with slightly different modes, while it doesn&amp;rsquo;t happen with Freeform or Preview, which always have a transparent Toolbar. Reminders is another special case, but I&amp;rsquo;ll leave you the pleasure to figure out why.&lt;/p&gt;&#xA;&lt;p&gt;In short, there seems to be a great deal of confusion in Cupertino, and even the developers cannot decide what to do with the new Liquid Glass-style Toolbar.&lt;/p&gt;&#xA;&lt;h4 id=&#34;application-icons&#34;&gt;Application Icons&lt;/h4&gt;&#xA;&lt;p&gt;I want to give the new application icons in the Finder their own section because, in this case, it&amp;rsquo;s no longer a simple matter of taste, but of the relationship between Apple and developers. After all, developers are fundamental to the success of a platform.&lt;/p&gt;&#xA;&lt;p&gt;But first, let&amp;rsquo;s briefly recap the issue.&lt;/p&gt;&#xA;&lt;p&gt;In macOS Tahoe, Apple has introduced a &lt;a href=&#34;https://developer.apple.com/design/Human-Interface-Guidelines/app-icons&#34;&gt;new icon format&lt;/a&gt; for applications, borrowed from iOS. The new icons have the shape of a &lt;a href=&#34;https://en.wikipedia.org/wiki/Squircle&#34;&gt;&lt;em&gt;squircle&lt;/em&gt;&lt;/a&gt;, a geometric shape intermediate between a circle and a square, and can be created with the new &lt;a href=&#34;https://developer.apple.com/icon-composer/&#34;&gt;&lt;code&gt;Icon Composer&lt;/code&gt;&lt;/a&gt;. This new format allows, among other things, to &lt;a href=&#34;https://developer.apple.com/design/Human-Interface-Guidelines/app-icons&#34;&gt;dynamically adapt&lt;/a&gt; the icons to the chosen style, or rather &lt;code&gt;Appearance&lt;/code&gt; (see the &lt;a href=&#34;https://melabit.com/en/2025/07/22/macos-tahoe-developer-beta-3/#system-settings&#34;&gt;System Settings&lt;/a&gt; section).&lt;/p&gt;&#xA;&lt;p&gt;So far, so good.&lt;/p&gt;&#xA;&lt;p&gt;The problem arises from the fact that there is no choice: &lt;strong&gt;the icons of all applications installed on the Mac can no longer have a customized shape&lt;/strong&gt;, such as that of &lt;a href=&#34;https://melabit.com/img/2025-07-22-macos-tahoe-developer-beta-3/app_icon-14-512.png&#34;&gt;BBEdit&lt;/a&gt; which I am using to write this post, but must obligatorily adopt the &lt;code&gt;squircle&lt;/code&gt; shape.&lt;/p&gt;&#xA;&lt;p&gt;All application icons that have not yet adapted to the new style imposed by Liquid Glass are automatically enclosed in a &lt;code&gt;squircle&lt;/code&gt; with an &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/#il-finder&#34;&gt;horrible dark gray background&lt;/a&gt; behind them, which seems to be placed there specifically to flag those &lt;em&gt;bad products&lt;/em&gt; that have not yet conformed to Apple&amp;rsquo;s new guidelines.&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;But redesigning icons is no piece of cake. For example, Bare Bones Software, which is certainly not an indie software house, has not complied yet. Its flagship product, BBEdit, was given a major update just a few days ago, but retained its traditional icon.&lt;/p&gt;&#xA;&lt;p&gt;Independent developers are even less enthusiastic about having to redo all their application icons following the new format imposed by Apple.&lt;/p&gt;&#xA;&lt;p&gt;One of them is &lt;a href=&#34;https://eclecticlight.co/&#34;&gt;Howard Oakley&lt;/a&gt;, who ironically calls macOS Tahoe the &lt;a href=&#34;https://eclecticlight.co/2025/06/22/last-week-on-my-mac-tahoe-the-iconoclast/&#34;&gt;&lt;em&gt;iconoclast&lt;/em&gt;&lt;/a&gt;, and equates the squircle with the gray background to a &lt;a href=&#34;https://eclecticlight.co/2025/06/22/last-week-on-my-mac-tahoe-the-iconoclast/&#34;&gt;&lt;em&gt;sin bin&lt;/em&gt;&lt;/a&gt;, as the area of the field where a player who has committed a foul is temporarily confined.&lt;sup id=&#34;fnref:6&#34;&gt;&lt;a href=&#34;#fn:6&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;6&lt;/a&gt;&lt;/sup&gt; Someone else goes even harder and calls the squircle a true &lt;a href=&#34;https://github.com/XcodesOrg/XcodesApp/issues/721&#34;&gt;prison&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Even those who decide to comply have problems because, as &lt;a href=&#34;https://eclecticlight.co/2025/07/10/tahoe-b3-and-xcode-26-b3-can-screw-app-icons/&#34;&gt;Howard Oakley tells us&lt;/a&gt;, updated icons for Tahoe may not work correctly in previous versions of macOS.&lt;/p&gt;&#xA;&lt;p&gt;Half of the applications installed on the Mac that I updated to macOS Tahoe have grey icons. In the month and a half between the release of the first Developer Beta and today, I believe none of them have adopted the new icon format. This includes Google Chrome, which certainly has the resources to adapt quickly. Some Apple applications, such as GarageBand and Xcode, don&amp;rsquo;t even follow their own guidelines. The latter is particularly significant given that Xcode is the main tool for developing Mac applications.&lt;/p&gt;&#xA;&lt;p&gt;My impression is that Tahoe&amp;rsquo;s graphical interface is not carved in stone -� oops, in glass &amp;ndash;  and that developers prefer to wait for the final version before conforming to Apple&amp;rsquo;s dictates.&lt;/p&gt;&#xA;&lt;p&gt;After all, between Developer Beta 1 and Beta 2, Apple has already changed the Finder icon due to popular outcry, and has added the option to restore the menu bar background. So it&amp;rsquo;s clear that Apple is not insensitive to the criticisms expressed by those who are previewing Tahoe.&lt;sup id=&#34;fnref:7&#34;&gt;&lt;a href=&#34;#fn:7&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;7&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;I almost forgot: you can even &lt;a href=&#34;https://simonbs.dev/posts/how-to-bring-back-oddly-shaped-app-icons-on-macos-26-tahoe/&#34;&gt;restore the usual oddly-shaped icons&lt;/a&gt; in Tahoe. However, it&amp;rsquo;s a manual and rather tedious process, that must be repeated for each affected application and for each Mac. I&amp;rsquo;ll pass.&lt;/p&gt;&#xA;&lt;h4 id=&#34;performance&#34;&gt;Performance&lt;/h4&gt;&#xA;&lt;p&gt;The third Developer Beta of macOS Tahoe seems much slower than the two previous versions. For example, Firefox takes forever to launch and restore previous tabs, but almost all applications seem more &lt;em&gt;sluggish&lt;/em&gt;, especially at startup, than is reasonable to expect on Apple Silicon. Some &amp;lsquo;System Settings&amp;rsquo; panels appear completely empty at first and take several seconds to display the available options.&lt;/p&gt;&#xA;&lt;p&gt;As annoying as it is, &lt;strong&gt;this is normal behavior in a beta&lt;/strong&gt;, which by its nature is filled with debug code and immature or poorly tested functions that may generate memory leaks, erroneous cache usage, and the like. I only mention it here because the first two Developer Betas appeared much more responsive than this one.&lt;/p&gt;&#xA;&lt;p&gt;In any case, restarting the system solves the problem, at least temporarily, while we await the release of the final version.&lt;/p&gt;&#xA;&lt;h4 id=&#34;conclusions&#34;&gt;Conclusions&lt;/h4&gt;&#xA;&lt;p&gt;In a few days, perhaps even tomorrow, Apple will make the Tahoe beta available to everyone, so that it can be tested by a much wider and more diverse audience.&lt;/p&gt;&#xA;&lt;p&gt;As I said earlier, the fact that the &lt;a href=&#34;https://512pixels.net/2025/06/finder-icon-fixed/&#34;&gt;Finder icon was changed mid-development&lt;/a&gt; demonstrates that Apple is listening to criticism about the new macOS interface. So there is hope that other issues will be resolved in the two months remaining until the official release of the new macOS version.&lt;/p&gt;&#xA;&lt;p&gt;If someone thinks that critical posts like those cited above, and maybe even the little notes you&amp;rsquo;ve just read, are written solely for the purpose of getting easy clicks&amp;hellip; well, never mind, the authors will come to terms with it.&lt;/p&gt;&#xA;&lt;p&gt;If someone thinks that critical posts like the ones mentioned above, or maybe even the humble piece you&amp;rsquo;ve just read, are written purely to get easy clicks, well, never mind&amp;hellip; the authors will come to terms with it.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;Apple is doing the same with the corresponding version of iPadOS (which I&amp;rsquo;m testing on my iPad Pro) and iOS (which I&amp;rsquo;m leaving alone for now).&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;&lt;a href=&#34;https://morrick.me/&#34;&gt;Riccardo Mori&lt;/a&gt; describes himself as a translator and writer, but in reality he also has extensive expertise in the field of design and typography. &lt;a href=&#34;https://daringfireball.net/&#34;&gt;John Gruber&lt;/a&gt; has been writing one of the most important blogs dedicated to the Apple universe for more years than I can remember and is the inventor of Markdown. &lt;a href=&#34;https://furbo.org/&#34;&gt;Craig Hockenberry&lt;/a&gt; is a developer who has produced, among other things, &lt;a href=&#34;https://tot.rocks/&#34;&gt;Tot&lt;/a&gt;, which I adore, and is one of the souls of &lt;a href=&#34;https://iconfactory.com/&#34;&gt;Iconfactory&lt;/a&gt;. &lt;a href=&#34;https://tolmasky.com/&#34;&gt;Francisco Tolmasky&lt;/a&gt; was a member of the original iPhone team, where he helped develop Safari for iOS, and is the creator of &lt;a href=&#34;https://www.cappuccino.dev/learn/objective-j.html&#34;&gt;Objective-J&lt;/a&gt;, a superset of JavaScript, and &lt;a href=&#34;https://www.cappuccino.dev/&#34;&gt;Cappuccino&lt;/a&gt;, an &amp;ldquo;open source framework that simplifies the creation of desktop-class applications running in a web browser&amp;rdquo;. &lt;a href=&#34;https://lmnt.me/intro/&#34;&gt;Louie Mantia&lt;/a&gt; is an artist and graphic designer specializing in &lt;a href=&#34;https://lmnt.me/intro/portfolio/&#34;&gt;icon design&lt;/a&gt;. &lt;a href=&#34;https://marco.org/&#34;&gt;Marco Arment&lt;/a&gt; is an iOS and web application developer, as well as a &amp;ldquo;writer, podcast producer, geek, and coffee lover.&amp;rdquo;&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;More or less the same thing happens when writing: if you have a text read by a third person, they will much more easily notice errors that the author, who now knows the text by heart, no longer pays attention to.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;As has always been the case, not just in macOS (or Mac OS X, or whatever you prefer to call it), from Sequoia all the way back to Cheetah, but also in the versions of Mac OS released throughout the &amp;rsquo;80s and &amp;rsquo;90s.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:5&#34;&gt;&#xA;&lt;p&gt;To make a sporting comparison, Apple seems more or less like that soccer referee who pulls out a yellow card while warning the striker that &amp;ldquo;one more silly mistake and I&amp;rsquo;ll send you off.&amp;rdquo;&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:6&#34;&gt;&#xA;&lt;p&gt;I swear that when I wrote the soccer comparison in the previous note, I had not yet read this comment by Howard Oakley.&amp;#160;&lt;a href=&#34;#fnref:6&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:7&#34;&gt;&#xA;&lt;p&gt;I can&amp;rsquo;t help but think that if Steve Jobs had seen what some of &lt;em&gt;his Finder&lt;/em&gt; icons have become, he would have kicked those responsible right out the window.&amp;#160;&lt;a href=&#34;#fnref:7&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
    <item>
      <title>macOS Tahoe: where is my Terminal?</title>
      <link>https://melabit.com/en/2025/07/08/macos-tahoe-where-is-my-terminal/</link>
      <pubDate>Tue, 08 Jul 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/07/08/macos-tahoe-where-is-my-terminal/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-07-08-macos-tahoe-dov-e-il-terminale/p4xisap4xisap4xi.png&#34; alt=&#34;&#34;&gt;&lt;br&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://gemini.google.com&#34;&gt;Google Gemini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Take macOS Tahoe, updated to version 26.0 Developer Beta 2, and open the Terminal. Actually, don&amp;rsquo;t just open one Terminal; open two, three, four different Terminals, &lt;a href=&#34;https://support.apple.com/guide/terminal/open-new-terminal-windows-and-tabs-trmlb20c7888/mac&#34;&gt;each in its own tab&lt;/a&gt;. More or less like this:&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-08-macos-tahoe-dov-e-il-terminale/tahoe-where-is-my-terminal.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Now tell me: which is the active Terminal?&lt;/p&gt;&#xA;&lt;p&gt;In order to answer you need to look closely. Only then you will notice that the title bar of the active Terminal has a slightly darker background and that the title itself is in bold.&lt;/p&gt;&#xA;&lt;p&gt;Do the same with Sequoia, or any other previous version of macOS, and the Terminal in use will be apparent at first glance.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-08-macos-tahoe-dov-e-il-terminale/sequoia-where-is-my-terminal.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Actually, there is also a way to tell which Terminal is active in Tahoe, but it is counterintuitive and requires the use of the mouse. If you hover the mouse over the active tab, nothing changes visually,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-08-macos-tahoe-dov-e-il-terminale/tahoe-where-is-my-terminal-hover.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;while, when you move the mouse over an inactive tab, its background gets darker.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-07-08-macos-tahoe-dov-e-il-terminale/tahoe-where-is-my-terminal-hover-2.png&#34; alt=&#34;&#34;&gt;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;To many, it may seem like a minor detail, but the Terminal is an essential tool for interacting with the operating system at a low level. Those who use it can’t afford to waste time figuring out which panel is the right one, nor can they risk running a dangerous command in the wrong Terminal.&lt;/p&gt;&#xA;&lt;p&gt;To give a practical example: for managing this blog, I use three different Terminal panels, each of which is dedicated to a specific task. In one panel, I work via &lt;code&gt;ssh&lt;/code&gt; on a test site, which I use to check that everything works properly before uploading the blog to the live server. Since this is only a test environment, I&amp;rsquo;m accustomed to wiping everything out with the command &lt;code&gt;rm -r *&lt;/code&gt;. I can do that without worry because I can tell at a glance that I&amp;rsquo;m in the right Terminal, without even reading. However, with Tahoe, I’ll have to change my habits because running that same command in the wrong Terminal could have catastrophic consequences.&lt;/p&gt;&#xA;&lt;hr style = &#34;border: none; &#xA;            border-top: 3px double #333; &#xA;            color: #333; &#xA;            overflow: visible; &#xA;            height: 5px; &#xA;            width: 50%; &#xA;            margin-left: auto; &#xA;            margin-right: auto;&#34;&#xA;&gt;&#xA;&#xA;&lt;p&gt;Among all the &lt;a href=&#34;https://melabit.com/en/2025/06/28/macos-tahoe-rimandato-a-settembre/&#34;&gt;inconsistencies in macOS Tahoe&lt;/a&gt;, this is perhaps the most baffling. And potentially the most dangerous.&lt;/p&gt;&#xA;&lt;p&gt;At this point, one can&amp;rsquo;t help but wonder: do Apple&amp;rsquo;s developers actually use the products they create?&lt;/p&gt;&#xA;</description>
    </item>
    <item>
      <title>macOS Tahoe: see you in September</title>
      <link>https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/</link>
      <pubDate>Sat, 28 Jun 2025 06:00:00 +0000</pubDate>
      <guid>https://melabit.com/en/2025/06/28/macos-tahoe-see-you-in-september/</guid>
      <description>&lt;p&gt;It’s becoming a habit. Earlier this year, instead of waiting, like I usually do, for the next version of macOS to be ready (or nearly ready) before installing the current one, &lt;a href=&#34;https://melabit.com/en/2025/02/04/apple-abbiamo-risolto-dei-problemi-da-sonoma-a-sequoia/&#34;&gt;I installed Sequoia on all my Macs&lt;/a&gt;. A few days ago, I decided to take the plunge and install the very first developer beta of Tahoe on a Mac that I don’t use much, mainly to try out the new &lt;em&gt;Liquid Glass&lt;/em&gt; interface on macOS.&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;Since this is my first time trying a macOS beta, I cannot say whether previous versions were more or less mature than Tahoe at this stage of development, which admittedly is still far from the official release.&lt;/p&gt;&#xA;&lt;p&gt;Therefore, I will share my first impressions of the new interface here, focusing in particular on the &lt;code&gt;Finder&lt;/code&gt;, which is one of the most frequently used applications, and on &lt;code&gt;System Settings&lt;/code&gt;, which is essential when getting familiar with a new operating system. After the official release in September, there will be time for a more in-depth evaluation.&lt;/p&gt;&#xA;&lt;h4 id=&#34;update&#34;&gt;Update&lt;/h4&gt;&#xA;&lt;p&gt;The update from Sequoia 15.5 to Tahoe 26 Beta weighs just over 7 GB, which seems in line with previous updates, and perhaps even slightly below average.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/ready-to-update.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The installation of the new operating system is fast. I dont’t know exactly how long it took, but I was surprised when I found out that it was already finished.&lt;/p&gt;&#xA;&lt;p&gt;After the update, the first thing you see is this screen, which gives a preview of Liquid Glass, with the buttons raised above the rest of the window. Here, there is no visible transparency effect yet, but there will be time for that, too.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/software-update-complete.png&#34; alt=&#34;&#34;&gt;&lt;h4 id=&#34;desktop-and-widgets&#34;&gt;Desktop and widgets&lt;/h4&gt;&#xA;&lt;p&gt;Once you click &lt;code&gt;Continue&lt;/code&gt;, the Tahoe &lt;em&gt;Welcome Screen&lt;/em&gt; appears, which, poor boy! looks like toothpaste writing overlaid on my Mac’s default background. Sadly, the days of the &lt;a href=&#34;https://www.youtube.com/watch?v=H2uzNyiODsw&#34;&gt;magnificent Welcome Videos&lt;/a&gt; of the early macOS versions with the big cat names are long gone.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/welcome-to-tahoe.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;From here, you go straight to the Mac Desktop, which now displays a few widgets on the left-hand side of the screen (some of the widgets do not show any information just because the screenshots were taken late at night, with an inactive internet connection).&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/desktop-widgets.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;I’ve never really liked widgets. On Tiger and later versions, I used a few, but only because they were neatly tucked away on a separate screen, the now forgotten &lt;a href=&#34;https://en.wikipedia.org/wiki/Dashboard_%28macOS%29&#34;&gt;Dashboard&lt;/a&gt;. Having them on the Desktop, which I use all day, just annoys me. I already know that, as soon as I finish this post, I’ll remove them without hesitation.&lt;/p&gt;&#xA;&lt;p&gt;But there’s time for that. For now, I’m just going to change the wallpaper to Tahoe’s default.&lt;sup id=&#34;fnref:2&#34;&gt;&lt;a href=&#34;#fn:2&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;2&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/default-wallpaper.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;I&amp;rsquo;m not thrilled with the new wallpaper: there are too many details and gradients for my taste, and the contrast with light icons, such as the disk icon, is too low. But no one is forcing me to use this exact wallpaper, so this is a non-issue.&lt;/p&gt;&#xA;&lt;h4 id=&#34;finder&#34;&gt;Finder&lt;/h4&gt;&#xA;&lt;p&gt;A &lt;em&gt;true problem&lt;/em&gt;, however, are the application icons with the dark gray background, which literally make me jump out of my seat when I first opened the Finder.&lt;sup id=&#34;fnref:3&#34;&gt;&lt;a href=&#34;#fn:3&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/applications.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;The original icons had a transparent background, which can be noticed simply by changing the background of the &lt;code&gt;Applications&lt;/code&gt; folder in Sequoia or earlier macOS versions. For reasons beyond understanding, in Tahoe this invisible background is replaced by a dark gray tone, that is an understatement to define as &lt;em&gt;ugly&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;p&gt;Clearly, Apple applications do not have this issue. However, as shown in the previous image, some of the most popular ones are affected by it, with Google Chrome being one of the main examples.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/apple-applications.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;However, when I scroll down towards the less popular apps, I find lots of ugly icons bordered in gray! In some cases, the icons have even been shrunk, presumably due to the new dynamic scaling rules of Liquid Glass, making the gray area around them even larger. Who on earth came up with something like this?&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/other-applications.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;This is not the only questionable aspect of the new Finder. Here, the familiar &lt;code&gt;Toolbar&lt;/code&gt; has been replaced by separate groups of translucent icons that seem to float above the main window.&lt;/p&gt;&#xA;&lt;p&gt;The change feels somewhat rushed, especially since they forgot to raise also the folder name. That said, the new toolbar can be considered acceptable, even if inconsistent, when there is a light background behind the icons (as shown in some of the images above).&lt;/p&gt;&#xA;&lt;p&gt;But when the translucent icons of the Toolbar overlap the most colorful icons of the main Finder window (as shown in the image below), the result is a chaotic, unpleasant mix of colors, that makes it hard to tell one Toolbar icon from another.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/finder-toolbar.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Maybe using a stronger blur effect or reducing the transparency might help to avoid the issue. However, wouldn’t it be better to just stick with the old white toolbar, with the new floating icons on top?&lt;/p&gt;&#xA;&lt;p&gt;And yes, I understand that everything must speak the &lt;em&gt;liquid&lt;/em&gt; concept now, but was it really necessary to turn the cursor in the Finder’s status bar (the one in the bottom right corner that lets you resize the icons) into such a huge yet barely visible &lt;em&gt;capsule&lt;/em&gt;?&lt;/p&gt;&#xA;&lt;p&gt;On the other hand, the new Trashcan isn’t bad at all; it looks more modern than the classic cylindrical one we have always had. I do wonder how it would stand upright, but it is clear that skeuomorphism has been dead for a while now.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/trashcan.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;Still on the topic of the Finder: could someone explain why the &lt;code&gt;Settings&lt;/code&gt; window in the Finder still has the slightly rounded corners from Sequoia, and why its icons look thinner than those in the sidebar of the main window?&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/finder-settings.png&#34; alt=&#34;&#34;&gt;&lt;h4 id=&#34;the-new-apps&#34;&gt;The new Apps&lt;/h4&gt;&#xA;&lt;p&gt;The new &lt;code&gt;Apps&lt;/code&gt; application, on the other hand, isn’t bad at all: it groups installed apps in a logical way, more or less as iOS already does. It definitely looks better than &lt;code&gt;Launchpad&lt;/code&gt;, which I tried to use but quickly gave up on,&lt;sup id=&#34;fnref:4&#34;&gt;&lt;a href=&#34;#fn:4&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;4&lt;/a&gt;&lt;/sup&gt; though I don&amp;rsquo;t like the fact that it takes two clicks to access the apps in a given group.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/apps.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;&lt;code&gt;Mission Control&lt;/code&gt; hasn’t changed, and I’m totally fine with that. I use it a lot, and I wouldn’t like to break my habits. The same goes for &lt;code&gt;Chess&lt;/code&gt;, which I never play because I always lose, but that has been a part of macOS since&amp;hellip; forever (and was present in its forefather, NeXTSTEP, too).&lt;/p&gt;&#xA;&lt;p&gt;The other default applications don&amp;rsquo;t seem to have changed much either, but I&amp;rsquo;ll save a more detailed analysis for later.&lt;/p&gt;&#xA;&lt;h4 id=&#34;system-settings&#34;&gt;System Settings&lt;/h4&gt;&#xA;&lt;p&gt;Lastly, a look at &lt;code&gt;System Settings&lt;/code&gt;. I won&amp;rsquo;t to comment on how confusing it has become. Up to Monterey, a quick glance was enough to find what you needed. But ever since macOS started mimicking iOS, you basically have to rely on the search function every time you need to find some setting.&lt;sup id=&#34;fnref:5&#34;&gt;&lt;a href=&#34;#fn:5&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;5&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;&#xA;&lt;p&gt;What I &lt;em&gt;will&lt;/em&gt; comment on is the new feature that globally changes the color of macOS Tahoe icons and widgets. Here you can see the &lt;code&gt;Default&lt;/code&gt; icon (and widget) style which, aside from the grayish border I mentioned earlier, is what we have always been used to seeing.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-default.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;This image shows what happens when the &lt;code&gt;Dark&lt;/code&gt; style is enabled. While all the Apple icons visible in the Dock do change, the application icons shown in the Finder do not —- probably because they need to be updated to support this new style. However, the &lt;code&gt;Light&lt;/code&gt; theme doesn’t really do this new style justice,&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-light-theme-dark-icons.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;whereas with the Dark theme, it’s a whole different story.&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-dark-theme-dark-icons.png&#34; alt=&#34;&#34;&gt;&lt;p&gt;However, if I enable the &lt;code&gt;Dark&lt;/code&gt; style and select the &lt;code&gt;Auto&lt;/code&gt; mode, the entire interface reverts to looking exactly like the &lt;code&gt;Default&lt;/code&gt; style. You can see it in the two images below: the first shows the Mac screen with the &lt;code&gt;Dark&lt;/code&gt; style and &lt;code&gt;Auto&lt;/code&gt; mode enabled, while the second shows the &lt;code&gt;Default&lt;/code&gt; style.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-dark-icons-auto.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-default.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I assume that the &lt;code&gt;Auto&lt;/code&gt; mode is supposed to allow the operating system to automatically select the styling that best fits the current &lt;code&gt;Light&lt;/code&gt; or &lt;code&gt;Dark&lt;/code&gt; mode. While this makes sense, it might need a different implementation; as it stands, it just ends up being confusing.&lt;/p&gt;&#xA;&lt;p&gt;The other two styles, &lt;code&gt;Clear&lt;/code&gt; and &lt;code&gt;Tinted&lt;/code&gt;, are nice enough, but personally I don&amp;rsquo;t like the idea of having all the icons in the same colour. I’m sure plenty of people will appreciate these new uniform styles, but I doubt I’ll ever use them myself.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-clear.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-tinted.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;Even with these styles, the &lt;code&gt;Auto&lt;/code&gt; mode automatically adjusts the appearance to match the active theme. Here too, I think that both the placement and the labeling of the automatic mode needs some improvement.&lt;/p&gt;&#xA;&lt;p&gt;Not bad at all, the option to change the accent color of the user interface.&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-accent-color-1.png&#34; alt=&#34;&#34;&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/settings-appearance-accent-color-2.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;I’m not really into these things, but a lot of people like them, and since they don’t overhaul the interface, why not?&lt;/p&gt;&#xA;&lt;p&gt;The final gem is the huge switch that toggles Bluetooth (as well as Wi-Fi and VPN). True, even in Sequoia these switches were larger than the others, but don’t you think Apple has gone a bit too far this time?&lt;/p&gt;&#xA;&lt;img src=&#34;https://melabit.com/img/2025-06-28-macos-tahoe-rimandato-a-settembre/bluetooth-panel.png&#34; alt=&#34;&#34;&gt;&lt;h4 id=&#34;conclusions-for-now&#34;&gt;Conclusions (for now)&lt;/h4&gt;&#xA;&lt;p&gt;This ends up my quick overview of macOS Tahoe and its Liquid Glass interface. If I gave the impression that I’m not thrilled about it, well, that’s exactly how I feel.&lt;/p&gt;&#xA;&lt;p&gt;I really appreciate that Apple had the courage to change, aiming to develop a consistent interface across all its devices. Liquid Glass definitely has a lot of potential, but it’s still quite immature on macOS, perhaps even more so than on the iPad. It reminds me of the &lt;em&gt;metallic&lt;/em&gt; transition of Leopard, which needed several subsequent macOS releases to refine.&lt;/p&gt;&#xA;&lt;p&gt;In any case, Liquid Glass is the future, and we’ll have to live with it for quite a few years. So it’s best to start appreciating its positive aspects now, and be patient with the negatives.&lt;/p&gt;&#xA;&lt;p&gt;In the meantime, Apple’s developers have fixed the &lt;a href=&#34;https://512pixels.net/2025/06/finder-icon-fixed/&#34;&gt;flipped Finder icon&lt;/a&gt;, which caused &lt;a href=&#34;https://512pixels.net/2025/06/wwdc25-macos-tahoe-breaks-decades-of-finder-history/&#34;&gt;quite a stir&lt;/a&gt;. Hopefully, before the official September release, they’ll do the same for the many other oddities and inconsistencies.&lt;/p&gt;&#xA;&lt;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;&#xA;&lt;hr&gt;&#xA;&lt;ol&gt;&#xA;&lt;li id=&#34;fn:1&#34;&gt;&#xA;&lt;p&gt;On the iPad, Liquid Glass is very interesting, though still quite immature.&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:2&#34;&gt;&#xA;&lt;p&gt;Unless they’re really ugly, like some Linux wallpapers, I always stick with the default backgrounds. I’m not a fan of extreme system customization, and using the default wallpaper helps me to instantly recognize which OS version I’m running. Besides, macOS default wallpapers are almost always &lt;a href=&#34;https://melabit.com/it/2022/04/26/dai-wallpaper-agli-sfondi/&#34;&gt;really beautiful&lt;/a&gt;.&amp;#160;&lt;a href=&#34;#fnref:2&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:3&#34;&gt;&#xA;&lt;p&gt;Actually, these grayish icons were already showing up in the Dock. But due to the late hour or the low contrast, I hadn’t really paid attention to them.&amp;#160;&lt;a href=&#34;#fnref:3&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:4&#34;&gt;&#xA;&lt;p&gt;For example, because it used to lose the carefully set layout and didn’t allow syncing it across multiple Macs.&amp;#160;&lt;a href=&#34;#fnref:4&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li id=&#34;fn:5&#34;&gt;&#xA;&lt;p&gt;Some might suggest that having a similar layout between macOS and iOS is a good thing. Indeed it is, but unfortunately iOS settings have always been one of the most confusing things I’ve ever seen. Therefore, it would have made more sense to adapt the macOS settings model to iOS, instead.&amp;#160;&lt;a href=&#34;#fnref:5&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;/div&gt;&#xA;</description>
    </item>
  </channel>
</rss>
