Journal Moi, expert C++, j'abandonne le C++

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
86
3
juin
2019
Ce journal a été promu en dépêche : Moi, expert C++, j’abandonne le C++.

Je profite de cette anecdote pour rédiger un long journal afin de partager mon expérience et mon apprentissage en espérant t’apprendre de nouveaux points de vue.

Peut-être cela vaut le coup d'en faire une dépêche… Dis-le moi dans les commentaires. 😉

Ma passion C++11, C++14, C++17…

Ma carrière professionnelle de développeur C a débuté en 1994 et j’ai naturellement adopté avec enthousiasme le C++ en 1999.
J’étais un développeur C++ heureux et j'avais considéré la nouvelle version du standard C++11 (…)

Atom 1.0.x : l'autre éditeur de code

51
17
août
2015
Bureautique

Profitons de la torpeur estivale pour présenter Atom, un éditeur de code source multi plates-formes développé par GitHub et que nous n'avons pas encore eu l'occasion de présenter ici même. Depuis plus d'un an en version bêta, il s'est vu gratifier il y a quelques semaines du numéro de version symbolique 1.0 par son éditeur (il est actuellement en 1.0.7).

NdM : ce logiciel Atom ne doit pas être confondu avec le format ouvert de syndication Atom, utilisé par LinuxFr.org par exemple.

Atom
Écrit en CoffeeScript sur la base de Chromium, il se repose sur un mécanisme d'extensions en Javascript sur la base de Node.js pour les fonctionnalités et de personnalisation par thèmes. Tout comme pour Vim ou Emacs, vous pouvez le transformer en un environnement de développement intégré (IDE) très puissant et unique taillé pour votre usage. Partagez-les en commentaires.

Journal Des applications graphiques stylées dans un terminal !

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
50
16
jan.
2015

Salut à tous !

Lecteur de ce site, je ne participe quasiment jamais.

Mais là quand même, fallait que je vous montre ça tellement je trouve ça classe !

https://github.com/yaronn/blessed-contrib

blessed-contrib : un module npm pour node.js / io.js permettant de créer des applications graphiques dans un terminal.
Le module est basé sur blessed, un autre module npm de type curses.

Entre autres fonctionnalités :

  • des graphiques
  • des histogrammes
  • des barres de progression
  • des cartes du monde !!!

Faudrait (…)

10er10 : un « Deezer » libre et performant

Posté par  . Modéré par Mouns. Licence CC By‑SA.
44
26
avr.
2011
Son

Qu’est‐ce que 10er10 ?

10er10 est un clone de Deezer libre, développé par Dready92. Il est 100 % Web 2.0, il tourne sous Node.js et utilise une base de données NoSQL, en l’occurrence CouchDB. Pour ce qui concerne la diffusion du son, 10er10 utilise la balise <audio> d'HTML5, donc vous pouvez dire au revoir à Internet Explorer 6 et autres navigateurs qui ne gèrent pas les dernières avancées d'HTML5.

À quoi ça ressemble ?

WebVim, une distribution Vim pour le dévelopment web

Posté par  (site web personnel) . Édité par Benoît Sibaud et Nils Ratusznik. Modéré par ZeroHeure. Licence CC By‑SA.
42
13
nov.
2015
Ligne de commande

WebVim est une distribution Vim qui vient avec un lot de greffons pré-configurés et optimisés pour le développement web et JavaScript/node.js.

Logo WebVim

WebVim offre par défaut quelques fonctionnalités sympas, dignes de certains IDE et éditeurs de code spécialisés :

  • coloration syntaxique ;
  • affichage des erreurs de syntaxes et de styles ;
  • auto-complétion ;
  • refactoring ;
  • curseurs multiples ;
  • formatage et alignement automatiques ;
  • prise en compte de conventions d'édition (editorconfig) ;
  • prise en charge de git ;
  • navigation dans les modules nodes.js ;
  • un mode hardcore (où par exemple la touche Esc et les flèches sont désactivées) ;
  • et tout ce que Vim fournit par défaut (par exemple la vérification orthographiques) !

WebVim utilise le gestionnaire de greffons vim-plug en arrière plan et un système de chargement et de configuration avancé.

CozyCloud, la mise en nuage personnelle et modulaire

Posté par  . Édité par Xavier Teyssier, Nÿco et Benoît Sibaud. Modéré par rootix. Licence CC By‑SA.
42
16
juil.
2013
Cloud

Vous vous souvenez peut-être de Cozycloud, évoqué ici-même en mai dernier, un outil permettant de mettre en place sont propre Cloud, tout comme Owncloud. À l'inverse de ce dernier, dont la conception est monolithique (tous les éléments et fonctions sont intégrées directement dans le code à télécharger), CozyCloud a choisi une approche modulaire.

