Creating One Unified Calendar of all Data Science Events in the Netherlands
Over engineering with renv and github actions

Posted on December 2, 2022
| 3 minutes
| 439 words
| Roel M. Hogervorst
I enjoy learning new things about machine learning, and I enjoy meeting like minded people too. That is why I go to meetups and conferences. But not everyone I meet becomes a member of every group. So I keep sending my coworkers new events that I hear about here in the Netherlands. And it is easy to overlook a new event that comes in over email. Me individually cannot scale. So in this post I will walk you through an over engineered solution to make myself unnecessary.
[Read More]Munging and reordering Polarsteps data
Turning nested lists into a data.frame with purrr
Posted on April 23, 2020
(Last modified on November 9, 2022)
| 10 minutes
| 1937 words
| Roel M. Hogervorst
This post is about how to extract data from a json, turn it into a tibble and do some work with the result. I’m working with a download of personal data from polarsteps.
A picture of Tokomaru Wharf (New Zealand)
I was a month in New Zealand, birthplace of R and home to Hobbits. I logged my travel using the Polarsteps application. The app allows you to upload pictures and write stories about your travels.
[Read More]Scraping Gdpr Fines
Into the DOM with a flavour of regex
Posted on April 8, 2020
(Last modified on November 9, 2022)
| 4 minutes
| 774 words
| Roel M. Hogervorst
The website Privacy Affairs keeps a list of fines related to GDPR. I heard * that this might be an interesting dataset for TidyTuesdays and so I scraped it. The dataset contains at this moment 250 fines given out for GDPR violations and is last updated (according to the website) on 31 March 2020.
All data is from official government sources, such as official reports of national Data Protection Authorities.
[Read More]Setting up CSP on your hugo (+netlify) site
Content security policy is being nice to your readers browser
Posted on March 13, 2019
(Last modified on November 9, 2022)
| 4 minutes
| 706 words
| Roel M. Hogervorst
I recently got a compliment about having a content security policy (CSP) on my blog.
But I’m not special, you can have one too!
In this post I will show you how I created this policy and how you can too. I’m using the service report-uri.com which automates a lot the work. This is specific for building a hugo site using netlify. I am absolutely no expert and so this is mostly a description of what I did.
[Read More]interactive ggplot with tooltip using plotly
tldr: wrap ggplotly around ggplot and add info in aes()
Posted on September 13, 2018
(Last modified on November 9, 2022)
| 5 minutes
| 1008 words
| Roel M. Hogervorst
A quick Random R thing I use a lot, recently learned, and I want you to know it too.
In this post I’ll show you how to make a quick interactive plot with ggplot and plotly, so that values are displayed when you hover your mouse over it. Why would you want this? If you are exploring the data, you want some quick insights into which values are where.
[Read More]Use `purrr` to feed four cats
Replacing a for loop with purrr::map_*
Posted on September 10, 2018
(Last modified on November 9, 2022)
| 8 minutes
| 1688 words
| Reigo Hendrikson & Roel M. Hogervorst
Use purrr to feed four cats In this example we will show you how to go from a ‘for loop’ to purrr. Use this as a cheatsheet when you want to replace your for loops.
Imagine having 4 cats. (like this one:)
Four real cats who need food, care and love to live a happy life. They are starting to meow, so it’s time to feed them. Our real life algorithm would be:
[Read More]Adding logging to a shiny app with loggit
Posted on February 28, 2018
(Last modified on November 9, 2022)
| 2 minutes
| 371 words
| Roel M. Hogervorst
This is a very short post with example code Over time when you move your shiny app from your computer to a server, you want to add some logging. Generally logging is defined in levels : INFO (everything you want to print), WARNING (it does not stop the application, but it could be a problem), and ERROR (fatal things).
Shiny server does already log all it’s actions to a file on the server, but that file can be hard to access.
[Read More]Moving parts of a country over a map
Posted on January 29, 2018
(Last modified on November 9, 2022)
| 3 minutes
| 618 words
| Roel M. Hogervorst
I love making maps, I also love making gifs. In this short post I make an animated gif of parts of a map moving. In this case the parts of the map only move in the xy direction, but you can also turn them, and make them bigger or smaller. Today I show you how I made a part of the Netherlands ‘float away’. It is part of a larger nonsense project (I have many silly projects), and mostly just to document my path to learning about spatial analytics.
[Read More]Adding bananas from the commandline (extending the oomsifier)
Posted on December 29, 2017
(Last modified on November 9, 2022)
| 3 minutes
| 581 words
| Roel M. Hogervorst
Sometimes you just want to add bananas from the commandline. Previously I created a small script that takes an image and adds a dancing banana to the bottom left of the image. I wanted to make an API too, but that will have to wait till next year. Today we will create a commandline script that will do the same thing.
With the excellent explanation in Mark Sellors' guide I have now created a cmdline thingy in very few steps.
[Read More]Downloading files from a webserver, and failing.
Posted on December 8, 2017
(Last modified on November 9, 2022)
| 5 minutes
| 989 words
| Roel M. Hogervorst
Recently I wanted to download all the transcripts of a podcast (600+ episodes). The transcripts are simple txt files so in a way I am not even ‘web’-scraping but just reading in 600 or so text files which is not really a big deal. I thought.
This post shows you where I went wrong TL:DR : do not assume everything will always work on the internet.
Also here is a picture I found of scraping.
[Read More]