6 Architectural Concepts to Get Familiar With
Object Oriented Paradigm The paradigm’s roots started in the 1960s and became dominant during the 1990s. Although it is not exactly an architectural paradigm, it is used as a basic organization of components. The Object Oriented Paradigm basically states that everything is an object; data is contained in fields, and code is run with methods […]
Composite objects – (how) do you assert them?
Let me start with a code sample (in java) that will demonstrate what I am going to talk about: … private IMAPService _mapService; public RealEstateField createField(List<Coordinate> coordinates) { RealEstateField field = new RealEstateField(); field.setCoordinates(coordinates)); field.setAddress(_mapService.findAddress(coordinates)); double surface = _mapService.calcSurface(coordinates)); field.setSurface(surface); field.setCenter(_mapService.findCenter(coordinates)); field.setPrice(surface * _pricePerMeter); //… […]
Unit tests, do they worth it?
Often I hear people doubting the effectiveness of unit tests, they usually say “most bugs we encounter with are ‘integration bugs’”, “they usually happen due to integration flaws with the DB, with some external API, with some configuration, etc.” Do they right? Well, it depends. Consider the following scenario in which I am sure you’ve been […]
5 Things to Improve Your Code Review
Understand the Requirements The first step for a productive code review is to understand what the task was all about and think about possible solutions. Once you understand the requirements, the code review can be more productive since you are focused on the problem to be solved rather than on a shallow read-through of the […]
Warning! Coderoaches!
Imagine a cool startup place. It has top notch working stations, huge monitors, the latest keyboards. Programmers have open cheques to choose their workstations: Mac Pro, Symphonia, ThinkStation – you name it, you got it.Vintage Pinball and Pacman machines alongside Xbox One and PS4 Pro. You know, The Works. You also see pizza trays and noodle boxes laying […]
Legacy Code – costs you a hell of a lot of money
Have you ever stopped to think about how Legacy Code impacts your time & money? How it impacts your products’ quality, hence, your customers? How it affects your employees? In this article I will try to cover the bad impacts of Legacy Code, impacts that actually cost the organization money and quite a lot of it. […]
Dealing with Technical Stories
One of the first thing they tell us about stories, is that they should be valuable. That’s what the ‘V’ in INVEST stands for: Taken from: http://en.wikipedia.org/wiki/INVEST_(mnemonic): V – Valuable – A user story must deliver value to the end user. That suggestion usually sits quite well with business side people, which nods in agreement when they […]
Technical Debt – Will hit you 3 times
“Look, it’s critical that we meet our deadline, and I know that we are already running behind. So please, we need you to push faster no matter the costs. And I don’t care if you need to cut some corners on the way. I’m totally aware of the costs, we just need to meet the […]
Testing Legacy Code – Initializer blocks
Writing tests for legacy code may seem risky, even daunting: will we break our code? Will we need to rewrite extensive parts of our code in order to test it? Not many know that by following fairly simple practices we can start unit-testing our codebase with minimal risks. Here are two examples of how to […]