Weekly Head Voices #123: A semblance of a cadence.

Yes, we ended up in the mountains again.

In the period from Monday June 12 to Sunday June 25 we were mostly trying to get through the winter, fighting off a virus or three (the kind that invades biological organisms you nerd) and generally nerding out.

One more of my org2blog pull requests was merged in: You can now configure the thumbnail sizes your blog will automatically show of your uploaded images. Getting my own itch scratches merged merged into open source projects never fails to makes me happy, even although in this case there can’t be more than 5 other people who will ever use this particular functionality.

Anyways.

ASP.NET Core SURPRISE!

For a work project I was encouraged to explore Microsoft’s brand new ASP.NET Core. While on the one hand I remain wary of Microsoft (IE6 anyone?), I am an absolute sucker for new technology on the other.

You may colour me impressed.

If I had to describe it in one sentence, I would have to describe ASP.NET Core as Django done in C#. You can develop and deploy this on Windows, Mac or Linux. You model and query your data using Entity Framework Core and LINQ for example, or Dapper if you prefer performance and don’t mind the SQL (I don’t), or both. You write controller classes and view templates using the Razor templating language.

C# 7.0 looks like it could be a high development velocity language. It has modern features such as lambdas with what looks like real closures (unlike C++ variable capturing), as well as the null coalescing operator (??) and the null conditional operator (?.), the latter of which looks superbly useful. Between Visual Studio on Windows and the Mac, or the new Intellij Rider IDE (all platforms) or Visual Studio Code (all platforms), the tooling is top notch.

Time will have to tell how it compares to Python with respect to development velocity, a competition that Python traditionally fares extremely well at.

Where ASP.NET Core wins hands down is in the memory usage department: By default you deploy using the Kestrel web server, which runs your C# code using multiple libuv (yeah, of lightning fast node.js event loop fame) event loops, all in threads.

With Django I usually deploy as many processes as I can behind uwsgi, itself behind nginx. The problem is that with Python’s garbage collector, these processes end up sharing very little memory, and so one has to take into account memory limits as well as CPU count on servers when considering concurrency.

The long and the short of this is that one will probably be able to process many more requests in parallel with ASP.NET Core than with Django. With uwsgi and Django I have experimented with gevent in uwsgi and monkey patching, but this does not work as well as it does in ASP.NET Core, which has been designed with this concurrency model in mind from the get go. My first memory usage and performance experiments have shown compelling results.

Hopefully more later!

A cadence of accountability

Lately my Deep Work habits have taken a bit of a hit. At first I could not understand how to address this, until I remembered mention of a cadence of accountability in The Book.

Taking a quick look at that post, I understood what I had forgotten to integrate with my habits. Besides just doing the deep work, it’s important to “keep a compelling scoreboard” and to “create a cadence of accountability”.

Although I was tracking my deep work time using the orgmode clocking commands (when I start “deep working” on anything, I make an orgmode heading for it in my journal and clock in; when I’m done I clock out; orgmode remembers all durations) I was not regularly reviewing my performance.

With orgmode’s org-clock-report command (C-c C-x C-r), I can easily create or update a little table, embedded in my monthly journal orgfile, with all of my deep work clocked time tallied by day. This “compelling scoreboard” gives me instant insight into my weekly and monthly performance, and gives me either a mental kick in the behind or pat on the shoulder, depending on how many deep work hours I’ve been able to squeeze in that day and the days before it.

The moment I started doing this at regular intervals, “creating a cadence of accountability” in other words, I was able to swat distractions out of the way and get my zone back.

This is an interesting similarity with GTD (which I don’t do so much anymore because focus is far more important to me than taking care of sometimes arbitrary and fragmentary tasks) in that GTD has the regular review as a core principle.

Us humans being so dependent on habits to make real progress in life leads me to the conclusion that this is a clever trick to acquire behaviour that is not habitual: Work on an auxiliary behaviour that is habitual, e.g. the regular review, that encourages / reinforces behaviour that is perhaps not habitual, e.g. taking care of randomly scheduled heterogeneous tasks (GTD) or fitting in randomly scheduled focus periods (Deep Work of the journalistic variant).

As an aside, cadence in this context is just a really elegant synonym for habit. I suggest we use it more, especially at cocktail parties.

 

