Lobe de Microsoft – Le deep learning pour tous

Si vous vous intéressez au deep learning et à l’intelligence artificielle, mais que tous les outils qui permettent de l’expérimenter vous font peur, car trop complexe, j’ai ce qu’il vous faut.

Cela s’appelle Lobe et c’est un logiciel mis au point par Microsoft qui vous permet de créer des jeux de données à partir de photos ou d’images. Ainsi vous pouvez entraîner votre propre intelligence artificielle (abus de langage, je sais) en important une série de photos et en les classifiant manuellement.

Ensuite, Lobe compile les résultats et génère un modèle que vous pouvez exporter au format CoreML, TensorFlow ou via une API locale qui reconnaîtra ce pourquoi vous l’avez entraîné.

Pour ma part, j’ai testé en lui faisant reconnaître des chasseurs, des promeneurs ou de cyclistes et il ne s’est pas trompé sauf à de rares exceptions ^^ :

L’outil est capable de « distinguer » toutes les subtilités de vos photos, que ce soit des feuilles de plantes, des émotions, des positions, des couleurs, des animaux, du matériel, des étoiles, des types de végétations sur des photos satellites…etc. De quoi vous amuser !

C’est très amusant, hyper bien fait et ludique et c’est une bonne approche pour se familiariser avec les principes du deep learning. Je vous invite vraiment à tester cette application.

À télécharger d’urgence ici.


PROMO Western Digital Disque dur externe 2 TB USB 3.0

-17 % de réduction

Compatibilité USB 3.0 et USB 2.0. Température de fonctionnement: 41 ° F à 95 ° F
Taux de transfert rapides
Améliorez la performance de votre PC en libérant de l’espace sur votre ordinateur
Capacité massive dans un boîtier compact
La qualité WD dedans et dehors
Formaté pour Windows. Reformatage possible pour les systèmes d’exploitation Mac ou autres

Voir la promo


Twitter Blockchain

Si vous fréquentez un peu les bas-fonds de Twitter (alias les « Tendances ») vous savez qu’en ce moment, c’est un peu compliqué. Entre les intégristes, les racistes, les abrutis, les politiques, les bébés Ligue du LOL et autres membres de sectes de clubs de sport, c’est un peu compliqué pour des Bisounours comme moi de surfer avec style sur cette mer tumultueuse.

Heureusement, voici une arme de destruction massive de tocards pour tous ceux qui veulent rester zen intérieurement. Je vous avais déjà parlé de Bodyguard qui permet d’éliminer les abrutis sur YouTube, Twitter, Instagram ou encore Twitch ou encore de BlockTogether qui permettait de mutualiser ses listes de trous d’cul, ce qui d’ailleurs avait déclenché un petit mouvement de révolte de la part des petites personnes que j’ai bloqué. Le service BlockTogether est maintenant fermé malheureusement.

Et bien là, avec l’extension Chrome Twitter Block Chain, vous allez pouvoir bloquer de manière préventive des sphères entières de personnes peu recommandables. En gros le principe est simple : Si un gros boulet vous retweet ou vous met en avant pour vous donner en pâture à sa communautaire de sous-gros-boulets qui le vénèrent, vous pouvez grâce à cette extension pratiquer un blocage de masse préventif des comptes Twitter de gens qui suivent ce gros boulet. Ou des gens que ce gros boulet suit. À vous de voir. J’essaye d’être le plus clair possible, mais le mieux c’est encore de l’essayer.

Ainsi, vous bloquerez des bulles entières de gens peu fréquentables, en faisant évidemment des victimes collatérales de gens sympas qui suivent des gens pas sympas, mais bon que voulez-vous, c’est la vie et votre santé mentale n’a pas de prix. Je recommande d’ailleurs à Majin-Macron de l’installer pour tranquilliser un peu ses mentions Twitter.

À découvrir ici pour Chrome.


PROMO Western Digital Disque dur externe 2 TB USB 3.0

-17 % de réduction

Compatibilité USB 3.0 et USB 2.0. Température de fonctionnement: 41 ° F à 95 ° F
Taux de transfert rapides
Améliorez la performance de votre PC en libérant de l’espace sur votre ordinateur
Capacité massive dans un boîtier compact
La qualité WD dedans et dehors
Formaté pour Windows. Reformatage possible pour les systèmes d’exploitation Mac ou autres

Voir la promo


Emmet – Pour les développeurs web qui veulent coder plus rapidement

