Knowledge7

The Linux and Mobile Solution Provider

  • About
  • Training
  • Services
  • Clients
  • In the news
  • Blog
  • Contact Us
You are here: Home / Archives for News

Picks of the Week #3

You want to receive our Picks of the Week every Monday morning?

Thank you for reading the third edition of the Knowledge7’s Picks of the Week.

Every week, Avinash Meetoo will make you discover interesting articles and websites to help you broaden your understanding of the world of open source software and information technology in general.


Hacker Chat: Pinboard Creator Maciej Ceglowski Talks About Why Boring Architecture is Good, and More
Writing a web application in PHP is easy. But writing one which performs well when hundreds of users are accessing it concurrently is difficult. In this article, Maciej Ceglowski, creator of Pinboard, a very well known alternative to Delicious (which got rave reviews a few weeks ago when it would seem that Yahoo! was going to discontinue Delicious), explains that the KISS principle should apply to the architecture of PHP applications too. For instance, he mentions that having adequate RAM on servers is crucial, that dedicated hardware is always better than virtualised hardware, that it is important to optimise MySQL (see next pick) and that frameworks should be used with caution.

MySQL Performance Blog
If one wants to increase the performance of MySQL, the database server needs to be properly optimised: from key runtime variables (like key_buffer_size) to storage considerations. Then the database schema needs to be properly devised while taking into account current and future querying patterns. Specific SQL queries have to be written in such a way to perform as efficiently as possible and, if this is not possible, stored procedures might need to be used. Of course, indexing is always a possibility… if used judiciously. Buffering and caching possibilities also need to be explored. In other words, optimising MySQL is not trivial. Reading the MySQL Performance Blog provides excellent insights into the difficult art of MySQL optimisation.

The Scala programming language
The Java Virtual Machine (JVM) was originally devised to run bytecodes generated by a Java compiler. But Java is a very verbose programming language and some even say that it’s not very powerful as it lacks most of the expressive constructs found in functional and scripting programming languages. Scala is a new programming language which compiles to bytecodes which then run on the JVM. Scala is 100% compatible with Java and existing Java libraries, is fully object-oriented and supports functional programming. This allows programmers to write very powerful programs in just a few lines of code. A notable example of Scala in industry is Kestrel, the message queue server which forms the core of Twitter. Due to this high profile adoption, Scala has gained the respect it deserves and some people are even starting to believe that it’s the next big thing in programming.

GitHub
GitHub is an online service which hosts software developed using the Git source control system. A source control system allows multiple programmers to work on the same software concurrently. GitHub comes in two flavours: it is free for those who develop open source software and those who want to use it to host private repositories have to pay. Git was originally developed by Linus Torvalds to ease the development of the Linux kernel. Since GitHub was launched, a number of notable open source projects have switched to it. Examples include Erlang, Hibernate, jQuery, JUnit, Mozilla Labs, Perl, PHP and Ruby (including Ruby on Rails). One of the interesting aspects of GitHub is its ‘Explore’ facility which provides insights on the most active projects and programming languages in use (right now, it’s a tie between Javascript and Ruby).

How to Start a Startup
Paul Graham is one of my gurus. He co-created Viaweb, the first ever e-commerce website, which Yahoo! acquired for $50 million in 1998. Paul then created Y Combinator with the help of some friends to provide new startups with seed capital and advice. Some notable startups funded by Y Combinator include Reddit, Dropbox, Posterous and Justin.tv. So Paul knows what he is talking about when he says that the three most important things to get right when launching a startup is to begin with extremely competent people, to make something customers actually want and to spend as little money as possible. One thing I always tell people is that it’s not normal that only few young people in Mauritius want to emulate people like Bill Gates, Steve Jobs or Mark Zuckerberg when they finish school. Maybe “How to Start a Startup” needs to be taught in Mauritian schools…

Our forthcoming training courses

  • No training courses are scheduled.

Do you want to buy great books?

Would you like to buy carefully selected American edition books on Linux, web design, PHP, MySQL and Java? And, would you like to buy them cheaper than on Amazon.com?

Now you can!

We are happy to launch our book store. Nothing fancy. No e-commerce. No credit cards. Only solid books at affordable prices which you collect the books immediately after payment (cheque or cash).

What do you think of that?

Our forthcoming training courses

  • No training courses are scheduled.

Picks of the Week #2

You want to receive our Picks of the Week every Monday morning?

Thank you for reading the second edition of the Knowledge7’s Picks of the Week.

Every week, Avinash Meetoo will make you discover interesting articles and websites to help you broaden your understanding of the world of open source software and information technology in general.


