JJ's World

Using Faker to generate events

Tue 29 October 2019

A simple introduction to create fake data using the Faker tool in Python. Very convenient if you need to generate dummy data for an experiment.

Read more →
notebook faker testing generator Python Jupyter

Moving from `unittest` to `pytest`

Thu 17 October 2019

In my two previous articles Unittesting in a Jupyter notebook and Mocking in unittests in Python I have discussed the use of unittest and mock to run tests for a simple Castle and Character class. For the code behind this article please check Github.

Read more →
Python testing unittest pytest mock

Using SFTP with Spark

Fri 02 August 2019

A simple showcase of how to use SFTP together with Spark. By using Spark I can read the files directly into a Spark RDD. Reading big files was failing for me when I was using plain Python with pysftp.

Read more →
notebook Spark PySpark Python Jupyter SFTP Data Engineering

Creating abstract classes with Lambda and Terraform

Fri 26 July 2019

In this article I will create an abstract class and different concrete classes to be used within AWS Lambda deployed with Terraform.

Read more →
DevOps AWS data engineer Terraform Lambda IaC OOP

Find and delete empty columns in Pandas dataframe

Sun 07 July 2019
# Find the columns where each value is null
empty_cols = [col for col in df.columns if df[col].isnull().all()]
# Drop these columns from the dataframe
df.drop(empty_cols,
        axis=1,
        inplace=True)
Python pandas

Setting up Spark with minIO as object storage

Sun 30 June 2019

To setup one of my data projects, I need (object) storage to save my data. Using Spark I want to be able to read and write Parquet, CSV and other file formats.

Read more →
DevOps Ansible data engineer VPS Ubuntu Spark minIO object storage

Creating an Ansible playbook to provision my Ubuntu VPS

Wed 26 June 2019

My first experiment with Ansible to automate the provisioning of my server.

Read more →
DevOps Ansible data engineer VPS Ubuntu Spark Jupyter

Creating a Lambda function with Terraform to upload a Looker view

Mon 13 May 2019

A simple Terraform deployment of a Lambda function that exports a Looker view to S3.

Read more →
DevOps AWS data engineer Terraform Lambda IaC

Interacting with AWS Glue

Tue 02 April 2019

In this notebook I interact with AWS Glue using boto3.

Read more →
notebook AWS Python Jupyter Glue

Creating a data range with Python

Fri 08 March 2019

In this notebook I create a date range with a precision of days and a date range with a precision of a month using datetime with timedelta. This has helped me for automating filtering tasks, where I had to query data each day for a certain period and write te results to timestamped files.

Read more →
notebook Python Jupyter date generation daterange
← Older
Newer →

I'm Jitse-Jan, a data lead based in London working across data platforms, orchestration, and analytics engineering: dbt, Dagster, Snowflake, dlt, and DuckDB, with Python underneath most of it.

Lately that also means working AI-assisted day to day, using Claude alongside a structured note-taking setup to keep multiple projects straight.

This blog goes back to 2016. There's a real gap in the middle, a long stretch of heads-down client work rather than writing, but the interest never stopped, and the more recent posts pick up where the site left off.

I use this page as a portfolio, cheatsheet, and historical record. Expect shell commands, working examples, and write-ups of things I built, mostly so I don't have to reinvent the wheel next time.


  • S3
  • javascript
  • Ethereum
  • blockchain
  • MongoDB
  • data engineer
  • shell
  • PySpark
  • Pandas
  • dataframe
  • Docker
  • DevOps
  • Spark
  • AWS
  • Ubuntu
  • notebook
  • Jupyter
  • Python

© JJ's World | Powered by Pelican | Hosted on Cloudflare Pages | 2008 - 2026