by
FreeWebsiteTranslation.com
|
|
Bienvenue chez Blady.
Cette page est le reflet des échanges et des questions autour des thèmes abordés sur
Blady, à la manière d'un forum.
Envoyer vos questions ou réponses, vos définitions, vos
problèmes ou solutions.
Six sections :
- Attribution simple :
Il s'agit de faire correspondre le choix d'un ensemble de personnes (mettons de sexe féminin)
vers un autre ensemble d'éléments uniques (par exemple des robes). Chaque femme
émet une liste de choix de robes par ordre préférentiel. Quel est l'algorithme
qui permettra de satisfaire au mieux les femmes ?
Cet algorithme d'attribution a pour principe de ranger les robes et les choix des clientes dans un
tableau à deux index.
Le détail de l'algorithme.
Le code source du programme Pascal et Ada mettant en
oeuvre l'algorithme. Ce programme est compilable notamment avec gpc et gnat donnant ce résultat.
Il y a certainement d'autres méthodes, envoyez les, elles seront
publiées ici. retour en haut de la page
- Attribution croisée :
Prenons deux ensembles d'éléments, par exemple, N hommes et N femmes. Dans ce cas
classique, on suppose que chaque groupe d'individus a un ordre de préférence dans celui
de sexe opposé.
Si on effectue un appariement aléatoire, en mariant à l'aveugle hommes et femmes sans
tenir compte de leur avis, il y a de très forte chance pour que la configuration soit instable.
Existe-t-il alors toujours une solution stable pour éviter les divorces à
répétitions ? Est-elle unique ou bien y a-t-il plusieurs combinaisons stables ? Quelle
méthode utiliser pour trouver à coup sûr une solution stable?
Le détail de l'algorithme.
Le code source du programme Pascal et Ada mettant en
oeuvre l'algorithme. Ce programme est compilable notamment avec gpc et gnat donnant ce résultat.
Il y a certainement d'autres méthodes, envoyez les, elles seront
publiées ici.
Retour en haut de la page
- Remplissage optimisé :
Il s'agit de remplir un CD inscriptible avec un maximum de morceaux de musique - ou autre - de
durées inégales mais de façon à obtenir l'utilisation maximale du CD. Dans
un passé révolu, c'était avec des cassettes mais cela ne change rien au
problème : quelle est ou quelles sont les méthodes de remplissage de façon
à obtenir le meilleur remplissage ? Le détail de
l'algorithme : exploration exhaustive.
Le code source du programme Pascal mettant en oeuvre l'algorithme.
Algorithme optimisé le mois prochain.
(Les démonstrations envoyées de la formule
mathématique employée seront aussi publiées le mois prochain) retour
en haut de la page
- Carbon :
Carbon est un élément important de Mac OS X. Il propose une compatibilité avec
l'interface de programmation (API) des versions antérieures de Mac OS. A partir d'un minimum de
modification, Carbon permet de faire fonctionner sous Mac OS X quasiment toutes les applications
antérieures avec une simple recompilation et quelques modifications mineures. Carbon propose
des API revues et corrigées : suppression des API peu utilisées ou obsolètes,
modification des API peu ergonomiques ou mal conçues au départ, introduction de
nouvelles API. Pour en savoir plus sur le site Apple.
Retour en haut de la page
- Les extensions de fichiers sont-elles indispensables ?
L'extension d'un fichier est représentée par quelques lettres à la fin du nom du
fichier, généralement 1 à 3 lettres précédées d'un point.
Celle-ci apparaît comme un reliquat archaïque de systèmes anciens comme VMS, CP/M ou
encore MS-DOS. Les systèmes d'exploitation dérivant de ceux-ci comme Windows emploient
les extensions (un point plus de 1 à 3 lettres) pour distinguer certains fichiers
spéciaux pour le système «.COM», «.EXE», «.DIR»
& Les deux autres principaux systèmes Unix (et dérivés) et Mac OS (1 à
9), créés de toutes pièces, ont évité cet écueil.
Malgré tout, elle est maintenant de retour sur Mac OS X. Ce retour suit une logique de type de
celle de Windows !? Par contre, le précédent système d'identification n'est pas
abandonné. Il est basé sur un premier code qui indique le type du fichier (texte,
image...), le second indique l'application ayant créé le fichier. Solution efficace pour
afficher un fichier avec une icône "parlante" à l'utilisateur et pour lancer la bonne
application d'utilisation du fichier.
Mais alors, les extensions de fichiers sont-elles indispensables ?
Complément : Le nom d'un fichier désigne le contenu du fichier. Ce qui
intéresse principalement l'utilisateur. Le format qu'il prend au sein du système (le
contenant) est accessoire pour l'utilisateur. Texte brut, RTF, exécutable, image, son,
vidéo, c'est au système de connaître le format du fichier pour pouvoir le
manipuler correctement. Indiquer ce format au niveau du nom de fichier devient une contrainte.
Attention à ne pas perdre l'extension, au risque de ne plus pouvoir utiliser le fichier. Sur
les systèmes Unix, l'utilisateur peut connaître ce format avec la commande « file
» qui est très performante pour reconnaître quantité de formats.
Bizarrement, Mac OS X héritant de Mac OS (les précédents) et d'Unix (NeXTStep),
devient sensible aux extensions. Pourquoi donc le système n'utilise-t-il pas lui-même la
commande « file » pour identifier le format des fichiers à la place d'une extension
ambiguë ?
Vos réponses...
retour en haut de la page
-
Automate :
Un automate est un graphe d'états et de transitions qui décrit la réponse d'un
objet à la réception d'un stimulus externe.
Un état est une condition pendant la vie d'un objet durant laquelle il satisfait des
conditions, exécute des actions ou attend des événements.
Un événement est un stimulus reçu par un objet. La conséquence
étant l'activation de la transition associée qui peut comporter soit des actions (sans
durée) soit une activité (avec une durée).
Une transition est une relation entre deux états indiquant que l'objet dans le premier
état passe dans le second état et réalise certaines actions
spécifiées quand un événement spécifié est reçu et si
des conditions supplémentaires éventuelles sont satisfaites.
Exemples d'automate : le jeu d'échec (début, noir joue, blanc joue, noir gagne, blanc
gagne, nul), le modem (attente porteuse, connecté...), ascenseur (porte ouverte, monte,
descend, arrêter...), les feux de circulation (direction 1 passant, dir 2 tournant...), la boite
de vitesse / l'embrayage, machine à laver le linge, la vaisselle...
Pour en savoir plus voir le compilateur d'automate.
Retour en haut de la page
-
Quelle utilité pour un ramasse-miettes ?
Le ramasse-miettes (ou Garbage Collector en anglais) est dans sa définition un moyen
extraordinaire de ne plus perdre de mémoire (et non la mémoire malheureusement). En
effet, ce composant souvent proposé en complément d'un langage comme le C++ ou
intégré dans un langage comme Java (il est facultatif pour Ada), présente
l'avantage pour le programmeur de récupérer toutes les références
mémoires inutilisées et de les remettre à disposition de façon
automatique. Fini donc le casse tête des libérations de mémoire, le programmeur
n'a plus à se soucier de ses variables allouées dynamiquement comme il ne se soucie pas
non plus des variables globales et locales.
Mais alors pourquoi le ramasse-miettes n'est-il pas intégré directement au
système d'exploitation?
Vos réponses...
retour en haut de la page
- AFAIK :
As Far As I Know...: locution anglaise pour écrire "Autant que je sais"...
retour en haut de la page
- La licence GPL :
La "General Public License" fut développée pour le projet GNU par la Free Software
Foundation (FSF) de Richard Stallman. La GPL permet de distribuer et d'utiliser les programmes avec
une gratuité totale. La GPL autorise quiconque le désire à vendre ses programmes
et à gagner de l'argent avec, mais impose également que tout le monde puisse
parallèlement distribuer la même chose comme il l'entend, sans restrictions. Le fait que
le programme puisse être distribué librement et gratuitement ne signifie pas qu'il
appartienne au domaine public. Un programme protégé par la GPL, à
l'opposé, appartient à son auteur. La licence établit ainsi quatre
libertés pour l'utilisateur : exécution du programme quelque soit l'usage, étude
du fonctionnement du logiciel, redistribution de copies du logiciel, modification du logiciel.
Fin juin 2007, la version 3 de la licence est
publiée. Quelles en sont les différences ? D'un côté, cette nouvelle
version reprend des aspects d'autres licences (notamment Apache) qui vont donc pouvoir maintenant s'y
raccrocher conduisant théoriquement à une diminution du nombre de licences
différentes. Également les termes de droit américain ont été
remplacé par des termes du droit international simple pour pouvoir être compris par
l'ensemble des développeurs. D'un autre côté, cette nouvelle version fait surtout
face à des utilisations frauduleuses ou fermées d'un logiciel sous licence GPL soit dans
des terminaux en prêt ou location soit dans des prestations de service pour lesquels la
situation d'obligation de diffusion des sources par exemple n'était pas claire. Elle
protège également les utilisateurs contre des menaces par des brevets.
Bien entendu le texte de la licence reste en anglais bien qu'une traduction française non officielle existe, n'ayant pour but que la
meilleure compréhension de l'originale.
(Source april et Le Site du Zér0)
Pour en savoir plus voir la page de la FSF
ainsi que fr.wikipedia.org/wiki/Licence_publique_générale_GNU.
retour en haut de la page
- Quel est l'intérêt de faire évoluer la norme du langage Ada
?
Il est acquis que la remise en question périodiquement de la norme du langage Ada part d'une
bonne intention. Un langage informatique ne peut pas rester figé alors que le monde des
technologies évolue très rapidement autour de lui. D'un autre coté, la remise en
question du compilateur Ada est certainement vu comme très coûteux de la part des
éditeurs. Ce qui amène à penser que les bonnes intentions ne font pas le poids
devant les considérations économiques. Pourtant la norme Ada 95 a bien vu le jour
après Ada 83.
Le besoin est-il aussi fort ?
Vos réponses...
retour en haut de la page
- Comment concilier simplement données et ressources ?
Propre au système du Macintosh, les fichiers comportent deux parties. Une première
partie nommée "donnée" comprend le contenu classique du fichier (texte, images, etc.).
Une deuxième partie nommée "ressource" comprend des informations utilisables par le
système ou l'application (position de la fenêtre, icône, localisation). De cette
façon les applications étaient construites comme un Lego avec des ressources codes,
icônes, chaînes de caractères, etc. Les deux parties étaient indissociables.
Unique et plébiscité par sa convivialité cette dualité se heurte à
la base Unix du nouveau système qui ne supporte pas. En parallèle le système
Windows propose une base de donnée unique "base de registre" ou tout s'entasse de façon
plus ou moins touffue pour le néophyte. Mac OS X introduit pour cela un répertoire
spécial vu par l'utilisateur comme un seul "fichier", mais contenant pour le système une
hiérarchie de répertoires et fichiers faisant office de ressource. Est ce
réellement le plus simple ou est ce une astuce simpliste de rafistolage?
Vos réponses...
retour en haut de la page
- IMHO :
In My Humble Opinion...: locution anglaise pour écrire "À mon humble avis" (AMHA)...
Celle-ci contient parfois une connotation sarcastique indiquant que la personne à qui est faite
la réponse ne connaît pas le sujet dont elle parle.
retour en haut de la page
- Ada :
Dans les années 1970, le département de la Défense des États-Unis (DoD)
utilisait de nombreux langages différents, ce qui entraînait des dépenses
excessives en développement et maintenance. En 1976, il lance un appel à
développement d'un cahier des charges pour définir un langage robuste et fiable. C'est
l'équipe du français Jean Ichbiah qui l'emporte et produit le
cahier des charges final. Le langage est appelé Ada, en référence à celle
qui a écrit le premier embryon de programme informatique : Lady Ada Lovelace. En 1983, Ada83
est lancé avec la publication du standard Ansi (American National Standard Institute). En 1995,
l'évolution du langage Ada95 est officialisée avec la publication du standard ISO. Avant
on développait en assembleur et, comme pour Ariane 5 en LTR (langage temps réel),
Fortran et C, aujourd'hui ce langage normalisé est le meilleur compromis pour la gestion temps
réel et les calculs algorithmiques. Il est aujourd'hui utilisé dans de nombreux secteurs
de l'industrie aéronautique ainsi que par la SNCF et Canal+ pour la gestion des abonnés.
Ada séduit par son côté sécuritaire qui peut apparaître
rébarbatif au premier abord. Il apparaît aussi comme un excellent langage d'apprentissage
de la programmation bien qu'il soit mal connu du "grand public".
retour en haut de la page
- Interface de programmation :
L'interface de programmation d'applications ou en anglais "Application Programming Interface" (API)
est une couche logicielle au travers de laquelle une application peut accéder de façon
standardisée aux ressources du système sans en connaître les détails
internes. Cela passe souvent par l'utilisation de bibliothèque comme Carbon ou Cocoa pour Mac
OS X ou JDK pour Java.
retour en haut de la page
- BTW :
By The Way... : locution anglaise pour écrire "À ce propos..." servant à
introduire un sujet qui n'est pas toujours en relation avec le sujet précédant.
retour en haut de la page
- Quelle protection pour nos fichiers ?
Paradoxalement la gestion de la sécurité en tant qu'accès aux données
reste locale alors que le nombres d'utilisateurs sur Internet est en augmentation constante. En effet
que ce soit avec des systèmes du style Unix ou bien Windows, l'accès aux fichiers n'est
contrôlé que localement par le système actif. Deux façons de faire
s'affrontent ici aussi. La première est une protection additive (par exemple Windows NT). Les
droits sur le fichier pour le propriétaire ne sont ajoutés qu'une fois le fichier
créé. Les droits d'autres utilisateurs ou groupes d'utilisateurs sont ajoutés
suivant des règles hiérarchiques ou manuellement. La seconde est une protection
soustractive (par exemple Unix). Le fichier est créé au départ avec son
propriétaire et son groupe comportant tous les accès. Ces accès sont
diminués pour le propriétaire, son groupe et les autres automatiquement grâce
à un masque ou manuellement. Cependant, une fois le système inactif (ordinateur
éteins par exemple) les fichiers ne sont plus protégés. Le simple fait de retirer
le disque dur et de le connecter sur un autre ordinateur supprime toute référence au
propriétaire d'origine. De même si le fichier est transféré sur une autre
machine via un support amovible ou Internet. Des palliatifs sont possibles sur les réseaux
locaux de type intranet. La protection est liée au serveur qui référence tous les
utilisateurs de l'intranet. Est-il concevable d'identifier tous les utilisateurs d'Internet ? Peut
être que le cryptage couplé à la signature sécurisée apparaît
comme l'avenir.
Vos réponses...
retour en haut de la page
- La récursivité :
La récursivité est la division d'un problème menant à la
résolution de plusieurs sous-problèmes de complexité inférieure en
utilisant le même algorithme.
retour en haut de la page
- GNU :
GNU is Not Unix: locution américaine (humoristique car elle renvoie aux appels
récursifs de la programmation) utilisée lors de la création du projet de
bâtir un système "Unix" mais pas Unix car Unix est une appellation commerciale.
retour en haut de la page
- Quel suffixe pour un site Internet ?
Ils existent une pléthore de suffixes Internet pour site du .com jusqu'au .fr en passant par
le .gov, .net ou .org. Mais lequel choisir ? Mon premier choix se porte sur .fr. Logique, je suis
français éditant un site français. Mais non, cela ce complique si mon site est
commercial, ou s'il représente une entité gouvernementale ou non. J'ai alors le choix
entre .com, .gov ou .org. Récemment j'ai même découvert un site avec la
terminaison : .fr.eu.org. Cela paraît clair, mais est ce réellement lisible pour le plus
grand nombre qui ne connaît que les .com ?
Vos réponses...
retour en haut de la page
- Refactoring :
Refactoring est un terme anglais mis à la mode dans de nouvelles méthodes de
programmation. Il désigne simplement l'action de nettoyage du code source d'un logiciel. Ce
nettoyage va du simple reformatage jusqu'à la modification des structures de donnée, en
passant par le remplacement de codes redondant par des routines appropriées. Le code source est
nettoyé et recompilé régulièrement de façon que toute modification
importante ne soit pas polluée par des problèmes annexes de cohérence. L'objectif
est bien évidemment d'obtenir un code contenant le moins d'erreur possible. En paraphrasant
Marcel Dassault nous pourrons dire qu'un "beau" code source est un code source qui fonctionne.
retour en haut de la page
- OTOH :
On The Other Hand... locution américaine pour écrire "D'un autre côté..."
après avoir développé une face d'un sujet.
retour en haut de la page
- Avoir un e-mail à vie ?
Un jour ou l'autre, nous avons été confrontés à la situation suivante :
envoyer un e-mail à une personne sans en connaître le sésame c'est à dire
l'adresse e-mail. En général cette personne a juste oublié de nous la communiquer
lorsqu'elle nous a fait part de la fantastique nouvelle, à savoir qu'elle entrait dans la
fabuleuse communauté des privilégiés ayant un ordinateur personnel tout juste
connecté à Internet. Bien sûr, un simple coup de fil résoudrait le
problème. Un appel du genre : "Eh, donne-moi ton adresse e-mail, j'ai plein de chose à
te dire, salut!" Non, cherchons autre chose, les annuaires sur Internet par exemple ? Non plus, pas de
chance, rien à voir avec l'annuaire de France Télécom. Ici, les inscriptions dans
ce type d'annuaire sont un acte volontaire. Puisqu'il en existe une myriade, nous n'avons pas ou
très peu de chance d'y trouver notre correspondant. Mais alors pourquoi n'existe-t-il pas une
adresse attribuée à chacun facilement utilisable ?
Vos réponses...
retour en haut de la page
- Orthogonalité :
L'orthogonalité est la propriété mathématique des angles droits, par
extension des vecteurs indépendants. Elle s'applique aussi aux langages informatiques. Avec un
jeu d'instructions orthogonal, les instructions et les données sont indépendantes les
unes des autres.
Une instruction peut utiliser n'importe quel type de donné du langage et réciproquement.
Un exemple typique vient des jeux d'instructions des processeurs. Avec un 680x0, pour chaque
instruction, vous pouvez utiliser un registre quelconque. Ce jeu d'instruction est orthogonal. A
l'opposé, avec un 80x86, chaque registre a une fonction particulière combinée
avec des instructions spécifiques. Ce jeu d'instruction n'est pas orthogonal. Vous aurez
compris qu'avec un langage orthogonal, la souplesse est au rendez-vous. Un langage orthogonal est
basé sur le fait qu'un tout petit nombre de concepts suffit à engendrer des
constructions très riches. Ada permet l'orthogonalité en procurant les unités
génériques. Une faible orthogonalité, comme dans le C, provoque des exceptions
dans la construction du code ce qui le rend plus difficile à apprendre. Un excès
d'orthogonalité demandera un compilateur plus complexe, mais bon il n'est fait qu'une fois et
nous l'utilisons sans retenu, il travaille pour nous.
retour en haut de la page
- RSN :
Realy Soon Now... locution américaine pour écrire "Pour très bientôt..."
Ce qui est une véritable gageure en informatique ;-).
retour en haut de la page
- Entre MAJUSCULES et minuscules faut-il choisir ?
Dans la vie courante, de même lorsque vous lisez ce texte, vous reconnaissez
immédiatement le sens du mot 'Afficher', même s'il se présente comme ceci
'afficher' ou comme cela 'AFFICHER'. Or, pour certains systèmes informatiques les
différentes écritures ne désignent pas la même chose. Il y a bien longtemps
au siècle dernier, l'interface utilisateur avec l'ordinateur ne présentait que des
majuscules. Les minuscules n'apparaissent que peu à peu mais sont ignorées des
informaticiens qui les considèrent comme un luxe pour bureautique. Il en a été
pratiquement ainsi jusqu'à l'apparition du système Unix. Celui-ci, certainement par
souci de simplisme qui le caractérise, considère chaque caractère comme
différent. Donc 'a' est différent de 'A', 'Afficher' est différent de 'afficher,
le fichier 'Mon texte' est différent du fichier 'mon Texte'. Mac OS X dérive à la
fois de Mac OS 9 (Classic) système intuitif laissant la liberté aux utilisateurs de
choisir librement entre majuscules et minuscules, et d'Unix système robuste mais
austère. Cette ambivalence peut parfois conduire à la confusion.
Est-il indispensable de différencier le sens des noms avec des majuscules et minuscules
contrairement à la vie courante ?
Vos réponses...
retour en haut de la page
- Interface Utilisateur :
La notion d'interface utilisateur en informatique rejoint la notion plus générale
d'ergonomie. L'interface utilisateur regroupe tout ce qui concoure à l'appréhension d'un
programme informatique par celui ou celle qui l'utilise de façon plus ou moins intuitive
suivant les programmes. Un parallèle dans la vie "réelle" est l'interrupteur de la lampe
de chevet, il s'agit d'un élément de l'interface utilisateur de cette lampe. De nos jour
les éléments de l'interface utilisateur sont graphiques (icônes, fenêtres,
menus déroulants) par opposition à une interface utilisateur textuelle (commandes).
retour en haut de la page
- IMNSHO :
In My Not So Humble Opinion... locution américaine pour écrire "À ma pas si
humble opinion..." Celle-ci, contrairement à une locution voisine (voir IMHO), est plus
honnête pour indiquer que la personne à qui est faite la réponse ne connaît
pas le sujet dont elle parle...
retour en haut de la page
- Quel codage pour nos caractères accentués ?
Si le codage ASCII répond aux besoins des anglophones c'est qu'il propose le codage des
caractères utilisés par la langue anglaise. A part quelques exceptions dans
l'utilisation des caractères de contrôles, ce standard de codage est bien
respecté. Si les Anglais se comprennent entre eux, il en va tout autrement pour les natifs aux
langues comportant des caractères accentués notamment. On fait appel à des
sur-ensembles du codage ASCII. On tombe alors dans une multitude de codages combinant
caractères accentués et caractères graphiques, si bien qu'un échange de
texte a toutes les chances d'être mal compris par les destinataires ne possédant pas le
même codage. La normalisation ISO n'a été d'aucun support puisqu'elle a juste
donné lieu à une multiplication des codages et non sa réduction. Ne sont pas
évoqués ici les codages de plus haut niveau tel que RTF ou même HTML qui combinent
codage des caractères et codage de la mise en forme du texte. Par rapport à ces
derniers, la difficulté est la reconnaissance du type de codage puisque celui-ci ne peut pas
être facilement codé dans le texte. Chaque système reste donc sur son standard,
mais ne l'indique pas ou peu. Seule la commande 'file' des systèmes Unix permet de se faire une
idée sur le fichier en question. Par contre, malgré le standard MIME indiquant les types
de fichiers transférés, il n'existe aucune aide pour le courrier électronique.
Quel comble pour un outil d'échange multiculturel ! Alors qu'un peu de rigueur dans la
description du type de codage ou l'emploi systématique d'un codage neutre serait salvateur.
Mais quel codage prendre ? UTF-8 ?
Vos réponses...
retour en haut de la page
- Classe :
Plus encore que par le C++, la notion de classe a été popularisée par Java. En
effet Java s'introduit partout à commencer par les navigateurs Internet qui chargent des
classes à tout bout de champ, puis aux téléphones portables ou aux assistants
personnels et bientôt dans la Hi-fi ou l'électroménager. Il s'agit en fait
d'éléments de programme qui ont une cohérence intrinsèque en regroupant
des variables (ou propriétés) et des procédures (ou méthodes). Lié
fortement à la notion d'objet (voir la POO) les classes sont
les briques de bases d'une application Java.
retour en haut de la page
- TSTL :
Too Stupid To Live... locution américaine pour écrire "Trop stupide pour vivre..."
autre manière pour indiquer que la personne à qui est faite la réponse ne
connaît pas le sujet dont elle parle...
retour en haut de la page
- L'anglais est-il une fatalité ?
Le constat a été posé maintes et maintes fois: l'anglais prédomine dans
l'informatique à l'image de la prédominance de l'industrie informatique
américaine. Notre fierté aussi se rebiffe à la vue de sites Internet
français rédigés en langue anglaise. Pourtant, ne sommes nous pas soulagés
de tomber sur une langue "amie" (l'anglais) lorsque nous naviguons sur des sites allemands, espagnols
ou japonais. Le paradoxe est là. Il est donc naturel de proposer nos sites français en
langue anglaise pour que nos concitoyens de la planète Terre puisse nous comprendre. Je vous
vois encore choqué, oui vous lisez bien ces lignes en français et vous en êtes
plutôt satisfait au fond de vous-même, comme si la langue anglaise dénaturait
l'échange, le rendait plus standardisé, plus froid. L'anglais ne sera plus une
fatalité lorsqu'il existera des traducteurs fiables et instantanés où passer
d'une langue à l'autre sera totalement transparent.
Ce site (précurseur ;-) est donc en français.
Cependant, n'aurait-il pas une audience supérieure en anglais ?
Vos réponses...
retour en haut de la page
- FYI :
For Your Information... locution américaine pour écrire "Pour votre information..."
manière d'indiquer que la personne à qui est faite la réponse ne connaît
pas le sujet dont elle parle...
retour en haut de la page
- E.W. Dijkstra :
Né en 1930, Dijkstra a conçu et codé le premier compilateur Algol, langage de
programmation à la base de plusieurs familles de langages informatiques.
Il est aussi reconnu comme le leader du mouvement pour l'abolition de l'utilisation des instructions
GOTO dans la programmation.
Plus sérieusement, Il a bâtit de nombreux concepts touchant à la programmation
structurée, la programmation concurrente avec les sémaphores et son fabuleux
énoncé du dîner des philosophes.
Pour en savoir plus, son site web : www.cs.utexas.edu/users/EWD
retour en haut de la page
- Pourquoi cette course sans fin à la puissance ?
L'ordinateur 64 bits "de bureau" vient de sortir chez Apple. Quant on tourne notre regard
derrière soi juste de façon à entrevoir les étapes qui ont conduit
à ceci, on est en droit de se demander d'où vient ce besoin en puissance? En vingt ans,
les possibilités des ordinateurs n'ont pas été multipliées par 10 ni
même par 100 mais par 10000 que ce soit la fréquence horloge des processeurs que la
taille de leur mémoire de travail ou de stockage. Que mon modeste programme aille 100 fois plus
vite ou soit capable d'accepter des données 100 fois plus grande, d'accord, mais 10000 fois
plus c'est la noyade assurée ! Pourtant d'où vient cette impression récurrente
que mon ordinateur se traîne poussivement et que j'ai un mal fou à trouver un peu de
place pour enregistrer mes fichiers? Vivement un 64 bits pour que je puisse rêver au 128 bits !
Vos réponses...
retour en haut de la page
- Abandonware :
Logiciels qui ne font plus l'objet d'une commercialisation ni de mises à jour par leur
éditeur. Cette définition est plus ou moins malmenée sur Internet. On y trouve
d'abord une focalisation générale sur les jeux, qui appartiennent certes à une
catégorie de logiciels à durée de vie très courte. Durée de vie qui
est d'ailleurs fixée arbitrairement à 4 ou 5 ans pour certains sites d'Abandonware.
Après cette période le logiciel est considéré "diffusable" sur le site.
Au-delà du constat d'abandon et de sa manifestation idéologique, il s'agit bien de
suppléer à un manque en diffusant le logiciel tant que l'éditeur ne se manifeste
pas. L'aspect juridique est intéressant puisque d'une part la diffusion sans l'autorisation de
l'éditeur est bien entendue illicite, d'autre part on peut voir cette diffusion sous l'angle
d'une ingérence "humanitaire". Certains logiciels mériteraient bien d'être reconnu
comme patrimoine de l'humanité. N'y a-t-il pas matière à faire plus que de la
simple diffusion? Il y a nécessité à porter plus loin l'ambition en sauvegardant
ces logiciels par la restauration des programmes sources. On trouve la clé de la maîtrise
du futur : ne pas perdre le passé. Les logiciels du domaine public sont l'exemple accompli du
renouveau à partir des sources sans cesse restaurées par la communauté. Tous les
domaines d'applications sont concernés y compris les quantités de logiciels de
l'industrie perdus suite à leur oubli après une période plus ou moins longue de
momification et non de réelle restauration, sans oublier les logiciels multimédia ou
éducatifs. Un premier pas "humanitaire" serait de rendre disponible les codes sources de ces
logiciels abandonnés sous licence de logiciel libre par exemple si l'entreprise ou
l'éditeur n'a pas la capacité d'effectuer une restauration. (En savoir plus sur le site
www.abandonware-definition.org)
retour en haut de la page
- AFAICS :
As Far As I can See... locution américaine pour écrire "comme je peux voir..."
manière d'indiquer ce que l'on a compris du sujet évoqué...
retour en haut de la page
- Lady Ada Lovelace :
Née en 1815, Lady Ada Lovelace est associée à Babbage, le concepteur du premier
ordinateur. À 17 ans, elle commença une correspondance volumineuse avec Babbage sur des
sujets mathématiques, logiques et autres. Elle lui servit ensuite de traductrice pour un
mémoire paru en français sur une machine analytique. Par la suite, elle écrivit
des instructions pour la machine analytique conçue par Babbage, ce qui permet de la
considérer aujourd'hui comme la pionnière de la programmation dans l'histoire. Un
langage de programmation, bien connu de nous, porte aujourd'hui son nom : ADA.
Elle mourut d'un cancer à l'âge de 37 ans.
Pour en savoir plus une biographie en anglais de Betty A. Toole: "Ada, the Enchantress of Numbers"
(1992, Strawberry Press) comme l'appelait Babbage lui-même.
retour en haut de la page
- IIRC :
If I Recall Correctly... locution américaine pour écrire "si je me rappelle
correctement..." précaution "oratoire" avant de se lancer dans une affirmation suspecte...
retour en haut de la page
- Von Neumann :
John Von Neumann né en 1903 a le premier l'idée de faire cohabiter le code
d'exécution d'un programme et ses données dans la même mémoire. Ainsi une
seule architecture matérielle peut réaliser toutes sortes de calculs. Ce principe dit de
Von Neumann est toujours utilisé pour la conception des ordinateurs modernes. Il apporte ainsi
une importante contribution à la cybernétique (fonctionnement des automates,
intelligence artificielle). De plus, en décrivant la possibilité pour un programme de
prendre le contrôle d'un autre, il décrit par-là le fonctionnement d'un virus
informatique. Il meurt en 1957 après avoir contribuer à d'innombrables autres sujets
comme l'analyse probabiliste, la théorie des ensembles, la mécanique quantique mais
aussi en participant à la réalisation de la première bombe atomique.
(Sources : www.sciences-en-ligne.com,
www.bibmath.net, www.linux-france.org)
retour en haut de la page
- ASAP :
As Soon As Possible : locution américaine pour écrire "Dès que possible". Deux
possibilités suivant que vous demander quelque chose ou bien que vous deviez quelque chose. Si
vous êtes demandeur, la locution signifie alors "dès maintenant voire hier" ! Si vous
êtes débiteur, la locution signifie alors "dès que j'aurais le temps" !
retour en haut de la page
- Classic :
Avec l'apparition de Mac OS X nous nous trouvons en présence de trois sortes d'applications du
point de vue de leur exécution. Les premières sont les applications natives Mac OS X.
Elles sont au format du noyau d'exécution Mach. Elles utilisent les bibliothèques
d'applications Unix, Cocoa ou Carbon. Les deuxièmes sont les
applications mixtes fonctionnant à la fois sur Mac OS X et Mac OS 9. Elles sont au format PEF.
Elles utilisent la bibliothèque Carbon. Les troisièmes sont les
applications ne s'exécutant que sous Mac OS 9. Elles sont au format des ressources CODE. C'est
le format des premiers systèmes Mac. Ce format prend maintenant le nom de Classic. Elles
utilisent la bibliothèque ToolBox. Avec Mac OS X son exécution est émulé
par l'application Classic.
retour en haut de la page
- Pourquoi le langage Ada ne définit-il pas de priorité dans
l'utilisation des unités ?
Dès le départ Ada inclus des niveaux de priorité concernant les identificateurs
pour des déclarations de types, de variables, de fonctions ou de procédures. Cette
priorité est donnée à la proximité. L'identificateur retenu correspond
à la déclaration la plus proche de l'utilisation. Par contre les unités sont
traitées différemment. La déclaration de l'identificateur déclaré
dans plusieurs unités sera retenue à condition de la préfixer de l'unité
choisie. La priorité est fixée individuellement. L'ajout de 'use' pour les unités
ne nous aide pas, au contraire le compilateur fait ressortir l'ambiguïté de choix. Une
situation qui se fait cruellement sentir pour les déclarations de l'unité Standard qui
sont toujours prioritaires face aux déclarations d'une autre unité. Je soumets à
votre sagacité une solution simple qui donnerait la priorité à la dernière
unité déclarée dans un 'use'. Bien sûr pour garder le contrôle de cet
automatisme on ajouterait une option au compilateur pour afficher l'unité retenue lors de la
compilation. Une telle option ne serait-elle pas d'ailleurs bien utile dans le fonctionnement actuel
pour déterminer l'unité de provenance d'un identificateur même issue d'une seule
unité ?
Réponse de Gautier : Pas vraiment, le problème est que le "use" de plusieurs
unités peuvent rendre visibles plusieurs choses ayant le même identificateur, et ce au
même niveau.
Cela n'est pas possible avec des déclarations: on ne peut pas avoir plusieurs fois le
même identificateur sur le même niveau. C'est donc un problème spécifique
à "use[s]". Ada le résout en imposant le préfixage. Borland le résout en
donnant la préférence au dernier venu, ce qui est très facile pour eux du point
de vue des tables d'identificateurs mais pose de nouveaux problèmes au programmeur:
- le fonctionnement du programme peut changer si on échange deux unités "Use"ées
- le traçage des identificateurs est plus difficile
- les collisions de noms ne sont pas annoncées
Réponse de Blady : Il est vrai que la collision de nom n'est pas annoncée dans ce
cas, mais une option du compilateur pourrait l'indiquer avec l'unité "choisie".
Le traçage des identificateurs est effectivement plus difficile. C'est déjà le
cas avec Ada95! Là aussi une option appropriée pourrait indiquer l'unité retenue.
Je n'ai pas connaissance d'un compilateur qui la propose.
Troisième argument : l'inversion induit un changement de comportement, ah "fatal error"!
Gautier a mis le doigt au bon endroit, il s'agit certainement de la raison principale du rejet de
cette fonctionnalité, Ada voulant un fonctionnement identique quel que soit l'ordre des
unités.
Pourtant, pourtant, une hiérarchisation serait la bien venue, plutôt que de mettre tout
à plat...
Mais le dogme Ada reste le dogme Ada.
Peut-être que la solution ne se trouve pas au niveau du compilateur, mais au niveau d'un
éditeur de codes sources Ada "intelligent" qui proposerait les diverses possibilités
à la frappe ou en automatique sur l'ensemble d'un code source.
Vos réponses...
retour en haut de la page
- FAQ :
Frequently Asked Question, locution américaine pour désigner les questions les plus
posées, appelée aussi "Foire Aux Questions". En pratique, les sections FAQ sur Internet
sont très mal nommées car elles se veulent répondre à toutes les questions
même celles qui ne seront jamais posées...
retour en haut de la page
- Swap :
Le fonctionnement d'une application nécessite de la mémoire vive ou RAM.
Malheureusement, la RAM de votre ordinateur n'est pas illimitée et reste coûteuse. Quand
elle n'est plus disponible, le système copie une partie des informations sur votre disque dur.
Le système peut alors continuer à fonctionner correctement comme si votre ordinateur
possédait une mémoire virtuelle. Elle est dénommée également Swap.
À l'origine cette méthode, utilisée encore par plusieurs anciens systèmes
Unix, consiste à copier l'ensemble de la mémoire utilisée par une application
inactive sur le disque dur. Et inversement lorsque cette application devient active. Mac OS X
diffère par l'utilisation de pages mémoires de petites tailles copiées ou lues
suivant les besoins. On parle alors de "paging" plutôt que de "swapping". La mémoire du
système est organisée en pages réservées (utilisées principalement
par le noyau, elles restent toujours en RAM), en pages actives (correspondent aux applications
actives, elles sont lues à partir du disque si elles n'étaient pas
précédemment en RAM), les pages inactives (seront copiées sur le disque si les
pages libres ne sont pas suffisantes), les pages libres (servent à accueillir de nouvelles
applications). Créer une partition Swap dédiée sur le disque dur permet de
limiter grandement les ralentis causés par l'échange d'informations entre votre disque
dur et la RAM physique de votre ordinateur. Cette amélioration de performance est bien plus
visible si vous possédez deux disques durs...
(Source et en savoir plus sur la partition Swap de Mac OS X : www.mac4ever.com)
retour en haut de la page
- Pourquoi pas un accès permanent à Internet abordable ?
Malgré les effets d'annonces de plusieurs fournisseurs d'accès Internet (FAI), les prix
des abonnements semblent toujours élevés. L'accès à Internet reste un
luxe, pas un bien grand mais tout de même. Parce que cela sans doute tient d'abord à
l'aspect virtuel de la marchandise. Le téléphone ainsi que le Minitel nous avaient
habitués à payer pour ce que l'on consomme en fonction du temps et du service
utilisé. Internet est différent, le FAI vend moins un contenu (bien que certains
veuillent le croire) mais une connexion (avec il est vrai des espaces pour une boite à lettres
ou un site web) vers un ensemble de sites qui sont pour la plupart gratuits. Il est de plus en plus
avéré que les communications avec Internet entre dans notre quotidien. Les "www" et
autre "@" sont omniprésents dans nos média. L'utilisation d'un ordinateur demande aussi
par lui-même de plus en plus l'accès à Internet. Les systèmes actuels
demande plus de mémoire plus de puissance mais aussi l'échange d'un volume plus
important de données par Internet, logiciels, mises à jours, vidéo, musiques,
etc. La course à toujours plus dans le domaine informatique poursuit sa logique commerciale
dans le domaine du matériel, dans l'intérêt du consommateur. Par contre cette
logique est mise à mal lorsqu'il s'agit de connexion Internet. Ne serait-ce qu'une question de
temps, le temps de rentabiliser les équipements et les infrastructures ?
Vos réponses...
retour en haut de la page
- RTFM :
Read The Fu**ing Manuel, locution américaine imagée signifiant d'une part, que l'on
aurait dû consulter la documentation avant de poser la question et d'autre part, que le manuel
n'est pas "terrible" puisque il n'est pour ainsi dire jamais lu.
retour en haut de la page
- Conway : voici deux Conway John et Melvin :
- Né en 1937, John Conway a montré très tôt un intérêt pour
les mathématiques. Il invente le "jeu de la vie", popularisé par l'économiseur
d'écran des stations Sun. Le jeu de la vie est un automate cellulaire, il cherche une
règle simple menant à des comportements complexes. Il imagine alors un carré de
dimension n*n dans lequel chaque cellule peut être soit vivante soit morte. L'actualisation
des cellules est la suivante : une cellule morte entourée (8 possibilités) par
exactement trois cellules vivantes renaît à la vie, tandis qu'une cellule vivante
entourée par moins de deux voisins meurt par isolement ou par plus de 3 voisins meurt par
surpopulation. Il s'avère que le jeu de la vie engendre des structures d'une
complexité inattendue, qui évoluent, se déplacent, engendrent d'autres
structures, ne dépendant que de la structure initiale. John Conway a d'abord joué au
jeu de la vie avec jeu de Go, puis les ordinateurs s'en sont emparés comme reflet d'une
intelligence intrinsèque qui bien évidemment n'en est pas une, mais seulement
l'illusion.
- Melvin E. Conway a suggéré que la structure d'un système informatique devait
être le reflet de l'organisation de ses concepteurs. C'est devenu depuis la loi de Conway.
L'exemple donné est celui d'un compilateur : "Si vous mettez quatre équipes sur la
conception d'un compilateur, vous obtiendrez un compilateur quatre passes."
On doit aussi à Melvin Conway d'être à l'origine, en 1963, des fameux diagrammes
syntaxiques décrivant graphiquement la structure d'un langage informatique. Il a
démontré que tous les langages déterministes pouvaient être décrit
par cette méthode. Celle ci fût reprise par d'autres pour décrire toute sorte de
concepts comme la récursivité, les symboles non-terminaux, les interfaces utilisateurs
par exemple. Cette notation peut construire des entités comparables à celles
définies par Backus-Naur ou à la machine de Turing.
retour en haut de la page
- ISWYM :
I See What You Mean, locution américaine pour écrire "je vois ce que tu veux (vous
voulez) dire". L'expression peut être sincère ou ironique.
retour en haut de la page
- Base de données relationnelle :
Une base de donnée est une collection de valeurs, pouvant être de natures
différentes, groupées en attributs pour caractériser une entité que l'on
veut classifier. Par exemple si l'on veut classifier des salles de cours, on pourra retenir comme
attributs l'identifiant de la salle, le nom du professeur, la date et l'heure d'occupation de la
salle. L'ensemble des attributs formant la structure de la table des salles de cours. Les valeurs
correspondantes à chaque salle de cours sont saisies dans des fiches. L'ensemble des fiches
formant les valeurs de la table. On pourra aussi créer une table des professeurs avec sa
structure propre. L'ensemble des tables formant la base de données. L'ensemble des valeurs est
représenté d'une seule et même manière. Elles sont indépendantes de
la représentation des données physiques. Une base de données est dite
relationnelle lorsque l'on peut établir une relation entre deux tables. On établit une
relation entre la table des professeurs et la table des salles sur l'attribut du nom du professeur. Si
la matière enseignée est un attribut de la table des professeurs, on peut ainsi afficher
l'ensemble des matières enseignées dans une salle de classe à l'aide d'une seule
requête sur la base de donnée. On s'aperçoit que la complexité d'une base
de données relationnelle vient de la préservation de son intégrité au
cours du temps. Si un professeur quitte l'école la suppression de sa fiche dans la table des
professeurs ne suffit pas, il faut aussi supprimer toutes les salles de cours utilisées par
celui-ci.
retour en haut de la page
- Pourquoi les serveurs de mails ne filtrent-ils pas les spams ?
Les serveurs de mails sont des automates très performants qui font en sorte d'acheminer
correctement notre message à son destinataire. Notamment, ils opèrent toute une
série de vérifications pour adresser le message au bon destinataire. Une simple erreur
pourrait avoir des conséquences néfastes pour l'émetteur - envoi à un
destinataire non désiré par exemple. Par contre rien de la sorte chez le destinataire,
les messages s'accumulent dans sa boite aux lettres, qu'ils s'agissent de messages attendus ou de
messages indésirables nommés spams. Au fond, rien de bien différent du
comportement de nos boites aux lettres - bien réelles celles-là - de notre domicile, qui
accumulent un nombre certain de prospectus non désirés. Il n'empêche que le
fournisseur d'accès est le mieux placé pour verrouiller les spams. En effet c'est lui
qui à la base stocke ou rejette les messages si le destinataire est connu ou non. En regardant
les spams de plus près, la grande majorité pour ne pas dire tous, présentent une
adresse e-mail qui n'est pas valide. Pourquoi les serveurs de mails ne filtrent-ils pas les messages
en vérifiant si l'adresse de l'expéditeur est active chez le serveur d'origine ?
Vos réponses...
retour en haut de la page
- Java :
Plus qu'un simple langage de programmation orienté objet dérivant du C++, Java comprend
aussi de nombreuses bibliothèques pratiques (interface utilisateur, graphisme, réseau,
web, etc.) et un environnement d'exécution indépendant de la plateforme. Deux maximes
célèbres de Sun son créateur l'illustrent : "un seul code source + une seule
compilation = portabilité parfaite" et "le réseau est l'ordinateur". Avec Java et
Internet les barrières traditionnelles d'incompatibilité entre plateformes actuelles ou
futures tombent. Tous les développements en Java peuvent, en théorie, s'interconnecter
entre eux. Contrairement à Ada de 10 ans son aîné, on regrette que Sun n'est pas
poussé plus loin l'épuration syntaxique du langage C++ pour offrir une plus grande
sécurité de codage.
Pour en savoir plus : java.sun.com.
retour en haut de la page
- Pourquoi les serveurs ne s'identifient-ils pas mutuellement par signature
électronique ?
Dans la poursuite de la réflexion sur le Spam, oui la boite aux lettres explose, beaucoup
d'interrogations sur les mécanismes d'échanges de courrier apparaissent. En dépit
de la non-existence de frontières dans Internet et donc de délimitation juridique (sans
porter de jugement sur ce fait), les serveurs ont des connexions hiérarchisées et
réglementées par des organismes internationaux. Un serveur américain sait
très bien reconnaître que vous vous connectez depuis un serveur français et donc
proposer une page adaptée. Cependant il est vrai que des mécanismes complexes peuvent
flouer cette authentification. Ainsi la signature électronique apporte une authentification
correcte. Alors pour faire le tri entre les messages voulus et les Spams, pourquoi les serveurs ne
s'identifient-ils pas mutuellement par signature électronique ?
Vos réponses...
retour en haut de la page
- ASCII :
Comme les ordinateurs ne comprennent que les nombres binaires, on doit alors substituer un jeu de
valeurs binaires à un jeu de caractères pour faire enregistrer un texte par un
ordinateur. L'American Standard Code for Information Interchange (ASCII) est un standard de codage de
caractères apparu dans les années 60. Il a été très populaire avec
le langage Basic des premiers micro-ordinateurs dans les années 70-80. Bien qu'aujourd'hui les
logiciels modernes permettent de saisir des textes de niveau PAO sans ce préoccuper du codage
interne et que l'ASCII ait été conçu pour des télétypes, il est
encore d'actualité car il est à la base de la plupart des codages actuels : Windows,
Mac, Unix et ISO. Ces derniers comportent toujours une partie commune composée des
caractères ASCII. Ainsi, lors d'échange entre ordinateurs avec des systèmes
différents, ce codage minimal est toujours employé comme dans les échanges
Internet.
Pour en savoir plus : www.commentcamarche.net/base/ascii.php3.
retour en haut de la page
- Comment identifier les versions ?
Établir une traçabilité des différentes versions, révisions ou
éditions d'un fichier devient nécessaire à partir du moment où il sort du
domaine de cohérence défini ou domaine privé. Ce domaine est souvent restreint
à une personne ou à un groupe de personne. Un système très simple est la
datation du document à chaque diffusion. Si ce système permet d'identifier chaque
diffusion, il est par contre peu lisible directement et difficilement manipulable simplement. On en
vient alors à un système d'indice à base d'une identification par lettres ou
nombres. On parle ainsi de version 3 ou d'indice C. Ce qui n'empêche pas de dater pour
établir un historique sur une échelle de temps. Néanmoins la nature humaine
étant ce qu'elle est, l'explosion des versions est inévitable. On arrive vite à
épuisement de l'alphabet ou à des nombres élevés qui n'ont plus de
signification (qu'elle est la signification de la version 100 par rapport à ce qu'à
été la version 10?) On en vient ensuite à définir des numéros de
versions majeures et mineures : 1.4. Le numéro 1 étant celui de la version majeure
réservée au changement d'importance et le numéro 4 réservé au
changement de moindre importance étant celui de la version mineure avec entre le point comme
séparateur. (Attention aux dérives du type 3.2.4.1.1.2...) Comment déterminer un
changement important de celui qui ne l'est pas? Première réponse : cela dépend de
chacun. Mais cela ne nous aide pas. En règle générale le changement majeur est
réservé à distinguer des phases bien précise qui peuvent être des
jalons, des périodicités, un nouvel accord sur le contenu. Le changement mineur
intervient en correctif par rapport à la version majeure. La version 7.4 correspond au
4ème correctif de la 7ème version.
Il convient aussi de distinguer les diffusions non officielles comme brouillon ou pour validation. On
a la possibilité d'ajouter un indice ou de changer de nature lettre ou chiffre pour bien
différencier d'une diffusion officielle. Ainsi on utilisera 10.3c ou D1.
Il n'est pas souhaitable de lier une même version entre différents fichiers. Chacun doit
posséder sa version propre, même pour un document décrivant un logiciel. Un
document spécifique décrira alors la composition ou la nomenclature de l'ensemble.
retour en haut de la page
- CSV :
Comma Separated Variable (CSV) est une convention d'écriture de données d'un tableau de
valeurs ou chaque ligne comporte plusieurs champs. Les données sont écrites dans un
fichier texte. Chaque ligne de la table correspond à une ligne de texte. Les champs de chaque
ligne sont écris en texte, les uns après les autres entourés de guillemets et
séparés par des virgules. Cette convention est de plus ou moins respectée. Les
guillemets peuvent se perdre. Les virgules se transformer en tout autre caractère rare comme
"|". Le but est de minimiser la probabilité de retrouver ce caractère dans la valeur
d'un champ. Les tableurs et SGBD présentent quasi systématiquement une fonction
d'exportation à ce format. La simplicité fait de lui un format passe partout.
retour en haut de la page
- Pourquoi une entreprise irait confier son informatique à un
constructeur qui n'est pas leader ?
Les soucis de pérennité d'une entreprise font de ses choix qu'ils sont plutôt
conservateurs et même s'orientent souvent vers le leader du secteur. À quoi bon investir
dans un fournisseur qui risque de disparaître ou au mieux risque de rester marginal, par
conséquent incapable d'être compétitif sur l'offre et sur les coûts. D'autre
part, un produit acheté par la majorité ne peut pas être mauvais. De ces postulats
découlent deux phénomènes se chevauchant. D'abord le marché est
segmenté. De cette façon un fournisseur sera plus facilement leader dans son secteur
(qualifié de niche s'il n'est pas suffisamment représentatif). Ensuite on observe des
regroupements pour créer des leaders de fait. En va-t-il de même dans l'informatique ? La
nature virtuelle spécifique à un logiciel permet l'existence de fournisseurs alternatifs
bousculant les précédentes réflexions. Est-ce au point qu'une entreprise ferait
le choix de l'alternatif ?
Vos réponses...
retour en haut de la page
- BNF :
Backus Naur Form (BNF) est une notation formelle pour décrire la syntaxe d'un langage
informatique. Le langage Algol (ancêtre du Pascal) de Peter Naur a été la
première utilisation de cette présentation par John Backus à la fin des
années 50. Peter Naur est tellement surpris des différences entre sa définition
du langage et de la présentation de John Backus plus précise et plus complète
qu'il décide que la version suivante Algol 60 sera définie avec cette notation. Il
présente le tout au début des années 60 avec une notation adaptée prenant
le nom des deux compères. Depuis tout langage qui se respecte utilise cette notation pour en
spécifier les règles de la syntaxe.
retour en haut de la page
- Update :
Le processus "update" vide les caches du système de fichier toutes les 30 secondes.
L'activité de celui-ci se dévoile avec l'application "Moniteur d'activité",
onglet activité disque. Une écriture sur disque (en rouge) est visible toutes les 30
secondes. Non, ce n'est pas un virus par contre il permet de garantir l'intégrité du
système de fichier. Le processus est lancé lors de l'initialisation du système
Mac (processus père : init).
Pour en savoir plus faire "man update" avec le Terminal.
retour en haut de la page
- Pourquoi je ne trouve pas de FAI proposant la création de sites Web
dynamiques avec Java ?
Première réponse rapide : je n'ai pas bien cherché parmi les FAI (Fournisseur
d'Accès Internet). Bon une fois ceci dit, les seuls résultats de mes recherches ont
été les fournisseurs de serveurs cousus mains mais sans Java. Il y a bien du PHP, des
Applets mais pas de Tomcat. Sans doute y a-t-il une question de sécurité. Le
paramétrage du serveur d'applications Java (les servlets) est certainement plus complexe.
Cependant, côté concepteur du site dynamique, Java apporte une sécurité
accrue. Côté charge du serveur même topo, le serveur exécute tout le code,
ne transmettant que la page HTML. Là aussi l'avantage est un confort accru pour l'utilisateur.
Cette technologie est reprise en entreprise pour de nombreuses applications Intranet mettant en avant
sa souplesse de développement, sa sécurité et sa facilité de
déploiement. Pourquoi pas une plus grande démocratisation de son utilisation sur
Internet ?
Vos réponses...
retour en haut de la page
- Syslogd :
Le processus "syslogd" lit et enregistre les messages envoyés par les applications courantes
à la console. À une époque par encore très lointaine, les serveurs
étaient surveillés par une console branchée directement et bien souvent
doublée d'une imprimante. Sur cette console s'affichaient tous les messages d'alerte sur le
fonctionnement du serveur. Aujourd'hui, le serveur s'est transformé en ordinateur personnel et
la console s'efface devant l'écran de l'utilisateur. Cependant, le système fonctionne
toujours à travers un ensemble de fichiers dits "logs" qui sont créés ou mis
à jour par le processus "syslogd". Ces fichiers sont décrits dans /etc/syslog.conf. Ce
fichier définit quelle priorité d'information (avertissement, erreur, alerte...) est
écrite dans quel type de fichiers logs. Une attention particulière est mise sur la
sécurité. La plupart du temps, ces serveurs sont localisés dans des pièces
sécurisées et donc la console aussi. Avec le système de fichier, "n'importe qui"
peut lire ces informations pouvant contenir des informations sensibles sur la marche de l'ordinateur.
Les messages consistent en une ligne de texte débutant par la priorité. Le processus
récupère les messages traditionnellement de /dev/console, de /dev/klog mais aussi
maintenant d'une socket UDP /var/run/syslog créée par le processus sur le port UDP 514
par défaut (voir /etc/services à syslog). L'application "Console" (Applications/
Utilities) permet de suivre et de consulter les logs.
Le processus est lancé lors de l'initialisation du système Mac avec "/usr/sbin/syslogd
-s -m 0" (processus père : init).
(-s indique de ne pas écrire les messages provenant d'autres ordinateurs pour des raisons de
sécurité - sinon un individu malveillant pourrait remplir votre disque à
distance), -m 0 indique de ne pas insérer périodiquement une marque temporelle dans les
logs)
Pour en savoir plus : syslogd
(le man installé avec le système n'est pas à jour).
retour en haut de la page
- Modèle réseau OSI :
Aboutissement de travaux de la fin des années 70, le modèle réseau Open Systems
Interconnection (OSI) apparaît au milieu des années 80 pour homogénéiser la
multitude des protocoles réseaux existants alors. L'interconnexion dépendait alors du
bon vouloir de chaque constructeur et surtout présentait des pertes de performance
inacceptables et coûteuses pour l'époque. Néanmoins, il s'agit de ne pas favoriser
un protocole plutôt qu'un autre, comme celui d'IBM, de DEC, de Bull ou bien du DoD (le fameux
TCP/IP) et d'autre part de prendre en compte les architectures matérielles existantes. Le
modèle OSI va décrire ce que doit faire un protocole réseau mais ne pas dire
comment. Pour cela, la liaison réseau va être découpée en plusieurs
couches. Théoriquement à chaque couche peut être associée une solution d'un
constructeur, pas forcément la même pour toutes les couches. Ce qui fait la force et
faiblesse de ce modèle. C'est ainsi grâce à lui que l'on peut utiliser Internet
avec une ligne téléphonique ou avec un modem USB. Mais il n'associe pas de label OSI, si
bien que certaines situations peuvent rester tout de même complexes bien que se réclamant
du modèle OSI. Les couches sont au nombre de 7 de la plus basse (la plus proche du
matériel) à la plus haute (la plus proche de l'utilisateur final), chacune ayant sa
valeur ajoutée.
Les couches physiques (représentation électrique du bit et mécanique de la
liaison), liaison de données (organisation des bits en trames avec gestion des erreurs),
réseau (organisation des trames en paquets avec gestion du flux) et transport (organisation des
paquets en messages avec gestion des connexions) relèvent du matériel et du
système présent. Les couches session (gestion de synchronisation de l'échange des
messages), présentation (formatage particulier comme la compression ou le cryptage) et
application (service offert à l'utilisateur comme la messagerie) relèvent du logiciel
présent.
Pour en savoir plus : réseau
OSI.
retour en haut de la page
- IANAL :
I Am Not A Lawyer... locution typiquement américaine pour écrire "je ne suis pas un
juriste..." précaution signifiant que les propos émis doivent être
considérés sous toutes réserves, l'auteur n'étant pas un
spécialiste du sujet traité.
retour en haut de la page
- Mach_init :
Mach_init est le processus d'accès à la messagerie interne de la partie Mach du noyau.
Il recense les services mis à disposition par le noyau aux autres processus. Les services sont
regroupés en sous-ensembles permettant la mise en oeuvre de niveaux de sécurité
gérés par mach_init. Seuls les processus enregistrés pour un service donné
auront accès à ce service décrit dans /etc/mach_init.d pour les services
systèmes et /etc/mach_init_per_user.d pour les services utilisateurs.
L'activité (arrêt, démarrage) des services est gérée par mach_init
sur demande du processus client.
Le processus mach_init est activé à la fin du démarrage du noyau (processus
père : init). C'est le premier processus créé. C'est lui qui active le processus
init de la partie BSD du noyau.
Pour en savoir plus faire "man mach_init" avec le Terminal.
retour en haut de la page
- IRL :
In Real Life... locution américaine pour écrire "Dans la vraie vie..." par opposition
à la vie sur Internet. Même sans forcément se dédoubler, s'inventer un
pseudo, la vie sur Internet via les forums, les chats, les blobs, les listes de discussions
qualifiées de virtuels (sans contact physique réel vocal ou visuel) contamine l'individu
pendant les moments où il est connecté. Avec cette locution, l'interlocuteur ouvre une
parenthèse à sa vie hors Internet, sa vie réelle qui reste séparée
de sa vie virtuelle où tout est possible.
retour en haut de la page
- Le noyau :
Une façon de définir le noyau Unix (kernel en anglais) est de l'opposer aux processus.
Dans Unix toute action / exécution de code est un processus. Le noyau est la partie de code qui
reste "résidente" alors que les processus sont chargés ou déchargés
suivant leur exécution. Une autre façon de définir le noyau consiste à
regrouper toutes les opérations proches du matériel. Cette dernière
définition est floue du fait que la frontière est elle-même floue. Mais les deux
définitions se rejoigne en un morceau de code "résident", chargé au
démarrage, qui prend en charge les opérations proches du matériel. Avec Mac OS X,
une partie du noyau est issu de la famille Mach pour les opérations de gestion multitâche
préemptive et coopérative, de gestion du multitraitement symétrique (SMP), de
gestion de la mémoire physique et virtuelle, de communication entre processus de gestion des
dispositifs matériel et l'autre partie est issue de l'UNIX BSD pour les opérations de
gestions des utilisateurs et des permissions, des piles réseau, des fichiers virtuels, des API
Posix.
Pour en savoir plus voir les projets Mach
et FreeBSD.
retour en haut de la page
- ROTFL :
Rolling On The Floor Laughting... locution américaine pour écrire "Je me roule par
terre de rire..." Employez la à bon escient, votre interlocuteur à l'autre bout du
réseau ne peut voir si c'est juste une boutade ou plus.
retour en haut de la page
- Init :
Le programme init est la dernière étape du processus de démarrage de
l'ordinateur (processus père : noyau). La séquence de démarrage est
décrite dans le fichier /etc/rc.
Les informations affichées lors du démarrage sont conservées dans le fichier
/var/log/system.log (affichage du contenu du dernier démarrage avec la commande "grep Console
/var/log/system.log | tail")
Si la séquence réussie, il passe en mode multi-utilisateurs, sinon il passe en mode
mono-utilisateur en session super-utilisateur avec demande de mot de passe si la console est
marquée peu sûre (insecure) dans le fichier /etc/ttys. En mode multi-utilisateurs, init
exécute le programme de connexion login sur chaque liaison terminal de l'ordinateur. Sur Mac,
ces dernières sont désactivées, si bien qu'init ne lance que le programme de
connexion "loginwindow" sur la console, c'est à dire l'écran du Mac.
Pour en savoir plus faire "man init" avec le Terminal.
retour en haut de la page
- Processeurs CISC ou RISC ?
Au début des années 1990, Apple a été à l'origine de la famille de
processeur RISC (reduced instruction set computing - processeur à jeu d'instruction
réduit) PowerPC avec Motorola et IBM pour équiper les Macintoshs.
Avant Apple utilisait la famille de processeurs CISC (complex instruction set computing - processeur
à jeu d'instruction complexe) 68000 depuis 1984.
La technologie RISC est alors mise en avant. Ses deux caractéristiques principales sont
premièrement des instructions ayant toutes la même longueur (8 octets typiquement) et le
même format; deuxièmement des instructions (sauf branchement) exécutées par
la même séquence interne. En utilisant la technique du pipeline cela permet au processeur
de commencer à traiter des instructions en entrée de pipeline alors que les
dernières sont encore en cours de traitement. On obtient alors plus d'une instruction
traitée par cycle du processeur. En plus les compilateurs utilisent ce point pour
présenter les instructions au processeur dans un ordre favorable qui n'est plus tout à
fait dans l'ordre du code source. Entre parenthèse, cela rend aussi le code assembleur produit
complètement illisible pour un humain.
Quant à la technologie CISC, elle est caractérisée par des instructions variant
dans la longueur, le format et pouvant exiger les ordres différents de séquence pour
traiter. En conséquence, le processeur CISC doit identifier le type de chaque instruction avant
qu'il ne puisse lire les opérandes de l'instruction et continué en séquence. Par
contre, le code résultant est plus compact (certaines instructions ne font qu'un octet),
directement lisible et en utilisant la technologie superscalaire, le processeur dirige l'instruction
vers l'unité spécialisée qui peut la traiter comme les unités de
traitement "multimédia".
Aujourd'hui les deux technologies se sont rapprochées. Le PowerPC G5 embarque une unité
de traitement vectoriel (Altivec). Le Pentium embarque un cœur de traitement "micro-codé"
RISC.
Le choix n'est donc plus dogmatique mais doit se faire en fonction des applications. Une application
temps réel ayant de fortes contraintes sur des délais d'exécution penchera vers
un processeur RISC qui lui assurera des temps d'exécution reproductible en fonction d'un nombre
d'instruction et non pas variant en fonction de la nature des instructions. Une application
multimédia personnelle ou professionnelle penchera vers un processeur CISC avec des
unités adaptées vidéo, son et communications.
Pour en savoir plus voir le cours de l'université
d'Angers.
retour en haut de la page
- Kextd :
Le processus "kextd" a pour mission de charger les extensions du noyau sur une demande de celui-ci ou
d'un processus utilisateur. Les commandes pour charger et décharger une extension sont
respectivement kextload et kextunload. Par défaut les extensions à charger sont
recherchées dans le répertoire /System/Library/Extensions. La liste des extensions
chargées est donnée par kextstat.
L'option -x permet de ne charger que les extensions faisant partie de l'OS de base. Ce qui permet
d'effectuer un démarrage sûr sans des extensions pouvant corrompre le système.
Les messages d'erreur sont consignés dans system.log ou sinon disponible dans console.log
Le processus est lancé lors de l'initialisation du système Mac avec "kextd" ou "kextd
-x" si le démarrage est forcé sans extension externe (processus père : init).
Pour en savoir plus faire "man kextd" avec le Terminal.
retour en haut de la page
- Pourquoi ne pas appliquer aux logiciels les mêmes principes que pour les
autres inventions ?
Dans le domaine des logiciels, mon idée est d'en rester strictement au principe premier que la
découverte d'un concept technologique ou d'un algorithme n'est pas brevetable en soi mais que
son application particulière en tant interaction avec le monde physique l'est (y compris les
interactions avec l'humain comme les interfaces utilisateurs). Un exemple, l'affichage d'une
fenêtre dite "A propos" qui affiche le nom, la version et d'autres informations sur un logiciel
n'est pour moi pas brevetable en soi; mais le fenêtre du logiciel "FireFox" - par exemple - doit
être protégée. Elle relève du patrimoine de ces concepteurs. Comme le
définit l'INPI sur son site : "Les
idées sont de libre parcours. Elles ne sont jamais protégeables, pas plus que les
principes, méthodes, systèmes. Seuls leur expression et, pour les inventions, leur mode
de réalisation technique applicable industriellement, peuvent prétendre à la
protection." C'est la même différence qu'entre une spécification logicielle (qui
doit être publique pour être utile et utilisée) et son implémentation (qui
reste privée). Les concepts ou les spécifications d'interfaces sont de même nature
qu'une invention, par contre leur traduction particulière relève de la
propriété se son auteur. Elle doit être encore une fois protégée.
Pourquoi alors son auteur ne pourrait-il pas en retirer des bénéfices.
Pourquoi ainsi ne pas appliquer aux logiciels les mêmes principes que pour les autres inventions
?
Vos réponses...
retour en haut de la page
- Configd :
Le processus "configd" entretient la configuration du système durant son exécution,
c'est à dire qu'il distribue si besoin l'ensemble des données reflétant
l'état du système aux autres processus systèmes. Ces actions sont
réalisées au travers d'agents servant d'intermédiaires entre les processus et le
système. Les agents sont enregistrés par configd. Ils sont listés dans les
répertoires "/System/Library/SystemConfiguration" et
"/Library/Preferences/SystemConfiguration". Les deux principales configurations gérées
sont la configuration système (preferences.plist) et la configuration réseau
(NetworkInterfaces.plist). Le processus est lancé lors de l'initialisation du système
Mac (processus père : mach_init). Les messages générés par configd et ses
agents sont envoyés dans system.log. Pour en savoir plus : configd
(le man installé avec le système n'est pas à jour).
retour en haut de la page
- FWIW :
For What It's Worth... locution américaine pour écrire "Ça vaut ce que ça
vaut". Deux sens sont possibles, soit comme précaution pour signifier que les propos
cités doivent être considérés sous toutes réserves, soit pour
signifier qu'il faut prendre avec recul ce qu'avance l'auteur.
retour en haut de la page
- Un démon :
Démon est la dénomination pour un processus qui a la spécificité
première de ne pas se terminer une fois lancé et de ne pas avoir d'interaction directe
avec l'utilisateur.
Le processus tourne en tâche de fond et assure les tâches pour lesquelles il a
été lancé en automatique. Ce sont en majeure partie des tâches de gestion
bas niveau de matériels comme les périphériques (type clavier,
imprimante…), le réseau, les disques, etc. Cette appellation vient d'un jeu de mot en
anglais avec DAEMON mis pour "Disk and Execution MONitor". Les démons étant les gardiens
de l'Olympe dans la mythologie grecque, ils jouent ici ce rôle pour le noyau du système
d'exploitation.
Pour en savoir plus : Wikipedia.
retour en haut de la page
- HTH :
Hope This Helps... locution américaine signifiant "En espérant que cela vous aide".
retour en haut de la page
- Dynamic_pager :
Le processus dynamic_pager mets à la disposition du noyau des espaces disques sous forme de
fichiers pour l'utilisation de la mémoire virtuelle. Le noyau bascule une partie de la
mémoire non active sur le disque (voir explication sur le swap). Par
défaut les fichiers ont une taille de 64 Mo. Cette taille peut être redéfinie avec
l'option -S. Dynamic_pager créé un fichier lorsque la demande de mémoire augmente
ou en supprime un lorsqu'il n'y en a plus besoin. Par défaut, les fichiers sont
créés dans le répertoire /private/var/vm avec les noms swapfilei ou i part de 0
et s'incrémente d'une unité pour chaque nouveau fichier. L'option -F permet de
définir une base de fichiers. Le processus peut aussi prévenir lorsque la demande passe
en dessous ou au-dessus d'un seuil paramétrable en utilisant les options -L et -H. Pour des
raisons de sécurité les fichiers de swap peuvent être cryptés en utilisant
l'option -E.
Le processus est lancé lors de l'initialisation du système Mac avec "/sbin/dynamic_pager
-F /private/var/vm/swapfile" (processus père : init).
Pour en savoir plus faire "man dynamic_pager" avec le Terminal.
retour en haut de la page
- AFAIUI :
As Far As I Understand It... locution américaine signifiant "Pour autant que je comprenne".
retour en haut de la page
- Diskarbitrationd :
Le processus diskarbitrationd réalise la connexion et la déconnexion logique (ou le
montage et le démontage) d'un dispositif de stockage de masse (ou volume) comme un disque dur,
un CD ou une clé USB. Les volumes connectés au démarrage sont
énumérés dans le fichier /etc/fstab (classiquement sur un système type
unix) mais ne sert pas sur Mac OS X. Le processus averti aussi ses applications clientes des
changements de volumes. Avec l'option -d, les modifications sont tracées dans le fichier
/var/log/diskarbitrationd.log. Le processus est lancé lors de l'initialisation du
système Mac avec "/usr/sbin/diskarbitrationd" (processus père : init)
Pour en savoir plus faire "man diskarbitrationd" avec le Terminal.
retour en haut de la page
- YMMV :
You Mileage May Vary... littéralement "votre kilométrage peut varier" signifiant que ce
qui est présenté est sans garantie car cela peut différer suivant votre cas
particulier.
retour en haut de la page
- CVS :
Concurent Versioning System (CVS) est un système de contrôle de version d'un logiciel
comprenant un serveur de code source et de plusieurs outils. Les systèmes de contrôle de
version sont généralement utilisés dans le cycle de développement pour
suivre et coordonner les changements du code source au sein de l'équipe de
développement. Un serveur CVS est adapté à la spécificité du
développement logiciel avec des fichiers au format texte (compilation), avec un grand nombre de
fichiers (modularité), avec des modifications simultanés (parallélisation), avec
des livraisons multiples (historisation). Des bugs se glissent parfois quand le programme est
modifié. On peut ne détecter le bug que longtemps après avoir fait les
modifications. Avec CVS, on extrait facilement les anciennes versions pour voir exactement quel
changement a causé le bug. CVS stocke toutes les versions d'un fichier dans un fichier unique
d'une manière intelligente qui stocke seulement les différences entre les versions. CVS
utilise un et un seul dépôt (repository) qui centralise tous les fichiers du
développement logiciel. Chaque développeur travaille dans son propre bac à sable
(sandbox). CVS fusionne le travail quand chaque développeur a terminé. CVS autorise un
nombre non limité de copies locales de chaque fichier permettant à chaque
développeur de disposer de ses propres fichiers sources sur son poste de travail. CVS
gère la concurrence sans verrou. C’est à dire qu’il est possible à
plusieurs développeurs d’intervenir sur le même fichier source et d’apporter
chacun ses propres modifications. Dans la mesure du possible CVS gère automatiquement la fusion
des modifications.
Pour en savoir plus son site web : www.nongnu.org/cvs.
retour en haut de la page
- TYA :
Thank You All... signifiant simplement "merci à tous".
retour en haut de la page
- Code source / code objet :
Un logiciel est un objet informatique composé de millions de codes représentants des
instructions compréhensibles du seul processeur de notre ordinateur. D'où le vocable
"code objet" pour désigner la suite de ces instructions. Par opposition, le code source d'un
logiciel est la représentation de ces mêmes instruction dans une représentation en
un texte plus ou moins compréhensible par un humain. Il existe plusieurs niveaux allant du code
source assembleur au code source écrit dans un langage de programmation de 5ième
génération.
Pour en savoir plus : Petite
histoire des langages de programmations.
retour en haut de la page
- ATM :
At The Moment... littéralement "En ce moment..." signifiant aussi "Jusqu'à
maintenant..." utilisé pour préciser que ce qui suit n'est valable qu'au moment
où c'est écris.
retour en haut de la page
- Notifyd :
Notifyd est le serveur pour le système d'avertissements entre applications. Ce système
est très simple. Une application cliente lance au serveur un avertissement identifié par
un nom. Les applications clientes désirant recevoir l'avertissement s'enregistrent
auprès du serveur en demandant à être averties par vérification manuelle,
par signal, par message ou par fichier. Ensuite elles peuvent vérifier si l'avertissement est
arrivé. Le processus est lancé lors de l'initialisation du système Mac avec
"/usr/sbin/notifyd" (processus père : launchd)
Pour en savoir plus faire "man notifyd" et "man 3 notify"avec le Terminal.
retour en haut de la page
- Launchd :
Launchd est le nouveau processus de Darwin en charge du démarrage du système en lieu
est place du processus init. Le processus est le premier lancé par le noyau lors de l'initialisation du système Mac. La séquence de
démarrage est toujours décrite dans /etc/rc. Cependant, le lancement des services
statiques de /etc/rc est au fur à mesure reporté dynamiquement avec SystemStarter et
launchd. L'objectif est d'obtenir à terme un démarrage entièrement dynamique. De
plus, l'édition de /etc/rc est complexe et dangereuse. Une erreur bloquera l'ensemble du
lancement. Launchd peut être invoqué avec les options "-s" pour un démarrage
mono-utilisateur et "-x" pour un démarrage avec seulement les services minimaux du
système. Les services lancés par SystemStarter sont décrits dans
/System/Library/StartupItems et /Library/StartupItem. Les services lancés par launchd avec la
fonction launchctl sont décrits dans /System/Library/LaunchDaemons,
/System/Library/LaunchAgents, /Library/LaunchDaemons, /Library/LaunchAgents et ~/Library/LaunchAgents.
Pour en savoir plus faire "man launchd"avec le Terminal.
retour en haut de la page
- SLOC :
La taille d'un logiciel pour la plupart d'entre nous représente l'espace disque minimum pour
le contenir ou la durée de son téléchargement ! Cette taille là est la
résultante d'un travail de développement plus ou moins important, mais elle n'y est pas
directement liée. Il peut y avoir une tendance mais entre deux logiciels demandant la
même place disque l'un peut avoir nécessité beaucoup plus d'efforts que l'autre.
La valeur recherchée va plutôt dépendre de la taille du code source. Le code
source représente assez bien le temps passé par le développeur à
constituer le logiciel. La plupart des codes sources étant représentés par du
texte, on peut assez facilement classifier les sources spécifiquement créés pour
le logiciel, ceux qui ont été réutilisés, même ceux
générés automatiquement à partir de descriptions plus synthétiques.
Le nombre de lignes des sources est donc cette valeur recherchée, en anglais Source Lines of
Code (SLOC). Certains logiciels atteignent même jusqu'à des dizaines de millions (!) de
ligne comme Linux (environ 40 millions SLOC). Il existe quantité d'outils qui vont compter le
nombre de lignes en mettant de côté lignes vides et commentaires. Bien évidemment
le nombre de SLOC n'est pas calculé pour le plaisir mais pour estimer le temps à passer
à créer un logiciel et ainsi son coût et sa durée de développement.
retour en haut de la page
- Pourquoi payer plus cher maintenant alors que ce sera moins cher voire gratuit
après ?
La durée de vie d'un produit informatique - ordinateur ou logiciel - est courte, très
courte. C'est bien connu. Pourtant, face à la situation où pour le même prix il
apparaît un ordinateur qui fait 10 fois plus trois mois après son achat ou bien que
également trois mois après le prix du même logiciel a fortement diminué, on
peut se poser la question suivante : Pourquoi payer plus cher maintenant alors que ce sera moins cher
voire gratuit après ? Néanmoins, est-ce vraiment la bonne question à se poser ?
Un produit informatique est un investissement important pour celui qui l'achète mais c'est
aussi un bien plus important investissement pour celui qui l'a créé. Il est certain
qu'une partie du coût de cet investissement se retrouve dans le prix. Ensuite lorsque le montant
de l'investissement est couvert, le prix du produit peut alors baisser voire le produit peut devenir
gratuit. Ne faut-il pas alors se poser la question : Est-ce que j'ai bien fait en payant ce produit
à ce prix là ? À ce moment là, on profite de ceux qui ont payé
avant nous et avant ce moment on paye pour ceux qui vont acheté après. La question
devient alors : Quels usages pour l'argent que je donne ? Est-ce uniquement pour enrichir le
créateur du produit ou pour être réinvestit dans d'autres produits dont je
pourrais bénéficier par la suite ?
Vos réponses...
retour en haut de la page
- AFAIR :
As Far As I Remember... littéralement "Aussi loin que je me souvienne..." signifiant par
là une précaution utilisée pour préciser que ce qui suit est
conditionné par la bonne mémoire de l'auteur.
retour en haut de la page
- Pourquoi le législateur n'est-il pas plus strict à l'encontre des
e-mails commerciaux ?
Une obligation de d'inclure une mention permettant de ne plus recevoir de messages au moyen d'une
adresse e-mail dédiée et non pas d'un lien Internet moins fiable. L'adresse e-mail
débuterais toujours par "no-use" suivi du nom du site du style "no-use@site.com". Cela
permettrais d'une part de recevoir une réponse indiquant soit que notre adresse e-mail ne sera
dorénavant plus utilisée par le site à des fins commerciales ou
dérivées, soit que notre adresse n'est plus utilisées à ces mêmes
fins. Je préfère le terme "utilisé" au terme "enregistré" ou
"abonné" car certains sites malveillants annulent bien l'enregistrement de notre adresse mais
la refile à d'autres sites sans plus d'autorisation qu'implicitement "plus enregistrée"
ne signifie pas "plus utilisée". Bien sûr, cela n'empêchera pas cette pratique de
perdurer mais cela donnera des moyens de recours supplémentaires et plus rigoureux. D'autre
part, dans le cas où légalement une mention comportant cette adresse du style
"no-use@site.com" était obligatoire, cela permettrait aux serveurs de messages des FAIs de
vérifier sa présence, la bonne cohérence entre le domaine émetteur et
celui de l'adresse, voir même de vérifier sa validité en envoyant un message avec
une adresse du type "test@fai.fr". Dans la négative, le message serait marqué "non
désirable" pour l'utilisateur et le serveur pourrait renvoyer un avertissement de non remise
à l'émetteur.
Vos réponses...
retour en haut de la page
- Ichbiah :
Jean Ichbiah, membre de l'académie des sciences, est indissociable de la naissance du langage
Ada. À la fin des années 70, avec son équipe chez Bull, il se lance à
l'assaut des États-Unis et de son ministère de la défense (DoD) qui recherche
à unifier ses langages de développement (quelques centaines !) des logiciels militaires.
Après une sélection rigoureuse, le DoD retient le projet français Ada
qui devient une norme internationnale en 1983. La fin du projet marquera pour beaucoup (dont je fais
partie) le début de nouvelles aventures avec un langage dont la puissance n'a pas fini de
surprendre.
Jean Ichbiah reçu aussi bien les honneurs français qu'américains pour cette
contribution à l'histoire des langages informatiques.
Né en 1940, habitant en Amérique depuis l'aventure Ada, il décède en
janvier 2007 des suites d'une tumeur cérébrale.
retour en haut de la page
- WYSIWYG :
What You See is What You Get... littéralement "Ce que vous voyez est ce que vous obtenez..."
signifiant que l'interface utilisateur est de type graphique au contraire des premières
interfaces utilisateurs en mode texte. Ce terme a surtout été utilisé comme
slogan dans les années 80 pour vanter les mérites de logiciels graphiques
multi-fenêtres. Avec une interface texte, il était assez difficile de d'obtenir une bonne
fidélité entre la visualisation à l'écran et d'impression. Aujourd'hui la
tendance est moins à l'impression mais plus à la publication électronique. Mais
le terme dénote toujours une interface utilisateur ergonomique.
retour en haut de la page
- POSIX :
Au vu de la prolifération des Unix non standard - dont Mac OS X / Darwin est un dernier avatar
de plus - l'Institute of Electronic and Electical Engineers (plus connue sous IEEE) créé
un groupe de travail à la des années 1980 pour développer un standard d'interface
Unix : Portable Operating System Interface based on uniX (POSIX - IEEE Std 1003 - ISO 9945) dont le
nom a changé par la suite en Portable Operating System Interface for Computer Environments
puisque en fait Unix est une marque (crée par ATT dans les années 1970, Unix est
maintenant la propriété de l'Open Group). L'objectif du groupe POSIX est de créer
un standard international basé sur les deux souches Unix principales ATT et BSD (l'autre
version historique avec plus récemment Linux). Il s'agit de définir une interface de
programmation standard (API) entre le code applicatif et le système d'exploitation. Pour cela,
ce standard doit être indépendant des constructeurs, du système d'exploitation et
de la plate-forme matérielle. De ce fait, la portabilité des applications au niveau du
source peut être assurée.
Pour en savoir plus : Wikipédia.
retour en haut de la page
- TIA :
Thanks In Advance... littéralement "Par avance, merci..." généralement
employé pour indiquer que toute réponse à notre demande sera la bienvenue et en
sera remerciée.
retour en haut de la page
À bientôt...
Il est interdit de reproduire, même partiellement, le contenu de cette page sans
autorisation écrite préalable.
Toutes les marques déposées sont la propriété de leur
dépositaire.
|