For the past ten months, I've been using my PinePhone as a "daily driver." By
which, I mean it's been in my pocket everywhere I go, and it's the device I use
to make phone calls. Depending on your familiarity with the PinePhone (or the
state of "Linux Phones" more generally) this statement is either delirious, or
vapid (why should I care that you use a "smart" phone just like the rest of us?)
Don't be mistaken: the PinePhone is usable as a little cellular-capable PDA, and
it's in a league of its own. This article is my attempt to document my
experiences and rationale for wanting to use one, as well as my thoughts on
mobile Linux in general.
read more →
My Flipper Zero arrived in the mail a few weeks ago, ending a nearly two-year
wait for its arrival. For the uninitiated, it's a "multi-tool device for geeks":
a development board for radio, IR, and GPIO in a Tamagotchi-like form-factor. It
combines the capability of the GoodWatch with the cuteness of the Pwnagotchi.
Part of the appeal, to me, is the ability to hack on the free (as in freedom)
firmware. As capable as it was out of the box, providing plenty of amusement
when my brother and I took it for a spin through some parking garages, there are
still features I'd like to add to it. The problem is that I've been too pampered
by Rust as of late to want to do my firmware hacks in C.
read more →
C is almost 50 years old, and C++ is almost 40 years old. While age is usually
indicative of mature implementations with decades of optimization under their
belts, it also means that the language's feature set is mostly devoid of modern
advancements in programming language design. For that reason, you see a great
deal of encouragement nowadays to move to newer languages - they're designed
with contemporary platforms in mind, rather than working within the limitations
of platforms like the PDP-11. Among said "new languages" are Zig, Myrddin, Go,
Nim, D, Rust… even languages like Java and Elixir that run on a virtual
machine are occasionally suggested as alternatives to the AOT-compiled C and
C++.
read more →