136 private links
Easy 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, …
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.
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.
Last January, the BBC released the first episode of a true-crime style podcast called The Case of Charles Dexter Ward. Created by Julian Simpson, this story took a Serial-esque approach to a locked room mystery involving an American man who disappeared from an asylum in England. But as the story progresses, it quickly becomes apparent that there's something darker going on.
That "something darker" would be the fact that it's a loose adaptation of The Curious Case of Charles Dexter Ward by HP Lovecraft. Simpson's podcast version takes the initial Lovecraftian premise — a person of privilege uncovers some hidden knowledge that inevitably connects back to ancient evil Elder Gods — and spins an updated modern tale that spans the Atlantic Ocean. Simpson cleverly weaves in English folklore and the occultism of Aleister Crowley as the journalist narrators travel back-and-forth between England and Rhode Island.
China and India are the countries with the highest densities of CCTV surveillance cameras in urban areas. Chennai, India has 657 cameras per square kilometer, making it the number one city in the world in terms of surveillance.
London is the only non-Asian city to crack the list with 399 CCTV cameras per square kilometer.
True words
In Bash, the history command is capable of much more than what's been covered here, but this is a good start for getting used to using your history instead of just treating it as a reference. Use the history command often, and see how much you can do without having to type commands. You might surprise yourself!
I recently noticed that zsh and fish will instead show a character indicating a missing linefeed, and still start the prompt where you’d expect to find it:
vidarholen-vm2% echo -n "hello zsh"
hello zsh%
vidarholen-vm2%
If you’re disappointed that this is what there’s an entire blog post about, you probably haven’t tried to write a shell. This is one of those problems where the more you know, the harder it seems
[...] the signal name stands for "Segmentation Violation".
So it's essentially: SIG
nal SEG
mentation V
iolation.
But there's more!
Originally the signal was called SIGSEG. It was subsequently renamed SIGSEGV
in the userspace and a bit later - around 1980 - to SIGSEGV on the kernel
side.
Maersk is the world’s largest integrated shipping and container logistics company. I was massively privileged (no pun intended) to be their Identity & Access Management (IAM) Subject Matter Expert (SME), and later IAM Service Owner. Along with tens (if not hundreds) of others, I played a role in the recovery and cybersecurity response to the events of the well-publicised notPetya malware attack in 2017. I left Maersk in March 2019, and as is customary I wrote the obligatory thank you and goodbye note. But there was always a lot more to add. A story to tell.
In order to contribute to historical awareness in our field, we have compiled a list of interaction design classics. Our aim was to include examples that we find inspiring and insightful — which led to our greatest challenge, keeping in mind that we wanted to create a concise list — leaving things out. So, we decided to focus on productivity software — in a very broad sense — and to order the projects chronologically. We didn’t address user interfaces from games, websites or artistic projects; that really would have been too much.
Notice the line makepdf & makedoc & openapp. Here I am are running the 3 functions in parallel. The wait command does exactly that, waiting for the previous things to finish. When everything is done, the pdf file opens. Let’s look at the timing now:
real 0m24.677s
user 0m21.669s
sys 0m1.746s
It is running ~27% faster. Only by wrapping the code in different functions.
As an extra, in bash the code is not evaluated all at once. If you edit a script while it is being executed, the script behaves differently. Wrapping it in functions solves that problem too.
Keynote for the GUUG FFG 2015, Stuttgart (Video: FrosCON, deutsche Sprache)
Be authoritative. Tell your readers what they need to know, not what you might ideally like them to know. Tell them also what they need to think about it.
Save your readers time. If you are summarising a file of documents for them, you do not need to give them the experience of reading it themselves. Don’t use a piece of writing as a dumping ground for evidence; use the evidence sparingly to illustrate your argument.
Pick your battles. You may need to prove some points laboriously, especially if the ground is controversial. But you can’t do this across the board. Work out where a blow-by-blow account is necessary and where a simple allusion will suffice.
Don’t include details just because they are fun or interesting. If they don’t serve your argument or your story, they should go.
Observe the 5% rule. Any text, whether it’s a 1,000-page novel or a tweet, can be reduced by 5% without serious sacrifice of meaning. In fact, the true percentage is probably higher …