mercredi 11 janvier 2012

Les licences et contributions

Il est maintenant possible de développer une application en employant que des librairies libres sous diverses licences telles qu’Apache, LGPL, BSD...
sans aucunement ne devoir rien à personne.

Certaines licences telles la BSD peuvent être profitables à certaines entreprises qui prennent sans jamais ne rien donner.

Alors que certaines entreprises n'hésitent pas à payer pour divers logiciels ou librairies qui ne sont souvent sous-utilisés, peu semblent contribuer aux librairies qu'elles utilisent pourtant.

À défaut de contribuer techniquement, il reste les dons.

Si chaque entreprise ne versait qu'une très faible partie de ce qu'elle aurait dû payer pour une librairie semblable, mais propriétaire, ces librairies
pourraient évoluer beaucoup plus rapidement. Par exemple, quelques librairies Javascript qui propose un look "bling bling" coûtent souvent plusieurs milliers de dollars pour être utilisable pour quelques développeurs.

Allouer quelques heures de travail d'un employé en retour d'emploie d'une librairie libre est t'il trop compliqué pour certain dirigeant?

Après tout, s'ils utilisent ces librairies c'est qu'il doit y avoir quelques bonnes raisons?

Coût, temps, aisance de trouver du personnel la maitrisant, documentation, support, maintenance....

À l'heure où le "time to market" est souvent cruciale, allouer quelques heures de travail de ses employés ou bien un don ne me semble pas trop exagéré.

Avez-vous déjà travaillé pour une entreprise qui a donné de l'argent ou bien consacré du temps pour des projets libres alors qu'elles auraient pu outrepasser cet aspect de partage?
Je n'ai malheureusement jamais eu cette chance. Pourtant à chaque projet nous utilisons très majoritairement que des outils libres.
Il serait intéressant de connaitre le nombre de contribution vs le nombre d'utilisateurs pour les librairies libres les plus utilisées.

Utiliser des librairies libres c'est bien, y contribuez c'est encore mieux.

mercredi 4 janvier 2012

Matériel libre

Matériel libre

Les logiciels libres ont su rapidement se propager assez rapidement dans différents domaines informatiques. Il est maintenant présent un peu partout: mobilité, web, bureau, CAD, jeux....


Des étudiants, des passionnés, des employés font partie de cette communauté.




Est-il possible qu'à terme ce succès ait lieu aussi du côté du matériel?

Après tout, il y a surement pas que du talent que chez les informaticiens. Le marché de l'électronique n'est pas créé par des
extraterrestre. Il y a donc un potentiel énorme si les gens issus de ce domaine empruntent un chemin similaire que ceux de l'informatique.

Les très grandes entreprises font de plus en plus que de la conception et externalise la fabrication à des tiers.

Malgré un départ timide, il est possible de trouver du matériel libre. Malheureusement, les médias ne communiquent que trop
peu sur le sujet. Pourquoi si peu de pub de leur part alors qu'il y a de nombreux projets intéressants?


CPU

Il y a quelques années, Sun a utilisé la licence gpl pour leur processeur UltraSPARC T1 et UltraSPARC T2 RTL. Le projet OpenSparc a démarré à la suite de cette libération. Il y a eu jusqu'à maintenant peu de résultats concrets.


La plus grande communauté de matériel libre, OpenCores a créé le projet OpenRISC. La vocation
de ce projet est de créer une série de CPU Risc généraliste.

Il y a déjà quelques implémentations commerciales de cette architecture.

Cette architecture est déjà supportéepar le noyau Linux 3.1.

Espérons que ce CPU est plus de succès que le OpenSPARC.




Microcontrôleur

Un succès beaucoup plus grand a eu lieu avec les microcontrôleur Arduino et la BeagleBoard.

Une communauté s'est rapidement créée autour de ses cartes.
Ces cartes ont été utilisées pour de la robotique, contrôleur de lumière...
Une console de jeux portable, la pandora,  a même été réalisée à partir de la BeagleBoard.

Divers


Quelques autres projets libres existent dont certain sont plutôt inattendu tel que des voitures, moto, éolienne, carte graphique, machine à laver et bien d'autres.


Vous avez un talent en électronique, vous êtes inventeur, partager vos connaisses.

Est-ce qu'un jour le matériel libre atteindra la même envergure que celle des logiciels libres?

lundi 2 janvier 2012

RAD libre

Les RAD sont des applications pour développer rapidement. 
Visual Basic, Delphi, C++ Builder sont quelques RAD proprétaire connu.