Emmet est un moteur d’autocomplétion intégré à Visual Studio Code, Vim, Oxygen Editor et bien d’autres qui permet d’accélérer votre production de code grâce à une syntaxe raccourcie.

Emmet permet d’écrire du CSS, du HTML et du XSL à l’aide d’une syntaxe simplifiée. Je ne vais pas tout vous décrire, mais vous donner simplement quelques exemples pour vous donner envie de vous y mettre, que vous soyez développeur aguerri ou simplement pisseur de code du dimanche.

Emmet est disponible sur de nombreux éditeurs nativement, mais également sous la forme de plugin tiers pour Sublime Text, Atom, Coda, Eclipse, Notepad++, Brackets, Dreamweaver et j’en passe.

Emmet est optimisé pour le HTML et CSS, mais il peut également être utilisé pour d’autres langages.

La syntaxe générale

Vous pouvez effectuer des associations d’opérateurs comme +, ^, >, ( ), *, $…etc pour structurer votre code HTML.

Par exemple avec le > comme ceci nav>ul>li, ça va donner le code suivant avec les tags HTML imbriqués:

<nav> 
      <ul>
         <li></li>
      </ul>
</nav>

Le symbole plus va simplement mettre à la suite ces tags. Donc ceci div+p+bq va donner cela :

<div></div>
<p></p>
<blockquote></blockquote>

Le symbole ^ permet de sortir un élément html de votre syntaxe pour le position plus bas. Donc vous pouvez cumuler les ^ pour le décaler en n+1.

Par exemple, ceci est une combinaison de +, de > et le symbole ^ permet de sortir le blockquote du <p> : div+div>p>span+em^bq

<div></div>
<div>
      <p><span></span><em></em></p>
      <blockquote></blockquote>
</div>

et si je double le ^^, je descend le blockquote d’une arbo en plus. : div+div>p>span+em^^bq

<div></div>
<div>
      <p><span></span><em></em></p>
</div>
<blockquote></blockquote>

Ensuite, on peut grouper les éléments avec des parenthèses comme ceci :

div>(header>ul>li*2>a)+footer>p

<div>
      <header>
        <ul>
          <li><a href=""></a></li>
          <li><a href=""></a></li>
        </ul>
      </header>
      <footer>
         <p></p>
      </footer>
</div>

Vous l’aurez compris, le symbole * permet de multiplier les éléments comme ci dessus avec la balise <a href….etc.

Évidemment, si vous avez envie de multiplier les éléments avec un *, vous voulez peut être aussi nommé leurs classes de manière uniquement. Donc pour cela, vous pouvez utiliser le symbole $ qui va rajouter un chiffre derrière le nom de votre élément, ici « sample ».

ul>li.sample$*5

<ul>
   <li class="sample1"></li>
   <li class="sample2"></li>
   <li class="sample3"></li>
   <li class="sample4"></li>
   <li class="sample5"></li>
</ul>

Pour la génération de classes et d’IDs vous pouvez utiliser la syntaxe suivante à base de . et de #

#header

<div id="header"></div>

.title

<div class="title"></div>

form#search.wide

<form id="search" class="wide"></ form>

p.class1.class2.class3

<p class="class1 class2 class3"></p>

Les accolades { } permettent également de placer du texte dans vos balises. Exemple : p>{Cliquez }+a{ici}+{ pour continuer}

<p>Cliquez <a href="">ici</a> pour continuer</p>

Le HTML

Bon, après il y a beaucoup d’abréviations possibles, mais voici les plus courantes.

Il est possible de générer les entêtes propres au doctype sur lequel vous voulez travailler. Par exemple, pour avoir un document html 5, entrez simplement un point d’exclamation ou le texte html:5, ce qui vous générera toute la structure html.

Si vous voulez du html 4 transitional, ce sera html:4t. Si vous voulez du xhtml 1.0 strict, ce sera html:xs…etc…etc

Ensuite pour le code HTML en lui-même, si vous tapez un a, ça va vous placer directement un <a href= » »></a>. Et si vous mettez un a:mail, ça va vous faire un <a href= »mailto: »></a>. C’est pour l’exemple.

script, img, hr, meta, input, source…etc, tout y passe. Je ne vais pas rentrer plus dans le détail, mais sachez que vous pouvez associer ces abréviations à la syntaxe décrite plus haut.

Le CSS

