Sweetohm

Michel Casabianca

Go Booby Traps 7

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 7

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Go Booby Traps 6

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 6

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Go Booby Traps 5

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 5

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Go Generics

Generics are the most important new feature of the 1.18 version of Go that was just released. I offer you a quick tour of this new feature in this article.

Les Génériques en Go

La version 1.18 du Go vient de paraître et les Génériques en sont la fonctionnalité la plus importante. Je vous propose d’en faire un tour rapide dans cet article.

Go Booby Traps

I have started a series of articles about Go booby traps.

Test des API REST en Go

De nos jours, aucun développeur sérieux ne songerait à releaser une API non testée. Mais l’écriture de tests pour une API REST est souvent longue et pénible. Nous allons voir dans cet article comment écrire de tels tests sans douleur.

Testing Go REST API

Nowadays, no developer would dare to release an API without tests. But writing API tests is time consuming and painful. We will see in this article how we can do so without pain.

Go Booby Traps 4

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 4

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Go Booby Traps 3

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 3

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Les valeurs de retour nommées en Go

Il est possible de nommer les valeurs de retour d’une fonction Go, mais est-ce une bonne idée ?

Go Booby Traps 2

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go 2

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

Go Booby Traps 1

Go programming language is easy to learn, but there are some tricky traps. This article series is trying to show these booby traps so that you avoid them.

Les Pièges du Go

J’ai commencé une série d’articles sur les pièges du langage de programmation Go.

Les Pièges du Go 1

Le langage de programmation Go a la réputation d’être simple à apprendre. Cependant, il recèle quelques pièges qui peuvent être difficiles à détecter pour un novice. Cette série d’articles propose d’en désamorcer quelques uns.

VSCode et les Tags de Build Go

Vous avez certainement remarqué que VSCode ne parse pas vos fichiers source Go s’ils comportent des tags de build. Voici comment y remédier.

Erreur pq: unexpected Parse response 'C'

J’ai eu du mal à trouver l’explication de l’erreur Erreur pq: unexpected Parse response 'C' se produisant avec le driver PostgreSQL pour Go, donc voici ici une brève description de sa cause et de la manière d’y remédier.

Commande dotrun

J’ai lancé un nouveau projet Github pour un outil qui permet d’exécuter une commande dans un environnement défini dans un fichier dotenv.

Dotrun

Dotrun est un outil qui permet d’exécuter une commande dans un environnement chargé d’un fichier dotenv.

Draft sur la Gestion des Erreurs en Go

Suite à mes derniers postes sur la gestion des erreurs en Go (184 et 185), j’ai été jeter un coup d’œil au draft d’une proposition d’amélioration de la gestion des erreurs en Go.

Templates de code VScode

Mon dernier poste pointait un problème du langage de programmation Go : la nécessité d’écrire du code très redondant pour la gestion des erreurs. Je me suis donc posé la question de la résolution de ce problème et voici ma solution.

Clavier Golang

Touche du clavier la plus utile pour les développeurs Go :

Go a une nouvelle identité visuelle

Le Blog Go annonce une nouvelle identité visuelle pour Go.

Build

Sur Github: https://github.com/c4s4/build

Ce projet contient mes build files parent pour NeON.

CheeseShop

Sur Github: https://github.com/c4s4/cheeseshop

CheeseShop est un repository de packages Python, soit une version locale du célèbre http://pypi.python.org. Ceci est utile pour les utilisateurs en entreprise qui ont besoin de partager des bibliothèques Python privées entre développeurs.

Md2pdf

Sur Github: https://github.com/c4s4/md2pdf

Md2Pdf est un outil pour convertir des documents Markdown en PDF, sans passer par LaTeX.

Sweetohm

Sur Github: https://github.com/c4s4/continuum

Ce projet constient les sources de mon site web. Il est généré à partir de sources au format Markdown avec le générateur de site statique Hugo. Le site est responsive grâce à la bibliothèque HTML, CSS et JS Bootstrap.

Continuum

Sur Github: https://github.com/c4s4/continuum

Continuum est un outil d’intégration continue léger: pas d’interface web, pas de planificateur. Il s’exécute sur la ligne de commande et est déclenché par cron.

Goactivate

Sur Github: https://github.com/c4s4/goactivate

Script pour définir le PATH, GOPATH et l’invite du shell pour votre projet Go.

Introduction to YAML

This article is an introduction to YAML, a language to write structured data, as XML would for example, but in a more natural and less verbose way. We will see a description of the YAML syntax as well as examples in Java, Python and Go.

API Go pour YAML

Mon Introduction à YAML a un certain succès (c’est ma page la plus consultée). J’y ai ajouté une section pour le langage de programmation Go, avec la présentation de la bibliothèque GoYAML.

