One of the projects that I have enjoyed the most as part of my job at IKNL has been the application of explainable machine learning to survival predictions. Well, today I woke up with the happy news that our latest study in this field has been accepted for publication in Scientific Reports!
In this project, I built an Armored Assault Tank using the MINDSTORMS 51515 set, or AAT MS5 in short. It is inspired by the Battle Droid on STAP of the Droid Developer Kit and the AAT of the Dark Side Developer Kit. Moreover, it is powered by the MINDSTORMS Robot Inventor set 51515 and programmed using Python.
I had a complete blast (re)building the Battle Droid on STAP from the Droid Developer Kit (9748). Thus, the next natural step was to give a model of the Dark Side Developer Kit (9754) the same treatment. The original set came with three different booklets (1, 2, 3) with instructions to build a Droid Starfighter, a Destroyer Droid (aka Droideka), and an AT-AT. However, in contrast to the Droid Developer Kit, this set didn’t have a CD. Instead, the booklets had pictures of the alternative builds. Among these, you could find the Armored Assault Tank (or AAT for short).
Answering many of the questions in the field of cancer informatics (and in health care in general), often requires researchers to incorporate data from different sources. Typically, this is done by centralizing the data. In other words, data are brought to the where the algorithms are. Unfortunately, this brings several organizational, operational, political, and ethical challenges, such as loss of data control, logistics of data transmission, data governance, and protection of patient privacy.
Federated learning has emerged as a technology with the potential to overcome these limitations. In this case, we flip things around and we bring the algorithms to where the data are. For this purpose, at IKNL we have developed our open-source priVAcy preserviNg federaTed leArninG infrastructurE for Secure Insight eXchange – or VANTAGE6 for short.
As a teenager (and even during my years at college), I had a blast playing with the LEGO Mindstorms sets. One of them ones was the Droid Developer Kit (9748). Basically, it allowed you to build Star Wars droids and put them in action using the included Micro Scout (which included a motor, a light sensor, and seven built-in programs). I still have my original kit and with the Star Wars fever caused by The Mandalorian (and all the announced shows coming in the near future), I thought this Christmas break was the perfect occasion to jump back into this set.
Recently, I started getting into LEGO again. More interestingly, I started experimenting with Bricklink Studio (or Studio, in short), a great CAD tool for creating your own (virtual) models brick by brick. One of its best features is the wide variety of parts at your disposal. However, every now and then you can come across a part or two that aren’t registered in Studio’s catalogue, but that exist already as a model. This is especially true if you are using parts from very old sets. Fortunately, there is a way to add them and make them available for your creations.
I started working on my first Python package (which is far from ready, but I will definitely post about it when I have a version worth sharing). When trying to find resources of how to publish it to make it available for the community, I felt a bit overwhelmed. The setup for it to work properly involves a lot of individual files. These need to be in the right structure with the right content. As you can imagine, this is very prone to errors.
Recently, I migrated my personal website from Wordpress to GitHub Pages using Jekyll. After some trial and error, I managed to have everything up and running. However, Jekyll tagging (i.e., generating the pages that contain a collection of posts filtered by a tag) requires additional plugins which are not supported by GitHub Pages. Long Qian wrote a fantastic tutorial on how to implement this functionality with a Python script. Unfortunately, this still requires running the script, adding the files to the staging area, committing them, and pushing them to GitHub. That’s a lot of steps for every time that I want to add a new tag. Not only is it prone to errors, but let’s be honest: ain’t nobody got time for that.