PHPNews

Objects as Contracts for Behaviour

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Monday September 29, 2014 - Permalink

A lot of so-called Object-Oriented Programming 1 is in fact nothing more than procedural code wrapped in objects. The funny thing is: many people actually defend this style of programming! This is one of the chief arguments: “ Objects should just be bags of state and nothing more. An invoice does not pay itself. An appointment does not reschedule itself. 2 invoice.pay(anAmount) and …

Continue reading »


Small Controlled Experiments (revisited)

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Friday October 3, 2014 - Permalink

My blog post on Small Controlled Experiments landed me an invitation to speak at Agile Cambridge. As the slides are probably not that useful if you haven’t seen the presentation, I advise you to read the blog post instead. See the slides on Speakerdeck Abstract The project was of to a bad start: an inherited legacy codebase, a waterfall contract, and a projected loss. The promise of …

Continue reading »


“Software design is just theory”

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Tuesday October 7, 2014 - Permalink

“Software design is just theory.” “Design patterns are too academic.” “Writing code is the only way to become a better programmer.” “Just ship it.” “That’s over-designed.” As a consultant, I visit different clients throughout Europe. Some of them hire me for help with greenfield projects. Some others want my help with legacy projects, that they have been working on for typically 4-6 …

Continue reading »


Object Reorientation

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Friday November 7, 2014 - Permalink

Presentation delivered at DrupalCamp Ghent, November 2014 No slides? Try here

Continue reading »


Domain Events

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Tuesday November 11, 2014 - Permalink

Boundaries & Messages A system’s design is defined by it’s boundaries, and by the way it communicates with other systems. This outward facing design is, all things considered, more important than the internals. It is important whether we are talking about small systems (such as an object) or large systems. The communication between systems happens with messages. We can say that our …

Continue reading »


Modelling Heuristics

Written by Mathias Verraes - Published on Mathias Verraes
Aggregated on Thursday November 20, 2014 - Permalink

The slides for my talk at Build Stuff in Vilnius. (As often, the slides are not very interesting without the text.) See the slides on Speakerdeck Abstract “How do you approach software modelling problems?” When a client asked me about my mental process, I didn’t have a proper answer — yet. The question intrigued me. Do you need a propensity for modelling, or is it a learnable skill? …

Continue reading »