cOcO Technologies Software Design Training and Consultancy#

Mike Morris
cOcO Technologies provides top quality training courses in object-oriented software analysis and design, systems architecture and Java programming. cOcO Technologies is the Software systems Analysis, Design and Architecture training and consultancy service of Mike Morris, object-oriented software designer/architect and Java trainer.

Mike is widely recognised for his decades of experience in OO design, software architecture, distributed systems and service-oriented architecture. He has been a teacher of Java programming topics for almost 15 years. Learn more about how to put Mike's extensive experience to work for your company.

Why Design Patterns?#

Designing object-oriented software is hard — designing reusable object-oriented software is even harder. Experienced object-oriented designers will tell you that a reusable and flexible design is difficult, if not impossible, to get "right" the first time, and that multiple attempts at reuse with subsequent redesigns are normal.

Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides (The Gang of Four), quoted in Why We Wrote Design Patterns: Elements of Reusable Object-Oriented Software

Can You Teach Software Analysis, Design and Architecture#

Software design is usually treated by the IT industry either as "black art" and left to a handful of mysteriously gifted practitioners, or is not treated at all. The result? Predictable failure: Software that becomes increasingly difficult and expensive to change as it evolves, until eventually a ceiling of complexity is reached, and the only reasonable solution is to scrap the system and rewrite it from the ground up. There seems to be a pervasive belief that good software design and architecture cannot be taught.

Mike disagrees#

It is true that the design of anything is an inherently creative process - something that requires an artists mind. But no designer creates in a vacuum. There are well established techniques and methods that lead one towards great software design; guidelines and heuristics that guide us towards better software architecture. The art and science of good OO design and change-ready systems architecture can be taught. And can be taught much better than run-of-the-mill technical training.

We specialise in top-quality, brain-friendly courses. Where conventional training courses will have you leave the classroom with a fat ring-bound manual, we'll have you leave with a head full of practical, experience-grounded, immediately applicable, real-world knowledge.

Java Training#

Mike is one of South Africa's most experienced Java trainers. Teaching a variety of Java programming and technology topics since 1995, Mike is consistently rated "Excellent" by course delegates.

Training Courses#

Check our course schedule for upcoming courses, and sign up for top-quality software architecture, design and development training.

Please contact us for tailored training programmes to suit your in-house training requirements.