Concours « jeu de mots » et cadeaux pour Noël

Posté par (page perso) . Édité par Davy Defaud, BAud, ZeroHeure et Jehan. Modéré par Pierre Jarillon. Licence CC by-sa
12
19
déc.
2016
LinuxFr.org

LinuxFr.org organise un grand concours de fin d’année pour tous les codeurs fous avec des cadeaux pour Noël.

La fin d’année est une période calme pour la plupart d’entre nous, animée par l’esprit de fête et propice à la détente. Dans ce cadre idyllique, LinuxFr.org lance le concours des jeux de mots . Chacun choisit ses armes — son langage de programmation — et use et abuse des notations et syntaxes pour notre plus grande joie.

Fais bouillir ton cerveau. Allez, c’est parti !   ᕕ(ᐛ)ᕗ

Les deux filles _nerds_ ouvrent le concours sur les jeux de mots à tous les langages de programmation

Journal Ma domotique avec le Système Angharad, 3e génération

Posté par . Licence CC by-sa
36
28
sept.
2016

Préambule

Il y a quelques deux ans de ca, j'ai parlé de mon système domotique maison à base d'API REST et de client Web avec plein de JQuery dedans.
Depuis, j'ai continué ce projet avec entrain, et il en est maintenant dans sa 3e génération: Angharad sur Github

Pourquoi 3e génération et pas version 3.0 ? Parce que au début c'était pas mal un serveur autonome, mais avec le temps c'est devenu un d'ensemble de logiciels qui forment un écosystème et (...)

Journal Ulfius: framework pour faire des API Web en C

Posté par . Licence CC by-sa
33
1
juin
2016

TL;DR

Ulfius est un framework pour développer des webservices et des API REST en C facilement et rapidement.

Intro

Ca fait quelques mois que je travaille sur ce projet, et il a atteint une certaine maturité pour avoir envie d'en parler plus largement en espérant lui donner un nouvel élan.

Il y a quelques temps, je parlais ici de mon projet de serveur domotique à base d'API REST en C. Depuis, je continue à le faire évoluer tranquillement, et (...)

Journal int *(*(*foo[])(int))(float*);

70
13
sept.
2014

Salut,

J'ai profité de mes vacances pour rédiger un petit article sur la lecture des déclarations complexes (dans le sens "obscures") en C. Ces "monstres" comme celui du titre, ne sont pas forcément fréquents, mais il peut-être utile de savoir les lire et de manière symétrique de pouvoir les construire.

Un petit rappel des déclarations est proposé autour de quelques éléments clés :

  • déclaration vs définition,
  • décomposition d'une déclaration : storage class, type qualifier, type specifier, declarator
  • les opérateurs (...)

Journal Quelques langages de programmation pour GNOME

Posté par (page perso) . Licence CC by-sa
28
14
déc.
2013

C, Python, Vala, C++, C#, JavaScript, Java, Perl, GOB, Genie et sûrement d'autres. Autant de langages possibles pour écrire une application pour GNOME. Voyons voir ce que le C, Python et Vala ont dans le ventre !

Le langage C

Le langage C peut être vu comme un langage assez primitif. Mais c'est sans compter les nombreuses bibliothèques de GNOME : GObject, GLib, GTK+, et bien d'autres (écrites elles-mêmes en C).

GObject, le cœur de GNOME, offre un (...)

Journal PyAlsaCap : Python, pointeurs, et cartes sons…

44
14
mar.
2013

Sommaire

Pour fêter le retour de DLFP après cette trop longue vacance, voici un petit journal pythonesque, mais pas seulement !

Dans mon dernier journal, nous avions joué avec l'introspection Python et l'export de fonction sur D-Bus. Pour ce faire, nous avions généré du Python avec Python !

Cette fois-ci, (...)

C11 n'est pas encore mort

Posté par . Édité par Bruno Michel, baud123, Nÿco, Benoît Sibaud et Xavier Claude. Modéré par Nÿco.
59
26
déc.
2011
C et C++

La dernière norme du langage C a été publiée le 8 décembre 2011, la pré-version finale étant accepté le 10 octobre, peu avant le décès du regretté Denis Ritchie à l'origine du langage.

C11 intègre principalement la gestion du multithreading et rend optionnelles certaines fonctionnalités afin de faciliter la conformité des compilateurs vis-à-vis de la norme. La précédente norme C99 a eu beaucoup de mal à s'imposer auprès de certains éditeurs, certains refusant même de l'implémenter (notamment un vendeur d'environnement Basic, situé à Redmond).

Sundown, Houdini et Crustache

Posté par (page perso) . Modéré par Florent Zara. Licence CC by-sa
22
2
sept.
2011
C et C++

Vicent Martí, aka tanoku, est un des développeurs de github qui aime bien coder en C. Ce n'est donc pas très étonnant de trouver sur son compte github des bibliothèques en C pouvant servir au développement d'applications web. Je souhaite en particulier vous évoquer de trois bibliothèques sous licence ISC :

Crustache est une implémentation en C de Mustache, un moteur de templating. Des bindings pour Ruby sont également disponibles dans le dépôt git.

Houdini permet d'échapper des chaînes de caractères en UTF-8 pour le web. Et de faire l'inverse. Les trois types d'échappement sont :

  • convertir &, ", ', <, > et / en leur entité HTML correspondante (conformément à la recommandation de l'OWASP) ;
  • échappement des URI respectant la RFC ;
  • et échappement des URL (la différence avec l'échappement des URI est le remplacement des espaces par des +).

Et enfin, Sundown est un fork de libupskirt. Il permet de convertir du texte en Markdown vers du HTML. Nous utilisons Redcarpet, les bindings Ruby autour de Sundown, pour LinuxFr.org du fait de ses performances et de ses nombreuses options.

Coccigrep, un grep sémantique pour le langage C basé sur Coccinelle

Posté par (page perso) . Modéré par patrick_g. Licence CC by-sa
45
2
sept.
2011
C et C++

Lorsque l'on travaille sur un projet C comportant un certain nombre de fichiers et de lignes de code, il arrive fréquemment que l'on se pose des questions comme "Mais où est modifié le champ data de ma structure Packet ?". grep ne suffit pas pour répondre à ce genre de questions car ne comprenant pas C, il ne sait pas, par exemple, que la variable monbopkt est une structure Packet.

coccigrep, basé sur coccinelle qui est un outil très puissant de recherche et de modification automatique de code, est un logiciel libre chargé de répondre à ce genre de questions. Il vient d'être publié en version 1.0rc1, sous licence GPL v3. Il est écrit en Python et s'interface avec les éditeurs Vim et Emacs, ce qui permet de faire les recherches depuis l'éditeur.