Header imageSkip to main content

Intersection économico-sécuritaire fort douloureuse

Ingénieur du domaine internet dès 1997, on m'a fait le coup de "l'enrôlement dans les services secrets" en 2001 (quelques mois avant septembre). On ne m'y reprendra pas une seconde fois. Hum, le "petit village suisse" informé du fait que je lisais "la nouvelle grille" d'Henri Laborit, mélé aux fantasmes de puissance en terme de communication horizontale d'internet aura probablement émoustillé plus d'un crétin parmis eux.

Je suis l'ancien directeur technique d'Urbanet, le fournisseur d'accès à internet pionnier de l'accès au net commercial (dès 1996) par le câble TV, vendu à Cablecom en 2001. Au début de cette emploi, le fabricant de modem-câble qui nous fournissait avait 3 clients utilisant leurs produits sur des réseaux ouverts au publique (et pas des campus universitaires, leur marché premier): nous en suisse romande, un en finlande et un assez gros au canada. Et c'est tout!

Regard retrospectif, avant le 11 septembre 2001, je lis deux papiers de technologie que je trouve intéressant en dilétante, un au sujet de la reconnaissance faciale par I.A., l'autre sur la reconstruction de session TCP/IP, deux technologies qui se vendront comme des petits pains juste après cet évenement. A noter que ce ne sont là que 2 "papers" sur 150 que j'avais sur mon disque dur à l'époque.

Read more…

Spiritualité

Elevé athée, je suis en premier devenu agnostique il y a déjà bien quelques années, à une époque où l'ambiance dans la société, les rues suisses (2002-2003) m'avait fait serrer dans les bras un arbre afin d'y trouver un peu de chaleur humaine. Au jour d'aujourd'hui je suis queqlue-peu séduit par une sorte de panthéisme de Spinoza.

J'ai récemment identifié les quatres points suivants qui à mon sens méritent d'être célebrer fréquemment, appelons-les les points V.C.P.L.

La Vie

On a les moyens au jour d'aujourd'hui pour sonder, observer notre galaxie et on remarque pour le moment que la vie est une chose plutôt rare dans l'univers. Cela la rend d'autant plus précieuse.

La Conscience

Peu d'animaux sur terre semble être conscient. L'homme en fait partie et qui plus est a une excellente maîtrise du langage. La prise de hauteur, la méta-cognition peut apporter une joie énorme.

Read more…

A 30 SLOC CLI native code sound file player

Here is a short, approximatively 30 SLOC OCaml code to play a soundfile through Jack or Pipewire. I like tidy, simple, straight to the point code and languages, minimizing the number of SLOC to achieve a given task, but still compiled to native code with a serious, highly bug-screening compilation process. Ocaml ideally fits the bill here, but a garbage collector based language does not makes things easy regarding real-time constraints. We use ocaml-bjack, which buffers sound I/O and we give half a second of buffering to shield us from the GC runtime.

Read more…

Bookmarks destocking (in frenglish)

Read more…

Crash course en (macro)économie

Voici un échange d'emails avec un amis informaticien (Daniel) ayant travaillé 18 ans dans le monde de la finance (en suisse). Il n'est pas économiste, simplement qqun cherchant à comprendre comment fonctionne l'économie et la finance. Ses opinions sont les siennes, que le rédacteur (Philippe) de ce site partage pour la plupart, ce en étant un béotien complet sur ces sujets.

Philippe: Ne serions-nous pas à nouveau dans une bulle spéculative avec twitter valant 44 milliards et VMware 61 milliards (de US$)?

Read more…

OCaml: the choice of discriminating hackers

Discriminating: in the first sense: 1a. Able to recognize or draw fine distinctions; perceptive. 1b. Showing careful judgment or fine taste :-)

Hacker: computer programming enthusiast, not security breaking fanatic.

Why OCaml?

