Plurrrr

a tumblelog
week 41, 2019

Larry Wall has approved renaming Perl 6 to Raku

I am in favor of this change, because it reflects an ancient wisdom:

“No one sews a patch of unshrunk cloth on an old garment, for the patch will pull away from the garment, making the tear worse. Neither do people pour new wine into old wineskins. If they do, the skins will burst; the wine will run out and the wineskins will be ruined. No, they pour new wine into new wineskins, and both are preserved.”

Source: Path to raku a comment by TimToady aka Larry Wall.

10 Specific Ways to Improve Your Productivity With Emacs

The tips in this little document are geared towards Emacs power-users. You should be familiar with the basics of launching and editing with Emacs, and you should already know the essentials of copying stuff into your .emacs file, and debugging things (or finding a friendly Emacs Wizard) when something goes wrong.

Source: 10 Specific Ways to Improve Your Productivity With Emacs, and article by Steve Yegge.

Function Currying in Go

Go can be used to program in a functional style, previously I’ve written about how we can use this to implement Continuation Passing Style programming. As such, it is possible to implement currying in Go as well. Before we take a look at how we can implement this in Go, let’s take a practical look at what function currying actually is, and why we want this.

Source: Function Currying in Go, an article by Dylan Meeus.

Convert curl syntax to Python etc.

Via Hacker News I found this handy tool that converts curl commands to Python, Ansible URI, Node.js, R, PHP, Strest, Go, Dart, JSON, Rust. Give it a spin: Convert curl syntax.

Dump Postgres databases through SSH

Sometimes you might want to import a remote postgres database into your local database. You could use some intermediate files, but there is a much nicer way to do it:

Source: Dump Postgres databases through SSH.

Emacs: The Best Python Editor?

Finding the right code editor for Python development can be tricky. Many developers explore numerous editors as they grow and learn. To choose the right code editor, you have to start by knowing which features are important to you. Then, you can try to find editors that have those features. One of the most feature-rich editors available is Emacs.

Source: Emacs: The Best Python Editor?, a nice article by Jon Fincher; recommended.

Timsort

Timsort is a sorting algorithm that is efficient for real-world data and not created in an academic laboratory. Tim Peters created Timsort for the Python programming language in 2001. Timsort first analyses the list it is trying to sort and then chooses an approach based on the analysis of the list.

Since the algorithm has been invented it has been used as the default sorting algorithm in Python, Java, the Android Platform, and in GNU Octave.

Timsort’s big O notation is O(n log n). To learn about Big O notation, read this.

Source: Timsort — the fastest sorting algorithm you’ve never heard of, an article by Brandon Skerritt.

Dark mode in a website with CSS

Today I learned that there is a CSS media query to detect if your device is running in dark mode:

@media
  (prefers-color-scheme: dark) {
  // your CSS rules go here
}

Source: Dark mode in a website with CSS.

See also: Using media queries.

New style: Wednesday

In the evening I finished a style for tumblelog that I had started on the previous day: Wednesday.

tumblelog style "Wednesday"
tumblelog style Wednesday in action.

This style shows some tweaking in the header of the blog using position: relative.

Eight Habits of Expert Software Designers

What makes an expert software designer? The typical answer — experience and innate ability — is less than satisfying. While it carries elements of truth, it offers little from which we can learn and generalize. Experts clearly do not just approach their work randomly. Quite the contrary, they have specific habits, learned practices, and observed principles that they employ deliberately during their design work.

Source: Eight Habits of Expert Software Designers: An Illustrated Guide, an article by Marian Petre & André van der Hoek.

New style: Tuesday

In the evening I made another style for tumbelog, based on the style October, called Tuesday.

tumblelog style "Tuesday"
tumblelog style Tuesday in action.

New style: Steel

In the evening I finished a style for tumblelog that I had started on in the afternoon: Steel.

tumblelog style "Steel"
tumblelog style Steel in action.

New style: Ice

In the late afternoon I finished another new style for tumblelog: Ice.

tumblelog style "Ice"
tumblelog style Ice in action.

New style: Pages

In the early evening I finished another style for tumblelog: Pages.

tumblelog style "Pages"
tumblelog style Pages in action.

There are now 9 different styles to choose from!

New style: Vector

One more new style for tumblelog: Vector. Now there are 10 styles.

tumblelog style "Vector"
tumblelog style Vector in action.