Top 100 of the Best (Useful) OpenSource Applications
For some people, Linux is only for servers. For people like me, Linux is also a great desktop operating system capable of being better than anything from Seattle or Cuppertino. For the past few years, Ubuntu Linux has really made Linux easy to install and easy to use at home. The latest version is rock solid and features myriads of open source applications especially developed for home users. Here is a list of the top 100 of the best and useful open source applications from various categories courtesy of UbuntuLinuxHelp.com: audio, 2D graphics, 3D graphics, video, utilities, software development, etc. Try them. They are all free. And powerful.

Dates in PHP and MySQL
PHP is a powerful server-side programming language for building web applications. Wikipedia and Facebook are both written in PHP. MySQL is a powerful relational database. Both are open source software and, arguably, power most of the websites in existence. One relatively complex issue when using MySQL with PHP is how to transfer dates to and from the database as MySQL has no less than three ways to store them (using the DATETIME, DATE, and TIMESTAMP types). This article explores the tradeoffs between the various solutions which exist.

jQuery Mobile Tutorial: Basics
Last week, I talked about jQuery Mobile, an advanced Javascript library based on jQuery (obviously) for building mobile web applications. This week, I have just stumbled upon this interesting introductory tutorial on CodeForest, a web development and programming blog. The tutorial explains how to create a basic jQuery Mobile page, use external and internal linking and, even, how to change the theme of your application. Interestingly, the title (i.e. Basics) would imply that other tutorials will shortly follow and I’m sure they’ll all be useful for developing jQuery Mobile applications.

Cofoja: Contracts for Java
Building software is hard. And building software without bugs is much harder. One of the way to master complexity is to use Object-Oriented Programming. Objects are abstractions and communicate by exchanging messages. One way to enhance the semantics of messages is to use contracts (in the same sense Bertrand Meyer used them in his Eiffel programming language.) Cofoja is a new open source software from Google which adds contracts to the Java programming language. With Cofoja it becomes possible to enforce that, for example, a method should take a parameter within a specific range. Google uses Java for its Web Toolkit which is used, for example, for building Gmail.

PhoneGap
PhoneGap is a (yet another) library to build mobile web applications. The idea is to build the application using HTML5 and Javascript and rely on the PhoneGap API to get full access to the underlying features of the mobile phone on which the application is running like the accelerometer, the camera, geo location, contacts, notifications and storage. PhoneGap works with a lot of different smartphones: Android, iPhones, BlackBerry, Windows and Symbian. Thanks to PhoneGap, it becomes possible to build powerful mobile applications which behave and have the same capabilities of native applications without having to learn Objective-C (iPhone) or Java (Android). Life is cool. And it’s cooler when you realise that PhoneGap is open source software.

Our forthcoming training courses

  • No training courses are scheduled.

Picks of the Week #1

You want to receive our Picks of the Week every Monday morning?

Thank you for reading the first edition of the Knowledge7’s Picks of the Week.

Every week, Avinash Meetoo will make you discover interesting articles and websites to help you broaden your understanding of the world of open source software and information technology in general.


Instapaper
Instapaper is “a simple tool to save web pages for reading later” and is 100% free. While browsing, I frequently come across interesting articles that I would like to read at a later time. Up to now, I generally bookmarked the articles… and forget about them later. Instapaper allows me to collect those articles in one central place and read them when I have some free time either on my laptop or using my mobile phone. Instapaper can also print excerpts from the articles so that I can peruse them while relaxing on the beach for example. Now that we’ll be doing this Knowledge7’s Picks of the Week regularly, you have a great incentive to try Instapaper 🙂

BSD for Linux Users
Ever asked yourself the difference between BSD Unix (FreeBSD, OpenBSD, Mac OS X, etc.) and Linux? Want to know the differences between the two main types of open source licences: GPL and BSD? Always wondered how the cathedral compares to the bazaar? Read this great set of articles by Matt Fuller to understand those deep philosophical and technical differences. Matt is a BSD user and the articles are written from his perspective but they are all very well written and straight to the point. As a bonus, you’ll also learn that “Windows Causes Stupidity” and that the “Stupidity” is not an insult.

StackOverflow
StackOverflow describes itself as “a programming Question & Answer site that’s free. Free to ask questions, free to answer questions, free to read, free to index, built with plain old HTML, no fake rot13 text on the home page, no scammy Google-cloaking tactics, no salespeople, no Javascript windows dropping down in front of the answer asking for $12.95 to go away.” And that’s precisely what it is! StackOverflow has really become THE place on the Internet where programmers can find solutions to complex problems by asking those who got the same issues before. It’s much better than fishing in the dark with Google Search (now that our Web is so polluted with spam blogs and websites).

