Implementing Domain-Driven Design Workshop In Colombia

Here I am on a Friday evening in Bogotá, Colombia. This week I taught my Implementing Domain-Driven Design Workshop here. We had a nice group of students, and as usual the class had their eyes opened to what it means to implement with DDD. This was a slightly condensed Workshop, being only two days rather than the normal three. Still, we were able to cover all the material as well as many of the Workshop problems and coding exercises. It is a lot of material to cover in two days, and most student brains were filled to the brim by the time we finished. All of the students were quite pleased after experiencing several strategic and tactical “ah ha!” moments along the way.

Naturally I got some good feedback that I am putting into the slides and code exercises. It was suggested I provide a basic set of components for both Java and .NET developers on which they can work their exercises. I think I will do this, but I also don’t want the next classes to be too heavily focused on architectural mechanisms, but to be more concerned with the resulting domain model and accompanying tests.

Colombian Startup Incubator and Col 3.0

After the class was completed I also participated in Colombian startup incubator initiatives. I performed assessments in both product and technical architecture, advised and mentored. For three of the top projects, we stepped through questions to identify their Core Domain (yes, DDD). I only used the term DDD with one of the teams, purposely avoiding it with the other two. I wanted the teams to focus only on the competitive advantages of their product offerings and not get distracted by the details of Domain-Driven Something-Or-Another.

It worked very well. One of the three teams was already quite advanced in their product vision, so there wasn’t a lot of Core model design still lacking. Yet, for the other two teams we dug out some missing Core Domain features. One of the incubator leads later told me that the third team was “ecstatic” with the results. They were missing a really important part of the Core that will influence subscribers to invest their intellectual capital in the service and remain subscribers.

Colombia is on a mission to innovate en mass, which has opened a path for many startups. Some of the incubator programs will soon be leading their teams to the US to obtain first-round funding. Apparently much of the initial seed money comes from industries involved in natural resources (oil, minerals, etc.), and represents around 6% of all such revenues. I am rather certain that at “only 6%” it is no small change. The funding, administered through the government, is not limited to startup seed capital. Actually, the Colombian government is setting up open office space along with high-end computing resources all over the country. All you have to do is show up and use the resources, which makes it very easy for Colombians to try their hand at innovation.

It is quite interesting to see this initiative, called Col 3.0, unfolding. As they say, “watch this space.”

This is not an entirely new approach to growth by innovation. For another perspective, see Singapore’s A*Star (Agency for Science, Technology, and Research).

More to explore

Reactive DDD: Modeling Uncertainty

Domain-Driven Design supports reactive architecture and programming. Still, reactive introduces uncertainty. Back in 2003, the way that Domain-Driven Design was used and

Scroll to Top