Hello everyone, so right now we have Alexey to both keep with us and he's going to talk
on Googleang, Hacking the recipe format, a round of applause please.
I'm Alexey and it happened that a few years back I created a simple recipe markup
language and also a CLI which helped me with grocery shopping.
And the way we write recipes hasn't changed from the mentally for centuries, I would say.
But diving deeper into the subject, I realized that it's actually not something we
need if you don't need recipes, we need just yummy food and that's it and recipes
just a tool which we used and it should help us.
But today I want to share with you my thoughts what in current recipe system can I consider
broken and what we can do to fix it.
So let's begin.
First of all, let's start with the obvious, so if you ever cooked, you probably noticed that
when you find the link and you try to find the recipe on the page, it just very annoying.
So you have to go through like pop ups, videos and ads coming from every site and it's
understand that recipes publishers need to make money but is it a good way to do it?
And probably they only expect that we just get dizzy and misclick on the out, I don't know.
So anyway, it's a really horrible experience.
Next thing is that the same recipe publishers, so they want to make the recipe unique and
so they take a tried into recipe and ads or call innovation into it and this and but
I want to get original recipe because after innovation kind of broken and I can ruin my
evening trying to cook it.
So how can I find this original recipe which reliable and tried and true?
And that leads to another observation which is the best recipes and published or posted
they are shared.
So for example, you had a great meal to your friend's house and you asked for a recipe
and that brings to the next issue which is how we shared those recipes.
So right now there is no like Google for recipes when you're something that comes to your
mind you need to share the servers the recipe.
So it can come into WhatsApp, into bookmarks, websites and Pinterest or whatever platform
you use and so we start them anywhere and it quickly becomes no way useful right?
So the nut issue is that I don't truly own those recipes and I can't really personalize
them.
For example, if I don't eat garlic I want to remove it from all recipes I use.
How can I do this with the recipe which is bookmark on the website?
Even if I go extra mile and download one of those thousand ups and like paprika and
the recipe there is very hard for mobile UI and can't use a copy page for things and
other issues that because it's internal format it can be stored in the cloud or it can
be stored in some proprietary format.
What happens if the app shuts down I guess right now we have some lost which at least
in the you we can up download our expert data but it's still I need to re-export it
and re-import it somewhere else and it's very hard and during my lifetime when I want to
collect all the recipes it can definitely happen and so most likely will happen and the last
thing I want to mention is that as we as I said earlier we don't need recipes we want
food there's quite a few steps between right so we need to create a meal plan a shopping list
and then cook and if you're about try to create a shopping list for a couple of recipes it's
early nightmare so it's very exhausting exercise and your brain will be just empty acid
and if you want to create a meal plan which is balanced and healthy it's even harder and I
tried it once and it's just I never go back to it's nightmare so just to recap a few things which
stayed between us and food is probably finding good recipes storing and sharing them and
personalizing them and probably with planning because it's very exhausting so I was thinking
what can can you do to solve this and we can do something which is just been a while with us
for decades I'll say it's a good old plan plan text files so we can store store them we know how to
deal with files we can move them around moving to folders we know how to share files lots of
different ways and we know how to edit them right to personalize so another good good thing we can do
is that make it in a way that computers also can understand those files and then they can solve
the problem with the brainfuel so they can plan mills for us and create trucking list and ideally
designed to it in a way that follows unique philosophy lots of small libraries which one
specifies in specific thing and that thing they do very well and other can reuse it and build
some good applications so yeah here's my attempt to solve it and it's welcome cooclain and basically
to write a cooclain file you check ingredients with add symbol like you tag in social network
if you want to mention a person and then if you need to add quantity do it in curly braces and
that's it so this of course extra syntax for like cookware or sections in recipe and other stuff
but that's enough to start and it actually will produce something like this here's an android app
person to release so it takes the same recipe and it has a cooking mode you can swipe between steps
you can also create shopping list and it will group them by aisle because you can provide
the configuration file so you can save time and money just going to specific sections of the shop
so you must why why do we need another format and I would say the value not in a format itself
but rather in the ecosystem around it and yeah I decided to create a new format because
kind of solves the problem of having being human readable and machine usable and all the other
formats is more like leaning towards one of those two like it's XML or JSON or YAML or other side
that can be just playing mark down it's very hard to extract the ingredients from it
and since I released the project in 2021 people created their own parsers and syntax
managers for editors and never heard about and I'm seeing them plug in many more things
and it's actually I think it's great and inspirational for me because cooking itself is
simple and open universal and good function be the same so I'll just quickly demo this
you like it's very original issue and basically it has just a few commands one command is
reciprocated it will just take your recipe file and produce conventional recipe with ingredients first
and then cookware and steps for each step you can have a list of ingredients as well
but I created it mostly to support some automation and scripts so you can pass the format
and it can be JSON YAML also it supports mark down so if you use static website you can
include into pipeline the step to create mark down files from it and you will have your recipes published
another thing is shopping list it works the same way as in the app you product with the
file configuration and it has a small web server so you can start it and it will run locally
so you can explore in more easier way all your recipes and create shopping list so
another thing I want to share is this service I built during Christmas break which is
basically you can prevent any address in browser where you have recipe with cook dot md slash
and it will convert it to cook-line format also it can if you if it doesn't work because it's
new thing sometimes it doesn't work so you can just manually put ingredients instructions
nothing I want to mention is a use case which inspires me as well it's a
so a user a discord user shared this story how they use cook-line to manage their
diabetic diet and basically they build lots of tools in python to track nutrition and to create
like flex and ingredients substitutions and they also have it all online so other people can also check
it out yeah if you get interested please good starting point would be a website
cookland.org there's lots of the documentation links to other projects also get up
there are quite a few libraries which we maintain there's a discord server you have
questions there is a playground parser so you can build your stuff and if you like to contribute
you can shoot me an email and we have very different different areas so we use rust for libraries
because it's a good language for this and cross platform and fast and yeah well happy cooking thank you