CrEv's blog

Aller au contenu | Aller au menu | Aller à la recherche

Mot-clé - stuxnet

Fil des billets

2012 juil. 17

De tout, de rien, des bookmarks, du bla bla

Introduction

Je suis un peu en retard par rapport à ce que je voulais faire (boulot, changement, toussa), et au final j'ai pas trop de liens intéressants. Mais tant pis, voici la petite sélection de la semaine passée avec, je l'espère, tout de même quelques liens qui pourront vous intéresser.

Un peu de contenu

Développement

Voici une petite présentation de CoffeeScript. Si vous connaissez déjà le langage vous n'apprendrez rien du tout. Si vous ne le connaissez pas et connaissez javascript çar peut être intéressant. Entre autre ça pointe certains points négatifs de CoffeeScript et ça c'est bien (il est domage dans certaines prez de les masquer, connaître les limites est vraiment important je trouve).

C'est plus de la sécurité que du développement, mais voici un article intéressant et plutôt simple à lire concernant Stuxnet et ses mises à jour.

Voici encore un outil de code reviews, barkeep. Je ne l'ai pas testé, mais si quelqu'un a un comparatif / retour entre les différents outils existant (reviewboard, crew, etc) je suis preneur.

Oula, je ne pensais pas qu'on pouvait encore faire des migrations du genre : les ports de FreeBSD viennent de migrer de CVS vers SVN ! Hum, je comprend qu'on a pas forcément réellement besoin de plus que SVN (quoique...) mais je trouve étonnant de migrer vers SVN tout de même. Quelqu'un aurait des infos sur pourquoi SVN et par Git par exemple ?

Misc

Google a libéré les slides utilisées durant Google I/O. Evidemment (ou pas) il s'agit de slides à exécuter dans un navigateur web récent... sous webkit. Je n'ai pas vraiment essayé avec un autre, je ne sais pas trop ce que ça donne mais surtout je ne sais pas pour quelle raison cela ne pourrait pas fonctionner avec, par exemple, un firefox récent. Quoi qu'il en soit ces slides sont plutôt sympa, assez propres et claires. J'aime beaucoup le fait qu'on puisse ouvrir plusieurs fois le même document pour avoir l'un en plein écran (pour le public) et un autre avec les commentaires par exemple (un mode présenteur quoi). C'est vraiment un point intéressant pour le coup (la communication se faisant via postMessage). Ca semble également assez bien adapté à la présentation d'extraits de code. Plutôt bien quoi.

Là où je suis par contre plutôt surpris (mais bon, je ne devrais pas il est vrai) et qu'ils n'utilisent pas les différentes libs Google mais à chaque fois un équivalent :

C'est un peu étonnant, et j'ai parfois du mal à capter la logique. Surtout que si on continue a regarder ces points ont arrive entre autre jusque Yeoman, même si pour le coup j'attend un peu de voir et tester.

