Monday, July 29, 2019

Who is Andre Courchesne ?

Professional experience
  • 25 years doing various electronic designs, re-engineering or integration
  • 21 years managing IP networks
  • 20 years using Linux for server and desktop applications
  • 18 years doing code at a professional level
  • 18 years using version control as a core key of the software development process(CVS, Git)
  • 16 years of technical support experience (on the phone and in the field)
  • 10 years working mainly remotely while keeping a strong work discipline, professionalism and ethics
  • 6 years experience managing customers projects of up to 5M$/year
Team management
  • 4 years managing a team of 4 1st level support technical
  • 2 years managing a team of 2 2nd level technical and 2 certified engineers
  • Strong believer of the following keys of engineering team management:
    • Daily stand-up and weekly 1-on-1 team management strategies
    • Knowledge sharing
    • Strict versioning using Git
    • Peer code/design reviews
Programming language experience
  • Ruby, C, Perl, Bash, x86 Assembly, PHP, HTML, HTML/CSS/JS/jQuery, Electron just to name a few languages I am deeply familiar with.
  • I use the language I feel will be the best for the task at hand
Hardware platform experience
  • x86
  • Arduino (Atmel)
  • RaspberryPi
  • BeagleBone
  • Onion Omega
  • Anything Linux and open-source
Professional views
  • Information sharing is the key to success
  • GitLab is an essential tool for engineering team management and project management.
    • Don’t work on something if there is no GitLab ticket for it.
    • Use shipit-cli ( so that all merge request are uniform.
    • Rebase and squash to before merge to maintain a clean head
    • Maintain a changeling using Semantic versioning
  • If you develop for Linux use Linux or macOS not Windows.
  • If it exists and it’s open-source and does 80% of what you need why re-invent it ? Add to it, use it and share it when ever possible.
  • Thrive on open-source, share it, embrace it.
  • Automatization for uniformity, avoid snow flakes (Ansible, scripts,…)

Monday, July 22, 2019

Itsycal: A even better macOS clock replacement

In December 2018 I wrote about Day-O ( as an amazing customizable macOS clock replacement.

One thing that bothered by with Day-O was that in dark mode it was really hard to read and the font was pretty small (I must be getting old).

Well the other day while checking if there was any update to it, the author mentioned the dark mode issue and pointed to Itsycal ( as a possible dark mode issue free replacement.

Well it does work and is even more customizable:

As you can see you can have it display the week number and it can even fetch your calendar(s) appointements.

It has a large font mode for old folks like me and has a lot of customizations:

Give is a shot I'm sure you will like it.

Monday, July 15, 2019

Adding an image to your KiCad EDA PCB

Had to add a logo/image on a PCB I recently made. As this PCB exceeded the size of the free Eagle CAD version I decided to give KiCad a try.

I was plesently surprised at how easy it was. Needs a bit getting used to regarding the component to footprint association but works like a charm !


Now about the subject of this blog post: Adding an image to a PCB in KiCad. At first I was sure there would simply be a "Import JPEG/PNG" and that would be it... Well no...

Adding an image is a 3 step process:
  1. Convert your image to a "kicad_mod" library
  2. Add the library to KiCad
  3. Add the image from the library to your PCB
Let's go through these 4 steps using the following jpeg:

Image result for opensource logo
Convert your image to a "kicad_mod" library

You can use the following tool to convert an image to a KiCad library and at the same time resize the image. Unfortunatly you can not resize the image within the PCB editor, so you need to resize it before.

Simply upload the image, select the proper scaling factor so that the image fits on your PCB. In this case I selected a 0.03 scaling factor which generated an image of 24mm x 18mm.

Once you have it as you want (using the "preview" checkbox), simply uncheck it and download the KiCad library file to your project folder.

Add the library to KiCad

In the PCB editor, go to the "Preferences" -> "Manage Footprint Libraries...". From that dialog click on the folder icon:

And select your project folder. This will create a new library entry to the name of your project folder. Click "OK" to close this dialog. The library is now added to KiCad.

Add the image from the library to your PCB

Finally the last part ! From your KiCad PCB editor, click on the "Add footprint" icon and click somewhere in your PCB to bringup the footprint selection dialog.

Scroll down to find your project name and expand to reviel your image part:

Click "OK" and place the image where ever you want on your PCB:

It's not a straight forward process and you will probably have to try it a few times before you have the image you want, but it works.