Presentations

We regularly speak about software development; at events ranging from large conferences through to small user groups and specialist events. The slides from most of the presentations can be downloaded as a PDF or viewed online. They cover a range of topics related to software architecture, technical leadership and the balance with agility.

We've presented keynotes, sessions and workshops in these countries...

Australia Belgium Canada China Czech Republic Denmark England Finland France Germany Greece Guernsey Hong Kong Hungary Iceland Ireland Italy Jersey Latvia Lithuania Norway Poland Portugal Romania Scotland Spain Sweden Switzerland The Netherlands Ukraine United Arab Emirates United States Wales

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Agile and architecture, finally friends after 15 years

The term 'software architecture' has historically induced visions of ivory tower architects doing big design up front in order to create excessively detailed documents, delivered to an unsuspecting development team as if they were the second leg of a ...

Thumbnail

Software documentation - why, what and how?

We value working software over comprehensive documentation" is what the manifesto for agile software development says, with the typical misinterpretation of these few words being "don't write documentation". Of course, that's not what the manifesto says ...

Thumbnail

Software architecture as code

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Visualise, document and explore your software architecture

"We value working software over comprehensive documentation" is what the manifesto for agile software development says, with the typical misinterpretation of these few words being "don't write documentation". Of course, that's not what the manifesto says ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Visualise, document and explore your software architecture

"We value working software over comprehensive documentation" is what the manifesto for agile software development says, with the typical misinterpretation of these few words being "don't write documentation". Of course, that's not what the manifesto says ...

Thumbnail

Modular Monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Visualise, document and explore your software architecture

"We value working software over comprehensive documentation" is what the manifesto for agile software development says, with the typical misinterpretation of these few words being "don't write documentation". Of course, that's not what the manifesto says ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

Visualise, document and explore your software architecture

"We value working software over comprehensive documentation" is what the manifesto for agile software development says, with the typical misinterpretation of these few words being "don't write documentation". Of course, that's not what the manifesto says ...

Thumbnail

Agile and architecture, finally friends after 15 years

The term 'software architecture' has historically induced visions of ivory tower architects doing big design up front in order to create excessively detailed documents, delivered to an unsuspecting development team as if they were the second leg of a ...

Thumbnail

Agile and architecture, finally friends after 15 years

The term 'software architecture' has historically induced visions of ivory tower architects doing big design up front in order to create excessively detailed documents, delivered to an unsuspecting development team as if they were the second leg of a ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

The Art of Visualising Software Architecture

Ask somebody in the building industry to visually communicate the architecture of a building and you'll be presented with site plans, floor plans, elevation views, cross-section views and detail drawings. In contrast, ask a software developer to ...

Thumbnail

The Art of Visualising Software Architecture

A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the software they are building. As an industry we do have the Unified ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

The Art of Visualising Software Architecture

A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the software they are building. As an industry we do have the Unified ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

2015 - A CyberSecurity Year

CyberSecurity threats have been increasing for several years but recent high profile (and often salacious) events mean that the press, and therefore the public, have realised this is a serious issue. Once the press and the public have a concern, the ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Modular monoliths

If you want evidence that the software development industry is susceptible to fashion, just go and take a look at all of the hype around microservices. It's everywhere! For some people microservices is "the next big thing", whereas for others it's simply ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Software architecture as code

Over the past few years, I've been distilling software architecture down to its essence, helping organisations adopt a lightweight style of software architecture that complements agile approaches. This includes doing "just enough" up front design to ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Firm foundations

Software architecture is a discipline steeped in academia and subsequently feels inaccessible to many software developers. I’ve been distilling the essence of software architecture over the past few years, helping software teams to understand and ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Software architecture and the balance with agility

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Five things you should know about software architecture

Software architecture plays a pivotal role in the delivery of successful software yet it's frustratingly neglected by many teams. Whether performed by one person or shared amongst the team, the architecture role exists on even the smallest and most agile ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Software architecture and the balance with agility

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many teams struggle to effectively communicate the architecture of the ...

Thumbnail

Preparing for a digital future - seeing is believing

How do we prepare Jersey for a digital future?

Thumbnail

Going global in a digital world

Up until three years ago I'd been a permanent employee at a number of IT consulting companies for the entirety of my career. Now I'm a freelancer with clients in over 20 countries. I work with teams at small digital startups through to global household ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Software architecture vs code

Software architecture and coding are often seen as mutually exclusive disciplines, despite us referring to higher level abstractions when we talk about our software. You've probably heard others on your team talking about components, services and layers ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Software architecture and the balance with agility

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build. Together they are helping us to deliver better software that better meets the needs of the business while carefully managing time and ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Agility and the essence of software architecture

On one hand the software development industry is pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually forgetting the good of the past and software teams ...

Thumbnail

Simple sketches for diagramming your software architecture

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Software architecture and code

