2009-08-20

Retarded coding standards?

I just stumbled upon this strange blog post that appears to affirm that the following code:

#include 
int main() { std::cout << "Hello, world" << std::endl; }

... is full of "errors," according to the poster's interpretation of MISRA C++ and LINT.

Those are not errors in code; those are design flaws in either the spec for the standard or LINT.

1. The “int” in “int main” violates an advisory rule to avoid using built-in types and instead use typedefs indicating the size and signedness of the type, such as int32_t, INT or signed32T.

main(int,char**) returns an int. Not an int32_t or an int16_t depending on the platform, but an int, which happens to be an int16_t, an int32_t or an int64_t depending on the platform. This is Unix semantics. The resulting value is an error code, not an integer meant to be calculated upon and subject to overflow. At worst it's a small binary set, again not subject overflow. It has been so since C and Unix exist. Ignoring it is just strange.

2. The first left shift operator violates a MISRA rule disallowing the use of bitwise shift on signed types, or so it does according to LINT

ostream & operator<< (const char *) is not the bit shift operator. It is an operator alright. It does not, however, perform a bit shift. Therefore, it is not the bit shift operator. The bit shift operator is (for example) int operator<<(int).

Furthermore, the meaning of said operator is clearly defined for signed integers. Why not disallow substraction on unsigned types, while they're at it? That should prevent underflow!

The two left shift operators as a whole are reported to violate the rule disallowing dependence on C operator precedence [and add parenthesis everywhere]

This is simply crazy. This kind of blanket rules are completely, utterly idiotic. '<<' here is much more readable without parenthesis, esp. considering that there is no other operator that could preempt it.

And anyone who's graduated grad school, even last of his class, knows that 1+2*3 == 1+(2*3) != (1+2)*3. And anyone who's graduated from junior high knows that 1/2/3 is fishy. And what about expressions with just one commutative operator? Are we to add parenthesis to 1+2+3?

I don't know who's to blame here, if the LINT tool is really that clueless or if the MISRA standard mandates this behaviour, but I can't begin to understand how you can ignore long standing (25+ years!) C and C++ idioms. If they don't like operator overloading, why don't they remove them altogether and call it Java?

2009-04-17

Lettre aux artissss pro #hadopi

Internet je pratique depuis près de 15 ans. Je sais comment ça marche de fond en comble. Je me considère comme un expert. Internet, avant de savoir que ça existait, je rêvais que ça existe.

Internet est plus utile à l'humanité que l'ensemble de l'édition phonographique française.

Internet, c'est Wikipédia, Linux, Firefox, Google Earth, Wikileaks, Wiktionary et tout ça. Vous, vous êtes Pascal Obispo, la Star Ac', la bande des potes de Sarko du Fouquet's.

Internet c'est l'Encyclopédie, vous vous êtes la Cour de Louis XV.

Nous voulons l'accès au savoir. Vous voulez la boite à con de TF1.

Si Internet disparaissait, ce serait une catastrophe pour l'humanité. Si la Sacem brûlait, ça sentirait juste un peu mauvais Pont de Neuilly.

Je n'aurais pas tenu ce discours il ya deux mois. Mais j'ai vu vos tristes manœuvres, votre ignorance revendiquée, vos mensonges à répétition, vos calomnies sordides et vos complicités de situation avec les autoritaristes qui nous gouvernent. Et je sais que vous êtes mon ennemi.

Niczar

2009-04-04

Lettre de Félicitations à Bertrand Burgalat

