Status update, July 2020 January 1, 0001 on Drew DeVault's blog

Hello again! Another month of FOSS development behind us, and we’re back again to share the results. I took a week off at the end of June, so my progress this month is somewhat less than usual. Regardless, I have some updates for you, mainly in the domain of SourceHut work.

But before we get to that, let’s go over this month’s small victories. One was the invention of the BARE message format, which I wrote a blog post about if you want to learn more. Since that article, five new implementations have appeared from various authors: Rust, Python, JavaScript, D, and Zig.

I also wrote a couple of not-blogposts for this site (, including a page dispelling misconceptions about static linking, and a page (that I hope you’ll contribute to!) with videos of people editing text. Just dropping a link here in case you missed them; they didn’t appear in RSS and aren’t blog posts. To help find random stuff like that on this site, I’ve also established a misc page.

Okay, on to SourceHut. Perhaps the most exciting development is the addition of continuous integration to the mailing lists. I’ve been working towards this for some time now, and it’s the first of many features which are now possible thanks to the addition of the project hub. I intend to complete some follow-up work improving the CI feature further still in the coming weeks. I’m also planning an upgrade for the hardware that runs during the same timeframe.

That’s all the news I have for now, somewhat less than usual. Some time off was much-needed, though. Thanks for your continued support, and I hope you continue to enjoy using my software!

$ cat main.$ext
use io;
use strings;
use sys;

export fn main void = { for (let i = 0; sys::envp[i] != null; i += 1) { let s = strings::from_c(sys::envp[i]); io::println(s); }; }; $ $redacted run main.$ext error: main.$ext:8:41: incorrect type (&char) for parameter 1 (&char) let s = strings::from_c(sys::envp[i]); ^— here $ vim main.$ext $ cat main.$ext use io; use strings; use sys;

export fn main void = { for (let i = 0; sys::envp[i] != null; i += 1) { let s = strings::from_c(sys::envp[i]); io::println(s); free(s); }; }; $ $redacted run main.$ext DISPLAY=:0 EDITOR=vim

Have a comment on one of my posts? Start a discussion in my public inbox by sending an email to ~sircmpwn/ [mailing list etiquette]

Articles from blogs I read Generated by openring

Status update, October 2020

Hi all, it’s been a while! I’ve been taking some time off this month: I’ve been hiking in Corsica (an island in the south of France) for 2 weeks! The path (called GR20) was very difficult but the gorgeous landscapes made it entirely worth it. :) I’ve uploaded…

via emersion October 16, 2020

What's cooking on Sourcehut? October 2020

Once again we meet to discuss the status of the ongoing SourceHut alpha, which has made progress by leaps and bounds this month. We’re joined by 521 new users this month, bringing our total up to 17,715. As always, please welcome them warmly and show our new…

via Blogs on Sourcehut October 15, 2020

Unifying the Technical Interview

Previously: Rewriting the Technical Interview. Aisha’s hands rattle you. They float gently in front of her shoulders, wrists cocked back. One sways cheerfully as she banters with the hiring manager—her lacquered nails a cyan mosaic over ochre palms. They f…

via Aphyr: Posts October 14, 2020