Sponsors

Triplebyte $1000 signing bonus
Sentry use the code “devchat” for $100 credit
CacheFly

Panel

Aaron Frost
AJ O’Neal
Joe Eames
Aimee Knight
Chris Ferdinandi

Joined by special guest: James Shore

Episode Summary

Special guest James Shore returns for another episode of JavaScript Jabber. Today the panel discusses the idea of evolutionary design. Evolutionary design comes from Agile development. It is based on the principles of continuous integration and delivery and test driven development. In short, evolutionary design is designing your code as you go rather than in advance.

The panelists discuss the difficulties of evolutionary design and how to keep the code manageable.  James Shore introduces the three types of design that make up evolutionary design, namely simple design, incremental design, and continuous design. They talk about the differences between evolutionary design and intelligent design and the correlations between evolutionary design increasing in popularity and the usage of Cloud services. They talk about environments that are and are not conducive to evolutionary design and the financial ramifications of utilizing evolutionary design.

The panelists talk about the difficulties of planning what is needed in code and how it could benefit from evolutionary design. James enumerates the steps for implementing evolutionary design, which are upfront design, reflective design, and refactoring . The team ends by discussing the value of frameworks and how they fit with evolutionary design.

Links

Agile
Angular
API
CRC cards (class responsibility collaborators)
Ember
IntelliJ
NPM
React
Redux
Scrum
Waterfall
XJS

Picks

AJ O’Neal:

Spiderman: Into the Spider-Verse
Pre-gap tracks album list
QuickChip remover alloy

Aimee Knight:

Puns.dev
Bouldering

James Shore:

Spiderman: Into the Spider Verse
Pandemic Legacy

Aaron Frost:

Easter Candy, especially

Nerd Jelly beans
Cadbury Mini Eggs


Fun D&D moments

Joe Eames:

Chronicles of Crime board game

Guests