It’s not about Webkit, silly. It’s about evolution.

February 20, 2013 § Leave a comment

« Webkit is a rust bucket. We can’t move away from it, because our users rely on its bugs as much as on its features, but it’s based on deprecated technologies, concepts that don’t scale anymore, and it just won’t match today’s needs or hardware. If we had any choice, we would dump the whole thing and restart from scratch. »

« Read the rest of this entry »

Advertisements

Fun with Windows paths.

June 19, 2012 § 3 Comments

I am currently attempting to implement a JavaScript library to handle file system paths in a portable manner.

Right now, I am having lots of fun with Windows paths and I wanted to share a few tidbits.

Under Windows, a path name can look like:

  1. “\\?\drivename:” followed by backslash-separated components.
    Such paths can be either relative or absolute.
    In such paths, “.”, “..” and “/” are regular file names.
  2. “\\.\drivename:” followed by backslash-separated components.
    Such paths can be either relative or absolute.
    In such paths, “.”, “..” and “/” are special names.
  3. “\\?\UNC\servername” followed by backslash-separated components.
    Such paths can only be absolute.
    In such paths, “.”, “..” and “/” are regular file names.
  4. “\\servername” followed by slash- or backslash- components.
    Such paths can only be absolute.
    In such paths, “.”, “..” and “/” are special names.
  5. “drivename:” followed by slash- or backslash- components.
    Such paths can be either relative or absolute.
    In such paths, “.”, “..” and “/” are special names.
  6. Just a series of slash- or backslash- components.
    Such paths can be either relative or absolute.
    In such paths, “.”, “..” and “/” are special names.

To simplify things further, depending on the version of Windows, a drive name can be:

  • only one letter between A and Z;
  • any sequence of letters between A an Z;
  • something that looks like Volume{41AF5D4F-04CC-4D15-9389-734BD6F52A7E}.

Also

  • if a path starts with “\\?\”, its length is limited to 32,767 chars;
  • otherwise, its length is limited to 260 chars.

Also

  • some names such as “LPT”, “COM”, etc. are reserved and cannot be used as file names;
  • … unless your path starts with “\\”.

Also

  • paths are case-insensitive;
  • … except when they are case-sensitive because of the disk format;
  • … except when they are case-sensitive because of something else.

Fortunately, the Windows APIs provides the following functions to simplify matters:

  • PathCanonicalize (completely broken);
  • GetFullPathName (broken);
  • GetLongPathName (requires access permissions just to tell you if a path is well-formatted);
  • UriCanonicalize (not sure what it does exactly, I haven’t tested it yet).

Of course, not all Windows API functions accept all schemes.

As you can imagine, I am having lots of fun.

Quick exercise given two paths A and B (either absolute or relative), how do you determine the path obtained by concatenating A and B?

If you are interested in following my progress, details are on bugzilla.

Universités, entreprises, même combat

February 8, 2008 § Leave a comment

En France, l’année 2008 commence fort. Entre la loi qui permettra de garder en prison indéfiniment des criminels après la fin de leur peine — on se demande de plus en plus à quoi sert la peine — la Mission Civilisatrice du Gouvernement en Place, béni soit-il, l’aide aux personnes âgées qui devient payante, la franchise médicale, la parade médiatico-nuptiale présidentielle, vacances de milliardaires à l’appui et, mon favori, des ministres notés sur des résultats selon des critères totalement idéologiques, il devient difficile de prendre encore le Gouvernement en Place au sérieux. Avec l’ersatz de IIIème République qui nous sert d’idéologie, j’attends d’un jour à l’autre l’apparition du bonnet d’âne au Conseil des Ministres.

Tenez, parmi les perles, j’ai entendu il y a quelques jours qu’une université devait être gérée comme une entreprise. Je n’arrive pas à retrouver la citation exacte, c’était à la radio, mais c’est dans la droite lignée de la loi LRU. C’est chouette, hein ? C’est brillant, c’est rutilant et, vu la manière dont sont gérées les entreprises françaises, ça ne peut que marcher.

On regarde ce que ça donne ?

« Read the rest of this entry »

Quelques scénarios pour une université libre, responsable et au poil soyeux.

December 6, 2007 § 7 Comments

La France a besoin de réformes, et ce n’est pas une minorité de tire-aux-flancs — qu’il s’agisse de quelques étudiants visiblement excités ou de fonctionnaires attachés à des privilèges odieux et incapables de concevoir le changement et qui relèvent incontestablement d’un autre âge — qui empêchera le progrès. Ne vous fiez pas aux bruits dans la rue, notre président a la poigne suffisamment ferme pour faire appliquer la très attendue loi sur la Liberté et la Responsabilité des Universités.

Cette loi se résume en deux points :

  • Donner tous les pouvoirs au Conseil d’Administration et à son représentant, le président de l’université, qui pourra agir les coudées franches, aussi bien sur le plan de l’embauche que sur celui des financements ou des frais d’inscription.
  • Imposer la présence d’industriels au susdit Conseil d’Administration.

Voyons ceci plus en détail :
« Read the rest of this entry »

Where Am I?

You are currently browsing entries tagged with microsoft at Il y a du thé renversé au bord de la table.