Feeds:
Posts
Comments

En Tunisie, une chose dont je suis fier est la diversité des communautés dans le domaine des nouvelles technologies de l’information et de communication. Car, pour tout les passionnés, ils vont un jour ou un autre retrouver un endroit où ils peuvent partager leurs passions.

Avec ce billet, j’ai voulu partager mon expérience puisque j’ai eu l’occasion de s’intégrer dans plusieurs communautés, que se soit lors de mes études ou bien après.

Si vous êtes un étudiant, que vous soyez dans une spécialité TIC ou bien passionné de l’informatique, vous aurez toute la chance d’avoir un ou plusieurs clubs dans votre école spécialistes dans le domaine TIC. Vous pouvez trouvez ceux qui s’intéressent au développement de logiciels, que se soit web, mobile ou autre. Il y en a ceux, qui s’intéressent aux solutions Open Source ou encore ceux, qui se spécialisent dans les solutions d’un éditeur bien précis comme Microsoft ou Google.Vous pouvez trouver d’autres dans le domaine de la robotique ou encore la sécurité informatique. La diversité des activités des clubs enrichit tout l’écosystème communautaire puisque c’est à partir de ces clubs, que votre carrière au sein des communautés va démarrer.

Les clubs c’est bien, mais ça se termine dès que vous terminez vos études. Heureusement, vous allez vous trouver face à plusieurs autres choix. Dans la partie qui suit, je vais vous présenter essentiellement les communautés dont j’ai eu l’occasion d’être membre.

Microsoft Student Partners, pour les passionnés des technologies Microsoft: une communauté d’étudiants dont j’ai eu l’occasion d’être membre pendant deux ans grâce au club .NET+ de la faculté. Elle est encadrée par Microsoft Innovation Center Tunisie et fait partie d’un programme élaboré par Mircosoft, que vous pouvez en lire de plus ici.

Tunandroid: la première communauté spécialisée dans la technologie Android, j’y étais membre vue que j’étais président du club Infoplus de la Faculté des Sciences de Tunis et notre club était le premier partenaire de cette communauté très active. Vous pouvez visiter leur sites web [1] ou vous inscrire dans leur mailing-liste tunandroidcom@googlegroups.com.

Mozilla Tunisie: la communauté locale de Mozilla [2], elle s’intéresse à diffuser l’esprit Mozilla, à savoir un web ouvert à tout le monde. Ils participent à plusieurs événements et collaborent avec plusieurs autres communautés Mozilla locales surtout celles arabes. Vous pouvez visiter leurs site web [3] et avoir plus de détails sur leurs activités. Dans cette communauté, je fait partie du programme Mozilla Reps, les représentants de Mozilla.

Tunis GTUG: c’est un chapitre de Google Technology User Group, un programme lancé par Google pour promouvoir ses technologies. J’ai eu l’opportunité d’être le responsable de l’un des 5 projets lancés cette année par la communauté à savoir HTML5. Les autres projets sont Google Web Toolkit, Python, Google Adwords et Google Apps. Vous pouvez vous inscrire à la mailing-list tunis-gtug@googlegroups.com.

Ces quatre communautés sont celles dont j’ai eu une expérience avec elles, bien-sur il y en a d’autres. Je peux citer la communauté Ubuntu-tn et Fedora Tunisia, qui s’intéressent à des distributions Linux bien précisent.

 

Finalement, j’invite chaque étudiant à essayer de s’intégrer dans un ou plusieurs clubs, de diversifier son expérience avec des clubs et des communautés dans différents domaines parce-que finalement tout est complémentaire et la diversité ne fait qu’enrichir vos connaissances et vos compétence.

N’hésitez pas à me faire part de vos commentaires surtout que j’aurai peut être pas mis des communautés dont j’ai pas eu l’occasion de connaitre🙂.

Dans ce billet, je vais détailler mon expérience étape par étape pour l’obtention du titre “Mozilla Reps” ou représentant officiel Mozilla.