I became interested, intrigued by this langage a long while back, in 2000-2002, when seeing it score rank second or third, just behind C and C++, on the computer language shootout hosted on alioth.debian.org. Never really invested a lot of time learning it before 2007-2008. It's not the easiest language for beginners, beeing a toolbox with a lot of tools, each having at least one distinctive name and functionality on it. Most peoples tends to prefer simple things, especially when it come to programming, where the overall picture, the frameworks, libraries, OS surrounding your development can quickly grow in becoming a big beast to harness.

Read more…

Pure javascript HTML5 canvas bilinear image interpolation

I've finally got my finger on a motivating javascript tryout. Never went deep into web programming before, this is the first full day of my life spent on JS. I wanted to test the feasibility (in term of computation time spent by the browser) of good quality image interpolation solely on the client side, in javascript. Even on a mac air 1.4GHz, it turns out to be a perfectly viable solution.

Googling to find some existing code, I didn't find any valuable. So here is one, it's working for me, not just a half baked solution computing only one pixel in the image and approximatively. The following HTML+JS is self contained and works fine, at least on my setup.

Read more…

Zölzer-Boltze (ZB) peak/notch parametric EQ in C

For digital audio signal processing

I was looking for a good implementation of parametric EQ for digital audio, didn't find something valuable enough, so I needed to roll my own. I retained a paper by two german guys, Mrs. Zölzer and Boltze, and implemented it.

It has the best parameters independance of all the one I browsed through. Well, center frequency, Q factor and cut/boost gain are simply really independant in their work, contrary to a lot of such projects you will find while googling around.

Read more…

Une première approche de rationalisation concernant l'harmonie musicale

Qu'est ce qui caractérise, de manière objective, quantifiable, un accord de deux sons, deux notes, tantôt dissonantes, tantôt consonantes ? On connait la nature vibratoire du son, soit une variation rapide de la pression atmosphérique, généralement de petite amplitude. Qu'elle sont les grandeurs physiques en jeux par rapport à l'harmonie, aussi notion apparament subjective si l'en est ?

Read more…

FIR filter design experiment using the simplex method

A starter about symetrical (linear phase) finite impulse response digital filter design using the simplex method. Much slower than Parks/McClellan/Remez exchange, but packaged in GLPK. 75 lines of OCaml code to design an FIR filter, what less could you ask for ?

The paper to have in hands is the "Meteor" one by Steiglitz. In short, from a vector dot matrix multiplication, we get the frequency response. The matrix beeing a cosine table, the vector beeing the filter coefficients.

The simplex method beeing a relatively simple optimization procedure for linear problems.

Read more…

Backing up and archiving Cisco IOS/ASA configurations live from the router without TFTP

In Python and with Subversion archiving

At some point as a network admin, I did find easier to parse config file using python expect and some regexp, rather than relying on the unreliable TFTP. Here's a script which worked fine for one year or so. It also does automate archiving in subversion. It's delibaretly in a shape suitable for a blog page, working after tuning two paths in the first script, but without a tarball and 12 pages of doco. Python is simple enough to read and understand even for peoples having never learned this language.

Read more…

L'informatique et l'éducation

L'informatique, science du traitement de l'information, est un domaine jeune, semblant traverser une crise de croissance, une fuite en avant permanente depuis qu'elle existe, ou en tout cas depuis qu'elle se trouve sur le bureau de beaucoup d'entre nous.

Pourtant, lorsqu'on s'intéresse de très près à ce domaine, qu'on passe petit-à-petit du stade d'utilisateur d'applicatifs à celui d'administrateur système et/ou a celui de programmeur, on est mis en face d'un historique de l'informatique, dans le sens ou les outils de bases qui permettent de construire dans ce domaine immatériel, que ce soit les langages de programmations ou les systèmes d'exploitations, n'ont conceptuellement pas changé depuis 30 ans. Le langage C, le plus utilisé pour construire les systèmes et applicatifs que nous rencontrons quotidiennement, existe depuis le début des années 70, comme les systèmes UNIX et VMS, base des systèmes Linux et Windows NT. Ceci contraste avec le foisonnement d'avancées techniques clamées a grand renfort de publicité par les ténors industriels de l'informatique.

