Columbus Chapter

What was the last paper within the realm of computing you read? What did it inspire you to build or tinker with? Come share the ideas in an awesome academic/research publication with fellow engineers, programmers, and paper-readers. Lead a session and show off code that you wrote that implements these ideas or just give us the lowdown about the paper. Otherwise, just come, listen, learn, and discuss.

Unlike many chapters, we generally meet informally over lunch instead of having slideshow presentations in the evening. Sometimes we read papers; other weeks we discuss chapters from programming books. You can check out our reading backlog.

We'll be using papers-we-love's curated repository. Please contribute by adding PR's for papers, code, and/or links to other repositories.

PWL Columbus strictly adheres to the Code of Conduct set forth by all PWL charters.

Chapter details

Lunch meetings held at:Deli Boys - 141 N High St, Columbus, OH 43215

Sign-up: Please RSVP for meetings via Meetup.com

Twitter: @PapersWeLoveCMH

Organizers: Craig Stuntz

Sponsors

Chapter Meetups

Replicated Data Consistency Explained Through Baseball

Map Date/Time: 2020-03-12 11:30am Location: Deli Boys - Columbus

This very easy to read paper explains eventual consistency, strong consistency, and several other distributed consistency models by analogy to baseball.

"Some cloud storage services, like Windows Azure, replicate data while providing strong consistency to their clients while others, like Amazon, have chosen eventual consistency in order to obtain better performance and availability. A broader class of consistency guarantees can, and perhaps should, be offered to clients that read shared data. During a baseball game, for example, different participants (the scorekeeper, umpire, sportswriter, and so on) benefit from six different consistency guarantees when reading the current score. Eventual consistency is insufficient for most of the participants, but strong consistency is not needed either."

You can read the paper for free at:

Read more about this Meetup

The Pragmatic Programmer (20th Anniversary Edition)

Map Date/Time: 2020-02-27 11:30am Location: Deli Boys - Columbus

Papers We Love Columbus, a computer science reading group, is reading The Pragmatic Programmer, 20th Anniversary Edition. From the book site:

"This new edition examines the core of modern software development—understanding what is wanted and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse."

You can get a copy of the book from the book site (below) or most other bookstores. For the 27 February meeting we'll read through the end of the book.

https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition

Come enjoy good lunch and geeky talk with Papers We Love!

Read more about this Meetup

The Pragmatic Programmer (20th Anniversary Edition)

Map Date/Time: 2020-02-13 11:30am Location: Deli Boys - Columbus

Papers We Love Columbus is reading The Pragmatic Programmer, 20th Anniversary Edition. From the book site:

"This new edition examines the core of modern software development—understanding what is wanted and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse."

You can get a copy of the book from the book site (below) or most other bookstores. For the 13 February meeting we'll read through chapter 5.

https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition

Come enjoy good lunch and geeky talk with Papers We Love!

Read more about this Meetup

The Pragmatic Programmer (20th Anniversary Edition)

Map Date/Time: 2020-01-30 11:30am Location: Deli Boys - Columbus

Papers We Love Columbus is reading The Pragmatic Programmer, 20th Anniversary Edition. From the book site:

"This new edition examines the core of modern software development—understanding what is wanted and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse."

You can get a copy of the book from the book site (below) or most other bookstores.

https://pragprog.com/book/tpp20/the-pragmatic-programmer-20th-anniversary-edition

Come enjoy good lunch and geeky talk with Papers We Love!

Read more about this Meetup

Optimizations in C++ Compilers

Map Date/Time: 2019-11-21 11:30am Location: Deli Boys - Columbus

Come have lunch with Papers We Love and enjoy good food and geeky talk. We'll be discussing the article, "Optimizations in C++ Compilers." This article is a journey through some of the more interesting optimizations done by the GCC and Clang compilers, but it's of interest to most developers regardless of the language they use in their day to day work.

https://queue.acm.org/detail.cfm?id=3372264

As always, please feel free to attend if the subject matter interests you, whether or not you read the paper ahead of time. Reading the paper in advance is helpful, but don't let it stop you from coming!

Read more about this Meetup

Unraveling the JPEG

Map Date/Time: 2019-11-07 11:30am Location: Deli Boys - Columbus

Come have lunch with Papers We Love and enjoy good food and geeky talk. We'll be discussing the interactive article, "Unravelling the JPEG." This fairly technical but highly readable article shows you exactly how JPEG images achieve such excellent photo compression without badly degrading the image, and the article is punctuated at regular intervals with interactive editors which allow you to change the values in the file and see the resulting change in the image.

https://parametric.press/issue-01/unraveling-the-jpeg/

As always, please feel free to attend if the subject matter interests you, whether or not you read the paper ahead of time. Reading the paper in advance is helpful, but don't let it stop you from coming!

Read more about this Meetup

BREACH: Reviving the CRIME Attack

Map Date/Time: 2019-10-24 11:30am Location: Deli Boys - Columbus

Come have lunch with Papers We Love and enjoy good food and geeky talk. We'll be discussing the paper "BREACH: Reviving the CRIME Attack," which describes a compression side channel attack on TLS. The authors demonstrate the attack with a proof of concept attack on Outlook Web Access. The paper is quite easy to read, demonstrates both the specific attack and the general class of attacks, and has some thoughts on mitigation.

