136 private links
New York Times bestselling author James Swallow delivers a thrilling, action-packed series with MI6 agent Marc Dane, a computer desk jockey who received an unexpected promotion to active field operative. Now, he experiences trials by fire in espionage as he fights for Queen and Country.
This article will teach you how to create and use these five types of aliases:
Simple Aliases
Suffix Aliases
Functions for Aliases With Parameters
Global Aliases
Operating system specific aliasesEasy to use and install.
Multiple cursors.
Common keybindings (Ctrl-s, Ctrl-c, Ctrl-v, Ctrl-z, …).
Sane defaults.
Splits and tabs.
Extremely good mouse support.
Cross-platform (it should work on all the platforms Go runs on).
Plugin system (plugins are written in Lua).
Built-in diff gutter.
Simple autocompletion.
Persistent undo.
Automatic linting and error notifications.
Syntax highlighting for over 130 languages.
Color scheme support.
True color support (set the MICRO_TRUECOLOR environment variable to 1 to enable it).
Copy and paste with the system clipboard.
Small and simple.
Easily configurable.
Macros.
Common editor features such as undo/redo, line numbers, Unicode support, soft wrapping, …
With DB you can very easily save, restore, and archive snapshots of your database from the command line. It supports connecting to different database servers (for example a local development server and a staging or production server) and allows you to load a database dump from one environment into another environment.
For now, this is for MySQL only, but it could be extended to be used with other database systems as well.Last month, I wrote an article sharing seven Rust-powered command-line utilities.
Those are modern and fast tools you can use every day with your terminal.
Since publishing that original article, I’ve been searching for more Rust-powered command-line utilities, and I discovered more gems that I’m excited to share with you today.
These tools will help you be productive with your terminal work.
Both Chomsky, King, and every other voice for justice and human rights would agree that the people need to act instead of relying on movement leaders. Whatever actions one can take—whether it’s engaging in informed debate with family, friends, or coworkers, writing letters, making donations to activists and organizations, documenting injustice, or taking to the streets in protest or acts of civil disobedience—makes a difference. These are the small individual actions that, when practiced diligently and coordinated together in the thousands, make every powerful social movement possible.
The Unix philosophy lays emphasis on building software that is simple and extensible. Each piece of software must do one thing and do it well. And that software should be able to work with other programs through a common interface – a text stream. This is one of the core philosophies of Unix which makes it so powerful and intuitive to use.
In this post though, I would like to show some examples of this philosophy in action – of how one can use different unix tools together to accomplish something powerful.
In short: modern Linux systems (since Linux 2.6.30, released in 2009) already use relatime, which should give you a really fast performance boost. That means you don't need to tweak your /etc/fstab file and can rely on the relatime kernel default.
But if you're looking to tweak your system to get maximum performance, disabling atime is still a valid option in 2020.
This performance tweak might not be very noticeable on very fast modern drives (like NVME or a fast SSD), but there's still a little boost there.
Awk crunches massive data; a High Performance Computing (HPC) script calls hundreds of Awk concurrently. Fast and scalable in-memory solution on a fat machine.
As so much technology is forgotten once it is superseded, this is a celebration of machines, industrial design and techno-utopianism of an era in the not-so-distant past. Conceived as a visual sourcebook of the most popular, most powerful and most idiosyncratic computers to grace our workspaces, this timely publication offers a reflection on how far we’ve come and a nostalgic look at a time when digital worlds could be contained in a box and turned off, rather than ever-present in our lives.
Home Computers opens with a scene-setting retrospective by computer and gaming writer Alex Wiltshire. The book’s heart is a series of specially commissioned photographs that capture details of switches and early user-interface design, letterforms and logos, and the quirks that set one computer off from another. Images are complemented by a potted history of each device, the inventors or personalities behind it, and its innovations and influences.
This looks like an interesting vim plugin: it gives you tips, as you type,
on how to improve/shorten the actions you're doing. It's like the Clippy
helper on Windows, but actually useful!
We often find ourselved required to route traffic from external sources towards internal services deployed to a Kubernetes cluster. There are several ways of doing this, but the most common is to use the Service resource, or, for HTTP(S) workloads, the Kubernetes Ingress API. The latter is finally going to be marked GA in K8s 1.19, so let’s take this opportunity to review what it can offer us, what alternatives there are, and what the future of ingress in general could be in upcoming Kubernetes versions.
How to expose applications in Kubernetes
Usually, we use the Service resource to expose an application internally or externally: define an entry point for the application which automatically routes distributed traffic to available pods. Since pods tend to come and go – the set of pods running in one moment in time might be different from the set of pods running that application at some later point – the Service resource groups them together with a label selector.
Service resources are broken down by type for more versatile usage. The three most commonly used types are ClusterIP, NodePort and LoadBalancer. Each provides a different way of exposing the service and is useful in different situations.
Would your command read well in a poem?
Ah, bitter chill it was!
The owl, for all his awk, was a-cold;
The gunicorn limp’d trembling through the frozen grass,
And silent was the yacc in woolly fold
—Paraphrased from John Keats, The Eve of St. Agnes
Hey it’s just a rule of thumb, but notice how the command AssetCacheTetheratorUtil (added to macOS in 2017) would never fly here.
On 11 June 2020, the United Nations Secretary-General announced the issuance of his report, Roadmap for Digital Cooperation, during the Thematic Debate organized by the President of the 74th Session of the United Nations General Assembly, on the impact of rapid technological change on the achievement of the Sustainable Development Goals and targets. The Secretary-General’s Roadmap responded to the recommendations of his High-Level Panel on Digital Cooperation on key issues such as digital connectivity, digital inclusion, human rights, artificial intelligence, and trust and security.
5G ist ja auch nur ein Feigenblatt, wenn man immer noch kein Bock auf FTTH hat.
This post shares some ideas about working with cronjobs, to help make common tasks more easy for both junior and senior sysadmins.
This is choose, a human-friendly and fast alternative to cut and (sometimes) awk
Features
terse field selection syntax similar to Python's list slices
negative indexing from end of line
optional start/end index
zero-indexed
reverse ranges
slightly faster than cut for sufficiently long inputs, much faster than awk
regular expression field separators using Rust's regex syntax
Rationale
The AWK programming language is designed for text processing and is extremely capable in this endeavor. However, the awk command is not ideal for rapid shell use, with its requisite quoting of a line wrapped in curly braces, even for the simplest of programs:
awk '{print $1}'
Likewise, cut is far from ideal for rapid shell use, because of its confusing syntax. Field separators and ranges are just plain difficult to get right on the first try.
It is for these reasons that I present to you choose. It is not meant to be a drop-in or complete replacement for either of the aforementioned tools, but rather a simple and intuitive tool to reach for when the basics of awk or cut will do, but the overhead of getting them to behave should not be necessary.
This is not a fork. This is a repository of scripts to automatically build Microsoft's vscode repository into freely-licensed binaries with a community-driven default configuration.
This tool is a rewrite of ngxtop to make it easier to install and hopefully run faster. For those unfamiliar with the ngxtop, it is a tool that helps you parse NGINX access logs and print various statistics from them regardless of format. It is currently not as feature complete as the original version but it should have enough functionality to be usable.
Whatfiles is a Linux utility that logs what files another program reads/writes/creates/deletes on your system. It traces any new processes and threads that are created by the targeted process as well.
Rationale:
I've long been frustrated at the lack of a simple utility to see which files a process touches from main() to exit. Whether you don't trust a software vendor or are concerned about malware, it's important to be able to know what a program or installer does to your system. lsof only observes a moment in time and strace is large and somewhat complicated.