Pourquoi un domaine basé sur des concepts de logiques si solides, si épurés, si aisés a systématiser, se présente-t-il devant nous sous forme de systèmes aussi instables, presque vivants tant la liste de 'bugs' interagissant avec le fonctionnement attendu est longue et non maîtrisée?

C'est à force de me poser ces questions, qu'à titre personnel, j'ai voulu découvrir autre chose que DOS, Windows et Apple avec son MacOS. J'ai installé Linux, de rage, après que Windows ait réduit à néant quelques jours de travail en plantant, et corrompant un travail pratique de physique que je rédigeais sous word.

Linux

La découverte d'un tel système n'était pas aisée à l'époque (1994) et accessible aux seuls passionnés d'informatique. Ce qui attire la plupart des futurs adeptes de linux vers linux, c'est l'ouverture totale est bien concrète du système, à tous les niveaux (la grande majorité de ses applicatifs est disponible avec le code source). Beaucoup de sociétés revendiquent l'ouverture de leurs solutions logicielles, mais celle-ci est généralement très partielle, l'idée de livrer le code source d'un tel produit étant difficilement conciliable avec le fait de capitaliser dans son développement.

Quand bien même est-ce le cas, on butte sur une fermeture "en-dessous" au niveau du système d'exploitation, qui, à l'exception des systèmes d'exploitations libres (Linux, BSD) ne permettent pas un traçage détaillé de ce qu'ils font lorsque un applicatif les charge d'une tache, ou ne l'autorisent qu'après l'achat d'un kit de développement coûtant plusieurs milliers de francs par poste de travail.

Mais est-ce bien utile de bénéficier d'une ouverture jusqu'au code source dans notre cas? Pour l'utilisation de l'informatique dans les spécialisations techniques des écoles professionnelles, de techniciens, d'ingénieurs et universitaires, OUI sans aucun doute. Pour les classes de scolarité obligatoire, c'est assez clairement inutile a l'utilisateur.

Par contre, le fait de ne pas montrer une seule culture informatique, celle des géants tel que Microsoft et Apple, à des enfants, leur expliquer que l'informatique, ce monde de l'immatériel, du "virtuel", connaît comme le monde réel une diversité culturelle, c'est fondamental. Se cantonner à montrer une seule de ces cultures aurait des effets très normatifs.

En effet, l'ouverture totale de l'informatique libre ne se limite pas à être avantageuse pour le développeur, elle crée une culture informatique dans les mains du publique, sans employeur au-dessus d'eux qui pourrait limiter leur franc parler, une culture du partage de l'information, discutant de problèmes informatiques sur des forums, mélangeant simples utilisateurs et programmeurs chevronnés, une culture foisonnante, encadrée par très peu de règles, si ce n'est celles des besoins des utilisateurs et du bon vouloir de programmeurs amateurs ou professionnels de créer des logiciels libres.

Contrairement au cas des logiciels propriétaires, il circule en effet autour des logiciels libres, une information très saine, détaillée et précise, sans retenue, au sujet du dernier bug, du dernier problème d'utilisation rencontré. Cet état de fait est en accord avec l'esprit dans lequel est développé le logiciel. En effet, en livrant le code source à l'utilisateur, on abandonne l'idée de cacher ses éventuelles erreurs ou maladresses de programmations, il devient inutile d'essayer de cacher ou d'altérer l'information quand à la réalité lorsque un défaut (bug) est constaté par un utilisateur.

Cette manière de faire circuler l'information a l'avantage de structurer l'esprit face à la technologie, de devenir critique face à celle-ci, qualité ô combien indispensable désormais.

La plupart des sociétés de technologies devenues des noms de marques, exploitent de manière abusive le manque d'esprit critique de la majorité d'entre nous face à la technologie. Faisons en sorte que le fossé entre les gens bardés d'informations techniques abstraites et le commun des mortels ne continuent pas a s'étendre. Par l'ouverture des logiciels libres, par une présence même discrète a l'école, juste suffisante pour faire comprendre qu'il n'y a pas un standard en informatique, mais une diversité laissant de nombreux choix possibles, on peut faire avancer les choses dans cette direction.