You can get a free copy of the paper here: http://breachattack.com/resources/BREACH%20-%20SSL,%20gone%20in%2030%20seconds.pdf

As always, please feel free to attend if the subject matter interests you, whether or not you read the paper ahead of time. Reading the paper in advance is helpful, but don't let it stop you from coming!

Read more about this Meetup

Gray Failure: The Achilles’ Heel of Cloud-Scale Systems

Map Date/Time: 2019-10-10 11:30am Location: Deli Boys - Columbus

Come have lunch with Papers We Love and enjoy good food and geeky talk. We'll be discussing the paper "Gray Failure: The Achilles’ Heel of Cloud-Scale Systems," from Microsoft Research. In it, the authors note that the most common failure scenario in cloud-scale systems is not hard failure, but soft failures, which may be only partially detectable, and are much harder to compensate for:

"Cloud scale provides the vast resources necessary to replace failed components, but this is useful only if those failures can be detected. For this reason, the major availability breakdowns and performance anomalies we see in cloud environments tend to be caused by subtle underlying faults, i.e., gray failure rather than fail-stop failure. In this paper, we discuss our experiences with gray failure in production cloud-scale systems to show its broad scope and consequences."

You can get a free copy of the paper here:

Read more about this Meetup

The Phoenix Project

Map Date/Time: 2019-09-26 11:30am Location: Deli Boys - Columbus

Papers We Love is reading a novel this time, but it's a novel about... DevOps?

"Bill, an IT manager at Parts Unlimited, has been tasked with taking on a project critical to the future of the business, code named Phoenix Project. But the project is massively over budget and behind schedule. The CEO demands Bill must fix the mess in ninety days or else Bill's entire department will be outsourced."

As always, please feel free to attend if the subject matter interests you, whether or not you read the book ahead of time. Reading the book in advance is helpful, but don't let it stop you from coming!

Read more about this Meetup

The Phoenix Project

Map Date/Time: 2019-09-12 11:30am Location: Deli Boys - Columbus

Papers We Love is reading a novel this time, but it's a novel about... DevOps?

"Bill, an IT manager at Parts Unlimited, has been tasked with taking on a project critical to the future of the business, code named Phoenix Project. But the project is massively over budget and behind schedule. The CEO demands Bill must fix the mess in ninety days or else Bill's entire department will be outsourced."

For our first meeting, we'll discuss the first three chapters.

As always, please feel free to attend if the subject matter interests you, whether or not you read the book ahead of time. Reading the book in advance is helpful, but don't let it stop you from coming!

Read more about this Meetup

Quantum Computing in the NISQ era and beyond

Map Date/Time: 2019-08-29 11:30am Location: Deli Boys - Columbus

Physicist John Preskill examines the near-term future of quantum computation in this very readable paper. What types of quantum computers are we likely to see in the next 5 or 10 years, and what will they be able to do? What are their limitations, and how do researchers expect to overcome them?

https://arxiv.org/abs/1801.00862

"Noisy Intermediate-Scale Quantum (NISQ) technology will be available in the near future. Quantum computers with[masked] qubits may be able to perform tasks which surpass the capabilities of today's classical digital computers, but noise in quantum gates will limit the size of quantum circuits that can be executed reliably. NISQ devices will be useful tools for exploring many-body quantum physics, and may have other useful applications, but the 100-qubit quantum computer will not change the world right away --- we should regard it as a significant step toward the more powerful quant…

Read more about this Meetup

"Site Reliability Engineering"

Map Date/Time: 2019-08-01 11:30am Location: Deli Boys - Columbus

For our next book, Papers We Love Columbus is starting to read the Site Reliability Engineering book. Each chapter is written and edited by different authors at Google, and the book as a whole examines how Google is able to to build, deploy, monitor, and maintain some of the largest software systems in the world.

You can read the book online for free or order a dead-tree version here: https://landing.google.com/sre/books/

For the 18 July meeting, we'll read Part IV and the conclusion (chapters 28-34). As always, reading the book ahead of the meeting is recommended but not required.

We will also discuss what our next paper or book should be.

Read more about this Meetup

"Site Reliability Engineering"

Map Date/Time: 2019-07-18 11:30am Location: Deli Boys - Columbus

For our next book, Papers We Love Columbus is starting to read the Site Reliability Engineering book. Each chapter is written and edited by different authors at Google, and the book as a whole examines how Google is able to to build, deploy, monitor, and maintain some of the largest software systems in the world.

You can read the book online for free or order a dead-tree version here: https://landing.google.com/sre/books/

For the 18 July meeting, we'll read the second half of Part III (chapters 19-27). As always, reading the book ahead of the meeting is recommended but not required.

Read more about this Meetup

"Site Reliability Engineering"

Map Date/Time: 2019-06-06 11:30am Location: Deli Boys - Columbus

For our next book, Papers We Love Columbus is starting to read the Site Reliability Engineering book. Each chapter is written and edited by different authors at Google, and the book as a whole examines how Google is able to to build, deploy, monitor, and maintain some of the largest software systems in the world.

You can read the book online for free or order a dead-tree version here: https://landing.google.com/sre/books/

For the 6 June meeting, we'll read the first half of Part III (chapters 10-18). As always, reading the book ahead of the meeting is recommended but not required.

Read more about this Meetup

