Skip to main content


TCPdump is one of my favorite network packet analysis tools in existence today.  In the past year I have enjoyed TCPdump so much that I have wanted to learn more about the project.  So, I thought a good place to start would be to get involved contributing on GitHub.  My contributions are not much, but they help me learn the ins and outs of the project and how to use some of the more advanced features as I come up in issues or pull requests.  During my time thus far I have noticed that a lot of filtering questions tend to come up on how to use filters or how to interpret the documentation fo

What’s new in Python is a news feed of articles, trends, and stories happening in the Python open source ecosystem.  All of the topics in this article are hand picked from sources such as Github,, Twitter, and of course, This latest issue focuses on making PyMem_Malloc thread safe, enabling TCP_NODELAY, updating OpenSSL across Windows and macOS, an asyncio fix for KeyboardInterrupt on Windows, a time.time testing bug was discovered on Build Bot, the voting results of PEP 8016, and lastly dual stack address support for IPv4 and IPv6 sockets.


What’s new in Python is a news feed of articles, trends, and stories hand picked by me on what is happening in the Python open source ecosystem.  All of the topics in this article have been hand picked from sources such as Github,, Twitter, and of course, This latest issue focuses on adding IPv6 support while testing http.server, C API Changes, fork() as a bug on macOS Mojave, voting for the new Python governance model, and Platform.popen() being dropped on older Windows platforms.

Python just received a minor version update to Python 3.7 with many new performance enhancements, added features, and module improvements to the language.   One of the existing Python modules in 3.7 that received some nice new enhancements is the ssl module. The updated ssl module now has enhanced hostname support, updates to how blacklisting and whitelisting work, but most importantly, conditional support for TLS 1.3 connections.

Python is about to get a nice new update with many new feature enhancement, performance improvements, and redesigned modules with the release of Python 3.7.  At the time of writing this article a release candidate is available today by visiting CPython's github page and checking out branch 3.7. In this two part series I am writing about two updates to Python 3.7 that I feel will benefit the language in regards to networking.  In this article I will be writing about the additions to the Python socket module because I am networking guy!

When the Swift language went into development one of the goals it set out to achieve was to provide a better developer experience than the one that currently existed and to provide long term support against legacy C and Objective-C APIs.   Now that these goals have been achieved the Swift community is widening it's support to working with dynamic languages such as Python, Ruby, JavaScript, and Perl in Swift 4.2's language addition for Dynamic Member Lookups.  Providing support for these

So there you are, you just finished the last lines of code needed to complete a ticket on one of the big features of your application.  Now what?  Submit a pull request and have your team review it?

Over the last 6 months I have noticed a lot of code going into CPython working with SSL and TLS.  At first I did not think anything commits and brushed it off as bug fixes and improvements.  However, as the months went by and I kept seeing these commits come through it started to get my curiosity piqued about what might be happening in language under the hood.

If you are like me and sometimes you forget the syntax on how to sort a list of custom objects by property then this tutorial is for you.  It seems like there is always a need to sort and manipulate custom objects by property and that was my why I wanted to write this tutorial.  To demonstrate how to take a custom list of objects and sort those objects by a specific property.  In the case of this tutorial I have chosen to use a date property because sorting by date is a very real world example of something you may run into in the work place, but the same code would also work for numbers or

If you have ever wanted to know how to open a file using Python, but were unsure of the syntax, or exactly how Python works with files, then this tutorial is aimed at you.  This tutorial aims to walk you through the basics of how to use Python to open a file using two different real world scenario's.  The first scenario I walk through how to use Python to open a file from the command line using the file as a command line argument passed in from STDIN.  The second scenario I use Python to open a file that is referenced from a file path anywhere in your program.