April 2, 2014 § 2 Comments
Wouldn’t it be nice if Mozilla were a political party, with a single stance, a single state of mind and a single opinion?
Wouldn’t it be nice if people could decide to vote for or against Mozilla based on a single opinion of its leader?
But that’s not the case. We are Mozilla. We have thousands of different voices. We agree that users must be defended on the web. We fight for privacy and for freedom of speech and for education. On everything else, we might disagree, but that’s ok. We are Mozilla. We won’t let that stop us.
So please don’t ask us to exclude one of our own, no matter how much you disagree with his positions. We are Mozilla. We always disagree on most things that are not our mission. And we move forward, together.
Of course, if you want to change Mozilla, how we work and what we think, there is one way to do it. You can join us. Don’t worry, you don’t have to agree with us on much.
February 10, 2012 § Leave a comment
I am currently reading the official text of ACTA. This international treaty against brand name abuse, forgery and illicit data sharing has been negotiated for two and a half years being a veil of absolute secrecy. Since early December, it is now finally public.
Reading it, I wonder. Here is article 11, for instance:
« Without prejudice to its law governing privilege, the protection of confidentiality of information sources, or the processing of personal data, each Party [= each country] shall provide that, in civil judicial proceedings concerning the enforcement of intellectual property rights, its judicial authorities have the authority, upon a justified request of the right holder, to order the infringer or, in the alternative, the alleged infringer, to provide to the right holder or to the judicial authorities, at least for the purpose of collecting evidence, relevant information as provided for in its applicable laws and regulations that the infringer or alleged infringer possesses or controls. Such information may include information regarding any person involved in any aspect of the infringement or alleged infringement and regarding the means of production or the channels of distribution of the infringing or allegedly infringing goods or services, including the identification of third persons alleged to be involved in the production and distribution of such goods or services and of their channels of distribution. »
Do I understand correctly that, to comply with such orders:
- a library must keep watch over its uers, so as to be able to identify those who might be implied in alleged infringements?
- a university must keep watch over its professors, so as to be able to identify those who might be implied in distributing documents and exceeding fair use?
- … or a highschool? or a kindergarten?
- … and no element of proof is required from the right holder?
Have I mentioned that I am a little worried by ACTA?
February 10, 2012 § 2 Comments
J’ai sous les yeux le texte officiel d’ACTA. Ce traité international contre (en vrac) l’exploitation illicite de marques, le faux et usage de faux et le partage de données sans autorisation sur Internet, après avoir été négocié en toute confidentialité par la Commission Européenne, est enfin public, et doit passer devant le Parlement Européen en mai 2012.
Du coup, je lis l’article 11 et je m’interroge :
« Without prejudice to its law governing privilege, the protection of confidentiality of information sources, or the processing of personal data, each Party [= chaque pays] shall provide that, in civil judicial proceedings concerning the enforcement of intellectual property rights, its judicial authorities have the authority, upon a justified request of the right holder, to order the infringer or, in the alternative, the alleged infringer, to provide to the right holder or to the judicial authorities, at least for the purpose of collecting evidence, relevant information as provided for in its applicable laws and regulations that the infringer or alleged infringer possesses or controls. Such information may include information regarding any person involved in any aspect of the infringement or alleged infringement and regarding the means of production or the channels of distribution of the infringing or allegedly infringing goods or services, including the identification of third persons alleged to be involved in the production and distribution of such goods or services and of their channels of distribution. »
Ai-je bien compris que, pour pouvoir obéir à ce type d’injonction :
- une bibliothèque doit surveiller ses empruntants, pour pouvoir identifier ceux qui pourraient être impliqués dans de la photocopie de livres ?
- une université doit surveiller ses enseignants, pour pouvoir identifier ceux qui pourraient distribuer des polycopiés sans autorisation ?
- … ou un lycée, un collège, une maternelle ?
- … ainsi que les intervenants invités le temps d’un cours ou d’un séminaire ?
- … le tout sur simple soupçon ?
Ai-je mentionné qu’ACTA m’inquiète quelque peu ?
January 18, 2012 § Leave a comment
Today, this blog is black.
Today is an international day of fighting against web censorship.
Against SOPA (in the US), Hadopi (in France), and all the bills that assume that freedom of expression and freedom of information can be cast aside whenever they come in the way of profit.
October 20, 2011 § 7 Comments
(source: speaker in a recent open-source conference)
And dynamic languages are fun. They make writing code simple and fast. They are vastly more suited to prototyping than static languages. Dynamism also makes it possible to write extremely powerful tools that can perform JIT translation from other syntaxes, add missing features to existing classes and functions and more generally fully customize the experience of the developer.
Or let’s do something a little smarter.
The main benefit of strong, static typing, is that it helps find errors.
- Even the simplest analyses can find all syntax errors, all unbound variables, all variables bound several times and consequently almost all scoping errors, which can already save considerable time for developers. Such an analysis requires no human intervention from the developer besides, of course, fixing any error that has been thus detected. As a bonus, in most cases, the analysis can suggest fixes.
- Similarly trivial forms of analysis can also detect suspicious calls to break or continue, weird uses of
switch(), suspicious calls to private fields of objects, as well as suspicious occurrences of
eval– in my book, eval is always suspicious.
- Slightly more sophisticated analyses can find most occurrences of functions or methods invoked with the wrong number of arguments. Again, this is without human intervention. With type annotations/documentation, we can move from most occurrences to all occurrences.
- This same analysis, when applied to public APIs, can provide developers with more informations regarding how their code can be (mis)used.
- At the same level of complexity, analysis can find most erroneous access to fields/methods, suspicious array traversals, suspicious calls to iterators/generators, etc. Again, with type annotations/documentation, we can move from most to all.
- Going a little further in complexity, analysis can find fragile uses of
this, uncaught exceptions, etc.
Types as documentation
Types as QA metric
While disciples of type-checking tend to consider typing as something boolean, the truth is more subtle: it quite possible that one piece of code does not pass type-checking while the rest of the code does. Indeed, with advanced type systems that do not support decidable type inference, this is only to be expected.
The direct consequence is that type-checking can be seen as a spectrum of quality. A code can be seen as failing if the static checking phrase can detect evident errors, typically unbound values or out-of-scope break, continue, etc. Otherwise, every attempt to type a value that results in a type error is a hint of poor QA practice that can be reported to the developer. This yields a percentage of values that can be typed – obtain 100% and get a QA stamp of approval for this specific metric.
February 2, 2010 § 1 Comment
Voici un an que la communauté universitaire a tiré la sonnette d’alarme, dans l’indifférence générale. Et bien, maintenant, ça commence, et ça confirme vous ne pourrez pas payer les études de vos enfants.
Vous voulez des détails ? À compter de l’année prochaine, certains Master de l’Université Paris Dauphine vont coûter la bagatelle de 1500 à 4000 euros.
January 23, 2010 § Leave a comment
Comme beaucoup d’entre vous le savent, l’année 2009-2010 a été rude dans les écoles, les collèges, les lycées les universités et les instituts de recherche de France. Du côté des enseignants, des chercheurs, des personnels administratifs et techniques et des parents d’élèves, il s’agissait de défendre le système contre sa casse systématique et organisée au profit du secteur privé. Du côté ministériel, il s’agissait de prononcer quelques bonnes paroles, de diviser pour régner, de salir tous ceux qui consacrent leur vie à former les enfants des autres ou à concevoir les savoirs de demain, de supprimer progressivement la formation des enseignants, de couper le plus possible de postes dans les établissements, de cesser de régler les factures, et plus généralement d’organiser la transition vers un système du tout-privé.
Comme beaucoup d’entre vous le savent, une année de lutte entière — dont la grève universitaire la plus importante depuis le XIIIeme siècle, pardonnez du peu — n’a servi à rien. Quelques belles paroles et le rouleau compresseur a repris, sans négociations, sans compromis et sans respecter la moindre promesse.
Il est encore temps, peut-être, de sauver quelques meubles. C’est en tout cas ce que pense la Coordination Nationale pour la Formation des Enseignants, qui vient de lancer une pétition. Cette pétition rassemblent les signatures de tous ceux qui estiment que la France doit continuer à former la formation des enseignants — rappelons que cette formation est presque abolie à partir de cette année. Si vous avez des enfants, si vous comptez en avoir ou si vous pensez que les enfants des autres doivent avoir des professeurs formés, je vous suggère de la signer. Je viens de le faire moi-même.