Android-Powered Smartphones
I have a confession to make: I wrote this article myself for the TechKnow magazine. But, heck, why not telling you about it? In it, I explore the world of Android-powered smartphones (like my own Google Nexus One) and try to understand how a mobile platform which was launched in October 2008 has managed to be present on HALF of the smartphones being purchased in the USA at this very moment (the iPhone is at 23%). Is that because Android runs Linux inside? Or is it because it’s open source software which can be used and modified freely by any phone manufacturer? Or is it simply because it’s the best mobile platform ever?

jQuery Mobile
Speaking of smartphones, here is the jQuery mobile framework for building mobile websites having “a unified user interface across all popular mobile platforms” (Android, iPhone, BlackBerry, Symbian, Windows, etc). jQuery Mobile is obviously based on jQuery which is pretty much the standard Javascript framework in use by millions of popular websites all over the planet. Now that smartphones are so pervasive, one cannot develop a website for desktop computers only anymore and jQuery mobile seems to be a worthy candidate framework for building mobile websites. Note that jQuery Mobile is still an alpha release (so expect things to break from time to time) but it’s exciting news nevertheless.

Our forthcoming training courses

  • No training courses are scheduled.

Les réseaux sociaux et l’entreprise

[J’ai écrit cet article pour le Numéro 3 du magazine 100% Mauricien, TechKnow.]

Depuis son lancement en février 2004, le réseau social Facebook a pris beaucoup d’ampleur et est maintenant utilisé par près d’un demi milliard de personnes (ce qui équivaut à une personne sur treize sur la planète.) Logiquement, Facebook est aussi très populaire parmi nos concitoyens et nous recensons presque 225,000 d’entre eux sur ce réseau social (ce qui équivaut à un Mauricien sur cinq.) Naturellement, nous pouvons affirmer sans trop se risquer que beaucoup de ces 225,000 Mauriciens sont plutôt instruits et plutôt confortables financièrement.

[img_assist|nid=180|title=|desc=|link=none|align=center|width=450|height=393]

Le Central Statistics Office publie des données précises sur la composition de la population mauricienne et, lorsque nous corrélons ces chiffres avec ce que Facebook publie, nous constatons que presque un adolescent de Maurice sur trois y est présent ainsi qu’un adulte sur quatre. Du point de vue démographique, nous voyons aussi que Facebook est légèrement plus populaire parmi les garçons que les filles et que les 13-18 (adolescents), 18-22 (étudiants au niveau tertiaire), 22-30 (jeunes professionnels) et les 30-45 (cadres de niveau intermédiaire) y sont bien représentés. Certaines études montrent que les 45-60 (cadres supérieurs) et les 60+ (retraités) sont les tranches d’age en plus forte progression sur Facebook dans le monde. En d’autres mots, à terme, presque tout le monde sera sur ce réseau social.

Des annonces plus ciblées

Henry Ford, père de la voiture moderne, avait observé: « Half of every dollar I spent on advertising was wasted. I just didn’t know which half. » En effet, personne n’est jamais sûr qu’une publicité sera vraiment vue par sa cible.

[img_assist|nid=181|title=|desc=|link=none|align=center|width=450|height=299]

Sur Facebook, il est possible de créer une annonce (qui peut bien sûr être une publicité) et qui ne sera affichée qu’à un public très précis. Par exemple, nous pouvons restreindre la visibilité qu’à ceux habitant un pays précis (e.g. Maurice), une tranche d’âge donnée (e.g. 18-25), un sexe donné (e.g. de sexe féminin), avec des centres d’intérêt spécifiques (e.g. ayant exprimé un goût pour les voitures), avec un statut marital donné (e.g. célibataire) et possédant un niveau d’étude précis (e.g. universitaire). Naturellement, si cette annonce est conçue correctement, la probabilité que l’audience cible clique dessus augmente exponentiellement.

Qu’arrive-t-il lorsque quelqu’un clique sur une annonce? Sur Facebook, il existe deux possibilités. Dans un premier cas, cliquer envoie la personne sur un site web externe à Facebook (e.g. le site web de l’entreprise qui propose les produits vantés dans l’annonce.) Il est même possible que la page affichée soit une page d’accueil différente de la page principale du site web et qui est conçue spécifiquement pour ce public très ciblé.

[img_assist|nid=182|title=|desc=|link=none|align=center|width=450|height=301]