"Site Reliability Engineering"

Map Date/Time: 2019-05-23 11:30am Location: Deli Boys - Columbus

For our next book, Papers We Love Columbus is starting to read the Site Reliability Engineering book. Each chapter is written and edited by different authors at Google, and the book as a whole examines how Google is able to to build, deploy, monitor, and maintain some of the largest software systems in the world.

You can read the book online for free or order a dead-tree version here: https://landing.google.com/sre/books/

For the 9 May meeting, we'll read the first two sections (chapters 1-9). As always, reading the book ahead of the meeting is recommended but not required.

Read more about this Meetup

"Site Reliability Engineering"

Map Date/Time: 2019-05-09 11:30am Location: Deli Boys - Columbus

For our next book, Papers We Love Columbus is starting to read the Site Reliability Engineering book. Each chapter is written and edited by different authors at Google, and the book as a whole examines how Google is able to to build, deploy, monitor, and maintain some of the largest software systems in the world.

You can read the book online for free or order a dead-tree version here: https://landing.google.com/sre/books/

For the 9 May meeting, we'll read the first three chapters. As always, reading the book ahead of the meeting is recommended but not required.

Read more about this Meetup

"A Method for Obtaining Digital Signatures and Public-Key Cryptosystems"

Map Date/Time: 2019-04-25 11:30am Location: Deli Boys - Columbus

We're back!

After a brief hiatus, Papers We Love Columbus is back with this 1978 paper which introduced RSA encryption to the world, and thus fulfilled the vision set forth in "New Directions in Cryptography," a paper by Diffie and Hellman that we read last year.

You can get the paper here: https://people.csail.mit.edu/rivest/Rsapaper.pdf

As a reminder, reading the paper in advance is optional but recommended.

We will also discuss what our next book or paper should be.

Read more about this Meetup

Accelerate: The Science of Lean Software and DevOps

Map Date/Time: 2019-02-28 11:30am Location: Deli Boys - Columbus

This week, we're going to wrap up discussing "Accelerate: The Science of Lean Software and Devops," by Nicole Fosgren, Jez Humble, and Gene Kim.

For the 28 February meeting, let's discuss Part III (just one chapter), skipping Part II, plus the bonus chapter, "How to Transform," available for free download via the book's web site: https://dl.orangedox.com/HowtoTransform

The official site for the book, with purchase links for dead trees, ebook, and audio versions, is https://itrevolution.com/book/accelerate/

Read more about this Meetup

Accelerate: The Science of Lean Software and DevOps

Map Date/Time: 2019-02-14 11:30am Location: Deli Boys - Columbus

This week, we're going to wrap up discussing "Accelerate: The Science of Lean Software and Devops," by Nicole Fosgren, Jez Humble, and Gene Kim.

For the 14 February meeting, let's discuss Part III (just one chapter), skipping Part II, plus the bonus chapter, "How to Transform," available for free download via the book's web site: https://dl.orangedox.com/HowtoTransform

The official site for the book, with purchase links for dead trees, ebook, and audio versions, is https://itrevolution.com/book/accelerate/

Read more about this Meetup

Accelerate: The Science of Lean Software and DevOps

Map Date/Time: 2019-01-31 11:30am Location: Deli Boys - Columbus

The next book we'll discuss is "Accelerate: The Science of Lean Software and Devops," by Nicole Fosgren, Jez Humble, and Gene Kim. The reviews of this book have been over-the-top great. The (fairly short) book is divided into three sections. Part I, "What we found," comprises over half the book and is a narrative list of findings from "a four-year research journey to investigate what capabilities and practices are important to accelerate the development and delivery of software and, in turn, value to companies." Part II describes how the research was conducted. Part III, the shortest, "presents a case study of what is possible when organizations adopt and implement these capabilities in order to drive performance."

For the 31 January meeting, let's finish Part I, reading through chapter 11.

The official site for the book, with purchase links for dead trees, ebook, and audio versions, is https://itrev…

Read more about this Meetup

Accelerate: The Science of Lean Software and DevOps

Map Date/Time: 2019-01-17 11:30am Location: Deli Boys - Columbus

The next book we'll discuss is "Accelerate: The Science of Lean Software and Devops," by Nicole Fosgren, Jez Humble, and Gene Kim. The reviews of this book have been over-the-top great. The (fairly short) book is divided into three sections. Part I, "What we found," comprises over half the book and is a narrative list of findings from "a four-year research journey to investigate what capabilities and practices are important to accelerate the development and delivery of software and, in turn, value to companies." Part II describes how the research was conducted. Part III, the shortest, "presents a case study of what is possible when organizations adopt and implement these capabilities in order to drive performance."

For the 17 January meeting, let's get a copy of the book and read the first part of Part I, say chapters 1-5? There's a lot of time between now and the 17th, so feel free to read ahead if you like.

The official site for the book, with purchase links for dead…

Read more about this Meetup

What is REST, really? "The Design of Network-based Software Architectures"

Map Date/Time: 2018-12-06 11:30am Location: Deli Boys - Columbus

Please join us for lunch and interesting conversations as we discuss the architecture of the web, wrapping up our discussion of Roy Fielding's thesis. As always, reading in advance is encouraged but not required. We would love to talk with you!

This will be our last meeting of 2018! Our next meeting will likely be 17 January 2019. Happy holidays/CodeMash, everyone!