Un éditeur en Go

Micro est un éditeur en mode texte écrit en Go.

Passer un test Go sous Travis

Voici comment passer un test Go sous Travis.

IDE Gogland

Jetbrains met à disposition une version béta de son environnement de développement Go.

Commande single

Lors de mes derniers développements, j’ai eu besoin de garantir que deux publications ne pouvaient être lancées simultanément sur la chaîne des ouvrages Dalloz.

Go dans la top 10 Tiobe

Le langage de programmation Go est passé dans le top 10 des langages de programmation du classement Tiobe. Ce classement reflète la popularité des langages de programmation.

Grumpy

Grumpy est un projet Google qui permet de compiler des sources Python en Go. Si je ne m’attends pas à des miracles de performances, je crois que c’est une piste intéressante pour faciliter la distribution de scripts Python car il n’est plus nécessaire d’installer une VM…

Shebang pour Go

Il est possible d’exécuter un fichier source Go sans le compiler, avec le shebang suivant, à placer à la première ligne du source :

//usr/bin/env go run $0 "$@" ; exit

Couverture de Code

Entendu dans l’excellent podcast Talk Python to Me :

Un moyen d'augmenter la couverture
de test est de détruire du code.

Liste des interfaces du GO mise à jour pour la release 1.5

J’ai mis à jour ma liste des interfaces du GO pour la dernière release, à l’adresse https://sweetohm.net/article/go-interfaces.html.

Parsers YAML en GO

J’ai mis à jour mon article sur les parsers YAML en GO, en ajoutant le nouveau venu SimpleYAML.

Babel

Babel est une boîte à outils permettant de gérer vos langages de programmation favoris.

Let it GO!

Tout y est dit en chanson !

GO Interfaces

Ce projet est sur Github.

Ce programme liste toutes les interfaces publiques du GO. Pour le lancer, taper la commande suivante :

go run gointerfaces.go <versions>

La liste des interfaces de GO

Cette entrée de mon blog a été transformée en article et se trouve à l’adresse : https://sweetohm.net/article/go-interfaces.html.

Les interfaces du Go

En assistant à la dotGo, où le buzzword était clairement l’interface, je me suis demandé où l’on pouvait se procurer la liste de toutes les interfaces définies dans le langage. J’ai cherché et n’ai trouvé cette information nulle part.

Je me suis donc décidé à écrire un petit programme qui :

  • Télécharge le tarball des sources d’une version donnée.
  • Parse les fichiers sources pour en extraire les interfaces ainsi que le numéro de ligne où elles sont définies.
  • Affiche sur la console la liste de ces interfaces sous la forme d’un tableau markdown.

List of all Go Interfaces

While attending dotGo, where the buzzword was clearly the interface, I was wondering where I could find a list of all interfaces defined in the GO language. I found nowhere.

Thus I decided to write a little GO program that would;

  • Downloads the GO source tarball for a given version.
  • Parses source files to extract the interface names and line number where they are defined.
  • Write this list on the console in the markdown format.

Workshop dotGo 2014

Samedi matin, j’ai participé à un atelier qui faisait suite à la dotGo 2014, animé par Jeremy Saenz sur le thème Building Web Apps with the CodeGangsta. La connexion internet était dans les choux et il était donc compliqué de déployer sur Heroku.

dotGo 2014

Le 10 octobre était le jour des Gophers d’Europe qui se sont réunis pour la dotGo 2014, la première conférence Go d’Europe, et j’y étais !

Devdays 2014

Mardi se tenaient les Devdays 2014, le rendez-vous annuel des développeurs Orange. Avec l’équipe, nous y avons présenté un retour d’expérience sur notre projet Go.

Un panorama des parseurs YAML en Go

Je me propose de réaliser dans cet article un panorama des parseurs YAML en Go. Pour chacun d’entre eux, je fournis une brève description, une évaluation et un exemple de code.

A tour of YAML parsers for Go

Here is a list of YAML parsers for Go programming language. For each one, I will provide a short description, an evaluation and an example source code.

Go Go!

C’est un grand jour pour le Go chez MBS. Après trois semaines d’étude, nous avons réalisé :

  • Un prototype en Go.
  • La même application en Java.
  • Des benchmarks des deux versions.

La décision est tombée la semaine dernière : nous partons sur la solution en Go. Les développements commencent donc cette semaine.

Introduction à YAML

Cet article est une introduction à YAML, un langage permettant de représenter des données structurées, comme le ferait XML par exemple, mais de manière plus naturelle et moins verbeuse. On y verra une description de la syntaxe de YAML ainsi que des exemples en Java, Python et Go.