I've been really enjoying paru as a pacman substitute on Arch Linux: https://github.com/Morganamilo/paru
It allows you to update both normal and AUR packages in one go, which is super convenient. It also shows you PKGBUILD files, so there's still a human audit step for AUR.
miniblog.
WebAssembly seems like a totally reasonable bytecode format, but I've not had many opportunities to use it so far.
Has wasm found its 'killer app' yet?
It's weird that GitHub shows time since the last commit, but not time since the first commit. It's a nice way of seeing how mature a project is.
Deno has the cutest PL mascot I think I've ever seen. Are there any other contenders?
I'm always hesitant when I see digital services funded by a single one-off payment. Running a service requires ongoing funding.
You sometimes see this with games that have a multiplayer component. People buy the game, but the multiplayer servers won't last forever.
I'm considering switching my personal servers (on Digital Ocean) from Ubuntu to Debian. I essentially just need something running Docker for most of my projects.
Debian seems to require upgrading less often. Any opinions?
Coming from JS or Python, imports in Rust feel weird. They're entirely optional aliases for fully qualified symbols, which are always available.
I don't know of many other languages where you can just start using libraries. Java is the only one I can think of.
A funny side effect of building software in Rust: my machine OOMs much more during development.
I'm not entirely sure why. I think Rust makes it easy to allocate data quickly, and sooner or later you write an infinite loop when coding.
I'm experimenting with Hammerspoon on macOS as an application switcher. `Option-Space F` is Firefox, `Option-Space E` is Emacs, etc.
The problem with `Alt-Tab` is that the order changes based on recency. I'm hoping that a repeatable command will be nicer to use.
@tristanC That's an option! There's often cases where you know what the user wanted though, so you can provide a sensible AST that the toolchain can handle.
For example, a malformed string literal can still be parsed a string so type checking etc can be helpful.
Counter-intuitively, if you're writing a parser for a programming language, you need it to be a total function. As soon as you build IDE tooling, you need ASTs from invalid or incomplete input.
The parser should return (Ast, List<Error>) rather than Result<Ast, Error>.
Today I learnt that the original name for DOS was QDOS, for "Quick and Dirty Operating System"! https://en.wikipedia.org/wiki/DOS#QDOS
(Seems rather unfortunate that they dropped the Q.)
I've been compilation buffers in Emacs recently and I really appreciate the error and warning counts shown in the modeline.
I've added the equivalent feature to deadgrep: it shows result counts! Really useful when you're doing big refactorings.
https://github.com/Wilfred/deadgrep
Today I learnt that Lua projects often use *3* spaces for indentation! https://github.com/luarocks/lua-style-guide/blob/master/README.md#indentation-and-formatting
I initially thought something was very wrong with editor config.
What are the most interesting upcoming scripting languages? Scripting remains an important part of the programming language ecosystem.
Optimise time to first feature. Allow mutation of the running system to experiment. Interactive inspection of data.
Sometimes programming tools are so good that you miss them when using other languages. I see these mentioned the most frequently:
* IntelliJ (for Java)
* Slime+Emacs (for Common Lisp)
* Pharo (for Smalltalk)
I'm struck that they all have bespoke UIs.
Are there any package managers that treat changelogs as a first class concept?
I end up looking for a CHANGELOG.md or a CHANGES.txt in the source code repository every time. The lack of standard prevents package hosting services being able to show changes.
Here's a weird UI pattern I haven't seen before. This sanitizer will keep things clean for 24 hours, so the time counts *down*.
Every time I see it, it looks like 24 hour clock showing the wrong time!
I've dabbled with 'conventional commits' for a personal project but I found they slowed me down.
It's not always easy to categorise a commit as a fix, a chore etc. Sometimes refactorings also fix bugs.
Do you use them? I can imagine a large, mature project benefitting more.
It's rare to see ANSI escape codes for URLs in the wild, but cargo has it!
This example links to https://doc.rust-lang.org/cargo/reference/profiles.html#default-profiles, describing the different profiles.
Considering releases vs debug is a source of confusion for new users expecting better performance, this seems wise.
Showing 61-80 of 135 posts