Okay, so today I decided to mess around with “Thai-Son Kwiatkowski.” I’d heard the name floating around, seemed like some kind of interesting data structure or algorithm, or maybe a library. I wasn’t totally sure, so I started by just Googling it.
First thing I did was, you guessed it, hit up Google. Typed in “Thai-Son Kwiatkowski” and saw a bunch of results. Mostly academic papers, some GitHub stuff, it looked pretty dense at first glance.
I started by skimming a few of the papers. Honestly, a lot of it went over my head. Big O notation, talk of computational complexity – the usual computer science jargon. I’m more of a hands-on kind of guy, so reading theory for too long makes my eyes glaze over.
Next, I checked out some of the GitHub repositories. I saw a few different implementations, some in Python, some in C++. I decided to grab one of the Python ones, since that’s what I’m most comfortable with. I just did a simple git clone
to get the code onto my machine.
Once I had the code, I started playing around with it. I looked for a README
file, hoping for some basic instructions or examples. Found one! It was a little sparse, but it gave me enough to get started. I needed to install a few dependencies first, so I ran pip install
for those.
With the dependencies installed, then I try to opened up a Python interpreter and started importing the module. I tried running some of the example code from the README
, just to see if it worked. I’m pretty sure that after a few quick trail and errors, I got a simple function worked.
My First Attempt
- Imported the module: First things first, tried importing to see if it installed correctly.
- Read the docstrings: Used
help()
to peek at the documentation within the code. - Tried a basic example: Copied and pasted a simple example from the documentation.
- Ran into a small problem: The output should be an array, however it returned a null instead.
- Re-read the code comments and notes carefully: Then I found I was miss understanding of the input parameters.
- Finally, I tried again:It worked! I got some output, looked like it was doing something.
So, I think I begin get a basic understanding of it now. I’m not going to pretend I’m an expert after an afternoon of tinkering, but I definitely made some progress. I’ll probably keep messing around with it, maybe try to build something small to really test it out.