news
Free, Libre, and Open Source Software and Standards Leftovers
-
Sal ☛ A perfect editor
In addition to offering a generally great and active blog, Bruce has done the admirable work of aggregating actual research on this perplexing topic in his post, There is A Perfect Editor (title is tongue-in-cheek). Here are a couple excerpts I appreciated.
-
Bruce Ediger ☛ There is A Perfect Editor
The "My editor is better than your editor" argument famously comprises the longest-running continuous argument in computer programming. One can easily dismiss most of the common arguments on the topic, since the argument-makers appear ill-informed, no definitions of terms ever get offered or agreed-upon, hidden assumptions riddle the arguments and subjective preference carries more weight than experiment. Nevertheless, editor users bring up important points on ease-of-use, editing power, and what sort of interface an editor possesses. Despite endless discussion, poorly-formed concepts like "easy", "powerful", "consistent" "intuitive" and their opposites appear in most of the arguments. No two arguers agree on what the terms mean.
In order to form more perfect arguments, I present a first cut at a bibliography of real research that seems directed toward finding the perfect editor. I did not perform an exhaustive literature search, so please inform me of any missing citations. I'm missing electronically-retrievable forms for almost all of these papers.
-
Protesilaos Stavrou ☛ Emacs: ‘doric-lilac’ and ‘doric-borage’ coming to the ‘doric-themes’
I have been working on two new themes for my minimalist doric-themes package. The original plan was to publish them together as part of the version 1.2.0 from a few days ago (the version that also brought doric-tiger and doric-lion), but then I decided to refine them further.
-
Otávio C ☛ Twenty Years Later: Coltrane
A few months ago, nostalgia got the better of me. I missed the old days of solving equations and implementing simulations, the kind of problems where the math and the code are inseparable. I wanted to revisit the galaxy collisions and the crowd simulations in Swift, to see those problems through a modern lens.
One thing led to another. Before writing a single simulation, I found myself thinking about the foundation. I could have reached for Swift's structured concurrency. It's first-party, well-designed, and what I use professionally. But the more I thought about it, the more I wanted to know whether the ideas behind Anahy, the same model, the same scheduling approach, could be re-implemented cleanly in Swift, without async/await, and still perform competitively on modern hardware. So that became the project.
-
Mikael Zayenz Lagerkvist ☛ Gecode 6.3.0 and 6.4.0 are released - zayenz.se
The two releases play different roles. Version 6.3.0 records the changes that accumulated on its release branch during the seven years since Gecode 6.2.0. Version 6.4.0 is also a new starting point. From now on development is on the main branch, CMake is the intended build system, and releases will be source-only.
If you are starting a new project or upgrading an existing one, 6.4.0 is the version to use. The rest of this post groups the changes by what they mean for users and developers, rather than following the history commit by commit.
-
Bozhidar Batsov ☛ Stepping Through Macros in CIDER
CIDER has had macroexpansion support practically forever - C-c C-m expands the form before point into a dedicated buffer, a feature we inherited spiritually from SLIME. It works, but it has always felt a bit… detached. The expansion lives in another buffer, divorced from the code you’re reading, and for deeply nested macros you end up bouncing between buffers trying to keep your bearings.
Emacs Lisp hackers have long had something nicer: macrostep, a brilliant little package that expands macros in place - right where they sit in your code - one step at a time, and collapses them back when you’re done. I’ve wanted a Clojure version of this for years. CIDER 2.0 finally ships one.
-
Daniel Fichtinger ☛ tiny kak tip: filetype mode
In this example, we use Kakoune’s “user mode” feature to create a special “filetype mode” where we can assign filetype-specific keybindings. This can be helpful to organize binding commands that are very convenient, but only useful in certain filetypes. For example, I don’t need to surround or de-surround a selection with \emph{} in filetypes other than LaTeX.
-
SaaS/Back End/Databases
-
Julia Evans ☛ Learning a few things about running SQLite
Hello! I’ve been working on a Django site recently, and I decided to use SQLite as the database. When I was getting started with using SQLite as database for a website I read a bunch of blog posts about how it is totally fine to use SQLite in production for a small site and I think it is totally fine, but what I did not fully appreciate is that SQLite is still a database, databases are complicated, and I do not know a lot about operating databases.
So here are a couple of small things I’ve been learning about running SQLite. This is the 4th website I’ve used SQLite for, and I think this one is harder because with the power of the Django ORM I’ve been making the database do more work than I was previously without Django.
-
-
Education
-
Raspberry Pi ☛ Hello World #30 out now: Critical thinking in the age of AI
In issue 30 we share articles from educators who have already been thinking deeply about the role of critical thinking in the age of AI. They discuss a range of questions such as: What do educators bring to the table when teaching with digital technologies? Why AI professional learning should build teachers’ critical thinking, not just their confidence in using tools Whose knowledge is shaping AI?
Our feature articles also include: [...]
-
Raspberry Pi ☛ Enhancing your enrichment offer? Code Club is the answer
There’s something really special about a Code Club. It’s a unique space for young people to get creative with technology on their terms, explore what interests them, and learn through experimenting and having fun. But speak to any Code Club leader and they’ll tell you: Code Club delivers so much more than just coding skills.
-
-
GNU Projects
-
GNUnet News: GNUnet 0.28.0
GNUnet 0.28.0 released
We are pleased to announce the release of GNUnet 0.28.0.
Major versions may break protocol compatibility with the 0.27.X versions.
-
-
Standards/Consortia
-
Document Foundation ☛ How proprietary formats have become Microsoft’s main tool for lock-in
In the previous article, we explored the importance of standards: how the unspoken agreements governing electrical sockets, paper sizes and file formats form the foundations of a world in which choices remain open and power is not concentrated in the hands of a single player.
-
David Pogue ☛ Can AI Fix the Portrait vs. Landscape Problem?
For 15 years, that’s where the H vs. V situation stood: a disaster with no solution. Then, in 2020, someone spent $1 billion trying to fix the problem.
It was a new streaming service called Quibi. It shut down after six months, but the short-form episodes brought a radical solution to the phone-shape problem: a technology called Turnstyle.
-