Software architecture and coding are often seen as mutually exclusive disciplines and there's often very little mapping from the architecture into the code and back again. People generally understand the benefit of thinking about software as higher level ...

Thumbnail

Effective software architecture sketches

The code might be the architecture but at some point in time you're going to have to explain how it works, and that's when the whiteboard pens make an appearance. Where do you start though? UML or block diagrams? How much detail should you include? ...

Thumbnail

Sustainable competence - the people vs process and technology

The budget has been secured and a team of software developers that know the latest in cutting edge technology has been hired. According to what you'll hear from the evangelists, it's a simple matter of letting the developers self-organise and the software ...

Thumbnail

Software architecture and the balance with agility

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build. Together they are helping us to deliver better software that better meets the needs of the business while carefully managing time and ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast, and this requires good communication. But it's surprising that many teams struggle to effectively communicate the architecture of their software. As an industry, we do have the Unified Modeling Language (UML), yet many people ...

Thumbnail

Strategies for reintroducing architecture into agile software development teams

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software, striving for agility and craftsmanship at every turn. On the other though, we're continually ...

Thumbnail

Software architecture and the balance with agility

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build. Together they are helping us to deliver better software that better meets the needs of the business while carefully managing time and ...

Thumbnail

The Conflict Between Agile and Architecture - Myth or Reality?

The words agile and architecture are often seen as mutually exclusive, but the real world is starting to tell a different story. Some software teams do see architecture as an unnecessary evil, whereas others are coming to the conclusion that they need to ...

Thumbnail

Effective software architecture sketches

Agility is about moving fast, and this requires good communication. But it's surprising that many teams struggle to effectively communicate the architecture of their software. As an industry, we do have the Unified Modeling Language (UML), yet many people ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication, but it's surprising that many teams struggle to effectively communicate the architecture of their software. We have the Unified Modelling Language (UML), a formal standardised notation for ...

Thumbnail

Software architecture for developers

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build. Together they are helping us to deliver better software within the typical time and budgetary constraints that most of us have. But ...

Thumbnail

The Conflict Between Agile and Architecture - Myth or Reality?

The words "agile" and "architecture" are often seen as mutually exclusive but the real world is starting to tell a different story. Some software teams do see architecture as an unnecessary evil whereas others are coming to the conclusion that they do ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication, but it's surprising that many teams find it tricky to effectively communicate the architecture of their software. We have the Unified Modelling Language (UML), a formal standardised ...

Thumbnail

Agile software architecture sketches - NoUML!

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Software architecture for developers

The agile and software craftsmanship movements are pushing up the quality of the software systems we build, but there's more we can do because even a small amount of software architecture can prevent many of the problems that projects still face, ...

Thumbnail

Agile software architecture sketches

Agility is about moving fast and this requires good communication. A consistent, shared vision is essential in order for teams to push in the same direction, but it's surprising that many agile teams struggle to effectively communicate the architecture of ...

Thumbnail

Modern Legacy Systems

The term "Legacy System" conjures up images of a vast mainframe (with whirring tapes and flashing diodes) running COBOL programs in a basement. However, many current computing stacks are quite old and have many legacy implementations. Although Java/JVM is ...

Thumbnail

Software Architecture for Developers

The agile and software craftsmanship movements are helping to push up the quality of the software systems that we build. Together they are helping us to deliver better software that better meets the needs of the business while carefully managing time and ...

Thumbnail

Effective architecture sketches

Collaboration and "moving fast" aren't terms that many people associate with the software architecture role, yet they're both essential. Why? Because collaborating on the software design process provides a basis for coming up with a better solution and it ...

Thumbnail

IT projects; if you can't beat them, change the game

Statistically, the IT projects you're involved with at this very moment have a high probability of failing. Maybe deadlines will be missed. Maybe budgets will be blown. Maybe the project won't deliver the intended value because it creates the wrong ...

Thumbnail

Just enough software architecture

One of the major points of disagreement about software relates to how much up front design to do, with people being very polarised as to when they should do design and how much they should do. "Just enough" sits somewhere in the chasm between big design ...

Thumbnail

Software teams and master builders

Applying the building metaphor to software doesn't necessarily work, although in medieval times the people that architected buildings were the select few that made into the exclusive society of master builders. The clue here is in the name and a master ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

The code doesn't tell the whole story

We all know that writing good code is important and refactoring forces us to think about making methods smaller, more reusable and self-documenting. Some people say that comments are bad and that self-commenting code is what we should strive for. Despite ...

Thumbnail

Effective architecture sketches

Collaboration and "moving fast" aren't terms that many people associate with the software architecture role, yet they're both essential. Why? Because collaborating on the software design process provides a basis for coming up with a better solution and it ...

Thumbnail

Coaching you to coach your team

