The goal of software architecture
The goal of software architecture is to build abstract models on top of behavioral models, so your software becomes easier to maintain and/or optimize.
Recent content in Hello on Tom's ramblings
The goal of software architecture is to build abstract models on top of behavioral models, so your software becomes easier to maintain and/or optimize.
Today I saw someone on Instagram checking out what SCRUM means - trolling obviously -, and to be honest, it is both hilarious and cringe-worthy (Dutch only):
I am currently examining ways to improve development UX for a low-code platform that I’m opening up to the public.
So, how do you estimate a software development effort? Ha, that’s easy; there is a website called The Estimate Goat, that provides you random estimates every time you refresh the page!
It has been a while since I have updated this blog, so I decided to give you a small overview of what happened and what I am currently doing.
As I have a spare hour while my kids and the Mrs. watch “The Grinch” (which is an awesome Christmas movie by the way), I decided to take half an hour to reflect and sit back.
About two weeks ago, I decided to have some healthy life changes, and one of them is walking to my office.
I recently saw this tweet by Elon Musk, who is looking for developers for their Autopilot feature: We are looking for hardcore software engineers.
Good question! TL-DR: Most are, except: jQuery React vue.js Frameworks - not for me! In web UI, frameworks like BackBone, Ember and Angular might be all nice and stuff, but when you start using them to compose larger applications, things tend to break down quite easily with less experienced developers.
In the Haskell world, there is currently a big fuss about the “Foldable/Traversable in Prelude”-proposal. Edit: For the record: it was a proposal, and has been implemented in the current version of Haskell (GHC)
DDD elevator pitch@ToJans In business, you make fine-grained adjustments all the time, in order to stay ahead of the competition.
As I noticed a question for a more idiomatic Haskell version of the game Hangman on codereview.stackoverflow.com, I decided to give it a go; this is the result:
What’s all the fuss about? Quite recently, Philip Wadler published the paper “Propositions as Types” If I understood this correctly, this is about the fact that the application of a function to a type is also a type.
VCs are looking for start-ups who outperform their competitors not by a ten-fold, but at least a hundred- or a thousand-fold.
Phase 0 In March 2014, I was looking for a new project. I had an idea to generate sales leads for an up-market sunroom builder , so pitched it, setup a POC and successfully sold the idea.
Take an average programmer - let’s call him Joe D. - and have him talk to a fictitious academic called Alan T.
Every once in a while Alberto Brandolini - also known as “Ziobrando” - generates brilliant quotes. These are some of my personal favorites:
About a year ago I was talking to one of my business mentors; he asked: “How do I get on the first page of Google search?
Due to my DDD background, I am constantly on a quest for the utopian domain model. Last week during the Build Stuff 2014 conference I saw a presentation by Amanda Laucher about dependent typing that spiked my interest.
Renamed and moved to “The essence of microservices”.
During the DDDQ lean coffee last weekend the question on microservices popped up once again. This is not my first post about this subject, but apparently people wanted to know more.
We’ve all been bitten in the past: should I use TDD / BDD / DDD / CQRS / Messaging / C# / F# / Java / JavaScript / MVC / RFP / Actors / Erlang / Elixir / Haskell / OCaml / Scala / Clojure / Windows / Linux / MacOs / CSS / SASS / Haml / (The new shiny thing (tm) ) / …
Today I was having a discussion on twitter, and after re-reading my timeline and seeing this tweet, I decided to blog about it.
TL;DR: A C# List implementation respecting the category theory Haskell usually uses. So, after implementing the Maybe Monad in C# respecting category theory yesterday, I decided to implement the list as well, to gain a deeper understanding of it.
As I posted this tweet In communities, others take credit for/copy the things you do. Be flattered and understand the why: they probably lack insight and "fiero".
For me personally, the whole functor/applicative/monad thing was one of the hardest things to grasp when studying FP. Being familiar with C#, I wondered why these concepts were missing in C#, so I decided - as an exercise and to see if I really understood it - to implement it in C#.
Kijk maar naar hun partijprogramma en aanvallen naar minderheidspartijen; blijkbaar hebben de politieke partijen niets begrepen van de motivering achter het stemgedrag in de opinies.
At first: "Yeah, build-measure-learn; easy, I get it..." Now: "Wow, I didn't get that at all! I wonder how much more I missed!
I am currently setting up part of a BC for a customer, and it took me some refactoring after having not done any serious .
So, a little while ago, while I was studying Haskell, I decided to implement Greg Young’s SimpleCQRS example in Haskell.
This is the follow-up to my previous post. I wrote an example - obviously badly written on purpose - by which I prove why 100% code coverage is useless.
A little while ago, we gave a series of short talks called “DDD Basics” for the Belgian Domain-driven design community. The focus was on strategic design.
When I read this blog post about how and why one should achieve 100% code coverage on his code, I was flabbergasted, and when I noticed Bart’s reply, I decided to check:
This morning I received yet another “interesting” job offer, which looked like this: Wanted: "senior .Net architect" Description "build one framework to build all future projects, using sharepoint" #ThanksButNoThanks
Observations are useless without context. * Understanding the the observer's POV, state of mind and past experience usually tends to shed a whole new light to observations… *
After chatting with a lot of friends yesterday, I realized: February will be awesome. Here’s why: I get to finish the Erlang FoundationDB driver.
@pjvds @FransBouma it sounds like (-micro) services. Isn't this what everyone has been saying for about a decade? Soa+eda? Why new things?
So, yesterday I had another one of those “in your face moments”: While working on the Erlang FoundationDB driver, I spent a lot of time on a bug that was so blatantly obvious that I did not notice it for a long time.
Dear $FIRSTNAME, We have an amazing opportunity for you: We are looking for a senior recruitment supervisor manager leadership executive assistant helper.
Growing software teams The problem Consider the amount of different communication channels (that relate directly to communication overhead and potential misunderstandings) on teams growing in size using the formula N*(N-1)/2:
Note: This is the last post in what had to be a series of posts about my experiences working for HappyPancake.
2013 has been a good year; migrating my blog from blogengine to a more up-to-date blogging platform nearly doubled my visitors in the second half of the year, although it might have been the content as well.
Introduction This post is an attempt to predict what the following decades will look like. I wrote a more technical post about this 3 years ago , which still makes sense far as I’m concerned. Somehow, my understanding about how this applies to non-software things has evolved, and after trying to make my point on twitter, I decided to elaborate in this blog post about my assumptions on the…
This morning I saw this tweet: blogged: Clojure Kata #1 � Fizz Buzz https://t.co/kdZvqjzkRa — JanVanRyswyck (@JanVanRyswyck) 19 december 2013 As Jan is learning Clojure, he was exploring the fizzbuzz code kata.
There seems to be a lot of confusion on this subject, so I decided to give my very opinionated view on the subject.
Note: This is the first post in a series of posts about my experiences working for HappyPancake: Introduction & Swedish culture.
Note: This is the second post in a series of posts about my experiences working for HappyPancake: Introduction & Swedish culture.
Here are my tips for getting started with DDD; they were written as a response to a question in the BE-DDD newsgroup:
Why “life’s playlist” ? As I was traveling home from a very nice trip I was once again composing a playlist that somehow matched my memories.
After the great feedback of the first event, the Belgian DDD community had to do a second one, and last Thursday we did: