Photo by Rauf Allahverdiyev from Pexels

The Pomodoro Technique is a time management method developed by Italian Francesco Cirillo in which a timer is used to break work into time periods separated by breaks. Each time period is called a pomodoro — Cirillo used a tomato shaped kitchen timer, and “tomato” in Italian is “pomodoro”.

M5Stack is a company that makes a fascinating range of modular IoT devices and I’d wanted to try one for a while. I decided to start with their Core Ink product. I bought mine from Pimoroni, M5Stack also sell them direct.

This is a really nice self-contained unit with some buttons…


Sheep!

In this talk that I produced for Pycon USA 2021 I take a look at the Hyperloglog and Bloom Filter probabilistic data structures, using examples with the Python language and Redis with the RedisBloom module.

You can watch the video here, the article that follows is a transcript of the talk:

My slides are available as a PDF document here. If you’d like to try this out for yourself, get my code from Github.

Introduction

Hello! My name’s Simon Prickett, and this is “No, Maybe and Close Enough” where we’re going to look at some Probabilistic Data Structures with Python.


Express is a popular framework for Node.js, intended for use in building web applications and APIs. In this article and the accompanying video, I’ll show you how to get started with it and we’ll build a server that mimics some behaviors of a key/value store. If you’re interested in learning more about Express, check out its website.

I’ll cover the concepts at a high level in this article. For a complete tutorial, watch the video below:

What We’ll Build

In this first part of the series, we’ll build an Express server that has some API endpoints that model a key/value store database…


(Main Photo by cottonbro from Pexels).

Raspberry Pi recently released the Pico, their first microcontoller. This is a bit of a departure from their previous single board computers that cost a bit more, and run a full operating system. Think of the Pico more like an Arduino… you can program it in C or MicroPython and it runs your code and nothing else.

The Pi Pico has several GPIO ports that you can connect things to. Here, I’ll have a go at hooking up some buttons and LEDs to one and control them from MicroPython.

Here’s what the Pi Pico looks like:


(Photo by Anete Lusina from Pexels).

I often find that I build an Alexa skill whenever I want to play around with an API. The voice interface is easy to get started with and I can create something without worrying about visual design or CSS :) A while ago I created a Dead or Alive package that’s on npm… let’s see what it takes to turn that into a game for Alexa where the user has to determine whether a few celebrities are dead or alive…

Here’s a demo of the finished article running in the Alexa Developer Console:

Game Design

In my simple game, the user…


A long time ago, I used to be a regular listener to Simon Mayo’s Radio 1 show. He ran a “Dead or Alive” segment where a listener would call in, and he’d challenge them to tell him whether a series of celebrities were dead or still alive.

I figured this might be a fun game to replicate, using Wikipedia pages as my source of truth. I’m working on building that… watch this space. Rather than write all the code I’d need as one project, I decided that the core “hey Wikipedia, is this person dead or alive right now” functionality…


Image credit: Michael Henzler / Wikimedia Commons / CC BY-SA 4.0

Launched in 2019, the Raspberry Pi 4 was a significant upgrade over previous models. With USB 3, gigabit ethernet, a faster processor, dual 4K HDMI display support and options for 2, 4 or 8Gb RAM it seemed to be breaking into the low end desktop computer space.

I’ve had a 4Gb Pi 4 since April, and haven’t really used it for too much yet. It had a stint as part of Balena’s Folding for COVID project then went back into the box for a while.

Fast forward to November and the Raspberry Pi foundation released the Pi 400, an all…


In this second video looking at the ioredis client for Node.js developers, I check out argument and reply transformers. These features simplify the marshalling of data between Node and Redis. Check it out:

Missed my original introduction to getting up and running with ioredis? Watch it here:

If you’re interested in more content like this, please check out Redis University on YouTube.

We also offer free online Redis courses where you can earn a Certificate of Completion for your LinkedIn profile. Sign up at our website.


Bloom filters are a probabilistic data structure that I’ve wanted to learn more about for a while. When I started reading up on them, I found a lot of the material to be quite dry and theoretical, so I thought I’d try and implement one in hardware somehow and make my own visual learning aid.

So what’s a Bloom filter? Wikipedia says:

Bloom filter is a space-efficient probabilistic data structure, conceived by Burton Howard Bloom in 1970, that is used to test whether an element is a member of a set. …


Let’s visit Bombay Beach, on the Eastern shore of the Salton Sea. Notice the moon in the daytime?

I got in the car, and did a 375 mile round trip to the Salton Sea and back! To break the monotony of being in the same place since March, I decided to take a day trip East to the Salton Sea — somewhere that I’ve been to many times before, but not recently. …

Simon Prickett

Software Professional, builder of things with Arduino and Raspberry Pi.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store