I regularly run deliberate practice sessions where I ask people to pair up and design a software solution for a given problem before communicating it using pictures. This allows people to experience collaborative software design and to hone their ...

Thumbnail

The code doesn't tell the whole story

We all know that writing good code is important and refactoring forces us to think about making methods smaller, more reusable and self-documenting. Some people say that comments are bad and that self-commenting code is what we should strive for. Despite ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

The journey to becoming a 21st century software architect

Applying the building metaphor to software doesn't necessarily work, although in medieval times the people that architected buildings were the select few that made into the exclusive society of master builders. The clue here is in the name, and a master ...

Thumbnail

Are you a software architect?

The line between software development and software architecture is a tricky one. Some people will tell you that it doesn't exist and that architecture is simply an extension of the design process undertaken by developers. Others will make out it's a ...

Thumbnail

Effective architecture sketches

The code might be the architecture but at some point in time you're going to have to explain how it works, and that's when the whiteboard pens make an appearance. Where do you start though? UML or block diagrams? How much detail should you include? ...

Thumbnail

The conflict between agile and architecture - myth or reality?

The words "agile" and "architecture" are often seen as mutually exclusive but the real world is starting to tell a different story. Some software teams do see architecture as an unnecessary evil whereas others are coming to the conclusion that they do ...

Thumbnail

The conflict between agile and architecture - myth or reality?

The words "agile" and "architecture" are often seen as mutually exclusive but the real world is starting to tell a different story. Some software teams do see architecture as an unnecessary evil whereas others are coming to the conclusion that they do ...

Thumbnail

Master builder - the original generalising specialist?

Applying the building metaphor to software doesn't necessarily work, although in medieval times the people that architected buildings were the select few that made into the exclusive society of master builders. The clue here is in the name and a master ...

Thumbnail

Effective architecture sketches

Collaboration and "moving fast" aren't terms that many people associate with the software architecture role, yet they're both essential. Why? Because collaborating on the software design process provides a basis for coming up with a better solution and ...

Thumbnail

如何设计安全的架构 (How to design a secure architecture)

架构师不可能做到全知全能,但是仍然担负着...

Thumbnail

郁闷的架构师 (The Frustrated Architect)

...

Thumbnail

The code doesn't tell the whole story

We all know that writing good code is important and refactoring forces us to think about making methods smaller, more reusable and self-documenting. Some people say that comments are bad and that self-commenting code is what we should strive for. Despite ...

Thumbnail

Effective architecture sketches

Collaboration and "moving fast" aren't terms that many people associate with the software architecture role, yet they're both essential. Why? Because collaborating on the software design process provides a basis for coming up with a better solution and ...

Thumbnail

Effective architecture sketches - the sketches

Collaboration and "moving fast" aren't terms that many people associate with the software architecture role, yet they're both essential. Why? Because collaborating on the software design process provides a basis for coming up with a better solution and ...

Thumbnail

Master builder; the original generalising specialist?

Applying the building metaphor to software doesn't necessarily work, although in medieval times the people that architected buildings were the select few that made into the exclusive society of master builders. The clue here is in the name and a master ...

Thumbnail

Master builder; the original generalising specialist?

Applying the building metaphor to software doesn't necessarily work, although in medieval times the people that architected buildings were the select few that made into the exclusive society of master builders. The clue here is in the name and a master ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

Why do software projects fail?

So then, why do software projects fail?

Thumbnail

How much up front design is just enough?

One of the major points of disagreement about software relates to how much up front design to do, with people being very polarised as to when they should do design and how much they should do. "Just enough" sits somewhere in the chasm between big design ...

Thumbnail

Effective Sketches

A collaborative approach to software architecture fits in well with agile's collective ownership of the code, yet most people don't get to practice the software design process all that often.Where do you start? How do you communicate your design? UML or ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

Share the Point

This is a lightning talk about the importance of effective sketches and communication, even on SharePoint projects!

Thumbnail

Are you a software architect?

The line between software development and software architecture is a tricky one. Some people will tell you that it doesn't exist and that architecture is simply an extension of the design process undertaken by developers. Others will make out it's a ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

Software architecture in an agile world

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

Just enough up front design

Designing software given a vague set of requirements and a blank sheet of paper is a good skill to have, although not many people get to do this on a daily basis. However, with agile methods encouraging collective ownership of the code, it's really ...

Thumbnail

How much is just enough?

One of the major points of disagreement about software relates to how much up front design to do, with people being very polarised as to when they should do design and how much they should do. "Just enough" sits somewhere in the chasm between big design ...

Thumbnail

Effective Sketches

The code might be the architecture but at some point in time you're going to have to explain how it works, and that's when the whiteboard pens make their appearance. Where do you start though? How much detail should you include? Technology decisions ...

Thumbnail

Software Architecture in a Day

This one-day workshop is an introduction to software architecture and what it means to take on the software architect role. It's aimed at software developers who are looking towards their first software architect role, developers who want to become more ...