Dans l'actualité récente de ce projet, il paraît important de mentionner que CozyCloud a été sélectionné par la fondation Mozilla pour le WebFWD, initiative de la fondation Mozilla déjà relatée sur Linuxfr.org.

Journal Our Shopping List : liste de courses partagée et libre

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
Étiquettes :
42
7
mai
2021

TL;DR; Par manque d'alternative à la solution privative de référence, j'ai initié un projet de liste de courses partagée en technos web, auto-hébergeable et utilisable facilement sur mobile : https://github.com/nanawel/our-shopping-list

L'introduction nécessaire

Nal,

J'utilise depuis déjà pas mal de de temps Bring pour gérer ma liste de courses avec ma moitié. Quoi de plus classique me direz-vous, c'est quand même la solution la plus évidente pour des utilisateurs d'Android.

Oui mais voilà, Bring c'était bien au début, quand ça faisait (…)

Node.js passe la sixième vitesse

Posté par  (site web personnel) . Édité par M5oul, Florent Zara, palm123 et Benoît Sibaud. Modéré par Florent Zara. Licence CC By‑SA.
37
12
mai
2016
JavaScript

Node.js est la principale implémentation du langage JavaScript côté serveur. Elle utilise V8, le moteur JavaScript de Google Chrome, et vient d’atteindre la version 6.0.0 le 26 avril 2016.

Logo Node.js

La montée de version de V8 vers la version 5.0 a d'ailleurs permis une meilleure prise en charge d'ES6, avec 93 % des fonctionnalités couvertes. Parmi les autres nouveautés, on trouve des performances accrues (notamment pour le chargement des modules), une meilleure stabilité et utilisabilité des API JavaScript (notamment Buffer et File System).

Peu de temps après la sortie de la version 6.0.0, des failles OpenSSL ont été annoncées, ce qui a conduit à la sortie d'une version 6.1.0.

Les technos web cools du moment

Posté par  (site web personnel) . Modéré par baud123.
33
24
fév.
2010
Internet
Dans le cadre de mon activité professionnelle, je fais de la veille autour des technologies web. Suite à un récent journal sur CouchDb, je me suis dit que les lecteurs de LinuxFr.org pourrait être intéressé par le sujet. J'ai donc regroupé un paquet de liens récents dans la seconde partie de cette dépêche. La plupart viennent du compte delicious qui me sert pour la veille. Les autres liens sont de l'auto-promotion vers des billets que j'ai écrit.

Sortie de Deno 1.0

Posté par  (site web personnel) . Édité par Davy Defaud, ted et Ysabeau 🧶 🧦. Modéré par ZeroHeure. Licence CC By‑SA.
Étiquettes :
31
15
mai
2020
JavaScript

Deno est un possible successeur à Node.js. Ryan Dahl, qui est l’auteur à l’origine de Node.js, a présenté lors d’une conférence il y a deux ans une liste de dix choses qu’il regrette à propos de Node.js. À partir de cette liste, il a voulu créer un nouveau moteur d’exécution de script qui tourne en dehors du navigateur mais qui en reprend les conventions. Le projet s’appelle Deno et il vient d’atteindre la version 1.0.

Logo de Deno

PEPS, nouvelle solution libre de messagerie et partage de fichiers

Posté par  . Édité par Nÿco, ZeroHeure et Benoît Sibaud. Modéré par ZeroHeure. Licence CC By‑SA.
31
18
fév.
2015
Internet

Une nouvelle solution de communication libre est née : PEPS ! PEPS est développé par la société française MLstate, sous licence AGPLv3. Ce n'est pas forcément un remplacement des serveurs IMAP existants mais cela se place plutôt sur le champ de solutions de communication qui incluent les fonctionnalités suivantes :

  • messagerie (compatible avec SMTP). Voir la capture d'écran
  • partage de fichiers et répertoires. Voir la capture d'écran
  • gestion des équipes
  • gestion du chiffrement côté client
  • soin particulier à l'ergonomie et l'expérience utilisateur
  • extensibilité via API REST
  • fonctions sociales, à commencer par un mur pour les utilisateurs. Voir la capture d'écran

Journal Réflexions à propos de NodeJS et de Javascript plus globalement

Posté par  (site web personnel) . Licence CC By‑SA.
30
18
avr.
2012

Bonjour,

cela fait quelques jours que je me pose la question suivante : « Est-ce que Node.js ne va pas devenir une technologie incontournable / majeur dans les 2 ans qui viennent ? »

Le contexte

