John Goerzen

  • @jgoerzen

Areas of Expertise:

  • Linux
  • programming
  • software development
  • version control
  • git
  • darcs
  • Haskell
  • Python
  • shell
  • TCP/IP
  • networking
  • storage
  • consulting
  • speaking
  • programming
  • training
  • writing
John Goerzen is an American hacker and author. He has written a number of real-world Haskell libraries and applications, including the HDBC database interface, the ConfigFile configuration file interface, a podcast downloader, and various other libraries relating to networks, parsing, logging, and POSIX code. John has been a developer for the Debian GNU/Linux operating system project for over 10 years and maintains numerous Haskell libraries and code for Debian. He also served as President of Software in the Public Interest, Inc., the legal parent organization of Debian. John lives in rural Kansas with his wife and son, where he enjoys photography and geocaching.

Real World Haskell Real World Haskell
by Bryan O'Sullivan, John Goerzen, Donald Bruce Stewart
November 2008
Print: $49.99
Ebook: $39.99

John blogs at:

I Give Up on Google: Free is Too Expensive

May 06 2015

I am really tired of things Google has done lately. The most recent example being retiring Classic Maps. That’s a problem, because the current Maps mysteriously doesn’t show most of my saved (“starred”) places. Google has known about this since at least 2013. There are posts all over their forums… read more

Security Dashboards – Where to Start

May 06 2015

I just got off a call with a client and they asked me what they should put on their security dashboards. It’s a nice continuation of the discussion of the SOC Overhead Dashboard. Here are some thoughts. The list stems from a slide that I use during the Visual Analytics… read more

The Security Big Data Lake – Paper Published

May 06 2015

As announced in the previous blog post, I have been writing a paper about the security big data lake. A topic that starts coming up with more and more organizations lately. Unfortunately, there is a lot uncertainty around the term so I decided to put some structure to the discussion.… read more

Big Data Lake – Leveraging Big Data Technologies To Build a Common Data Repository For Security

May 06 2015

Information security has been dealing with terabytes of data for over a decade; almost two. Companies of all sizes are realizing the benefit of having more data available to not only conduct forensic investigations, but also pro-actively find anomalies and stop adversaries before they cause any harm. UPDATE: Download the… read more

Dashboards in the Security Opartions Center (SOC)

May 06 2015

I am sure you have seen those huge screens in a security or network operations center (SOC or NOC). They are usually quite impressive and sometimes even quite beautiful. I have made a habit of looking a little closer at those screens and asking the analysts sitting in front of… read more

AfterGlow 1.6.5 – Edge Labels

May 06 2015

A new version of AfterGlow is ready. Version 1.6.5 has a couple of improvements: 1. If you have an input file which only has two columns, AfterGlow now automatically switches to a two-node mode. You don’t have to use the (-t) switch explicitly anymore in this case! (I know, it’s… read more

A New and Updated Field Dictionary for Logging Standards

May 06 2015

If you have been interested and been following event interchange formats or logging standards, you know of CEF and CEE. Problem is that we lost funding for CEE, which doesn’t mean that CEE is dead! In fact, I updated the field dictionary to accommodate some more use-cases and data sources.… read more

Using Impala and Parquet to Analyze Network Traffic – VAST 2013 Challenge

May 06 2015

As I outlined in my previous blog post on How to clean up network traffic logs, I have been working with the VAST 2013 traffic logs. Today I am going to show you can load the traffic logs into Impala (with a parquet table) for very quick querying. First off,… read more

Cleaning Up Network Traffic Logs – VAST 2013 Challenge

May 06 2015

I have spent some significant time with the VAST 2013 Challenge. I have been part of the program committee for a couple of years now and have seen many challenge submissions. Both good and bad. What I noticed with most submissions is that they a) didn’t really understand network data,… read more

Cyber Security Monitoring Still Full of Challenges

May 06 2015

I was greatly honored when I got an invitation from the Conference on Knowledge Discovery and Data Mining (KDD) to give a talk about data mining and cyber security. Knowing me, you might be able to guess the topic I chose to present: Visual Analytics. I am focussing on not… read more

Rockstars Use a Good Text Editor – I Use VIM

May 06 2015

Those of you who know me most likely know that I am quite the VIM fan. At any time, there is at least one VIM window open on my computer. I just like the speed of editing and the flexibility it offers. I even use VI bindings in my UNIX… read more

Signals from Strata + Hadoop World 2015 in London

May 06 2015

People from across the data world are coming together this week for Strata + Hadoop World 2015 in London. Below we’ve assembled notable keynotes, interviews, and insights from the event. Shazam already knows the next big hit “With relative accuracy, … read more

"I would recommend this book to anyone serious about learning Haskell or becoming better at functional programming. The authors do an excellent job of conveying why Haskell does things in certain ways, which leads to a better understanding of the language."
--Michael Dumont, Computer Science House

"Real World Haskell is the first Haskell introduction I've read that actually helped me understand why anyone would want to use the language. The focus on programming methods instead of just syntax made it much easier to think of practical applications for the language."
--Byron Clark,

"This is one of the best programming books that came out in recent years regardless of language."
--Gregory Knapen,

"I tried to learn Ocaml or Haskell before but was put off by the books available. This book is really different. It made me love Haskell."
--Emad S. Mohamed "Nawfal",

"For those who know a conventional language, this book will make you fall in love with Haskell."
--David Crawshaw,

"The book is a must-read for not only people who would specifically like to learn Haskell, but for any programmer who is open to new ways of thinking about computing. "
--Evgeny Kirpichov,

"The hardest problems in modern software lie in performance, modularity, reliability, and concurrency. With Real World Haskell, the authors do a great job of teaching how to tackle each of these problems with Haskell, a language that is generations ahead of today's mainstream."
--Tim Sweeney, founder of Epic Games, and designer of the Unreal game engine

"...this book will expand your mind. It will give you a new way of thinking about the whole enterprise of programming: when you have worked through these pages, you'll write better code in your current favourite language."
--Simon Peyton Jones, Microsoft Research, Haskell language architect and designer of the Glasgow Haskell Compiler

"This book is exactly what's needed--a deep and comprehensive guide, covering everything from fundamentals to a wealth of advanced topics, aimed at experienced programmers who want to harness Haskell's power to get the job done. I will be using it in my Advanced Programming classes from now on."
--Benjamin Pierce, Professor, Department of Computer and Information Science, University of Pennsylvania, author of Types and Programming Languages