Roy Fielding's PhD thesis ( https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm ), published in the year 2000, was intended to describe and improve the architecture of the then-nascent and burgeoning World Wide Web. Today it's almost equally known (if not always _read_) for Fielding's coinage of the moniker Representational State Transfer (REST). In some ways, this makes its impact doubly significant: It was the best description of the architecture of the web when published, and it is still influencing the evo…

Read more about this Meetup

What is REST, really? "The Design of Network-based Software Architectures"

Map Date/Time: 2018-11-08 11:30am Location: Deli Boys - Columbus

Please join us for lunch and interesting conversations as we discuss the architecture of the web. As always, reading in advance is encouraged but not required. We would love to talk with you!

Roy Fielding's PhD thesis ( https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm ) , published in the year 2000, was intended to describe and improve the architecture of the then-nascent and burgeoning World Wide Web. Today it's almost equally known (if not always _read_) for Fielding's coinage of the moniker Representational State Transfer (REST). In some ways, this makes its impact doubly significant: It was the best description of the architecture of the web when published, and it is still influencing the evolution of the web today.

Today, it's common to (perhaps incorrectly) use the term "REST" to describe something decidedly unlike what Fielding describes in his dissertation, su…

Read more about this Meetup

API Designers in the Field: Design Practices and Challenges

Map Date/Time: 2018-10-11 11:30am Location: Deli Boys - Columbus

The design of APIs is important to programmer productivity, but major disagreements exist on what characterizes a good design, and most API designers learn from experience in the field rather than formal training. By interviewing 24 API design professionals and cross referencing the themes of their conversations, the authors "found interesting insights about how APIs are designed and ways to improve this process." This paper is short, readable, and filled with direct quotes from the interviewees which I think will be helpful conversation starters.

Please join us for lunch downtown and bring your insights from creating and working with APIs.

http://www.cs.cmu.edu/~NatProg/papers/API-Designers-in-the-Field-Preprint.pdf

Here's the abstract:

Application ​Programming Interfaces (APIs) are a rapidly growing industry and the usability of the APIs is cruc…

Read more about this Meetup

A Philosophy of Software Design

Map Date/Time: 2018-09-27 11:30am Location: Deli Boys - Columbus

Our current book is "A Philosophy of Software Design," by Stanford professor John Ousterhout. Ousterhout noted that computer science courses often teach theoretical computer science or specific technologies, but rarely explicitly tackle software design. He decided to offer a class on design, and this thin volume (less than 200 pages) is based on the first few years of teaching the class.

We will discuss the second half of the book (chapters 11-21 -- they are short chapters!), as well as software design in general, on Thursday 27 September, at lunchtime.

As far as I can tell, this book is available only in paperback, and only from Amazon. It's pretty cheap, though. https://www.amazon.com/Philosophy-Software-Design-John-Ousterhout/dp/1732102201/

Read more about this Meetup

A Philosophy of Software Design

Map Date/Time: 2018-09-13 11:30am Location: Deli Boys - Columbus

Our current book is "A Philosophy of Software Design," by Stanford professor John Ousterhout. Ousterhout noted that computer science courses often teach theoretical computer science or specific technologies, but rarely explicitly tackle software design. He decided to offer a class on design, and this thin volume (less than 200 pages) is based on the first few years of teaching the class.

We are currently discussing the first half of the book (chapters 1-10), as well as software design in general, on Thursday 13 September, at lunchtime.

As far as I can tell, this book is available only in paperback, and only from Amazon. It's pretty cheap, though. https://www.amazon.com/Philosophy-Software-Design-John-Ousterhout/dp/1732102201/

Read more about this Meetup

A Philosophy of Software Design

Map Date/Time: 2018-08-30 11:30am Location: Deli Boys - Columbus

The next book we will discuss is "A Philosophy of Software Design," by Stanford professor John Ousterhout. Ousterhout noted that computer science courses often teach theoretical computer science or specific technologies, but rarely explicitly tackle software design. He decided to offer a class on design, and this thin volume (less than 200 pages) is based on the first few years of teaching the class.

We will start discussing the book, as well as software design in general, on Thursday 30 August, at lunchtime. For the first meeting, read roughly the first 3 chapters.

As far as I can tell, this book is available only in paperback, and only from Amazon. It's pretty cheap, though. https://www.amazon.com/Philosophy-Software-Design-John-Ousterhout/dp/1732102201/

Read more about this Meetup

Lessons Learned in Implementing and Deploying Crypto Software

Map Date/Time: 2018-08-16 11:30am Location: Deli Boys - Columbus

