Johnny and John welcome Thorsten Ball back to the show. This time we’re talking power tools! Editors, operating systems, containers, cloud providers, databases, and more. You name it, we probably talk about.
tickgitis a tool for software developers to do project management within their codebase. It searches code comments for markers indicating areas and files worth returning to (
FIXME, etc). It can be used to proactively identify areas of technical debt, or handle day-to-day to-do items and checklists.
Free for public repos and open source.
A handy little web app for quickly finding the
droids code you’re looking for.
grep.app searches code from over a half million public repositories on GitHub. We’re hoping to add more soon…
It searches for the exact string you enter, including any punctuation or other characters. You can also search by regular expression, using the RE2 syntax.
For macOS and Linux. Built with Tauri Studio.
This tool is surrounded by mountains of marketing speak, but it does seem like it offers a quick way to spin up different dev environments, which is cool. It has built-in recipes for WordPress, Drupal, LAMP, MEAN, and more. Here’s how you get started on Drupal 7, for example:
lando init \ --source remote \ --remote-url https://ftp.drupal.org/files/projects/drupal-7.59.tar.gz \ --remote-options="--strip-components 1" \ --recipe drupal7 --webroot . \ --name hello-drupal7
You can use these out of the box or start with a base language and mix in the things you need from there. Kinda like Docker Compose? Yeah, kinda like Docker Compose:
You can think of Lando as both an abstraction layer and superset of Docker Compose as well as a Docker Compose utility.
This is a full-featured replacement for many of your shell’s built-ins.
No more waiting for your bundler to rebuild your site every time you hit save. Instead, every change is reflected in the browser instantly.
This relies on ESM (Mikeal gave a great rundown on the current state of things on a recent JS Party), so it’s not for everyone. The homepage has rundowns on who should use this, who should avoid it, and how to get started.
Brought to you by the fine folks at Pika.
Think of this like jq, but for people who love parentheses. 😀
cat test.json | jql '(elem "countries" (elem (keys) (elem "name")))' [ "Poland", "United States", "Germany" ]
SQLx is a modern SQL client built from the ground up for Rust, in Rust.
Truly Asynchronous. Built from the ground-up using async-std using async streams for maximum concurrency.
Type-safe SQL (if you want it) without DSLs. Use the
query!()macro to check your SQL and bind parameters at compile time. (You can still use dynamic SQL queries if you like.)
Pure Rust. The Postgres and MySQL/MariaDB drivers are written in pure Rust using zero unsafe code.
This package is intended to give you more control over error handling via error wrapping, stack tracing, and output formatting. Basic error wrapping was added in Go 1.13, but it omitted user-friendly
Wrapmethods and built-in stack tracing. Other error packages provide some of the features found in
erisbut without flexible control over error output formatting. This package provides default string and JSON formatters with options to control things like separators and stack trace output. However, it also provides an option to write custom formatters via
DockerSlim promises a lot:
docker-slimwill optimize and secure your containers by understanding your application and what it needs using various analysis techniques. It will throw away what you don’t need reducing the attack surface for your container. What if you need some of those extra things to debug your container? You can use dedicated debugging side-car containers for that.
Their minification examples are impressive…
Certbot was first released in 2015, and since then it has helped more than two million website administrators enable HTTPS by automatically deploying Let’s Encrypt certificates. Let’s Encrypt is a free certificate authority that EFF helped launch in 2015, now run for the public’s benefit through the Internet Security Research Group (ISRG).
A lot of progress has been made since we first talked about Let’s Encrypt on The Changelog.
What do you do when you have CronJobs running in your Kubernetes cluster and want to know when a job fails? Do you manually check the execution status? Painful. Or do you perhaps rely on roundabout Prometheus queries, adding unnecessary overhead? Not ideal… But worry not! Instead, let me suggest a way to immediately receive notifications when jobs fail to execute, using two nifty tools…
Streamlit recently burst onto the scene with their intuitive, open source solution for building custom ML/AI tools. It allows data scientists and ML engineers to rapidly build internal or external UIs without spending time on frontend development. In this episode, Adrien Treuille joins us to discuss ML/AI app development in general and Streamlit. We talk about the practicalities of working with Streamlit along with its seemingly instant adoption by AI2, Stripe, Stitch Fix, Uber, and Twitter.
Flan Scan is a lightweight network vulnerability scanner. With Flan Scan you can easily find open ports on your network, identify services and their version, and get a list of relevant CVEs affecting your network.
This is a wrapper around Nmap which turns it into a full-fleged network scanner and makes it easy to deploy on Kubernetes.
Supports C, C++, Java, and Python. Connects to pretty much every editor out there. Cross-platform, runs locally so you don’t have to trust your code to a 3rd party. I’d love to see more languages supported…
I probably understood ~60% of the data
htop exposes. After reading this extremely thorough post, I understand a lot more. The section on load average is pure gold.
This is a map of known process signals with some information about each signal. Unlike
- human-friendly descriptions
- default actions, including whether they can be prevented
- whether the signal is supported by the current OS
Johnny is joined by Marty Schoch, creator of the full-text search and indexing engine Bleve, to talk about the art and science of building capable search tools in Go. You get a mix of deep technical considerations as well as some of the challenges around running a popular open source project.
This post by Lauren Reeder of Segment goes over the different layers to consider when working with a data lake. What’s a data lake, you ask?
A data lake is a centralized repository that stores both structured and unstructured data and allows you to store massive amounts of data in a flexible, cost effective storage layer.
Her article explains what tools are needed and provides code & SQL statements to get started. 🤟