I’ve updated some legacy nodejs to Deno recently and it’s actually not bad! If you’re using serverless Denoflare is super convenient and DTN is a tool for building Deno to NPM (both esm and commonjs) so you can have easy backwards compatibility if needed, it even shims all of the Deno standard lib.
It’s really impressive what Deno and Bun people have done - for the first time I actually somewhat enjoy server side JS!
I really like how nushell can parse output into it’s native structures called tables using the
detect
command.Unlike string outputs, tables allow for easy data manipulation through pipes like
select foo
will select foo key and you can filter and even reshape the datasets.This is great if you need to work with large data pipes like kuberneters so you can do something like:
kubectl get pods --all-namespaces | detect columns | where $it.STATUS !~ "Running|Completed" | par-each { |it| kubectl -n $it.NAMESPACE delete pod $it.NAME }
This looks complex but it parses kubectl table string to table object -> filters rows only where status is not running or completed -> executes pod delete task for each row in parallel.
Nushell take a while to learn but having real data objects in your terminal pipes is incredible! Especially with the
detect
command.There’s are few more shells that do that though nu is the most mature one I’ve seen so far.