Written in 2002, "Lessons Learned in Implementing and Deploying Crypto Software" ( https://www.cs.auckland.ac.nz/~pgut001/pubs/usenix02.pdf ) combines real-world experience implementing and supporting a popular cryptography library with broader observations on programming and security which have aged fairly well:

"In the last five years or so the basic tools for strong encryption have become fairly widespread, gradually displacing the snake oil products that they had shared the environment with until then. As a result, it’s now fairly easy to obtain software that contains well-established, strong algorithms such as triple DES and RSA instead of pseudo one time-pads. Unfortunately, this hasn’t solved the snake oil problem, but has merely relocated it elsewhere.
"The determined programmer can produce snake oil using any crypto tools."

There is a "CliffsNotes" overview at Adrian C…

Read more about this Meetup

SoK: Eternal War in Memory

Map Date/Time: 2018-08-02 11:30am Location: Deli Boys - Columbus

This paper is an excellent introduction to how applications and systems are exploited with memory-based attacks (such as buffer overflows and ROP), and the defenses employed to protect them.

The paper itself is here: https://github.com/papers-we-love/papers-we-love/blob/master/security/sok-eternal-war-in-memory.pdf

There's a "Cliffs Notes" version from Adrian Colyer her: https://blog.acolyer.org/2015/11/30/sok/

We will discuss the paper and memory security in general, and enjoy pizza and sandwiches.

Read more about this Meetup

"New Directions in Cryptography," by Whitfield Diffie and Martin Hellman

Map Date/Time: 2018-07-19 11:30am Location: Deli Boys - Columbus

In 1976, Whitfield Diffie and Martin Hellman published _New Directions in Cryptography,_ a paper which introduced public key encryption and what would be later termed Diffie Hellman Key Exchange to the general public. For their efforts, they were rewarded with an immediate threat of jail, and, later, the ACM Turing Award.

You can read [the original paper](https://ee.stanford.edu/~hellman/publications/24.pdf) as well as [this article about [the NSA's attempt to suppress this paper](https://alumni.stanford.edu/get/page/magazine/article/?article_id=74801).

There's a bit of math in the middle of the paper, but feel free to skip it if you like. The rest of the paper is quite interesting on its own.

Read more about this Meetup

Coordination Breakdowns & their Impact on Development Productivity & Failures

Map Date/Time: 2018-07-05 11:30am Location: Deli Boys - Columbus

For our next lunchtime informal paper discussion, we'll talk about the paper "Coordination Breakdowns & their Impact on Development Productivity & Failures," by Marcelo Cataldo and James D. Herbsleb.

The paper uses empirical review of two large scale software projects to analyze a proposition that changing the way that teams are organized can have a positive effect on overall project productivity by reducing friction due to dependencies, and finds evidence in the affirmative.

Here's part of the abstract.

"The success of software development projects depends on carefully and effectively coordinating the effort of many individuals across the multiple stages of the development process. In software engineering, modularization is the traditional technique intended to reduce the interdependencies among modules that constitute a system. Reducing technical dependencies, the theor…

Read more about this Meetup

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis

Map Date/Time: 2018-06-21 11:30am Location: Deli Boys - Columbus

On Thursday 21 June we'll finish discussing Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis (https://pragprog.com/book/atevol/software-design-x-rays). If you have the book, we're reading the rest of it. If not, come chat with us anyway!

We will also discuss our next reading. I'm thinking it might be interesting to read a security-focused paper. Bring your ideas to the meetup!

Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that’s just for starters. Because good code involves social design, as well as technical design, you can find surprising dependencies between people and code to resolve coordination bottlenecks among teams. Best of all…

Read more about this Meetup

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis

Map Date/Time: 2018-05-24 11:30am Location: Deli Boys - Columbus

On Thursday 24 May we'll start discussing Part II of Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis (https://pragprog.com/book/atevol/software-design-x-rays). If you have the book, read up through chapter 10. If not, come chat with us anyway!

As this meeting occurs during Ramadan I should note that it's pretty common for people to join our table without ordering food/drinks. Deli Boys is super friendly and has never tried to make every single person order. We welcome anyone interested in discussing computer science!

Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that’s just for starters. Because good code involves social design, as wel…

Read more about this Meetup

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis

Map Date/Time: 2018-05-10 11:30am Location: Deli Boys - Columbus

On Thursday 10 May we'll discuss Part I of Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis (https://pragprog.com/book/atevol/software-design-x-rays). Join us for lunch and conversation.

Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that’s just for starters. Because good code involves social design, as well as technical design, you can find surprising dependencies between people and code to resolve coordination bottlenecks among teams. Best of all, the techniques build on behavioral data that you already have: your version-control system. Join the fight for better code!

Read more about this Meetup

Processing.js and Software Design X-Rays

Map Date/Time: 2018-04-26 11:30am Location: Deli Boys - Columbus

There are two bits of reading on the agenda for the next meeting.

We're going to go back to our last title, The Art of Open Source Applications, Volume 2, for an extra chapter that we didn't cover the first time 'round, on Processing.js.

You can read it for free online.

Second, we'll start talking about Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis in earnest. Please read up through chapter 3. 

Read more about this Meetup

Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis

Map Date/Time: 2018-04-12 11:30am Location: Deli Boys - Columbus

CHANGE OF SCHEDULE: No meeting Thursday 29 March.

On Thursday 12 April we'll start discussing Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis. Join us for lunch and conversation.

Are you working on a codebase where cost overruns, death marches, and heroic fights with legacy code monsters are the norm? Battle these adversaries with novel ways to identify and prioritize technical debt, based on behavioral data from how developers work with code. And that’s just for starters. Because good code involves social design, as well as technical design, you can find surprising dependencies between people and code to resolve coordination bottlenecks among teams. Best of all, the techniques build on behavioral data that you already have: your version-control system. Join the fight for better code!

Read more about this Meetup

John Carmack Tech Talk with UMKC-SCE

Map Date/Time: 2018-03-15 11:30am Location: Deli Boys - Columbus

For our next meetup, we're doing something different! Let's watch a technical talk from John Carmack, cofounder of id Software.

He'll discuss systems engineering and how to make stuff fast. A high tolerance for cargo pants is required.

Watch the video on YouTube.

Read more about this Meetup

Reflections on Trusting Trust

Map Date/Time: 2018-03-01 11:30am Location: Deli Boys - Columbus

Ken Thompson's short Turing Award lecture asserts convincingly that it's even harder to trust programs than it is to trust people. If you thoroughly analyze source code and compile it yourself, do you get a trusted executable? Surprisingly, no!

The whole (3 pages! paper)

An even shorter summary.

Read more about this Meetup

The Architecture of Open Source Applications, Vol. II: nginx, Puppet, and Yesod

Map Date/Time: 2018-02-15 11:30am Location: Deli Boys - Columbus

We're going to discuss chapter 14 (nginx), chapter 18 (Puppet) and chapter 22 (Yesod). We can talk about which projects we'd like to discuss for the next meeting. I tweeted out a summary of all of them (https://twitter.com/PapersWeLoveCMH/status/952759296680431616).

Read more about this Meetup

Architecture of Open Source Applications: GDB, Glasgow Haskell Compiler, & PyPy

Map Date/Time: 2018-02-01 11:30am Location: Deli Boys - Columbus

We're going to discuss chapter 4 (gdb), chapter 5 (Glasgow Haskell Compiler) and chapter 19 (PyPy). We can talk about which projects we'd like to discuss for the next meeting. I tweeted out a summary of all of them (https://twitter.com/PapersWeLoveCMH/status/952759296680431616).

Read more about this Meetup

Architecture of Open Source Applications: Scalable Web, Firefox Releases, & git

Map Date/Time: 2018-01-18 11:30am Location: Deli Boys - Columbus

We're going to discuss chapter 1 (scalable web applications), chapter 2 (Firefox release engineering) and chapter 6 (git). We can talk about which projects we'd like to discuss for the next meeting. I tweeted out a summary of all of them.

Read more about this Meetup

The Architecture of Open Source Applications, Volume II

Map Date/Time: 2018-01-04 11:30am Location: Deli Boys - Columbus

We're going to start discussing a new book, The Architecture of Open Source Applications, Volume II. Most reviews seem to indicate that it's the best of the series. You can read the book for free online or download electronic versions, also free. If you choose to buy the book, the profits go to Amnesty International.

Since I'm super-late in scheduling this, there is no chapter assignment. Just take a look at the book and come with ideas about which chapters seem interesting to you. All reviews indicate that some chapters are much more interesting than others, so we may not end up reading the whole thing.

For anyone who has never attended before, this meetup is a highly informal lunch meeting where we eat pizza/sandwiches and chat about books. You're welcome to attend even if you haven't read in advance; it'…

Read more about this Meetup

"Can Programming Be Liberated from the Von Neumann Style?" by John Backus

Map Date/Time: 2017-12-07 11:30am Location: Deli Boys - Columbus

Our meetings always get a little spotty around the holidays. We've decided not to have a meeting on Thanksgiving day, for obvious reasons, so the next meeting is going to be on 7 December at 11:30 a.m., when we'll discuss "Can Programming Be Liberated from the Von Neumann Style?" (free PDF link) by John Backus.

It's an interesting paper for many reasons: Are you programming in "the Von Neumann style?" What are the alternatives? Backus presents a notion of "functional programming" which is decidedly different than how many people use that phrase.

At 30 or so pages, this paper is a bit longer than the others we've read, but it's also considerably more technical. If you find the algebra in the middle a bit much, you can get the general sense of the paper by reading sections 1-10 and 15-16 and skipping the rest. The full paper is worth reading, but please don't let the math drive y…

Read more about this Meetup

Lunch: Machine Learning: The High Interest Credit Card of Technical Debt

Map Date/Time: 2017-11-09 11:30am Location: Deli Boys - Columbus

Important: We're skipping 26 October. Our next meetup is on 9 November, with a new paper!

On our next lunch meetup, we're going to discuss Machine Learning: The High Interest Credit Card of Technical Debt, an interesting paper from a team of Google researchers demonstrating that use of machine learning has many costs as well as benefits. Beyond having one of the catchier titles in the history of computer science papers, the paper will keep your attention from beginning to end, an easy read with a great summary of real world experience maintaining large machine learning systems.

Machine learning offers a fantastically powerful toolkit for building complex systems quickly. This paper argues that it is dangerous to think of these quick wins as coming for free. Using the framework of technical debt, we note that it is remarkably easy to incur massive ongoing maintenance costs at the system level whe…

Read more about this Meetup

Papers We Love Lunches: The Humble Programmer

Map Date/Time: 2017-10-12 11:30am Location: Deli Boys - Columbus

Important: We're switching the meeting to Thursday to allow new members to attend. New day!

On our next lunch meetup, we're going to discuss Edsger W. Dijkstra's Turing Award lecture, The Humble Programmer. This short paper is a very easy read and serves as a good introduction to Dijkstra's style and worldview.

The paper is available for free in both plain text and typeset PDF versions.

Please consider joining us for lunch downtown and interesting conversation. See you there!

Read more about this Meetup

Papers We Love Lunches: The Humble Programmer

Map Date/Time: 2017-10-12 11:30am Location: Deli Boys - Columbus

Important: We're switching the meeting to Thursday to allow new members to attend. New day!

On our next lunch meetup, we're going to discuss Edsger W. Dijkstra's Turing Award lecture, The Humble Programmer. This short paper is a very easy read and serves as a good introduction to Dijkstra's style and worldview.

The paper is available for free in both plain text and typeset PDF versions.

Please consider joining us for lunch downtown and interesting conversation. See you there!

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-09-28 11:30am Location: Deli Boys - Columbus

Important: We're switching the meeting to Thursday to allow new members to attend. New day!

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

On 27 September we'll discuss the interview with Peter Naur and the closing chapter of the book. It is not required to read the book before attending the group, but it's a good read and I think you'll like it!

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what ex…

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-09-13 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

On 13 September we'll discuss chapter 6, the interview with Barbara Liskov. It is not required to read the chapter before attending the group, but it's a good read and I think you'll like it!

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what extent did Dijkstra and others depend on Turing’s accomplishments? This book presents a revealing synthesis for the modern sof…

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-08-30 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

On 16 August we'll discuss chapter 5, the interview with Niklaus Wirth. It is not required to read the chapter before attending the group, but it's a good read and I think you'll like it!

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what extent did Dijkstra and others depend on Turing’s accomplishments? This book presents a revealing synthesis for the modern softwar…

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-08-16 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

On 16 August we'll discuss chapter 4, the interview with Tony Hoare. It is not required to read the chapter before attending the group, but it's a good read and I think you'll like it!

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what extent did Dijkstra and others depend on Turing’s accomplishments? This book presents a revealing synthesis for the modern software e…

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-08-02 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

Please note we're skipping 19 July and the next meeting is 2 August.

On 2 August we'll discuss chapters 1-3. The introduction, an examination of Turing's influence on programming, and "Djikstra's Rallying Cry for Generalization"

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what extent did Dijkstra and others depend on Turing’s accomplishments? This book prese…

Read more about this Meetup

Papers We Love Book Club: The Dawn of Software Engineering

Map Date/Time: 2017-07-05 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Dawn of Software Engineering: from Turing to Dijkstra as our next book.

Contrary to what many believe, Alan Turing’s legacy lies more in programming after his death than in computer building during his lifetime. Turing’s ‘universal machine’ helped programming language designers see the wood for the trees. Later, problems unsolvable with a computer influenced experienced programmers, including Edsger W. Dijkstra.
Dijkstra’s pioneering work shows that both unsolvability & aesthetics have practical relevance in software engineering. But to what extent did Dijkstra and others depend on Turing’s accomplishments? This book presents a revealing synthesis for the modern software engineer and, by doing so, deromanticizes Turing’s role in history.
How did the idea of machine independence enter the emerging field of software engineering? What does it have to do…

Read more about this Meetup

Papers We Love Book Club: Time to Pick a New Book

Map Date/Time: 2017-06-21 11:30am Location: Deli Boys - Columbus

We're finishing The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change, by Camille Fournier, and it's time to pick a new book.

Folks who enjoyed Camille's book might also like the article Etsy Lessons, by Laura Hogan. We can talk about that, as well.

The most highly-voted books on our Trello board are The Dawn of Software Engineering: from Turing to Dijkstra, by Edgar G. Daylight and The Elements of Computing Systems: Building a Modern Computer from First Principles, by Noam Nisan.

Hope to see you Wednesday!

Read more about this Meetup

Papers We Love Book Club: The Manager's Path

Map Date/Time: 2017-06-07 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change, by Camille Fournier.

Managing people is difficult wherever you work. But in the tech industry, where management is also a technical discipline, the learning curve can be brutal—especially when there are few tools, texts, and frameworks to help you. In this practical guide, author Camille Fournier (tech lead turned CTO) takes you through each stage in the journey from engineer to technical manager.

From mentoring interns to working with senior staff, you’ll get actionable advice for approaching various obstacles in your path. This book is ideal whether you’re a new manager, a mentor, or a more experienced leader looking for fresh advice. Pick up this book and learn how to become a better manager and leader in your organization.

Begin by exploring what you expect from a …

Read more about this Meetup

Papers We Love Book Club: The Manager's Path

Map Date/Time: 2017-05-24 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change, by Camille Fournier. This coming Wednesday we'll discuss chapters 1-6.

Managing people is difficult wherever you work. But in the tech industry, where management is also a technical discipline, the learning curve can be brutal—especially when there are few tools, texts, and frameworks to help you. In this practical guide, author Camille Fournier (tech lead turned CTO) takes you through each stage in the journey from engineer to technical manager.

From mentoring interns to working with senior staff, you’ll get actionable advice for approaching various obstacles in your path. This book is ideal whether you’re a new manager, a mentor, or a more experienced leader looking for fresh advice. Pick up this book and learn how to become a better manager and leader in your organization.

Read more about this Meetup

Papers We Love Book Club: The Manager's Path

Map Date/Time: 2017-05-10 11:30am Location: Deli Boys - Columbus

Papers We Love's book club has selected The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change, by Camille Fournier. On Wednesday 10 March we will talk about the first three chapters.

Managing people is difficult wherever you work. But in the tech industry, where management is also a technical discipline, the learning curve can be brutal—especially when there are few tools, texts, and frameworks to help you. In this practical guide, author Camille Fournier (tech lead turned CTO) takes you through each stage in the journey from engineer to technical manager.

From mentoring interns to working with senior staff, you’ll get actionable advice for approaching various obstacles in your path. This book is ideal whether you’re a new manager, a mentor, or a more experienced leader looking for fresh advice. Pick up this book and learn how to become a better manager and leader in your organ…

Read more about this Meetup

Papers We Love Book Club: Grokking Algorithms

Map Date/Time: 2017-04-26 11:30am Location: Deli Boys - Columbus

The book club is currently Grokking Algorithms, by Aditya Y. Bhargava. This week we'll discuss the chapters on Dynamic Programming, KNN, and "Where to Go Next." 

We'll also discuss which book we'll read next. As always, you can check out our reading backlog and vote there.

Read more about this Meetup

Papers We Love Book Club: Grokking Algorithms

Map Date/Time: 2017-04-12 11:30am Location: Deli Boys - Columbus

The book club is currently reading  Grokking Algorithms, by Aditya Y. Barbara. Thus week, we'll discuss the chapters on Dijkstra's algorithm and greedy algorithms. 

It's easy to understand these chapters even if you have not read the chapters which precede them, so please don't hesitate to join the discussion even if you have not attended previously. 

Please consider joining us for lunch downtown and interesting conversation. See you there!

Read more about this Meetup

Papers We Love Book Club: Grokking Algorithms

Map Date/Time: 2017-03-29 11:30am Location: Deli Boys - Columbus

The book club is currently reading Grokking Algorithms, by Aditya Y. Bhargava.

This week we'll discuss the chapters on QuickSort, Hash Tables, and Breadth-first search.

Come enjoy good code, good talk, and good food!

Read more about this Meetup

Papers We Love Book Club: Grokking Algorithms

Map Date/Time: 2017-03-15 11:30am Location: Deli Boys - Columbus

The book club has selected Grokking Algorithms, by Aditya Y. Bhargava, as our next title, and it's a good one!

This week we will discuss chapters 1-3.

Please consider joining us for lunch downtown and interesting conversation. See you there!

Read more about this Meetup

Papers We Love Book Club: Grokking Algorithms

Map Date/Time: 2017-03-01 11:30am Location: Deli Boys - Columbus

The Downtown Developers Book Club and Papers We Love Columbus are both reading groups for people interested in computer science, and somehow I ended up with the logins for both of them, so I'm merging the two so that I only have one group to administer. 

I'd like to do an evening meetup later this year about a computer science research paper, as is usual for PWL, so don't fear we're going soft on you. :)

The book club has selected Grokking Algorithms, by Aditya Y. Bhargava, as our next title, and it's a good one!

Please consider joining us for lunch downtown and interesting conversation. See you there!

Read more about this Meetup

Craig Stuntz on "Computing Arbitrary Functions of Encrypted Data"

Map Date/Time: 2015-02-24 06:00pm Location: Franklin University, Phillips Hall 220 - Columbus

Online tax preparation or financial advice sounds like a viable business, but "secure" sites are broken every day. Consumers are rightly wary of disclosing their personal information to cloud-based service providers. How can you build a service which delivers real value and is backed by a hard, cryptographic guarantee of security?

What if it were possible for a customer to give their data to a cloud provider in encrypted form, and for that provider to perform useful computations on that data without ever decrypting it? The results would be delivered to the customer, encrypted with a key that only they knew. It sounds like an ideal solution, but maybe impossible?

This is the promise of homomorphic encryption. The idea has been around for some time, but it was considered intriguing but maybe not possible until Craig Gentry's groundbreaking thesis. Gentry later published a much more accessible paper called "Computing Arbitrary Functions of Encrypted Data".

Read more about this Meetup

Out of the Tar Pit

Map Date/Time: 2014-07-22 06:00pm Location: Improving Enterprises - Columbus 43219

Do a web search for "Out of the Tar Pit," and you'll find 1) the paper itself and 2) a long list of "top 10 papers every programmer should read" type blog posts citing it. The premise of the paper is certainly ambitious: Explain why developing and maintaining large software systems is hard, and how to fix it. 

Amazingly, this 10 year old paper mostly delivers. Perhaps even more surprisingly, however, its clear explanation, high citation count, and relatively straightforward prescription for dealing with complexity have not translated into a correspondingly large influence on mainstream programming tools and frameworks (with certain notable exceptions, such as the Clojure community). 

In a sense, then, reading the paper informs us not only of the authors' strategy for building large, maintainable systems, but of our own community's ability to digest useful b…

Read more about this Meetup

Paper Swap and Organizational Meeting

Map Date/Time: 2014-06-17 06:00pm Location: Improving Enterprises - Columbus 43219

Thanks for your interest in Papers We Love Columbus! 

For the first meeting we expect to spend some time getting logistical kinks worked out, so rather than trying to recruit a legendary speaker to present a difficult paper, we are making the meeting pretty informal. 

This is a chance to meet people in Columbus interested in computer science research and to begin to plan the future of the group. Please bring along a copy of a paper you've enjoyed to give away, and you can leave with a copy of someone else's favorite!

I'll try to organize food if enough people RSVP. 

Read more about this Meetup