Tuesday, November 25, 2014

Is Open Source secure?

There was a time when "Open Source" meant nothing more than something geek. Times have change and the expression is more common in the world. Nevertheless, what is exactly Open Source?

It's more than a free software. It's more than having access the to source code of a project. It's a philosophy embraced by people who thinks that any software should be shared and worked on, in a common goal.

It all started with closed source softwares. Your enterprise would rely on a software solution and would be struggling with bugs and lack of features. Worst, the company providing the software solution would stop supporting it, making your enterprise forced to "upgrade" and migrate to another software, to a new provider. That "upgrade" process do cost a lot of money...

For individuals, it's the same issue. Your favourite app will not be supported anymore and you are stuck with bugs and lack of feature unless you move on to "The Next Big Thing".

An Open Source project do not have this issue. Bugs get fixed by the community. New features are added by the users, for the users. Some projects may have a short life as others will split into many different flavours. It's a natural evolution where demands drive the development.

Basically, an open source project will make its source code available over the web so anyone can browse it, download it, modify it. You can do whatever you want with the source code, as long as you comply with the original licence. That means keeping it open, most of the time.

Since the source code is available to all, it's it secure?

Of course, security flaws can be easily identified by pirates. But they can also be identified by others as well. The thing is that as soon as a vulnerability is identified, developers will patch it, share it and provide a new updated version faster than any commercial company can do it. Often, it's a matter of hours between the discovery of a vulnerability and the available secured version.

We've all heard of vulnerabilities in commercial softwares that were never fixed or dormant for decades. This is something that cannot happen in Open Source software as the code is being analyzed and reviewed by thousands of hackers, coders and users.

If anyone can contribute, does that mean that someone could inject malware code into the project? Mostly no as serious open source projects do have a team that is reviewing any contribution, ensuring quality and security for the project. Think about the Apple Store that is reviewing apps against potential malware. The same process is happening on Open Source projects.

Would you eat a meal without knowing its ingredients if you care about your diet? That's what "Open Source" means: you have a choice, you have a voice.

Patrick Balleux

Sunday, November 9, 2014

Coding hard boiled eggs

How would a software coder describe the recipe to make hard boiled eggs?

The procedural coder:

- Take a saucepan
- Put water in the saucepan
- Put the saucepan on the stove
- Turn on the stove to maximum
- Wait for the water to reach boiling temperature
- Put three eggs in the boiling water
- Wait 3 minutes
- Turn off the stove
- Take the saucepan
- Empty boiling water into the sink
- Take the first egg, be careful full it's hot
- Roll the first egg on the kitchen counter to crack the shell gently
- Remove completely the shell from the first egg
- Put the first egg on a serving plate
- Take the second egg, be careful full it's hot
- Roll the second egg on the kitchen counter to crack the shell gently
- Remove completely the shell from the second egg
- Put the second egg on a serving plate
- Take the third egg, be careful full it's hot
- Roll the third egg on the kitchen counter to crack the shell gently
- Remove completely the shell from the third egg
- Put the third egg on a serving plate
- Voilà, enjoy!

The object-oriented coder:

- On a stove, in a saucepan, put water
- Turn on the stove to maximum
- When the water is boiling, on the stove, in the saucepan, in the water, put three eggs
- After 3 minutes, turn off the stove
- Empty the water, from the saucepan, on the stove, into the kitchen's sink
- For each egg, in the saucepan:
- Be careful, it's hot
- Roll it on the kitchen counter
- When the shell, on the egg, is cracked, remove completely
- Put it on a serving plate
- Voilà, enjoy!

The delegate-oriented coder:

- You need a stove, a saucepan, water, a kitchen sink, a kitchen counter, a serving plate and three eggs
- Turn on the thing that can heat to maximum with the thing that was filled with stuff that can boil
- When the event where the result of boiling has been reach, add the items that can be cooked in the stuff that is hot enough to cook them
- After a while, set to 3 minutes, remove the stuff that was boiling and put it in the thing that can dispose of it
- For each item, in a container, roll it on the thing that is hard enough to crack the external stuff of the item. At the same time, be careful as a warning message and it has been set that it can be hot.
- In the event that the item is cracked enough, remove the outer thing completely and put the item in something that can be used to serve for a meal
- In the event that that everything is done, Voilà and at the same time, Enjoy!
- When the items are cooked, turn off the heat source

Which one are you?

Patrick Balleux

Wednesday, November 5, 2014

Love iOS, Android? Why not Ubuntu?

With the release of each iOS/Android version, users around the world will get the upgrading fever as soon as they hear the news. Some will even install the beta version to get the latest and greatest before everyone else...

How come it's not the same for Windows? Sure, there are a few enthusiasts around the world who will go the extra mile to get their hands on the beta version, but it's far from a general worldwide phenomenon.

Basically, some won't want to upgrade. Most will wait to buy a new PC. Others will download an illegal copy, taking the risk of exposing their personal stuff to the "World Wild Web"...

As those Windows users are probably also iOS and Android users, they should crave for the next Windows... And this is not the case.

Assuming that Windows users were able to adapt to the new environments proposed by iOS and Android, could they consider the fact that an alternative to Windows would be as useful and fun on their PC? Have they heard about Ubuntu (and friends)?

They will hack and crack MS Office to get it free, they will install many tools to get Windows more useful, they will fight against viruses and adwares and spywares with the latest anti-virus available. Managing a Windows PC does require a lot of personal time.

With iOS or Android, you simply do nothing. Load it up, upgrade all your apps from the store. Get free OS upgrades when available and enjoy your device without thinking about it. What if I would tell you that you can get the same experience with Ubuntu?

Don't believe me? Try it out for yourself as you can download Ubuntu for free (ubuntu.com)

Nothing illegal here. It's free simply because it is open source stuff.

Don't like Ubuntu? Try out one of its derivatives like Mint or Kubuntu. The choice is yours.

Maybe it's time to start using your computer instead of managing it. Get Ubuntu!