Victor Savkin is a developer interested in Domain Driven Design, Enterprise Architecture, and Domain Specific Languages. He works on large enterprise applications written in Rails. Being a language nerd he spends a lot of his time playing with Smalltalk, Groovy, Scala, Clojure, Ruby, and Ioke.
Data Context Interaction: The Evolution of the Object Oriented Paradigm
This article is a practical introduction to DCI (Data Context Interaction). I’m not going to explain all theory behind it. Instead, I’m going to show you what kind of problems DCI is trying to solve and how it can be implemented in Ruby. What OO Does Well Let’s start by looking at some problems where […]
Conquering The Enterprise!
What is Enterprise Software Enterprise software has been being bashed for years. “Why is that?” How come building software for large organizations has become synonymous with boredom? Some people say it’s boring because it is not rewarding. It’s hard to stay excited working for “evil” corporations. In my view, this isn’t the right attitude. I’d […]
Going Dynamic on JVM: JRuby vs. Groovy
JVM is awesome! Many people that bash Java make the mistake of mixing up the Java language and the Java platform. Sure, the Java language is verbose; it lacks closures, mixins, etc. But the JVM is freaking awesome. It’s blazing fast, it runs everywhere, has multiple garbage collectors, has native threads and great monitoring tools. […]
DDD for Rails Developers. Part 3: Aggregates.
This entry is part 2 of 3 in the series DDD for Rails DevelopersMy Previous Articles About DDD for Rails Developers In Part 1, I talked about using the layered architecture for tackling domain complexity. I showed a few typical violations of the layered architecture and gave some advice on how to fix them. In […]
DDD for Rails Developers. Part 2: Entities and Values
This entry is part 2 of 3 in the series DDD for Rails DevelopersIn my previous article about DDD for Rails Developers, I talked about using the layered architecture for tackling domain complexity. I showed a few typical violations of the layered architecture and gave some advice on how to fix them. The Building Blocks […]
DDD for Rails Developers. Part 1: Layered Architecture.
This entry is part 1 of 3 in the series DDD for Rails DevelopersWhat is DDD There are many kinds of complexity that you have to deal with developing software and different kinds of applications will have very different sets of problems you need to solve. If you are building the next Twitter, scalability and […]
Introduction to Messaging Systems for Rubyists
What is Messaging As the Ruby community matures and our applications grow, we seek new ways to manage complexity, reduce coupling, and improve scalability. Though REST services are a good solution for a broad spectrum of problems, the temporal coupling is getting harder to manage when the traffic and the number of moving parts is […]