One of Git's core value-adds is the ability
to edit history. Unlike version control systems that treat the
history as a sacred record, in git we can change history to suit our
needs. This gives us a lot of powerful tools and allows us to curate
a good commit history in the same way we use refactoring to uphold
good software design practices. These tools can be a little bit
intimidating to the novice or even intermediate git user, but this
guide will help to demystify the powerful git-rebase.
This document is an attempt to be a fairly comprehensive guide to
recovering from what you did not mean to do when using git. It isn't
that git is so complicated that you need a large document to take
care of your particular problem, it is more that the set of things
that you might have done is so large that different techniques are
needed depending on exactly what you have done and what you want to
On my way back to my mother's house I encountered a red cat walking on
the stone wall of a bridge. I could only take one photo because it was
quite restless but loved to be petted.
Soon it jumped off the wall and went into a nearby garden.
The Shy Calico Cat Returns
In the evening the shy calico cat
returned. I fed it a thin slice of sausage and took a few photos.
Wasps: If you can't love them, at least admire them
No, wasps have very useful functions, one of which is to keep other
insects in check. Every insect you can think of probably has some
wasp that will attack it. If that wasn't the case, we'd almost
certainly be using more pesticides than we already do on our farms.
Knowing when to apply the rules of photography and when to break
them is essential to making great images. There are times when the
rules will serve you well. Follow then too closely and your work
will become predictable, rigid and dead.
It turned out that version 2.0.0 of tumblelog has a small bug: if you
use an older version of the CommonMark Perl module the constant
OPT_UNSAFE is not defined. So I added some code that checks if this
constant exists and if not adds it.
Imagine you’re a developer who mainly works with Go. You go to an
event and, while chatting with some people, you decide to share with
them the news that you wrote a small tool that does something. You
claim that since you wrote it in Go, it’s fairly fast, it’s a single
binary, etc. The group seems pleased with your recount and you start
feeling good, but then you notice a stranger approaching from
behind. A bone-chilling wind blows and you hear: “Why Go and not
In this post I will show you how to effectively use the pandas plot
function and build plots and graphs with just one liners and will
explore all the features and parameters of this function. I would be
using the World Happiness index data of 2019.
In the morning my brother and I went to the invertebrate show in
Harmelen. Near the entry my brother spotted a black scorpion. Not the
animal, but a large chili pepper plant. As he loves to grow his own
peppers he was soon in a conversation with the owner of the plant, and
even managed to get two peppers so he could grow his own plants from
Next, we walked around and admired the invertebrates on display and
for sale. A lot of scorpion and tarantula species I only knew from
photographs seen on the Internet, so it was very cool to see them in
Before we left I talked with Jeroen Kooijman about his book
Schorpioenen - hun ware verhaal (Scorpions - their true story). He
has been working on it for 3 years and it looks fantastic. Of course I
bought a signed copy.
The history and legacy of jQuery
But in the past several years, jQuery’s status as the number one
tool for web development has diminished. Let’s take a look at why
jQuery became popular, why it has somewhat fallen out of favor, and
when it would still be a good choice for a modern website.
In the afternoon my mother and I went to a flower exposition inside
the local church. It was quite a large exposition and I took several
Rewriting CommonMark Nodes issue
In the evening I added the CommonMark node rewriting code to the
tumbelog program only to find out that the solution I wrote yesterday
also caused memory corruption.
Stop Infinite Scrolling on Your Website - Now!
Do people love infinite scrolling on the websites they visit or are
they fine with clicking on ‘Read more’ or ‘View more?’ Infinite
scrolling eliminates the need for pagination which is the process of
separating digital content into different pages. Here’s my view on
infinite scrolling and why it is a recipe for disaster.
In the evening I found out how to rewrite nodes in an abstract syntax
tree generated by the Perl CommonMark parser without ending up with
corrupted nodes. Of course I had to blog about this:
Rewriting CommonMark Nodes in
The code given will be used in an upcoming version of tumblelog to
render images with a caption.
Scientists Find the Skull of Humanity’s Ancestor, on a Computer
By comparing fossils and CT scans, researchers say they have
reconstructed the skull of the last common forebear of modern
Just after midnight I started in She Has Her Mother's Laugh by Carl
Zimmer. I read the first pages, and so far I like it a lot.
New Evidence of the Asteroid That Killed Off the Dinosaurs
Drilling into the seafloor off Mexico, scientists have extracted a
unique geologic record of the single worst day in the history of
life on Earth, when a city-sized asteroid smashed into the planet 65
million years ago, wiping out the dinosaurs and three-quarters of
all other life.
At 7pm I started to watch the Apple Special Event. While I rarely play
games on the computer I am interested in Apple Arcade, and I enjoyed
watching the game Shinsekai: Into the Depths by Capcom; very nicely made.
Next, a new iPad was announced: 7th generation with a 10.2"
retina display. As my iPad Air 2 got stolen in a break in into our
house over a year ago I have been waiting for a new model to be
released. And it has, so a new iPad has been moved to the top of my
While I am still happy with my iPhone 5 I know there will be a time in
the future I have to replace it so I also looked forward to the
presentation of the iPhone 11.
I was very impressed with the photographic capabilities of the new
phone, especially night mode. And the game that was shown running on
it, Pascal's Wager, looks fantastic.
Sunsetting Python 2
We are volunteers who make and take care of the Python programming
language. We have decided that January 1, 2020, will be the day that
we sunset Python 2. That means that we will not improve it anymore
after that day, even if someone finds a security problem in it. You
should upgrade to Python 3 as soon as you can.