Il y a eu Kylix qui a été un port de Delphi et C++ Builder sous Linux.

Les deux outils cités ci-dessus facilitent grandement la création d'application. Il est possible de créer des interfaces graphiques en employant le glisser/déposer.


Il est un environnement de développement qui utilise la syntaxe du langage Basic. Il est par contre orienté objet.

Il est disponible pour Linux, Mac OS X et FreeBSD.

Il y a une couche d'abstraction au niveau de l'interface graphique qui permet d'utiliser Qt ou GTK de façon transparente.
Cette possibilité est aussi disponible pour les bases de données.

L'interpréteur de la version 2 tourne sous l'architecture ARM.
Il ne faut pas s'arrêter au langage Basic. Ce dernier a une mauvaise réputation. Un ERP, laurux, a même été développé à l'aide de cet outil. Est-il préférable de remettre un projet en retard ou bien a temps, mais lésiner légèrement sur les performances?

Les machines actuelles sont très performantes. Un utilisateur ne verra probablement pas la différence si un traitement dure 1 seconde contre 2.


Cet outil s'apparente à Delphi, il est dédié au langage Pascal. Il supporte les systèmes d'exploitations suivantL Windows, Mac, OS/2, Unix/Linux/BSD, NetWare, MorphOS, DOS .

D'autres systèmes sont aussi supporté, sans compter différent types de cpu tel que arm, mips, sparc.

Un programme pourra donc fonctionner sur de multiples plateforme s'il ne fait pas appel à des éléments spécifiques à un système.

Il est possible de prendre un programme Delphi et de le compiler sous Lazarus moyennant diverses manipulations. Il faut bien sûr voir si des éléments graphiques ou bien librairies externes peuvent supporter cette transformation. Le port d'un programme est grandement facilité.

La communauté est très grande et réactive.

Certes, la cible de ces outils n'est pas la création de système d'exploitation, ils permettront d'arriver à bon port dans vos projets.

Facilité ne rime pas toujours avec performance médiocre.
Si vous devez développer une application rapidement, essayer de nouveaux outils, pensez à ces deux outils.

samedi 31 décembre 2011

Logiciel propriétaire sous Linux

Lorsqu'un logiciel libre ne comble pas nos besoins ou n'existe tout simplement pas pour les fonctionnalités désirées, dois t'on pour abandonné Linux, opter pour un logiciel qui ne correspond pas à nos besoins ou bien opter pour un logiciel propriétaire?  
J'aurais tendance à prendre la dernière solution. Je préfère perdre un peu de liberté que perdre tous les avantages d'utiliser Linux et les logiciels libres.

Communication
Lorsque le logiciel communique avec d'autres tel que des messageries instantanées, les possibilités sont limitées. Si aucun autre logiciel n'a implémenté le protocole, à moins de changer d'amis, il ne sera pas possible de communiquer avec eux. Il est plus simple de changer ses habitudes que de le faire pour x personnes.

Skype est le parfait exemple d'un tel dilemme. Il n’y a pas vraiment d'application équivalente aussi simple d'emploi. Celles utilisant SIP sont encore loin de la facilité que procure Skype. Il suffit de créer un compte et d'inviter ses amis. Aucun autre logiciel libre ou propriétaire ne m’a permis autant de m'affranchir de la configuration.

API développement
Une autre raison qui peut pousser à l'emploi de solution propriétaire et que certain développement est été entamé sur des solutions propriétaire.
La continuité d'utiliser peut être d'ordre financier, il peut être plus rentable économiquement de continuer d'employer une telle solution que de devoir tout refaire ou de refaire une partie. Les solutions libres pourraient aussi demander trop de modifications à l'existant.

Aucune équivalence à fonctionnalité équivalente
Il n'est pas rare pour certain domaine plus spécialisé de trouver des logiciels libres qui n'ont pas de fonction aussi avancée que certaines solutions propriétaires.
Par exemple en en CAO, les solutions libres sont limitées. Cependant en solution propriétaire il existe quelques solutions tels que




Il ne faut pas perdre de vue que des solutions libres existent, elles peuvent convenir à certaines personnes. 

Elles avancent et pourraient un jour convenir à encore plus de gens.

Jeux
La plateforme de choix des éditeurs de jeux vidéo demeure celle de Microsoft. Certains, encore trop peu à mon avis portent leurs jeux sous Linux.

Par exemple des titres tels que Unreal Tournament, SimCity 3000, Shogo sont sortis sous Linux. 

