Les candidatures pour les « stages de programmation informatique » d’ Igalia sont officiellement ouvertes jusqu’à début avril. Ils offrent aux étudiant·e·s l’occasion de participer au développement de logiciels libres tout en étant rémunéré·e·s 7 000 € brut pour 450 heures, réparties de juin à décembre 2026. Comme chaque année, j’encadrerai un·e étudiant·e sur l’« Implémentation des normes Web » (…
Igalia recherche des étudiant·e·s pour ses « stages » de développement logiciel 1 Brève description : Contribution aux logiciels libres. En télétravail. 450 heures réparties sur 3 ou 6 mois. Rémunération de 7 000 €. Encadrement par un·e ingénieur·e d’Igalia. Lutter contre les discriminations professionnelles dans le secteur informatique. Chaque année, je m’occupe du stage « Implémentation des…
Introduction I recently led a small training session at Igalia where I proposed to find mistakes in five small testharness.js tests I wrote. These mistakes are based on actual issues I found in official web platform tests , or on mistakes I made myself in the past while writing tests, so I believe they would be useful to know. The feedback from my teammates was quite positive, with very good…
Note: This blog post was written on June 2024. As of September 2024, final work to ship the feature is still in progress. Please follow bug 1797715 for the latest updates. Introduction This is the final blog post in a series about new web platform features implemented in Gecko, as part as an effort at Igalia to increase browser interoperability. Let’s take a look at fetch priority attributes ,…
Introduction This is the second in a series of blog posts describing new web platform features Igalia has implemented in Gecko, as part of an effort to improve browser interoperability. I’ll talk about the task of implementing ‘content-visibility’ , to which several Igalians have contributed since early 2022, and I’ll focus on two main roadblocks I had to overcome. The ‘content-visibility’…
Introduction Igalia has been contributing to the web platform implementations of different web engines for a long time. One of our goals is ensuring that these implementations are interoperable, by relying on various web standards and web platform tests . In July 2023, I happily joined a project that focuses on this goal, and I worked more specifically on the Gecko web engine. One year later,…
Prolegomenon Early next June, I’m traveling from Paris to A Coruña for the Web Engines Hackfest and other internal Igalia events. In recent years I’ve done it by train, as previously mentioned . Some colleagues at Igalia were curious about it so I decided to write this blog post, investigating possible ways to do it from various European places. I wish this can also motivate more people at Igalia…
Introduction rr is a debugging tool for Linux that was originally developed by Mozilla for Firefox . It has long been adopted by Igalia and other web platform developers for Chromium and WebKit too. Back in 2019, there were breakout sessions on this topic at the Web Engines Hackfest and BlinkOn . For WebKitGTK, the Flatpak SDK provides a copy of rr, but recently I was unable to use the…
edit 2023/06/17: I elaborated a bit more in the conclusion about the open problem of finding a minimal κ \kappa . The Set Game I visited A Coruña last week for the Web Engines Hackfest and to participate to internal events with my fellow Igalians. One of our tradition being to play board games, my colleague Ioanna presented a card game called Set . To be honest I was not very good at it, but it…
2023/06/15: Most of this article was written in January 2023, but I only finished and published it in June. Hopefully, information is still up-to-date 😃 TL;DR Igalia announced early this year that MathML is back to Chromium . This is an excellent news, for those like me who read and write mathematics on the web. Native support for such a universal human language sounds uncontroversial but it has…
I mentioned in a previous post that Igalia organized the Web Engines Hackfest 2022 last week. As usual, fonts were one of the topic discussed. Dominik Röttsches presented COLRv1 color vector fonts in Chrome and OSS ( transcript ) and we also settled a breakout session on Tuesday morning. Because one issue raised was the availability of OpenType MATH fonts on operating systems, I believe it’s worth…
This week, I finally went back to A Coruña for the Web Engines Hackfest and internal company meetings. These were my first on-site events since the COVID-19 pandemic. After two years of non-super-exciting virtual conferences I was so glad to finally be able to meet with colleagues and other people from the Web. Igalia has grown considerably and I finally get to know many new hires in person.…
As many web platform developer and Firefox users, I believe Mozilla’s mission is instrumental for a better Internet. In a recent Igalia’s chat about the Web Ecosystem Health , participants made the usual observation regarding this important role played by Mozilla on the one hand and the limited development resources and small Firefox’s usage share on the other hand. In this blog post, I’d like to…
Note: This blog post was co-authored by AMP and Igalia teams. Web developers continue to face challenges with web interoperability issues and a lack of implementation of important features. As an open-source project, the AMP Project can help represent developers and aid in addressing these challenges. In the last few years, we have partnered with Igalia to collaborate on helping advance…
Oscillating Zeno’s paradox In a previous blog post, I described an oscillating Zeno’s paradox, which can be formalized as follows. Atalanta moves on the real line. She leaves from 0 and at step n n she decides to move forward or backward by 1 2 n + 1 \frac{1}{2^{n+1}} . If ϵ n ∊ { − 1 , 1 } \epsilon_n \in {\{-1, 1\}} corresponds to the chosen direction then writing S 0 = 0 S_0 = 0 and S n + 1 = S…
A simple Zeno’s paradox A simple variant of Zeno’s paradoxes can be described as follows. Atalanta wishes to walk to the end of a path. When she gets halfway, she still have to walk the remaining half of the path ; When she gets halfway of that remaining half, she still needs to walk the remaining quarter of the path ; When she gets halfway of that remaining quarter, she still needs to walk the…
Update 2020/03/10: Added complexity analysis for S.substr(α, N) In a previous blog post , I defined for each ordinal α \alpha a string S α S_\alpha (made of the characters for the empty set, comma, opening brace and closing brace) that enumerates the element of α \alpha . I gave a simple formulas to calculate the length L α L_\alpha of this string. My colleague Ioanna was a bit disappointed that I…
This week, my colleagues at Igalia were talking about cutting text at a 72-characters limit for word-wrapping emails. One might say that the real question is whether 72 is a cut or a limit . Or wonder how one has decided to set that particular value? The latter link explains the recursive definition of 72 as a finite set, which can be written with only braces, commas and the empty set ∅ \empty : 0…
Co-owner and mentorship In 2016, I was among the new software engineers who joined Igalia. Three years later I applied to become co-owner of the company and the legal paperwork was completed in April. As my colleague Andy explained on his blog , this does not change a lot of things in practice because most of the decisions are taken within the assembly. However, I’m still very happy and proud of…
This blog post reviews Igalia’s activity around the Web Platform , focusing on the second semester of 2018. Projects MathML During 2018 we have continued discussions to implement MathML in Chromium with Google and people interested in math layout. The project was finally launched early this year and we have encouraging progress. Stay tuned for more details! Javascript As mentioned in the previous…
This is the semiyearly report to let people know a bit more about Igalia’s activities around the Web Platform , focusing on the activity of the first semester of year 2018. Projects Javascript Igalia has proposed and developed the specification for BigInt , enabling math on arbitrary-sized integers in JavaScript. Igalia has been developing implementations in SpiderMonkey and JSC , where core…
Last week, I attended BlinkOn 9 . I was very happy to spend some time with my colleagues working on Chromium, including a new developer who will join my team next week (to be announced soon!). This edition had the usual format with presentations, brainstorming, lightning talks and informal chats with Chromium developers. I attended several interesting presentations on web platform standardization,…
Last september, I published a first blog post to let people know a bit more about Igalia’s activities around the Web platform, with a plan to repeat such a review each semester. The present blog post focuses on the activity of the second semester of 2017. Accessibility As part of Igalia’s commitment to diversity and inclusion , we continue our effort to standardize and implement accessibility…
TL;DR At Igalia, we attend many browser events. This is a quick summary of some recents conferences I participated to… or that gave me the opportunity to meet Igalians in Paris 😉. Week 31: Paris - CSS WG F2F - W3C My teammate Sergio attended the CSS WG F2F meeting as an observer. On Tuesday morning, I also made an appearance (but it was so brief that ceux que j’ai rencontrés ne m’ont peut-être…
Introduction For many years Igalia has been committed to and dedicated efforts to the improvement of Web Platform in all open-source Web Engines (Chromium, WebKit, Servo, Gecko) and JavaScript implementations (V8, SpiderMonkey, ChakraCore, JSC). We have been working in the implementation and standardization of some important technologies (CSS Grid/Flexbox, ECMAScript, WebRTC, WebVR, ARIA, MathML,…
TL;DR The AMP Project and Igalia have recently been collaborating to improve WebKit ’s implementation of the Web platform . Both teams are committed to make the Web better and we expect that all developers and users will benefit from this effort. In this blog post, we review some of the bug fixes and features currently being considered: Frame sandboxing : Implementing sandbox values to allow…
MathZilla is a collection of MathML-related add-ons for Mozilla applications. It provides nice features such as forcing native MathML rendering (e.g. on Wikipedia), using Web fonts to render MathML or providing a context menu item to copy math formulas into the clipboard. Initially written as a single XUL overlay extension (with even binary code for the LaTeX-to-MathML converter) it grows up as a…
Update 2017/02/01: The day I published this blog post, the old mus client library was removed . Some stack traces were taken during the analysis Antonio & I made in fall 2016, but they are now obsolete. I’m updating the blog in order to try and clarify things and fix possible inaccuracies. TL; DR Igalia has recently been working on making Chromium Desktop run natively on Ozone/Wayland thanks to…
If you read this blog, you probably know that I joined Igalia early this year, where I have been involved in projects related to free software and web engines. You may however not be aware that Igalia has a flat & cooperative structure where all decisions (projects, events, recruitments, company agreements etc) are voted by members of an assembly. In my opinion such an organization allows to take…
On the 1st of December, the STIX Fonts project announced the release of STIX 2. If you never heard about this project, it is described as follows : The mission of the Scientific and Technical Information Exchange (STIX) font creation project is the preparation of a comprehensive set of fonts that serve the scientific and engineering community in the process from manuscript creation through final…
As my fellow igalian Antonio Gomes explained on his blog , we have recenly been working on making the master branch of Chromium run on Linux Desktop using the upstream Ozone/Wayland backend . This effort is supported by Renesas and they were interested to rely on these recent developments to showcase Chromium running on the latest generation of their R-Car systems-on-chip for automotive…
Introduction In the past two months, I have been working with my colleague Antonio Gomes on a Chromium project supported by Renesas . The goal is to have Chrome running on Wayland with accelerated rendering happening in a separate GPU process . Intel has done a great job to develop a specific Wayland platform for Ozone but unfortunately the code only works for older releases of Chromium and is not…
Last week I travelled to Galicia for one of the regular gatherings organized by Igalia . It was a great pleasure to meet again all the Igalians and friends. Moreover, this time was a bit special since we celebrated our 15th anniversary :-) Photo by Alberto Garcia licensed under CC BY-SA 2.0 . I also attended the third edition of the Web Engines Hackfest , sponsored by Igalia, Collabora and Mozilla…
In a previous blog post , I explained the work made by Igalia ’s web platform team to refactor WebKit’s MathML layout classes. I stated that although some rendering improvements were a nice side effect, the main goal of the first phase was really to clean the code up so that it is easier for developers to work on MathML in the future. Indeed this really made things easier to review: Quite…
Introduction If you follow WebKit developments, you are certainly aware that Igalia has been working on WebKit’s MathML implementation for some time. More recently, effort has been made to write a clean implementation addressing issues reported by WebKit reviewers in the past. After joining Igalia in March, I have been in charge of getting this work reviewed and merged into WebKit’s development…
TL;DR: • Work is in progress to add OpenType MATH support in HarfBuzz and will be instrumental for many math rendering engines relying on that library, including browsers. • For stretchy operators, an efficient way to determine the required number of glyphs and their overlaps has been implemented and is described here. In the context of Igalia browser team effort to implement MathML support using…
Hackfest Two weeks ago, I travelled to Spain to participate to the second Web Engines Hackfest which was sponsored by Igalia and Collabora . Such an event has been organized by Igalia since 2009 and used to be focused on WebkitGTK+. It is great to see that it has now been extended to any Web engines & platforms and that a large percentage of non-igalian developers has been involved this year. If…
In a my previous blog post, I discussed the canonical well-ordering on α × α \alpha\times\alpha and stated theorem 0.5 below to calculate its order-type γ ( α ) \gamma(\alpha) . Subsequent corollaries provided a bound for γ ( α ) \gamma(\alpha) , its fixed points and a proof that infinite cardinals were among these fixed points (and so that cardinal addition and multiplication is trivial). In…
It is well-known that the cartesian product of two infinite sets of cardinality ℵ α \aleph_{\alpha} is also of cardinality ℵ α \aleph_{\alpha} . Equivalently, the set ω α × ω α \omega_{\alpha}\times\omega_{\alpha} can be well-ordered in order-type ω α \omega_{\alpha} . However, the standard ordering on ω α × ω α \omega_{\alpha}\times\omega_{\alpha} does not work, since it is always of order type ω…
I recently took a look at the description of the CSS 2D / SVG transform matrix(a, b, c, d, e, f) on MDN and I added a concrete example showing the effect of such a transform on an SVG line, in order to make this clearer for people who are not familiar with affine transformations or matrices. This also recalled me a small algorithm to decompose an arbitrary SVG transform into a composition of basic…
New solutions to exercises from Thomas Jech’s book “Set Theory”: • Chapter 16: Forcing Last November, I tried to provide some details of the proof given in chapter 7, regarding the fact that the continuum hypothesis implies the existence of a Ramsey ultrafilter. Booth actually proved in 1970 that this works assuming only Martin’s Axiom. The missing argument is actually given in exercise 16.16. For…
New solutions to exercises from Thomas Jech’s book “Set Theory”: • Chapter 15: Forcing The exercises from this chapter was a good opportunity to play a bit more with the forcing method. Exercise 15.15 seemed a straightforward generalization of Easton’s forcing but turned out to be a bit technical. I realized that the forcing notion used in that exercise provides a result in ZFC (a bit like…
In a previous blog post, I mentioned the classical independence results regarding the Axiom of Choice and the Generalized Continuum Hypothesis. Here, I’m going to talk about a slightly less known problem that is undecidable in ZFC. It is about a characterization of the set of reals ℝ \mathbb{R} and its formulation does not involve at all cardinal arithmetics or the axiom of choice, but only…
I worked on Chapter 13 and 14 of Thomas Jech’s book ‘‘Set Theory’’. Doing the exercises from these chapters gave me the opportunity to come back to the ‘‘classical’’ results about the independence of the Axiom of Choice and (Generalized) Continuum Hypothesis by Kurt Gödel and Paul Cohen. It’s funny to note that it’s easier to prove that AC holds in L L (essentially, the definition by ordinal…
I’ve recently been working on automated testcase reduction tools and thus I had the chance to study Jesse Ruderman ’s Lithium tool, itself inspired from the ddmin algorithm. This paper contains good ideas, like for example the fact that the reduction could be improved if we rely on the testcase structure like XML nodes or grammar tokens instead of just characters/lines. However, the authors of the…
Since my previous blog post, I have been working on exercises from chapter 7 of Thomas Jech’s book "Set Theory". I’ve published my solutions but I’m not yet done with exercises 7.22 and 7.28 which seem to be generalizations of theorems 4.3 and 3.2. I guess that before coming back to these two exercises, I’ll consider the content and exercises of subsequent chapters… I had the opportunity to read…
In this second part, I will try to explain briefly my contribution to Quantum Groups. I studied Lusztig’s results on the so-called restricted specialization of Quantum Group at a root of unity. As I indicated in a previous blog post , the case treated in the literature contains some restrictions on l l , for example l l is supposed to be odd. Basically, I generalized most results to an arbitrary…
{% raw %} All the papers or books I read so far on quantum groups about Lusztig’s restricted specialization consider only primitive roots of unity of odd order and additional conditions. In most cases, it is claimed that these restrictions could be removed without too much harm but details are not given. So I have tried to do the calculation myself. Below is what I find for the finite dimensional…
In my master thesis on quantum computing, I designed a version of the Abelian HSP algorithm based on subgroup reduction. In this blog post , I wondered whether this algorithm could be extended to the Dedekindian HSP and if it would be more efficient than the standard one. I’m going to prove that the latter is false in the cyclic case, where the two algorithms have exactly the same associated…
I have recently started to read a bit about Shelah’s theory of possible cofinalities. It is a quite interesting topic in Set Theory that I have wanted to study for a long time, but I did not really find time until now. I am going to give an overview in this blog post for people who are interested but also mostly to help me organizing my ideas and understanding of this subject. First, this theory…