 So, hello, my name is Christian and I'm so happy to be here This is like my fourth or my fifth year of Python. Oh, it's attending your Python for the first time. Where's your hand? That's a lot. Well, welcome to your Python Who is also vegetarian or vegan here? Okay, we can do better So Do you do you know this guy? It's really famous So this guy is Mark Anderson is a venture capitalists in San Francisco is one of the most famous one It's also the co-author of mosaic the first browser and it's also the co-founder of Netscape and A couple of years ago. We brought a really interesting article on the Wall Street Journal With the title why software is eating the world? This is the blog post is the article on the Wall Street Journal. It's really interesting and The article tried to explain why software is reshaping the world and also changing our lives at the chain time But today I would like to take this sentence and rephrase it a bit So can software feed the world? But before answering this question, I have another one. Why should we bother? So does anyone know today's worth population? Sorry Seven okay, it's seven point seven billion and By 2015 Sorry 2015. Oh Not 20. I mean that will be really a lot. It's nine point eight billion. This is like the forecast from the United Nations and Nine point eight billion. It's a huge number. I Mean it will put a lot of pressure on our ecosystem as a world and to feed the world population by 2050 we need to increase crops production by at least 25 or 70 percent Which is almost impossible, but I mean that's not the only big change. What about people living in urban areas? What part of the world population is living in urban areas right now? Well that number today is 53 percent and also by 2015 it will reach a 68 percent. So the majority of the world population will live and Be agglomerate in big cities with more than I don't know 10 millions people So if you do the math you see that there will be more than four billion people living in urban areas And the question is can we keep moving food around? Can we cook can we keep producing food far from the consumers? So if we collect all these things together and we stop the second and we start thinking about the bigger picture We can easily realize that we have some big problems. So first of all The growth of the world population and also the migration towards urban areas are creating problems and putting also constraints at the same time The first thing is yes, we want to feed those people and we want to avoid hunger But it's it's almost impossible to convert more land to food production Actually would be counterproductive because of the climate change for example and Another thing that we need to consider is that people from developing countries are getting wealthier Which means they will have a diet, which is more similar to our So the food consumption will increase and also change will evolve. So what should we do? We have problems. We are an engineer developers. How do we fix them? So many solution that being proposed But we can summarize them in three main categories So the first one is I Will like to invite you to change your diet because moving from a heavy red meat based diet to a more sustainable one is the first change that we need to make And this will reduce crop lands to feed animals, which is one of the biggest problem right now The second thing is that We should also reduce waste. I will talk more about this later But just to give you a number between 35 and 50 percent of the food is waste before it gets to our tables and The last thing that we can do or something that we can use is to use technology and We can use to technology for many things But for example, we can use technology to increase crop yields or to rethink about agriculture and that's what we do So what you see here is it's not a fridge. It's not a container. It's a farm. It's a vertical farm and we grow food We grow food inside here In farm is a fast. It's not function as a service is farming as a service as a company Which was found in Berlin a couple of years ago And what you see here like I said before it's a vertical farm and it's inside a retailer This is Attica has the main retailer in and Germany and just to give you a number We produce about 110 K plants every month just for Attica So the farm that you see here, it's it's a long was a long process like along also Probably took like more than two years the devil like this this concept of farm and We can grow 35 different type of crops inside the farm locally. So we just work in this way So we have production center close to the cities in this case Billy We use your pesticides because we can control the environment and we have no seasons so we can produce 360 dates and Currently we operate about 400 farms with the goal of reaching 1,000 by the end of the year Just to give you this is like a short radius like 30 seconds and it's like inside a farm so you can see the light lights People are operating the farms They are also harvesting We we do the same inside the grocery shops and then you can take your fresh herb directly from the point of sales and what you see here as It's a mass production farm This one and it's the one that we use inside our production centers So just to give you more context From the seeding phase to the harvest it takes about four weeks so in one month more or less we can go almost everything and A farm is a really really complex saving system That we want to operate we want to control and also we want to monitor So what can we control inside a farm? So we have different things. We can control water hair control lights control also pH control, which is fundamental and fertilizers and And like I said before we need to do this as kale because we are operating about 400 farms with the goal of reaching 1,000 In multiple location because we are active in Germany, Switzerland Luxembourg, UK and we're going to expand to a USA soon And because this is a Python conference. Yes, what we use Python So as a software team we have about four areas of focus We have what we call operation which is managing people doing Their kind of operation on the farms Then we have farm control monitoring and alerting and the new one the last pillar is called plants quality so operation are all the activities related to seeding planting harvesting maintenance and It's the labor intensive part of managing a farm Farm control is like I said, they are IoT device So we have a configuration that we need to apply to each farm Because we want to control different parameters side. We want to control the lights. We want to control the water level and A collection of these parameters is what we call recipe. So a recipe is something that we apply to a farm is set of configuration and We use a provider that's called particle and we communicate with their API and we send the configuration to the farms Monitoring and alerting. It's it's really interesting a farm under the hood is a really complex IoT system also expensive and we custom to receive events and data coming from the farms So for example, if there is no water, that's that's a huge problem Is the pH too high? That's also a big problem. So monitoring and alerting is a fundamental part of our company right now we have like monitoring room and We have this new pillar which is called plants quality and The idea is to use data science and artificial intelligence to increase crops quality and yield So now I want to talk a bit more about the past of In farm so when we started we thought about building a product for home consumers So as a consumer you can buy our small farm and you can bring the front to your place And you can just grow things inside your apartment But it in the last like 12 months the scope of the company changed completely so we had to pivot and From business to consumer we changed it to business to business So the software that we built Had to change it as well. So initially we had a really small team. The software team was less than five people We started with a flask application with a big monolith all the business logic related to operation farm control and monitoring and alerting were inside this flask application and For job scheduling we evenly relay on on salary And as soon our business model change it we started having issue We had scalability issues. We had too many and maintain dependencies Especially I mean flask is really nice, but as soon as you try to transform it to more Jungle application you start to rely on too many external dependencies Another thing is because we are a startup and we We are still trying to understand what this our real business model We had like an improperly construction top of our business model And another thing which is really easy when you write Python application Is that we were too much normalized to the business logic and everything else was defined inside of the models And that's what I consider our technical depth right now so As we start to grow one of the things that we we have seen was the application wasn't Providing us the right flexibility, especially because we're growing and we want to be more flexible Like I said, we were we are still depending on too many and maintain flask plugins And we don't have a will speak and well the final boundaries between the bain bombers and that's pretty bad also and The application is currently running on Eruco, which was really good at the beginning But we started to see that the lack of running on containers was a problem because we couldn't make like each build really reproducible Eruco is really nice. It's also really expensive and not really flexible So it's super okay if you just want to run your application from github But as soon as you have more complex like use cases and you want to be more flexible. That's that's painful and also I joined like the company at the beginning of the year and we had like no metrics no logs to Every time that you wanted to debug something was really painful and like I said at the beginning the application was also Providing monitoring and alerting which means we were doing Data ingestioning directly in the file flask application Like receiving thousands of events every second which was killing our performances because we were using just one database and For a reason that I can hardly understand We decided to try all the cloud providers. So if you name one we were using it So we were running on Eruco. The front tab was running on digital ocean And then we decided to try AWS and why not also GCP So we had to manage all like our entire stack on four different cloud providers So we decided to evolve to grow and we decided to do that on four different levels So we decided to consolidate to work on the consolidation of our platform on the architecture on being more cloud native and On the concept of observability So a consolidate the first thing was to deprecate all the cloud providers and move to GCP. So we made this decision. We're going to Migrate from Eruco to GCP. We're going to migrate from digital sound to also GCP and the same for AWS And then we decided to take technical depth. So As a software team, we can allocate about 25 percent of our time to work on these things and to try to reduce the technical depth Have you ever heard about the 10x developer? Yes, no It's a normal develop 10x developer. So it's it's just a developer who used linters So you should use linters as well in the Python community. We have many different. So Please check flak 8 I sort black and my pipe They are extremely useful Especially if you're like a small team and you want to be fast and you want to integrate these things with your CI CD and The last point about consolidate is about build versus buy and manage versus manage So we made a clear decision on okay We are not to build anything that which is not crucial or fundamental for our business and the same for using only managed services So everything we run You can think about kubernetes is that being managed same for the databases the same for Redis The only thing that we run is It's nothing actually because we also use influx as a service Grafana as a service so everything another thing especially about technical depth which is extremely important as We started to hear things like we cannot build that features because it's too hard or it will take too much time and For a startup which which is like in a growing phase. That's extremely Like killing the innovations at the company. So We decided to really put more time and effort into this and like I said, I mean I especially love linters They extremely useful you take like one or two hours to configure them and then they're ready to run and They're really easy to integrate with your CI or CD pipeline And I mean then you the fun yet then you don't have to worry about the formatting of your Python code If you want to put a comma or if you like to have an 80 charge or something else And the next point is about architecture. So We started with a monolith application and we started to realize that it was extremely hard to work on this application It was to be too hard You started to have sales One of the like the next step that we want to chill inside inform is to move from a service oriented architect Sorry to move from a monolith application to a service oriented architecture We would like to have a more sweet service separation, which means We want to move from what we call the compost application all the part that are related to from control because that's the service monitoring and alerting is just something separated and we want to keep moving into this direction and Related to monitoring alerting something that we just recently complete was to move data ingestion from the flask application to cloud functions and It's specifically about monitoring alerting. We are not just doing data ingestion using cloud function but we also build Dashboard directly on demand depending on the farm So everything that we install a new farm or would change the recipe of a farm the parameter inside the farm They change which means that we need to have new alerting like levels new messages and all these things and Especially during the summer or between the summer the winter the recipe of a farm change change many times and using cloud function Using a smart cloud function. We can make the dashboard reactive so we can provision new dashboard using Grafana and we can set new levels of alerting and We are using Python 3.7 for everything this is a blog announcement from the Google Cloud Dabrel This was about announcing the general general availability of cloud function with Python with 3.7 which is extremely nice and there is a mention about what we are doing there What about cloud native? Have you heard about this concept before? Where is your hand? No, I'm the only one. Okay, a couple of people. Okay So the first thing was to migrate to containers. So also inside Roku. We are running containers Which is somehow nice because then you can also run containers on your machine and it's everything more reproducible But it's just painful to run containers in just the Roku in the Roku because the platform was thought with a different use case in mind We decided to introduce also infrastructure as code as a part of our migration from Roku to Kubernetes and now every build inside our CI CD whether it's a PR or something master is a Docker image and I'm I'm leading the migration to Kubernetes. I gave like a workshop on Monday and We are using a key which is the managed platform by a by Google So what about the observability? Have you heard about this concept before? Yes today, okay. Yes So we decided to adopt a struct log I think I think is giving a talk about this in another room is the maintainer core developer. It says three mil cool Also, we start having matrix which means Finally, we know how many 400 X errors we receive and we can be more proactive and Another thing is that when you do struck log you can add like context to your logs Which means you can and you can introspect your application in a proper way and you can know I mean you you will be able to know what is happening also in production and It's something completely different at the end. So the first step was to augment our logs using struck log The next step like I said before is to have meaningful metrics and currently it's something we're working on It will be related to Like could be related to answering like simple question like the number of error that you get on your log balancer But also something more like related to the number of queries that you get or the speed of your queries And this is extremely important. Otherwise, you will feel like blind about your application and Because we are running inside GCP We we don't plan to run like anything We will use stock driver, which is the logging a metric platform offer by Google the integration with Kubernetes is amazing actually You get everything for free. I mean, it's it's everything already set And it's well integrated with if you use struck log or if you use matter metrics and All the information all the metrics and logs from your Kubernetes cluster. They will get directly there So the future of our software will be more microservices We plan to complete the migration to Kubernetes by the end of the year and we will have Be better and be care focused on data So what do you mean by data? I mean, yes, we can start talking about the hype about artificial intelligence but There are really two things we are working on a team farm with one is Fully automated farms, which means removing all the human labor work So if you remember the movie metrics with all the machine Yes working on humans, we will do the same but with plants and The last thing is currently we're using particle is a small micro device Which is not really powerful But it was convenient at the beginning and the plan is to have in the future in the farms edge computing Which means you need to run a computer inside the farm Because we want to run machine learning algorithms there and the goal is to have fully automated farm with fully autonomous farm And each farm will be able to decide Which is the best recipe? I want to have a more tasty basil. What should I do? So we want to reduce the human control over the farms and to make their more smart Also, because like I said at the beginning we are using zero pesticides, which is really nice But it's painful because there are many diseases Which are already like they are not a problem anymore But as soon as you start not using pesticides anymore you will get like Like 50% of your funds can easily die especially because Many of the diseases are just brought by humans So if we reduce also the quantity of human labors, we will also reduce this problem and also We plan to move to towards a more software oriented company, which means we will Try to switch from a business model where a producing farm is also a part of our business To you have a more service oriented company because this is not like producing food. This is also research Improving food quality and many other things So another thing we are working on right now, and it's our first step towards artificial intelligence is fighting past especially during the summer because of Because the weather is warmer one of the things that we see is we have something called shrinkage So having you start with one underplants and then by the end of the four weeks You just have 50% of them, which is really killing our production and One way to solve these issues is again using artificial intelligence and being more smart Cool. So thanks. That's everything I had if you live in Berlin. We are hiring and I'm happy to take questions Okay Thank you very much for that excellent talk. Okay questions. Who's got a question? I have a question about energy consumption if you grow your vegetables outside you get a sun for free here You have to put energy did you have some kind of balance? Balance how much energy you use compared to taking a tractor and going to the field? Yes, that's a good question. It's hard to say because on our side. We can control everything But if you control like the If you take into consideration everything We are much more efficient because we can we use the water for example Like I mean energy is not really a problem because especially in Germany. You can use wind energy Solar energy, so it's it's more or less free from, you know, the climate change perspective, but For example, we don't have like fuel consumed because we don't move too much compared to traditional farming So yes, I mean so far the output is really good from that perspective Thank you Thank you. Good talk. So you basically show the history of organic growth of startup from technical perspective and the question is if you started it today, what would be your Main decision changes like would you start from kubernetes? Would you start from? Microservices, etc. And the second question is No pesticides is good, but what about taste? Do you have Taste metrics or something like that? Thank you Okay, so to answer the first question What would they change like from a technical perspective if I go back? I mean everything is easier if you consider this no, we will make many different decisions probably We will probably use jungle directly and not using flask We will avoid like using a roco, and we will use like a different platform We will be like containerized since the beginning. So yeah many things they will be different and What was the second question sorry taste, okay, I'm from Italy and I know something about food taste Trust me I try the best herbs ever there Because the taste of the herbs is connected to their freshness and If you remember like the video, they still have the rules So when you buy them from the grocery shop, they are like fresh like but fresh fresh. You're still alive So they're super tasting not just by the taste but also by the smell So it's the best quality that you can have probably Next Two small questions first one is you know whether you chose to go with Hydroponics or some sort of soil artificial soil and The second one is whether you think you'll be able to match the nutrient density of using organic farming You know with artificial solutions, okay? so So whatever what you have seen here. It's hydroponic system We plan to migrate to our point which is different, but there is no soil inside. It is just water and We use We use the water so it's a ground to grow the plants One interesting thing is that we are not bio because by definition we don't have soil So we cannot define ourselves like a bio product, although we don't use pesticides and all these things So we also need to build like a new marketing model for our customers So to answer your question, yes we plan to increase them to work more on quality and Currently we're using an hydroponic system, but the future especially for the fully automated farm is to be hydroponic you mean Well, we control them because we have the fertilizer. So we use three different kind of fertilizers and We try to minimize the use of fertilizer given the same quality So I cannot really compare with the organized farms Hi Yeah, it's so awesome to see people not just doing another app, but something real Thank you. In the start of the talk you promised to feed the world and you cannot do it with just basil, right? You want tomatoes? You want potatoes, wheat? What about like real crops? So it's it's really up to you as soon as you have a system which works, then it's really up to your fantasy If you have the system you can grow pretty much whatever you want like we use herbs because They are more sustainable from an economics perspective They're easy to be sold to grocery shops, and they are more expensive So at this phase of our business is the best way, but they are like companies for example in Paris They are growing strawberries inside containers. So it's really up to you Next question Hi, I was wondering about the price point. Is it more expensive than the basil that you buy in a plastic bag or? How much? So the price for one herb is one euro and twenty-nine cents I think and it's more or less comparable to what you find inside the shops So it's not super expensive. Thanks. Yeah Next Thank you If you wanna if we wanna implement your farm in another country for instance in Yemen or this kind of Can you give us your technical recommendations? Sorry Can you give us your requirement your technical requirement for implement this kind of farm in? Not a developed country. What do you mean technical requirement from which perspective? You want to just pop up this kind of farm. It's completely separated from your environment So as long as you have water and electricity, I mean you had a fertilizer and the pH controls That's it's it's then you can put it wherever you want like Yes, I station on Antarctica or really as long I mean you also need to control the temperature and all these things But it's really unrelated to the place So you can use the same and you can use and apply the same strategy to different places Hi, yeah, thanks for the talk. I was just wondering you started by talking about how you're trying to solve World hunger because there's more and more people and you ended by describing your company in a dystopian way Comparing it to the matrix, which seems kind of weird to me. Sorry. Yeah, comparing it to the matrix Which is not necessarily a great example. Okay So I was just wondering when you're cutting like one of your goals right now is automating and cutting people off From the production when we are going to double in size of population. Is that really a good goal? Or what do you think about it? You mean because then we would have unemployed people? Maybe yeah, but I don't know to me That's like a false problem because we saw the same before so Technical revolution on the industrial revolution. They are also happening right now So you will just get new kind of jobs. You also need to control the farms operate the farms Maintain as the farm maintaining the farm. So Sure But I don't think it's like a problem at the end I was wondering if you throw in bunch of insects in your farms for pollination Do you do this kind of stuff for pollination? Yeah, no, but to fight diseases. Yes To fight diseases we use bugs Hello, thanks for a great talk. I wonder if you're Considered like autonomous installations or or your farms must rely on Reliable internet connection to your cloud services to to monitor to run actually this farm or you're Considered this like autonomous installation So each farm is more or less autonomous as long as it has like a configuration inside It just keep running the configuration Of course, you need to have electricity and water But yes, it can run for like a week or a couple of weeks with how like internet connection I mean that that's also a problem because then you cannot apply all the monitoring and alerting pipeline like okay, water is not there anymore, so They are not really built with the idea of being completely disconnected from internet Next person Hey, are you planning to release any of the specifics that are used for the hardware in an open source way or in a way that people can maybe Rebuild or build on top of this or built with this You're talking specifically about the farms, right? Yes. Yes That's one of the idea that we have also inside a company also because our business in the future will not be to build the farms Hi, very nice talk. My question is regarding all the hardware involved For these farms and if your company bought some like use something out of the box or if you develop everything So our farming is expensive, but if you open the bottom container, it's really cheap inside Like we have many components, but it's something that you can buy. I don't know and in the market. It's not something super high-tech Yeah, yeah. Yeah. Yes. Hello. Hi You mentioned that you want to do yet to take the world so so Do you have matrix about the sustainability of such system like because you have to Provide lights and that looks like a lot of energy to to Grow your plants. So do you have metrics about this? Yes? We have some metrics about this But when you talk about the sustainability you mean to you produce the farm and then to run the farm or just run the farm So we have so we have matters for both actually I'm not really updated about them, but the thing is energy will not be really a problem So there are things that are much more important like water. I Mean we use like 90% of the water compared to 90% less water compared to normal farmers and that's an issue in many places like it's It's easy to have like locals or free energy Water is it's like limited good water is like limited. That's big issue And we are much more concerned about using in a proper way water than energy Another question going back to the beginning slides. You said we need to increase production by 25% And waste is up to 50% so if you do the muscle if we just reduce waste would solve the problem Yeah, it's the same with the diet. It's just not that easy. I mean Like we know the problems the solution are there apply them is another thing sadly But yes, just I mean there are also many startup working on reducing food waste But that's the sad reality Currently we are not doing our best and we have different solutions Hello. Hi, you said that you use AI to Control and optimize your external parameters like pH and water not yet. That's the future Okay, that's the future and do you plan to do it also for choosing your seeds or do you do you plan to do any genes? Manipulations no, no, no, we we didn't so we use OGM. So we don't use like OGM. So from that perspective It's we don't plan to apply anything to you genius or things like this But inside a farm we run we like we grow different type of crops So we probably want to use machine learning to find the best combination Because that will also help to fight diseases. So we also need to play in that way Me I got a question. Sure. The business looks like amazing for a customer perspective But you say you change it to be to be yes, why? So if you have one of your farm in my house So if you go on Kickstarter and you will look for inform you will see the crowdfunding campaign by the funders They were going around barely teaching people how to grow Herbs or whatever tomatoes inside their apartments and they were going around with a caravan And they were teaching people so that that's like their soul, but it didn't work And as soon as they tried to switch to business to business So they tried to connect with grocery shop or shopping markets They had a different feedback. It's just more sustainable. So running a farm inside Grocery shop like Edica. It's just marketing. It's not sustainable from a business perspective You need to have multiple farms together to run them effectively from like money wise So yes, there are different companies working also in that but Running a farm. It's it's expensive like it's you have daily operation that you need to perform. So Sorry for now. I didn't have like a front to solve to solve you Sorry, can I just ask a question of your different solutions change our diet reduce waste and use technology How, you know, what percentage would you attribute to all of these to be able to solve these world food population problem? I don't know. I mean it's hard to say. I mean changing our diets like inexpensive, right? It's just changing what you put inside our fridge Again many things are just changing our habits, which it should be cheaper somehow, but it's not If we don't want to change our like way of living music technology, probably the best way So you say I like to define like a person for a percentage. Okay, so you say maybe human beings are quite Lazy and technology is the answer is not just yes also but you also need to consider that people from developing countries are growing and they want to behave like Western people and Then you cannot say to them, okay, just try to reduce waste or change our diet They will say I don't care you spent like the last 50 years doing the same now. It's my time Related the last What about policy I Mean you didn't like policy is pretty important, but not in the least here So and policy can drive technology can change our diet can reduce waste and can help with all these things policy human Regulation coming from the nations You can call it that yeah, but do we want to talk about the Paris agreement or something like this? No, but as I think it's been Yeah, it could be maybe one day before the end of the world. I don't know I don't trust regulations so much. I mean can be helpful, but it takes a lot of time Do you think that these solutions might increase population growth even further and make the problem worse because as humans Is that nature's sort of push things to the limit? and Sure, I mean Sure sure sure so you're gonna stop I Heard this like concern. Yes. Yes, you can reduce like food production then we'll see We've got time for one more question and so Hi, I have a last question about well going back to a tooling a bit more pythonic So you mentioned that you you moved to using more linters for instance and in that sense did you start from scratch or did you Enhance what you had and if so What was basically your what would be your best practice and how to go for that and if you didn't fall into the fallacy of pleasing the linters too much because in the end you want to have like all green I Do like to have all green actually so it's also pleasing myself But so I wasn't at the company at the time, but from from what I heard. Yes, they they Did all this part with the linters Considering the old code base So someone spent like a week or maybe two and apply the linters until everything was green If you have a very large code base probably it's not the best practice Maybe you can just apply the linters to the new changes. That's a way But I think that in our case the changes weren't so big and it was okay, okay, thank you very much Can you please give a warm round of applause?