Cette alternative peut être intéressante pour ceux qui jouent en réseau avec des personnes utilisant Windows.

Certains jeux propriétaires passent en libre après quelques années.
Les jeux libres par contre peu à peu, mais le nombre est encore très faible.

La solution d'utiliser wine ou bien leur équivalent propriétaire pour pouvoir jouer à des jeux prévus à la base pour Windows peut être une alternative.

Alors faut'-il opter pour la liberté totale ou bien partielle?

vendredi 30 décembre 2011

Entraide

Lorsqu'une personne débute avec un nouveau logiciel ou système d'exploitation, elle peut avoir à surmonter certaines difficultés qui peuvent parfois sembler difficiles alors que c'est plutôt simple avec un petit coup de pouce.

Il existe une multitude de moyens pour avoir de l'aide avec les logiciels libres

  • organisme
  • livre
  • forum
  • groupe de discussion
  • irc






Quelques-uns ont été sélectionnés pour leurs qualités, dimensions de la communauté et facilité d'approche. Une recherche sur Google vous permettra dans trouver davantage.

Meetup est un site web qui permet de participer à des rencontres ou bien d'organiser des rencontres autour de divers sujets.


Gul Québec présente un ensemble des activités du libre dans cette province. Différents groupes d'utilisateur y sont accessibles.



Groupe de discussion

Ce groupe est modéré est permet de restreindre les trolls qu'on peut retrouver ailleurs.
fr.comp.os.linux.moderated


Irc

Sur le serveur freenode, il existe de nombreux channels sur Linux tel que
#linuxfr
#debutant
#ubuntu
#suse
#kde

En cas de problème pour un logiciel, il est fort probable qu'un channel est été créé pour celui-ci.

Forum


Ces deux forums sont anglophones et axés principalement sur Linux, les questions sur les logiciels libres y trouvent aussi leur place.
linuxforums
LinuxQuestions

futura-sciences

LinkedIn

Il existe de nombreux groupes sur les logiciels libres et Linux sur linkedin.

mardi 27 décembre 2011

Richard Stallman, père des logiciels libres


Richard Stallman, considéré comme le père des logiciels libres est né aux États-Unis en 1953.

À 17 ans, il créa un préprocesseur pour le langage PL/I. Il fit ses études à l'Université Harvard, mais arrêta son doctorat pour se consacrer davantage à son travail au département de recherche en intelligence artificielle au MIT. 

Durant ces années au MIT, l'ambiance changea peu à peu, ses confrères lorgnèrent de plus en plus vers des entreprises qui faisaient des logiciels propriétaires.

Lorsqu'il était au MIT, il publia (1977) le premier algorithme sur les méthodes d'apprentissage (learning algorithms). Son algorithme le dependency directed backtracking est encore aujourd'hui un des plus généraux et puissant.

Le déclic se fit en 1980 lorsqu'il ne put corriger les problèmes de la nouvelle imprimante de son laboratoire, car les sources n'étaient pas disponibles. Les sources avaient toujours été disponibles auparavant. Il prit alors conscience que l'éthique du hackers qui est le partage des connaissances, le refus de l'autorité et le perfectionnisme était en train de disparaitre.

En 1976, la première version de Emacs vit le jour. C'est un éditeur texte extensible. La sortie de ce logiciel marqua les bases du partage communautaire. C'est aujourd'hui un éditeur texte fort reconnu.

En 1983, il a annoncé la création d'un système d'exploitation GNU totalement libre.

En 1984, il quitta son travail au MIT pour se consacrer entièrement à son projet GNU.

En 1985, il créa la FSF, qui est une organisation pour la promotion des logiciels libres. Il écrivit aussi les motivations derrière le projet GNU.

En 1986, il créa GNU Debugger, un outil pour débugger les outils GNU.

En 1987, la première version bêta de gnu GCC vit le jour. C'est un ensemble de compilateurs, il supporte maintenant une panoplie de langage.

En 1989, la première version de la licence GPL vit le jour. C'est aujourd'hui une des licences les plus utilisées dans le monde des logiciels libres.

En 1991, Linus Torvalds utilisa les outils de développement GNU pour créer le noyau Linux.

Depuis plus de 20 ans, il donne des conférences un peu partout à travers le monde pour la liberté.
La liberté des utilisateurs est de plus en plus en danger avec les grandes entreprises telles que Apple, Google et Microsoft.
À leur du cloud, il est aisé de surveiller les utilisateurs et de maximiser les données sur eux. La censure fait partie des opérations de nombreux pays. Est'il possible que la liberté actuelle sur le web soit un jour chose du passé?