La deuxième alternative est que le clic envoie la personne sur une page Facebook spécialement conçue pour provoquer une interaction forte entre l’entreprise et ce public intéressé. Par exemple, Starbucks Coffee a une présence sur Facebook et a, à ce jour, presque 15 millions de fans. L’intérêt pour Starbucks Coffee est de pouvoir très facilement alors faire passer des messages (e.g. nouveaux produits, nouvelles offres, etc.) à ces fans à peu de frais.

Le Buzz Marketing

On fait plus confiance à un ami qu’à un étranger. Donc qui mieux qu’un ami pour faire la promotion d’un produit? Sur les réseaux sociaux, dès que quelqu’un montre son intérêt pour quelque chose (e.g. en devenant un fan de Starbucks Coffee), tous ses amis sont immédiatement notifiés. Ce type de marketing, que nous pouvons qualifier de viral (parce qu’il se propage comme un virus) est aussi connu comme le « Buzz Marketing » En peu de temps, un produit (ou une marque) peu connu peut se faire connaître en un temps record en utilisant cet effet réseau. N’est-il pas vrai que Frigyes Karinthy a émis l’hypothèse que « everyone is at most six steps away from any other person on Earth, so that a chain of a friend of a friend statements can be made to connect any two people in six steps or fewer »?

Aujourd’hui, l’accent doit être mis sur du contenu multimédia (vidéos et images fixes) pour captiver l’attention des gens. De plus en plus, les entreprises utilisent des applications Facebook et/ou fonctionnant sur les smartphones (iPhone, Android, etc.) pour créer des liens encore plus forts avec ce nouveau public. Développer une application Facebook ou mobile demande une expertise technique que peu d’entreprises possèdent. Cette activité est donc souvent externalisée.

Cette année, un fabricant de voitures très connu, a créé une page sur Facebook (utilisée par presque six millions de personnes à ce jour) et a ensuite incité les gens à les rejoindre sur ce réseau social en utilisant des publicités à la télévision!

Comment augmenter les ventes?

Des études ont montré que les gens aiment beaucoup les coupons de réduction et que ceux-ci les incitent à se déplacer dans les magasins. Grâce aux réseaux sociaux, il devient facile et peu onéreux de distribuer ces coupons et beaucoup d’entreprises (mais pas nécessairement à Maurice) l’ont compris. Par exemple, Domino Pizza et les supermarchés Food Lion, tout deux des États Unis, ont une présence sur Facebook et possèdent de nombreux fans. Ils utilisent cette plateforme de communication pour inciter les gens à venir dans leurs magasins en leur offrant des cadeaux ainsi que des coupons de fidélité.

Naturellement, pour que cela fonctionne, il est important que la relation entre l’entreprise et ses fans soit cordiale. Pour cela, il est essentiel qu’une personne (salariée de l’entreprise ou non, mais dans tous les cas, pouvant parler au nom de l’entreprise) soit constamment à l’écoute des fans pour pouvoir leur répondre (surtout s’ils émettent un avis défavorable) à l’instar du Chief Listening Officer de Dell, Susan Beebe. Le pire étant bien sûr d’avoir une présence sur les réseaux sociaux avec beaucoup de « fans » mais où tous se plaignent…

Le monde a (déjà) changé

Le consommateur dans un futur très proche sera équipé d’un smartphone (voir mon article du mois dernier) offrant des possibilités de géolocation et sera constamment connecté avec ses amis à travers les réseaux sociaux. L’entreprise aura à adapter sa communication pour pouvoir correctement cibler ce consommateur. Aujourd’hui, nous n’en sommes qu’aux balbutiements (Facebook n’a que six ans après tout…) mais qui peut dire ce que 2015 nous réserve? En tout cas, nous serons tous sur Internet.

Our forthcoming training courses

  • No training courses are scheduled.

Announcing our World Cup 2010 TV Guide Android application

We are proud to announce the launching of our first Android application! Download World Cup 2010 TV Guide or scan the QR code above and get the application for free from the Android market.

The FIFA World Cup 2010 is starting in a few days in South Africa. Use this application to know on which TV channels each match is being shown. Choose among the following countries:

  • South Africa
  • Mauritius
  • Réunion
  • France
  • United Kingdom

You can browse day by day. Click on the flag of a country will open a browser with the latest information on each team participating in the World Cup (courtesy of Wikipedia.)

This Android mobile application is free and has been developed by Avinash Meetoo, Managing-Director of Knowledge7. To get it, either search for “World Cup 2010 TV Guide” in the Android market or scan the QR code above with your Android barcode scanner.

Changelog

