“Pochards”, was the first word spoken today. Emil looked up cautiously, keeping the corner of his eye on the road. Several dots on the dark-blue morning sky, no clouds. He was never quite sure whether dad could really recognize particular species of birds at this distance. “Are they flying to the village?”, he asked dad. “Yes, they are,” said Tapio.…
City planners know that you can’t solve traffic problems by building more roads. We could apply this line of thinking in our personal lives, too. I’ve written about small battery productivity before, and the more I think about the pattern, there more missed opportunities I see. One day I thought that my smartphone’s small screen makes it too uncomfortable to read text. An obvious…
They housed me in a small metallic room and gave me pants, a small towel and soap. Others from my group were close by in similar rooms, all in the same building where we woke up. Someone had asked if we could go outside, but I didn’t hear the reply. Few days later I started thinking and realized I haven’t been thinking before. It was sort of a second awakening, with a disappointing…
A Scottish writer Matt Gemmell described a technique of “small screen productivity”. He was talking about either a small laptop or a tablet which doesn’t allow him to see many contexts simultaneously, thus boosting creative output. One window, small screen, no distractions. I dislike laptops, but can appreciate the benefits of small screens. However, lately I’ve been enjoying another limitation: a…
There’s this thing called fundamental attribution error: In social psychology , fundamental attribution error ( FAE ), also known as correspondence bias or attribution effect , is the tendency for people to under-emphasize situational explanations for an individual’s observed behavior while over-emphasizing dispositional and personality-based explanations for their behavior. This…
I always thought these fashion runway shows are kind of silly. Are you guys okay?.. I just don’t want to deal with this stuff in any way. Luckily, I can ignore it for the most part. Although, random changes in “trendiness” affects my personal ability to buy a simple t-shirt or a hoodie without spending half an hour in a store (the last thing I want to do in life). But I…
Finnish language has 15 noun cases which pack a lot of expressive power. For example, let’s take the word “kissa” (cat). Here are some of the cases: kissa n — of cat (kissan koko; the size of the cat) kissa ssa — in cat (hiiri on kissassa; the mouse is in the cat) kissa sta — from inside the cat (kakka tuli kissasta; poop came out of the cat) kissa na — as cat kissa tta — without…
Intro Category theory abstracts many branches of math. You can describe topology, logic, Banach spaces and other concepts in terms of category theory. Why is it so? Does category theory describe the nature, the intrinsic reality, and we happened to discover it like physicists discover the laws of the universe? The main idea of category theory is composition. This is why it is so relevant in…
Intro What are transducers? The basic idea is to extract the essence of map, filter and other functions that transform sequences and collections, and reuse this essence so that it can be applied elsewhere; to recast them as process transformations . The kind of process for which we can use transducers is a succession of steps, where each step is ingesting an input. Building a collection is just…
I guess it was inevitable. Once you embrace Emacs, at some point you gonna want to do email in it. Honestly, I don’t think I’ll stick with it, but as an experiment, I want to try and see whether it makes sense to use Emacs as an email client. These are my requirements: Fastmail as email provider. It’s a solid service with normal IMAP (unlike Gmail with their weird, non-standard…
This is a complete summary of an excellent talk by Rob Pike “Concurrency is Not Parallelism” . Illustrations and diagrams are recreated; source code taken verbatim from the slides, except for comments, which were extended in some places. (You can get a set of PDF ( preview )/HTML/epub/Kindle versions below. Name your price, starting from $1.) Get set Intro The world is parallel:…
Computer programmers often talk about tackling complexity, yet they thrive on complexity. I believe tech people experience a constant dilemma: on one hand, we want things to be simple and straightforward; on the other hand we love complex structures and engineering marvels. I think about this today as I’m performing some cleanup work on my blog. It runs on Hugo, content is written in Org…
User is dead. User remains dead. And we have killed him. How shall we comfort ourselves, the developers, the designers, the growth hackers? What was holiest and the final judge of all that the world has yet owned has bled to death under our a/b-tests and new features. Who will wipe this blood off us? What garbage collector is there for us to clean ourselves? What conference of atonement, what…
Picking a university was one of the main tasks in the last year of high school. That and exams. I wasn’t sure what to study and which place to pick. I had no idea how one can make these choices. There weren’t too many resources available at the time. So, a lot of us relied on promotional info provided by universities themselves. The one I ended up in was called SDU. Its official…
A process of learning is analogous to an attempt of building a three-dimensional model from two-dimensional photos. You approach a new area of knowledge. You know nothing at all. You stumble upon a first piece: That’s more than nothing, but still very little. You don’t understand it. At best, you’re able to make a few uncertain assumptions. Beginners often seek good book…
I love bicycles. The first memories I have are bike-related. The best ones are, too. My first bicycle was a tricycle I don’t remember a time I didn’t bike. Bicycle means freedom. My first serious bicycles, the ones that let me explore the city, were old, steel soviet tanks. They were simultaneously indestructible and always broken. My friend Eugene and I spent summers biking around…
I believe the 80-characters (or any other number) line limit for text to be wrong. Not archaic or irrelevant, but wrong. It violates a fundamental idea of computer science: separating layers of abstraction. Not talking about code today, although, I don’t think a strict limit is a good thing there either, for other reasons. I’m talking about human text. Many programmers stick to the…
Good old days Twitter is the only social media I’ve ever used. Sure, I had accounts on other sites, but was never really engaged elsewhere. I couldn’t understand all those “facebook addiction” stories, honestly. Facebook was always extremely boring, while Twitter was always exciting. From the beginning, it was a perfect, geeky, simple thing that is kind of hard to explain.…
As a software developer, at some point you discover simple slides and presentation generators: Markdown-to-PDF/HTML converters, Emacs extensions, LaTeX exporters, VIM plugins, etc. The idea makes perfect sense, because: I don’t want to use PowerPoint or Keynote. I don’t want to use the mouse. I want plain text. I want simplicity. You can create presentations without leaving your…
Here is a TL;DR version: Record using whatever. Even smartphones produce decent sound nowadays. Just make sure to have a consistent volume, i.e. maintain constant distance between your mouth and the phone. Compress to 96kbps mp3 constant bitrate. Or use an online encoder like Pinecoder . Pick a podcast hosting provider: pinecast.com : starts at $5/month with unlimited storage, unlimited shows,…
I’m trying Firefox as my primary browser on all devices. It has some great features like Multi-Account containers in addition to being a non-Google product, which is an increasingly rare feature on the web nowadays. Firefox on macOS is somewhat sluggish at the moment. If you try the current stable version 62 or current beta version 63, you’ll notice some lags and general slow response…
In light of recent changes to Google Chrome, many forums have filled with bitter discussions. Here are just a few: Chrome 69 will keep Google Cookies when you tell it to delete all cookies Why I’m done with Chrome (HN discussion) Using Gmail? You will be force logged into Chrome At some point someone inevitably says: For Google, you are not the consumer. You are the product. But companies usually…
Now that you’re familiar with direct proof and proof by contradiction , it’s time to discover a powerful technique of proof by induction. Aside: do not confuse mathematical induction with inductive or deductive reasoning. Despite the name, mathematical induction is actually a form of deductive reasoning. Let’s say, we want to prove that some statement \(P\) is true for all…
Nikita just published Software disenchantment , and here is my rant-y reply. Please, read his post first. TL;DR: I agree with Nikita and I am equally frustrated with the current state of the industry. We started grumpy.website together, after all. But I don’t believe that situation will significantly improve until the general public’s standards increase. Along with the responsibility…
At work we use SCSS and HAML, so I rarely write pure HTML and CSS there. But for small side projects and my personal blog I tend to stick with the simplest (and dumbest) possible tools. This week I was working on a refreshed look for this blog. Being a good modern man, I tried to stick with em or rem for sizing and typography. Using em means adding state to your specs, and I don’t like this.…
In mathematics, a theorem is a true statement, but the mathematician is expected to be able to prove it rather than take it on faith. The proof is a sequence of mathematical statements, a path from some basic truth to the desired outcome. An impeccable argument, if you will. One of the basic techniques is proof by contradiction. Here is the idea: Assume the statement is false. Derive a…
I’ve been reading an article about Emacs , and this paragraph had nailed me right into the soul: IDE users spend most of their time fumbling around with the mouse. They wouldn’t dream of doing it any other way, but they don’t realize how inefficient their motions are. … Whenever you need to jump the cursor backward or forward more than about 5 lines, and you can see the…
Most of my life, I didn’t have much money. I was born in the 90s in a tiny Kazakh town, and nobody had a job there, it seemed. USSR just collapsed and my parents were trying to make ends meet in a constant hustle. That life defined my relationship with money and wealth for years to come. Every time I had to buy coffee, I was thinking “is it worth it?.. Maybe I shouldn’t”.…
I’ve launched a podcast recently ( EmacsCast ) and received lots of feedback. One of the perplexing things people said was “ that’s great, but how do I subscribe, it’s not on iTunes/Google Podcasts? ” I had a similar experience 10+ years ago when I started podcasting, but today it’s much worse. It worries me a lot. Podcasts are simply RSS feeds with links to…
Society has certain expectations when it comes to engineering and technology. We expect buildings and bridges to basically never fail. We expect cars to be extremely safe and fool-proof, as much as explosions-based metal boxes moving at hundred miles per hour can be safe and fool-proof. Home appliances are supposed to work for years without any serious maintenance. Electricity is just there,…