Félicitations! Mission accomplie! Bravo! Votre loi a été adoptée! Vous allez pouvoir faire la fête avec tous vos copains artistes de renom, tel Dick Rivers! Eh oui, pauvre Dick! Il ne vend plus de disque, et c'est uniquement à cause de l'internet, ça ne peut avoir aucun rapport avec le fait que le seul fan de Dick que j'ai jamais connu soit ma grand mère décédée en 1993. Mais attention, pensez bien à installer un firewall, "Open Office", comme le préconise votre ministre! Et puis bon, si on vous accuse à tort VOUS, ou même pas à tort puisque vous l'avez avoué vous-même, vous téléchargez, ou si par exemple quelqu'un (moi, par exemple, ou les 200000 autres personnes capables de le faire) injecte votre adresse IP dans un tracker, eh bien, ce n'est pas grave, vous n'aurez plus d'internet à la maison pendant 1 an, mais vous pourrez toujours aller au cyber café! Bon, ça n'existe plus les cyber café, un peu comme les fans de Dick Rivers, mais faudra faire avec! Enfin, je suis aller vérifier si vos oeuvres étaient piratées; c'est marrant, j'ai rien trouvé. Rien. Personne vous pirate. Les gens vous respectent trop pour ça? ... mouais, non. Ca, ou ils n'aiment pas du tout ce que vous faites. Moi j'aimais bien, mais l'association d'idée me donne la nausée, donc je boycotte. Il y a une autre possibilité, c'est que personne ne connait vos productions. Eh oui, votre seule apparition médiatique significative a été ce grand "FUCK YOU" auquel vous avez participé avec cette bande de blaireaux. Regardez bien de qui vous étiez entouré, Bertrand. Ca fait vendre, ça. "Cher public, vous êtes tous des voleurs!" -- Bertrand Dick Burgalat Rivers

2009-04-03

Une loi pour protéger la création pornographique: les valeurs de l'UMP au grand jour

Frank Riestert à l'Assemblée:

Jusqu’à présent, il était prévu que les recommandations adressées par la Haute Autorité informent les titulaires d’un abonnement à Internet que le téléchargement illégal est répréhensible et que ceux qui s’y livrent s’exposent à des sanctions. Nous proposons que ces recommandations informent également l’abonné sur l’offre légale de contenus culturels en ligne, qu’elles insistent sur la possibilité de s’équiper de logiciels de sécurisation pour protéger son accès Internet et qu’elles indiquent la date et l’heure du téléchargement illégal.

Par ailleurs, nous souhaitons que l’abonné puisse également, s’il en fait la demande expresse auprès de la HADOPI, connaître le contenu de l’œuvre qui a été téléchargée illégalement. Nous ne voulons pas que ce contenu apparaisse dans l’avertissement, car cela pourrait créer des problèmes importants dans les familles, par exemple s’il s’agit d’un contenu pornographique.

1. La loi vise donc à protéger, entre autres, les droits des producteurs d'œuvres pornographiques.

2. En toute logique, le courrier d'avertissement devrait donc comporter une liste de téléchargement légal de sites pornos, si l'envoi découle du téléchargement d'une telle œuvre.

2009-04-02

Lettre à Frédéric Lefebvre

To: Frederic Lefebvre <flefebvre@assemblee-nationale.fr>

Cc: Christian Paul <christian.paul@wanadoo.fr>

Bonjour,

Je voudrais savoir ce qui est prévu dans la loi Création & Internet pour ce qui concerne les PME; en suivant les débats j'ai cru comprendre que rien n'est prévu pour protéger une petite entreprise d'un employé ou stagiaire indélicat qui aurait abusé de la connexion de l'entreprise.

Vont-ils être coupés? Que se passe-t-il dans le cas, par exemple, d'un imprimeur, qui reçoit ses fichiers par internet, doit-il déposer le bilan immédiatement si un employé en conflit avec son patron fait exprès de télécharger Winnie L'Ourson sur le peer-to-peer pendant que ce dernier est en déplacement et n'a pas le temps de faire un recours dans les temps?

Vous et vos collègues avez évoqué des "logiciels de sécurisation" pour éviter cela — logiciels dont j'ignorais au passage la possibilité jusqu'à ces dernières semaines malgré près de 15 ans d'expérience professionnelle d'ingénieur systèmes et réseaux.

Je vous propose un scénario, je vous l'accorde par avance, hautement improbable: le vilain employé pourrait avoir un ordinateur portable personnel et pourrait le brancher sur le réseau de l'entreprise. De la pure science-fiction, je vous l'accorde, mais ne vaut-il pas la peine d'étudier toutes les conséquences de cette loi? Or donc, dans une telle situation hautement hypothétique, comment les logiciels de sécurisation du futur installés sur tous les ordinateurs de l'entreprise seront-ils en mesure de "sécuriser" le laptop en question?