Pour le CSS, même esprit. Si vous tapez simplement pos:r ça générera la propriété css position:relative. Après on a « v » pour visibility, « ov » pour overflow, « rsz » pour resize, « m » pour margin, « p » pour padding, « f » pour font…etc. Et donc chacun de ces éléments peut être complété pour afficher une classe CSS complète donc par exemple, si je tape « mb:a« , ça va m’écrire : margin-bottom:auto;

Le XSL

Pour ceux qui font du XSL, c’est pareil. Vous avez des abréviations comme « imp » qui va générer le code d’import : <xsl:import href= » » />

Ou « par » qui va générer ceci : <xsl:param name= » »></xsl:param>

Le Cheat Sheet

Toute cette syntaxe est décrite complètement dans le memento que vous trouverez ici au format HTML (et PDF si vous le souhaitez).

Et pour ceux qui s’intéressent aux éditeurs de code, j’ai fait un super article sur tous ces outils ici : Éditeurs de code et de texte : la liste ultime (85+)


PROMO Western Digital Disque dur externe 2 TB USB 3.0

-17 % de réduction

Compatibilité USB 3.0 et USB 2.0. Température de fonctionnement: 41 ° F à 95 ° F
Taux de transfert rapides
Améliorez la performance de votre PC en libérant de l’espace sur votre ordinateur
Capacité massive dans un boîtier compact
La qualité WD dedans et dehors
Formaté pour Windows. Reformatage possible pour les systèmes d’exploitation Mac ou autres

Voir la promo


Comment recruter un bon développeur ?

Que ce soit une startup ou un grand groupe, en ce moment c’est une vraie galère pour recruter des développeurs. Peu sont disponibles et malheureusement, tous ne sont pas forcément à la hauteur. D’après ce sondage réalisé auprès de 90 000 développeurs, il n’y aurait dans le monde que 6,4 % de développeurs à la recherche d’un job. C’est encore plus rare que d’apercevoir une licorne dites donc. Et les besoins en développeurs des entreprises augmentent chaque année.

C’est la pénurie, que voulez-vous, mais la bonne nouvelle c’est que la plupart des développeurs restent à l’écoute du marché (73% d’après cette étude) et sont près à changer de boite si une opportunité intéressante s’offre à eux. Et par opportunité, je veux dire d’abord la possibilité d’un meilleur accomplissement professionnel, un meilleur salaire et des projets plus passionnants.

Toutefois, un mauvais casting lors d’un recrutement peut ralentir votre projet, voire planter votre startup dans les cas les plus dramatiques. Heureusement, il existe des leviers que vous pouvez activer en tant que recruteur pour mettre toutes les chances de votre côté et recruter le bon profil de développeur.

Par quel biais recruter ?

Pour recruter, vous n’avez pas 50 options. Vous pouvez tout d’abord chercher dans votre cercle premier, en mettant une annonce sur votre site, en la diffusant via les réseaux sociaux et en en parlant autour de vous, notamment auprès de vos meilleurs développeurs en poste pour savoir s’ils n’ont pas un ami aussi compétent qu’eux. C’est ce qu’on appelle le recrutement passif… vous lancez une ligne et vous attendez que ça morde.

Vous pouvez également faire du recrutement actif. C’est-à-dire poster votre annonce sur des sites de recrutement. Préférez les sites spécialisés et évitez les sites trop généralistes.

J’ai déjà recruté sur des sites généralistes et il y a beaucoup de gens qui se perdent et qui postulent à des offres qui ne leur sont pas du tout destinées. Si vous cherchez un développeur, c’est mieux d’opter pour un site qui propose uniquement des métiers du numérique comme sur mon espace emploi.

Linkedin est également une bonne source de candidats potentiels. Cherchez les gens par spécialité, en regardant ce qu’ils partagent, en vous baladant dans les hashtags ou en zonant sur les pages entreprises pour ceux qui veulent débaucher.

Vous pouvez aussi faire appel à un chasseur de têtes si vous en connaissez un bon.

Le suivi du recrutement

Le recrutement ça demande du temps, vous allez échanger avec beaucoup de candidats et vous risquez de vous mélanger les pinceaux donc prenez le temps de réaliser un petit tableau Excel, ou un petit CRM pour suivre chaque candidature comme il se doit et éviter les boulettes de recrutement.

Que mettre dans votre annonce ?

Travaillez votre marque employeur en amont