Have a cow, man! [weekly head voices #45]

Week 14 was awesome, thank you very much for asking! There are many reasons for this. The photo below is a memento of one of them, and was taken from my bicycle on Sunday, at that moment gliding gracefully through Schipluiden, genetic offspring #1 chattering away from the back:

Photo taken with telephone, loosely held in one hand, finger curling around to try and touch the little iris thingy on the touch screen, other fingers attempting to prevent said telephone from accelerating towards and coming to a sudden stop on planet earth. Don't you get any silly ideas now: The fact that my telephone has a touch screen does not mean that it has no keyboard. pffft!

The weather was gorgeous, enabling me to fulfil another of my life goals: A weekend BBQ hat trick. Yes dear readers, on three distinct occasions did I have the exquisite privilege of firing up my magical BBQ, bending time and space in the process, and as a by-product producing scorched but delectably edible animal flesh. After this singular achievement, I’m confident my motherland will now allow me to keep my green mamba (that’s insider speak for the South African passport).

In other news:

  • On Tuesday, I tweeted concerning my discontent with GMail Tasks (hey, I just blogged about a tweet), and especially the fact that it’s not even able to sort tasks alphabetically. My GTD-fu has been taking a seriously heavy beating due to me ditching Tracks for the far inferior GMail Tasks (I’m still not sure why I did so). The resourceful @_Noeska_ tweeted back (tweplied? twanswered?) that Remember The Milk could be the answer to my, err, tweets, one of its major features being having a cow as favicon. Now as you know, I like cows, especially scorched ones, so I was quickly convinced. Now I must have been operating my PC Computer blind-folded when I last evaluated RTM (that’s what Remember The Milk  people sometimes call it) in 2008 (I still found some old test tasks in my account), because this really is the bees knees, especially when the bee in question is into GTD. The webapp is extremely snappy, it even reminds me of my deadlined tasks via email, it has discrete projects, smart adding of tasks, LOTS of keyboard shortcuts, smart searches (those are brilliant!) and a cow as favicon, which I might have mentioned before.
  • Taking a step back from all of this, now that I have my GTD system fully operational again, I notice that due to it I’m spending more time on little things which probably do need to get done, but which my inferior accounting conveniently let slip during the previous few months, allowing even more time for the really important things. I plan to address this by explicitly allocating more time daily to the important things. The lab journal / planning document is instrumental in this.
  • There’s a stunning article by Jason Fried of 37signals in this month’s issue of Inc magazine on why he runs a flat company. He makes a good case for running a company with as little as possible hierarchy, i.e. no management for the sake of management. Their focus is on skill and craftmanship, and a form of democratic self-management. The person in a team that’s the best at some thing, becomes the organic leader in situations where that thing is most relevant. You should really read the article, I’ll whet your appetite with the following quote:

We’re not big fans of what I consider “vertical” ambition—that is, the usual career-path trajectory, in which a newbie moves up the ladder from associate to manager to vice president over a number of years of service. On the other hand, we revere “horizontal” ambition—in which employees who love what they do are encouraged to dig deeper, expand their knowledge, and become better at it. We always try to hire people who yearn to be master craftspeople, that is, designers who want to be great designers, not managers of designers; developers who want to master the art of programming, not management.

That’s almost it for this week’s edition of the Weekly Head Voices. Thanks for stopping by, I hope you have an awesome week! To help you get started, here is an animated movie of Tim Minchin’s beat poem Storm. If you’re into crystals, pyramids, palm reading, spirits or any other form of irrational self-delusion, you might want to avert your eyes. Otherwise, enjoy:

P.S. Rational self-delusion is of course an entirely different kettle of fish.

On the importance of taking notes. [Weekly Head Voices #38]

Post summary: Part one is about friends graduating from Evil School, part two is rather short mentioning vague bits of good news and part three is 100% time management and productivity boosting goodness! Feel free to skip, skim or reorder!

One

On Thursday, February 10, 2011, my dear friend Mister Krekel graduated from Evil School after years of hard work and evil-doing, and will henceforth go through life as the formidable Doctor Krekel. Please do watch out.

Evil School. (Photo by the talented fpixel.wordpress.com.)

The joyous transition took place in the Evil School’s Academiegebouw in Leiden, and this time yours truly (I’m referring to me in a round-about fashion) even had the great honour of playing a part in the formal proceedings. If you’re curious as to what exactly this ritual constitutes, see this previous edition of the WHV on the graduation of another terribly evil colleague. I believe that the bunch of us now constitute a bona fide Axis of Evil. No, the evil jokes can unfortunately not stop yet.

The Party was held in a secret cafe nearby. You will notice that I’ve capitalised Party, as it was not your average run of the mill Evil School graduation affair, but a social event of note. Here in Holland, the PhD defence and graduation are a combined affair, and so the whole day is dedicated to just one person. It is actually very special: People take time off from work, sometimes even temporarily put aside their differences, and travel from all over to attend the festivities. It’s like a wedding, except that there’s only one of you. I can only recommend it very highly. At the Party, everyone had clearly read the memo, and they were there with that singular goal in mind: Celebrate the freshly minted Evil Doctor. Presents were given, speeches were held, photos were shown, beer was imbibed and, flying in the face of all advice concerning the mixing of alcohol, cameras and social networking, the best evil photographer in town, who’s coincidentally also in Evil School, took the most amazing photos that you should be able to see on Facebook if you’re one of the privileged few to belong to The Network, also known as The Friends of the Axis of Evil.

Two

On the good news front, you’ll see (or not) on the list of EuroVis 2011 conditional accepts, that a paper by cool colleagues from far away, to which I contributed a small part, has been conditionally accepted, and hence has a significant chance of being presented at said event in Bergen, Norway (May 31 to June 3). We also have plans to submit a poster (or two), so there’s an even more significant chance that I will make an appearance at this fantastic conference! We’re also cooking up various odds and ends that will hopefully crystallise sufficiently by the end of March to be submissible for VisWeek 2011. Cross yer fingers.

Three

Today’s backyard time management section is in fact more about planning than it is about notes. However, my Pro-Tips involve combining them in an easy to implement productivity booster. When people start out in research, one of the first bits of advice they get is keeping some kind of lab journal. I think this advice applies to more than just research: If you do any kind of independent or project work, jotting down your activities, thoughts and results during the day is useful in helping to structure your thought processes, and also very helpful when you have to backtrack a complex multi-day procedure. During my Ph.D., I filled a number of real cardboard-and-paper books with notes. More recently, I’ve started using Google Documents for the same purpose. Besides all the other advantages, having to document explicitly your work output keeps you productive and on your toes.

Pro Tip #1: Keep a lab journal, even if you don’t work in a lab.

I’ve mentioned before that my resolutions for 2011 included more concrete planning. This has manifested in a work-in-progress planning for the whole year, including milestones, awards won, and so forth, but much more practically, it has manifested in a little lab-journal-compatible trick. Every morning when I sit down to begin the day, I spend a few minutes thinking and then start the day’s journal entry by writing down, as concretely as possible, the tasks that I plan to complete by the end of the day. This also ensures that I spend effort on the important things, and not only on the urgent things. So, that brings us to:

Pro Tip #2: At the start of each day, write down in your lab journal exactly and concretely what you plan to accomplish by the end of that day.

These pro tips appear to be quite straight-forward, but together they help one to focus, and to keep tabs on one’s effective productivity. In other words, just being terribly busy the whole day gets you nothing; the trick is being terribly busy in all the right directions.

P.S.

Somebody is clearly pushing the boundaries of awesomeness… cowboys AND aliens!

Weekly Head Voices #20: A Lamarckian Knot.

Welcome dear fellow-monkeys, to the 20th edition of the Weekly Head Voices, exceptionally vaguely associated with the 13th week of the year 2010. In this post, nothing much happens, except that I tell you about the bowline (the king of knots), present the usual GTD analysis, spiced up with some perspective gravy and conclude with a brief introduction to epigenetics, something that I’ve also very recently learned about for the first time.

Here is the knot I promised, as well as one of this post’s major visual elements:

I just love the gentleman’s wooden delivery! It somehow suits the knot. It turns out that the version below, albeit of exactly the same knot, is a more correct or accepted execution (but the delivery is not as cool):

This is the knot I use to tie my keys to my James Bond-small 8G USB stick and to my iButton with a length of diabolo string (that’s seriously good stuff!), as a sort of makeshift and extremely space-efficient key-ring. With the bowline knot, you can make a fixed-size loop at the end of a rope that won’t slip and is also easy to untie. It turns out this is often called the King of Knots, which is kind of nice, as it’s dead simple to make and extremely useful. To my few sailing friends this is probably old news, hopefully to some of you it’s not.

During week 13, consisting of only 4 work days (we had us a nice long weekend here in NL, hence also the lateness of this post), I had about 15 hours of regular meetings and managed to complete 26 GTD tasks spread over 9 projects.

As part of my new high-priority theme of keeping things in perspective, I’ve been revising my work strategy in a number of regards. Importantly, I’ve taken a hard look at my work-at-home policy. Somehow, I’d forgotten about my rule of only working at home on the fun parts of my job, and otherwise only in case of a looming deadline. However, there had been so many deadlines, that I had gotten into the bad habit of simply continuing at home with my work day, without applying the fun-filter. That’s all over now. The fun-filter is back on ultra-strict, thank you very much. I just have to remember next time deadline-season comes along again.

Further, my GTD-brainwashed inbox-emptying compulsion had reached pathological proportions. I wasn’t able to open up my work inbox without stressing out and immediately going to work emptying the thing out again by processing all mails, a situation that would occur at the most inopportune and unsuitable times. I’ve now got this in check as well, and I’m able to stare at my inbox when it’s not mail processing time without breaking down. (So what if I have to bite down and have those bulging veins on the sides of my head!) This is a refinement of the first of my three rules of stress-free email productivity, in that sometimes one has to check mail for other reasons than processing the whole inbox, and in those cases it’s important to remember that it’s not an inbox processing moment.

In a slight variation of the usual backyard philosophy theme, I’d like to tell you briefly about epigenetics, something that I’ve recently heard about for the first time. This weekend’s Volkskrant had a good article on the topic by Frank Grosveld (professor of Cell Biology and Genetics at the EMC in Rotterdam) and Jos de Mul (professor of Philosophy of Man and Culture, also at the EMC). Epigenetics is the study of external influences by the surroundings, feeding and habits on gene expression. The DNA itself is not modified, but how the DNA code is read and reacted upon: This happens through chemicals that attach to the nucleotides in the DNA. In this way, there’s an extra regulatory layer, allowing the environment to influence gene expression.

Sounds reasonable, until one ponders the implications: A number of studies have shown that this mechanism makes it possible for environmental effects to be inherited, even being passed on for example from grandparents to grandchildren! The Volkskrant article mentions a number of examples:

  • Men who were underfed during their pre-adolescence have grand-children with a significantly lower risk of cardiovascular disease whilst grandfathers who lived in times of plenty have grand-children with a significantly higher risk of diabetes (Pembrey and Bergen 2006).
  • In gestating rats, exposure to an anti-fungal agent used in wine-making affects offspring three generations down the line (Skinner 2008).
  • Mice placed in a stimulation-rich environment have offspring with a similarly improved memory, even when they grow up in a stimulation-poor environment (Feig 2009).

Besides shedding new light on the whole Nature vs. Nurture debate, this has the profound implication that we live in a kind of post-existentialist reality, where your actions and experiences affect not only yourself, but also your future offspring, and even the offspring of those around you, in more direct ways than hitherto recognised.

Think about that for a while, ok?

(P.S. Figuring out the first part of the title of this post is left as a simple but gratifying exercise for the reader: You too will be able to use this impressive-sounding qualifier in full sentences at cocktail parties.)

Weekly Head Voices #14: My Week Was A Wormhole.

In this week’s post, documenting the 7th week of 2010, I wonder about perceived business, mention two of our most recent open source releases and give to you, my readers, two screencasts about the DRE, in addition probably highly effective in the treatment of insomnia.

Screenshot of the FoBVis system. This is just one of our many attempts to take over the world, subtly.

Just before bedtime on Monday, I had still managed to make a note in my special top-secret Weekly Head Voices journal.  I usually do this every day to make sure I don’t forget anything by the weekend, when I usually have some time to write these posts.  Thursday night’s entry simply says “WTF, where did my week go?!” — There had been no other entries since Monday. I’m still not quite sure why it felt that way, as my breakdown of activities is similar to that of the previous week: 2 hours of lecture preparation, 3 hours of lecturing, 15 hours of scheduled meetings and 20 tasks completed (one more than last week!!) across 10 projects. Perhaps those four extra hours of meetings don’t scale linearly in the amount of business they cause, due to the number of extra context switches that they bring. I have to add that a number of truly exciting projects are brewing, but I can’t say more about them until I can say more about them, if you know what I mean.

We (The Group, of course) recently released two new open source software projects:

  • FoBVis is a tool for the real-time acquisition and visualisation of human motion: Currently it supports the Flock-of-Birds electromagnetic acquisition system, we are currently working to integrate Optotrak optical tracking system. We should also shortly have a version of the DRE that can run the FoBVis on YOUR computer as well.
  • HistoVis is a client-server system for the visualisation of large collections of (registered) histological sections.

It’s all very exciting that more products of our research are entering the big bad outside world!  The FoBVis is already being actively used by the LUMC Laboratory for Motion Analysis (we hope that more labs will start using this soon), and HistoVis will soon go live from the visible-orbit.nl server. Of course these have both been released under the new BSD license, as the GPL sucks.

Screencasts: Video Performance Art of the Nerdily Inclined. That’s where one makes a recording of one’s computer screen whilst demonstrating some or other procedure, optionally narrated by oneself, and then proceeds to upload said recording (called a screencast) to YouTube or similar. See a previous post of mine for one possible (and free) way of doing this on Windows. This weekend I produced and uploaded two such pieces, both demonstrating aspects of the DeVIDE Runtime Environment, or DRE, that paradoxically do NOT involve DeVIDE itself. Especially the second is really soothing, one could even say mildly sleep-inducing.  I just say: (1) Try (2) it.

To conclude, I give you a track from the new Massive Attack album Heligoland, called Paradise Circus. It should make your brain sit and scratch its chin stubble, not unlike the usual dose of backyard philosophy: