Programming Leftovers
-
Nirvana
None of this is the answer. None of this is close to the answer. To find the answer ask why did these things arise in Lisp first? What is the property of Lisp which is in fact unique to Lisp and which defines Lisp in strict sense that if any other language had this property it would be a Lisp? To see answer to this you must understand Bradshaw’s law and my corollary to it: [...]
-
Managing Database Migrations in Kotlin
The database schema should be described as code, in your repository. And you should be able to semi-automatically update your database schema on new deployments. Now in Kotlin, with Gradle and Flyway.
-
From "It Works" To "It Scales"
I recently got to a point where combine.social started running out of memory. What that meant for users was that at some peak hours, they may not have gotten updates for remote replies in their timelines.
This was not ideal, obviously, so something had to happen. Luckily, I had anticipated that this time would come from the onset of the project. My chosen solution was a mono-repo structure where I could split some of the functionality out of the API service into shared packages, and some of the functionality into separate apps.
-
March/April in KDE PIM
Here's our bi-monthly update from KDE's personal information management applications team, covering progress made in the months of March and April 2023.
Since the last report, 38 people contributed approximately 1700 code changes, focusing on bugfixes and improvements for the 23.04 release, as well as preparing for the transition to Qt 6.
KDE PIM Sprint
On the first weekend of April, a few of us met in Toulouse for the first post-pandemic KDE PIM Sprint. Kevin has published a report with details on everything we did.
Transition to Qt 6/KDE Frameworks 6
Shortly after the KDE PIM sprint in Toulouse, the switch to Qt 6 and KF6 entered its final phase with the creation of the
.kf6
porting branches in the KDE PIM repositories. The aim is to publish a first release based on that towards the end of the year. See the corresponding blog post for more details. -
Andy Wingo: structure and interpretation of ark
Hello, dear readers! Today's article describes Ark, a new JavaScript-based mobile development platform. If you haven't read them yet, you might want to start by having a look at my past articles on Capacitor, React NativeScript, Flutter; having a common understanding of the design space will help us understand where Ark is similar and where it differs.
Ark, what it is
If I had to bet, I would guess that you have not heard of Ark. (I certainly hadn't either, when commissioned to do this research series.) To a first approximation, Ark—or rather, what I am calling Ark; I don't actually know the name for the whole architecture—is a loosely Flutter-like UI library implemented on top of a dialect of JavaScript, with build-time compilation to bytecode (like Hermes) but also with support for just-in-time and ahead-of-time compilation of bytecode to native code. It is made by Huawei.
At this point if you are already interested in this research series, I am sure this description raises more questions than it answers. Flutter-like? A dialect? Native compilation? Targetting what platforms? From Huawei? We'll get to all of these, but I think we need to start with the last question.
-
PC Architecture & Assembly Language book
Wow, this has brought back memories! A couple of weeks ago, I received a message on the Puppy Forum from Colin. Here it is:
Hi Barry,
This message has been on my list for a long time, but for some reason I've never got around to sending.
I was a student in your Microprocessors class at Edith Cowan back in 1993, and it genuinely was my favourite during my undergrad degree (which ironically was not a science or IT major) and was absolutely the fuel that elevated my interest in computing beyond hobbyist. While I spent the better part of 20yrs in law enforcement, I eventually left government and transitioned to cyber security, making use of the fundamentals I learned in your class, and even referring to your book again when starting to dabble in malware analysis.
After almost 10 years abroad doing a variety of digital forensic work, when I returned to Australia last year and unpacked some boxes I again discovered your Assembly book among the few that I kept. It sits proudly on my bookcase as a reminder that a strong technical base goes a long way.
Thank you for your course, your enthusiasm as a teacher and for the spark that took to me down a different path and a mentally stimulating career living and working in places I never expected.
I hope that you are well, and from your site it appears you are enjoying pursuing both new and old interests.
Regards,
-
Some of my workshop teaching tricks
I make most of my money off teaching workshops, and that means I put a lot of time into thinking about how to teach them better. Most of that goes to lesson planning, topic order, pedagogical improvements, etc. But I also regularly write assistive programs. See, there’s two sources of complexity in workshops: [...]