Avant de rédiger une annonce, veillez à travailler en premier lieu votre marque employeur. En anglais, on dit aussi « Employer Branding ». Il s’agit de donner envie aux potentiels candidats en montant à quel point c’est super de bosser pour vous. Oubliez le billard et le café gratuit, et mettez plutôt en avant les valeurs et la culture de votre entreprise. Évidemment, comme la plupart des développeurs déjà en postent bougent aussi pour la qualité des projets qu’on leur attribue, n’hésitez pas à mettre ceux-ci en avant.

Un autre truc qui peut apporter de la valeur à votre marque employeur, c’est d’embrasser l’open source et de mettre du code à disposition de tous. Tous les grands développeurs de ce monde adooooore contribuer à des projets open source et si vous les laisser faire dans le cadre de leur travail, ils seront les plus heureux. Un autre levier pour donner envie à un développeur de vous rejoindre, c’est la technologie. Donnez-lui accès à des technos nouvelles et innovantes, soit dans le cadre de son travail quotidien, soit dans un cadre de recherches et développement.

Évidemment, construire cette marque employeur ne sera pas suffisant et il faudra communiquer dessus et la faire connaître. Donc impliquez votre service communication et marketing pour répandre la bonne nouvelle au plus grand nombre des développeurs, histoire de les exciter un peu.

Soyez précis dans votre annonce

Donnez les langages utilisez dans votre entreprise, certains frameworks, les logiciels majeurs, certains protocoles innovants…etc. N’en dites pas trop non plus si ça devient sensible pour conserver une certaine sécurité et éviter d’en dire trop à un quelqu’un de mal intentionné. Mais essayez quand même de trouver le bon équilibre pour donner envie aux gens.

Mais au-delà des aspects techniques, expliquez clairement ce que vous attendez de votre recrue. Aura-t-elle des responsabilités, une équipe à gérer, sera-t-elle responsable des mises en prod, de l’architecture, de la conception d’une application ? Bref, tout ce qui a attrait à une charge de responsabilité et pas forcement aux petites tâches qui font partie de la vie des développeurs (comme le suivi des bugs, la doc ou les pull requests…etc.)

Dites aussi clairement si vous recrutez pour un nouveau projet où il y a tout à faire ou si vous cherchez à compléter une équipe déjà constituée autour d’un projet existant. Et si le projet a déjà un peu d’ancienneté, donnez un peu de détail dessus.

Tout cela vous permettra de filtrer les candidatures et vous fera ainsi gagner du temps.

Après pour la rédaction de l’annonce en elle-même, évitez les conneries comme la rock star, le ninja, le geek, le guru, le joueur en équipe…etc. Si vous voulez quelqu’un qui sache s’intégrer et participer au sein d’une équipe, dites plutôt que vous recherchez quelqu’un capable de prendre les développeurs moins expérimentés sous son aile, ou quelqu’un capable d’apprendre de ses pairs pour faire évoluer le projet.

Bref, soyez plus clair et plus précis plutôt que d’utiliser des termes marketing que tout le monde utilise dans ses offres de poste et qui ont perdu leur sens.

Faites gaffe aussi à ne pas demander 10 ans d’expérience sur une technologie qui n’existe que depuis 3 ans. On voit ça trop souvent et ça montre tout simplement que l’offre est rédigée par-dessus la jambe.

Globalement, quand un développeur va lire votre annonce,

  • 1/ Est-ce que cette société et l’équipe que je vais rejoindre auront de la reconnaissance et du respect pour moi et mon travail.
  • 2/ Est-ce que je vais apprendre de nouvelles choses et utiliser de nouvelles technologies ?
  • 3/ Est-ce que mon avis sera pris en compte et est-ce que mes collègues seront sympas et dans le même esprit que le mien ?

Donc tout simplement, est-ce que le cadre de travail sera sympa, est-ce que l’humain est pris en considération et est-ce qu’on pourra s’amuser avec les technologies ?

Le salaire viendra juste après tout cela.

Comment établir une première prise de contact

Donc là, ça y est, quelqu’un a postulé. Vous n’allez pas immédiatement le recevoir dans votre bureau, mais vous allez plutôt engager une première discussion, soit par mail, soit au téléphone. Cela va vous permettre dans un premier temps d’évaluer ses capacités en communication, de lui poser des questions plus précises sur son parcours, de clarifier éventuellement certains points de son CV ou de sa candidature, et bien sûr de lui demander ses prétentions salariales.

Vous pouvez également lui poser des questions comme :

  • « Donne-moi un exemple où tu as fait face à une situation stressante et où tes compétences ont été mises à rude épreuve ? »
  • « Donne-moi un exemple où tu t’es fixé un but nouveau et où tu as réussi à l’atteindre ? »
  • « Donner moi exemple où tu as su initier une émulation de groupe ou stimuler un collègue pour qu’il aille jusqu’au bout de son idée ? »

