Today I learnt that Rust has an API guidelines book, with a ton of helpful advice on idiomatic style. For example, naming: https://rust-lang.github.io/api-guidelines/naming.html
Readers expect `to_foo()` to do more work than `as_foo()`, which was new to me.
miniblog.
A charming text editor UI where you can doodle line drawings alongside text: https://akkartik.name/lines.html
This shows the effectiveness of doing a small number of things in the interface.
I've released difftastic 0.29.1: https://github.com/Wilfred/difftastic/releases/tag/0.29.1
Minor release, just fixing a nasty performance issue that cropped up in 0.29.0 on large textual diffs.
Encountered a type of bug I've never seen before: upgrading the malloc implementation had a catastrophic effect on performance!
I suspect one of my libraries is allocating large arrays and not writing to them.
Difftastic 0.29 is out!
* A ton of optimisation (30% shorter runtime) from smaller data structures
* Improved cases where the outer delimiter is preferred (lisps, JSON)
* Better detection of binary files (thanks @OnlyXuanwo)
* Improved Perl, added Elvish
When I first learnt VCS, I focused on history. It was only later I realised that it's wonderful for temporary notes too.
I write a lot of `// here` and `// here?` comments now, as I can easily discard them once I've committed the interesting bit.
One underrated aspect of print debugging: it forces you think about which state is relevant to look at. It's often a useful exercise.
So far, all of the people trying difftastic with huge files have been using C or C++ source code. Maybe it's more common in those communities?
(Difftastic will eventually fall back to fast, dumb, line-based diffing if you give it a multi-megabyte source file.)
Inform, the programming language built for writing interactive fiction (i.e. text adventure games), is now open source.
The compiler and toolchain may also be the largest literate programming codebase to date!
User profiles on websites have gone from "paste your CSS here" to "here's a smaller set of options that all look good".
I feel like app theming is following the same trend. So many apps just offer a dark mode and nothing else.
@janriemer@mastodon.technology Wow, that's a cunning trick. Hash map size remains a bottleneck for my difftastic project, I wonder if I can do something similar.
I've changed the difftastic slogan to " a structural diff that understands syntax".
Previously I just said "a diff that understands syntax", but users sometimes assumed it was just a diff with syntax highlighting. Hopefully this communicates the purpose better.
On the engineering effectiveness of shared internal communications, rather than siloed emails.
https://www.mattritter.me/?p=526
It's strange how AOT compilers usually have different modes for optimising time or space usage, but JITs rarely have modes like "prefer fast startup".
The vast majority of JITs seem to focus on runtime of hot code after warming up.
A remarkable amount of Rust optimisation is just finding ways to avoid allocations.
Showing 736-750 of 7,549 posts

