Simon Marache-Francisco

Back to c++

  • 20/05/2018
  • POST
I missed C++ since I started my job 2 years ago, and I think that now is the right time to have a look at what has changed. I bought Effective Modern C++, which is really well written and to the point. I am now going to update my old 3d rasterizer project with what I gained from the book. I already made a few changes to support SDL2, fixed a few cmake issues, added travis support to make sure it would build properly, and added support for the STL file format.

First look at the SICP

  • 08/01/2017
  • POST
I have always been intrigued by the LISP family of languages, partly because of the “code is data” philosophy, and partly because of the simple syntax. I read recently a lot of praise for a book used at the MIT to introduce programming using Scheme (a LISP dialect): SICP. This book is apparently best enjoyed by experienced programmers who want to go deeper into the basics of programming. I have downloaded an ebook version of this book and will give it a try.

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.
Prev Next
LATESTS
Hype cycle in tech
  • 20/05/2023
  • POST
X As a Service
  • 20/10/2021
  • POST
Micro project: PNG Implementation, Chunk Decoding
  • 11/07/2021
  • POST
Micro project: md5 implementation
  • 27/12/2020
  • POST
3d terrain rendering for embedded hardware
  • 09/08/2020
  • POST
video stabilization using ffmpeg
  • 09/05/2020
  • POST
Migration to Kubernetes
  • 01/05/2020
  • POST
Compiling Chicken Scheme scripts
  • 18/08/2019
  • POST
Readline and pkg-config in ubuntu
  • 17/08/2019
  • POST
Temperature and Humidity logging: Arduino and ESP-01
  • 01/11/2018
  • POST

© Simon Marache-Francisco

Powered by Hugo.

Robust designed by Daisuke Tsuji.