Philosophie 2.0
Liens utiles |
Structure hiérarchique |
Page parent
Contenu
Pages enfants
Mentions |
Comprendre et suivre le projet
À quoi bon si ce n'est pour le partager ? C'est toujours un travail d'équipe, même quand on n'en a pas l'impression.
L'informatique
Contraction d'"information automatique", cette discipline consiste à automatiser la transmission, la transformation et le stockage de l'information (textes, nombres, images).
La mathématique : la langue de base
Rien ou quelque chose, 1 ou 0. Cela suffit pour tout le reste, c'est cette différence entre rien et quelque chose qui permet de créer une "donnée". La plus petite donnée possible est donc binaire.
Pour bien comprendre comment on en fait quelque chose, il faut s'intéresser aux protocoles, "Comment les données sont formatées avant d'être envoyées ?".
Il faut également s'intéresser à l'assembleur, le langage informatique de plus "bas-niveau", le plus éloigné de l'humain, le plus proche de la machine, du 0 et du 1.
À l'inverse, les langages de "haut-niveau" sont faciles à lire... quand ils sont bien écrits ! On va y revenir...
Le "back" et le "front", le moteur et la carrosserie
Nous accédons à l'informatique à l'aide d'interfaces (souvent qualifiées d'"UI" pour "User Interface"), ce sont principalement des écrans qui nous permettent de communiquer avec la machine. Ce que nous présentent ces écrans n'est pas le fruit du hasard, mais celui du travail de milliers d'informaticiens pendant des dizaines d'années. Merci à eux.
Cette partie-là, l'interface utilisateur, est qualifiée de "front" (pour "en face").
Le front n'est pas qu'une image, nous pouvons interagir avec et le résultat de cette interaction se passe dans le "back" : les algorithmes développés pour "faire réagir l'image (l'interface utilisateur), à une information (issue d'un périphérique : clavier, souris)".
Le "back"
Quel langage utiliser ?
Ah, le C++, mon 1ᵉʳ amour. L'orienté objet, le clean code... c'est beau un algorithme quand c'est bien écrit, surtout s'il est open source.
Première idée : écrire Eden en C++ ("la maison").
Mais... ne fait-on pas mieux aujourd'hui ? N'y a-t-il pas un néo-langage, qui prend ce qui se fait de mieux tout en s'émancipant des erreurs héritées ? Si, peut-être même plus d'un mais l'avantage de Rust (qui est le gagnant de l'histoire), c'est que même Linus Torvalds s'y intéresse pour réécrire le noyau de Linux (et Google comme alternative au C/C++ pour leur projet Android Open Source). Rien que ça !
Quels principes utiliser ?
Rédiger un code SOLID.
TODO
Eden : comment ça marche ?
Eden est un logiciel, un outil 2.0 dans le sens où il permet d'atteindre plus rapidement un objectif (but d'un outil, être utile) tout en étant "abstrait", numérique (d'où le 2.0).
Le code source est disponible ici.
Une base de données de plus de 30,000 plantes est utilisée afin d'extraire celles adaptées à un environnement donné (type de sol, ensoleillement, humidité et température).
Ces plantes sont ensuite arrangées de manière à maximiser les interactions positives entre elles et d'ainsi réduire l'intervention humaine. Encore beaucoup de travail à réaliser sur ce dernier point.
L'idée, optimiser ce type d'initiatives : Permaculture Design.
Quel OS pour héberger tout ça ?
Qu'est-ce que Linux ? Et ce Deb-Ian ? (Debra Lynn & Ian Murdock ?)
C'est actuellement l'OS sur lequel tourne la version en ligne d'Eden.
Debian est basé sur Linux (il possède le même code source de base), Linux qui est un OS (Operating System) open source, créé par Linus Torvalds. Merci Linus, tu nous as permis d'accéder à la base de l'informatique, librement.
L'OS est le logiciel au cœur de l'ordinateur / du serveur (c'est techniquement la même chose), ça mérite de s'y attarder.
TODO
Comment accéder à Eden ?
De l'ordinateur aux ordinateurs du réseau
Nginx est le "serveur web" qui permet d'atteindre l'interface d'Eden à l'aide d'un URL. Identifier l'adresse (IP + port) du front d'un logiciel servit par une interface HTML, c'est ça le but principal de Nginx.
TODO
Le "front"
Le site internet
Pour exister au XXIᵉ siècle, un site internet est très utile. Le nom de domaine vanaprincipia.com et vanaprincipia.fr ont été achetés et un template a été utilisé pour créer le site sans partir de zéro (merci l'open source) : themewagon.
TODO
XWiki
Partager l'information
Vous y êtes ! Un site internet facilement accessible et modifiable par tous. Comment rêver mieux pour partager l'information associée à un projet open source !
Important : s'inspirer des meilleurs (Wikipedia). Ne pas hésiter à utiliser des liens pour connecter les informations entre elles, éviter les doublons et conserver les blocs d'informations à jour !
TODO
UI/UX - HTML, CSS et JavaScript
Être efficace et rapidement compris
L'UI d'Eden est écrite en HTML / CSS / JavaScript (trois languages qui interagissent pour permettre d'avoir une interface esthétique et dynamique). Les templates open source permettent de ne pas réinventer la roue et de partir de bases solides. L'union fait la force, autant éviter de perdre du temps pour avancer rapidement dans la bonne direction.
TODO