<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Talks on Hillel Wayne</title>
    <link>https://www.hillelwayne.com/talks/</link>
    <description>Recent content in Talks on Hillel Wayne</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Wed, 29 May 2024 00:00:00 +0000</lastBuildDate>
    
	<atom:link href="https://www.hillelwayne.com/talks/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>What We Know We Don&#39;t Know: Empirical Software Engineering</title>
      <link>https://www.hillelwayne.com/talks/ese/ddd/</link>
      <pubDate>Wed, 29 May 2024 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/ese/ddd/</guid>
      <description>This version of the talk was given at DDD Europe, 2024.
Technology is a multitrillion dollar industry, but we know almost nothing about how it&amp;rsquo;s best practiced. Empirical Software Engineering, or ESE, is the study of what works in software and why. Instead of trusting our instincts we collect data, run studies, and peer-review our results. This talk is all about how we empirically find the facts in software and some of the challenges we face, concluding with a guide on how to find existing research and an overview on some things we&amp;rsquo;ve learned about DDD.</description>
    </item>
    
    <item>
      <title>Is Software Engineering Real Engineering?</title>
      <link>https://www.hillelwayne.com/talks/crossover-project/</link>
      <pubDate>Wed, 24 May 2023 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/crossover-project/</guid>
      <description>Description: What makes software engineering different from “traditional” engineering? To find out, I interviewed 17 “crossovers”: people who have worked professionally as both a software and a traditional engineer. In aggregate, we learn three things: we are in fact engineers, we’re not actually that different as a field, and there’s a lot we can both teach and learn.
Slides are here. Video is here.
  FAQ These are some of the questions I remember people asking me after the talk.</description>
    </item>
    
    <item>
      <title>What We Know We Don&#39;t Know: Empirical Software Engineering</title>
      <link>https://www.hillelwayne.com/talks/ese/</link>
      <pubDate>Fri, 04 Nov 2022 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/ese/</guid>
      <description>Empirical Software Engineering is the study of what actually works in programming. Instead of trusting our instincts we collect data, run studies, and peer-review our results. This talk is all about how we empirically find the facts in software and some of the challenges we face, with a particular focus on software defects and productivity.
Talk doesn&amp;rsquo;t seem to be online yet; in the meantime, you can see a recording of an older version of the talk here.</description>
    </item>
    
    <item>
      <title>A Brief Introduction to Esoteric Languages</title>
      <link>https://www.hillelwayne.com/talks/esolangs/</link>
      <pubDate>Sun, 16 May 2021 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/esolangs/</guid>
      <description>This is the companion reference for A Brief Introduction to Esoteric Languages, my lecture for a friend&amp;rsquo;s college class. The video should be legible to other viewers, and the material here should be (mostly) understandable without watching the video.
  The Esolangs Listed roughly in order of appearance in the talk, with the exception of Piet, which was moved to fit in with the other multicoded esolangs.
INTERCAL Don Woods, 1972.</description>
    </item>
    
    <item>
      <title>What We Can Learn From Software History</title>
      <link>https://www.hillelwayne.com/talks/software-history/</link>
      <pubDate>Tue, 09 Jul 2019 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/software-history/</guid>
      <description>Official Description: [N/A: I did not provide a description.]
Actual Description: History is good!!! Yay history
Talk is here. Slides are here.
Sources I referenced a bunch of sources in my talk. These are links so you can read them yourself:
Sources on the history of SOLID included Robert Martin&amp;rsquo;s original 11 commandments and &amp;ldquo;Principles of OOD&amp;rdquo;. Picture of RCM by Tim-bezhashvyly. Shown books were Clean Code, Clean Architecture, and Agile Software Development.</description>
    </item>
    
    <item>
      <title>What We Know We Don&#39;t Know</title>
      <link>https://www.hillelwayne.com/talks/what-we-know-we-dont-know/</link>
      <pubDate>Sun, 28 Apr 2019 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/what-we-know-we-dont-know/</guid>
      <description>NOTE: There is a newer version of this talk.
Official Description: There are many things in software we believe are true but very little we know. Maybe testing reduces bugs, or maybe it&amp;rsquo;s just superstition. If we want to improve our craft, we need a way to distinguish fact from fallacy. We need to look for evidence, placing our trust in the hard data over our opinions.
Empirical Software Engineering is the study of what actually works in programming.</description>
    </item>
    
    <item>
      <title>Designing Distributed Systems with TLA&#43;</title>
      <link>https://www.hillelwayne.com/talks/distributed-systems-tlaplus/</link>
      <pubDate>Tue, 11 Dec 2018 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/distributed-systems-tlaplus/</guid>
      <description>Official Description: Distributed systems are hard. Even a few interacting agents can lead to tens of thousands or even millions of unique system states. At that scale, it&amp;rsquo;s impossible to test for, or even reason about, every possible edge case. We need better tools not just for building systems, but for understanding them.
To truly understand distributed systems, we need to turn to software modeling, or &amp;ldquo;formal methods&amp;rdquo;. A few hours of modeling catches complex bugs that would take weeks or months of development to discover.</description>
    </item>
    
    <item>
      <title>Beyond Unit Tests</title>
      <link>https://www.hillelwayne.com/talks/beyond-unit-tests/</link>
      <pubDate>Mon, 14 May 2018 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/beyond-unit-tests/</guid>
      <description>Official Description: You&amp;rsquo;ve used pytest and you&amp;rsquo;ve used mypy, but bugs are still slipping through your code. What&amp;rsquo;s next? In this talk, we cover two simple but powerful tools for keeping your code problem-free. Property-based testing, provided by the Hypothesis library, lets you run hundreds of tests from a single template. Contracts, via dpcontracts, make your program test itself. You&amp;rsquo;ll learn how and why to use these tools and how to combine them with the rest of your testing suite.</description>
    </item>
    
    <item>
      <title>Tackling Concurrency Bugs with TLA&#43;</title>
      <link>https://www.hillelwayne.com/talks/tackling-concurrency-tlaplus/</link>
      <pubDate>Thu, 28 Sep 2017 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/talks/tackling-concurrency-tlaplus/</guid>
      <description>Official Description: Concurrency is hard. How do you test your system when it&amp;rsquo;s spread across three services and four languages? Unit testing and type systems only take us so far. At some point we need new tools.
Enter TLA+. TLA+ is a specification language that describes your system and the properties you want. This makes it a fantastic complement to testing: not only can you check your code, you can check your design, too!</description>
    </item>
    
  </channel>
</rss>