Demandez lui aussi quels sites web il consulte à titre pro et comment il s’y prend pour résoudre un nouveau problème.

Profitez-en aussi pour évaluer son niveau d’anglais. J’ai déjà vu des développeurs ne pas connaître l’anglais et donc être limités dans leurs recherches sur Internet.

Mettre en place une évaluation technique

Une option qui se fait beaucoup aujourd’hui, c’est l’évaluation technique des candidats. Il existe de nombreux services en lignes et outils qui proposent ce genre de choses : QCM pour les développeurs, logiciel d’évaluation algorithmique, production d’un bout de code…etc.

Cela peut avoir des avantages, mais également des inconvénients. Souvent les candidats n’aiment pas trop ça, et comme ça les gonfle, ils ne s’y mettent pas vraiment ou zappent votre offre d’emploi.

Si vous optez vraiment pour une évaluation technique, faites en sorte qu’elle soit courte.

Certaines boites proposent des évaluations trop longues, au-delà de 10h de test. Imaginez le délire ! Offrez plutôt au candidat de vous montrer ses réalisations passées, que ce soit du code personnel, des choses mises en production ou des contributions à l’open source.

Et peu importe ce que vous choisissez, faites toujours un retour au candidat, même vous ne retenez pas sa candidature, c’est la moindre des choses et cela lui permettra de s’améliorer.

Passer à l’entretien

Si tout colle, vous pouvez alors passer à l’entretien physique et faire plus ample connaissance… Faire parler le candidat de son parcours, de ce qu’il a aimé et moins aimé dans ses précédents jobs, des projets sur lesquels il a bossé, de ce qu’il aime le plus…etc.

L’idée de l’entretien, c’est vraiment d’approfondir ce que vous avez déjà vu ensemble pour éviter tout malentendu. Vous pouvez aussi à ce stade discuter plus en détail du salaire (négociation), mais également de ses demandes en matière d’environnement de travail (co-working, bureau réservé, fréquence de télétravail, horaires, aménagement spécifiques…etc.)

Et surtout ne vous arrêtez pas à l’absence de costume cravate. La plupart des développeurs ne savent même pas que cette tenue existe :-)))

Et voilà ! Enfin, pour conclure, si le candidat ne fait pas l’affaire, une fois encore prenez 5 minutes pour lui expliquer pourquoi vous n’irez pas plus loin avec lui. Ne le traumatisez pas non plus, mais soyez sincère, ça lui servira pour la suite.


PROMO Western Digital Disque dur externe 2 TB USB 3.0

-17 % de réduction

Compatibilité USB 3.0 et USB 2.0. Température de fonctionnement: 41 ° F à 95 ° F
Taux de transfert rapides
Améliorez la performance de votre PC en libérant de l’espace sur votre ordinateur
Capacité massive dans un boîtier compact
La qualité WD dedans et dehors
Formaté pour Windows. Reformatage possible pour les systèmes d’exploitation Mac ou autres

Voir la promo


Privatezilla – Vérifiez et nettoyez Windows 10 de ses trackers

Je ne compte plus le nombre d’outils permettant de nettoyer Windows 10 de tous ses bloatware et autres trackers impropres à la préservation de vie privée. Un petit dernier arrivé, c’est Privatezilla connu anciennement sous le nom de SpyDish.

Utilisant une partie du code de Chemo et de Windows10Debloater, Privatezilla permet de scanner votre Windows 10 pour vous informer des paramètres encore actifs exploitant votre vie privée ou des logiciels préinstallés que Microsoft prend un malin plaisir à incruster dans son OS.

Une fois l’analyse terminée, en cochant les cases proposées par Privatezilla vous pourrez activer ou désactiver ces options, y compris Cortana ou également retirer des permissions aux applications.

Et voilà, un petit Windows plus clean !


PROMO Western Digital Disque dur externe 2 TB USB 3.0

-17 % de réduction

Compatibilité USB 3.0 et USB 2.0. Température de fonctionnement: 41 ° F à 95 ° F
Taux de transfert rapides
Améliorez la performance de votre PC en libérant de l’espace sur votre ordinateur
Capacité massive dans un boîtier compact
La qualité WD dedans et dehors
Formaté pour Windows. Reformatage possible pour les systèmes d’exploitation Mac ou autres

Voir la promo