I used to love Pipenv, but these
days with some uncertainty around the direction and upkeep of the
project my feelings are a little less clear. Nonetheless, I still
use Pipenv daily for a variety of production-ready services and
libraries. All of the tips in this list can be found if you dig deep
into the documentation, but with the regularity that they come up,
it can be handy to have a cheat sheet.
In this post, I summarize some accomplished engineer’s views on
error handling. There is a distinction between errors that are
caused by programmer neglecting bugs and those that represent true
error conditions. The granularity of error checking is also up for
debate: Per function? Per module? Jump to dialog handler in the main
message loop? Kill the process and restart?
Programmers that come to Go from Python often wonder "do I need
something like virtualenv
here?"
The short answer is NO; this post will provide some additional
details.
While virtualenv in Python is useful in many situations, I think
it'd be fair to divide them into two broad scenarios: for execution
and for development. Let's see what Go offers for each of these
scenarios.
In the early evening I noticed that the Aphonopelma seemanni I keep
was entirely out of its burrow. I used a large pair of tweezers to
block the tarantula from bolting backwards into its burrow. Next, I
guided it carefully on my hand.
It was quite restless and got off my hand on the desk. Adam got down
to get my iPhone so I could take a photo while I kept an eye on the
large tarantula sitting on my desk.
It took a few attempts to get the tarantula back on my hand so I could
take a photo of it. Several times it made a short but very audible run
on my desk. After I had taken two photos of the large spider I
returned it back to its terrarium.
Note that I rarely handle the tarantulas I keep. The previous time for
this specimen was when I had just bought it the 7th of
March
2020. Based
on the above photos it has grown quite a bit.
A compiler is just a program that translates other
programs. Traditional compilers translate source code into
executable machine code that your computer understands. (Some
compilers translate source code into another programming
language. These compilers are called source-to-source translators or
transpilers.) LLVM is a widely used compiler
project, consisting of many modular compiler tools.
I recently had to write a letter to a government agency. With no
office suite installed, I took a look to my installed packages and
found pandoc . With pandoc you can transform
documents, with a variety of input and output formats.
Later in the evening I took a photo of the Aphonopelma seemanni I
keep in its terrarium as it was still in the open after I had returned
it.
In the above photo its sitting on top of the cork tube underneath it
has dug its burrow. For more information on this terrarium see the
post I wrote earlier this month.
After midnight I noticed that the Chromatopelma cyaneopubescens
sling I keep was nearly upside down in its webbing; a sign it's about
to molt. When I got up, just over 8 hours later, I took a photo of the
freshly molted tarantula.
The previous and first time this spider molted in my care was the
27th of April, 2020.
Now I have to wait about a week before I can feed the little spider;
it first has to harden out its fangs.
There will be linear types in GHC 8.12. But don’t expect a finished
product. This is our very first iteration, an
MVP as it
were. This is as minimal a set of features we think can be useful
for anybody. But it’s still very much aimed at early adopters and
eager tinkerers.
Template Haskell (TH) is a powerful tool for specializing programs
and allows shifting some work from runtime to compile time. It can
be a bit intimidating to use for beginners. So I thought I would
write up how to use TH to turn certain kind runtime computations
into compile time computations.
In particular we will turn the initialization of a fully static data
structure into a compile time operation. This pattern works for many
data structures but we will look at IntSet in particular.
I’ve never worked as a professional frontend developer, so even
though I’ve been writing HTML/CSS/JS for 15 years for little side
projects, all of the projects have been pretty small, sometimes I
don’t write any Javascript for years in between, and I often don’t
quite feel like I know what I’m doing.
Partly because of that, I’ve leaned on libraries a lot! Ten years
ago I used to use jQuery, and since maybe 2017 I’ve been using a lot
of vue.js for my little Javascript projects (you can see a little
whack-a-mole game I made here as an intro to
Vue).
But last week, for the first time in a while, I wrote some plain
Javascript without a library and it was fun so I wanted to talk
about it a bit!
In the early evening I fed the Hapalopus sp. Colombia "large" sling
I keep a mealworm, Tenebrio molitor. Even though the mealworm was
quite large the small tarantula had no problem to subdue it.
I took the above photo using the macro lens and LED ring light I
bought yesterday.
The 18th of
May I also fed this
specimen a mealworm.
Because most lattice theory assumes a strong background in algebra,
I think the results are not as well known as they should be. I hope
to give a sampling of some lattices here, and a hint of their power.
Comments are a topic of vibrant discussion. Ever since programmers
could leave some text in the program that was ignored by the machine
the debate started: “what’s a good comment, what’s a bad comment,
why comment?”
Perl v5.32 adds a way to turn off a Perl feature that you shouldn’t
use anyway. You can still use this feature, but now there’s a way to
take it away from you. We’re very close to the final release of
v5.32 and the first release candidate is already on
CPAN.
It’s sweltering in Charlotte, North Carolina, and Temperance
Brennan, still recovering from neurosurgery following an aneurysm,
is battling nightmares, migraines, and what she thinks might be
hallucinations when she receives a series of mysterious text
messages, each containing a new picture of a corpse that is missing
its face and hands. Immediately, she’s anxious to know who the dead
man is, and why the images were sent to her.
In the evening I started in A Conspiracy of
Bones,
A Temperance Brennan Novel Book 19, by Kathy Reichs. I've read all the
previous novels and enjoyed those a lot so I look really forward to
this one.
In the morning I bought a multi lens set for smartphones at the Action
store in Naaldwijk for €3.89. The set comes with a 10× macro lens,
which doubles as a 0.65× wide angle lens, a 185° fish eye, 2 lens
covers, 2 clips, a pouch, and an adjustable LED ring light with USB
charger cable.
In the early afternoon I took a few photos. In the above photo you can
see the smallest tarantula sling I keep, a Hapalopus sp. Colombia
"large". Also visible in the photo is the silk lining of its burrow.
I currently keep just one scorpion, a Chaerilus sp. "Java". It's
currently second instar, meaning it has molted once since it was
born. It also means it's very tiny, just a few mm.
It's unclear to me how much the macro lens actually magnifies but it
allows me to get closer to the subject while my phone, an iPhone 5,
is still able to focus.
The adjustable LED ring light works great; it has 3 brightness settings.
On the way back from a short visit to my mother Adam and I encountered
a longhaired cat. We both stopped our bikes and petted the cat. I have
blogged about this cat the 1st of June, 2019 when I spotted
it resting in the
shadows.
In the afternoon I finished The Goodbye
Man,
a Colter Shaw Novel by Jeffery Deaver. This is the second Colter Shaw
book, and I liked it a lot. But, I liked the first one in the series; The Never
Game
more. Still, I do recommend The Goodbye Man.
A lot of smart
people
are saying that Apple is going to announce its own CPUs at their
upcoming WWDC Developer
Conference. Having spent many
years working to build support for an ARM-based CPU, we want to
touch on the significance of this and look at what else this change
may bring
Git commands aren’t always intuitive. If they were, we would have
these 10 commands at our disposal. They would be super useful for
accomplishing common tasks like creating or renaming a git branch,
removing files, and undoing changes.
For each git command in our wishlist, we’ll show you the commands
that actually exist and you can use to accomplish the same tasks. If
you’re still learning Git, this list reads like a tutorial and is
worth keeping as a cheatsheet.
I knew the existence of dig command but didn't exactly know when and
how to use it. Then, just recently I encountered an issue that
allowed me to learn and make use of it.