January 1st, 2021
מרק אפונה הולנדי (Snert) בהשראת אנדונג – ולבקשת הקהל, עם כמויות וכשר!
הכי כדאי להתחיל בלראות את הוידאו המקושר להלן: כי (א) הוא מצחיק, (ב) הוא מסביר את המקור של המרק ו-(ג) יש לו כמה נקודות חשובות להסביר (כמו, למשל, למה שמים את המלח רק בסוף), אבל עכשיו – קדימה למתכון. Read the rest of this entry »
Posted in Food | No Comments »
August 21st, 2020
This is a public response to Johan Thelin’s post “The API wars – 16 years later. His blog commenting system looks a bit broken and regardless – I think its an important enough discussion to publish here. The main premise of the article is that the web APIs have won the “API war” in the context of Joel’s Spolsky’s “How Microsoft lost the API war” article from 2014 but the main winner is the globally domineering Google and we should subvert their victory by moving to the new runtime – the WebAssembly, that is better in every way.
Here’s what I had to say about that:
Read the rest of this entry »
Posted in Articles, Evangelism, Social, Software, Tech | 2 Comments »
July 4th, 2020
I often say that one of the main reasons I use KDE Plasma as my default graphical workspace is that some of the KDE specific software is the best at what it does, and specifically – as a lot of my computer time is spent using a console – the KDE terminal emulator software Konsole is the best in the world.
Read the rest of this entry »
Posted in Evangelism, Software | No Comments »
July 30th, 2018
This is a bit of a weird script day – the script is pretty simple but the integration is interesting. I’m scratching my own itch here and also demonstrating how to:
- Use
dbus-monitor
to listen to D-Bus events
- Use SystemD user services to run a session service
- Update KDE configuration safely from scripts
Read the rest of this entry »
Posted in Articles, Programming, Script Day, Software, Tech | 14 Comments »
May 16th, 2018
Recently I had to move a lot of data between an old GSuite Business account and a new GSuite Business account. Google support for such a migration is… well… can stand to be improved. The main pain points are email , Drive , Team Drives , Calendar , and for everything else – there is no migration. Google+ posts, password storage, Sites, Forms have to be recreated manually, and my pet peeve: Google Groups Archives.
If you’re not familiar with this awesome GSuite feature, which is based on the Google Groups usenet-like service, Google Groups for Business is a mailing list manager that in addition to distributing emails to recipients, also stores each email in an accessible archive – so new users can have access to old communications (this is great for accounting and support) and on top of that you can get forum like features with posting replies to topics and such. Unfortunately Google Groups has no export feature and because the archive is all about past communications, you can’t actually reproduce that data manually when you move to a new GSuite account.
Read the rest of this entry »
Posted in Articles, Tech | 5 Comments »
March 26th, 2018
With version 8, Java finally jumped on the asynchronous programming bandwagon with its own Promise-Oriented programming model, implemented by the CompletableFuture
class and a set of interfaces and implementations it uses. The model is generally useful and not as horribly complicated as we sometimes get in the Java foundation class library , and it lends itself to fluent programming much better than the comparable model from fluent API proponent Vert.x project.
The Problem
One thing that most asynchronous computing models suffer from – and Java’s CompletableFuture
is no exception – is the loss of typed exception handling. While CompletableFuture.exceptionally()
is a good model that does not introduce a lot of boilerplate , you do lose the ability of the try..catch..finally
syntax to effortlessly ignore exceptions you are not ready to handle and just letting them propagate up the stack. Read the rest of this entry »
Posted in Articles, Programming, Software | 1 Comment »