Erik Ramsgaard Wognsen

Thoughts & technology

Ubiquitous Language Problems

Language is tricky. Take the this post, for instance. It’s not about language problems that are ubiquitous. It’s about problems related to Ubiquitous Language — whether the problems themselves are ubiquitous or not.

Ubiquitous Language is a term from the Domain-Driven Design software development practice. It refers to a set of well-defined project terms shared by all participants: Domain experts, business analysts, developers, users. The term was coined by Eric Evans in his DDD book. I haven’t actually read it, but the idea seems sensible: If developers live and breathe the domain by speaking its language, their output is more likely to fit the business needs, and developers and domain experts are more likely to understand one another.

As a business analyst and developer, your task is to adopt the language of the domain experts, not the other way around. But that doesn’t mean that the domain experts are home free. Changes are probably required to turn their jargon into a well-defined set of terms that will ensure precise and unambiguous communication in the project and to the users. Here are some of the challenges I’ve encountered in this process.

Flying in the Front Row

I regularly fly to Copenhagen for work, and once in a while I’m assigned a front row seat — an ostensible upgrade. This must happen randomly as I have not requested or paid for it. But after experiencing it few times, I’d be inclined to pay to not sit there again.

My Weird Keyboard

I use a weird computer keyboard: The Kinesis Advantage. It’s a concave, columnar, split, tented, mechanical keyboard with thumb keys. It’s very comfortable and much better than anything Logitech or Microsoft have ever labeled ergonomic.

What Roland Boutique Needs

Roland Boutique is a series of small form factor electronic music instruments. The line debuted in 2015 with recreations of three iconic Roland 1980s synths. I got the JP-08 which I wrote about here. Since then I’ve been watching the series grow with interest.

By now, the Boutique line includes nine products recreating Roland’s back catalog: Five subtractive synths (JP-08, JU-06, JX-03, TB-03, SH-01A), the VP-03 vocoder, the TR-08 and TR-09 drum machines, and finally the D-05 “linear synthesizer” mixing sampling and synthesis.

Google Pixel 2 - First Impressions

I just bought a new smartphone. After three HTC models (Desire Z, One X, One M8) I decided to go for the pure Android experience with a Google Pixel 2 (I went with the Clearly White, non-XL version). Here are my thoughts after two weeks.

Roland JP-08 Review

In the early 1980s Roland produced a number of synthesizers that aged into classics. The flagship Jupiter-8 is perhaps the most famous, used by electronic artists such as Jean Michel Jarre, Depeche Mode, and Moby, as well as pop artists like Michael Jackson, Madonna, and Abba.

Today, a used Jupiter-8 in good condition can cost more than a new top end modern synthesizer, which is to say a lot. Luckily, in late 2015 Roland released miniature versions of these classics, at relatively affordable prices. Jupiter-8 became JP-08, and I got to own a little piece of music history.

Three originals (Juno-106, Jupiter-8, JX-3P) above the three new Three originals (Juno-106, Jupiter-8, JX-3P) above the three new ‘Boutique’ versions (JU-06, JP-08, JX-03)

It’s a bit late for a review, one and a half year after the release, but on the other hand, the Jupiter-8 came out before I was born, so in comparison, the new version is still very recent!

Work Helps Me Beat Procrastination

Back in school, I put off essay writing until the night before the due date. In gymnasium/high school, I put off assignments until the morning of the due date. In my first years of university it went so far that a student counsellor suggested that maybe university wasn’t for me.

Despite—or perhaps because of—that, I pulled myself together. After passing some courses that especially triggered my procrastination, I did much better, and eventually emerged with a master’s degree in software engineering and a PhD in computer science.

But that does not mean I had completely overcome procrastination, especially not during the PhD study. It was not until leaving academia for the IT business that I experienced what it is like to get control of my procrastination. (It’s amazing, by the way.)

Learn Vim the Harder Way, Part II

In a previous post I introduced learning Vim the harder way. To summarize:

  • The easy way: Use the arrow keys for cursor movement
  • The hard way: Don’t use arrow keys; use hjkl in normal mode
  • The harder way: Don’t use hjkl; learn Vim’s multitude of other motion commands

Now, there’s nothing wrong with using the arrow keys per se, but it very often leads to staying in insert mode most of the time and thus missing out on all the stuff you can do from normal mode. As someone wrote about vi/Vim:

your keyboard becomes a huge specialized text-editing gamepad with almost a hundred buttons.

There’s nothing wrong with using hjkl either, in fact they’re very good because they force you to use normal mode as your, well, normal mode. However, normal mode only really provides an advantage if you harness its power and go beyond the basics. For motions, that involves reducing your use of hjkl. In this part we see how to do that for inserting and deleting text.

INSIDE

I don’t game a lot, but after seeing rave reviews, I knew I had to try Playdead’s INSIDE.

And, like many others, I was blown away.