Welcome. Have fun!

I don’t want to write a program

// bash

By: bill

It was one of those times, I did not want to write a program to parse another program’s output. I was alright Googling around for bash stuff for 10 minutes or so. Here is what I came up with.

An intro to DPDK for mortals

// dpdk, c, ip

By: bill

DPDK can be a bit intimidating even if this is not your first time writing C network code. In this (rather long) post, I aim to offer a step by step introduction to DPDK; from understanding its usefulness, to setting up the environment and up to finally writing a small program that uses the library. Take your time with the links, the steps and the commands; don’t overwhelm yourself. See you on the other side!

SDES in Scala

// scala, cryptography

By: bill

Implementing Simplified Data Encryption Standard in Scala

(I intended for this blog post to be a full explanation of my SDES implementation, but it got too long too fast. Therefore, in this post I focused mostly on the binary number representation and didn’t analyze other topics such as the test suite and the class hierarchies, topics that I will maybe address in a future post —probably never)

Intro

DES is a symmetric algorithm for encrypting data. Simplified DES or SDES, as I will refer to it from now on, is a simple version of DES, which is used to familiarize the students with the inner workings of the algorithm without getting too involved with details. I happened to implement it for a semester course project and below are some of my thoughts.

The Power Of Abstraction

// theory

By: bill

A simple demonstration

You are outside a restaurant. You get in and sit at a table. The waiter brings you the menu and you choose a steak. You tell the waiter about your decision and after some time (hopefully not too much) the waiter brings a steak to your table. You eat the steak and leave.

The first blog post

// ip, scala, python

By: bill

Undestanding frog (by doing something else)

I will try to write a function to convert a bit-stream (in the form of a string) to its representation as an IPv4 address.

The catch is, the code must be as concise as possible.