Il a reçu plus d'une dizaine de doctorats à titre honorifique.

Considéré par certain comme un fou, par d'autre comme un dieu, il demeure l'auteur d'un mouvement et un ensemble d'outils qui a changé le cours de l'histoire informatique.

samedi 24 décembre 2011

Une entreprise sous Linux avec des logiciels libres


Ce billet est similaire au précédent sauf que le système employé est Linux au lieu de Windows.

Dans la panoplie de distribution Linux existante, certaines offrent du support telles que Red Hat et SuSE. C'est les distributions les plus utilisés en entreprise.

Elles ont de plus leur version communautaire: Fedora et Opensuse.
Il est aussi possible de payer et d'avoir accès à du support, fonctionnalités plus avancées ou bien de ne rien payer et de miser sur la communauté en cas de problème.

Ces deux entreprises font partie de celle qui contribue le plus au coeur du système. Elles ont des ingénieurs qui travaillent sur les projets principaux tels que gnome, kde, xorg, samba et LibreOffice. Elles ont donc une excellente
maitrise de ce qu'elle offre étant donné leur situation.

Il est possible de trouver de très bon article sur internet tel que celui-ci
pour créer un serveur en entreprise qui offrira divers services tels que FTP, DNS, email, base de données et internet.

Ces distributions possèdent des outils graphiques afin de configurer la plupart des besoins.


Une multitude de serveurs sont disponibles et inclus avec les distributions Linux, si vous avez besoin de certaines fonctionnalités plus avancé, regarder du côté de Citadel et Zimbra.


Les logiciels pour la bureautique, Internet, pour la lecture audio/vidéo, gestionnaire d'inventaire, planification de ressource d'entreprise et antivirus qui peuvent être utilisés sont similaires à ceux spécifiés dans le billet concernant Windows.

La majeure partie de ces logiciels sont installés dans une distribution Linux.
Les environnements de bureau Kde et Gnome ont divers logiciels intégrés par défaut tels qu'un navigateur web, client email, logiciel de compression,
éditeur texte, logiciel de traitement d'image et bien plus encore.

Ce type de système permet de mieux centraliser les informations, documentations au sein de l'entreprise. Il est possible de voir les évolutions des documents. L'accès au document peut être
hiérarchisé.

Chaque outil comporte une multitude de plug-ins qui peuvent être ajouté au besoin tel que des forums, client mail, gestion d'anomalie, gestion de ticket.
Les plus réputés sont Joomla, Drupal et Plone.
Ils peuvent être installés aisément sur les serveurs Linux et c'est utilisable par une personne ayant peu de connaissance informatique. Il existe énormément
de documentations sur le web concernant ces outils.

Messagerie instantanée
Pidgin ainsi que Kopete supportent la majorité des formats du marché. Si vous utilisez Skype, une version est disponible pour Linux, mais elle n'est bien sûr pas libre.

Gestion de projets
OpenProj, OpenWorkBench, GanttProject ainsi que Plan (Calligra)

Diagramme
Dia, Flow (Calligra) ont des fonctionnalités similaires à visio. Il est aussi possible d'utiliser les suites bureautiques citées plutôt.

Comptabilité
Gnucash est envisageable pour les petites entreprises. Les plus grosses devraient songer à utiliser un logiciel de planification de ressource d'entreprise. Ces outils possèdent des modules pour la finance.

OpenERP, OpenBravo, Compiere, Adempiere, ERP5, Neogia sont les plus avancés et utilisés. Il est ainsi possible de trouver différentes sociétés de service qui propose du développement, formation et conseil autour de ces outils.

Si vous avez besoin absolument d'un logiciel disponible uniquement que sous Windows et que vous ne trouvez pas d'équivalent sous Linux, il y a différentes façons de pouvoir les utiliser sous Linux.

Il y a wine qui permet via une couche d'abstraction de faire fonctionner des logiciels prévus pour Windows sous Linux. Cependant ce n'est pas tous les logiciels qui fonctionnent.

Si le logiciel doit être accessible à plusieurs utilisateurs, il pourrait être installé dans une machine virtuelle sur le serveur ou bien dans une machine virtuelle sur les postes de travail des employés devant l'utiliser.

N'oubliez de demander de l'aide à la communauté ou bien société de service au besoin.