612M$
Wed, Oct 13, 2004Via /., on apprend qu’une entreprise devrait dépenser plus de 600 millions de dollars pour redévelopper le noyau Linux !
Pfiou, ça fait quelque chose d’avoir ça d’installé sur sa machine :-).
Via /., on apprend qu’une entreprise devrait dépenser plus de 600 millions de dollars pour redévelopper le noyau Linux !
Pfiou, ça fait quelque chose d’avoir ça d’installé sur sa machine :-).
Ça faisait quelques temps que j’avais envie d’écrire sur un sujet plus technique. J’en ai d’autres en tête, le problème étant de trouver le temps pour les traiter durant cette dernière année d’école d’ingénieurs qui nécessite tant de travail, comme le dit aussi Vincent…
Cette année, pour mes projets j’utilise Subversion alias svn à la place de CVS que j’utilisais l’année dernière.
Je parlerai surtout de son utilisation côté client parce que je n’ai installé un serveur que pour CVS. L’installation d’un serveur svn a toutefois l’air plus complexe, mais je me fourvoie très certainement, j’en conviens.
En fait, svn ne se pose pas en concurrent de CVS, mais en successeur. Il n’y a donc pas de raisons de chercher à trouver CVS meilleur, il ne l’est pas. C’est très simple, j’ai même entendu dire que ce sont des anciens développeurs de CVS qui ont codé svn. Ils ont repris ce qui était bon et modifié ou supprimé ce qui était mauvais.
Ils ont gardé les mêmes commandes (enfin, pour celles qu’on utilise le plus couramment, je n’ai pourtant vu aucune différence) :
Donc, si vous commencez un projet, n’hésitez pas utiliser svn plutôt que CVS. Il est d’ores et déjà prêt pour une utilisation en production (dixit la FAQ de Subversion).
Comme je l’ai dit plus haut, je n’ai testé que le côté client. Voici en vrac quelques points que j’ai retenus. Ils ne sont pas forcément très importants, mais c’est ceux qui me viennent à l’esprit alors que j’écris ce billet :
export qui précédaient l’appel du
checkout avec CVS. (Bon, c’est vrai qu’il peut encore y avoir des
export dans certains cas avec svn, mais jusqu’à maintenant, je
n’en ai pas eu besoin, mais passons).,v
:-). Subversion a été pensé pour être utilisé en réseau, il offre
donc plusieurs moyens évolués et sécurisés d’accéder au repository,
là où CVS obligeait à posséder un compte utilisateur sur la machine
serveur…svn rename, svn offre la possibilité de renommer
un fichier là où CVS obligeait à : déplacer le fichier, le supprimer
du repository (cvs remove) et l’ajouter à nouveau avec le nouveau
nom (cvs add)…CVS is aged, and it has many deficiencies. For example, you cannot move or rename files, the branch feature is very complicated, etc. Furthermore, CVS has only poor network support. To run it in a safe way, you must use it in conjunction with ssh, and this means that you must give all participants a system account. If the network connection breaks in the middle of a commit operation, this may damage your data.
Subversion seems to implement all features that are missing in CVS. The version control model is more complete, as you can check in directories. The network support is much better, as it uses the well-known WebDAV protocol. One can tunnel it easily through SSL, and it is only required to have a web server user account to get write access. Last but not least, there is a modern database behind it with transactions, so you are not lost in space if your disk gets full, or if some other unpredicted incident happens.
Bien entendu, si vous avez des questions ou des compléments sur le sujet, n’hésitez pas à utiliser les commentaires :-)
Bon, cette nuit j’ai dormi à Champs/Marne chez Rudy, Gab était là aussi. On est rentré un peu tard de soirée et je me voyais pas trop prendre le volant…
On a donc décidé de boufer un ptit truc avant de se coucher. Rudy propose une soupe, Gab et moi trouvons que c’est une bonne idée. Et là, Gab demande : “Hey, t’aurais pas une soupe à la purée et aux knackis ?”(sic)… L’alcool fait des ravages, non ? :-)
Une autre pour la route, Rudy habite dans une résidence très près de l’école : 620€/mois pour 18m². Je remarque que son rideau de fenêtre est déchiré, alors je le lui dis et lui de me répondre : “attends ! qu’est-ce tu crois ? T’as cru que pour ce prix là, c’était le grand luxe ou quoi ?”. Sans oublier que son lit s’est cassé hier soir lorsqu’il s’est assis dessus…
C’est la vie :-)
Pour ceux qui suivent un peu, je suis dans une école en alternance où je fais 6 mois à l’école et 6 mois en entreprise. Mon école se trouve dans la cité Descartes de l’UMLV, à Champs sur Marne en Seine et Marne et mon entreprise est à Toulouse…
Alors, voilà… Le problème c’est que j’ai entendu la météo de demain : genre 16 à Paris, 17 à bidule, 24 en Corse et … 29 à Toulouse ! Oui, 29° :'(
Et moi de me dire qu’on est en octobre et que je ne suis PAS à Toulouse en ce moment…
Et là… c’est le drame…
Bon, un petit extrait d’un des cours d’aujourd’hui. Juste pour montrer qu’on ne perd pas la main.
La prof nous parle du malheur des SSII qui sombrent à cause de leur petit poids face aux géants. Elle continue ensuite de parler de ces boites…
Ah, ces pauvres boites de petit poids, me dis-je…
Face au géant (vert), que je pense maintenant que j’écris ce billet :-)
Allez, ce sera tout pour la blague du jour (pour ceux qui ne l’ont pas vue, ne la cherchez pas, vous ne rirez pas. J’ai dit non, ne la cherchez pas !).
Un peu de mode ma vie®.
Je viens de recevoir ma neuf box, mais j’attends toujours que ma connexion soit activée. Il semble en effet que ce ne soit pas encore le cas. Heureusement que la connexion illimitée bas-débit de secours fonctionne… Mais comment on faisait avant ?
Quelques commentaires sur ce modem. Je vais un peu la comparer avec la FreeBox, que j’ai à Toulouse :
Bon, voilà, j’ai fini pour la NeufBox
Sinon, pour terminer, eh ben je reviens du volley et ça fait franchement du bien :-) . Ce soir, un pote de ma promo est venu…
Bon, ce sera tout pour ce soir et ce billet inintéressant.
EDIT : Tiens, au fait, je voulais le dire depuis un certain temps. Mais j’ai la flemme de rajouter un lien dans le menu, il est possible de suivre les commentaires postés sur le blog par le fil rss des commentaires.
Bon ben voilà Vincent, j’ai aussi passé le geek test.
Eh ben, je suis moins geek que toi !
Votre fiche de geek
Votre score est de : 1058
Vous faites partie des Reasonable Geeks
Pas mal… Un bon taux de geekitude coule dans vos veines, mais vous êtes encore trop sociable pour faire un bon geek. Débarrassez-vous des quelques amis qui ont l’outrecuidance de vous tirer hors de chez vous. :-p
Pong.
Via le Blog-Note, un lien vers le good site qui va vous faire gagner du time (and “time is money”).
Sinon, j’aime beaucoup aussi.
À force d’entendre ma copine et d’autres se plaindre de ne pas trouver :
je me décide à t’expliquer, public, comment ça marche un moteur de recherche, à la base.
Pourquoi, lorsque vous tapez quelque chose du genre “bac résultats toulouse”, vous n’obtenez pas toujours de façon miraculeuse et en premier le lien direct sur la liste des bacheliers fraîchement reçus ?
C’est très simple : chaque moteur de recherche possède un robot (un logiciel) qui passe son temps à surfer et à trier tout ce qu’il lit. Il retient donc plus ou moins bêtement les mots qu’il a rencontré. Donc, si aucun site n’a écrit en toute lettre un ou plusieurs jours avant les résultats d’un examen Résultats du bac ici pour l’académie de chouette, et bien le moteur de recherche ne pourra pas deviner où l’information est succeptible de se trouver et ne pourra pas donc pas vous fournir la bonne réponse le jour venu… C’est pas plus compliqué que ça.
64.68.82.178 www.batmat.net - [01/Sep/2004:11:48:04 +0200] "GET /robots.txt HTTP/1.0" 404 2384 "-" "Googlebot/2.1 (+http://www.google.com/bot.html)"
Yahoo
66.196.90.232 www.batmat.net - [01/Sep/2004:00:21:44 +0200] "GET /robots.txt HTTP/1.0" 404 2384 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)"
MSN
65.54.188.130 batmat.net - [01/Sep/2004:07:55:07 +0200] "GET /blog/2004/08/24/76-VolleyballAuxJoSuiteEtFin HTTP/1.0" 200 12981 "-" "msnbot/0.11 (+http://search.msn.com/msnbot.htm)"
Divers autres
192.133.61.44 www.batmat.net - [01/Sep/2004:09:04:42 +0200] "GET /robots.txt HTTP/1.0" 404 2384 "-" "lmspider (lmspider@scansoft.com)"
64.62.168.26 www.batmat.net - [01/Sep/2004:02:56:44 +0200] "GET /robots.txt HTTP/1.0" 404 2384 "-" "Gigabot/2.0"
La faute n’est donc pas à ce_fichu_internet_qui_ne_fonctionne_pas_si_bien_que_ça, mais tout simplement au fait qu’on ne sait pas encore, malgré les progrès fulgurants de la technologie, lire l’avenir dans les pages web :-).
PS aux XHTMLeux : j’ai mis les logs en <code>, qu’est-ce que vous en pensez ?
Les connaisseurs du langage se diront certainement que c’est impossible. Et bien, ceux là n’auront pas encore découvert la nouvelle API de Tiger, la version 1.5 de Java (parfois connue aussi sous le nom de version 5). Les varargs font en effet partie des nombreux ajouts de l’API qui devrait sortir en version finale (actuellement beta2) vers le mois d’octobre.
Je vais donc décrire brièvement comment ça marche avec des petits bouts de code. Vous verrez que c’est très simple à l’utilisation, beaucoup plus que l’équivalent C :-).
Nous allons montrer un exemple avec l’ancienne et la nouvelle méthode. Une simple fonction destinée à afficher les paramètres qui lui sont demandés.
On utilisait un tableau d’arguments en entrée, ce qui pouvait s’avérer lourd à l’utilisation.
public maFonctionBof(String [] args)
{
//et paf, on fait des trucs en parcourant le tableau
for(int i=0;i<args.length;++i)
{
System.out.println(args[i]);
}
}
Pour l’appeler, ça donnait un truc assez moche :
maFonctionBof(new String[]{"nif-nif","naf-naf","nouf-nouf"});
En fait, seule la signature de la méthode change, le corps reste totalement identique :
public maFonctionPasBof(String... args)
{
//et paf, on fait des trucs en parcourant le tableau
for(int i=0;i<args.length;++i)
{
System.out.println(args[i]);
}
}
Vous remarquerez que c’est le même symbole qu’en C. Et pour l’appeler, ça simplifie la chose :
maFonctionPasBof("nif-nif","naf-naf","nouf-nouf");
Mais alors, mais alors, mais alors ? Quelle est donc la fonction connue par une génération de programmeur C, adulée que dis-je, utilisant ce principe avec avantage et que beaucoup demandaient ? Oui, vous l’avez rêvé, ils l’ont fait : printf est maintenant disponible dans l’API de la version 1.5 de Java :-).
float v = 1.5F;
int nb = 2;
System.out.printf("C'est-y-po formidable tout ça ? Que la version %.1f
nous apporte ces %05d améliorations ?",v,nb);
Pour des informations plus complètes sur les nouveautés de Tiger.