Presentations

Building Reliable Workflows in Java Using DBOS

So you have a new Workflow in your application. Let's say that it has 20 steps in the workflow

  • What happens if the instance handling the workflow goes down
  • What happens if a remote service that is invoked in one of the Workflow steps is down

This is where a durable workflow comes in. DBOS is a durable Workflow engine that provides this capability along with many other features.

Come learn about the durable workflow space and how you can add such a capability to your Java application

Speaker: Harry Pierson is a Software Engineer at DBOS and is responsible for the Java implementation of DBOS

Durable Execution 101 with Postgres and Python

Join us for a fast-paced evening of lightning talks exploring the intersection of Postgres and Python! Whether you’re a Pythonista curious about getting more out of Postgres, or a database enthusiast looking to sharpen your Python skills, this meetup is a great chance to learn, connect, and spark new ideas.

Additionally, we will kick off the evening with special guest German Eichberger - visiting from San Diego - who will give a short introduction to DocumentDB. This is a MongoDB compatible open source document database built on PostgreSQL, which recently joined the Linux Foundation with support from a wide array of companies.

Python Lightning Talk Agenda:

  • Andrew Schell: Not Everything Needs to be a Database, and What NOT to do when using Python on Postgres
  • Eric Lendvai: Python procedural language in PostgreSQL
  • Harry Pierson: Durable Computing 101 with Postgres and Python

Time Travel Queries with Postgres

Wouldn’t it be nice if you could query your database as it was ten minutes, ten hours, or ten days ago? It would make audits, troubleshooting, and period vs. period reporting so much easier. Once upon a time, Postgres supported time travel queries, but it was deprecated almost thirty years ago because of its abysmal performance. In this talk, we present a new implementation of time travel in Postgres using logical replication to create a special versioned database read replica. We’ll discuss algorithms to construct this replica and efficiently query it, and mechanisms to compact the replica’s data and bound its size.

Stored Procedures: The Good, The Bad, and The Elegant

On August 15, 2024, I presented a webcast about using the DBOS Transact library to compile application code into PostgreSQL stored procedures. The Good is that stored procedures can speed up application performance a lot. The Bad is that implementing and managing them can be prohibitively challenging. The Elegant is the way DBOS Transact eliminates those challenges, making it easier to build faster backends.

[Insert Funny Title About API Design Here]

Original Abstract:

Writing code is hard enough. Writing code for other developers to use is even harder. In this session, we will discuss API design tips and tricks to ensure your library gets used and doesn’t end up in a neglected git repo somewhere.

Respecting your Investments: How to Leverage your Existing Code in a New Windows Runtime LOB App

Original Abstract:

Many businesses are finding they need new versions of their trusty LOB apps for their increasingly mobile workforce. However, these business also want to leverage the existing investments they have made to date. In this session, we will learn about changes in Windows 8.1 Update to allow businesses to build new mobile LOB applications without having to re-write their entire app from scratch.

Making your Windows Store app more reliable

Original Abstract:

Customers expect the apps they get from the Windows Store to be stable and reliable, and they’re likely to give your app a bad review if it doesn’t meet that expectation. In this session, you’ll learn how to gather the information you need to fix issues in your Windows Store apps. We’ll also cover improvements to error and exception handling that we’ve made in Windows 8.1.

Using the Windows Runtime from C# and Visual Basic

This is the presenation I did about using Windows Runtime from .NET at //build 2011 with Jesse Kaplan.

This video is still live on Microsoft's website. But I don't trust them to keep it up there, so I've uploaded a copy to YouTube.

Original Abstract:

C#, Visual Basic and the .NET tools have first-class support for the Windows Runtime. Learn about this integration and how to use C# and Visual Basic to write Metro style apps that call the Windows Runtime and how to build libraries that integrate with your Metro style apps using HTML.

How Languages Influence Design: Objects vs. Functions

Honestly, I don't remember where I delivered this presentation. I think it was at the patterns & practices summit in October of 2009. but I can't find any details about the event on the internet in 2026

Pumping Iron: The State of Dynamic Languages on the .NET Framework

This is a presenation I delivered a few times in 2009. I had the slides but thanks to Internet Wayback Machine, I was able to retrieve a copy of the video!

Original Abstract:

As is commonly known, Microsoft is developing IronPython and IronRuby, .NET implementations of the popular open-source programming languages Python and Ruby.

While it is clear that Microsoft wants to attract existing Python and Ruby developers to .NET, the role of IronPython and IronRuby for existing .NET developers is less clear. What value is there for a .NET developer in learning IronPython? What are the tradeoffs between IronRuby and a more traditional .NET language like C# or VB? Harry Pierson, new PM for IronPython, will discuss where dynamic . languages fit in the.NET developers toolbox.

To learn more about IronPython visit the IronPython project page on Codeplex or Harry’s blog, he is writing quite a bit on that IronPython topic 😉

Moving Beyond Industrial Software

Original Abstract:

Computers have been instrumental in ushering in the post-industrial age. Yet, most enterprises today are run with an industrial mindset and the IT department is organized like a factory. This creates a tension between the forces of industrialization that define the organization and the forces of post-industrialization that define today?s marketplace. For example, our post-industrial world is becoming more decentralized by the day. Yet many organizations believe the key to a successful service oriented architecture ? a very decentralized system design ? is to have a central service repository.

In this session, Harry Pierson will examine this tension, get you thinking outside the industrial mindset and help you think about software development in a post-industrial way

Developer 2.0

Original Abstract:

The one constant in software development is change. Software development in 2005 is dramatically different than it was in 2000, which was in turn dramatically different than in 1995. You can be guaranteed that the platforms, languages, and tools will continue to evolve. Learn how a key member of Microsoft's Architecture Strategy Team believes software development is going to evolve in the next five years and what you must do today to remain competitive.

The Microsoft .NET Application Platform

These slides covered the v1.0 .NET development platform and Visual Studio 2002 (ASP.NET, ADO.NET, Windows Forms, XML Web Services, etc.).

Microsoft .NET: Built on the Internet Foundation

These are the slides I originally used to do the 'What is .NET?' presenation for business decision makers as an architect evangelist back in the early 2000s. They primarily focus on the vision of "XML Web Services", which has morphed over the decades into JSON + RESTful services. There's also a "J2EE Competitive" appendix, which is funny to me now since I haven't written any .NET code in at least 3 years and I'm spending 90%+ of my time right now writing Java. 🤣