<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Micropython on Melabit</title>
    <link>https://static.233.196.69.159.clients.your-server.de/en/tags/micropython/</link>
    <description>Recent content in Micropython on Melabit</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Mon, 09 Mar 2026 18:00:00 +0000</lastBuildDate>
    <atom:link href="https://static.233.196.69.159.clients.your-server.de/en/tags/micropython/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The Dory effect</title>
      <link>https://static.233.196.69.159.clients.your-server.de/en/2026/03/09/the-dory-effect/</link>
      <pubDate>Mon, 09 Mar 2026 18:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/en/2026/03/04/antigravity-a-driver-written-by-ai/</link>
      <pubDate>Wed, 04 Mar 2026 18:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/img/2026-03-04-antigravity-un-driver-scritto-dall-ia/capture.jpeg&#34;&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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>
  </channel>
</rss>
