<?xml version="1.0" encoding="UTF-8"?> <rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:psc="http://podlove.org/simple-chapters" xmlns:podcast="https://podcastindex.org/namespace/1.0" version="2.0"> <channel> <atom:link href="https://pubsubhubbub.appspot.com/" rel="hub"/> <atom:link href="https://www.case-podcast.org/feed/vorbis" rel="self"/> <atom:link href="https://www.case-podcast.org/feed/vorbis" rel="first"/> <atom:link href="https://www.case-podcast.org/feed/vorbis?page=1" rel="last"/> <title>CaSE: Conversations about Software Engineering</title> <language>en</language> <pubDate>Wed, 01 Feb 2017 00:00:00 +0000</pubDate> <lastBuildDate>Wed, 11 Sep 2024 09:28:38 +0000</lastBuildDate> <description>Conversations about Software Engineering (CaSE) is an interview podcast for software developers and architects about Software Engineering and related topics. We release a new episode every three weeks.</description> <link>https://www.case-podcast.org/</link> <generator>Podigee (https://podigee.com)</generator> <itunes:type>episodic</itunes:type> <copyright>CC BY-NC-ND 4.0</copyright> <image> <url>https://images.podigee-cdn.net/0x,stJnZf0XAEcs8lamHBQMp5dgQWZnph0w0VVFA7R5q_GU=/https://main.podigee-cdn.net/uploads/u861/8d954205-9292-4024-a2e9-13cd4ac480a4.jpg</url> <title>CaSE: Conversations about Software Engineering</title> <link>https://www.case-podcast.org/</link> </image> <itunes:image href="https://images.podigee-cdn.net/0x,stJnZf0XAEcs8lamHBQMp5dgQWZnph0w0VVFA7R5q_GU=/https://main.podigee-cdn.net/uploads/u861/8d954205-9292-4024-a2e9-13cd4ac480a4.jpg"/> <itunes:subtitle>Conversations about Software Engineering</itunes:subtitle> <itunes:author>CaSE Podcast Team</itunes:author> <itunes:explicit>no</itunes:explicit> <itunes:keywords>software engineering,software architecture,programming</itunes:keywords> <itunes:category text="Technology"/> <itunes:summary>Conversations about Software Engineering (CaSE) is an interview podcast for software developers and architects about Software Engineering and related topics. We release a new episode every three weeks.</itunes:summary> <itunes:owner> <itunes:name>CaSE Podcast Team</itunes:name> <itunes:email>podcast@innoq.com</itunes:email> </itunes:owner> <podcast:guid>e214ec2e-205b-5bb4-a029-afbc91ced10c</podcast:guid> <item> <title>Aino Corry on Better Tech Meetings</title> <itunes:title>Aino Corry on Better Tech Meetings</itunes:title> <description>Aino explains to Sven what skills are required to make meetings more successful. They talk about the different roles of meeting attendees. They continue with the thinking process to organize a meeting: do we need it at all? What is the expected outcome? Who should be invited? How long it should take? Do we need preparation for the attendees? Icebreakers? How do we craft an agenda? Then they discuss how to steer a meeting as a meeting facilitator, how to engage (quite) attendees and how to deal with negative people. Finally, they close with methods on how to improve your moderator skills.</description> <pubDate>Mon, 11 Sep 2023 08:37:28 +0000</pubDate> <link>https://www.case-podcast.org/52-aino-corry-on-better-tech-meetings</link> <guid isPermaLink="false">18c3cee5d4e6732a821f68363a8971de</guid> <content:encoded> <![CDATA[Sven Johann talks with Aino Corry about better Tech Meetings <ul> <li><a href="https://twitter.com/apaipi">Aino on Twitter</a> <a href="https://www.youtube.com/watch?v=GqkG8pVWb54">Video from Aino on meetings on Dave Farleys channel</a></li> <li><a href="https://martinfowler.com/articles/retrospective-antipatterns.html">Article about her book on Martin Fowlers website</a></li> <li><a href="https://metadeveloper.com/retrospective-antipatterns/">The book</a></li> <li><a href="https://www.liberatingstructures.com/">Liberating structures</a></li> <li><a href="https://fearlesschangepatterns.com/">Fearless Change book</a></li> </ul>]]> </content:encoded> <itunes:episode>52</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Aino Corry about better Tech Meetings</itunes:subtitle> <itunes:summary>Aino explains to Sven what skills are required to make meetings more successful. They talk about the different roles of meeting attendees. They continue with the thinking process to organize a meeting: do we need it at all? What is the expected outcome? Who should be invited? How long it should take? Do we need preparation for the attendees? Icebreakers? How do we craft an agenda? Then they discuss how to steer a meeting as a meeting facilitator, how to engage (quite) attendees and how to deal with negative people. Finally, they close with methods on how to improve your moderator skills.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>communication,Liberating structures,retrospectives</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/1210902-m-713ad605d1305da105fcf79f77ca0ffd.ogg?source=feed" type="audio/ogg" length="40800817"/> <itunes:duration>4154</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/52-aino-corry-on-better-tech-meetings/chapters.json" type="application/json+chapters"/> <podcast:episode>52</podcast:episode> </item> <item> <title>Angelo Veltens on Solid</title> <itunes:title>Angelo Veltens on Solid</itunes:title> <description>Solid is a specification that lets people store their data securely in decentralized data stores called Pods. But why do we want to keep our data decentralized? What problems does Solid solve? In this episode, Angelo Veltens explains to Lucas Dohmen the advantages (but also potential disadvantages) of this project.</description> <pubDate>Mon, 16 May 2022 08:13:15 +0000</pubDate> <link>https://www.case-podcast.org/51-angelo-veltens-on-solid</link> <guid isPermaLink="false">cecc230938025c89f70fe8793dc40e33</guid> <content:encoded> <![CDATA[Lucas Dohmen talks with Angelo Veltens about Solid <ul> <li><a href="https://solidproject.org">Solid Homepage</a></li> <li><a href="https://solidos.solidcommunity.net">SolidOS</a></li> <li><a href="https://solidcommunity.net">Solid community</a></li> <li><a href="https://github.com/solid">Solid organization on Github</a></li> <li><a href="https://github.com/SolidOS">SolidOS organization on Github</a></li> <li><a href="https://forum.solidproject.org">Forum</a></li> <li><a href="https://gitter.im/solid/home">Chat</a></li> <li><a href="https://solidproject.org/TR/protocol">Solid Spec</a></li> <li><a href="https://schema.org">schema.org</a></li> <li><a href="https://ruben.verborgh.org/blog/2020/12/07/a-data-ecosystem-fosters-sustainable-innovation">A data ecosystem fosters sustainable innovation</a></li> </ul>]]> </content:encoded> <itunes:episode>51</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Lucas Dohmen talks with Angelo Veltens about Solid</itunes:subtitle> <itunes:summary>Solid is a specification that lets people store their data securely in decentralized data stores called Pods. But why do we want to keep our data decentralized? What problems does Solid solve? In this episode, Angelo Veltens explains to Lucas Dohmen the advantages (but also potential disadvantages) of this project.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>web,solid,decentralization</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/756087-m-e282d9214c4747871613b35aa6c16b84.ogg?source=feed" type="audio/ogg" length="31258671"/> <itunes:duration>2665</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/51-angelo-veltens-on-solid/chapters.json" type="application/json+chapters"/> <podcast:episode>51</podcast:episode> </item> <item> <title>Mark Seemann on heuristics for software engineering</title> <itunes:title>Mark Seemann on heuristics for software engineering</itunes:title> <description>Stefan Tilkov talks to Mark Seemann about his book “Code that fits in your head”, heuristics about software engineering, and the role of craftspeople and engineers. They dive into three selected topics: Vertical slices, triangulation, and rhythm.</description> <pubDate>Mon, 14 Mar 2022 08:25:43 +0000</pubDate> <link>https://www.case-podcast.org/50-mark-seemann-on-heuristics-for-software-engineering</link> <guid isPermaLink="false">2ad30308013316fd0f72c3e14b9063b7</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Mark Seemann <ul> <li><a href="https://www.pearson.com/us/higher-education/program/Seemann-Code-That-Fits-in-Your-Head-Heuristics-for-Software-Engineering/PGM100003086435.html">Mark’s book</a></li> <li><a href="https://blog.ploeh.dk">Mark’s blog</a></li> <li><a href="http://psychclassics.yorku.ca/Miller/">The Magical Number Seven, Plus or Minus Two</a></li> <li><a href="https://www.pearson.com/us/higher-education/program/Freeman-Growing-Object-Oriented-Software-Guided-by-Tests/PGM172052.html">Growing Object-Oriented Software, Guided by Tests (Steve Freeman and Nat Pryce)</a></li> <li><a href="https://www.youtube.com/watch?v=f84n5oFoZBc">Hammock-driven development (Rich Hickey)</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00.000"/> <psc:chapter title="Code that fits in your head" start="00:01:12.000"/> <psc:chapter title="Picking up speed, then maintaining it" start="00:08:26.000"/> <psc:chapter title="Programming language choice" start="00:11:03.000"/> <psc:chapter title="Vertical slices" start="00:16:16.000"/> <psc:chapter title="Layering and business logic" start="00:20:34.000"/> <psc:chapter title="Triangulation" start="00:26:27.000"/> <psc:chapter title="Tests, tools and warnings" start="00:29:34.000"/> <psc:chapter title="The correct number of compiler warnings" start="00:33:26.000"/> <psc:chapter title="Craftspeople, engineers, ethics and tradeoffs" start="00:38:56.000"/> <psc:chapter title="Rhythm" start="00:45:37.000"/> <psc:chapter title="Wrap-up" start="00:52:48.000"/> </psc:chapters> <itunes:episode>50</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Mark Seemann</itunes:subtitle> <itunes:summary>Stefan Tilkov talks to Mark Seemann about his book “Code that fits in your head”, heuristics about software engineering, and the role of craftspeople and engineers. They dive into three selected topics: Vertical slices, triangulation, and rhythm.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords></itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/692027-m-3345df538d0287c3b3927463e443a718.ogg?source=feed" type="audio/ogg" length="40347753"/> <itunes:duration>3643</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/50-mark-seemann-on-heuristics-for-software-engineering/chapters.json" type="application/json+chapters"/> <podcast:episode>50</podcast:episode> </item> <item> <title>Chris Richardson on Service Templates and Service Chassis</title> <itunes:title>Chris Richardson on Service Templates and Service Chassis</itunes:title> <description>How do you enable a developer to quickly start the development of business logic of a new microservice without losing too much time on setting up everything else like monitoring, tracing, dependency management, security, configuration and much more. After the motivation, they move from service templates to service chassis, continue with governance as code and close with the possible need of product management skills to keep the chassis and the derived services current.</description> <pubDate>Mon, 21 Feb 2022 09:25:36 +0000</pubDate> <link>https://www.case-podcast.org/49-chris-richardson-on-service-templates-and-service-chassis</link> <guid isPermaLink="false">d9de9c09a15d2d9c534a600fe5d8d996</guid> <content:encoded> <![CDATA[Chris Richardson and Sven Johann discuss service templates <ul> <li><a href="https://microservices.io">Chris’ Microservices Patterns website</a></li> <li><a href="https://microservices.io/book">Chris’ book on Microservices Patterns</a></li> <li><a href="https://www.youtube.com/watch?v=4XYIs-6ZMjk">Crowdsourcing Technology Governance at Target</a></li> <li><a href="https://samnewman.io/books/building_microservices_2nd_edition">Sam Newman, Building Microservices</a>, chapter “Governance and the paved road” and “Governance and the paved road”</li> <li><a href="https://blog.thepete.net/blog/2020/09/25/service-templates-service-chassis">Blogpost from Pete Hodgson</a></li> </ul>]]> </content:encoded> <itunes:episode>49</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Chris Richardson and Sven Johann discuss service templates</itunes:subtitle> <itunes:summary>How do you enable a developer to quickly start the development of business logic of a new microservice without losing too much time on setting up everything else like monitoring, tracing, dependency management, security, configuration and much more. After the motivation, they move from service templates to service chassis, continue with governance as code and close with the possible need of product management skills to keep the chassis and the derived services current.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>service templates,microservices,architecture,teams</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/672823-m-fe51926e327b6b64e4138cb7be534364.ogg?source=feed" type="audio/ogg" length="38523680"/> <itunes:duration>3623</itunes:duration> <podcast:episode>49</podcast:episode> </item> <item> <title>Adam Tornhill on Software Design X-Rays</title> <itunes:title>Adam Tornhill on Software Design X-Rays</itunes:title> <description>Sven Johann talks to Adam Tornhill about the link between how organizations write code and how teams work together. Adam Tornhill can make this link visible to help improve your team’s code and your organization's work. The interview is based on Adam's book "Software Design X-Rays".</description> <pubDate>Mon, 17 Jan 2022 08:30:33 +0000</pubDate> <link>https://www.case-podcast.org/48-adam-tornhill-on-software-design-x-rays</link> <guid isPermaLink="false">9ed421a96d055047b67f7f49ad372c04</guid> <content:encoded> <![CDATA[Sven Johann talks with Adam Tornhill about Software Design X-Rays <p>This interview was recorded for the <a href="http://gotopia.tech/bookclub">GOTO Book Club</a></p> <ul> <li><a href="https://gotopia.tech/bookclub/episodes/behavioral-code-analysis">Part 1</a></li> <li><a href="https://gotopia.tech/bookclub/episodes/behavioral-code-analysis-part2">Part 2</a></li> <li><a href="https://pragprog.com/titles/atevol/software-design-x-rays">Adam Tornhill, Software Design X-Rays</a></li> <li><a href="https://pragprog.com/titles/atcrime/your-code-as-a-crime-scene">Adam Tornhill, Your Code as a Crime Scene</a></li> <li><a href="https://teamtopologies.com/book">Matthew Skelton & Manuel Pais, Team Topologies</a></li> <li><a href="https://amzn.to/3DBP9DC">John Ousterhout, A Philosophy of Software Design</a></li> <li><a href="https://pragprog.com/titles/tpp20/the-pragmatic-programmer-20th-anniversary-edition">Dave Thomas & Andy Hunt, The Pragmatic Programmer</a></li> <li><a href="https://amzn.to/31NJc5C">Fred Brooks Jr., The Mythical Man-Month</a></li> </ul> <p><strong>Chapter Marks:</strong></p> <ul> <li>0:00 Intro</li> <li>2:54 Behavioral code analysis</li> <li>8:53 Hotspot analysis and technical debt</li> <li>14:42 Trends analysis</li> <li>21:05 System mastery</li> <li>24:11 Software Design X-Ray</li> <li>27:18 The more metrics the better?</li> <li>30:09 Change coupling</li> <li>33:19 Copy-paste dilemma</li> <li>42:40 Change coupling gets more expensive with distance</li> <li>45:20 Team structure visualized in the code</li> <li>53:52 Outro</li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="Behavioral code analysis" start="00:02:54"/> <psc:chapter title="Hotspot analysis and technical debt" start="00:08:53"/> <psc:chapter title="Trends analysis" start="00:14:42"/> <psc:chapter title="System mastery" start="00:21:05"/> <psc:chapter title="Software Design X-Ray" start="00:24:11"/> <psc:chapter title="The more metrics the better?" start="00:27:18"/> <psc:chapter title="Change coupling" start="00:30:09"/> <psc:chapter title="Copy-paste dilemma" start="00:33:19"/> <psc:chapter title="Change coupling gets more expensive with distance" start="00:42:40"/> <psc:chapter title="Team structure visualized in the code" start="00:45:20"/> <psc:chapter title="Outro" start="00:53:52"/> </psc:chapters> <itunes:episode>48</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Adam Tornhill about Software Design X-Rays</itunes:subtitle> <itunes:summary>Sven Johann talks to Adam Tornhill about the link between how organizations write code and how teams work together. Adam Tornhill can make this link visible to help improve your team’s code and your organization's work. The interview is based on Adam's book "Software Design X-Rays".</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>design,code quality,teams</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/641236-m-0df5e9facd8087c275f1a511b116c118.ogg?source=feed" type="audio/ogg" length="37559722"/> <itunes:duration>3272</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/48-adam-tornhill-on-software-design-x-rays/chapters.json" type="application/json+chapters"/> <podcast:episode>48</podcast:episode> </item> <item> <title>Manuel Pais on Team Topologies</title> <itunes:title>Manuel Pais on Team Topologies</itunes:title> <description>Sven Johann talks with Manuel Pais about the challenges of development teams being asked to be responsible for many topics like their problem domain, technology/programming languages, security, infrastructure and operations, UX, etc. Manuel explains what cognitive load is, which types of cognitive load exist and where it can be reduced and where not. They then discuss the four fundamental team topologies stream-aligned, enabling, platform and complicated subsystem: their benefit, how you should run those teams and which obstacles you need to overcome to be successful.</description> <pubDate>Mon, 25 Oct 2021 05:40:44 +0000</pubDate> <link>https://www.case-podcast.org/47-manuel-pais-on-team-topologies</link> <guid isPermaLink="false">0a460c340f1c0cf9afd0931b41c95e48</guid> <content:encoded> <![CDATA[Sven Johann talks with Manuel Pais about Team Topologies <ul> <li><a href="https://queue.acm.org/detail.cfm?id=1142065">Interview with Werner Vogels</a></li> <li><a href="https://itrevolution.com/team-topologies">Team Topologies book</a><ul> <li><a href="https://teamtopologies.com/resources">Free resources</a></li></ul></li> <li><a href="https://github.com/teamtopologies">Github: tools and templates</a></li> <li><a href="https://academy.teamtopologies.com">Team Topologies Academy</a></li> <li><a href="https://academy.teamtopologies.com/courses/platform-as-a-product">Platform as a Product</a></li> <li><a href="https://www.infoq.com/articles/platform-engineering-as-community-service">Nikki Watts, Platform Engineering as a Community Service</a></li> </ul> <p><strong>Chapter Marks:</strong></p> <ul> <li>00:00 Intro</li> <li>01:45 The challenge of “two pizza” teams</li> <li>07:00 The three types of cognitive load</li> <li>10:48 Measuring cognitive load</li> <li>16:44 Stream aligned (“two pizza”) teams</li> <li>21:26 Platform teams</li> <li>22:54 Enabling teams</li> <li>24:25 Complicated subsystem teams</li> <li>26:13 Overcoming common problems of enabling teams</li> <li>38:21 What do Platform teams do?</li> <li>53:35 Interaction modes between teams</li> <li>56:08 Applying team topologies in small organisations</li> <li>59:51 Closing</li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="The challenge of “two pizza” teams" start="00:01:45"/> <psc:chapter title="The three types of cognitive load" start="00:07:00"/> <psc:chapter title="Measuring cognitive load" start="00:10:48"/> <psc:chapter title="Stream aligned (“two pizza”) teams" start="00:16:44"/> <psc:chapter title="Platform teams" start="00:21:26"/> <psc:chapter title="Enabling teams" start="00:22:54"/> <psc:chapter title="Complicated subsystem teams" start="00:24:25"/> <psc:chapter title="Overcoming common problems of enabling teams" start="00:26:13"/> <psc:chapter title="What do Platform teams do?" start="00:38:21"/> <psc:chapter title="Interaction modes between teams" start="00:53:35"/> <psc:chapter title="Applying team topologies in small organisations" start="00:56:08"/> <psc:chapter title="Closing" start="00:59:51"/> </psc:chapters> <itunes:episode>47</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Manuel Pais about Team Topologies</itunes:subtitle> <itunes:summary>Sven Johann talks with Manuel Pais about the challenges of development teams being asked to be responsible for many topics like their problem domain, technology/programming languages, security, infrastructure and operations, UX, etc. Manuel explains what cognitive load is, which types of cognitive load exist and where it can be reduced and where not. They then discuss the four fundamental team topologies stream-aligned, enabling, platform and complicated subsystem: their benefit, how you should run those teams and which obstacles you need to overcome to be successful.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>devops,teams</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/570643-m-c87b60c96c09f86ae32b84b753e7b8a4.ogg?source=feed" type="audio/ogg" length="39950054"/> <itunes:duration>3758</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/47-manuel-pais-on-team-topologies/chapters.json" type="application/json+chapters"/> <podcast:episode>47</podcast:episode> </item> <item> <title>Michele Hansen on Customer Interviews and Deploying Empathy</title> <itunes:title>Michele Hansen on Customer Interviews and Deploying Empathy</itunes:title> <description>Michele shares her journey in the software industry and how she got involved in product development. Customer interviews are not just something for product people -- Michele shares concrete ways that developers can get value from talking to their customers. She also shares a few tips for how to get involved with the customer research process and how to convince stakeholders of the value of the process (if necessary). They also discuss what the different between empathy, sympathy, and compassion. Empathy is understanding someone else's context and perspective. Since empathy is not something that comes naturally to everyone, Michele shares some tips about how to learn to become empathetic and become a better listener.</description> <pubDate>Mon, 04 Oct 2021 07:10:30 +0000</pubDate> <link>https://www.case-podcast.org/46-michele-hansen-on-customer-interviews-and-deploying-empathy</link> <guid isPermaLink="false">c7621db78bdf4a12a48384a8a003e924</guid> <content:encoded> <![CDATA[Joy Heron talks with Michele Hansen about customer interviews <ul> <li><a href="https://deployempathy.com">Deploy Empathy</a></li> <li><a href="https://indiyoung.com/books-practical-empathy">Practical Empathy by Indi Young</a></li> <li><a href="https://rosenfeldmedia.com/books/service-design">Service Design by Andy Polaine, Ben Reason, and Lavrans Løvlie</a></li> <li><a href="https://rosenfeldmedia.com/books/the-user-experience-team-of-one">The User Experience Team of One by Leah Buley</a></li> <li><a href="https://www.amazon.de/INSPIRED-Create-Tech-Products-Customers/dp/1119387507">Inspired by Marty Cagan</a></li> <li><a href="https://www.jstor.org/stable/183735">The Voice of the Customer, 1993 research paper by Abbie Griffin and John R. Hauser</a></li> <li><a href="https://claytonchristensen.com/ideas-in-action/books">Clayton Christensen books</a></li> <li><a href="https://www.cindyalvarez.com/lean-customer-development">Lean Customer Development by Cindy Alvarez</a></li> <li><a href="https://brenebrown.com">Brené Brown</a></li> <li><a href="https://www.getrevue.co/profile/mjwhansen">Deploy Empathy Newsletter</a></li> <li><a href="https://mjwhansen.com/software-social-podcast">Software Social Podcast</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Michele’s Journey in the Software Industry" start="00:00:00"/> <psc:chapter title="Getting interested in talking to customers" start="00:04:45"/> <psc:chapter title="Becoming an expert on customer interviews" start="00:11:13"/> <psc:chapter title="Can developers also do customer interviews?" start="00:13:58"/> <psc:chapter title="The value of doing customer interviews" start="00:14:43"/> <psc:chapter title="How to get permission to talk to customers" start="00:19:12"/> <psc:chapter title="Why is the book called “Deploy Empathy”?" start="00:21:49"/> <psc:chapter title="Rubber Duck?" start="00:24:06"/> <psc:chapter title="A new definition of empathy" start="00:25:03"/> <psc:chapter title="How to better understand someone’s perspective?" start="00:32:19"/> <psc:chapter title="How to talk so people will talk" start="00:35:56"/> <psc:chapter title="Acting empathetic vs being empathetic" start="00:38:26"/> <psc:chapter title="Improving listening skills" start="00:42:45"/> <psc:chapter title="Final thoughts & Closing" start="00:46:14"/> </psc:chapters> <itunes:episode>46</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Heron talks with Michele Hansen about customer interviews</itunes:subtitle> <itunes:summary>Michele shares her journey in the software industry and how she got involved in product development. Customer interviews are not just something for product people -- Michele shares concrete ways that developers can get value from talking to their customers. She also shares a few tips for how to get involved with the customer research process and how to convince stakeholders of the value of the process (if necessary). They also discuss what the different between empathy, sympathy, and compassion. Empathy is understanding someone else's context and perspective. Since empathy is not something that comes naturally to everyone, Michele shares some tips about how to learn to become empathetic and become a better listener.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Product,Customer Interviews,User Research,Empathy</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/555109-m-8faa2f5e5cc0128652859009a52753e7.ogg?source=feed" type="audio/ogg" length="33286826"/> <itunes:duration>2960</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/46-michele-hansen-on-customer-interviews-and-deploying-empathy/chapters.json" type="application/json+chapters"/> <podcast:episode>46</podcast:episode> </item> <item> <title>Eric Normand on Functional Thinking</title> <itunes:title>Eric Normand on Functional Thinking</itunes:title> <description>In this conversation about software engineering, Lucas Dohmen talks with Eric Normand. Eric first explains the origins of his book, Grokking Simplicity. He explains how to think in calculations, actions, and data. Lucas asks him about real-life situations dealing with concurrency and how he would solve them thinking functionally. Then they dive deep into their conversation about immutability, type systems, and learning from other communities.</description> <pubDate>Mon, 21 Jun 2021 09:25:37 +0000</pubDate> <link>https://www.case-podcast.org/45-eric-normand-on-functional-thinking</link> <guid isPermaLink="false">9c996ea120a6ce0b18ead00caaa71a73</guid> <content:encoded> <![CDATA[Lucas Dohmen talks with Eric Normand <ul> <li><a href="https://lispcast.com/about">Eric's homepage</a></li> <li><a href="https://www.manning.com/books/grokking-simplicity">Grokking Simplicity</a></li> </ul> <p>We also got four coupons to get Grokking Simplicity for free - redeem them at <a href="https://www.manning.com:">https://www.manning.com:</a></p> <ul> <li>grsmplcr-7771</li> <li>grsmplcr-2295</li> <li>grsmplcr-32E6</li> <li>grsmplcr-C494</li> </ul> <p>Chapter Marks:</p> <ul> <li>00:00:15 Introduction</li> <li>00:06:10 Functional Thinking</li> <li>00:19:27 Calculations, Actions, Events</li> <li>00:26:56 Concurrency and Immutability</li> <li>00:37:05 Immutable Facts and GDPR</li> <li>00:40:46 Object Oriented and Functional Programming</li> <li>00:59:30 Type System</li> <li>01:25:11 Learning from other communities</li> </ul>]]> </content:encoded> <itunes:episode>45</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Lucas Dohmen talks with Eric Normand</itunes:subtitle> <itunes:summary>In this conversation about software engineering, Lucas Dohmen talks with Eric Normand. Eric first explains the origins of his book, Grokking Simplicity. He explains how to think in calculations, actions, and data. Lucas asks him about real-life situations dealing with concurrency and how he would solve them thinking functionally. Then they dive deep into their conversation about immutability, type systems, and learning from other communities.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>functional programming,haskell,clojure,immutability</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/476020-m-76b297edb6f7f8be8a264db000d5d124.ogg?source=feed" type="audio/ogg" length="58791977"/> <itunes:duration>5810</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/45-eric-normand-on-functional-thinking/chapters.json" type="application/json+chapters"/> <podcast:episode>45</podcast:episode> </item> <item> <title>Nicolas Steenhout on Accessibility</title> <itunes:title>Nicolas Steenhout on Accessibility</itunes:title> <description>In this episode, web accessibility expert Nicolas Steenhout talks to Stefan Tilkov about ways to improve web sites to make them usable by everyone. They cover the basics of web accessibility, the role of frameworks, common pitfalls and how to overcome them, blueberry muffins, and the perils of snake oil vendor tools.</description> <pubDate>Tue, 01 Jun 2021 07:20:18 +0000</pubDate> <link>https://www.case-podcast.org/44-nicolas-steenhout-on-accessibility</link> <guid isPermaLink="false">cc5669b2d43b9af81a546e5e05cebea0</guid> <content:encoded> <![CDATA[Stefan interviews Nicolas Steenhout on Accessibility <ul> <li><a href="https://incl.ca">Nic’s web page</a></li> <li><a href="https://a11yrules.com">“A11y Rules” podcast</a></li> <li><a href="https://www.w3.org/TR/WCAG">Web Content Accessibility Guidelines (WCAG) 2.1</a></li> <li><a href="https://www.w3.org/WAI">W3C Web Accessibility Initiative</a></li> <li><a href="https://www.case-podcast.org/43-joy-heron-on-responsible-web-apps">CaSE episode on Responsible Web Applications with Joy Heron</a></li> <li><a href="https://www.nvaccess.org">NVDA screen reader</a></li> <li><a href="https://webaim.org">Web Accessibility in Mind</a></li> </ul>]]> </content:encoded> <itunes:episode>44</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan interviews Nicolas Steenhout on Accessibility</itunes:subtitle> <itunes:summary>In this episode, web accessibility expert Nicolas Steenhout talks to Stefan Tilkov about ways to improve web sites to make them usable by everyone. They cover the basics of web accessibility, the role of frameworks, common pitfalls and how to overcome them, blueberry muffins, and the perils of snake oil vendor tools.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>accessibility,web development</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/461570-m-4c9d2a5018cdf786d1b941e4abe91c57.ogg?source=feed" type="audio/ogg" length="38439225"/> <itunes:duration>3278</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/44-nicolas-steenhout-on-accessibility/chapters.json" type="application/json+chapters"/> <podcast:episode>44</podcast:episode> </item> <item> <title>Joy Heron on Responsible Web Applications</title> <itunes:title>Joy Heron on Responsible Web Applications</itunes:title> <description>In this episode of the CaSE Podcast, Lucas Dohmen talks to Joy Heron about Responsible Web Applications. They start talking about responsive web design and how it works nowadays with features like CSS Grid and Flexbox. Then Joy explains how to make a website usable with assistive technologies. Responsive and Accessible — That’s how we can create a responsible web application.</description> <pubDate>Mon, 10 May 2021 14:45:58 +0000</pubDate> <link>https://www.case-podcast.org/43-joy-heron-on-responsible-web-apps</link> <guid isPermaLink="false">6294dd08c92e7a13023fee3d032415d7</guid> <content:encoded> <![CDATA[Lucas Dohmen talks with Joy Heron <ul> <li><a href="https://responsibleweb.app">Responsible Web App</a></li> <li><a href="https://www.case-podcast.org/33-rachel-andrew-on-contributing-to-css-and-css-layout">Joy interviews Rachel Andrew</a></li> <li><a href="https://twitter.com/piccalilli_/status/1349718686823813121">Andy Bell Tweet on Progressive Enhancement</a></li> <li><a href="https://piccalil.li/blog/a-minimum-viable-experience-makes-for-a-resilient-inclusive-website-or-app">Blog Post: A minimum viable experience makes for a resilient, inclusive website or app</a></li> <li><a href="https://www.freecodecamp.org/news/the-100-correct-way-to-do-css-breakpoints-88d6a5ba1862/">Blog Post: The 100% correct way to do CSS breakpoints</a></li> <li><a href="https://chromestatus.com/feature/6525308435955712">Status of Container Queries in Chrome</a></li> <li><a href="https://github.com/innoq/spacy">Spacy</a></li> </ul>]]> </content:encoded> <itunes:episode>43</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Lucas Dohmen talks with Joy Heron</itunes:subtitle> <itunes:summary>In this episode of the CaSE Podcast, Lucas Dohmen talks to Joy Heron about Responsible Web Applications. They start talking about responsive web design and how it works nowadays with features like CSS Grid and Flexbox. Then Joy explains how to make a website usable with assistive technologies. Responsive and Accessible — That’s how we can create a responsible web application.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>responsive,accessible,web development</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/445082-m-61a029c206ede064bd0ca6643e571551.ogg?source=feed" type="audio/ogg" length="49406406"/> <itunes:duration>4486</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/43-joy-heron-on-responsible-web-apps/chapters.json" type="application/json+chapters"/> <podcast:episode>43</podcast:episode> </item> <item> <title>Alex Bramley on The Art of SLO, Part 3</title> <itunes:title>Alex Bramley on The Art of SLO, Part 3</itunes:title> <description>Alex Bramley continuous his conversation with Sven Johann. They begin with how granular you should monitor your user journeys and then discuss error budget policies in depth. They continue on how to iterate on SLIs, SLOs and error budget policies. They close the conversation with SLO alerting.</description> <pubDate>Mon, 03 May 2021 08:00:23 +0000</pubDate> <link>https://www.case-podcast.org/42-alex-bramley-on-the-art-of-slo-part-3</link> <guid isPermaLink="false">7bda48ebdf8dd686d4b1b98f2cf9596f</guid> <content:encoded> <![CDATA[Alex Bramley continuous his conversation with Sven Johann <ul> <li><a href="https://sre.google/books/">SRE Workbook</a></li> <li><a href="https://www.alex-hidalgo.com/the-slo-book">Implementing Service Level Objectives by Alex Hidalgo</a></li> <li><a href="https://queue.acm.org/detail.cfm?id=3096459">The Calculus of Service Availability</a></li> <li><a href="https://sre.google/resources/practices-and-processes/art-of-slos/">Art of SLO Workshop)</a></li> <li><a href="https://cloud.google.com/blog/products/cre">Google Customer Reliability Engineering blog</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/consequences-of-slo-violations-cre-life-lessons">Consequences of SLO violations</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/applying-the-escalation-policy-cre-life-lessons">Applying the escalation policy</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/an-example-escalation-policy-cre-life-lessons">An example escalation policy</a></li> </ul> <p>Chapters:</p> <ul> <li>[00:00:15.00] Welcome and intro</li> <li>[00:01:12.00] Measurement granularity</li> <li>[00:12:43.00] Error Budget Policy</li> <li>[00:32:44.00] Burn rate</li> <li>[00:49:24.00] Iterating on SLIs, SLOs, error budget policies</li> <li>[00:55:41.00] Alerting</li> <li>[01:16:35.00] Outro</li> </ul>]]> </content:encoded> <itunes:episode>42</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Alex Bramley continuous his conversation with Sven Johann</itunes:subtitle> <itunes:summary>Alex Bramley continuous his conversation with Sven Johann. They begin with how granular you should monitor your user journeys and then discuss error budget policies in depth. They continue on how to iterate on SLIs, SLOs and error budget policies. They close the conversation with SLO alerting.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>sre,slo,sli</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/441308-m-12b975fd0dd34c951bad21859a8b0ba6.ogg?source=feed" type="audio/ogg" length="47347793"/> <itunes:duration>4646</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/42-alex-bramley-on-the-art-of-slo-part-3/chapters.json" type="application/json+chapters"/> <podcast:episode>42</podcast:episode> </item> <item> <title>Alex Bramley on The Art of SLO, Part 2</title> <itunes:title>Alex Bramley on The Art of SLO, Part 2</itunes:title> <description>Alex Bramley continuous his conversation with Sven Johann. They start with what external and internal dependencies do with your availability requirements and how you calculate availability if you have a microservices dependency tree. They look into how you can introduce SLOs to your organisation. After that, they switch to measure user happiness with your monitoring system, measurement windows and how to report those results.</description> <pubDate>Mon, 26 Apr 2021 05:55:11 +0000</pubDate> <link>https://www.case-podcast.org/41-alex-bramley-on-the-art-of-slo-part-2</link> <guid isPermaLink="false">4b167752f99c773cc265a2b20b4b4f50</guid> <content:encoded> <![CDATA[Alex Bramley continuous his conversation with Sven Johann <ul> <li><a href="https://sre.google/books/">SRE Workbook</a></li> <li><a href="https://www.alex-hidalgo.com/the-slo-book">Implementing Service Level Objectives by Alex Hidalgo</a></li> <li><a href="https://queue.acm.org/detail.cfm?id=3096459">The Calculus of Service Availability</a></li> <li><a href="https://sre.google/resources/practices-and-processes/art-of-slos/">Art of SLO Workshop)</a></li> <li><a href="https://cloud.google.com/blog/products/cre">Google Customer Reliability Engineering blog</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/consequences-of-slo-violations-cre-life-lessons">Consequences of SLO violations</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/applying-the-escalation-policy-cre-life-lessons">Applying the escalation policy</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/an-example-escalation-policy-cre-life-lessons">An example escalation policy</a></li> </ul> <h2 id="chaptermarks">Chapter Marks</h2> <ul> <li>00:00:15 Welcome and intro</li> <li>00:01:48 Dealing with internal dependencies</li> <li>00:05:59 Dealing with external dependencies</li> <li>00:08:33 Dependency trees </li> <li>00:20:16 SLO communication, teaching and buy-in</li> <li>00:28:48 How to measure </li> <li>00:47:34 Measurement windows</li> <li>00:52:02 SLO Reporting </li> <li>00:54:39 Outro</li> </ul>]]> </content:encoded> <itunes:episode>41</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Alex Bramley continuous his conversation with Sven Johann</itunes:subtitle> <itunes:summary>Alex Bramley continuous his conversation with Sven Johann. They start with what external and internal dependencies do with your availability requirements and how you calculate availability if you have a microservices dependency tree. They look into how you can introduce SLOs to your organisation. After that, they switch to measure user happiness with your monitoring system, measurement windows and how to report those results.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>slo</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/434379-m-804888a7d63e6b54fb9e08f6c2085481.ogg?source=feed" type="audio/ogg" length="34317829"/> <itunes:duration>3335</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/41-alex-bramley-on-the-art-of-slo-part-2/chapters.json" type="application/json+chapters"/> <podcast:episode>41</podcast:episode> </item> <item> <title>Alex Bramley on The Art of SLO, Part 1</title> <itunes:title>Alex Bramley on The Art of SLO, Part 1</itunes:title> <description>Alex Bramley talks to Sven Johann about the basics of service level objectives. They begin with terminologies (SLI, SLO, SLA, Error Budget), look at costs of outages and discuss what reliability has to do with customer happiness. They continue with having 100% reliability is the wrong target and what’s possibly the right target. Alex then explains how to get started with collecting data about your system’s behaviour. They close the first part of this series by looking into latency SLIs.</description> <pubDate>Mon, 19 Apr 2021 06:50:50 +0000</pubDate> <link>https://www.case-podcast.org/40-alex-bramley-on-the-art-of-slo-part-1</link> <guid isPermaLink="false">1e80743b166a08d5ad67fcec21e86c39</guid> <content:encoded> <![CDATA[Alex Bramley talks to Sven Johann about the basics of service level objectives <ul> <li><a href="https://sre.google/books/">SRE Workbook</a></li> <li><a href="https://www.alex-hidalgo.com/the-slo-book">Implementing Service Level Objectives by Alex Hidalgo</a></li> <li><a href="https://queue.acm.org/detail.cfm?id=3096459">The Calculus of Service Availability</a></li> <li><a href="https://sre.google/resources/practices-and-processes/art-of-slos/">Art of SLO Workshop)</a></li> <li><a href="https://cloud.google.com/blog/products/cre">Google Customer Reliability Engineering blog</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/consequences-of-slo-violations-cre-life-lessons">Consequences of SLO violations</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/applying-the-escalation-policy-cre-life-lessons">Applying the escalation policy</a></li> <li><a href="https://cloud.google.com/blog/products/gcp/an-example-escalation-policy-cre-life-lessons">An example escalation policy</a></li> </ul> <p>Chapters:</p> <ul> <li>00:00:15 Welcome and intro</li> <li>00:02:14 Terminology: SLI, SLO, SLA</li> <li>00:09:05 Cost of a (cloud provider) outage</li> <li>00:11:22 Reliability and customers happiness</li> <li>00:20:19 Error Budgets</li> <li>00:26:31 100% reliability is the wrong target</li> <li>00:37:44 Collecting data </li> <li>00:54:31 Latency SLIs</li> <li>01:09:53 Outro</li> </ul>]]> </content:encoded> <itunes:episode>40</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Alex Bramley talks to Sven Johann about the basics of service level objectives</itunes:subtitle> <itunes:summary>Alex Bramley talks to Sven Johann about the basics of service level objectives. They begin with terminologies (SLI, SLO, SLA, Error Budget), look at costs of outages and discuss what reliability has to do with customer happiness. They continue with having 100% reliability is the wrong target and what’s possibly the right target. Alex then explains how to get started with collecting data about your system’s behaviour. They close the first part of this series by looking into latency SLIs.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>slo,sli,sla,reliability</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/427526-m-88a6fcdc19f3507d809664d97a2d352f.ogg?source=feed" type="audio/ogg" length="42342787"/> <itunes:duration>4257</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/40-alex-bramley-on-the-art-of-slo-part-1/chapters.json" type="application/json+chapters"/> <podcast:episode>40</podcast:episode> </item> <item> <title>Simon Brown on Software Architecture</title> <itunes:title>Simon Brown on Software Architecture</itunes:title> <description>Simon Brown talks to Stefan Tilkov about software architecture – the importance for developers, its role in agile software development, documentation and tooling, and the importance (or lack of importance) of UML.</description> <pubDate>Mon, 29 Mar 2021 08:10:39 +0000</pubDate> <link>https://www.case-podcast.org/39-simon-brown-on-software-architecture</link> <guid isPermaLink="false">3e24a4f82d3154b402106ec28f49f562</guid> <content:encoded> <![CDATA[Stefan talks with Simon Brown <ul> <li>GOTO Book club episodes:<ol> <li><a href="https://gotopia.tech/bookclub/episodes/software-architecture-for-developers">Software Architecture for Software Developers</a></li> <li><a href="https://gotopia.tech/bookclub/episodes/software-architecture-for-developers-c4-model">Why Architectural Work Comes before Coding</a></li></ol></li> <li><a href="https://simonbrown.je">Simon Brown’s website</a></li> <li><a href="https://dl.acm.org/doi/book/10.5555/2392670">SEI in Practice (Len Bass, Paul Clements, Rick Kazman)</a></li> <li><a href="http://agilemanifesto.org">Agile Manifesto</a></li> <li><a href="https://leanpub.com/b/software-architecture">Simon’s books</a></li> <li><a href="https://structurizr.com">Structurizr</a></li> <li><a href="https://www.oreilly.com/library/view/fundamentals-of-software/9781492043447/">Fundamentals of Software Architecture (Neal Ford, Mark Richards)</a></li> <li><a href="https://architectelevator.com">Gregor Hohpe The Software Architect Elevator</a></li> <li><a href="https://pragprog.com/titles/mkdsa/design-it/">Michael Keeling "Design It"</a></li> <li><a href="https://www.georgefairbanks.com/book/">George Fairbanks' "Just Enough Software Architecture"</a></li> <li><a href="https://www.barnesandnoble.com/w/software-systems-architecture-nick-rozanski/1119347733">Eoin Woods and Nick Rozanski's book "Software Systems Architecture"</a></li> </ul>]]> </content:encoded> <itunes:episode>39</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan talks with Simon Brown</itunes:subtitle> <itunes:summary>Simon Brown talks to Stefan Tilkov about software architecture – the importance for developers, its role in agile software development, documentation and tooling, and the importance (or lack of importance) of UML.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>software architecture,uml,structurizr,c4</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/414561-m-a61b0b0930807ff879cd3c192f8bbf1f.ogg?source=feed" type="audio/ogg" length="32797303"/> <itunes:duration>2855</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/39-simon-brown-on-software-architecture/chapters.json" type="application/json+chapters"/> <podcast:episode>39</podcast:episode> </item> <item> <title>Eoin Woods on Bringing Systems into Production and Keeping them there</title> <itunes:title>Eoin Woods on Bringing Systems into Production and Keeping them there</itunes:title> <description>Eoin Woods discusses with Sven Johann all the things developers need to know to bring systems successfully into production and how to keep them there. They discuss production environments, what goes wrong in production, architectural requirements for operations, cost of very high availability, stability and capacity, communicating operational concerns, observability, learning from incidents, chaos engineering and operational models (SRE, You build it, you run it, classic).</description> <pubDate>Mon, 01 Mar 2021 08:25:54 +0000</pubDate> <link>https://www.case-podcast.org/38-eoin-woods-on-bringing-systems-into-production-and-keeping-them-there</link> <guid isPermaLink="false">89bb2c9233390c0a5c750ab219eee949</guid> <content:encoded> <![CDATA[Sven Johann talks with Eoin Woods <ul> <li><a href="https://www.viewpoints-and-perspectives.info">Eoin’s book on software and systems architecture</a></li> <li><a href="https://www.cs.unb.ca/~wdu/cs6075w10/sa2.htm">Understanding quality attributes</a></li> <li><a href="https://queue.acm.org/detail.cfm?id=3096459">Calculus of service availability</a></li> <li><a href="https://pragprog.com/titles/mnee2/release-it-second-edition">Release It</a></li> <li><a href="https://arc42.org">arc42 template for communicating software architecture</a></li> <li><a href="https://c4model.com">C4 model</a></li> <li><a href="https://www.infoq.com/articles/operational-architectural-view">Operational, the forgotten architecural view</a></li> <li><a href="https://research.google/pubs/pub36356">Google Dapper, a large scale distributed tracing infrastructure</a></li> <li><a href="https://www.learningfromincidents.io">Learning from incidents</a></li> <li><a href="https://teamtopologies.com/book">Organizing teams for flow</a></li> <li><a href="https://www.oreilly.com/library/view/chaos-engineering/9781492043850">Chaos Engineering (Casey Rosenthal, Nora Jones)</a></li> <li><a href="https://www.oreilly.com/library/view/learning-chaos-engineering/9781492050995">Chaos Engineering (Russ Miles)</a></li> <li><a href="https://sre.google/books">Site Reliability Engineering</a></li> <li><a href="https://www.oreilly.com/library/view/seeking-sre/9781491978856">Seeking SRE</a></li> <li><a href="https://www.youtube.com/watch?v=mFQRn_m2mP4">Adrian Cockcroft on resiliency - learing from other disciplines</a></li> <li><a href="https://www.oreilly.com/library/view/distributed-systems-observability/9781492033431">Cindy Sridharan, Distributed Systems Observability</a></li> <li><a href="https://pragprog.com/titles/dlret/agile-retrospectives">Esther Derby, Diana Larson, Agile Retrospectives</a></li> <li><a href="https://metadeveloper.com/retrospective-antipatterns">Aino Corry, Retrospectives Anti Patterns</a></li> </ul>]]> </content:encoded> <itunes:episode>38</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Eoin Woods</itunes:subtitle> <itunes:summary>Eoin Woods discusses with Sven Johann all the things developers need to know to bring systems successfully into production and how to keep them there. They discuss production environments, what goes wrong in production, architectural requirements for operations, cost of very high availability, stability and capacity, communicating operational concerns, observability, learning from incidents, chaos engineering and operational models (SRE, You build it, you run it, classic).</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>sre,production,observability,chaos engineering</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/385584-m-d04f78737f8d333072b4ef1868c426f8.ogg?source=feed" type="audio/ogg" length="53803941"/> <itunes:duration>5387</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/38-eoin-woods-on-bringing-systems-into-production-and-keeping-them-there/chapters.json" type="application/json+chapters"/> <podcast:episode>38</podcast:episode> </item> <item> <title>Christin Gorman on Why large projects fail and what to do about it</title> <itunes:title>Christin Gorman on Why large projects fail and what to do about it</itunes:title> <description>In this episode, Stefan talks to software developer Christin Gorman about her experience with very large software projects and the reasons why they fail, especially in the public sector. The two address issues of size, approaches that do and don’t work, share some of their favorite failure stories and try to enumerate some strategies to do something about them.</description> <pubDate>Thu, 28 Jan 2021 06:50:06 +0000</pubDate> <link>https://www.case-podcast.org/37-christin-gorman-on-why-large-projects-fail-and-what-to-do-about-it</link> <guid isPermaLink="false">fd136869218e24617fc24125cdf14c47</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Christin Gorman <ul> <li><a href="https://www.kodemaker.no">Christin’s employer</a></li> <li><a href="https://twitter.com/christingorman">Christin on Twitter</a></li> <li><a href="https://en.wikipedia.org/wiki/Agile_software_development">History of Agile Software Development</a></li> <li><a href="https://archive.org/details/seeinglikestateh00scot_0">“Seeing like a state” by James C. Scott</a></li> <li><a href="https://www.oreilly.com/library/view/accelerate/9781457191435/">“Accelerate” by Nicole Forsgren et al</a></li> <li><a href="https://www.gov.uk/government/organisations/government-digital-service">Government Digital Service</a></li> </ul>]]> </content:encoded> <itunes:episode>37</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Christin Gorman</itunes:subtitle> <itunes:summary>In this episode, Stefan talks to software developer Christin Gorman about her experience with very large software projects and the reasons why they fail, especially in the public sector. The two address issues of size, approaches that do and don’t work, share some of their favorite failure stories and try to enumerate some strategies to do something about them.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>software development,failures</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/369421-m-a0f4b3fc8b99bc421d51edb5c7249223.ogg?source=feed" type="audio/ogg" length="41912219"/> <itunes:duration>3688</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/37-christin-gorman-on-why-large-projects-fail-and-what-to-do-about-it/chapters.json" type="application/json+chapters"/> <podcast:episode>37</podcast:episode> </item> <item> <title>Artur Ortega on GraphQL</title> <itunes:title>Artur Ortega on GraphQL</itunes:title> <description>In this episode, Artur Ortega explains to Stefan Tilkov what GraphQL is, how it came to be, and how it differs from REST. Predictably, the two debate whether it’s better or not, but also spend some time going over its technical details and applicability to different usage scenarios.</description> <pubDate>Mon, 04 Jan 2021 08:55:48 +0000</pubDate> <link>https://www.case-podcast.org/36-artur-ortega-on-graphql</link> <guid isPermaLink="false">32fe5ee7b122b7b1b6d92429ce2e3236</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Artur Ortega about GraphQL <ul> <li><a href="https://graphql.org">What is GraphQL?</a></li> <li><a href="https://www.apollographql.com/blog/why-use-graphql">Why use GraphQL?</a></li> <li><a href="https://wundergraph.com/blog/why_not_use_graphql">Why not use GraphQL?</a></li> <li><a href="http://spec.graphql.org">The GraphQL specification</a></li> <li><a href="https://graphql.org/code">Implementations of GraphQL</a></li> <li><a href="https://graphql.org/learn/thinking-in-graphs">Thinking in Graphs</a></li> <li><a href="https://www.apollographql.com/docs/apollo-server/data/subscriptions">Real-Time APIs using GraphQL Subscriptions</a></li> <li><a href="https://www.youtube.com/watch?v=Me4nQ88V7tw">Talk From the Creators of GraphQL at Facebook</a></li> <li><a href="https://www.youtube.com/watch?v=cOcOpziDyrk">Talk by Joey Nenni of Paypal about GraphQL Security</a></li> <li><a href="https://www.apollographql.com/docs/federation">What is Apollo Federation</a></li> <li><a href="https://www.youtube.com/watch?v=LKQKn1oFXJU">Talk about the architecture of Apollo Federation</a></li> <li><a href="https://netflixtechblog.com/how-netflix-scales-its-api-with-graphql-federation-part-1-ae3557c187e2">How Netflix Scales its API with GraphQL Federation</a></li> </ul>]]> </content:encoded> <itunes:episode>36</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Artur Ortega about GraphQL</itunes:subtitle> <itunes:summary>In this episode, Artur Ortega explains to Stefan Tilkov what GraphQL is, how it came to be, and how it differs from REST. Predictably, the two debate whether it’s better or not, but also spend some time going over its technical details and applicability to different usage scenarios.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>graphql,rest,api</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/352843-m-09454ce163d91c56b08df40afbab18a9.ogg?source=feed" type="audio/ogg" length="43607577"/> <itunes:duration>4019</itunes:duration> <podcast:episode>36</podcast:episode> </item> <item> <title>Markus Völter on Language Engineering</title> <itunes:title>Markus Völter on Language Engineering</itunes:title> <description>In this episode, Markus Völter talks with Stefan Tilkov about language engineering and its connection to domain-driven design. Picking up from their past interactions in various different podcasts, the two agree and disagree fundamentally in equal parts, on topics such as the usefulness of DSLs, the costs and benefits of domain experts writing code, and the tradeoffs of various architectural approaches.</description> <pubDate>Wed, 07 Oct 2020 05:34:15 +0000</pubDate> <link>https://www.case-podcast.org/35-markus-volter-on-language-engineering</link> <guid isPermaLink="false">c75ae288b53343686e4cf2afe6ad3330</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Markus Völter about language engineering <ul> <li><a href="https://www.infoq.com/articles/architecture-as-language-a-story">Architecture as a language article by Markus</a></li> <li><a href="https://www.case-podcast.org/31-mike-sperber-on-functional-architecture">Episode 31: Mike Sperber on Functional Architecture</a></li> <li><a href="http://mbeddr.com/files/dasia_wortmann.pdf">Domain-specific languages for efficient satellite control software development (PDF)</a></li> <li><a href="https://www.jetbrains.com/mps">Jetbrains MPS</a></li> <li><a href="http://mbeddr.com">Mbeddr</a></li> <li><a href="https://en.wikipedia.org/wiki/Domain-driven_design">Domain-driven design (Wikipedia)</a></li> </ul>]]> </content:encoded> <itunes:episode>35</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Markus Völter about language engineering</itunes:subtitle> <itunes:summary>In this episode, Markus Völter talks with Stefan Tilkov about language engineering and its connection to domain-driven design. Picking up from their past interactions in various different podcasts, the two agree and disagree fundamentally in equal parts, on topics such as the usefulness of DSLs, the costs and benefits of domain experts writing code, and the tradeoffs of various architectural approaches.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>language engineering,domain-driven design,dsl</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/269167-m-8d51955f7f3a2759636e3291979cb2ea.ogg?source=feed" type="audio/ogg" length="60074961"/> <itunes:duration>4912</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/35-markus-volter-on-language-engineering/chapters.json" type="application/json+chapters"/> <podcast:episode>35</podcast:episode> </item> <item> <title>Birgitta Böckeler on Cultivating Architecture Principles</title> <itunes:title>Birgitta Böckeler on Cultivating Architecture Principles</itunes:title> <description>Birgitta Böckeler talks with Sven Johann about cultivating architecture principles. They first discuss what architecture principles are, why they are useful, how they are structured and how they help to guide decision making across multiple teams. They then talk about their lifecycle: who creates them, checks if they are aligned with business goals, prioritizes them, how they should be communicated, how you know they are useful and when to potentially retire them.</description> <pubDate>Mon, 24 Aug 2020 05:41:11 +0000</pubDate> <link>https://www.case-podcast.org/34-birgitta-bockeler-on-cultivating-architecture-principles</link> <guid isPermaLink="false">4fb0907b26e372f55b9012489664c57d</guid> <content:encoded> <![CDATA[Sven Johann talks with Birgitta Böckeler about Cultivating Architecture Principles <ul> <li><a href="https://birgitta.info">Birgitta’s homepage</a></li> <li><a href="https://www.youtube.com/watch?v=MZnrxjw602E">Martin Fowler and Birgitta on architecture principles</a></li> <li><a href="https://pubs.opengroup.org/architecture/togaf8-doc/arch/chap29.html">TOGAF on architecture principles</a></li> </ul>]]> </content:encoded> <itunes:episode>34</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Birgitta Böckeler about Cultivating Architecture Principles</itunes:subtitle> <itunes:summary>Birgitta Böckeler talks with Sven Johann about cultivating architecture principles. They first discuss what architecture principles are, why they are useful, how they are structured and how they help to guide decision making across multiple teams. They then talk about their lifecycle: who creates them, checks if they are aligned with business goals, prioritizes them, how they should be communicated, how you know they are useful and when to potentially retire them.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>architecture,communication,teams</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/268678-m-af4b42478f3c2183f29a5998273d7543.ogg?source=feed" type="audio/ogg" length="29705881"/> <itunes:duration>2649</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/34-birgitta-bockeler-on-cultivating-architecture-principles/chapters.json" type="application/json+chapters"/> <podcast:episode>34</podcast:episode> </item> <item> <title>Rachel Andrew on contributing to CSS and CSS Layout</title> <itunes:title>Rachel Andrew on contributing to CSS and CSS Layout</itunes:title> <description>Joy Heron talks with Rachel Andrew about CSS Layout. Rachel shares her journey as a web developer and how the web has changed over that time. They discuss Rachel’s work with the CSS working group and how developers can get involved to improve the web for the future. Rachel also talks about the current status of CSS layout and what we can expect in the near future. To wrap up, Rachel shares some practical tips and they discuss the future of the web platform.</description> <pubDate>Thu, 28 May 2020 08:59:47 +0000</pubDate> <link>https://www.case-podcast.org/33-rachel-andrew-on-contributing-to-css-and-css-layout</link> <guid isPermaLink="false">88e871cdf66c38c41574c7449bd87b99</guid> <content:encoded> <![CDATA[Joy Heron interviews Rachel Andrew about CSS <ul> <li><a href="https://csslayout.news">CSS Layout Newsletter</a></li> <li><a href="https://twitter.com/rachelandrew">Twitter - @rachelandrew</a></li> <li><a href="https://rachelandrew.co.uk">Rachel Andrew Website</a></li> <li><a href="https://noti.st/rachelandrew">Rachel Andrew Noti.st Site</a></li> <li><a href="https://grabaperch.com">Perch CMS</a></li> <li><a href="https://noti.st">Notist</a></li> <li><a href="https://www.w3.org/Style/CSS/Overview.en.html">CSS Working Group</a></li> <li><a href="https://github.com/w3c/csswg-drafts">CSS Working Group Github</a></li> <li><a href="https://www.case-podcast.org/1-modern-css-with-jen-simmons">CaSE Podcast Episode on Modern CSS</a></li> <li><a href="https://accessibilityinsights.io">Accessibility Insights</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Rachel’s Journey as a web developer" start="00:00:00"/> <psc:chapter title="CSS Layout Newsletter" start="00:04:18"/> <psc:chapter title="Rachel’s Products & Consulting" start="00:04:45"/> <psc:chapter title="Mainly a backend developer" start="00:07:23"/> <psc:chapter title="Solve Problems in the right place" start="00:08:28"/> <psc:chapter title="CSS Working Group" start="00:10:10"/> <psc:chapter title="Feature Development for CSS" start="00:12:51"/> <psc:chapter title="How CSS has changed over the years" start="00:14:34"/> <psc:chapter title="Has there been a change in attitude towards CSS?" start="00:16:24"/> <psc:chapter title="Is it easier to learn CSS now?" start="00:17:44"/> <psc:chapter title="CSS Layout: Grid & Subgrid" start="00:18:46"/> <psc:chapter title="Writing Mode Agnostic - logical properties" start="00:20:13"/> <psc:chapter title="Are logical properties already supported?" start="00:22:08"/> <psc:chapter title="Multi-column spec & CSS for print" start="00:23:52"/> <psc:chapter title="Container Queries?" start="00:26:21"/> <psc:chapter title="How can developers provide feedback?" start="00:29:07"/> <psc:chapter title="How to structure and organize CSS?" start="00:31:59"/> <psc:chapter title="Is there a use case for CSS frameworks?" start="00:34:04"/> <psc:chapter title="Solve the problems you’ve got" start="00:34:14"/> <psc:chapter title="Tips for writing good CSS" start="00:37:22"/> <psc:chapter title="Effect of losing Edge as a rendering engine" start="00:37:56"/> <psc:chapter title="Accessibility" start="00:42:21"/> <psc:chapter title="Wrap-up" start="00:44:11"/> </psc:chapters> <itunes:episode>33</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Heron interviews Rachel Andrew about CSS</itunes:subtitle> <itunes:summary>Joy Heron talks with Rachel Andrew about CSS Layout. Rachel shares her journey as a web developer and how the web has changed over that time. They discuss Rachel’s work with the CSS working group and how developers can get involved to improve the web for the future. Rachel also talks about the current status of CSS layout and what we can expect in the near future. To wrap up, Rachel shares some practical tips and they discuss the future of the web platform.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>css,css layout,css working group,w3c,web development,html,css grid,flexbox,multi-column spec,accessibility</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/216317-m-8a37357a3510478c4108c4b6fb6e9063.ogg?source=feed" type="audio/ogg" length="32568463"/> <itunes:duration>2794</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/33-rachel-andrew-on-contributing-to-css-and-css-layout/chapters.json" type="application/json+chapters"/> <podcast:episode>33</podcast:episode> </item> <item> <title>Daniel Bryant on Service Meshes and API Gateways for Application Modernization</title> <itunes:title>Daniel Bryant on Service Meshes and API Gateways for Application Modernization</itunes:title> <description>Daniel Bryant talks with Sven Johann about the business problems to modernize applications. They need to be decoupled from the compute fabric and the network fabric and Daniel explains the reasons for that, what products are available and what strategies the different cloud vendors follow. They move on with how to get started, questions to select an API gateway, technologies behind them and the challenges. They talk about service meshes features, especially on the canary testing side, how they work under the hood and how they help as infrastructure with application modernization. They close the discussion on how to select a service mesh product and what rollout strategies exist.</description> <pubDate>Thu, 07 May 2020 06:38:40 +0000</pubDate> <link>https://www.case-podcast.org/32-daniel-bryant-on-service-meshes-and-api-gateways-for-application-modernization</link> <guid isPermaLink="false">c645ba2780f1bfdecfb3fb671864ec84</guid> <content:encoded> <![CDATA[Sven Johann talks with Daniel Bryant about Service Meshes & API Gateways <ul> <li><a href="https://medium.com/@danielbryantuk">Daniel’s Medium content</a></li> <li><a href="https://www.infoq.com/the-infoq-podcast">InfoQ podcast</a></li> <li><a href="https://dzone.com/articles/api-gateways-are-going-through-an-identity-crisis">Christian Posta, the API Gateway identitiy crisis</a></li> <li><a href="https://samnewman.io/books/monolith-to-microservices">Sam Newman, monolith to microservices patterns</a></li> <li><a href="https://www.infoq.com/news/2018/07/shopify-kubernetes-paas">Shopify’s balancing act on moving to PaaS</a></li> <li><a href="https://www.envoyproxy.io">Envoy proxy</a></li> <li><a href="https://blog.getambassador.io/envoy-vs-nginx-vs-haproxy-why-the-open-source-ambassador-api-gateway-chose-envoy-23826aed79ef">Richard Lee on choosing a reverse proxy out of Envoy, HAProxy and Nginx</a></li> <li><a href="https://medium.com/@mattklein123/optimizing-impact-why-i-will-not-start-an-envoy-platform-company-8904286658cb">Matt Klein on why he didn’t build a company around Envoy</a></li> <li><a href="https://softwareengineeringdaily.com/2019/04/26/cloud-with-eric-brewer">Eric Brewer on Cloud and Isto service mesh</a></li> <li><a href="https://cri-o.io">CRI-o, Open Container Initiative-based implementation of Kubernetes Container Runtime Interface</a></li> <li><a href="https://www.qemu.org">QEMU, generic and open source machine emulator and virtualizer</a></li> <li><a href="https://cloud.google.com/anthos">Google Anthos, deploy GCP service anywhere and federated</a></li> <li><a href="https://azure.microsoft.com/en-us/services/azure-arc">Azure Arc, deploy Azure service anywhere and federated</a></li> <li><a href="https://aws.amazon.com/outposts">AWS Outposts - federated AWS services in the cloud and on-premise using a service mesh</a></li> </ul>]]> </content:encoded> <itunes:episode>32</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Daniel Bryant about Service Meshes & API Gateways</itunes:subtitle> <itunes:summary>Daniel Bryant talks with Sven Johann about the business problems to modernize applications. They need to be decoupled from the compute fabric and the network fabric and Daniel explains the reasons for that, what products are available and what strategies the different cloud vendors follow. They move on with how to get started, questions to select an API gateway, technologies behind them and the challenges. They talk about service meshes features, especially on the canary testing side, how they work under the hood and how they help as infrastructure with application modernization. They close the discussion on how to select a service mesh product and what rollout strategies exist.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>architecture,cloud,cloud native,service mesh,api gateway,microservices</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/215126-m-f1c53f79f0c2bab14b3e4288d6aeb4c0.ogg?source=feed" type="audio/ogg" length="69461090"/> <itunes:duration>5629</itunes:duration> <podcast:episode>32</podcast:episode> </item> <item> <title>Mike Sperber on Functional Architecture</title> <itunes:title>Mike Sperber on Functional Architecture</itunes:title> <description>Does functional programming matter? Stefan and Mike continue an interesting conversation they had on Twitter: Does the style of programming matter if you look at it from a larger distance? Mike describes two distinguishing characteristics of functional programming: Immutable data and high-level models, and how they influence the architecture of your application.</description> <pubDate>Thu, 16 Apr 2020 13:46:16 +0000</pubDate> <link>https://www.case-podcast.org/31-mike-sperber-on-functional-architecture</link> <guid isPermaLink="false">303e7ad6a0dadf961b0d6a27ffa7cb88</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Mike Sperber about Functional Architecture <ul> <li><a href="https://twitter.com/sperbsen">Mike Sperber on Twitter</a></li> <li><a href="https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf">Purely Functional Data Structures by Chris Okasaki</a></li> <li><a href="https://lars.hupel.info/talks/parametrizitaet/">"Lieber ein Typparameter zu viel als einer zu wenig" by Lars Hupel</a></li> <li><a href="http://www.deinprogramm.de">Dein Program</a></li> <li><a href="https://pragprog.com/book/swdddf/domain-modeling-made-functional">Domain Modeling Made Functional by Scott Wlaschin</a></li> </ul>]]> </content:encoded> <itunes:episode>31</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Mike Sperber about Functional Architecture</itunes:subtitle> <itunes:summary>Does functional programming matter? Stefan and Mike continue an interesting conversation they had on Twitter: Does the style of programming matter if you look at it from a larger distance? Mike describes two distinguishing characteristics of functional programming: Immutable data and high-level models, and how they influence the architecture of your application.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>functional programming,algebra,domain driven design,modeling</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/196955-m-29862ea439a30614fa21604c93b3e062.ogg?source=feed" type="audio/ogg" length="49097294"/> <itunes:duration>4054</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/31-mike-sperber-on-functional-architecture/chapters.json" type="application/json+chapters"/> <podcast:episode>31</podcast:episode> </item> <item> <title>Peter Elger on Commodity AI</title> <itunes:title>Peter Elger on Commodity AI</itunes:title> <description>Peter Elger talks with Sven Johann about AI as a service - commodity web services offered by large cloud providers, which make it very easy to use AI in your application just by using an API. They start the discussion with the typical AI use cases companies in finance, retail and so on have and which of those are already as a commodity available and which are not. They then discuss how those APIs are used, from very simple API calls like text-to-speech to slightly more complicated ones like chat bots or recommendation engines. They continue with understanding how you come up with AI requirements and how to (regression) test your AI service, which is often different than doing the same with non-AI code. They clarify how much AI you need to know to use those services, the cost models of them and how to get your AI to production. The conversation then moves to lower level AI services like AWS SageMaker or Google Tensorflow and how you combine them to create novel pieces of AI relatively quickly. They close the conversation with when to use specific packaged AI solutions and when to create your own AI to push the envelope.</description> <pubDate>Thu, 27 Feb 2020 15:33:55 +0000</pubDate> <link>https://www.case-podcast.org/30-peter-elger-on-commodity-ai</link> <guid isPermaLink="false">ee240b32211a89f3ed9580dbbc6ba2e5</guid> <content:encoded> <![CDATA[Sven Johann talks with Peter Elger about Commodity AI <ul> <li><a href="https://www.manning.com/books/ai-as-a-service">Peter’s book on AI as a Service</a></li> <li><a href="https://jupyter.org">Jupyter Notebooks</a></li> <li><a href="https://aws.amazon.com/machine-learning/ai-services">AWS AI cloud services</a></li> <li><a href="https://cloud.google.com/products/ai">Google AI cloud services</a></li> </ul>]]> </content:encoded> <itunes:episode>30</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Peter Elger about Commodity AI</itunes:subtitle> <itunes:summary>Peter Elger talks with Sven Johann about AI as a service - commodity web services offered by large cloud providers, which make it very easy to use AI in your application just by using an API. They start the discussion with the typical AI use cases companies in finance, retail and so on have and which of those are already as a commodity available and which are not. They then discuss how those APIs are used, from very simple API calls like text-to-speech to slightly more complicated ones like chat bots or recommendation engines. They continue with understanding how you come up with AI requirements and how to (regression) test your AI service, which is often different than doing the same with non-AI code. They clarify how much AI you need to know to use those services, the cost models of them and how to get your AI to production. The conversation then moves to lower level AI services like AWS SageMaker or Google Tensorflow and how you combine them to create novel pieces of AI relatively quickly. They close the conversation with when to use specific packaged AI solutions and when to create your own AI to push the envelope.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>cloud services,ai</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/176199-m-39488e42e37eb5612f7d6143a33037ec.ogg?source=feed" type="audio/ogg" length="47208498"/> <itunes:duration>3828</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/30-peter-elger-on-commodity-ai/chapters.json" type="application/json+chapters"/> <podcast:episode>30</podcast:episode> </item> <item> <title>Lars Hupel on Algebraic Design</title> <itunes:title>Lars Hupel on Algebraic Design</itunes:title> <description>In this episode of the CaSE podcast, Lucas talks to Lars Hupel of Typelevel-fame about algebraic design. Lars starts to explain how the expression problem views the difference between the functional and Object Oriented style of programming. He then explains the concept of an algebra – from coupling trains to CRDTs. This leads to a discussion on comprehensive and iterative thinking styles and how different styles of testing and proving work. Finally, they bring it all back to type systems.</description> <pubDate>Thu, 06 Feb 2020 11:14:30 +0000</pubDate> <link>https://www.case-podcast.org/29-lars-hupel-on-algebraic-design</link> <guid isPermaLink="false">484236ca9b7ec98f821312cb8d6fb4b8</guid> <content:encoded> <![CDATA[Lucas Dohmen talks with Lars Hupel about Algebraic Design <ul> <li><a href="http://homepages.inf.ed.ac.uk/wadler/papers/expression/expression.txt">"The Expression Problem" by Philip Wadler</a></li> <li><a href="http://learnyouahaskell.com/types-and-typeclasses#typeclasses-101">Type Classes in Haskell</a></li> <li><a href="https://hal.inria.fr/hal-00932836/file/CRDTs_SSS-2011.pdf">Conflict-free Replicated Data Types</a></li> <li><a href="https://www.youtube.com/watch?v=D2TCuDXmyw4">Generative Testing: Properties, State and Beyond - Jan Stepien</a></li> <li><a href="https://en.wikipedia.org/wiki/Timsort">Timsort</a></li> <li><a href="https://github.com/github/scientist">Github's scientist library</a></li> <li><a href="https://www.apress.com/gp/book/9781484238288">Practical TLA+</a></li> <li><a href="https://www.manning.com/books/type-driven-development-with-idris">Type-Driven Development with Idris</a></li> <li><a href="https://www.cl.cam.ac.uk/research/hvg/Isabelle/">Isabelle</a></li> </ul>]]> </content:encoded> <itunes:episode>29</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Lucas Dohmen talks with Lars Hupel about Algebraic Design</itunes:subtitle> <itunes:summary>In this episode of the CaSE podcast, Lucas talks to Lars Hupel of Typelevel-fame about algebraic design. Lars starts to explain how the expression problem views the difference between the functional and Object Oriented style of programming. He then explains the concept of an algebra – from coupling trains to CRDTs. This leads to a discussion on comprehensive and iterative thinking styles and how different styles of testing and proving work. Finally, they bring it all back to type systems.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>algebra,programming,functional programming,proof systems,scala</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/158429-m-419deeb6fd23762e3b9a0e968733395b.ogg?source=feed" type="audio/ogg" length="48272726"/> <itunes:duration>3683</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/29-lars-hupel-on-algebraic-design/chapters.json" type="application/json+chapters"/> <podcast:episode>29</podcast:episode> </item> <item> <title>Ryan Singer on Shape Up</title> <itunes:title>Ryan Singer on Shape Up</itunes:title> <description>In this Conversation about Software Engineering, Stefan Tilkov talks with Ryan Singer about Shape Up. Ryan works on the product strategy for Basecamp. Over time the company started growing, and they needed to step up how they managed their product development work. In his book Shape Up and this podcast, Ryan shares the methodology Basecamp uses nowadays.</description> <pubDate>Thu, 09 Jan 2020 07:00:25 +0000</pubDate> <link>https://www.case-podcast.org/28-ryan-singer-on-shape-up</link> <guid isPermaLink="false">a32236e09e237b4dfc629f41c3564f27</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Ryan Singer about Shape Up <ul> <li><a href="https://twitter.com/rjs">Ryan on Twitter</a></li> <li><a href="https://basecamp.com/shapeup">Shape Up</a></li> <li><a href="https://basecamp.com">Basecamp</a></li> <li><a href="https://rubyonrails.org">Ruby on Rails</a></li> </ul>]]> </content:encoded> <itunes:episode>28</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Ryan Singer about Shape Up</itunes:subtitle> <itunes:summary>In this Conversation about Software Engineering, Stefan Tilkov talks with Ryan Singer about Shape Up. Ryan works on the product strategy for Basecamp. Over time the company started growing, and they needed to step up how they managed their product development work. In his book Shape Up and this podcast, Ryan shares the methodology Basecamp uses nowadays.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>shape up,methodology</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/158387-m-4ba6150ead97e1dd8100fde844c888aa.ogg?source=feed" type="audio/ogg" length="59746690"/> <itunes:duration>4774</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/28-ryan-singer-on-shape-up/chapters.json" type="application/json+chapters"/> <podcast:episode>28</podcast:episode> </item> <item> <title>Felienne Hermans on Programming Education</title> <itunes:title>Felienne Hermans on Programming Education</itunes:title> <description>In this episode, Stefan Tilkov talks with Felienne Hermans, associate Professor at Leiden University in the Netherlands heading the Programming Education Research Lab. They talk about programming education with a focus on people learning their first programming skills and how the current approach in schools and university is flawed. Felienne explains the concept of deliberate practice and code vocalization and answers simple questions like "What's the best programming language for education?"</description> <pubDate>Thu, 19 Dec 2019 09:01:55 +0000</pubDate> <link>https://www.case-podcast.org/27-felienne-hermans-on-programming-education</link> <guid isPermaLink="false">fb9b22fc84474bbe552ea505fb195370</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Felienne Hermans about Programming Education <ul> <li><a href="https://www.felienne.com">Felienne's blog</a></li> <li><a href="https://twitter.com/felienne">Felienne's twitter</a></li> <li><a href="https://twitter.com/grady_booch/status/1177340563932119040">Tweet by Grady Booch</a></li> <li><a href="bit.ly/pl-views">Survey on programming languages</a></li> <li><a href="https://dl.acm.org/citation.cfm?id=3309504">Felienne's paper on reading code aloud</a></li> <li><a href="http://www.felienne.com/wp-content/uploads/2019/01/2019-sigsce-EPECO.pdf">Felienne's paper on Effects of Gender, Self-Efficacy, Motivation and Stereotypes</a></li> <li><a href="https://dl.acm.org/citation.cfm?id=131301">Paper: The case for case studies of programming problems</a></li> </ul>]]> </content:encoded> <itunes:episode>27</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Felienne Hermans about Programming Education</itunes:subtitle> <itunes:summary>In this episode, Stefan Tilkov talks with Felienne Hermans, associate Professor at Leiden University in the Netherlands heading the Programming Education Research Lab. They talk about programming education with a focus on people learning their first programming skills and how the current approach in schools and university is flawed. Felienne explains the concept of deliberate practice and code vocalization and answers simple questions like "What's the best programming language for education?"</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>programming education</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/136979-m-e0f781e62e83cf4601830b73dec710a1.ogg?source=feed" type="audio/ogg" length="45101781"/> <itunes:duration>3924</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/27-felienne-hermans-on-programming-education/chapters.json" type="application/json+chapters"/> <podcast:episode>27</podcast:episode> </item> <item> <title>Philippe Kruchten on Managing Technical Debt</title> <itunes:title>Philippe Kruchten on Managing Technical Debt</itunes:title> <description>In this episode, Sven Johann hosts Philippe Kruchten, the author of the Managing Technical Debt book. They talk about the research leading to the book and the practical implications the book and the research offer. They start the conversation with discussing terms: technical debt, interest, principal and then start with technical debt on the code level, e.g. code smells, tests and refactoring followed by static analysis and the prioritization of the findings. They then move to technical debt on the architectural level and go through the possibilities on estimating cost and value on those improvement and how to sell it to the business stakeholders. This is followed by explaining technical debt on the infrastructure level and how great code can become technical debt by time passing by (technological gap, software aging). After that the conversation moves towards solving the problem tactically and strategically.</description> <pubDate>Mon, 08 Jul 2019 08:15:39 +0000</pubDate> <link>https://www.case-podcast.org/26-philippe-kruchten-on-managing-technical-debt</link> <guid isPermaLink="false">47c739f7a9ef8f1e7f32a4cd05e489a8</guid> <content:encoded> <![CDATA[Sven Johann talks with Philippe Kruchten about Managing Technical Debt <ul> <li><a href="https://www.amazon.com/dp/B07QRT48T6">Book on Managing Technical Debt</a></li> <li><a href="https://www.coursera.org/learn/site-reliability-engineering-slos">Service Level Objectives and Error Budgets</a></li> </ul>]]> </content:encoded> <itunes:episode>26</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Philippe Kruchten about Managing Technical Debt</itunes:subtitle> <itunes:summary>In this episode, Sven Johann hosts Philippe Kruchten, the author of the Managing Technical Debt book. They talk about the research leading to the book and the practical implications the book and the research offer. They start the conversation with discussing terms: technical debt, interest, principal and then start with technical debt on the code level, e.g. code smells, tests and refactoring followed by static analysis and the prioritization of the findings. They then move to technical debt on the architectural level and go through the possibilities on estimating cost and value on those improvement and how to sell it to the business stakeholders. This is followed by explaining technical debt on the infrastructure level and how great code can become technical debt by time passing by (technological gap, software aging). After that the conversation moves towards solving the problem tactically and strategically.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>software architecture,technical debt,evolution</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/103186-m-2909f7eff15a5d4e0b84f49cc6ae83b0.ogg?source=feed" type="audio/ogg" length="40499854"/> <itunes:duration>3683</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/26-philippe-kruchten-on-managing-technical-debt/chapters.json" type="application/json+chapters"/> <podcast:episode>26</podcast:episode> </item> <item> <title>Sam Newman on Insecure Transit – Microservices Security</title> <itunes:title>Sam Newman on Insecure Transit – Microservices Security</itunes:title> <description>In this episode, Sven Johann hosts Sam Newman, the author of the first Microservices book, to talk about security in the world of Microservices. They discuss why and where it is different to security in a monolithic architecture and why developers must care. They start with automatically rolling out passwords, credentials and API keys in a secure way and continue with patching containers and secure base images. They then continue with automatically update (transitive) dependencies if they have vulnerabilities. They close the conversation with discussing authorisation and authentication using gateways, proxies and service meshes.</description> <pubDate>Fri, 17 May 2019 08:13:22 +0000</pubDate> <link>https://www.case-podcast.org/25-sam-newman-on-insecure-transit</link> <guid isPermaLink="false">2d6f1f20bb2a89940c9d59e126f8d112</guid> <content:encoded> <![CDATA[Sven Johann talks with Sam Newman about Microservices Security <ul> <li><a href="https://haveibeenpwned.com/API/v2">Public API for "Have I been pwned?"</a></li> <li><a href="https://snyk.io">Find automatically vulnerabilities in dependencies</a></li> <li><a href="https://www.aquasec.com">Container and Cloud Native Security</a></li> <li><a href="https://github.com/coreos/clair">Scanning containers</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00.000"/> <psc:chapter title="Why is security now so important for developers?" start="00:01:15.000"/> <psc:chapter title="Difference between microservices and monolith security" start="00:08:14.000"/> <psc:chapter title="Automated credentials management" start="00:10:50.000"/> <psc:chapter title="Patching VMs and containers" start="00:28:25.000"/> <psc:chapter title="Secure base image and runtime analysis" start="00:37:50.000"/> <psc:chapter title="Authentication and Authorisation" start="00:48:00.000"/> <psc:chapter title="Service Meshes and auth proxies" start="00:56:50.000"/> <psc:chapter title="Mutual TLS" start="01:08:28.000"/> <psc:chapter title="Confused deputy problem" start="01:14:50.000"/> <psc:chapter title="Wrap up" start="01:19:25.000"/> </psc:chapters> <itunes:episode>25</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Sam Newman about Microservices Security</itunes:subtitle> <itunes:summary>In this episode, Sven Johann hosts Sam Newman, the author of the first Microservices book, to talk about security in the world of Microservices. They discuss why and where it is different to security in a monolithic architecture and why developers must care. They start with automatically rolling out passwords, credentials and API keys in a secure way and continue with patching containers and secure base images. They then continue with automatically update (transitive) dependencies if they have vulnerabilities. They close the conversation with discussing authorisation and authentication using gateways, proxies and service meshes.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>distributed systems,security,microservices,service mesh</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/90245-m-d570b99512a68eef2cf3d0093c638f8e.ogg?source=feed" type="audio/ogg" length="50363371"/> <itunes:duration>4886</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/25-sam-newman-on-insecure-transit/chapters.json" type="application/json+chapters"/> <podcast:episode>25</podcast:episode> </item> <item> <title>Richard Rodger on Message-based, Generic Microservices</title> <itunes:title>Richard Rodger on Message-based, Generic Microservices</itunes:title> <description>In this episode, Stefan Tilkov talks to author and microservices expert Richard Rodger about his approach to microservices, which focuses on small services that exchange messages, are built using a “generalize first” approach, and rely on content-based routing to allow for dynamic evolution of the resulting system.</description> <pubDate>Tue, 19 Feb 2019 07:32:28 +0000</pubDate> <link>https://www.case-podcast.org/24-richard-rodger-on-microservices</link> <guid isPermaLink="false">67d7845ed41d7d813b15ab91fb5ac490</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Richard Rodger about message-based, generic microservices <ul> <li><a href="http://www.richardrodger.com">Richard’s website</a></li> <li><a href="https://www.manning.com/books/the-tao-of-microservices">Richard‘s book “The Tao of Microservices”</a></li> <li><a href="https://microservices.io">Microservices.io patterns website</a></li> <li><a href="https://samnewman.io/books/building_microservices/">Sam Newman’s book “Building Microservices”</a></li> </ul>]]> </content:encoded> <itunes:episode>24</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Richard Rodger about message-based, generic microservices</itunes:subtitle> <itunes:summary>In this episode, Stefan Tilkov talks to author and microservices expert Richard Rodger about his approach to microservices, which focuses on small services that exchange messages, are built using a “generalize first” approach, and rely on content-based routing to allow for dynamic evolution of the resulting system.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>microservices,architecture,software engineering</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/70793-m-699d94c0ed1253150f9616d33434f9a3.ogg?source=feed" type="audio/ogg" length="43115956"/> <itunes:duration>3847</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/24-richard-rodger-on-microservices/chapters.json" type="application/json+chapters"/> <podcast:episode>24</podcast:episode> </item> <item> <title>Mentoring Engineers with Steve Vinoski</title> <itunes:title>Mentoring Engineers with Steve Vinoski</itunes:title> <description>In this episode, Stefan Tilkov hosts well-known distributed systems expert Steve Vinoski to talk about lessons learned in 30+ years of software engineering. In their conversation, they cover topics such as what to learn and what to avoid, how to deal with zealous and disillusioned developers, the relation of engineering to other disciplines, ethics and patents, careers and coding, publishing and presenting and the benefits of doing maintenance. Steve Vinoski has spent most of his software development career working in the areas of middleware and distributed computing systems, using C++ and Erlang. He is also a long-time author, having written or co-authored over 100 published articles and papers covering middleware, distributed systems, and web development, as well as a couple books and dozens of columns. Steve has also given hundreds of conference and workshop presentations and tutorials on middleware, distributed systems, web development, and programming languages, and has served as chair or program committee member for many dozens of conferences and workshops.</description> <pubDate>Tue, 14 Aug 2018 06:02:48 +0000</pubDate> <link>https://www.case-podcast.org/23-mentoring-engineers-with-steve-vinoski</link> <guid isPermaLink="false">ffb088b178edc2254181ed8fdefb3b46</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Steve Vinoski about Mentoring Engineers <ul> <li><a href="http://steve.vinoski.net/blog/">Steve’s blog</a></li> <li><a href="http://steve.vinoski.net/blog/internet-computing-columns/">List of columns from IEEE Internet Computing, 2002 to 2012</a></li> <li><a href="https://www.infoq.com/interviews/vinoski-qcon-interview">Video of 2007 interview with Stefan Tilkov</a></li> <li><a href="http://shop.oreilly.com/product/0636920024149.do">Steve’s book on Designing for Scalability with Erlang/OTP (together with Francesco Cesarini)</a></li> </ul>]]> </content:encoded> <itunes:episode>23</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Steve Vinoski about Mentoring Engineers</itunes:subtitle> <itunes:summary>In this episode, Stefan Tilkov hosts well-known distributed systems expert Steve Vinoski to talk about lessons learned in 30+ years of software engineering. In their conversation, they cover topics such as what to learn and what to avoid, how to deal with zealous and disillusioned developers, the relation of engineering to other disciplines, ethics and patents, careers and coding, publishing and presenting and the benefits of doing maintenance. Steve Vinoski has spent most of his software development career working in the areas of middleware and distributed computing systems, using C++ and Erlang. He is also a long-time author, having written or co-authored over 100 published articles and papers covering middleware, distributed systems, and web development, as well as a couple books and dozens of columns. Steve has also given hundreds of conference and workshop presentations and tutorials on middleware, distributed systems, web development, and programming languages, and has served as chair or program committee member for many dozens of conferences and workshops.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>software engineering,learning,mentoring,ethics,patents</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/35414-m-73fa94ced74f728a0a1f10fdefcaf5ea.ogg?source=feed" type="audio/ogg" length="38569836"/> <itunes:duration>3294</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/23-mentoring-engineers-with-steve-vinoski/chapters.json" type="application/json+chapters"/> <podcast:episode>23</podcast:episode> </item> <item> <title>Micro Frontends with Gustaf Nilsson Kotte</title> <itunes:title>Micro Frontends with Gustaf Nilsson Kotte</itunes:title> <description>In this conversation about software engineering, Gustaf Nilsson Kotte, web architect at IKEA, talks to host Stefan Tilkov about ways to build large web sites and applications with multiple teams. Topics covered include team organization and Conway’s law, horizontal vs. vertical splits, and options and tools for server-side and client-side integration.</description> <pubDate>Thu, 05 Jul 2018 13:02:36 +0000</pubDate> <link>https://www.case-podcast.org/22-micro-frontends-with-gustaf-nilsson-kotte</link> <guid isPermaLink="false">9b17d5882c152eafc4b2cccc3e7d5f22</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Gustaf Nilsson Kotte about Micro Frontends <ul> <li><a href="https://www.amazon.com/Principles-Product-Development-Flow-Generation/dp/1935401009">Book: The Principles of Product Development Flow: Second Generation Lean Product Development</a></li> <li><a href="https://en.wikipedia.org/wiki/Edge_Side_Includes">Wikipedia: ESI</a></li> <li><a href="https://www.youtube.com/watch?v=4KVOuQDIfmw">Øredev presentation</a></li> <li><a href="https://microservice-websites.netlify.com">Microservice Websites: Manifest</a></li> <li><a href="https://gustafnk.github.io/microservice-websites">Microservice Webites: Article</a></li> <li><a href="https://github.com/gustafnk/h-include">h-include, declarative Client-Side Includes library</a></li> <li><a href="https://www.innoq.com/de/podcast/046-transklusion">(German) Podcast episode about Transclusion</a></li> <li><a href="https://twitter.com/gustaf_nk">Twitter Account</a></li> <li><a href="https://github.com/zalando/tailor">Zalando's Taylor</a></li> <li><a href="https://micro-frontends.org">Micro Frontends</a></li> </ul>]]> </content:encoded> <itunes:episode>22</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Gustaf Nilsson Kotte about Micro Frontends</itunes:subtitle> <itunes:summary>In this conversation about software engineering, Gustaf Nilsson Kotte, web architect at IKEA, talks to host Stefan Tilkov about ways to build large web sites and applications with multiple teams. Topics covered include team organization and Conway’s law, horizontal vs. vertical splits, and options and tools for server-side and client-side integration.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>web,web development,microfrontends,frontend</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/30105-m-8ed06ede841ef4d12d1f63815059421c.ogg?source=feed" type="audio/ogg" length="50768666"/> <itunes:duration>4454</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/22-micro-frontends-with-gustaf-nilsson-kotte/chapters.json" type="application/json+chapters"/> <podcast:episode>22</podcast:episode> </item> <item> <title>Web Frontend with Lucas Dohmen</title> <itunes:title>Web Frontend with Lucas Dohmen</itunes:title> <description>Joy Clark talks with Lucas Dohmen about Web Front-End development. They first discuss the role of front-end development and frontend architecture. Lucas then explains his view on the role of JavaScript and the separation between front-end and back-end development. They continue their discussion by looking at the role of design and UX in front-end development and how styleguides can help. Then Lucas talks about performance, development for mobile devices and accessibility. They wrap up by discussing tooling and the faucet-pipeline.</description> <pubDate>Thu, 07 Jun 2018 07:00:00 +0000</pubDate> <link>https://www.case-podcast.org/21-web-frontend-with-lucas-dohmen</link> <guid isPermaLink="false">bd642c3546b943bf33bc475dde09b37f</guid> <content:encoded> <![CDATA[Joy Clark Talks with Lucas Dohmen about Web Front-end Development <ul> <li><a href="https://i.imgur.com/Q3cUg29.gif">Family Guy CSS Gif</a></li> <li><a href="Modern CSS with Jen Simmons">Episode about Modern CSS with Jen Simmons</a></li> <li><a href="https://www.innoq.com/en/blog/lvm-roca-vs-spa/">ROCA vs. SPA Comparison</a></li> <li><a href="https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements">Custom Elements</a></li> <li><a href="https://www.innoq.com/en/blog/progressive-web-components-goto2016/">Progressive Custom Elements</a></li> <li><a href="https://scs-architecture.org">Self-Contained Systems</a></li> <li><a href="http://styleguides.io">Examples for Styleguides</a></li> <li><a href="http://getbootstrap.com">Bootstrap</a></li> <li><a href="https://www.npmjs.com">NPM</a></li> <li><a href="https://www.innoq.com/en/blog/loading-javascript/">How Browsers Load and Process JavaScript</a></li> <li><a href="https://kryogenix.org/code/browser/why-availability/">Why availability matters</a></li> <li><a href="https://www.lukew.com/resources/mobile_first.asp">Mobile First</a></li> <li><a href="http://offlinefirst.org">Offline First</a></li> <li><a href="https://serviceworke.rs">Service Worker Cookbook</a></li> <li><a href="https://speakerdeck.com/rstrangh/progressive-enhancement-in-practice">Progressive Enhancement</a></li> <li><a href="https://abookapart.com/products/accessibility-for-everyone">Accessibility for Everyone</a></li> <li><a href="https://www.smashingmagazine.com/inclusive-design-patterns">Inclusive Design Patterns</a></li> <li><a href="https://www.youtube.com/channel/UC7TizprGknbDalbHplROtag">Layout Land Youtube Channel</a></li> <li><a href="https://sass-lang.com">Sass</a></li> <li><a href="https://webpack.js.org">Webpack</a></li> <li><a href="https://rollupjs.org">Rollup</a></li> <li><a href="http://atomicdesign.bradfrost.com">Atomic Design</a></li> <li><a href="https://fractal.build">Fractal</a></li> <li><a href="https://www.faucet-pipeline.org">faucet-pipeline</a></li> <li><a href="https://resilientwebdesign.com">Book: Resilient Web Design</a></li> <li><a href="https://abookapart.com">A Book Apart</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Introduction" start="00:00:00"/> <psc:chapter title="Is Frontend Easy?" start="00:01:36"/> <psc:chapter title="Frontend Architecture" start="00:05:17"/> <psc:chapter title="The Role of JS in the frontend" start="00:11:52"/> <psc:chapter title="Back-end vs. Frontend-end as Separation of Concerns" start="00:17:06"/> <psc:chapter title="User Experience and Style Guides" start="00:21:30"/> <psc:chapter title="The Role of Design" start="00:27:10"/> <psc:chapter title="Performance" start="00:31:00"/> <psc:chapter title="Mobile First and Offline First" start="00:35:10"/> <psc:chapter title="Accessibility" start="00:43:43"/> <psc:chapter title="The next big thing" start="00:48:44"/> <psc:chapter title="Tools and Workflows" start="00:50:08"/> <psc:chapter title="faucet-pipeline" start="00:57:25"/> <psc:chapter title="Wrap-Up" start="01:01:53"/> </psc:chapters> <itunes:episode>21</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark Talks with Lucas Dohmen about Web Front-end Development</itunes:subtitle> <itunes:summary>Joy Clark talks with Lucas Dohmen about Web Front-End development. They first discuss the role of front-end development and frontend architecture. Lucas then explains his view on the role of JavaScript and the separation between front-end and back-end development. They continue their discussion by looking at the role of design and UX in front-end development and how styleguides can help. Then Lucas talks about performance, development for mobile devices and accessibility. They wrap up by discussing tooling and the faucet-pipeline.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>web,frontend,css,js</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/25030-m-f558fa03389a2ab034b094b89d6ccfa2.ogg?source=feed" type="audio/ogg" length="51584328"/> <itunes:duration>3845</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/21-web-frontend-with-lucas-dohmen/chapters.json" type="application/json+chapters"/> <podcast:episode>21</podcast:episode> </item> <item> <title>Problem Solving and Clojure 1.9 with Rich Hickey</title> <itunes:title>Problem Solving and Clojure 1.9 with Rich Hickey</itunes:title> <description>Joy Clark talks with Rich Hickey about Clojure and Datomic and the reasons that Rich decided to design them the way that he did. They discuss the dependency problem and how we should change our method of developing libraries so that we do not introduce breaking changes. Rich also introduces Clojure spec and describes what it can be used for and how it differs from a static type system. To wrap up the episode, they talk about the best way to solve a problem (and know it is the right problem!) and Rich gives some advice on how to develop software and what technologies are worth looking into.</description> <pubDate>Thu, 03 May 2018 09:01:17 +0000</pubDate> <link>https://www.case-podcast.org/20-problem-solving-and-clojure-19-with-rich-hickey</link> <guid isPermaLink="false">4c700428e8f897890443f6bb038765db</guid> <content:encoded> <![CDATA[Joy Clark talks with Rich Hickey about Clojure and Datomic <ul> <li>Previous Episodes: <ul><li><a href="http://www.case-podcast.org/8-clojure-with-alex-miller">Clojure with Alex Miller</a></li> <li><a href="http://www.case-podcast.org/12-clojurescript-with-david-nolen">ClojureScript with David Nolen</a></li></ul></li> <li><a href="https://clojure.org">Clojure</a></li> <li><a href="https://clojure.org/guides/spec">Clojure Spec</a></li> <li><a href="https://www.datomic.com">Datomic</a></li> <li>Papers <ul><li><a href="https://www.cs.ucsb.edu/~urs/oocsb/self/papers/papers.html">Self papers</a></li> <li><a href="http://www-formal.stanford.edu/jmc/recursive.pdf">Common Lisp Paper</a></li> <li><a href="https://dspace.mit.edu/handle/1721.1/5794">Scheme Paper</a></li></ul></li> <li>More from Rich Hickey <ul><li><a href="https://www.infoq.com/presentations/Simple-Made-Easy">Simple Made Easy</a></li> <li><a href="https://github.com/tallesl/Rich-Hickey-fanclub">List of all talks</a></li></ul></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Introduction" start="00:00:00"/> <psc:chapter title="Why Clojure?" start="00:00:21"/> <psc:chapter title="What problems does Clojure solve?" start="00:01:40"/> <psc:chapter title="Platforms that Clojure runs on" start="00:03:21"/> <psc:chapter title="Clojure on the JVM" start="00:04:20"/> <psc:chapter title="Clojure 1.9: Spec & Tools" start="00:05:54"/> <psc:chapter title="Installer & Command Line Tools" start="00:07:41"/> <psc:chapter title="Dependency Problem" start="00:10:17"/> <psc:chapter title="Designing functions to allow change" start="00:19:26"/> <psc:chapter title="Clojure Spec" start="00:23:03"/> <psc:chapter title="Safety Critical Systems & Spec ??" start="00:28:08"/> <psc:chapter title="Datomic" start="00:30:24"/> <psc:chapter title="Opinionated Web Frameworks" start="00:34:28"/> <psc:chapter title="Problems left to solve…" start="00:36:48"/> <psc:chapter title="System Level Communication" start="00:42:47"/> <psc:chapter title="A functional approach to programming" start="00:46:13"/> <psc:chapter title="How to efficiently develop programming" start="00:49:48"/> <psc:chapter title="Finding the right problem" start="00:53:11"/> <psc:chapter title="Technical things to research" start="00:56:57"/> </psc:chapters> <itunes:episode>20</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Rich Hickey about Clojure and Datomic</itunes:subtitle> <itunes:summary>Joy Clark talks with Rich Hickey about Clojure and Datomic and the reasons that Rich decided to design them the way that he did. They discuss the dependency problem and how we should change our method of developing libraries so that we do not introduce breaking changes. Rich also introduces Clojure spec and describes what it can be used for and how it differs from a static type system. To wrap up the episode, they talk about the best way to solve a problem (and know it is the right problem!) and Rich gives some advice on how to develop software and what technologies are worth looking into.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>clojure,datomic,software engineering,clojure script,problem solving</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/16558-m-c711a7b0bc8de7fd6e829ec1eae50ed8.ogg?source=feed" type="audio/ogg" length="43911184"/> <itunes:duration>3600</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/20-problem-solving-and-clojure-19-with-rich-hickey/chapters.json" type="application/json+chapters"/> <podcast:episode>20</podcast:episode> </item> <item> <title>Security and Privacy with Susan Landau</title> <itunes:title>Security and Privacy with Susan Landau</itunes:title> <description>Sven Johann talks with Susan Landau about Security and Privacy. After defining those terms they proceed to find out why this important to individuals and societies. They discuss why its the job of intelligence agencies to collect data, but how we can protect us against them. Then Susan discusses the importance of Two-Factor Authentication, how wiretapping and backdoors work these days and how the FBI tries to unlock locked devices with “1984” terminology. The conversation moves from end-to-end encryption, metadata analysis and VOIP decryption to targeted attacks and political influence of security threats. They finish the conversation with what we can learn from Google and Sun Microsystems on privacy, security and the architectural requirements of anonymized test data.</description> <pubDate>Thu, 19 Apr 2018 09:52:36 +0000</pubDate> <link>https://www.case-podcast.org/19-security-and-privacy-with-susan-landau</link> <guid isPermaLink="false">b63525e40bcaca2e16e52be85eb77ce2</guid> <content:encoded> <![CDATA[Sven Johann talks with Susan Landau about Security and Privacy <ul> <li><a href="https://www.amazon.com/Listening-Cybersecurity-Insecure-Susan-Landau/dp/0300227442">Listening In: Cybersecurity in an Insecure Age</a></li> <li><a href="https://www.torproject.org/index.html.en">The Tor Project</a></li> <li><a href="https://www.youtube.com/watch?v=624S9ly09Xk">Richard Clayton: A Practical Guide to Cybercrime</a></li> </ul>]]> </content:encoded> <itunes:episode>19</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Sven Johann talks with Susan Landau about Security and Privacy</itunes:subtitle> <itunes:summary>Sven Johann talks with Susan Landau about Security and Privacy. After defining those terms they proceed to find out why this important to individuals and societies. They discuss why its the job of intelligence agencies to collect data, but how we can protect us against them. Then Susan discusses the importance of Two-Factor Authentication, how wiretapping and backdoors work these days and how the FBI tries to unlock locked devices with “1984” terminology. The conversation moves from end-to-end encryption, metadata analysis and VOIP decryption to targeted attacks and political influence of security threats. They finish the conversation with what we can learn from Google and Sun Microsystems on privacy, security and the architectural requirements of anonymized test data.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>security,privacy</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/15156-m-110e2f2d7a173b0c3566ce46d0136935.ogg?source=feed" type="audio/ogg" length="50143576"/> <itunes:duration>4543</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/19-security-and-privacy-with-susan-landau/chapters.json" type="application/json+chapters"/> <podcast:episode>19</podcast:episode> </item> <item> <title>Application Security with Peter Chestna</title> <itunes:title>Application Security with Peter Chestna</itunes:title> <description>Joy Clark talks with Peter Chestna about application security. The overarching topic of the podcast was what a developer can do in order to make applications more secure. This included talking about some of the most prevalent security vulnerabilities and discussing what application security is and what it entails. Peter also gave some great tips on how to integrate security into the development process.</description> <pubDate>Thu, 29 Mar 2018 07:15:15 +0000</pubDate> <link>https://www.case-podcast.org/18-application-security</link> <guid isPermaLink="false">70c2f0cb762c3df455ab299c49c1a661</guid> <content:encoded> <![CDATA[Joy Clark talks with Peter Chestna about application security <ul> <li><a href="https://www.owasp.org">OWASP</a></li> <li><a href="https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project">OWASP Top Ten</a></li> <li><a href="https://www.pcisecuritystandards.org">PCI</a></li> <li><a href="https://en.wikipedia.org/wiki/Personally_identifiable_information">PII</a></li> <li><a href="https://www.sans.org/top25-software-errors">SANS Top 25</a></li> <li><a href="https://www.veracode.com">Veracode</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="How can developers make applications more secure?" start="00:00:34"/> <psc:chapter title="Role that AppSec plays in DevOps" start="00:01:35"/> <psc:chapter title="OWASP Top 10" start="00:02:27"/> <psc:chapter title="Cross-site Scripting" start="00:03:30"/> <psc:chapter title="Insecure Components" start="00:04:27"/> <psc:chapter title="Starting Small" start="00:06:29"/> <psc:chapter title="What is included in Application Security?" start="00:07:58"/> <psc:chapter title="Docker" start="00:11:46"/> <psc:chapter title="Static Analysis" start="00:16:17"/> <psc:chapter title="Integrating security into the development process" start="00:18:09"/> <psc:chapter title="Working together with security people" start="00:21:42"/> <psc:chapter title="Resources for getting started" start="00:23:53"/> </psc:chapters> <itunes:episode>18</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Peter Chestna about application security</itunes:subtitle> <itunes:summary>Joy Clark talks with Peter Chestna about application security. The overarching topic of the podcast was what a developer can do in order to make applications more secure. This included talking about some of the most prevalent security vulnerabilities and discussing what application security is and what it entails. Peter also gave some great tips on how to integrate security into the development process.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>security</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/13521-m-02d244cfda59d5456d196538236fa52a.ogg?source=feed" type="audio/ogg" length="17499850"/> <itunes:duration>1479</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/18-application-security/chapters.json" type="application/json+chapters"/> <podcast:episode>18</podcast:episode> </item> <item> <title>Blockchain Technology with Andreas M. Antonopoulos (Part 2)</title> <itunes:title>Blockchain Technology with Andreas M. Antonopoulos (Part 2)</itunes:title> <description>In this second episode of a two-part interview, Stefan Tilkov talks to Bitcoin and cryptocurrency expert Andreas M. Antonopoulos about Bitcoin vs. blockchain tech, the programmable Ethereum system, alternatives to the proof of work approach, and using Bitcoin in hybrid scenarios.</description> <pubDate>Thu, 22 Mar 2018 15:51:38 +0000</pubDate> <link>https://www.case-podcast.org/17-blockchain-technology-with-andreas-m-antonopoulos-part-2</link> <guid isPermaLink="false">3a2284d5f1e6d58023fe9ca700916870</guid> <content:encoded> <![CDATA[Stefan talks with Andreas M. Antonopoulos about Ethereum <ul> <li><a href="https://antonopoulos.com/">Andreas’s home page</a></li> <li><a href="https://bitcoin.org/">Bitcoin</a></li> <li><a href="https://ethereum.org">Ethereum</a></li> <li><a href="https://bitcoinbook.info">Mastering Bitcoin</a></li> <li><a href="https://ethereumbook.info">Mastering Ethereum</a></li> </ul>]]> </content:encoded> <itunes:episode>17</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan talks with Andreas M. Antonopoulos about Ethereum</itunes:subtitle> <itunes:summary>In this second episode of a two-part interview, Stefan Tilkov talks to Bitcoin and cryptocurrency expert Andreas M. Antonopoulos about Bitcoin vs. blockchain tech, the programmable Ethereum system, alternatives to the proof of work approach, and using Bitcoin in hybrid scenarios.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>blockchain,bitcoin,ethereum</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/13316-m-eaf2c2bc479075f693cfa762174d552b.ogg?source=feed" type="audio/ogg" length="35076308"/> <itunes:duration>3116</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/17-blockchain-technology-with-andreas-m-antonopoulos-part-2/chapters.json" type="application/json+chapters"/> <podcast:episode>17</podcast:episode> </item> <item> <title>Blockchain Technology with Andreas M. Antonopoulos (Part 1)</title> <itunes:title>Blockchain Technology with Andreas M. Antonopoulos (Part 1)</itunes:title> <description>In the first episode of a two-part interview, Stefan Tilkov talks to Bitcoin and cryptocurrency expert Andreas M. Antonopoulos about the Bitcoin system’s technical foundation and architecture. Andreas addresses common questions about Bitcoin’s usefulness, scalability, and energy consumption.</description> <pubDate>Thu, 01 Mar 2018 07:33:53 +0000</pubDate> <link>https://www.case-podcast.org/16-bitcoin</link> <guid isPermaLink="false">0627c88df0997079191825d157a3c695</guid> <content:encoded> <![CDATA[Stefan talks with Andreas M. Antonopoulos about Bitcoin <ul> <li><a href="https://antonopoulos.com">Andreas’s home page</a></li> <li><a href="https://en.wikipedia.org/wiki/DigiCash">David Chaum's DigiCash</a></li> <li><a href="https://en.wikipedia.org/wiki/Pretty_Good_Privacy">PGP</a></li> <li><a href="http://www.hashcash.org">HashCash</a></li> <li><a href="https://bitcoin.org">Bitcoin</a></li> <li><a href="https://www.bitcoincash.org">Bitcoin Cash</a></li> <li><a href="https://digiconomist.net/bitcoin-energy-consumption">Digiconomist Bitcoin Energy Consumption Index</a></li> </ul>]]> </content:encoded> <itunes:episode>16</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan talks with Andreas M. Antonopoulos about Bitcoin</itunes:subtitle> <itunes:summary>In the first episode of a two-part interview, Stefan Tilkov talks to Bitcoin and cryptocurrency expert Andreas M. Antonopoulos about the Bitcoin system’s technical foundation and architecture. Andreas addresses common questions about Bitcoin’s usefulness, scalability, and energy consumption.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>bitcoin,blockchain,ethereum</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/11957-m-27766350571ff9a7053dbb7e515593dc.ogg?source=feed" type="audio/ogg" length="38565752"/> <itunes:duration>3448</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/16-bitcoin/chapters.json" type="application/json+chapters"/> <podcast:episode>16</podcast:episode> </item> <item> <title>Domain-Driven Design with Vaughn Vernon</title> <itunes:title>Domain-Driven Design with Vaughn Vernon</itunes:title> <description>Joy talks with Vaughn Vernon about Domain-Driven Design. Vaughn shares his journey to DDD and the reasons behind his DDD books. They then go on to discuss strategic design, the broad brush strokes of DDD, what a model actually looks like and how to use bounded contexts to keep a system from becoming a big ball of mud. Vaughn then answers some questions about domain events and event sourcing, and makes a case for modelling uncertainty instead of fighting with concurrency.</description> <pubDate>Thu, 25 Jan 2018 09:27:29 +0000</pubDate> <link>https://www.case-podcast.org/15-domain-driven-design-with-vaughn-vernon</link> <guid isPermaLink="false">fb118b408ce329ecaf834c20341d86b7</guid> <content:encoded> <![CDATA[Joy talks with Vaughn Vernon about Domain-Driven Design <ul> <li><a href="https://gotober.com/2017/sessions/242">Modelling Uncertainty: GOTO Berlin 2017</a></li> <li><a href="https://vaughnvernon.co">Vaughn's Blog</a></li> <li><a href="http://www.informit.com/store/implementing-domain-driven-design-9780321834577?ranMID=24808">Implementing Domain-Driven Design by Vaughn Vernon</a></li> <li><a href="https://www.amazon.com/Domain-Driven-Design-Distilled-Vaughn-Vernon/dp/0134434420">Domain-Driven Design Distilled by Vaughn Vernon</a></li> <li><a href="https://forcomprehension.com/course/dddd">Video Course</a></li> <li><a href="https://vaughnvernon.co/?page_id=693">Workshops</a></li> <li><a href="https://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215">Domain Driven Design by Eric Evans</a></li> </ul>]]> </content:encoded> <itunes:episode>15</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy talks with Vaughn Vernon about Domain-Driven Design</itunes:subtitle> <itunes:summary>Joy talks with Vaughn Vernon about Domain-Driven Design. Vaughn shares his journey to DDD and the reasons behind his DDD books. They then go on to discuss strategic design, the broad brush strokes of DDD, what a model actually looks like and how to use bounded contexts to keep a system from becoming a big ball of mud. Vaughn then answers some questions about domain events and event sourcing, and makes a case for modelling uncertainty instead of fighting with concurrency.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>domain-driven design,domain event,event sourcing,ddd,strategic design</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/9794-m-1560b70bfce489306f748c1400b9dbd0.ogg?source=feed" type="audio/ogg" length="37322560"/> <itunes:duration>2852</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/15-domain-driven-design-with-vaughn-vernon/chapters.json" type="application/json+chapters"/> <podcast:episode>15</podcast:episode> </item> <item> <title>aim42 with Gernot Starke</title> <itunes:title>aim42 with Gernot Starke</itunes:title> <description>Joy Clark talks with Gernot Starke about aim42, a method for systematically improving software. They discuss in detail the three phases of the process: Analyze, Evaluate, and Improve. Gernot shares his wisdom about how to carry out each phase using stories of his experiences in many different situations. In this way, listeners will get the big picture of how the whole process works: from visualizing all of the problems using sticky notes on the wall to specific strategies that can be used for improving the system.</description> <pubDate>Thu, 21 Dec 2017 09:02:02 +0000</pubDate> <link>https://www.case-podcast.org/14-aim42-with-gernot-starke</link> <guid isPermaLink="false">eb015424d67218f89eeab570297712cd</guid> <content:encoded> <![CDATA[Joy Clark interviews Gernot Starke about aim42 <ul> <li><a href="http://aim42.org">aim42</a></li> <li><a href="https://aim42.github.io">aim42 Method Guide</a></li> <li><a href="https://github.com/aim42/aim42">aim42 GitHub</a></li> <li><a href="https://www.joelonsoftware.com/2000/04/06/things-you-should-never-do-part-i">Joel Spolsky</a></li> <li><a href="https://aim42.github.io/#big-bang-approach">Anti-Examples for Big Bang</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro to aim42" start="00:00:00"/> <psc:chapter title="Gernot's Journey to aim42" start="00:01:51"/> <psc:chapter title="Phases in aim42" start="00:03:27"/> <psc:chapter title="Analyzing the System" start="00:05:22"/> <psc:chapter title="Evaluating the Problems" start="00:21:55"/> <psc:chapter title="Improvement Phase" start="00:30:20"/> <psc:chapter title="Improving with Modularization" start="00:32:07"/> <psc:chapter title="Making things smaller" start="00:36:17"/> <psc:chapter title="Anti-Big Bang" start="00:40:37"/> <psc:chapter title="Developer Happiness" start="00:44:40"/> <psc:chapter title="Improving Development Process" start="00:46:27"/> <psc:chapter title="Technology Improvements" start="00:48:29"/> <psc:chapter title="Cross-Cutting Concerns" start="00:49:16"/> <psc:chapter title="How is improvement measured?" start="00:53:35"/> <psc:chapter title="When can aim42 be used?" start="00:54:58"/> <psc:chapter title="Resources" start="00:56:48"/> <psc:chapter title="How to contribute" start="00:58:35"/> </psc:chapters> <itunes:episode>14</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark interviews Gernot Starke about aim42</itunes:subtitle> <itunes:summary>Joy Clark talks with Gernot Starke about aim42, a method for systematically improving software. They discuss in detail the three phases of the process: Analyze, Evaluate, and Improve. Gernot shares his wisdom about how to carry out each phase using stories of his experiences in many different situations. In this way, listeners will get the big picture of how the whole process works: from visualizing all of the problems using sticky notes on the wall to specific strategies that can be used for improving the system.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Software improvement,aim42,legacy</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/9662-m-9ceb0b893f1448e1c442c435b5c612fd.ogg?source=feed" type="audio/ogg" length="45078021"/> <itunes:duration>3623</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/14-aim42-with-gernot-starke/chapters.json" type="application/json+chapters"/> <podcast:episode>14</podcast:episode> </item> <item> <title>Advanced Scala with Daniel Westheide</title> <itunes:title>Advanced Scala with Daniel Westheide</itunes:title> <description>Daniel Westheide, author of “The Neophyte’s guide to Scala” and Stefan Tilkov talk about some advanced Scala features and challenges, such as case classes and the problems they can create, algebraic data types, type classes and implicits, using the compiler for Prolog-like type level programming and programming with generic data structures.</description> <pubDate>Thu, 30 Nov 2017 14:28:23 +0000</pubDate> <link>https://www.case-podcast.org/13-advanced-scala-with-daniel-westheide</link> <guid isPermaLink="false">bed54bb0a298d8d96b7add14800b4df4</guid> <content:encoded> <![CDATA[Stefan Tilkov interviews Daniel Westheide about advanced Scala Topics <ul> <li><a href="http://danielwestheide.com/scala/neophytes.html">The Neophyte’s Guide to Scala</a></li> <li><a href="http://scalameta.org">Scala Meta</a></li> <li><a href="https://www.cakesolutions.net/teamblogs/enforcing-invariants-in-scala-datatypes">Enforcing invariants in Scala datatypes</a></li> <li><a href="http://www.lihaoyi.com/post/StrategicScalaStyleDesigningDatatypes.html">Strategic Scala Style: Designing Datatypes</a></li> <li><a href="http://danielwestheide.com/blog/2012/11/21/the-neophytes-guide-to-scala-part-1-extractors.html">Extractors</a></li> <li><a href="http://danielwestheide.com/blog/2013/02/06/the-neophytes-guide-to-scala-part-12-type-classes.html">Type classes</a></li> <li><a href="https://scastie.scala-lang.org/Rxqxu8biSviKYryhnucBHg">Prolog example</a></li> <li><a href="https://github.com/milessabin/shapeless">Shapeless</a></li> <li><a href="https://underscore.io/books/shapeless-guide/">The Type Astronaut’s Guide to Shapeless</a></li> <li><a href="https://github.com/circe/circe">Circe, yet another JSON library for Scala</a></li> <li><a href="https://speakerdeck.com/folone/theres-a-prolog-in-your-scala">There’s a Prolog in your Scala! (Slides)</a></li> <li><a href="https://github.com/folone/2013-scalaeXchange">There’s a Prolog in your Scala! (Source Code)</a></li> <li><a href="https://www.innoq.com/en/podcast/032-advanced-scala-teil-1">innoQ Podcast: Advanced Scala, Part 1 (German)</a></li> <li><a href="https://www.innoq.com/en/podcast/033-advanced-scala-teil-2">innoQ Podcast: Advanced Scala, Part 2 (German)</a></li> </ul>]]> </content:encoded> <itunes:episode>13</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov interviews Daniel Westheide about advanced Scala Topics</itunes:subtitle> <itunes:summary>Daniel Westheide, author of “The Neophyte’s guide to Scala” and Stefan Tilkov talk about some advanced Scala features and challenges, such as case classes and the problems they can create, algebraic data types, type classes and implicits, using the compiler for Prolog-like type level programming and programming with generic data structures.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Scala,JVM,Software Engineering,Programming</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/9046-m-5b9e39a055f563a515f2297185c97447.ogg?source=feed" type="audio/ogg" length="39672629"/> <itunes:duration>3242</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/13-advanced-scala-with-daniel-westheide/chapters.json" type="application/json+chapters"/> <podcast:episode>13</podcast:episode> </item> <item> <title>ClojureScript with David Nolen</title> <itunes:title>ClojureScript with David Nolen</itunes:title> <description>Joy Clark talks with David Nolen about ClojureScript. David introduces the language and discusses the direction that the language is heading in. He talks about how the language is compiled to JavaScript and how it takes advantage of the the Google Closure Compiler. They then talk about designing user interfaces and how functional programming relates to UI design. To wrap up, David mentions different libraries and frameworks that can be used and recommends tools which can be used to get started programming with ClojureScript.</description> <pubDate>Thu, 09 Nov 2017 12:44:15 +0000</pubDate> <link>https://www.case-podcast.org/12-clojurescript-with-david-nolen</link> <guid isPermaLink="false">e89d6bbab5a4763aca033df599d02d81</guid> <content:encoded> <![CDATA[Joy Clark interviews David Nolen about ClojureScript <ul> <li><a href="http://www.case-podcast.org/8-clojure-with-alex-miller">Clojure CaSE Podcast</a></li> <li><a href="https://developers.google.com/closure/compiler">Google Closure Compiler</a></li> <li><a href="https://www.youtube.com/watch?v=Elg17s_nwDg">The Clojure Script Compiler - A Look Behind the Curtains, Maria Geller</a></li> <li><a href="http://planck-repl.org">Planck</a></li> <li><a href="https://github.com/anmonteiro/lumo">Lumo</a></li> <li><a href="https://facebook.github.io/react">React</a></li> <li><a href="https://github.com/reagent-project/reagent">Reagent</a></li> <li><a href="https://github.com/Day8/re-frame">re-frame</a></li> <li><a href="https://github.com/tonsky/rum">Rum</a></li> <li><a href="https://github.com/omcljs/om">Om & Om-Next</a></li> <li><a href="https://github.com/levand/quiescent">quiescent</a></li> <li><a href="https://facebook.github.io/react-native">React Native</a></li> <li><a href="https://developers.google.com/closure/library">Google Closure Library</a></li> <li><a href="https://github.com/bhauman/lein-figwheel">Figwheel</a></li> <li><a href="https://shaunlebron.github.io/parinfer">Parinfer</a></li> <li>Editors: Atom, Visual Studio Code, Cursive</li> <li><a href="https://github.com/binaryage/cljs-devtools">cljs-devtools</a></li> <li><a href="https://clojurescript.org">ClojureScript</a></li> <li><a href="http://clojurians.net">Slack Channel</a></li> <li>#clojure IRC channel on <a href="http://freenode.net/">freenode.net</a></li> <li><a href="https://groups.google.com/forum/#!forum/clojure">Mailing List</a></li> <li><a href="http://graphql.org">GraphQL</a></li> <li><a href="https://netflix.github.io/falcor">Falcor</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro to ClojureScript" start="00:00:00"/> <psc:chapter title="JavaScript vs. ClojureScript" start="00:04:06"/> <psc:chapter title="Adoption Trend for ClojureScript" start="00:07:20"/> <psc:chapter title="Where ClojureScript is heading..." start="00:08:52"/> <psc:chapter title="Integration with Google Closure Compiler" start="00:10:57"/> <psc:chapter title="Transpiler or Compiler?" start="00:17:50"/> <psc:chapter title="The Journey to Compilers" start="00:19:39"/> <psc:chapter title="What language is the ClojureScript compiler written in?" start="00:23:20"/> <psc:chapter title="Macros" start="00:27:04"/> <psc:chapter title="Frontend Development" start="00:31:58"/> <psc:chapter title="Dead Code Elimination?" start="00:33:55"/> <psc:chapter title="React as the functional way to UI Design" start="00:36:23"/> <psc:chapter title="Pure HTML vs. SPA" start="00:38:49"/> <psc:chapter title="What’s the next big thing with UI design?" start="00:43:48"/> <psc:chapter title="ClojureScript & Facebook Licensing" start="00:46:21"/> <psc:chapter title="React Native" start="00:49:01"/> <psc:chapter title="ClojureScript Libraries & Frameworks" start="00:52:23"/> <psc:chapter title="Tooling in ClojureScript" start="00:55:44"/> <psc:chapter title="Getting Started" start="00:58:59"/> </psc:chapters> <itunes:episode>12</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark interviews David Nolen about ClojureScript</itunes:subtitle> <itunes:summary>Joy Clark talks with David Nolen about ClojureScript. David introduces the language and discusses the direction that the language is heading in. He talks about how the language is compiled to JavaScript and how it takes advantage of the the Google Closure Compiler. They then talk about designing user interfaces and how functional programming relates to UI design. To wrap up, David mentions different libraries and frameworks that can be used and recommends tools which can be used to get started programming with ClojureScript.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>ClojureScript,Clojure,Functional Programming,Frontend,React</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/8500-m-3b0ce795aee1f90b06326430dcc8e115.ogg?source=feed" type="audio/ogg" length="43409802"/> <itunes:duration>3660</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/12-clojurescript-with-david-nolen/chapters.json" type="application/json+chapters"/> <podcast:episode>12</podcast:episode> </item> <item> <title>Management for Developers with Camille Fournier</title> <itunes:title>Management for Developers with Camille Fournier</itunes:title> <description>Stefan Tilkov talks to Camille Fournier about making a career as a manager in a software development organization. Camille shares her insights about when or why someone would want to become a manager and how to become good at it. Other topics include different levels of management from tech lead to CTO, the role of one-on-one meetings, and how managers influence company culture.</description> <pubDate>Thu, 19 Oct 2017 10:02:42 +0000</pubDate> <link>https://www.case-podcast.org/11-management-for-developers-with-camille-fournier</link> <guid isPermaLink="false">6acc4a9932c0e992c19b10eafc7fc942</guid> <content:encoded> <![CDATA[Stefan Tilkov interviews Camille Fournier about Management for Developers <ul> <li><a href="http://shop.oreilly.com/product/0636920056843.do">“The Manager’s Path”, Camille’s book</a></li> <li><a href="http://www.se-radio.net/2016/07/se-radio-episode-263-camille-fournier-on-real-world-distributed-systems">SE Radio episode with Camille Fournier and Stefan Tilkov on distributed systems</a></li> <li><a href="https://engmanagers.github.io">Engineering Manager’s Slack group</a></li> <li><a href="https://upcoming.theleaddeveloper.com">“The Lead Developer” conference</a></li> <li><a href="https://conferences.oreilly.com/velocity">Velocity conference</a></li> <li><a href="http://randsinrepose.com">Rands in Repose (Michael Lopp’s blog)</a></li> <li><a href="http://larahogan.me/blog/">Lara Hogan’s blog</a></li> <li><a href="https://cate.blog/management/">Cate Huston’s blog</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="Why “The Manager’s Path”?" start="00:02:32"/> <psc:chapter title="Developers and managers" start="00:04:28"/> <psc:chapter title="How to help your manager do a good job" start="00:07:38"/> <psc:chapter title="The management ladder" start="00:10:10"/> <psc:chapter title="Companies without management" start="00:15:36"/> <psc:chapter title="Becoming a tech lead" start="00:18:11"/> <psc:chapter title="Is tech lead a job for everyone?" start="00:21:11"/> <psc:chapter title="Tech leads and architects" start="00:23:18"/> <psc:chapter title="Convincing developers to become a tech lead" start="00:25:07"/> <psc:chapter title="Do tech leads get to make all the decisions" start="00:26:46"/> <psc:chapter title="Team managers and managing people" start="00:27:37"/> <psc:chapter title="One-on-ones defined" start="00:31:47"/> <psc:chapter title="The importance of one-on-ones" start="00:33:14"/> <psc:chapter title="Organizational limits" start="00:38:25"/> <psc:chapter title="From tech lead to manager" start="00:40:25"/> <psc:chapter title="Tactical vs. strategic management" start="00:44:30"/> <psc:chapter title="Salary negotiations and performance reviews" start="00:46:58"/> <psc:chapter title="How to know if you are a good manager" start="00:49:58"/> <psc:chapter title="Company culture" start="00:55:26"/> <psc:chapter title="Formalizing roles and processes" start="00:59:24"/> <psc:chapter title="Mentoring" start="01:01:59"/> <psc:chapter title="Restrictions on who to mentor" start="01:04:26"/> <psc:chapter title="CTO, CIO, VP of Engineering" start="01:06:27"/> <psc:chapter title="Why would anybody ever want to become a manager" start="01:09:57"/> <psc:chapter title="Resource and links" start="01:14:45"/> </psc:chapters> <itunes:episode>11</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov interviews Camille Fournier about Management for Developers</itunes:subtitle> <itunes:summary>Stefan Tilkov talks to Camille Fournier about making a career as a manager in a software development organization. Camille shares her insights about when or why someone would want to become a manager and how to become good at it. Other topics include different levels of management from tech lead to CTO, the role of one-on-one meetings, and how managers influence company culture.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Management,Career,Engineer,Tech Lead,Manager,CTO,One-on-ones</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/8021-m-5f905763999dc6778a46f77f015162b5.ogg?source=feed" type="audio/ogg" length="55888142"/> <itunes:duration>4874</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/11-management-for-developers-with-camille-fournier/chapters.json" type="application/json+chapters"/> <podcast:episode>11</podcast:episode> </item> <item> <title>Scala with Sofia Vaughn-Jones</title> <itunes:title>Scala with Sofia Vaughn-Jones</itunes:title> <description>Joy Clark talks with Sofia Vaughn-Jones (née Cole) about Scala. Sofia introduces the language and describes its features. They then discuss what kinds of programs can be written with Scala and the tooling and frameworks that are available. They attempt to define what a monad is and how it can be used. To wrap up, Sofia mentions some great resources for getting started with Scala.</description> <pubDate>Thu, 14 Sep 2017 07:26:05 +0000</pubDate> <link>https://www.case-podcast.org/10-scale-with-sofia-vaughn-jones</link> <guid isPermaLink="false">2787dfc9fb81010c3d1e3c55af40bb5e</guid> <content:encoded> <![CDATA[Joy Clark talks with Sofia Vaughn-Jones about Scala <ul> <li>Tools <ul><li><a href="http://www.scala-sbt.org">Sbt</a></li> <li><a href="https://www.jetbrains.com/idea">IntelliJ</a></li> <li><a href="https://github.com/ensime">Ensime</a></li> <li><a href="http://gatling.io">Gatling</a></li></ul></li> <li>Frameworks <ul><li><a href="https://www.playframework.com">Play</a></li> <li><a href="http://http4s.org">HTTP4s</a></li> <li><a href="https://github.com/scalaz/scalaz">Scalaz</a></li> <li><a href="https://typelevel.org/cats">Cats</a></li> <li><a href="https://github.com/milessabin/shapeless">Shapeless</a></li></ul></li> <li>Techniques & Materials <ul><li><a href="https://www.coursera.org/courses?query=scala">Coursera</a></li> <li><a href="https://underscore.io/books/essential-scala">Essential Scala</a></li> <li><a href="https://underscore.io/books/essential-play">Essential Play</a></li> <li><a href="https://underscore.io/books/shapeless-guide">The Type Astronaut’s guide to Shapeless</a></li> <li><a href="https://www.manning.com/books/functional-programming-in-scala">Functional Programming in Scala ‘The Red Book’</a></li></ul></li> <li><a href="http://www.sofiacole.com">Sofia’s Blog</a></li> <li>Talks from Sofia <ul><li><a href="https://www.youtube.com/watch?v=yb_DCh8qEdQ">Buying into Scala from the Inside and Out</a></li> <li><a href="https://www.youtube.com/watch?v=DgquY-UZ8_w">Adopting Scala: The Next Steps</a></li></ul></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="Sofia’s Journey to Scala" start="00:00:20"/> <psc:chapter title="What is Scala? What makes it what it is?" start="00:01:47"/> <psc:chapter title="What kind of language is Scala?" start="00:02:50"/> <psc:chapter title="What are benefits compared with other languages?" start="00:03:54"/> <psc:chapter title="What does it look like?" start="00:05:31"/> <psc:chapter title="How easy is it to read code that other people write?" start="00:06:33"/> <psc:chapter title="What kind of applications are written in Scala?" start="00:07:29"/> <psc:chapter title="What kind of tooling is available to develop Scala?" start="00:09:50"/> <psc:chapter title="Libraries and Frameworks in Scala" start="00:10:35"/> <psc:chapter title="Testing in Scala" start="00:12:14"/> <psc:chapter title="Java Interop" start="00:13:25"/> <psc:chapter title="Types in Scala" start="00:15:21"/> <psc:chapter title="Monads :)" start="00:16:59"/> <psc:chapter title="The Scala Community" start="00:20:52"/> <psc:chapter title="Introducing Scala into a company" start="00:22:59"/> <psc:chapter title="New Features and Libraries" start="00:27:10"/> <psc:chapter title="Techniques for teaching and learning Scala" start="00:27:52"/> <psc:chapter title="Sofia’s Scala Sales Pitch" start="00:32:24"/> <psc:chapter title="Wrap-Up" start="00:34:51"/> </psc:chapters> <itunes:episode>10</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Sofia Vaughn-Jones about Scala</itunes:subtitle> <itunes:summary>Joy Clark talks with Sofia Vaughn-Jones (née Cole) about Scala. Sofia introduces the language and describes its features. They then discuss what kinds of programs can be written with Scala and the tooling and frameworks that are available. They attempt to define what a monad is and how it can be used. To wrap up, Sofia mentions some great resources for getting started with Scala.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>scala,programming languages,learning,monads</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/7460-m-861d3210b3d91be094838ccffa9918aa.ogg?source=feed" type="audio/ogg" length="24656116"/> <itunes:duration>2195</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/10-scale-with-sofia-vaughn-jones/chapters.json" type="application/json+chapters"/> <podcast:episode>10</podcast:episode> </item> <item> <title>Microservices with Michele Leroux Bustamante</title> <itunes:title>Microservices with Michele Leroux Bustamante</itunes:title> <description>In this episode, Stefan Tilkov talks to Michele Leroux Bustamante about Microservices. Michele shares her perspective on microservices and what she sees as the difference between SOA and microservices: The way they share data. Stefan and Michele also talk about orchestration, getting started with microservices, platforms for microservices as well as a few short other topics.</description> <pubDate>Fri, 25 Aug 2017 11:10:25 +0000</pubDate> <link>https://www.case-podcast.org/9-microservices-with-michele-leroux-bustamante</link> <guid isPermaLink="false">cf812c1a205293976c2e38e03b4d81ca</guid> <content:encoded> <![CDATA[Stefan Tilkov talks with Michele Bustamante about Microservices <ul> <li><a href="https://twitter.com/michelebusta">Michele on Twitter</a></li> <li><a href="http://solliance.net">Solliance</a></li> <li><a href="https://en.wikipedia.org/wiki/Service-oriented_architecture">SOA</a></li> <li><a href="https://en.wikipedia.org/wiki/Eventual_consistency">Eventual Consistency</a></li> <li><a href="http://kafka.apache.org">Apache Kafka</a></li> <li><a href="https://aws.amazon.com/de/kinesis">AWS Kinesis</a></li> <li><a href="https://azure.microsoft.com/en-us/services/event-hubs">Azure Event Hubs</a></li> <li><a href="https://www.martinfowler.com/bliki/CQRS.html">CQRS</a></li> <li><a href="https://en.wikipedia.org/wiki/Domain-driven_design">DDD</a></li> <li><a href="https://de.wikipedia.org/wiki/Service-Level-Agreement">SLA</a></li> <li><a href="https://www.docker.com/enterprise-edition">Docker Enterprise Edition</a></li> <li><a href="https://mesosphere.com">Mesosphere DCOS</a></li> <li><a href="https://kubernetes.io">kubernetes</a></li> <li><a href="https://aws.amazon.com/ecs">Amazon ECS</a></li> <li><a href="https://azure.microsoft.com/en-us/services/container-service/">Azure Container Service</a></li> <li><a href="https://azure.microsoft.com/en-us/services/service-fabric/">Azure Service Fabric</a></li> <li><a href="https://en.wikipedia.org/wiki/Acceptance_testing">UAT</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Introduction" start="00:00:00"/> <psc:chapter title="Definition, History & Differences to SOA" start="00:00:38"/> <psc:chapter title="Message Based & Event Based Systems" start="00:06:30"/> <psc:chapter title="Domain-Driven Design" start="00:13:25"/> <psc:chapter title="Eventual Consistency" start="00:15:17"/> <psc:chapter title="Orchestration" start="00:19:32"/> <psc:chapter title="Return on Investment" start="00:24:12"/> <psc:chapter title="Getting Started" start="00:27:08"/> <psc:chapter title="Platforms" start="00:42:18"/> <psc:chapter title="Building the Services" start="00:44:49"/> <psc:chapter title="Communication between Microservices" start="00:48:35"/> <psc:chapter title="Data Sharing between Microservices" start="00:49:15"/> <psc:chapter title="Code Sharing between Microservices" start="00:49:46"/> <psc:chapter title="User Interfaces" start="00:52:16"/> <psc:chapter title="Testing" start="00:57:23"/> <psc:chapter title="Wrap Up" start="01:00:39"/> </psc:chapters> <itunes:episode>9</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks with Michele Bustamante about Microservices</itunes:subtitle> <itunes:summary>In this episode, Stefan Tilkov talks to Michele Leroux Bustamante about Microservices. Michele shares her perspective on microservices and what she sees as the difference between SOA and microservices: The way they share data. Stefan and Michele also talk about orchestration, getting started with microservices, platforms for microservices as well as a few short other topics.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>microservices,domain driven design,cqrs,docker</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/6753-m-37feaf9e97634929cbad3256f21d05e0.ogg?source=feed" type="audio/ogg" length="42605099"/> <itunes:duration>3758</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/9-microservices-with-michele-leroux-bustamante/chapters.json" type="application/json+chapters"/> <podcast:episode>9</podcast:episode> </item> <item> <title>Clojure with Alex Miller</title> <itunes:title>Clojure with Alex Miller</itunes:title> <description>Joy Clark talks with Alex Miller about Clojure. Topics include the Clojure language and how it compares to other languages as far as features and maintainability are concerned. The benefits of dynamic languages are also discussed, and clojure.spec is introduced as a way to gain the benefits of statically typed languages. Alex also talks about ways to structure Clojure code and gives a great list of tools and materials for getting started with Clojure.</description> <pubDate>Thu, 03 Aug 2017 14:39:19 +0000</pubDate> <link>https://www.case-podcast.org/8-clojure-with-alex-miller</link> <guid isPermaLink="false">313007bcefdb1857c88e713415847662</guid> <content:encoded> <![CDATA[Joy Clark talks with Alex Miller about Clojure <ul> <li><a href="https://clojure.org">Clojure</a></li> <li><a href="https://clojure.org/guides/spec">clojure.spec</a></li> <li><a href="https://pragprog.com/book/vmclojeco/clojure-applied">Clojure Applied by Ben Vandgrift and Alex Miller</a> </li> <li><a href="https://clojure.org/community/resources">Online Communities</a></li> <li>Editors: <ul><li><a href="http://www.braveclojure.com/basic-emacs">Emacs</a></li> <li><a href="https://cursive-ide.com">IntelliJ Cursive</a></li> <li><a href="http://doc.ccw-ide.org/documentation.html">Eclipse Counterclockwise</a></li> <li><a href="https://sekao.net/nightcode">Nightcode</a></li> <li><a href="http://lighttable.com">Lighttable</a></li></ul></li> <li>Tools: <ul><li><a href="https://www.yourkit.com">YourKit</a></li> <li><a href="https://atom.io/packages/proto-repl">ProtoREPL</a></li> <li><a href="https://bpiel.github.io/sayid">Sayid</a></li> <li><a href="https://cider.readthedocs.io/en/latest">CIDER</a></li></ul></li> <li>Books: <ul><li><a href="http://www.braveclojure.com">Clojure for the brave and true by Daniel Higgenbotham</a></li> <li><a href="http://shop.oreilly.com/product/0636920034292.do">Living Clojure by Carin Meier</a></li> <li><a href="https://pragprog.com/book/shcloj2/programming-clojure">Programming Clojure by Stuart Halloway and Aaron Bedra</a></li></ul></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="How does Clojure look like?" start="00:00:42"/> <psc:chapter title="What makes it different?" start="00:01:52"/> <psc:chapter title="Strength of Clojure" start="00:03:29"/> <psc:chapter title="Mobile Development with Clojure" start="00:05:21"/> <psc:chapter title="clojure.spec" start="00:08:57"/> <psc:chapter title="Documentation" start="00:17:58"/> <psc:chapter title="Architectural Patterns & Code Organization" start="00:21:12"/> <psc:chapter title="The implementation of Clojure" start="00:24:21"/> <psc:chapter title="Where is Clojure used?" start="00:26:08"/> <psc:chapter title="Tooling" start="00:27:23"/> <psc:chapter title="Advice for Beginners & Resources" start="00:35:22"/> </psc:chapters> <itunes:episode>8</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Alex Miller about Clojure</itunes:subtitle> <itunes:summary>Joy Clark talks with Alex Miller about Clojure. Topics include the Clojure language and how it compares to other languages as far as features and maintainability are concerned. The benefits of dynamic languages are also discussed, and clojure.spec is introduced as a way to gain the benefits of statically typed languages. Alex also talks about ways to structure Clojure code and gives a great list of tools and materials for getting started with Clojure.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Clojure,ClojureScript,Functional Programming,Dynamic Programming,REPL,Lisp,Programming Languages</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/6323-m-b7751ae9fa75ac2321c17c5f885417c6.ogg?source=feed" type="audio/ogg" length="28398464"/> <itunes:duration>2276</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/8-clojure-with-alex-miller/chapters.json" type="application/json+chapters"/> <podcast:episode>8</podcast:episode> </item> <item> <title>Microservices with Eberhard Wolff</title> <itunes:title>Microservices with Eberhard Wolff</itunes:title> <description>Lucas Dohmen talks with Eberhard Wolff about microservices. Eberhard Wolff is a fellow at innoQ and wrote a book as well as a primer about microservices. He talks about what lead to microservices and the advantages, and disadvantages of as well as the preconditions for the architecture. He then introduces different styles of microservices and how they influence and are influenced by organizational structures. Eberhard also talks about introducing microservices, how they communicate with each other as well as testing microservices.</description> <pubDate>Thu, 13 Jul 2017 07:36:44 +0000</pubDate> <link>https://www.case-podcast.org/7-microservices-with-eberhard-wolff</link> <guid isPermaLink="false">1ab6a3484688f9733a454b724a6d5251</guid> <content:encoded> <![CDATA[Lucas Dohmen talks with Eberhard Wolff about microservices <ul> <li><a href="http://microservices-book.com/primer.html">Microservices Primer</a></li> <li><a href="http://microservices-book.com">Microservices Book</a></li> <li><a href="https://en.wikipedia.org/wiki/Continuous_delivery">Continuous Delivery</a></li> <li><a href="https://en.wikipedia.org/wiki/DevOps">DevOps</a></li> <li><a href="http://www.se-radio.net/2016/03/se-radio-episode-253-fred-george-on-developer-anarchy">SE Radio Episode with Fred George</a></li> <li><a href="https://aws.amazon.com/lambda/details">AWS Lambda</a></li> <li><a href="https://www.infoq.com/presentations/netflix-chaos-microservices">The Netflix Approach to Microservices</a></li> <li><a href="http://scs-architecture.org">Self-Contained Systems</a></li> <li><a href="https://en.wikipedia.org/wiki/Domain-driven_design">Domain Driven Design</a></li> <li><a href="https://www.martinfowler.com/articles/consumerDrivenContracts.html">Consumer-Driven Contracts</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="Definition of Microservices" start="00:00:56"/> <psc:chapter title="What enabled microservices?" start="00:03:08"/> <psc:chapter title="Advantages of a Microservice Architecture" start="00:04:29"/> <psc:chapter title="Disadvantages of a Microservice Architechture" start="00:11:49"/> <psc:chapter title="Preconditions" start="00:15:33"/> <psc:chapter title="Styles of Microservices & influence on organizational structures" start="00:17:37"/> <psc:chapter title="Greenfield/Brownfield" start="00:26:19"/> <psc:chapter title="Complexity" start="00:28:27"/> <psc:chapter title="Communication between Microservices" start="00:30:17"/> <psc:chapter title="Databases" start="00:40:37"/> <psc:chapter title="Testing" start="00:43:51"/> <psc:chapter title="Takeaways" start="00:51:55"/> </psc:chapters> <itunes:episode>7</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Lucas Dohmen talks with Eberhard Wolff about microservices</itunes:subtitle> <itunes:summary>Lucas Dohmen talks with Eberhard Wolff about microservices. Eberhard Wolff is a fellow at innoQ and wrote a book as well as a primer about microservices. He talks about what lead to microservices and the advantages, and disadvantages of as well as the preconditions for the architecture. He then introduces different styles of microservices and how they influence and are influenced by organizational structures. Eberhard also talks about introducing microservices, how they communicate with each other as well as testing microservices.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>microservices,architecture</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/5839-m-93e38777bb83c6e5d94ee1cfd0fceae3.ogg?source=feed" type="audio/ogg" length="45282992"/> <itunes:duration>3333</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/7-microservices-with-eberhard-wolff/chapters.json" type="application/json+chapters"/> <podcast:episode>7</podcast:episode> </item> <item> <title>Rails Girls with Ute Mayer</title> <itunes:title>Rails Girls with Ute Mayer</itunes:title> <description>Eberhard Wolff talks with Ute Mayer about Rails Girls. Topics include how Rails Girls increase diversity in IT and thereby influence the live of the attendees. Rails Girls is a global movement and does workshops to introduce women to programming. Attendees can then join project groups to work on specific projects and apply for the Rails Girls Summer of Code to develop open source projects. The training material is free and open source - and includes information how to start a Rails Girls group. There are many way to support: Rails Girls is looking for coaches and sponsors.</description> <pubDate>Thu, 22 Jun 2017 06:47:35 +0000</pubDate> <link>https://www.case-podcast.org/6-rails-girls-with-ute-mayer</link> <guid isPermaLink="false">e057d036a14fe79ef9d6a64c2b1e528c</guid> <content:encoded> <![CDATA[Eberhard Wolff talks with Ute Mayer about Rails Girls <ul> <li><a href="http://railsgirls.com">Rails Girls Homepage</a></li> <li><a href="http://twitter.com/nerdbabe">Ute Mayer on Twitter</a></li> <li><a href="http://guides.railsgirls.com">Material & guide to organize a Rails Girls Workshop</a></li> <li><a href="http://railsgirlsberlin.de">Rails Girls Berlin Homepage</a></li> <li><a href="https://railsgirlssummerofcode.org">Rails Girls Summer of Code</a></li> <li><a href="http://railsgirlsberlin.de/wall-of-fame">Rails Girls Berlin – Hall of Fame</a></li> <li><a href="http://rubymonstas.org">The Ruby Monstas</a></li> <li><a href="https://rorganize.it">RoRganize.it</a></li> <li><a href="http://www.case-podcast.org/3-open-tech-school">CaSE Podcast about Open Tech School</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro / Who are the Railsgirls?" start="00:00:00"/> <psc:chapter title="What does Railsgirls teach?" start="00:09:01"/> <psc:chapter title="How Railsgirls is organized" start="00:29:24"/> <psc:chapter title="How you can help" start="00:39:33"/> </psc:chapters> <itunes:episode>6</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Eberhard Wolff talks with Ute Mayer about Rails Girls</itunes:subtitle> <itunes:summary>Eberhard Wolff talks with Ute Mayer about Rails Girls. Topics include how Rails Girls increase diversity in IT and thereby influence the live of the attendees. Rails Girls is a global movement and does workshops to introduce women to programming. Attendees can then join project groups to work on specific projects and apply for the Rails Girls Summer of Code to develop open source projects. The training material is free and open source - and includes information how to start a Rails Girls group. There are many way to support: Rails Girls is looking for coaches and sponsors.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>RailsGirls,learning,teaching,diversity</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/5357-m-c6248e671ac850693a6593fe051772a5.ogg?source=feed" type="audio/ogg" length="34271780"/> <itunes:duration>2689</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/6-rails-girls-with-ute-mayer/chapters.json" type="application/json+chapters"/> <podcast:episode>6</podcast:episode> </item> <item> <title>Legacy Software and Immutable Infrastructure with Chad Fowler</title> <itunes:title>Legacy Software and Immutable Infrastructure with Chad Fowler</itunes:title> <description>Joy Clark talks with Chad Fowler about legacy software and immutable infrastructure. They begin by discussing legacy software and why the description 'legacy' shouldn't actually be a bad thing. Then they contrast how reusable libraries differ from a system of services which is flexible and can change over time. Chad then describes how they developed Wunderlist using a microservices architecture and answers questions about how to practically develop and test such a system and how to decrease coupling between components. They wrap up by discussing how the principles of immutable infrastructure can be applied to software development in general.</description> <pubDate>Thu, 01 Jun 2017 07:20:35 +0000</pubDate> <link>https://www.case-podcast.org/5-legacy-software-and-immutable-infrastructure-with-chad-fowler</link> <guid isPermaLink="false">72a4aa0a11317cb0fdca3b64d4e53271</guid> <content:encoded> <![CDATA[Joy Clark talks with Chad Fowler about legacy software and immutable architecture <ul> <li><a href="http://chadfowler.com">Website</a></li> <li><a href="http://chadfowler.com/2013/06/23/immutable-deployments.html">Immutable Architecture</a></li> <li><a href="https://pragprog.com/titles/cfcar2/the-passionate-programmer">The Passionate Programmer</a></li> <li><a href="https://www.youtube.com/watch?v=sAsRtZEGMMQ">From Homogeneous Monolith to Radically Heterogeneous Microservices Architecture</a></li> <li><a href="https://www.youtube.com/watch?v=-UKEPd2ipEk">Kill “Microservices” before it’s too late</a> </li> <li><a href="https://www.youtube.com/watch?v=jEb_GhPtxm8&t=2913s">Impermanence as the key to good systems thinking</a> </li> <li><a href="https://www.wunderlist.com">Wunderlist</a></li> <li><a href="https://aws.amazon.com/de/message/41926">A3 Outage</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Introduction" start="00:00:00"/> <psc:chapter title="How long does it take for a piece of software to be considered legacy software?" start="00:02:47"/> <psc:chapter title="Is it a given that my application will need to be replaced?" start="00:03:36"/> <psc:chapter title="Should we try to create code that can be reused?" start="00:09:06"/> <psc:chapter title="Services vs. Libraries" start="00:13:20"/> <psc:chapter title="How can we ensure that small services do not become dependent on each other?" start="00:16:35"/> <psc:chapter title="How can we test a system composed of hundreds of different services?" start="00:18:41"/> <psc:chapter title="How can we ensure that a system itself doesn't become monolithic and difficult to replace?" start="00:21:50"/> <psc:chapter title="Immutable Architecture at Wunderlist" start="00:24:27"/> <psc:chapter title="What is immutable infrastructure?" start="00:29:04"/> <psc:chapter title="Can immutable infrastructure be used within a cloud company?" start="00:35:34"/> <psc:chapter title="Is there a risk to basing your whole system on Docker?" start="00:39:00"/> <psc:chapter title="How can we apply the concepts of immutable architecture to software development?" start="00:41:20"/> <psc:chapter title="If someone is getting started as a software developer, what should they focus on?" start="00:47:19"/> </psc:chapters> <itunes:episode>5</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Chad Fowler about legacy software and immutable architecture</itunes:subtitle> <itunes:summary>Joy Clark talks with Chad Fowler about legacy software and immutable infrastructure. They begin by discussing legacy software and why the description 'legacy' shouldn't actually be a bad thing. Then they contrast how reusable libraries differ from a system of services which is flexible and can change over time. Chad then describes how they developed Wunderlist using a microservices architecture and answers questions about how to practically develop and test such a system and how to decrease coupling between components. They wrap up by discussing how the principles of immutable infrastructure can be applied to software development in general.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Legacy software,immutable architecture,Docker,microservices,aws</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/5356-m-48003e86cbee4a42b405458f428d1fa4.ogg?source=feed" type="audio/ogg" length="33108963"/> <itunes:duration>3005</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/5-legacy-software-and-immutable-infrastructure-with-chad-fowler/chapters.json" type="application/json+chapters"/> <podcast:episode>5</podcast:episode> </item> <item> <title>Software Architecture with Stefan Tilkov</title> <itunes:title>Software Architecture with Stefan Tilkov</itunes:title> <description>Joy Clark talks with Stefan Tilkov about software architecture. After discussing the definition of software architecture, they go on to cover what the role 'Software Architect' actually means and what tools and skills an architect needs to do their job. They also discuss several different architectural styles which can be used and look at the most common styles that are currently employed today. To help us on our quest to becoming software architects, Stefan also gives a great lists of resources that we can use as a starting point.</description> <pubDate>Thu, 11 May 2017 07:00:00 +0000</pubDate> <link>https://www.case-podcast.org/4-software-architecture</link> <guid isPermaLink="false">ae7f1a5ca79e6dc31bf4322e18f679c8</guid> <content:encoded> <![CDATA[Joy Clark talks with Stefan Tilkov about software architecture <ul> <li>Software Engineering Institute <ul><li><a href="http://www.sei.cmu.edu/architecture/start/glossary/classicdefs.cfm">Classic Software Architecture Definitions</a></li> <li><a href="http://www.sei.cmu.edu/architecture/start/glossary/community.cfm">Community Software Architecture Definitions</a></li></ul></li> <li><a href="https://pragprog.com/book/mnee/release-it">Release It!</a> </li> <li><a href="https://www.martinfowler.com/books/eaa.html">Patterns of Enterprise Application Architecture by Martin Fowler</a> (<a href="https://www.amazon.com/Patterns-Enterprise-Application-Architecture-Martin/dp/0321127420">Amazon</a>)</li> <li><a href="http://esabuch.de">Effektive Softwarearchitekturen by Gernot Starke</a></li> <li><a href="http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0471958697.html">PoSA - Pattern-Oriented Software Architecture</a></li> <li>Podcast: <a href="https://www.heise.de/developer/artikel/Episode-46-Ressourcen-fuer-Softwarearchitekten-2299439.html">Ressourcen für Softwarearchitekten</a></li> <li><a href="https://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm">REST Architectural Style</a></li> <li><a href="http://www.cs.umd.edu/class/spring2003/cmsc838p/Design/criteria.pdf">David Parnas 1972</a></li> <li><a href="https://www.infoq.com/articles/architecture-as-language-a-story">Architecture is a Language by Marcus Völter</a></li> <li><a href="https://leanpub.com/visualising-software-architecture">Visualise, document and explore your software architecture by Simon Brown</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="What is Software Architecture?" start="00:00:27"/> <psc:chapter title="But with something like 'Agile' do we still need to have conversations about software architecture?" start="00:01:45"/> <psc:chapter title="Can the architecture change over time?" start="00:04:05"/> <psc:chapter title="How much does the technology that we use determine the architecture of our system?" start="00:05:17"/> <psc:chapter title="If the technology does play a role in the architecture, should the architect be able to code?" start="00:09:58"/> <psc:chapter title="Do I need a special certification as an architect?" start="00:12:48"/> <psc:chapter title="If I am just a normal software developer and I am in a project, how much is it my responsibility to carry out the architecture of the system?" start="00:15:00"/> <psc:chapter title="Should there be two separate rules, 'developer' and 'architect'?" start="00:19:27"/> <psc:chapter title="Is communication important?" start="00:22:43"/> <psc:chapter title="How do you deal with architectural decisions which come from management?" start="00:26:52"/> <psc:chapter title="What tools can you use as a software architect?" start="00:28:52"/> <psc:chapter title="Can you assume that UML is easy to understand?" start="00:32:50"/> <psc:chapter title="When we start a software project, is the architecture always the same?" start="00:34:15"/> <psc:chapter title="What kind of architectural styles are there?" start="00:34:58"/> <psc:chapter title="What is a '3-Tier-Architecture'?" start="00:37:21"/> <psc:chapter title="What is the difference between tiers and layers?" start="00:41:43"/> <psc:chapter title="Is it better to have more or less layers?" start="00:43:57"/> <psc:chapter title="What is the most popular architectural style currently? Is there one?" start="00:45:34"/> <psc:chapter title="Does something small like a Command Line Application have an architecture?" start="00:48:46"/> <psc:chapter title="Learning software architecture to write better software" start="00:50:54"/> <psc:chapter title="Enterprise Architecture" start="00:52:12"/> <psc:chapter title="Is there anything else that you would like to say about software architecture?" start="00:55:57"/> <psc:chapter title="What is your favorite architectural style?" start="00:59:34"/> <psc:chapter title="If I want to get started and become an architect, how do I do that?" start="01:01:02"/> <psc:chapter title="What's your favorite book on software architecture?" start="01:02:18"/> </psc:chapters> <itunes:episode>4</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Joy Clark talks with Stefan Tilkov about software architecture</itunes:subtitle> <itunes:summary>Joy Clark talks with Stefan Tilkov about software architecture. After discussing the definition of software architecture, they go on to cover what the role 'Software Architect' actually means and what tools and skills an architect needs to do their job. They also discuss several different architectural styles which can be used and look at the most common styles that are currently employed today. To help us on our quest to becoming software architects, Stefan also gives a great lists of resources that we can use as a starting point.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>SoftwareArchitecture</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/4383-m-e3d14c30aff1cee67abbdf877cd5e3ec.ogg?source=feed" type="audio/ogg" length="50609872"/> <itunes:duration>3867</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/4-software-architecture/chapters.json" type="application/json+chapters"/> <podcast:episode>4</podcast:episode> </item> <item> <title>OpenTechSchool with Martin Stadler</title> <itunes:title>OpenTechSchool with Martin Stadler</itunes:title> <description>Eberhard Wolff talks with Martin Stadler about OpenTechSchool, an organization that helps people to learn about programming and software development. Topics include the different types of events and material OpenTechSchool offers and how OpenTechSchool enables a hands-on, empowering, and peer-driven approach. We also discuss the organization, the core values and how OpenTechSchool increases diversity. OpenTechSchool has a lot of partners and local chapters that take different approaches. Of course the show also talks about how to join OpenTechSchool, how to help and how to start your own chapter.</description> <pubDate>Thu, 20 Apr 2017 07:00:00 +0000</pubDate> <link>https://www.case-podcast.org/3-open-tech-school</link> <guid isPermaLink="false">6c1f825311cfb9457f6ebd2982efb0d3</guid> <content:encoded> <![CDATA[Eberhard Wolff talks with Martin Stadler about OpenTechSchool <ul> <li><a href="https://twitter.com/OpenTechSchool">https://twitter.com/OpenTechSchool</a></li> <li><a href="http://www.opentechschool.org">http://www.opentechschool.org</a></li> <li><a href="http://xmartin.de">http://xmartin.de</a></li> <li><a href="https://www.freecodecamp.com">https://www.freecodecamp.com</a></li> <li><a href="http://railsgirls.com">http://railsgirls.com</a></li> <li><a href="https://nodeschool.io">https://nodeschool.io</a></li> <li><a href="http://cssclass.es">http://cssclass.es</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro" start="00:00:00"/> <psc:chapter title="Events Open TechSchool provides" start="00:07:08"/> <psc:chapter title="Open TechSchool organization" start="00:22:16"/> <psc:chapter title="Similar organizations" start="00:43:46"/> <psc:chapter title="How you can join and help" start="00:52:32"/> </psc:chapters> <itunes:episode>3</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Eberhard Wolff talks with Martin Stadler about OpenTechSchool</itunes:subtitle> <itunes:summary>Eberhard Wolff talks with Martin Stadler about OpenTechSchool, an organization that helps people to learn about programming and software development. Topics include the different types of events and material OpenTechSchool offers and how OpenTechSchool enables a hands-on, empowering, and peer-driven approach. We also discuss the organization, the core values and how OpenTechSchool increases diversity. OpenTechSchool has a lot of partners and local chapters that take different approaches. Of course the show also talks about how to join OpenTechSchool, how to help and how to start your own chapter.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>OpenTechSchool,learning,teaching</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/3726-m-1e9a8ea4c32ec1ff04cc994743b60cd1.ogg?source=feed" type="audio/ogg" length="45368155"/> <itunes:duration>3691</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/3-open-tech-school/chapters.json" type="application/json+chapters"/> <podcast:episode>3</podcast:episode> </item> <item> <title>Spring Data with Oliver Gierke</title> <itunes:title>Spring Data with Oliver Gierke</itunes:title> <description>Eberhard Wolff talks with Oliver Gierke about Spring Data. The show starts with an overview of the Java framework Spring and its ecosystem. The focus of the show is Spring Data: A set of frameworks that support many different relational and NoSQL datastores. The show then discusses how Spring Data is developed and released. Another topic is how reactive programming influences persistence and how transactions make little sense for reactive architectures. Finally, the show covers Spring Data REST — a framework to expose Spring Data repositories as REST resources — and how this concept is useful beyond simple CRUD operations.</description> <pubDate>Thu, 30 Mar 2017 08:00:00 +0000</pubDate> <link>https://www.case-podcast.org/2-spring-data-with-oliver-gierke</link> <guid isPermaLink="false">f29fc7384a1f244235b6465cdc97cb77</guid> <content:encoded> <![CDATA[Eberhard Wolff talks with Oliver Gierke about Spring Data <ul> <li><a href="https://projects.spring.io/spring-framework">Spring Framework</a></li> <li><a href="https://projects.spring.io/spring-boot">Spring Boot</a></li> <li><a href="http://projects.spring.io/spring-data">Spring Data</a></li> <li><a href="http://projects.spring.io/spring-data-rest">Spring Data Rest</a></li> <li><a href="https://spring.io/guides">Spring Guides</a></li> <li><a href="http://www.se-radio.net/2016/09/se-radio-episode-267-jurgen-holler-on-reactive-spring-and-spring-5-0">SE Radio Episode: Jürgen Höller on Reactive Spring and Spring 5.0</a></li> <li><a href="https://www.infoq.com/presentations/spring-data-rest-springone2016">Slides: Advanced Spring Data REST</a></li> </ul>]]> </content:encoded> <psc:chapters version="1.2"> <psc:chapter title="Intro / What is Spring?" start="00:00:00"/> <psc:chapter title="What is Spring Data?" start="00:04:23"/> <psc:chapter title="Organization and Development of Spring Data" start="00:23:36"/> <psc:chapter title="Persistence and Reactive" start="00:34:12"/> <psc:chapter title="Spring Data REST" start="00:46:48"/> <psc:chapter title="How can you help?" start="00:58:59"/> </psc:chapters> <itunes:episode>2</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Eberhard Wolff talks with Oliver Gierke about Spring Data</itunes:subtitle> <itunes:summary>Eberhard Wolff talks with Oliver Gierke about Spring Data. The show starts with an overview of the Java framework Spring and its ecosystem. The focus of the show is Spring Data: A set of frameworks that support many different relational and NoSQL datastores. The show then discusses how Spring Data is developed and released. Another topic is how reactive programming influences persistence and how transactions make little sense for reactive architectures. Finally, the show covers Spring Data REST — a framework to expose Spring Data repositories as REST resources — and how this concept is useful beyond simple CRUD operations.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>Java,Spring Data,Spring,Spring Data REST,REST</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/4018-m-4267f7bf8a3a89ab618d7f799d1f9cc0.ogg?source=feed" type="audio/ogg" length="47353726"/> <itunes:duration>3797</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/2-spring-data-with-oliver-gierke/chapters.json" type="application/json+chapters"/> <podcast:episode>2</podcast:episode> </item> <item> <title>Modern CSS with Jen Simmons</title> <itunes:title>Modern CSS with Jen Simmons</itunes:title> <description>Stefan Tilkov talks to Jen Simmons about CSS, the standard for applying layout rules to HTML pages. Jen talks about the often misunderstood role of CSS in the Web stack, why it matters, and how it has grown ever more powerful over the course of time. Also included: Some discussion about why so many developers don’t like CSS and what to do about it, and new features coming to the CSS standard.</description> <pubDate>Thu, 09 Mar 2017 06:32:59 +0000</pubDate> <link>https://www.case-podcast.org/1-modern-css-with-jen-simmons</link> <guid isPermaLink="false">b88ed1bd070e147aa6028bc7bcd6b7fb</guid> <content:encoded> <![CDATA[Stefan Tilkov talks to Jen Simmons about CSS, the standard for applying layout rules to HTML pages. <ul> <li><a href="http://jensimmons.com">Jen Simmons’s website</a></li> <li><a href="http://5by5.tv/webahead">The Web Ahead podcast</a> </li> <li><a href="http://www.learningwebdesign.com">Learning Web Design by Jennifer Robbins</a></li> <li><a href="https://abookapart.com/products/html5-for-web-designers">HTML5 for Web Designers by Jeremy Keith & Rachel Andrew</a></li> <li><a href="https://www.w3.org/TR/css3-grid-layout">CSS Grid Layout specification</a></li> <li><a href="https://css-tricks.com">CSS Tricks</a></li> <li><a href="https://developer.mozilla.org">Mozilla Developer Network (MDN)</a></li> <li><a href="http://www.layout.land">Layout Land</a></li> </ul>]]> </content:encoded> <itunes:episode>1</itunes:episode> <itunes:episodeType>full</itunes:episodeType> <itunes:subtitle>Stefan Tilkov talks to Jen Simmons about CSS, the standard for applying layout rules to HTML pages.</itunes:subtitle> <itunes:summary>Stefan Tilkov talks to Jen Simmons about CSS, the standard for applying layout rules to HTML pages. Jen talks about the often misunderstood role of CSS in the Web stack, why it matters, and how it has grown ever more powerful over the course of time. Also included: Some discussion about why so many developers don’t like CSS and what to do about it, and new features coming to the CSS standard.</itunes:summary> <itunes:explicit>no</itunes:explicit> <itunes:keywords>css,design,layout,frontend,grid layout,flex layout,web programming,HTML</itunes:keywords> <itunes:author>CaSE Podcast Team</itunes:author> <enclosure url="https://audio.podigee-cdn.net/3614-m-cdca8c22e835af531621c50f436ff1a1.ogg?source=feed" type="audio/ogg" length="45383951"/> <itunes:duration>3955</itunes:duration> <podcast:chapters href="https://www.case-podcast.org/1-modern-css-with-jen-simmons/chapters.json" type="application/json+chapters"/> <podcast:episode>1</podcast:episode> </item> </channel> </rss>