A macOS CLI to configure multi-display arrangements
Run displayplacer list
to print your current layout’s args so you can create profiles for scripting/hotkeys with Automator, BetterTouchTool, etc.
Run displayplacer list
to print your current layout’s args so you can create profiles for scripting/hotkeys with Automator, BetterTouchTool, etc.
Jeremia Kimelman:
Datasette is an open source tool that takes an SQLite database and gives you an out-of-the-box, web-based UI built specifically for exploring data. Need an example? Here’s a database of all of Motley Fool’s earning transcripts that I used to look for talk of their California campaign activity. And here’s a bunch of other examples of Datasette from the official site.
And the thing is: I love Datasette. It recently turned 5 years old and I wanted to write down the thing that makes it an absolutely delightful data hammer.
In this post, I will show you some advanced usage patterns for working with Playwright in order to take a screenshot of a specific element and modify the contents of the image, either before taking the screenshot or after, using image preprocessing tools.
I have (re)written my password generator in Rust with support for many different patterns. From completely random ASCII, to memorable diceware-like passphrases, and anything in between, plus extras such as private IP addresses or MACs.
I’ve also classified these patterns for easy accessing, and based on the pattern entropy I provide guesstimates about the effort for a brute force attack.
Wait-for-secrets GitHub Action waits for the developer to enter secrets during a workflow run. Developers can enter secrets using a web browser and use them in the workflow.
This seems like a good enough solution to yet another battle between security and usability.
Distributed, offline-first bug tracker embedded in git, with bridges
I love the idea of having your bug repo right there inside your code repo. The terminal UI is a nice touch!
I recently discovered an awesome tool called Coolify that calls itself an open-source Netlify or Heroku alternative that can be self-hosted. Gave it a whirl for my own personal projects and loved it, so I thought I’d share.
As the old saying goes, imitation is the sincerest form of flattery. In the software world, an open source alternative is the sincerest form of imitation. Well, Retool (a Changelog sponsor) can consider themselves flattered, because Openblocks sets out to do openly what they’ve been doing proprietarily. Here’s why:
It’s cumbersome to create a single app. You had to design user interfaces, write code in multiple languages and frameworks, and understand how all of that code works together.
Low-code/No-code platforms are fast to get started with but quickly become unmaintainable and inflexible. This creates more problems than it solves.
Retool-like solutions are great for their simplicity and flexibility, but they can also be limited in different ways compared to frameworks like React/Vue.
Openblocks wants to take a step forward. More specifically, Openblocks is
- An all-in-one IDE to create internal or customer-facing apps.
- A place to create, build and share building blocks of web applications.
- A domain-specific language that UI-configurable block is the first-class citizen.
Fathy Boundjadj new html2svg project is pretty cool. We’ve seen a lot of efforts to convert HTML to raster images like PNG and JPG, but SVG is a different (pixel-independent) story.
This end product took some engineering, and the linked post goes deep into all the steps Fathy had to take along the way. From taking the picture to rendering to SVG to supporting shadows and more.
Use it as a CLI, a server, a library, or inside a container 👌
It stores your shell history in context (what directory you ran the command in, whether it succeeded or failed, how long it took, etc). This is all stored locally and end-to-end encrypted for syncing to to all your other computers. All of this is easily queryable via the
hishtory
CLI. This means from your laptop, you can easily find that complex bash pipeline you wrote on your server, and see the context in which you ran it.
Podman Desktop installs, configures and keeps Podman up to date on your local environment. It provides a system tray, to check status and interact with your container engine without losing focus from other tasks. The desktop application provides a dashboard to interact with containers, images, pods and volumes but also configures your environment with your OCI registries and network settings. Podman Desktop also provides capabilities to connect and deploy pods to Kubernetes environments.
Katana can run in standard mode, which is like curl
/wget
, or it can run in headless mode, which is like a real web browser with JavaScript parsing and all that jazz. And since it’s written in Go, you get that silky universal binary experience. Just drop it in your $PATH
and you’re off to the races!
According to this, 757 companies have laid off 104,791 employees thus far in 2022. Absolutely brutal.
Most internet speed testing tools focus on bandwidth, but latency and packet loss are major factors in the experience as well.
Bandwidth means, once things get going, how fast you can download. But “once things get going” can take a really long time. In fact, it can take longer than the whole download! This is especially true for simple web pages, or web pages made up of a bunch of tiny pieces, which is very common on today’s web… That’s where latency comes in.
Try blip for yourself: gfblip.appspot.com
This looks a lot like the early days of Postman. Built with Vue.js.
vdsql is a new plugin that allows VisiData to connect to databases and query them directly, using the database’s own query engine. It uses Ibis to generate SQL for many popular backends, including Postgres, DuckDB, Clickhouse, and more.
vdsql v0.2, released this past week, is already quite useful, and development continues to improve both vdsql and VisiData for bigger data!
ffmpeg is one of the foremost pillars of achievement in free software. It has touched the lives of every reader, whether they know it or not. If you’ve ever watched TV, or gone to a movie, or watched videos online, or listened to a podcast, odds are that ffmpeg was involved in making it possible. It is one of the most well-executed and important software projects of all time.
Yep. It also has one of the most epic man pages in the ’Verse.
This lets you do so many cool things, even joining across disparate services:
select
aws.name aws_user_name,
slack.id as slack_user_id,
slack.display_name as slack_name
from
aws_iam_user as aws,
slack_user as slack
where
aws.name = slack.email;
+--------------------------+---------------+------------+
| aws_user_name | slack_user_id | slack_name |
+--------------------------+---------------+------------+
| dwight@dundermifflin.com | U2EMB8HLP | dwight |
| jim@dundermifflin.com | U02HE4Z7E | jim |
+--------------------------+---------------+------------+
Useful for compliance, security, ops, and cost management.
Diagrams are faster and compact way for knowledge transfer. It’s much easier to convey system architecture with a diagram compared to writing an essay on it.
Diagrams are especially useful in providing high level overview of software design. Following are the most-widely used diagrams by engineering teams…
The GNU Debugger is powerful, but it can also be inscrutable at times. Maybe this GUI will help?
This is a neat little CLI utility from Kelly Brazil that parses the output of common Unix system commands into JSON/YAML. We’re linking to the latest version (1.22.0) which adds new magic parsers for /proc
files. This handy glue-type tool gets one click neater every release!
Point Refurb at your Python code to see how bad good it is. Here’s the author’s motivation:
I love doing code reviews: I like taking something and making it better, faster, more elegant, and so on. Lots of static analysis tools already exist, but none of them seem to be focused on making code more elegant, more readable, or more modern. That is where Refurb comes in.
The picture below explains it better than I can with words. 👇