Name    Date            Comment
======= =============== ======================================
1.0     2010-06-07      First release
1.1     2010-06-07      Corrected England's flag
1.2     2010-06-07      Added United States (EST)
1.3     2010-06-08      Corrected database bug
1.4     2010-06-09      New football icon
1.5     2010-06-26      Round of 16 matches updated
1.6     2010-06-27      Updated TV coverage in England
1.7     2010-06-30      Updated quarter final matches
1.8     2010-07-04      Updated semi final matches
2.0     2010-07-29      Updated 3rd place and final matches

How I did it?

Developing an Android application is straightforward… if you know Java. Android applications are written using Eclipse and an excellent plugin from Google which allows you to test your app on a virtual Android device as well as your real smartphone (I have a Google Nexus One…)

I spent a few days understanding user interface layouts and how to manage a database but this was time well spent.

Download World Cup 2010 TV Guide and have fun!

Our forthcoming training courses

  • No training courses are scheduled.

Launch of ThreeBags

[img_assist|nid=68|title=|desc=|link=none|align=center|width=400|height=289]

We are proud to announce the launching of our new recommendation website called ThreeBags and which is accessible at

http://www.threebags.com/

ThreeBags showcases the best basic, value and prestige mobile phones, smartphones, digital cameras, MP3 players, LCD televisions, home cinema systems and laptops available in Mauritius.

You will notice that there are no advertisements on ThreeBags. Additionally, we do not get paid by anyone to recommend a specific product. Our evaluation criteria are product features, design, availability in Mauritius and price only.

Visit ThreeBags at

http://www.threebags.com/

ThreeBags also has a blog which is accessible at

http://blog.threebags.com/

Our forthcoming training courses

  • No training courses are scheduled.

Some feedback on our Linux Level 1 and Level 2 courses

We organised a Linux Level 1 course designed for beginners in February. The topics covered were Linux installation, package management using RPM, the command line, pipes and filters, regular expressions, vi, users, permissions, filesystems, quotas, process management, TCP/IP, the X-Window system, remote desktop access, etc.

I was fortunate to have a group of highly motivated trainees with a keen interest to learn.

At the end of the course, I asked the trainees for some feedback and I was overwhelmed with positive comments. For example, KL said that “it was a great pleasure working with someone knowing his subject very very well.” And AG added “This course will help me run Linux on more servers in my company.” I am delighted that the trainees have found excellent value in my courses. Preparation work was very hard (especially because this was the first time I was running this course) but worth it given the nice comments I got.

From 2-6 March, we had a Linux Level 2 course for those having followed Level 1 or those already having some experience. Topics covered were TCP/IP configuration and troubleshooting, host security, OpenSSH, DNS, NFS, SAMBA, Apache web server, Mail Transfer Agent, kernel management, runlevels, logging, scripting, printing, etc.

Similarly, I asked the trainees for their feedback and, once more, they were happy with the quality of the course. AG said “The course was outstanding.” and WM liked my “Anecdotes!”. As an ex-University lecturer, I think that learning requires participation and the best way to keep the trainee alert is to punctuate the course with relevant anecdotes on the history of computing and/or current technologies.

So I am a happy man. I am happy that all the trainees who came (and who payed me) returned to their respective firms with added knowledge and with added enthusiasm for Linux and Open Source Software in general.

Thank you to all those who came for training. The first batch will always remain something special.

Our forthcoming training courses

  • No training courses are scheduled.

Our Linux courses are fully MQA approved

After a few weeks of patience, I can proudly tell you that Knowledge7 is finally fully Mauritius Qualifications Authority (MQA) approved.

Specifically,

  • Our Training Institution is MQA approved
  • Our Manager is MQA approved (Jaynarain Meetoo)
  • Our Programme Officer is MQA approved (Avinash Meetoo)
  • Our Trainer is MQA approved (Avinash Meetoo)
  • The Linux Level 1 Training is MQA approved
  • The Linux Level 2 Training is MQA approved

Phew!

Book your seats now as places are limited.

Our forthcoming training courses

  • No training courses are scheduled.

Launching of the Knowledge7 website

I am delighted to announce to the world the official launching of the Knowledge7 website. Our company aims to be a professional-level Open Source Software & Linux service provider solving real problems that our clients face in their day-to-day business.

Wish us luck 🙂

Our forthcoming training courses

  • No training courses are scheduled.
« Previous Page

Looking for something?

Want to know more?

Get our newsletter

Discover the latest news, tips and tricks on Linux, the Web and Mobile technologies every week for FREE

This work is licensed by Knowledge7 under an Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.