Pour rester sur le même sujet, il existe d'autres outils permettant de faires de présentations en HTML5. Entre autre, voici celui utilisé par nono (mais non je ne cherche pas à me faire bien voir, il n'a qu'à pas balancer des choses intéressantes :-) ) : Slide'em up. Il y a tout de même quelques différences. Entre autre je n'y ai pas vu de mode présenteur (j'affectionne particulièrement pour ma part), et c'est basé sur du Ruby. L'écriture des slides est égalemment réalisée en Markdown (c'est à priori aussi possible pour celles de Google). De ce que j'en ai compris, il s'agit par contre d'un fork de ShowOff avec des thèmes et surtout le remplacement de Sinatra par Goliath. De ce que j'ai compris il s'agit de serveurs web en ruby, Goliath étant asynchrone (un peu comme si on faisait du nodejs, non ?). Sinatra est plus un DSL et non un vrai serveur ? Si nono passe pas là je suis pas contre une explication de ce choix de remplacer l'un par l'autre. En fait juste pour bien comprendre les différences entre les deux et pourquoi c'est plus intéressant d'avoir Goliath dans ce cas que Sinatra.

Voici, beaucoup plus léger, une photo que j'ai vu passé sur twitter, peut-être vous aussi : good - cheap - fast. Une façon assez sympa de présenter trois catégories de réalisations, un peu comme le théorème CAP finalement.

Humans.txt est une initiative assez intéressante. Il s'agit de replacer un peu d'humain dans les sites web. On a par exemple des fichiers robots.txt pour parler aux moteurs de recherche. Là il est question d'un fichier qui, pour le coup, est destiné aux humains : déclaration des autheurs, des créateurs, remerciements. Par contre, j'ai pas bien compris la ligne IDE, je vois pas trop ce que ça vient faire dedans... Vous trouverez une explication sur le site robots.txt...

Graphisme & co

Si vous utilisez balsamiq pour faire vos maquettes d'interfaces, vous serez probablement ravis d'apprendre qu'il existe une nouvelle alternative, moqups. Il s'agit d'un outil assez similaire, en html (au lieu de flash/air) et qui plus est gratuit. Par contre, ça ne semble pas libre.

Liste des liens présentés

Développement

Misc

Graphisme & co

2012 juin 11

De tout, de rien, des liens, du vrac (mais moins bookmarks cette fois)

Et voici un nouveau numéro !

Bon, faudrait que j'arrive à me caler sur trolldi pour publier, ça pourrait être un peu plus marrant...

Quoi qu'il en soit, j'ai essayé de faire ça un peu mieux en catégorisant un peu plus, même si c'est pas encore parfait. Les liens sont plutôt inclus dans le texte, à vous de dire si c'est mieux ou si vous préférez de bêtes listes.

Pour cette fois, principalement trois thèmes :

  • Des histoires de boulot
  • Quelques news de sécurité
  • Un peu de développement

Alors commençons avec le boulot.

Connaissez-vous le principe de Peter ? Non, je ne parle pas du [syndrome de Peter Pan](http://fr.wikipedia.org/wiki/syndrome de peter pan). t Le Principe de Peter est un principe vraiment intéressant qui dit, en gros « Avec le temps, tout poste sera occupé par un incompétent incapable d'en assumer la responsabilité ».

En résumé rapide (si vous voulez en savoir plus allez lire le lien) lorsqu'on est compétent à un poste, qu'on réussi, on a tendance à monter dans la hiérarchie. Le truc c'est qu'on est probablement moins compétent dans ce nouveau poste. Et ainsi de suite on s'élève jusqu'à un niveau d'incompétence problématique alors qu'initialement on était compétent.

A méditer lors des choix d'évolution de carrière...

En parlant de postes, pour vous développeurs (enfin ça peut sûrement s'appliquer à d'autres) comment se passe votre temps de travail ? Etes-vous contraint par des horaires strictes ? Horaire libres ? Finalement, dans quel cas êtes vous le plus productif et combien d'heures par jour de boulot ? Voici deux articles sur le sujet, l'un sur le fait d'avoir 2 à 3 heures par jour de réellement productives, l'autre sur le fait d'Être comptable de son temps.

Pour ma part je suis plutôt d'accord avec ces posts. Souvent, avoir un décompte trop précis ou vouloir que chaque minute soit réellement productive a l'effet inverse. Combien de fois trouvons-nous des solutions en regardant par la fenêtre ou une fois sorti du boulot ?

Je me souviens que, lorsque je travaillais à 100km de chez moi, je faisais alors pas mal de voiture (ok, 2h en temps normal, 2h20 si c'était sous la neige). Histoire de rajouter un peu, le temps était mesuré, en gros je pointais... Mais quelle connerie au final ! Parfois, j'étais bloqué sur un problème en fin d'après midi. Pas moyen de s'en sortir. Et pas question de quitter puisque je pointais et avait un nombre d'heure mini à faire (le résultat de la pointeuse était aussi que personne ne faisait plus lorsqu'il l'aurait fallu). Donc j'attendais en gros. Je cherchais quand même, j'étais pas en train de me promener sur facebook (faudrait que je regarde la date mais ça n'existait peut-être même pas, en tout cas je ne connaissais pas - et de toute façon j'avais pas le net sur mon poste...). Puis, arrivé l'heure fatidique, je repartais prendre ma voiture et faire 100 bornes. Souvent, au bout de quelques kilomètres je trouvais la solution. Alors je la notais pour le faire le lendemain matin.

Au final, n'aurais-je pas été gagnant (et mon entreprise également) à pouvoir m'échapper un moment puis revenir avec la solution ? Si j'avais pu, j'aurais résolu le problème avant la fin de la journée. En voulant me forcer à rester, la solution n'a été implémentée que le lendemain. En croyant augmenter la productivité au final elle a été réduite, en plus de ne pas donner envie.

Mais d'ailleurs, si on laissait plus de liberté à ces gens qui font des logiciels, ça donnerait quoi ? Et pourquoi pas un ~~plan de domination mondiale~~ Master plan !

Et en parlant de domination, où on en est côté cyberwar ces derniers temps ? Car il semble que ça avance réellement. Notamment côté Stuxnet, où il semblerait que La NSA et l’Unité 8200 étaient à l’origine de Stuxnet.

En même temps, dans certains cas, pas besoin de puissance folle pour bouffer du mot de passe Linkedin. Ils ont oubliés le poivre. Ou le sel. Rha je sais plus :-) An Update on LinkedIn Member Passwords Compromised

Par contre, impossible évidemment de passer sous silence la jolie 0day concernant MySQL et MariaDB. Tellement gros qu'on a du mal à y croire, surtout à quel point c'est facile. On souffle par contre dans l'oreille que certaines debian ne seraient pas concerné, il faut une version suffisamment récente pour que ça se produise :-)

Ces petites news vous ont mis en bouche ? Ok, il ne reste plus qu'à passer à la partie développement alors.

D'ailleurs, pour ceux qui font du java, vous connaissez Guice ? C'est un système d'injection de dépendance vraiment bien foutu, développé par Google. De mon côté ça a complètement changé mon point de vue sur Java. J'ai enfin pu faire du java qui soit agréable avec ça et je conseil à tous ceux qui font du java d'aller voir d'un peu plus près.

Quoi qu'il en soit, je ne suis pas le seul à penser ça. Et on peut le voir par exemple dans Sitebricks :: A Web platform. Il s'agit d'un petit framework web java, utilisant massivement Guice. Je ne l'ai pas encore testé mais ça ne saurait tarder, ça me tente vraiment bien. Ha oui, l'auteur était développeur Google Wave, mainteneur Guice. Pour lui des outils comme GWT mais aussi closure sont overengineered et il a voulu faire quelque chose de plus simple.

Histoire de rester dans le web, quelques petits liens en vrac :

Voici dans un autre registre une comparaison visuelle de C++, Ruby et CoffeeScript. Intéressant, mais peut-on réellement comparer des langages aussi différents et donc les objectifs (notamment d'abstraction) sont plutôt éloignés ?

Pour continuer, voici une présentation pour le moins intéressante : Devops is a verb its all about feedback

Si vous pensiez vous ennuyer les jours qui arrivent, j'ai ce qu'il vous faut. Rien de moins qu'une petite revue du code source de Doom3 ! Mine de rien un sacré travail de réalisé. Ce gars est un peu un malade je crois. Pour ma part je ne l'ai pas encore lu. Par contre je suis convaincu que c'est entre autre en lisant ou étudiant les codes d'autres personnes qu'on peut s'améliorer. C'est loin d'être négligeable, alors un titre pareil.

Ha oui, et il y a aussi twitter qui vient de libérer zipkin. Si j'ai bien compris c'est utilisé pour tracer une application dans un contexte distribué. Et il est vrai que nous en avons de plus en plus. Tous ceux qui bossent avec de multiples machines, de multiples services, savent combien il est difficile de savoir précisément ce qui se passe entre l'arrivée du requête et sa réponse. Comment visualiser ceci et pouvoir agir ensuite ? C'est un peu le but de cet outil. Et c'est construit à partir du papier de Google Research sur le sujet, Dapper.

Et pour finir ce petit épisode, un peu de lol !

PairHero: A game of collaboration for pair programming Vous trouviez le pair programming ennuyant ? Ce petite plugin Eclipse est fait pour vous alors !

J'aimerais vraiment bien mettre en place ce qui suit. Si les gens le prennent bien il y a vraiment moyen de rigoler. D'ailleurs, certains d'entre vous ont-ils déjà mis en place lolcommits ?