BeagleBone Black with Ruby and an OLED screen

I wanted to have something to check my website availability. I use the BeagleBone Black for that. I add an OLED screen to display the results in real time. Here is the result:

The BeagleBone Black has the standard Angstrom Linux OS.

The OLED is great. It's black and white, 128x64 pixels. You can communicate with SPI or I2C (I chose to do SPI with basic BeagleBone Black outputs). It's available at Adafruit (here). I've just soldered it to a board so I can easily remove it if needed. The screen is tiny however you can read the characters easily even in daylight.

I had to compile Ruby on the BeagleBone Black. The last version (2.0.0) works well.

The Ruby code is available on Github. It includes a Class to use BeagleBone Black GPIO with Ruby. Another Class will help you deal with the OLED screen. Then I use these 2 classes to display the result of curl requests.

Next step with my BeagleBone Black: install Go.


Learning crypto with the Matasano Crypto Challenges

If you want to discover what crypto is I recommend you take a look at The Matasano Crypto Challenges.

These free exercises are very very very interesting. Some are "easy" and some are really challenging. They cover many subjects and you'll learn a lot. Some of the described attacks made me think about the security of my websites. I changed a few things to prevent crypto attacks.

What I love is the wording of the exercises. They give you just enough information to do them. They make you think. You really have to understand what you are doing. You won't find the solutions on search engines ;-)

I've done 46 of the current 48 exercises. I am still scratching my head on #47. Good luck to you!


BeagleBone Black with LCD HD44780 in 4 bit mode

It works well. Good news the code is freely available on Github. But first a photo:

The LCD I use is LinkSprite 16 X 2 LCD Keypad Shield for Arduino. It's available at SparkFun (here).

The 4 bit mode used less GPIO on the BeagleBone Black than the 8 bit mode.

The BoneScript code on Github: only the LCD and the LCD and the buttons. Make good use of it!

I am currently working with an OLED screen. I'll keep you in touch.


Discovering the BeagleBone Black

The BeagleBone Black is a fantastic tool. It's tiny, with Linux, with a lot of inputs/outputs, with an ethernet port, a micro SD slot... You can even connect a HDMI screen. It costs only $45. Amazing!

Managing the inputs and outputs is easy with the provided JavaScript library. Because it's Linux you can also use the pre-installed Pyhton, C++ or install something else like Ruby.

To me it's an easy way to build a test server. I will also use the BeagleBone Black to monitor Native French Speech website in real time.

I still have to grasp how to use the serial communication protocols efficiently.

More on the official website: The books Bad to the Bone and Getting Started with BeagleBone are very useful to learn how to use the BeagleBone Black.


Au revoir flickr

I have used flickr for years but I left it today. Why? I don't want to activate my yahoo account to know my yahoo id which I use with flickr. But the yahoo profile page wants to force you to activate your account.

I should have been able to use flickr without being linked to a yahoo account.

There are plenty of alternatives to flickr now, time to move on.


I've met one Google Street View car!

In 2012 I've met one of the numerous Google Street View cars. I've seen it pass on the road near me. Since then I've checked regularly if the picture would appear on Street View. Here it is!



Music helps me concentrate

I find that music helps me a lot to concentrate for hours at a time. During my commuting in the train it's much necessary not to be distracted by people talking. Even at home at night when there is no noise I sometimes use music to concentrate more.

I've noticed the music I listen to varies greatly. But the genre of music I listen to is always the same for the same mood.

Pop music, hip-hop, rap, electronic music (110 to 130 beats per minute): very often. The most important thing to keep focused on my work is to listen to the same CD in loop for hours. Examples: Alizée, C2C, Eminem, Hopsin, Flo Rida, MIKA, Rhymester, Stromae, The Black Eyed Peas, The Flaming Lips, Zaz.

Slow music with beautiful voices, classical music: when I'm a little tired. Examples: Bach, Chopin, Moricone, Stravinsky, Vangelis, Yael Naim, 分島花音.

Electronic dance music (over 150 beats per minute): when I'm really tired. Sometimes I should be sleeping in my bed but there is something urgent to do (The server is down!) Examples: Kap Slap, Klaxons, 田村ゆかり.


Good ways to learn Ruby on Rails

I started to learn Ruby on Rails in 2008. I just played with a blog project. It was fun to create something in Ruby.

Only in 2012 I decided to become serious about Ruby on Rails. I wanted to be able to build and maintain my business website with this language. Here is a list of great resources to learn Ruby on Rails. Some are free. Some are cheap. Some will cost you a few dozens dollars.

Building something is also a great way to learn!


Some wallpapers from France (photo)

Here are a few (9) wallpapers I give you for your personal use. Photos are ranging from 2006 to 2013. Hope you enjoy!

Click on the photos to open the full size versions (3008 x 2000 pixels).

Alps mountains in France

Bird in front of the Eiffel Tower and Montparnasse Tower

Eiffel Tower

Fontainebleau castle

Forest with snow

Paris Metro

Paris Seine river

Pond du gard (ancient bridge)

Tour de France 2012


Architecture of Native French Speech as of January 2013

We added exercises on Native French Speech website. These exercises are hosted on a different Heroku server. Later this server will provide exercises for Native English Speech, Native Italian Speech...

Here is the architecture.


Today the link between the two Heroku servers is done through Ajax requests on the client browser. There are some limitations with cross domain Ajax requests. We may change that: request exercises through Ruby code on the server.

Archives (older articles)
I wondered if I should call this page "Root". But I sticked to "Home".