Scalable Distributed Design – Let me show you my architectures

inStruct event recorded at SA Agile, 21 April 2016.

Architects, those that design buildings, study architecture from the past to the present to best understand their craft.

As software developers we aren’t easily afforded this opportunity, this has always frustrated me, and has thus lead me to always want to share with my fellow craftsmen.
In this talk I lift the veil on two of my enterprise projects implemented using a message based architecture.

I walk through the architecture of the projects highlighting the SOA patterns used.
The first architecture focuses on patterns employed for performance and scalability and the second focuses on big data principles for data visualization using projections .

This presentation also focuses on the do’s and don’ts when designing a scalable message based architecture, as well as potential technology you may consider such as NServiceBus.

-Chris

Kind thanks to SA Home Loans who sponsored and hosted the event.

Team Dynamics – Adrenalin Junkies and Template Zombies

inStruct event recorded at SA Home Loans, 26 March 2015.

Managing and working with knowledge workers can be a real challenge, the old adage applies “Managing developers is like herding cats”. Seven years ago Chris picked up a book which changed his outlook on team dynamics and working with knowledge workers. “Adrenaline Junkies and Template Zombies” compiles 150 years of software team experience into simple easy to understand patterns. In this talk Chris shares his experiences and observations after applying some of these patterns to his working environment.

Xamarin Mobile Applications Unpacked – Video Release

inStruct event recorded at Riverside Hotel, 10 March 2015.

KitKat, Jelly Bean, iOS, Windows Mobile … where on earth do you start when you get into mobile development.

Mobile applications development is an ever shifting space, and transitioning into this environment means a steep learning curve. Differing operating platforms and the various development environments add layers of complexity.

The Kaleidocode team faced a mountain of questions when we started mobile development on a large enterprise driven application. In an attempt to modify the extremity of learning required and accommodate the myriad of operating platforms, we reached for Xamarin Studio.

In this session we look at;

  • Xamarin Studio, why did we select this particular tooling?
  • A demonstration on writing an iOS and Android app using a common C# code base.
  • The good, the bad and downright ugly truth about developing mobile apps.
  • The future of Xamarin using Xamarin Forms.

Free Instruct Event – Xamarin Mobile Apps Unpacked

instruct_small

Join us for a coffee and muffin Instruct event hosted by Chris Tite (entrepreneur, architect and speaker) and joined by Kaleidocode Developers, Steven van der Merwe and Divan Visagie on Xamarin Mobile Apps Unpacked.

Eventbrite - Xamarin Mobile Apps Unpacked

KitKat, Jelly Bean, iOS, Windows Mobile …

Where on earth do you start when you get into mobile development!

Mobile applications development is an ever shifting space, and transitioning into this environment means a steep learning curve. Differing operating platforms and the various development environments add layers of complexity!

The Kaleidocode team faced a mountain of questions when we started mobile development on a large enterprise driven application. In an attempt to modify the extremity of learning required and accommodate the myriad of operating platforms, we reached for Xamarin Studio.

Join us for coffee and muffins as we share the tales of trials and triumphs we experienced when embarking on this journey.

In this session we look at;

  • Xamarin Studio, why this particular tooling?
  • A demonstration on writing an iOS and Android app using a common C# code base.
  • The good, the bad and downright ugly truth about developing mobile apps.
  • The future of Xamarin using Xamarin Forms.

For more information about Chris please see christite.net.

For an invitation contact Chris at chris.tite@kaleidocode.co.za or Rory at rory.clarke@kaleidocode.co.za / 031 303 2299 or register below.

Eventbrite - Xamarin Mobile Apps Unpacked

To review the video of the last KC Instruct event, Domain Driven Design go to http://youtu.be/BPAZwFNxgrg or catch up with all past events at https://www.youtube.com/user/instructchannel/videos

BROUGHT TO YOU BY

@kaleidocode
Kaleidocode Pty Ltd
Office 200, 295 Florida Rd Morningside Durban

