Simon Marache-Francisco

Web sentry with SMS Notification using AWS Lambda

  • 04/12/2016
  • POST
AWS Lambda lets you run code (python2, nodejs, java, C#) in response to events. It is optimized for short-running code. I decided to use it to watch a webpage, and notify me when a specific change happen. When a value gets under a threshold, I use AWS SNS, the notification system, to send myself a SMS alert. Lambda provides a small text editor (you can upload larger codebases if necessary) that you can use to edit and test your code.

HTTPS

  • 21/11/2016
  • POST
I knew since the beginning that I had to comply with best practices and provide my website over a secure channel. Not that there is much to hide in a static, open source website, but at least this part of your surf will stay private (within limits). This website is now stored on S3, but served though the CDN AWS Cloudfront which provides the (free) HTTPS certificate. As a side note, I would like to thank everyone at Travis for this amazing service.

Gravity simulation

  • 29/10/2016
  • POST
I have always been fascinated by gravity simulations, and I have vivid memories of small simulators where you would create celestial bodies and watch them in motion. As I wanted to see what the fuss was about TypeScript, I decided to make a simple gravity simulator featuring planets. My goal was to simulate trajectories of around a dozen bodies in real-time, in the browser. Everything is based on Newton’s second law:

Moving to a static Website

  • 21/10/2016
  • POST
While hosting my website all by myself is actually quite fun, it is however very time-consuming. Doing things right means taking care of security updates, features updates, backups, crashes, etc. And problems always arise when you are not ready to deal with them, like that time when my co-hoster decided to install a new kernel module that crashed completely our VPS instance. I was obviously with my parents this weekend and waiting for an important email.

Image generation acceleration using X86_64 SIMD extensions

  • 25/10/2015
  • POST
The SSE and AVX2 extensions of the x86 instruction set can dramatically improve the speed of a program if you can optimize ot for SIMD instructions. I made a small test with a fractal generator, which lends itself very well to this kind of optimization. I was impressed by the results: In very little time, thanks to the intel intrisics guide, I have been able to reduce the rendering time by a factor of 6.

Seam carving

  • 07/06/2015
  • POST
Let’s say you have a picture with an awkward ratio. You can’t print it anywhere without either cropping or rescaling. The technique described in the paper from S. Avidan and A. Shamir, Seam Carving for Content-Aware Image Resizing is a very nice and elegant solution to resize the picture without changing the pixel aspect ratio. Original image (picture by Beverley Goodwin) Horizontal Shrink using naive resize on the left and Seam Carving on the right The picture on the right has all the features of the originalimage, with little distortion, but the aspect ratio is completely different.

Image processing using OpenCV

  • 27/05/2015
  • POST
A few days ago I took a picture of the night sky using my camera, right in the middle of nowhere. I expected a nice clear picture but no matter where I looked, there was always some background light, and the sensor noise was quite strong: Thumbnail of the original image: notice the haze I wanted to play with the python version of OpenCV for a long time, so this was a great opportunity to try to improve the result!

Coursera and Scala

  • 20/05/2015
  • POST
I just discovered that coursera had several courses about Scala, made by the creator of the language Martin Odersky. Functional programming: https://www.coursera.org/course/progfun Reactive programming: https://www.coursera.org/course/reactive I always wanted to try functional programming, and they seem to be a good place to start. I probably won’t have enough time to follow them through, but I started a small fractal generator in scala, using what I learned in the first few videos, and I really enjoy the language so far.

Augmented reality on Android

  • 16/04/2015
  • POST
With my friend Clement we have been working on an exciting new project lately: Augmented reality on the smartphone. The goal is to show on the screen the landmarks you are looking at through the camera. Using your location (GPS), your direction (compass), and the location of the landmark (database), the program will show where the landmark should be on the screen. Unfortunately, for now, I am stuck with a problem: Even when correcting for the magnetic inclination, the compass measurement is off by a small angle….

A new micro project: comparing performances between 'switch' and if-else-if-else in C++

  • 07/04/2015
  • POST
I was having an argument with a coworker about the fastest method to branch in a code: lots of if/Else or a switch/case. I figured that the switch case would be faster, because the compiler would be less constrained than with the if/else, and could therefore use a better algorithm to select the right execution path. To check this, I made a new entry in my microprojects repo, the aptly named switchVsIfElse.
Prev Next
LATESTS
The small migration
  • 20/03/2025
  • POST
Wiki of Babel. Experimenting with an infinite Wikipedia
  • 30/10/2024
  • POST
Experiments with Retrieval-Augmented Generation (RAG or AI Search)
  • 03/07/2024
  • POST
What I Have Been Up To
  • 01/05/2024
  • POST
Automated French translation of the Lewis and Clark expedition journals using ChatGPT4 Turbo
  • 26/12/2023
  • POST
Traduction automatique du journal de Lewis et Clark à l'aide de ChatGPT4 Turbo
  • 26/12/2023
  • POST
Migrating my infra to Github Action
  • 10/06/2023
  • POST
A new project: Immediate mode UI in rust
  • 22/05/2023
  • POST
Hype cycle in tech
  • 20/05/2023
  • POST
X As a Service
  • 20/10/2021
  • POST

© Simon Marache-Francisco

Powered by Hugo.

Robust designed by Daisuke Tsuji.