Jef Claes
On software and life
Home
All posts
Tags
opinion
12
Feb 2017
Printing money - hacking loyalty points
At work, we've all grown quite vigilant when it comes to customers trying to cheat the system. A necessary trait when wo...
13
Jan 2017
Everyone has to serve somebody, but software has to serve more than one
When people get paid to write software, we very often find some form of friction between the people that build the softw...
15
Feb 2015
Side by side
This week marked my first year at my current employer. While that event went by rather silently, one year in, a few of m...
28
Dec 2014
TDD as the crack cocaine of software
> The psychologist Mihaly Csikszentmihalyi popularized the term "flow" > to describe states of absorption in which atten...
26
Aug 2014
Solomon, the architect
Two junior developers who started working for the company at the same time, had been quite competitive with each other f...
09
Mar 2014
Tests as part of your code
In the last project I worked on - processing financial batches - we put a lot of effort in avoiding being silently wrong...
05
Jan 2014
Command and event semantics
Yesterday, I read [this blog post by Michael Feathers](https://michaelfeathers.silvrback.com/when-it-s-okay-for-a-method...
24
Nov 2013
Observations over assumptions
> I heard a story once about an engineer who worked on the Disneyland > site when it opened in Anaheim, CA in 1955. > ...
03
Nov 2013
Event source all the things?
Having covered [projections](http://www.jefclaes.be/2013/10/event-projections.html) last week, I think I have come full ...
06
Oct 2013
My understanding of event sourcing
I've been studying event sourcing from a distance for little over a year now; reading online material and going through ...
22
Sep 2013
Actor Model in COBOL
In an Actor system, each Actor acts as a self-contained and autonomous component. An Actor can only communicate with oth...
25
Aug 2013
Inheritance is like Jenga
These last few days, I have been working on a piece of our codebase that accidentally got very inheritance heavy. W...
18
Aug 2013
But I already wrote it
A few weeks ago, we set out to implement a feature that enabled back office users to set a new rate ahead of time. With ...
30
Jun 2013
Multiplayer Enterprise Architect
Hanging around in the pub after DDDX, I ended up talking to [Alberto Brandolini](https://twitter.com/ziobrando). For tho...
23
Jun 2013
Not handling edge cases, making them explicit instead
When I wrote about [accidental entities](http://www.jefclaes.be/2013/06/accidental-entities-what-about-ui.html) earlier,...
02
Jun 2013
Accidental entities - what about the UI?
This post is a follow-up to my previous blog post "[Accidental entities - you don't need that identity](http://www.jefcl...
26
May 2013
Accidental entities - you don't need that identity
An entity is identified by an identifier, while value objects are identified by their value. If I make a living ren...
07
Apr 2013
Designing entities: immutability first
The first year I wrote software for a living I spent my days mostly writing forms over data applications; most of my eff...
24
Feb 2013
My Christmas holiday project postmortem
Somewhere over a year and a half ago I discovered the music of Dire Straits, which has sparked a fanatical love and fasc...
17
Feb 2013
Adding the R to CQS: some storage options
I've been writing [quite a bit](http://www.jefclaes.be/2013/01/separating-command-data-from-logic-and.html) about [CQS](...
10
Feb 2013
Premature judgement
When I started my first job, I hardly ever judged my peers. After all, how could I? Everything was unknown for me; I cou...
09
Dec 2012
It's not cake we are baking
I recently watched a talk on Vimeo where [Christin Gorman](https://twitter.com/ChristinGorman) talks about how cookie do...
04
Nov 2012
Commuting? Have you done the math?
On my first job interview, over four years ago, I was asked whether I would relocate if I was hired. Back then, I still ...
07
Oct 2012
On job titles
It didn't take long before I noticed how little job titles mean. In my first job, you were assured to be granted [a fanc...
22
Aug 2012
Is serialization really that expensive?
While wading through an exotic codebase, I stumbled upon a static class named Convert. This class contained somewhere a...
19
Aug 2012
My learning resources distilled
I have picked up a few new tools this summer ([MongoDB](http://www.mongodb.org/), [NancyFx](http://nancyfx.org/) and [We...
03
Jun 2012
The 'everyone should learn to code' dilemma
Back when I was working on software for fire departments, we started thinking about reworking a critical piece of our so...
27
May 2012
The open plan fallacy testimonials
I wrote an article titled '[The open plan fallacy](http://www.jefclaes.be/2012/05/open-plan-fallacy.html)' just two week...
13
May 2012
The open plan fallacy
I haven't worked in a whole lot of places, somewhere around four, but every single one of them used an [open plan](http:...
06
May 2012
Why I will always love RSS
There has been a lot of noise in the tech community earlier this year about how RSS is supposedly having one foot in the...
17
Apr 2012
Some Servicelocator pattern stinks
I have been working on a somewhat legacy codebase which makes use of the [Servicelocator pattern](http://martinfowler.co...
11
Mar 2012
Learning: the Hacker Way
I have had a fair amount of discussions on continuous learning and knowledge sharing the past few days. It became rather...
20
Feb 2012
There's no place for monogamy in technology
In this post I would like to share some of my thoughts on a [recent post by James Hague](http://prog21.dadgum.com/128.ht...
27
Nov 2011
When should you take performance into consideration?
Before publishing [my previous post on rewriting an if](https://jefclaes.be/2011/11/rewriting-if.html), I knew some peop...
23
Nov 2011
Blame no one but yourself
Blame no one but yourself. This is one of the few quotes I remember months after reading [this book](https://jefclaes.be...
20
Nov 2011
Daydreaming about jQuery Mobile and the WebAPI
I recently blogged about [programming for the future of mobile](https://jefclaes.be/2011/11/programming-for-future-of-mo...
30
Oct 2011
The gift of legacy
Just after graduating, I hated legacy with the heat of a thousand suns. I felt unfortunate, having to work on old code, ...
21
Sep 2011
Comfortably numb
Something that can bother me tremendously is being surrounded by people who are in a constant state of being [comfortabl...
18
Sep 2011
Building small things
Due to the nature of things we build in our day to day job, writing software can wear out even the most fit of us. ...
08
Aug 2011
High Hopes
Last week, I resigned from my job at [Ferranti Computer Systems](http://www.ferranti.be/). Three years ago, days after r...
15
Jun 2011
Should we get this tool?
This is a decision that often needs to be made by middle management. For managers the most natural way to make this call...
09
May 2011
My thoughts on WebMatrix
After building [arealdeveloper.com](https://jefclaes.be/2011/04/arealdevelopercom.html), I felt like I had to do a follo...
01
Feb 2011
Why I still buy real books
As a technology geek, it should be hard to keep ignoring the latest generation of eReaders (read: [the Kindle](http://ww...
23
Aug 2009
Why code reviews should be a team thing
Often code reviews are done by one person, the technical lead of your team. In my opinion it's better to make each ...
15
Feb 2009
Stored Procedures: Make them or break them
I've been thinking about the use of stored procedures lately. Some questions that popped up in my head: What are th...