<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Terminal on Melabit</title>
    <link>https://static.233.196.69.159.clients.your-server.de/en/tags/terminal/</link>
    <description>Recent content in Terminal on Melabit</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Sat, 09 Aug 2025 06:00:00 +0000</lastBuildDate>
    <atom:link href="https://static.233.196.69.159.clients.your-server.de/en/tags/terminal/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Goodbye dc, welcome luka: a new RPN calculator for the Terminal</title>
      <link>https://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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>macOS Tahoe: where is my Terminal?</title>
      <link>https://static.233.196.69.159.clients.your-server.de/en/2025/07/08/macos-tahoe-where-is-my-terminal/</link>
      <pubDate>Tue, 08 Jul 2025 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/en/2025/07/08/macos-tahoe-where-is-my-terminal/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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://static.233.196.69.159.clients.your-server.de/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>Apple, we have other problems: a look at macOS vintage bugs</title>
      <link>https://static.233.196.69.159.clients.your-server.de/en/2024/02/22/apple-we-have-other-problems-a-look-at-macos-vintage-bugs/</link>
      <pubDate>Thu, 22 Feb 2024 06:00:00 +0000</pubDate>
      <guid>https://static.233.196.69.159.clients.your-server.de/en/2024/02/22/apple-we-have-other-problems-a-look-at-macos-vintage-bugs/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://static.233.196.69.159.clients.your-server.de/img/2024-02-22-apple-abbiamo-altri-problemi-uno-sguardo-ai-bachi-depoca-di-macos/macos-bugs.jpeg&#34; alt=&#34;&#34;&gt;&#xA;&amp;ndash; &lt;em&gt;Image generated by &lt;a href=&#34;https://designer.microsoft.com/image-creator&#34;&gt;Microsoft Designer&lt;/a&gt; AI.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;In the &lt;a href=&#34;https://melabit.com/en/2024/02/12/apple-we-have-a-problem-a-look-at-macos-sonoma-bugs/&#34;&gt;last post&lt;/a&gt;, I described some very recent bugs present in Sonoma, the latest version of macOS.&lt;/p&gt;&#xA;&lt;p&gt;The bugs reported here, however, have persisted across several versions of macOS, and it seems that Apple has &lt;a href=&#34;https://tidbits.com/2019/10/21/six-reasons-why-ios-13-and-catalina-are-so-buggy/&#34;&gt;no intention of fixing them&lt;/a&gt; or doesn’t even consider them to be bugs. These issues, unlike &lt;a href=&#34;https://eclecticlight.co/2023/12/14/serious-bugs-remain-in-macos-sonoma-14-2/&#34;&gt;other reports&lt;/a&gt;, don’t occur under extreme conditions or after opening a zillion files but during completely normal use, which makes it even stranger that they’ve never been resolved.&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 first two are more user interface inconsistencies, which are surprising given the &lt;a href=&#34;https://developer.apple.com/design/human-interface-guidelines&#34;&gt;almost obsessive attention&lt;/a&gt; Apple dedicates to the &lt;a href=&#34;https://developer.apple.com/design/&#34;&gt;design details&lt;/a&gt; of its products.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;The scrollbar for the list of purchased apps in the App Store is partially hidden by the window title and only appears after scrolling through a certain number of apps (the exact number depends on the total apps in the list—if there are many, you’ll have to scroll quite a bit to see the scrollbar).&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;The same thing happens on the App Store home page when you move the mouse to the top of the window, causing the title to appear. However, since this page contains fewer elements, part of the scrollbar remains visible.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&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;This one, however, is an old bug related to Terminal.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;I’ve configured &lt;code&gt;System Settings &amp;gt; Desktop &amp;amp; Dock&lt;/code&gt; so that the &lt;code&gt;Prefer tabs when opening documents&lt;/code&gt; option is always active. This way, every time I open a new window in applications that support this feature (including Terminal), macOS creates a new tab instead of a new window.&lt;/p&gt;&#xA;&lt;p&gt;But if I’m using Terminal with a custom configuration (e.g., mine is set to 120 columns x 40 rows) and I select the menu option &lt;code&gt;New Window&lt;/code&gt; with a profile of a different size (e.g., the default of 80 columns x 24 rows), a new tab is indeed created, but the entire Terminal changes size to match the profile just chosen.&lt;/p&gt;&#xA;&lt;p&gt;This might even be a deliberate design choice. However, it contrasts with what happens when the &lt;code&gt;Prefer tabs when opening documents&lt;/code&gt; option is only active in full-screen mode, where the new tab adopts the size of the existing one.&lt;/p&gt;&#xA;&lt;p&gt;To be fair, it was worse in High Sierra: every time a new tab was opened, Terminal would lose a row. Fortunately, this bug was fixed in the next version of macOS.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&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;For me, who always uses the &lt;code&gt;Align to Grid&lt;/code&gt; option in Finder windows, organizes file icons visually in a logical order (at least for me), and often leaves empty spaces, this next bug is a major nuisance.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Until El Capitan, if I moved icons in a folder below the bottom edge of the window, Finder kept their order intact, leaving a blank space where the icons were originally located. Starting with Sierra, however, the bottom edge of the Finder window became a sort of impenetrable barrier, causing icons dragged below it to “bounce” back to the top of the window, leaving the bottom empty.&lt;/p&gt;&#xA;&lt;p&gt;To avoid this, you have to drag the icons while holding the &lt;strong&gt;CMD&lt;/strong&gt; (⌘) key, which in theory bypasses the grid alignment, but then you’ll need to manually restore their order afterward.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&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;This final gem, undoubtedly my favorite macOS bug, isn’t just an annoyance, it’s a &lt;em&gt;royal pain in the neck&lt;/em&gt;.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Just like with documents, I organize applications visually, grouping them by type and usage frequency, aligning the icons to Finder’s virtual grid.&lt;/p&gt;&#xA;&lt;p&gt;As a result, I place all pre-installed Apple apps (Pages, Numbers, Keynote, Xcode, iMovie, GarageBand, etc.) at the top of the &lt;code&gt;Applications&lt;/code&gt; folder, followed by office tools (Office 365, LibreOffice, PDF managers), communication apps (Teams, Webex, Skype), browsers, and remote access apps. Further down are apps specific to my work—note-taking, code editing, image editing—and at the bottom, utilities for monitoring Mac temperature, managing the clipboard, unzipping files, recording the screen, and occasionally running an antivirus scan (MalwareBytes).&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;This organization allows me to quickly locate the app I need, as I know exactly where it should be even if I don’t remember its name.&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;Unfortunately, for several macOS versions now, every time I update the OS, app icons are always reordered alphabetically. Since alphabetical order is the default for the &lt;code&gt;Applications&lt;/code&gt; folder, most users don’t notice this. But for those like me, who prefer custom order, it means having to reorganize everything after every update.&lt;/p&gt;&#xA;&lt;p&gt;Why do I consider this a bug and not a feature? The reason is simple: Finder allows different sorting options for any folder—alphabetically, by date, by size, by type—and also lets you align items to a grid or leave them unordered. So why should the &lt;code&gt;Applications&lt;/code&gt; folder behave differently?&lt;/p&gt;&#xA;&lt;p&gt;Are there technical reasons for this decision? Under normal use, the &lt;code&gt;Applications&lt;/code&gt; folder can be customized like any other Finder folder, so why should Finder reset customizations after every OS update, even minor ones?&lt;/p&gt;&#xA;&lt;p&gt;In my humble opinion, this issue, along with the one mentioned above, is tied to a problem with the pesky &lt;code&gt;.DS_Store&lt;/code&gt; files that manage each Finder folder’s configuration. The &lt;a href=&#34;https://0day.work/parsing-the-ds_store-file-format/&#34;&gt;file format&lt;/a&gt; is more secretive than Area 51.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&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;If anyone from Apple’s development team is reading this, could you spare an hour to fix these bugs? It shouldn’t be too difficult—please take a look, a loyal user would be grateful.&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 ability to organize apps and documents visually is one of macOS’s features that makes me prefer it over Linux or—horror!—Windows, where this workflow simply doesn’t exist.&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;On the Mac I’m using to write this, I have 148 installed apps, which, for my habits, isn’t even that many. Remembering all their names isn’t for me, so I’ve never used alphabetical sorting or apps like Alfred and the like.&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>
  </channel>
</rss>
