billitch

Bienvenue sur blog de billitch !
Du code, de la noise, et quelques pensées électrogènes...


mardi 12 mai 2009

Auto-mille

Ça y est, je suis auto-entrepreneur !

1. Le mardi 12 mai 2009à16:02, par Alice

YEAH !!!!!!

2. Le mercredi 13 mai 2009à16:33, par rook

c'est obscur. Développe.

3. Le jeudi 14 mai 2009à14:50, par rook

rav mais http://www.dailymotion.com/video/x8ury3_albanel-ministre-de-linculture-open_news

4. Le jeudi 14 mai 2009à17:59, par Nicko

Je m'excuse de spammer mais si certains d'entre vous pouvaient aller lire et signer ce truc ...

http://petitions.alter.eu.org/index.php?petition=7

... on sait jamais, l'université ne va peut-être pas crever.

5. Le samedi 16 mai 2009à11:06, par Camagique

D'où ?

6. Le dimanche 17 mai 2009à07:11, par billitch

Je suis désormais une micro-entreprise, à moi tout seul =D

L'intéret c'est que les taxes (professionnelles et autres) sont proportionnelles au chiffre d'affaire. Du coup tout est plus simple et aussi moins risqué car pas de revenus = pas de charges (contrairement aux autres entreprises qui payent tous les ans).


mardi 22 juillet 2008

OCaml répartit les tâches (sans frotter)

Je me suis remis à coder en caml récemment pour réaliser une file d'attente parallélisée des exports de nos photos 3d. Pour les non initiés Objective Caml est language de programmation né il y a quelques années seulement à l'INRIA en France. Il réunit sous une même grammaire les styles de programmation fonctionnelle, imperative, et orientée objet.

L'intérêt est que OCaml étant un langage de haut niveau (d'abstraction!) il est capable d'analyser et de vérifier la validité du code écrit. Il doit cela à son système de typage qui permet de déduire automatiquement le type d'une expression, et de détecter les incohérences avec le reste du programme. De cette manière, les programmes compilés en caml ont moins de bugs et sont beaucoup plus stables que leurs homologues sibyllins. Du coup mon petit bout de code en caml sera suffisament stable pour recevoir et distribuer des tâches sur plein de machines différentes sans interruption pendant des années.

Le design est assez simple :

  • Une petite base de donnée fait office de file d'attente. En l'occurence j'utilise SQLite, celle-ci supporte d'être accédé simultanément par plusieurs processus (ou plusieurs threads, mais les threads, c'est mal) ce qui règle le problème le plus problématique du design.
  • Un client web permet d'ajouter des jobs dans la file d'attente. J'ai découvert OCamlNet qui permet de créer assez simplement des CGI pour faire des pages web dynamiques.
  • Un serveur de calcul qui sort les jobs de la file d'attente et lance l'exportation de la photo 3d. Ce serveur peut lancer plusieurs jobs à la fois sur la même machine pour tirer toute la puissance des nouveaux processeurs multi-coeurs (et de notre MacPro bi-processeur G4 trouvé sur e-bay ^^).

1. Le mardi 29 juillet 2008à16:28, par ig0r

fichtre !

tiens sinon ça peut peut-être t'interesser : http://ocsigen.org/

pour faire aussi bien les aspects serveur que client en ocaml :)