Thumbnail

The Frustrated Architect

The IT industry is either taking giant leaps ahead or it's in deep turmoil. On the one hand we're pushing forward, reinventing the way that we build software and striving for craftsmanship at every turn. On the other though, we're continually forgetting ...

Thumbnail

Load Testing for Developers

Have you ever built a software system and your users have complained that it's too slow? I have; debugging live performance and scalability issues with business sponsors watching over your shoulder isn't fun! Load testing is an often forgotten and ...

Thumbnail

Effective Sketches

The code might be the architecture but at some point in time you're going to have to explain how it works, and that's when the whiteboard pens make their appearance. Where do you start though? How much detail should you include? Technology decisions ...

Thumbnail

IT projects; if you can't beat them, change the game

Statistically, the IT projects you're involved with at this very moment have a high probability of failing. Maybe deadlines will be missed. Maybe budgets will be blown. Maybe the project won't deliver the intended value because it creates the wrong ...

Thumbnail

Where do you start?

One of the hardest things about building software is being asked to come up with a solution when all you're given is a set of requirements and a blank sheet of paper. Many project teams will dive straight into the nitty-gritty of the technologies and ...

Thumbnail

Where do you start?

One of the hardest things about software development is being asked to come up with a design when all you're given is a set of requirements and a blank sheet of paper. Many software teams will dive straight into the code and while this can initially be ...

Thumbnail

Software architecture in a day

This one-day workshop is an interactive introduction to software architecture and what it means to be a software architect. It's aimed at software developers who are looking towards their first software architect role, developers who want to become more ...

Thumbnail

Good code isn't enough

Writing code is easy. Writing good code is still relatively easy if you know what you're doing. Yet delivering quality software on time and on budget is a whole different story! Some software teams are just happy continuing to work the way that they've ...

Thumbnail

Where do you start?

One of the hardest things about software development is being asked to come up with a design when all you're given is a set of requirements and a blank sheet of paper. Many software teams will dive straight into the code and while this can initially be ...

Thumbnail

Where do you start?

One of the hardest things about software development is being asked to come up with a design when all you're given is a set of requirements and a blank sheet of paper. Many software teams will dive straight into the code and while this can initially be ...

Thumbnail

A developer's guide to load testing

Load testing is an often forgotten and seemingly difficult task that many people shy away from doing. It doesn't have to be this way though, with a basic level of load testing often enough to give you confidence that you've satisfied your performance and ...

Thumbnail

Improving software quality with an automated build process

This session will look at the development processes in use for an ASP.NET application where quality and consistency have a direct effect on the reputation of the organisation. We'll look at: Subversion and our use of code branches to manage release ...

Thumbnail

Where do you start?

One of the hardest things about software development is being asked to come up with a design when all you're given is a set of requirements and a blank sheet of paper. Many software teams will dive straight into the code and while this can initially be ...

Thumbnail

A developer's guide to load testing

Load testing is an often forgotten and seemingly difficult task that many people shy away from doing. It doesn't have to be this way though, with a basic level of load testing often enough to give you confidence that you've satisfied your performance and ...

Thumbnail

Improving software quality with an automated build process

This session will look at the development processes in use for an ASP.NET application, where quality and consistency have a direct effect on the reputation of the organisation. We’ll look at: Subversion and our use of code branches to manage release ...

Thumbnail

Documenting your software architecture - why and how?

A description of your software architecture is essential for any project of any size, explaining the rationale behind the design decisions and how the software will work in the real world. Such descriptions should include an explanation of the software ...

Thumbnail

Broadening the T

A breadth of experience is key for successful software architects, but how do you get this and what should you know? In this technical session we'll look at the things every software architect should know, drilling down into the following ...

Thumbnail

From developer to architect

This session is an interactive introduction to software architecture and what it means to be a software architect. It's aimed at software developers who are looking towards their first software architect role, as well as architects that are new to the ...

Thumbnail

An introduction to the Java platform for .NET developers

This session presents an introduction to the Java platform and is aimed at anybody with .NET experience. But wait a minute, this is 2009! Why do this now? More and more enterprise projects are turning away from a single technology stack solution and ...

Thumbnail

Pitfalls for new software architects

It's a well-known fact that we learn by making mistakes, but why not get a head-start and learn from other people's! The software architecture role involves a depth of technology skills along with a breadth of many other things, including soft skills. ...

Thumbnail

Sharing architectures

The transition from architectural vision to production code is not always an easy one. Of course we plan for a certain amount of change and accept that some decisions will, on occasion, be wrong. However, without effective communication of the ...

Thumbnail

Why software projects fail

The industry has a love/hate relationship with the Software Architect role, with many organisations dismissing it because of their negative experiences of architects that dictate from ivory towers and aren't engaged with the actual task of building ...

Thumbnail