Domain Driven Design Instruct Event recording available for streaming

Recorded on 28 October 2014 at the Riverside Hotel in Durban.

This presentation offers insights into an extensive set of design best practices, experience-based techniques, and principles that assist in the implementation of software projects that deal with complex domains. Merging design and development practice, this session incorporates fundamental examples based on real projects that Chris has been involved with to clearly illustrate domain-driven design being applied to real-world software.

Key areas include:

  • Placing the project’s primary focus on the core domain and domain logic.
  • Basing designs for a complex system on the model of the domain.
  • Creating a collaboration between technical and domain experts to iteratively improve the conceptual model.
  • Ubiquitous Language – what is it and why does it matter
  • Common DDD Patterns
  • A hands on walk thru of a DDD designed project, explaining the tradeoffs and the wins

Free Instruct Event – Domain Driven Design

instruct_small

Join us for a coffee and muffin Instruct presentation by Chris Tite, entrepreneur, architect and speaker on Domain Driven Design.

Eventbrite - Domain Driven Design

This presentation is not about specific technologies. Rather it will offer attendees insights into an extensive set of design best practices, experience-based techniques, and principles that assist in the implementation of software projects that deal with complex domains.

Merging design and development practice, the session will incorporate fundamental examples based on real projects that Chris has been involved with to clearly illustrate domain-driven design being applied to real-world software

Key areas will include:

  • Placing the project’s primary focus on the core domain and domain logic.
  • Basing designs for a complex system on the model of the domain.
  • Creating a collaboration between technical and domain experts to iteratively improve the conceptual model.
  • Ubiquitous Language – what is it and why does it matter
  • Common DDD Patterns
  • A hands on walk thru of a DDD designed project, explaining the tradeoffs and the wins

For more information about Chris please see christite.net.

For an invitation contact Chris at chris.tite@kaleidocode.co.za or Rory at rory.clarke@kaleidocode.co.za / 031 303 2299 or register below.

Eventbrite - Domain Driven Design

To review the video of the last KC Instruct event, Evolutionary Database Design go to http://youtu.be/QuZnVn_6cBY or catch up with all past events at https://www.youtube.com/user/instructchannel/videos

BROUGHT TO YOU BY

@kaleidocode
Kaleidocode Pty Ltd
Office 200, 295 Florida Rd Morningside Durban

Free Scalable Distributed Design Instruct Session in Johannesburg – 25 September 2015

logo_instruct_jhb

Join us for a presentation by Chris Tite, entrepreneur, architect and speaker on Scalable Distributed Design hosted by Microsoft Bizspark at the Microsoft offices in Bryanston, JHB.

To register for this event please click HERE.

Designing scalable distributed systems is not an easy task; it requires a completely different approach to system architecture design. A key consideration in distributed systems is the need to maintain consistency, availability and reliability in the face of system failures. New technologies are at hand to make it easier to implement distributed systems, but are no silver bullet when it comes to designing such systems.

A key principle of distributed system design is Service Orientated Architecture (SOA). Implemented correctly, SOA reduces unnecessary dependencies that can over time creep into large systems concretising interactions and integrations that should ideally remain flexible. The real practice of SOA reduces and resolves the “corporate arthritis” and injects flexibility back into your systems, encouraging the reuse of functionality and reducing the total maintenance costs of operations and development.

In this session Chris introduces the principle of distributed system design, giving insights to help you apply what you learn in a practical way. The session will cover;

  • SOA Architectural patterns
  • Introduction to the Service Bus
  • Hands-on with NServiceBus:
    • An introduction to NServiceBus
    • Setting up the environment
    • Writing a SOA empowered application with NServiceBus
  • Practical examples of Kaleidocode implementations.

For more information about the speaker please see christite.net. NServiceBus is a product of Particular Software. They describe it it as “The most developer-friendly service bus for .NET”. NServiceBus is a service bus technology used by 50,000 developers globally.