L’expérience a commencé à partir de la mailing-liste de la communauté “Mozilla Tunisia” [1] avec un lien vers ce billet [2] qui détaille la démarche à suivre pour postuler à ce titre. J’ai bien suivi les détails en remplissant les formulaires nécessaires. Après quelques temps j’ai reçu une notification par mail de la part de BugZilla m’indiquant qu’ils m’ont fixé un mentor. J’étais contacté par la suite par le mentor en me demandant de fixer une date pour une réunion sur IRC soit le Mercredi à 20h soit le Samedi 14h30. Le Mercredi 20h me convenait  parfaitement, j’ai répondu alors au mail en indiquant la date que j’ai choisi.

Le jour J, j’étais sur IRC #remo et j’ai contacté en privé mon mentor. On a eu à discuter presque une demi heur. Il s’est présenté, moi même d’ailleurs et il m’a demandé comment je peux contribuer pour la communauté Mozilla, mes expériences personnelles et j’avais à décrire un scénario où je dois parler de Mozilla pour un étudiant. Finalement la réunion c’est bien passée, le mentor été très sympa. Il m’a affirmé que j’aurai la réponse prochainement. Et heureusement j’ai eu après 5 minutes une notification par mail m’indiquant que j’été accepté suite à l’entretien. J’ai reçu après la démarche à suivre pour continuer mon dossier de candidature. J’avais à créer un nouveau compte dans le Wiki de Mozilla et à signer un document et l’envoyer à mon mentor. Finalement, j’étais notifié que je suis officiellement un “Mozilla Reps”🙂.

Vous pouvez me retrouver dans la liste des “Mozilla Reps”[3] avec le pseudo “Hani_dev”. Vous pouvez aussi visiter mon profil sur [4].

Finalement, cette expérience de quelques jours m’a motivé encore plus pour contribuer dans cette communauté surtout que je suis déjà un FAN des produits Mozilla depuis des années. Je vous encourage énormément à vivre cette expérience😉.

Liens:

[1]: community-tunisia@lists.mozilla.org
[2]: http://mozilla-tunisia.org/article/remo/
[3]: https://wiki.mozilla.org/ReMo/People
[4]: https://wiki.mozilla.org/User:Hani_dev

JasperSoft Studio logoI have discovered “JasperSoft Studio” when I have been working on my graduation project( I’m still working on it). I had to compare it with iReport and JasperAssistant and I found working with JasperSoft Studio more interesting even if it stills under development  and yet is on it’s Alpha 0.2.3 version. It is an Eclipse plug-in witch offers the ability to graphically design JaspeRreports  templates( see wiki and docs for more details). The “JasperSoft Studio” team gives this roadmap of the development steps of the plug-in:

I have made a screen-shot with some details of the plug-in running:


For those who are not familiar with the Eclipse environment, the views, perspectives, etc. are some U.I. components offered by the Eclipse RCP platfrom( find here a good tutorial to begin with Eclipse RCP). JasperSoft Studio offers extensions to these components like the “Repository View” witch manages the DataSources( replaced by DataAdapters from version 0.2.3). You can activate this view by going to “Window->Show View->Other” and select Repository from the “Jaspersoft Studio”node. The plugin also contains a graphical editor and a plain text editor, there are three page as you can see in the figure: Design page, Source page and Preview Page. The first page is for the graphical designer so you can drag and drop elements from the palette at right. the second page is the Source Page and it contains the xml code of the report template( the file extension is .jrxml). The design and the source code are synchronized.

On the Preview Page, you can select a data-source and get a preview of the final result, you can also save it to a supported format( pdf, docx, html, rtf, etc.).

At this level of the plug-in( version 0.2.3), only some data sources are supported like JDBC, XML, Excel files, CSV. There is no query designer like the one included on iReport( project SQLeonardo) but I think that building this project on Eclipse RCP platform will open a huge perspectives of extensions because Eclipse offers many interesting plug-ins that “JasperSoft Studio” can use to be more powerfull and one of them is the DTP Project( you can see this discussion on the forum about using DTP data source with JasperSoft Studio)

Finally, this is the first post about JasperSoft Plugin, I have made a quick tutorial around it and I’m working on a plug-in that extends JS Studio. In the next post(not yet written), I will try to show how I have extended the plug-in.

