Wednesday, April 13, 2016

How to install Ubuntu on a MacBook

I do own an old MacBook 2009 at home.  It's age is showing up mostly with the latest version of OS X, El Capitan.

As an experiment, I wanted to try out Ubuntu on the MacBook.  I already use it on my old PC Laptop and it works like a charm.  So I took my already formated USB drive with Ubuntu 16.04 on it and booted the old Mac...  Nothing happened...

After some research on the web, I discovered that I had to create a bootable USB drive specifically for the Macbook.  I don't know why as as bootable drive is a bootable drive, but I followed these instructions:

The key is to convert the ISO file into an IMG file.  Then you need to copy the IMG file to the USB drive using some strange command from a terminal in OS X.
sudo dd if=/path/to/downloaded.img of=/dev/diskN bs=1m
If you follow the instructions, step-by-step, it's really easy.  The convertion from ISO to IMG does take a few minutes and "burning" the IMG file onto your USB drive can take around 30 minutes.

Once that done, insert your USB drive into your Macbook and reboot.  Make sure to press and hold the ALT key to invoke the bootable options.  Select your USB drive when it shows up and Ubuntu should start booting.

I skipped the installation of a multi-boot selector like ReFit (  I find it easier to select the OS to boot using the ALT key trick than install another custom tool.

Of course, I tried the Live version first to ensure that my hardware would be properly supported.  All was working as expected beside the fact that I had to install a propriatary driver for my wifi card.

After the initial testing, I went back to OS X to resize my hardrive partition to make some room for a 20 drive and a swap space.  You can do this by using the Disk Utils tools in OS X.  Then another reboot to return to the Live version of Ubuntu and start the installation process.

Usually, partitioning is done automatically by Ubuntu.  In this case, I had to create the partitions manually, select the proper mount point before completing the installation process.  30 minute later, I was rebooting the Macbook in Ubuntu, from the newly created partition.

The main issue I faced was that I needed again the Additional Drivers to enable my Wifi connection.  I had to manually copy the Debian package from the USB drive using "sudo dpkg...".  If I remember well, I had to install "dkms.deb" before installing the package drivers found in the USB installation drive.

Once I got the Wifi working, everything was working well.  Actually, it felt like a brand new computer as it was so fast and so smooth.  The only issue I am currently facing is using the iSight webcam with "ffmpeg".  The webcam does work with Cheese...  Oh yeah, make sure to install all updates from 16.04 before continuing...

I almost forgot, you need to install another package to enable your iSight webcam (search for isight in the repositories).  There is a small procedure to follow but it quite easy to follow.

The installation process was not as easy as on my PC Laptop, but considering the benefits, it was worth it. My Ubuntu MackBook is running perfectly, much better than under OS X.

By default, the computer is booting directly into Ubuntu.  When I want to switch to OS X, I reboot it while pressing the ALT key and then select the OS X partition.  For some strange reasons, I have to do a complete shutdown to reboot into the other OS.  Just restarting seems to keep the last OS used even when using the main partition using the ALT key.

If you feel that your old Macbook is good for the scrap, try it with Ubuntu first.  It does give a new live to your old pal.


Wednesday, March 30, 2016

ScreenStudio 2.0.3 is available!

Note: Get version 2.0.4 as there is a small glitch in 2.0.3...

Tonight, I released a new version of my project ScreenStudio.  If you don't know what is ScreenStudio, it's an open source software that lets you record your computer display and stream it live to services like Twitch or Hitbox.

Last years, after releasing the version 1.6, my computer crashed so hard that I had to reformat everything, losing the latest source code I had written.  I had to revert to the version 1.5 which was a bit too unstable for my taste.

After a short break, I decided to start from scratch, avoiding the pitfalls I had encounter while coding the version 1.5.  Then, after testing new ideas and concepts, I started a brand new ScreenStudio 2 and tonight, a beta version is available for download.  

You can get it at

What's new in ScreenStudio 2?

- Simple interface
- A side panel to display the overlay and webcam
- Interactive panel content that can be updated while recording/streaming
- Text tags for displaying remaining time, current date, etc...
- Less dependencies
- Based on FFMpeg instead of AVConv
- No more complex configuration files
- Better webcam Intégration 
- Easy on the CPU so it will work on an underpowered computer

The whole idea was to have a side panel instead of having overlays.  Basically, you can to record/stream your whole desktop and not cluster it with overlaid banners and webcam.  ScreenStudio is actually adding a small overlay to the right of your display making the video a bit wider than your screen.  This does ensure that your viewers will see 100% of what's happening on your screen while seeing your personal content on the right side.

The version 2.0.3 is considered a beta and may be unstable.  It is currently available of Ubuntu 15.10 and a version for OS X will be available soon.

Binaries and source code is available in the download section.

Saturday, March 26, 2016

Are you out of time? Are you answering calls?

You're working on a big project at the office and you feel that there is not enough time left to complete the work?  Are you answering calls thru out the day?  That could be the issue...

It's a known fact that people do prefer to call you instead of sending an email when asking for support or new features.  It seems faster and a more productive way to communicate between departments but you'd be surprise how much time is lost in the whole process.

Let's assume that someone is requesting a new data column in a report.  This implementation is not a big modification and should take around an hour including the time to open the report, do the modification, validate the result and deliver the updated report.

The request is simple so it's easy to compare requesting by phone or by email.

Over the phone:
- Stopping whatever you were doing to answer the phone call
- Greetings and polite introduction : 30 seconds
- Hearing the request: 120 seconds
- Confirming the request (to ensure the proper names, labels, content): 60 seconds
- Ending the call, polite salutes, etc...: 60 seconds
- Writing on a note, in a todo list the request with full details : 120 seconds
- Going back to whatever you were doing and figuring where you left off: 60 seconds

Total time used is around 7,5 minutes more or less.  

Same request but by email:
- Seeing the incoming request in your inbox : 5 seconds
- Complete your tasks before having a look at the request: 0 seconds
- Open the email when ready: 10 seconds
- Read the request details: 60 seconds
- Reply to acknowledge the email: 60 seconds
- Copy and paste the request into your note/todo list: 30 seconds
- Go back to your next task: 30 seconds

Total process time by email: 3 minutes, more or less.

For a simple request, handing it can take half the time by email compared as the same request over a phone call.  For any request, you can add a factor of complexity.  The time used to explain everything over the phone is increasing a lot more then in an email explaining the full details in text and screen captures.

A few years ago, we did the math at the office and found out that a rough average of 15 minutes per call was about right.  As for emails, we had calculated a rough average of 5 minutes.  Assuming you are getting 10 requests/day/week, you can compare the time spent handling requests:

Total week time by phone: 750 minutes (12.5 hours)
Total week time by email: 250 minutes (4.17 hours)

For the same requests, you are actually wasting a full day of work (~8 hours) just by handling requests over the phone on a 5 days/week.

Validate yourself at the office how many times you're handling a phone call that could have been handled by email.  The more you get, the less time you have to complete your tasks.

Leave your comments below...