To review videos of previous KC Instruct events, please click HERE.

Date: 25 September 2014
Time: 09:00 to 11:00
Venue: Microsoft Johannesburg Office, Auditorium 1, 3012 William Nicol Drive, Bryanston, Johannesburg, 2191

Map: CLICK HERE

To register for this event please click HERE.

BROUGHT TO YOU BY

Brought-to-you

Video release of Agile or Evolutionary Database Design

Video Release! The video of Chris Tite’s latest presentation on Agile or Evolutionary Database Design is available for streaming from the Instruct Video Channel.

Chris shares the practices and principles applied to some of Kaleidocode’s largest and most complex databases, including a banking product, run by one of South Africa’s largest banks, which managed more than 2 Billion Rand per annum and was successfully migrated between major versions with almost negligible downtime on a repeatable basis.

Recorded on 16 September 2014 at the Durban Agile User Group hosted by SA Home Loans in Durban. Chris introduced attendees to the concepts underlying iteratively changing database schemas and related data in a controlled fashion.

For many decades now both developers and DBA’s have viewed the database as somewhat of a slow moving monolith which should be altered as little as possible and designed very clearly upfront. This mind set often leads to large parts of the database becoming unused but never being cleaned. It also leads to the classic issue of tables that no one wants to clean out because they still contain a single column that is being used by some part of the solution… but no one remembers why or how.

Databases, like our code, are an integral cog in the solutions we work with. This is especially true in the Enterprise space, and as such need to be maintained with the same diligence as code. They need refactoring on an ongoing basis, but how? Chris shares methods that his team has successfully been applying agile principles in database design and maintenance on projects and products with great success.

Chris Tite presenting on “Evolutionary database design” at Agile User Group

schemaonlydbFor many decades now both developers and DBA’s have viewed the database as somewhat of a slow moving monolith which should be altered as little as possible and designed very clearly upfront. This mind set often leads to large parts of the database becoming unused but never being cleaned. It also leads to the classic issue of tables that no one wants to clean out because they still contain a single column that is being used by some part of the solution… but no one remembers why or how.

Databases, like our code, are an integral cog in the solutions we work with. This is especially true in the Enterprise space, and as such need to be maintained and refactored with the same diligence as code. Refactoring a database! An absurd concept!

Join us at the Durban Agile User Group September 2014 Meet-up hosted at SA Home Loans on Tuesday, September 16, 2014 at 5:30 PM where Chris Tite will share how his team has been applying agile principles in database design and maintenance on their projects and products with great success.

Chris will be sharing the practices and principles applied to some of their largest and most complex databases, including a banking product, run by one of South Africa’s largest banks, which managed 2 Billion Rand per annum and was successfully migrated between major versions 2.0 to 4.2 with minimal downtime.

Graph Databases Exposed Video Released

New Release! The video of Chris Tite’s latest presentation on Graph Databases Exposed is available for streaming from the Instruct Video Channel.

Recorded on 10 July 2014 at the Benjamin Hotel in Durban, Chris introduced attendees to the concepts underlying Graph Database technologies and their application.

Relational databases have been the cornerstone of data centric systems for almost 30 years, serving as a trusty workhorse upon which many developers depend. Times, however, are changing and datasets are becoming larger and more complex. Business and users expect more flexibility and insight from their data.

With a worldwide movement to connectedness in applications (Facebook, Twitter, Linked In and many more), our trusty relational database model can’t be relied upon to manage complex connected datasets.

This has lead database technologists to find more effect technologies to manage their connected data. Graph Databases, a subset of NoSQL technology, provide a powerful mechanism to work with datasets where relationships between various entities are important.

In this session Chris covers:

• Introduction to graph databases.
• Compares graph databases to relational databases.
• Introduces Neo4j, a powerful open source graph database technology.
• Demonstrates a practical implementation of graph databases in .Net.