Links:

   – JapserSoft Studio website: http://jasperforge.org/projects/jaspersoftstudio
– JasperSoft Studio forum: http://jasperforge.org/projects/jaspersoftstudio/forum/
– JasperWorld 2011: http://www.jaspersoft.com/sites/default/files/jw-presentations/JW11_JaspersoftStudioinAction_GiulioToffoli.pdf

>Startup Week-end

>

“Startup Weekend” est un évènement reconnu à l’échelle internationale et qui vient de prendre place à Esprit comme une première en Afrique. J’ai participé dans une équipe de cinq personnes dans un projet qui consiste à la création d’une plateforme web de référencement d’associations.

Je veux remercier les organisateurs qui ont montré un degré de professionnalisme de haute qualité même s’il est important de signaler que la plus part sont des étudiants volontaires. Une ambiance très sympathique règne à Esprit; faut l’avouer; et les coachs sont de qualité et à l’écoute de nos questions en étant toujours aussi objectifs vis à vis des idées.

L’équipe se compose de Kais Chakroun, Zeynel Glaoui, Brahim Guerbouj, Omrani Ameni et moi. On a manqué déjà un membre qui est Slim Ayech, celui qui a eu la première idée mais qui n’a pas put participer à cause des examens. On est tous des informaticiens et ceci ne nous a pas beaucoup aidée même si le projet et du genre TIC puisque nous ignorant tout aspect financier, juridique, marketing, design, étude de projets… Malgré que SWTunis nous a formé pendant deux jours au Microsoft Innovation Center, mais ça c’est avéré insuffisant pour nous et nous n’avons pas trouvé ce types de compétences qui étaient rares à trouver déjà.

Je pense que dans les prochaines versions, SWTunis sera plus diversifiée en compétences et elle aura encore plus de succès. Notre pays à besoin de ce genre de compétitions, encourageant ces jeunes à monter leurs propres startup.

Site web “Startup Weekend” : http://tunis.startupweekend.org/
Hashtag: #swtunis , #startupweekend
Vidéo de la présentation de notre idée par Kais Chakroun:

Présentation du projet ALabel from Hani Chalouati on Vimeo.

Vidéo remise du prix:

>
Symfony est un framework web PHP5 développé par Sensio Labs qui offre aux développeurs une “facilité” et une rapidité pour le développement d’applications web. Il est en architecture MVC et s’intègre facilement avec des IDEs telque Netbeans et Eclipse ( et bien d’autres ). Il est portable et dispose de fonctionnalités en ligne de commande( création de modules, gérer le backend …)
Pour plus de détails: http://fr.wikipedia.org/wiki/Symfony

Le but de ces tutoriels est de vous faire part de l’expérience que j’ai pu récolter durant mon aventure avec Symfony et après la lecture de la documentation officielle: http://www.symfony-project.org/jobeet/1_4/Doctrine/fr/

Dans ce premier atelier, on va préparer l’environement de développement pour bien débuter le développement avec Symfony. Les choix techniques que j’ai fait ne sont pas guidés par des arguments bien précis, mais seulement après avoir tester plusieurs solutions et en choisir une qui me convient. Donc vous pouvez choisir d’autres manières de procéder et d’autres environnements, mais référencez vous à la documentation officielle puisque je vais pas entamer plusieurs points dans cet atelier qui sont bien expliqués dans la documentation.

On va travailler sur Windows
1- Préparation de l’environnement de développement:
– Télécharger Netbeans 6.x( >= 6.8) sur http://netbeans.org/
– Télécharger Symfony Framework 1.4.x sur http://www.symfony-project.org/
– Installer le plugin PHP et Symfony sur Netbeans en suivant ce tutoriel http://netbeans.org/kb/docs/php/symfony-screencast.html
– Installer SVN et TortoiseSVN sur http://tortoisesvn.net
– Télécharger Wamp Server sur http://www.wampserver.com/

