I'd like to welcome Pierre, I've got your last name, Pierre.
Pierre Slamish.
All right.
That's, oh yeah.
I think it's one of the more recent World Projects started, isn't it?
We created a plan for the pack in 2012.
So it's just over 10 year old project.
That's value of a teenager.
Right.
Let's welcome Pierre.
And thank you, Lee, by the way.
We use, we depend on your work.
So I'm going to talk about open food fact.
And it's not going to be a very technical talk,
but more like experiences of people getting into Pearl in 2024
to contribute to food transparency and to transform the food system.
So I'm, yeah, I'm Pierre.
I'm one of the co-founders of open food fact.
So I'm not the technical guy.
I'm the product manager, but I double in a, in a product opener,
which is our Pearl back end.
So on the menu, I'm going to briefly introduce open food fact to both of you
who don't know it yet.
Then I'll have a part on starting Pearl in 2024.
So some portraits of our contributors,
how you can have impact on the food system with Pearl,
and finally some Q and A.
So about the open food fact, it's the answer to a very simple problem.
How do you pick a product in the supermarket?
You have many products, a lot of information.
It's hard if you want to pick one for your children.
It's very hard.
And then when you get to the nutrition table,
you have this long ingredient list, but sometimes you can't read.
The nutrition table personally, I have never managed to make sense out of it.
And so you have to make decisions every day to get food.
So open food fact is all about empowering users to have an impact on their own health,
but also on the environment and the food system at large.
So we kind of have this slogan,
don't panic when you're in the supermarket, organize.
So trying to get together and have an impact on the food system.
So we've been nicknamed by the media, the Wikipedia for food products.
We have over 3 million products in 160 countries and languages.
Our data sources are crowdsourcing.
So using your mobile phone, you can actually add photos, add data,
manually and using machine learning help.
And the food industry, which is beginning to realize that closing their data
doesn't make any sense.
So we want transparency to become the norm.
So I'm going to show you how pale code in production
is having impact every day for millions.
This is, so the first thing is a nutrition score,
which you may have seen in Belgium, in France and in other countries.
We started computing nutrition score in 2015.
It was a scientific formula at the time.
So we decided, okay, let's compute it on all the products we have
and show it to people in the app.
And we helped democratize nutrition score before it passed into law.
So this is a screenshot of something one of our contributors had done at the time.
He pasted some nutrition score on all the, using image editing software on all the products.
Fast forward a couple of years, you go from digital to actually seeing
a whole supermarket ale full of nutrition score,
which shows that you go from digital to real life impact.
So I mean, not only people who run the code, who use the software,
but everyone can benefit, but everyone can benefit, even people who don't care about it.
So from pale code to real life impact.
And it goes even beyond just displaying the score.
We started to realize that producers are actually changing the nutritional composition of their food products.
So it's a systemic impact.
Code can have a systemic impact on the food system.
It's absolutely bananas.
What you can do also with a path of tour is compare products at very large scale.
So for instance, we are able to monitor the composition of Fanta.
And as you see, it's not the same in every country.
So basically we can show what's the industry is trying to hide us.
We also have help producers improve their product.
So one of our part of our software stack is the producer platform.
And we do some computations based on the nutrition table to actually provide reformulation opportunities.
If you reduce sugar by 20 milligrams, you can actually go from nutritional score B to nutritional score A.
So computing helps also change the products.
And yeah, brands are starting to...
Oh, sorry, I went a little bit too far.
Yeah, brands are starting to...
All those brands have actually started to share data and use the import system,
the mapping and import systems that are in OpenFood fact,
that are kind of hairy XML parsing and all of that.
And so yeah, they are sharing data in many countries at large scale.
And to code this stack, we have Stefan, the founder of the OpenFood project,
but we also managed to get more coders on board.
People who just picked up Perl just to be able to contribute to the food system transparency.
We started learning Perl in 2022, 23, 24 just to be able to have an impact.
And Lee, I can confirm you that newcomers don't have any preconceptions.
So for instance, Yukti picked up Perl in 2022 and she's improving the backend code quality.
So she's very serious about food transparency.
She doesn't look at the front, she looks at the back where the nutrition tables are.
She wrote a lot of tests, bug fixes, and she's into Perl correctness.
And she's obviously like a soul trying to convert all people she meets into OpenFood users.
Stefan, who coded much of the code, learned Perl in 1998 when he was at Yahoo.
He likes to do origami in his free time.
And some of the code base are things that he coded perhaps a little bit too quickly 10 years ago
when he launched the OpenFood project.
And he recently paddled in a 10 degree water.
Monalika, she picked up Perl in 2023 to improve the UI, the test, and the code.
So it was part of the program funded by the Perl Foundation to include more people in computing.
So she worked on product image protection to ensure that data quality stays constant
and misuse and user management, email misuse and user management.
Alex, who's a Python person, but took the Perl Camel two years ago to contribute to OpenFood fact,
who's part of the permanent team, and who's using some of the tools you code in this room,
so Proxmox, Sanuid, and many, many more.
Benoit, who picked up Perl in 2023 to improve the data quality system,
and he's learning nutrition science almost as fast as he is picking up Perl.
And John, who didn't do much Perl before and started learning Perl in 2022.
And he's spending one day a week leveling up in Perl to be able to contribute to OpenFood fact.
So I'm going to go a bit faster, but as you see, the dynamic of people picking up Perl is actually very much alive.
Young people, girls, etc. are actually learning Perl to be able to contribute to OpenFood fact.
So John, he introduced Perl's critique to the pipeline, and we thank him for that somehow.
So a bit more technical.
So our backend is ProductOpner, so it's the backend for the web version.
It's a monolithic system for the web, so there's no like front-end backend thing.
But it's also providing the API of OpenFood fact.
So it provides the database.
It provides the ReadWrite API, the website, the producer's platform I talked about,
analyzing and enriching of product data, so a lot of regs in every direction,
and the computation of scores from the nutrition table, from the data.
We are then able to calculate nutrition score, about nutrition,
know about ultra-processing, and eco-score, which is even more complex to compute about the environment.
So a lot of ingredient parsing, very hairy stuff, and what the architecture looks like.
So we use ModPel and Apache to basically query the products which are stored in a storable file system.
We are then able to fulfill the user queries, and for aggregated query,
we store everything in a MongoDB database for more complex queries.
So the data structure is very hairy.
OpenFood is a very complex matter.
As the year evolved, the data structure became more complex and complex.
You have probably one-tenth of the data structure.
And we store all the...
So this is the old interface, and we store everything.
We store all the revision of the food products as well to ensure that...
to see the evolution of food products over time.
I told you that producers were evolving products to make them better.
So we are able to basically go back in time by storing revisions of the products at a given time.
So when people scan, they will require product.store, but it will require the last revision.
We are also exploring for aggregated queries the possibility of migrating to Postgre.
So yeah, that's how we do a MongoDB query.
And so the tags are the normalized version of the data,
and then we are able to return products that match the specific query.
It's very powerful. You can do very powerful stuff like require orange juice that are organic
and are sold in Belgium and possibly contain no additives, etc.
So the website is in Pell. The business logic is in Pell.
So ingredient parsing and data analysis.
We have those taxonomies to structure data and data navigation.
The score computations as well, and importing the data from producers and even a GS1 connection.
GS1 is the standard as ways to share product data.
And we also have a knowledge panel system, which is basically driving completely remotely the app.
So rich content, images and all of that.
We've already done...
One thing we realized is that we have to make contribution as easy as possible.
So we dockerized the project. We started adding documentation.
We are also working on a better API. It's not like very restful or API.
And we refactor on the go as we add features, because the food system is currently evolving.
We also want to have a more service-based approach as opposed to the monolith.
So we have introduced open food fact query for aggregated query.
FoxLumniangine for the additional properties.
And our machine learning stack is called Robotoff.
And we are currently revamping search with such issues and introducing key clock for identification.
We are also trying to better document the API with open API and adding more tests and integration tests.
Because stuff breaks and stuff breaks often.
Things we'd like to do on the technical side, the API v3, lower the barrier to contribution.
So probably using a modern web framework, we don't use any.
So I saw that there was a Corina talk. We are also considering Corina instead of hash maps.
Anonymous hash maps. So it could be, or data structure could be more documented.
And globally, we factor the code in smaller chunks, like something for NutriScore, something for EcoScore.
But one thing, we are not giving up at all.
The core of open food fact is and will remain in Perl.
And then, yeah, also more like design stuff.
Because our interface is still monolithic and people need to be comfortable with Perl to actually do front-end stuff.
So what's next for 2024? We go perhaps a bit faster.
We are going to improve the mobile app, do some more machine learning.
And also do something on open product fact.
So NutriScore is going to evolve this year.
So a lot of computation is going to, we basically have to change the algorithm.
It's still a very controversial thing at the European level.
Italy is trying to block the NutriScore.
And so once we compute, we will make it available to everyone.
We have also the question of prices.
We are launching into price collection due to inflation.
So we want people to be able to compare prices and be able to make sense out of the ongoing situation and also scientists.
And the last and probably more interesting, Perl-wise, is the fact that we are going to merge all of our projects together.
We currently have open food fact for food, but we have also open beauty fact for cosmetics and open pet food facts for pet food.
We actually launched those as jokes as April Fools a couple of years ago.
But now people are asking to be able to scan anything.
So we have four installation of products opener on four different servers and we need to be able to bridge them all together.
So in terms of architecture, you can imagine that it's going to require a lot of retooling.
So open product fact is all about providing circular solution to augment the lifespan of products.
So ensuring that they have a second, a third life that you are able to repair them, to give them away.
So augmenting the life of objects with open product facts.
So data platform for the circular economy and computing the carbon impact of products and also open beauty fact and open pet food fact.
So actually work is just starting if you'd like to get involved.
That's just about the right time.
We haven't started actually retooling the product opener for that.
So in terms of helping, how can you contribute?
I'm very well aware that you are already maintaining probably a lot of projects.
So the casual way is basically to scan and add products in your country.
Translation, spreading the word, designing and of course for those of you hacking and hacking the code and fixing the code.
The best way is just to try to install the docker on your machine.
It should be straightforward.
Also if you'd like to mentor, we will be part of the JSOC program this year.
Hopefully we will be.
We will also probably try to submit a project through the Pell Foundation.
So if you'd like to mentor Pell projects on open food fact or actually to become a mentor yourself, it's not just students anymore.
As a professional, you can actually be part of this program.
Be sure to get in touch.
So how can you get in touch?
Those emails, you can install the app using this QR code.
And if you scan this QR code, you can actually have a link to leave your coordinates and we will get back in touch if you want to become a volunteer.
Either a technical task or non-technical task.
And that's it.
So perhaps if you have any questions or no.
Thank you.