Je suis un développeur Python depuis de nombreuses années. J'aime ses librairies, j'aime ses outils, j'aime sa communauté.
J'aime tellement sa syntaxe que quand je vois la syntaxe d'autres langages, j'ai une réaction quelque peu épidermique à la lecture du code.
Avec le temps, l'habitude de la (…)

Cloud Foundry, la solution PaaS libre

Posté par  (site web personnel) . Modéré par Lucas Bonnet. Licence CC By‑SA.
29
22
avr.
2011
Ruby

VMWare a annoncé la sortie de Cloud Foundry, une solution libre de Platform-as-a-Service (PaaS). La PaaS permet de déployer des applications Web et gérer leur montée en charge, en abstrayant la gestion des serveurs, bases de données, runtimes des langages de programmation, serveurs applicatifs, etc.. VMWare va lancer une offre commerciale s’appuyant sur Cloud Foundry, mais vous pouvez aussi l’utiliser sur vos serveurs.

Cloud Foundry, sous licence Apache 2, est un ensemble de briques développées en Ruby : NATS, Cloud Controller, DEA, Router, Health Manager, etc., dont le fonctionnement est expliqué en seconde partie de cette dépêche.

En pratique, chaque serveur sera installé avec vcap, puis les applications sont déployées avec l’outil en ligne de commande « vmc » et peuvent utiliser les services mis à leur disposition. Actuellement, Cloud Foundry supporte Ruby on Rails, Sinatra, Node.js, Spring et Grails pour les applications, et MySQL, MongoDB, Redis et RabbitMQ pour les services.

Par exemple, déployer une application Rails se fait très simplement avec les commandes suivantes :

$ vmc target api.example.net   # Choisir que quel cloud on va déployer
$ vmc login                    # S'identifier auprès du Cloud Controller
$ vmc push                     # On demande à déployer l'application

Il faut ensuite répondre à quelques questions : quel est le nom de l’application ? Quelle est son URL ? Sur combien d’instances va-t-elle être déployée ? Quels services utilise-t-elle ? Puis, Clound Foundry va réserver les ressources, installer les gems nécessaires avec Bundler, lancer les services applicatifs puis mettre à jour sa table de routage. « vmc instances » permet également de modifier le nombre d’instances d’une application pour s’adapter à la charge qu’elle va avoir à traiter.

Au final, Cloud Foundry est une solution jeune (peu de frameworks et services disponibles pour le moment), mais VMWare semble prêt à respecter les règles du Logiciel Libre et prendre en compte les propositions d’améliorations des premiers utilisateurs.

Xen Orchestra, solution de gestion d'infrastructure Xen

Posté par  . Édité par Plam, Nÿco, BAud, Nils Ratusznik et palm123. Modéré par Nÿco. Licence CC By‑SA.
28
2
déc.
2014
Virtualisation

La sortie récente de la version 3.6 de Xen Orchestra (XO) est l'occasion de vous présenter cet outil de gestion de votre infrastructure Xen, qu'elle soit basée sur Xen+XAPI ou XenServer. Cette interface permet donc de créer des machines virtuelles, les migrer, déplacer à chaud, accéder à leurs consoles, etc. Le tout, depuis un navigateur web.

C'est Vates, une petite startup française, qui est derrière ce logiciel libre (AGPLv3).

XOA

Node.js passe en version 0.6.0 et arrive sous Windows

Posté par  (site web personnel) . Modéré par Nÿco. Licence CC By‑SA.
Étiquettes :
27
5
nov.
2011
JavaScript

Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d’entrées‐sorties, notamment réseau. En pratique, il se compose :

  • d’un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d’une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d’un ensemble de conventions : par exemple, les fonctions de retour indiquent toujours en premier paramètre si l’appel s’est bien passé, et dans le cas contraire, quelle a été l’erreur ;
  • et d’un exécutable, « node », pour lancer tout ça.

La version 0.6.0 est sortie aujourd’hui et apporte quelques nouveautés de taille (plus de détails en seconde partie) :

  • la prise en charge de Windows en utilisant les I/O Completion Ports (IOCP) ;
  • un répartiteur de charge entre plusieurs processus Node.js intégré ;
  • des moyens de communications entre des processus Node.js plus efficaces ;
  • des améliorations du débogueur en ligne de commande ;
  • des bindings pour la zlib ;
  • la mise à jour de V8, passant de la version 3.1 à la 3.6.

La prise en charge de Windows, sans dégrader les performances pour les UNIX, a pris plus longtemps que prévu. Cela a fortement retardé la sortie de cette version, mais Ryan Dahl, son créateur, souhaite sortir la prochaine version stable de Node.js (la v0.8.0) pour janvier 2012.