Pour ceux qui aiment Linux:
– Il vous suffit seulement d’installer une solution LAMP( http://doc.ubuntu-fr.org/lamp ) et installer les packages relatifs à Subversion.

Une fois vous réussissez cette étape, la prochaine étape est encore de la configuration:
2- Configurer Symfony avec Netbeans:
– Allez vers: Tools–>PHP–>Symfony et indiquez le chemin du script Symfony.
– Créez votre nouveau projet Symfony: File->New Project->PHP.

Astuces: En parcourant les différents étapes lors de la création du nouveau projet, voici quelques pièges à éviter:
1- Le choix de la version de PHP, vérifiez que votre hébergeur est compatible avec la version avec laquelle vous faites du dévelopement car entre PHP 5.2/5.1 et 5.3 il y a quelques différences.
2- Pour tester votre projet après sa création, configurez votre serveur Apache local en ajoutant un “virtual host”. La configuration est simple que ce soit sur Windows ou Linux, je vais pas l’expliquer dans cet atelier.
3- Si vous avez jeté un cout d’œil sur la documentation, vous aurez tomber sur une commande de vérification de la bonne configuration de Symfony:

” Vérification de la configuration du serveur $ cd ../.. $ php lib/vendor/symfony/data/bin/check_configuration.php “

Sur Linux ou sur Windows, vous devez avoir ce résultat( une capture depuis Linux )
Voici quelques indications pour avoir ce résultat, ce sont des commandes Linux commentées, pour Windows, j’ai pas essayé d’installer un accélérateur PHP:
Modification du fichier php.ini
#Réglage du problème de date locale
date.localtime = Africa/Tunis

#reglage du problème du short_open_tag
short_open_tag = Off

Commandes Linux
#Installation d’APC
apt-get install php-apc

#Installation du Module XLS
apt-get install php5-xsl

#installation de svn
sudo apt-get install subversion libapache2- svn

Et finalement, redémarrage d’Apache
#Redémarrage du serveur Apache
service apache2 restart

J’ai aussi eu la curiosité de tester Symfony 2 et le résultat de la configuration est le suivant:

Voilà, si vous arrivez à ce stade, vous avez grimpé la première étape dans l’échelle, on n’a pas commencé le développement, tout ceci est une configuration aussi importante que le développement. Avec ce tutoriel associé au Day 1 de la Documentation du projet Jobeet. Vous allez bien réussir cet atelier.

Dans le prochain atelier, on va aborder le sujet des plugins dans Symfony. C’est encore tôt pour en parler, mais le temps de le préparer, vous pouvez bien avancer dan la documentation officielle.

See You !

> Le Mercredi 15 décembre 2010 à l’hôtel Karthago Le Palace, le Ministère des Technologies de la Communication a organisé la 6ème édition de la Conférence Nationale sur les Logiciels Libres en Tunisie. Dans le programme, des conférences, des ateliers, des challenges et des Exposition pour les Start-ups et la communauté open source.

Ce que j’ai bien apprécié dans cette conférence c’est la qualité d’organisation et l’ambiance sympathique qui a régné au cour de la conférence. J’ai rencontré plein d’amis, j’en ai connu plein de nouveaux. Beaucoup de clubs Open Source ont participé, ce fût une bonne occasion pour côtoyer des professionnels dans le monde de l’Open Source et des fondateurs de communautés Open Source.

Le programme de la journée était riche en terme de qualité des conférenciers et de sujets de discussions avec les grands titres: le Cloud et les applications mobiles et l’embarqué. le premier “keynote” a était présentait par Mr Mark Shuttelworth, le Fondateur du Projet Ubuntu.

Quleques articles relatifs à l’évènement:
http://www.tunivisions.net/index.php?f=fiche-article&elementId=10946
http://www.webdo.tn/2010/12/16/quand-windows-7-fait-son-apparition-chez-les-logiciels-libres/
http://web-01.blogspot.com/2010/12/tunisieresume-de-la-6eme-edition-de-la.html

Quelques photos:


>Au cours de cette dernière période, mon laptop commence à avoir des problèmes: sur-chauffage, problème de batterie, performances en baisse…
J’ai eu alors l’idée de rechercher un peux comment régler ces problèmes et éviter de compliquer encore la situation. Et voici donc le résultat des mes recherches:

1- Le sur-chauffage du PC Portable

Ce problème est l’un des inconvénients des Laptops, ceci est dut à leurs taille réduite et le fait qu’il n’y a pas suffisamment de flux d’air à l’intérieur du portable ce qui cause le sur-chauffage des composants électroniques( CPU, GPU, Disque Dur, WiFi …).

Après un temps d’utilisation, les entrès, les radiateurs et les ventilateurs de vos laptops peuvent présenter des couches de poussières qui réduisent la circulation de l’air dans le portable comme le démontre cette image:



Pour remidier à ce défaut, vous pouvez utiliser ces conseils que j’ai validé par l’expérience personnelle🙂.
– Ne jamais mettre vos portables sur vos jambes, couvre lit, tapis… Optez pour des support spécialement conçu pour les portables équipés par des ventilateurs. Leurs prix en Tunisie varient entrent 7DT et 40DT( peut être plus, ça dépend de la marque). Voici quelques images de supports disponibles en Tunisie:
1- Logitech- Alto Express( sans ventilateur), prix 40DT







2- Intex( C’est le support que j’utilise), prix: entre 5DT et plus( ça dépend de la boutique et du fabriquant)

– Nettoyez vos portables régulièrement à l’aide d’une bombe d’air comprimé en l’appliquant sur les entrés et en vérifiant que votre portable est hors tension, la batterie débranché et qu’il est sur la température ambiante( pour éviter les chocs thermiques pour les composants).
Voici comment l’appliquer:

2- Maintenance de la batterie:

Les batteries qui équipent les nouveaux portables sont dotées de circuits intelligents qui détectent l’état de la batterie, le système est appelé Smart Battery System. Les batteries Li-Ion ont une durée de vie moyenne de 18 à 24 mois( tout dépend de l’utilisation de la batterie) et des cycles de charge/décharge de 600 à 800 cycles.
Pour bien maintenir votre batterie voici quelques suggestions d’utlisation:
– Étalonnage de la batterie: Chaque 3mois, effectuez un cycle de décharge complet( jusqu’à 5% de la capacité de la batterie, n’essayez pas de la déchargé à 0%, ça peut endommager la batterie) et de recharge à 100%.
– Si vous utilisez toujours votre PC sur secteur( plus que 2 semaines), retirez la batterie et rangez là suivant les indication du constructeur.
– Éloignez la batterie des températures élevées, ceci peut diminuer ça durée de vie et ça capacité. Si le portable chauffe, vous devez éviter ce sur-chauffage pour ne plus influer sur l’état de la batterie.
– Utilisez les outils logiciels pour le suivis de l’état de vos batteries, exemple: HP Battery Check

– Le risque des batteries Li-Ion( vidéo):

J’ai trouvé cette vidéo qui présente le risque d’explosion de la batterie Li-Ion( à ne pas tester chez vous)

Untitled from Hani Chalouati on Vimeo.



3- Quelques outils logiciels
Il existe beaucoup d’outils logiciels qui permettent le suivis de l’état du pc, mais je vais citer ceux que j’ai essayé et que j’utilise personnellement.
– HWMonitor de CPUID: Il affiche les températures des différents composants du PC qui sont équipés de sondes thermiques et compatibles avec le logiciel
– CPUZ: Ce logiciel vous affiche des informations détaillées sur le processuer, la carte mère, carte graphique, mémoire …

– GPUZ: Il affiches des informations très utiles sur la carte graphique( type de processeur, température …)

– Speed Fan: Il permet l’affichage des températures et le contrôle de la vitesse des ventilateurs( cette option n’est pas disponible sur mon portable)

– Linux: lm-sensors: C’est un logiciel sur linux qui permet la détection des modules sur linux qui permettent la détection des températures du système. Après l’installation de ce package, j’utilise sur KDE4, un plasmoide qui m’affiche la température du sytème en temps réel.
4- Conclusion
Il reste beaucoup d’autres détails à discuter, mais j’ai voulu partager le plus important celon ce que j’ai expérimenté et finalement, les manuels des constructeurs sont la meilleur façon de savoir comment maintenir son matériel.