Enfin, devant me rendre à l'évidence de mon ignorance dans un domaine qui est sensé être mon mêtier, je me suis mis en quête de m'instruire sur ces fameux logiciels de sécurisation, et pour l'instant je n'ai trouvé que celui utilisé par le Ministère de la Culture, Open Office. Comme c'est un logiciel libre, je me suis empressé de le télécharger par le peer to peer, j'ai cru comprendre que c'était encore légal. J'ai pu trouver les fonctions "Tableur," "Traitement de texte," ainsi que "Dessin," mais je n'ai pas réussi à localiser la fonction "sécurisation de tout mon réseau contre toutes les possibilités de se faire pirater, injecter son adresse IP dans un tracker de The Pirate Bay, ou être la victime d'une erreur des ayant droit."

Au passage je note que votre collègue M. Tardy ne cesse de s'opposer à votre glorieux combat. Il cache à peine son arrogance d'être lui-même informaticien et chef d'entreprise, comme si cela lui donnait une quelconque légitimité dans ce dossier. Il vient ainsi d'affirmer péremptoirement l'impossibilité du filtrage automatique des contenus. Il semble ignorer que le problème a été depuis lontemps réglé par l'IETF (Internet Engineering Task Force) avec la RFC3514, publiée début avril 2003, et qui fournit un moyen simple d'identifier les données illicites transitant sur le réseau.

En vous remerciant par avance de votre attention,

bien cordialement,

Un informaticien.

What's your firewall Christine? "Open Office"

Mme Christine Albanel, ministre de la culture. … lorsque l’on achète un pack Microsoft avec Word, Excel, Powerpoint, qui ne sont pas des logiciels libres , il existe des pare-feux, des logiciels de sécurisation ; mais les logiciels libres peuvent aussi être assortis de pare-feux. Ainsi, au ministère de la culture, nous utilisons le logiciel libre Open Office ("Free software can also have firewalls. Indeed in my ministry we use the free software program Open Office.")

2009-02-05

MITEL phones are revolting

The damn things have the WORST USER INTERFACE IN THE WORLD.

Do you have any idea how to dial back a missed call on 5224 IP phone? It's a fucking nightmare! Here's the thing: unless you have done the right magic invocation, you can't. Nope. It's an "advanced feature" or something, somehow, so you have to program a programmable key to invoke the advanced function, and then you have the pleasure to enjoy the retarded user interface that the sick, sick, sick minds at Mitel have produced.

And forget about those calls you missed before doing the hocus pocus, it's lost forever.

What are the invocations, you may wonder? Well, let me put it this way: there is absolutely NO WAY you can find out just by using the phone. It's completely random. In fact, I wouldn't be able to do it again.

Are there people working on UI at MITEL? Rhetorical question ...

2009-01-22

New phone features 'baffle users'

The complexity of modern mobile phones is leaving users frustrated and angry, research suggests.
This is the kind of information that should make any wannabe iPhone competitor pause. And a good rebuke to those who chide Apple for not supporting useless features such as MMS. Why are they useless? Because they fail often enough to frustrate users. In fact, a few years ago my brother and I tried to set it up to exchange camera phone pictures, and couldn't get the damn thing to work. We're both sysadmins, using Nokia phones, on the same damn network, using the operator's own recommended setup. Didn't work, and there was absolutely no way to know what was wrong. They might have fixed the thing by now but I won't waste any time on it.

My Nokia phone is full of such bullet point features. It has MMS, but it can also play music. Funny thing, that music player. It can't fast forward. Oh sure, there is a "fast forward" button, and it does go forward, but not fast by any stretch of the imagination. Say you're listening to a podcast. 10 minutes in, you have to make a phone call. You have to exit the music player, and when you come back ... the player is back at the beginning. Want to fast forward 10 minutes? That's gonna take you 5 minutes with the non-fast fast forward button. Useless. I hear newer Nokia phones have a much better music player; good for them. The thing is, they advertised a music player in that phone's ads, and it was unusable. It worked, but was unusable.

2009-01-13

Chicago's Transport Authority fails at the internet

Norwegians are either utterly fascinated with the comings and goings of CTA buses, or there just aren't enough recreational activities in the land of fiords and Viking ships. The CTA Bus Tracker Web site has received 15,395 visits since last year from people in Norway or whose computers or personal wireless devices were registered in that Scandinavian kingdom.
It took me about 3 µs to think of Opera Mini, which is a light-weight mobile phone web browser. Most of the HTML processing is actually done on servers at Opera's HQ ... in Norway.