The unrelenting progress of design in open source
Leiva, Sergio
Open source geospatial is in an Enlightenment era regarding design; many teams are breaking away from tradition and embracing simple, clean, and usable interfaces. For a long time though, open source geospatial software, and geospatial software in general, seemed to pay little attention to the knowledge of the design community. Here, I will discuss why design has taken a backseat for such a long history and what is suddenly changing that brings it to the forefront. I will also talk some about the design decisions that have gone into the CartoDB user interface and many of the mapping options we help our users find. This talk will focus both on the history of design in open source geospatial software and where it is heading in the future. We will also talk about how design itself is inherently open and how we are working to improve open source software design through our own contributions and through this discussion of our process.
 Okay, so Good morning everybody. I'm Sergio Alvariz. I'm co-founder and head of product at Cartodv I have prepared more kind of philosophical talk as an intruder in this community that there are not so many designers here so I try to give you like a different point of view on how we believe in the company that open source will evolution and And we'll be in the future. So first of all A bit of background So I studied computer science and I work as a designer when being a developer was kind of cool So we were like discovering the informatics and we were discovering like hackers and all these kind of stuff that never existed But that was cool enough to to be on films and and books and so on at the end in the university After the university you put a suite at I and you become a like a real developer now know that kind of cool Thing about but yeah, but but the most important thing is that I mean I studied informatics of computer science because I didn't believe there was another option for me because design study were not official Were really hard to find very good places that did you how to design I Realize now that it was a really great decision because I I working a team full of engineers and Know how things work Below the design layer is very important when you when you start designing a service or a product or a website So there is a quote by a teacher by a professor and a university that is that in 19th century Culture was defined by the noble 20th century culture by the cinema the culture of the 20s 21st century will be defined by the interface And this is my favorite quote ever because it's like Saying that we all people that are in the room right now will be defining the future and that's kind of a great opportunity right so is is is so soon to to to be working on developing user interfaces or Interfaces that that has not be on a screen like for example square for payments They are changing the way we interact with money This has been as a hardware piece. They they are changing how things work. They are creating a different interface for for doing things Twitter has changed how people communicate how media publish content So they and this is an interface to is a is a what is a different way to interact with technology content people or Google Glass which is more of the most strange use cases right is a new device that you put in your head and you're You look a little bit dumb with it, but it's changing the way we interact with information too so I Think that When when we started building something on when when I start to to think about design the main goal is to improve People right is to make people better by using your product by using your interface by using your technology So I think every single thing that you that you think on building will start from from this So this is the main goal of everything that we do now. So Our CEO have a heavier which is not here We were launching a developers program. So he he did this kind of cool quote It's like the geo is not one of it's not one of our application with a million Buttons, but a million apps with just one button He's kind of reflecting how we believe that the geo industry is gonna change in the future So this is gonna be democratizing a lot So a lot of people is gonna have access to all these technologies. So it's kind of important that we build interfaces adapted to those particular cases and This is very very important because then you need to to start approaching open source as a different thing. So We'll go back later to this but but you need to start building products not only technology or libraries or or software So I think that in the university again I had the feeling that we were using open source because it was free We were a student and we wouldn't have any money But I really think that we are using open source because we really believe that is better that open source software is gonna change The wall and we are gonna buy by contributing all to the same piece of software We are gonna create a better a better piece of that so I Think that that this is changing the way we perceive it So this is one of my favorite quotes too is that people in North design that in North people So if we are competing with commercial solutions, we will have to start behaving like they do Not in terms of selling or in terms of hiring a lot of people or in terms of wherever So we will start we will have to start designing products. We will have to start like Worrying about how to design things. So this is a real use case. So this is a Greek year Our idea is an Android application that allows you to do precision agriculture So you buy it for 1000 bucks and and you receive a kid the farmer receive a kid in their house Where we're a Bluetooth receiver GPS antenna and an application and a tablet with an application installed in it So the aggregate a developer And did this and then he starts sending it to people so farmers receive the kid They look all pieces together and they call support. Hey, this is not working So it's kind of the thing that you expect when a farmer is trying to to interact with technology. So we were like Hey, this is not working Have you connected it correctly? Yes, I do. Have you should cheat it on? Yes, I do and so on so The the the guy that was in charge of this product couldn't go there and help the farmer because it was so far away So he decided to implement a set of sounds that were reflecting Until which state the software was set up So if we if you switch it up it makes a song it's switching on it makes a sound if you just plug the GPS antenna It makes another sound if you just plug their the Bluetooth receiver It makes a different sound so he asked people to call him when they being close to the device so they couldn't like him That would be something that normally happens So this guy saved a lot of money by not having to go there and then take a look at what was what's running along with the software And the good thing the best thing is that this guy Was not it was not at the designer. He's a developer. He is our lead developer in carto db He has decided this site project and these many things that at the end of the day designers are developers We are not too much difference, right? We are really similar people So we are aiming to to solve a problem. We are aiming to find solutions to particular problems so What we did with carto db? So we we think we start thinking about carto db. We really wanted to to do like different things so we We said we really didn't I mean we were not sad on a table. We were that doing prototypes but we thought a set of things that we wanted to achieve with the software that That made made us to create a design driving company because we our objectives were really focusing on people so The first of them is that we wanted to prove decision-making By creating a good tool for analyzing and visualizing data maps and With this we one of the main objectives for us was to have people that is creating or that is telling compelling stories with important Stuff so we wanted not only people that is that is that has some skills on the geo Thing that we wanted journalists scientific people We wanted designers Storytellers wherever to use it to use the platform So we needed to to to design it in a way that anyone like they do like they use Excel or or another piece of software They could use car TV so The first thing that we that we are trying to do is to remove our risk between people and data By humanizing the relation that you have with the data So nobody understand our next advice with with a one million rows. I think it doesn't work on Excel Honestly, but yeah, so we wanted to create a user interface that humanize it that makes it more natural to interact with the data And I think was we wanted to turn data sets into API's So we really believe that opening data is gonna change the world We're gonna improve a lot the way that we are that we are working with data But we wanted to do in the proper way so we we don't want we don't want the people to put data as a CSV files or PDF Files on the internet we want them to to be creating API endpoints. So we wanted to we cool Query them in any moment to create applications of the profit and also we wanted to allow people To focus on problem solving we wanted to our developers to build applications on top of the platform So they they have not to worry about maintaining a posi is installation or servers or distributing tiles or wherever They can just focus on on solving a problem that they are experts on it. So There are kind of five principles Design that are really spread on the company that every single person in the company has been aware of they are pretty simple So is this is kind of easy stuff But I wanted to say with you in case you in case it could help help you So first of all is that design for us starts in the blackboard or even in a wiki. So One of the main things that I that I really hate of designers is that we try to over complex the things that we do So we try to defend ourselves ourselves by saying that we are doing some crazy stuff We are researching a lot of things and and that's not a reality I mean sometimes we do but most of the times we we don't do it like this. We we just Try different options and we just take the one that we likes more than we implement So why not to start on a more friendly environment for people that is not a skill like a designer? Like it's a wiki page on github or a blackboard where we all draw our ideas So this is for example one wiki page on one of our repos. This is how everything starts on carto db It's just a text defining some kind of requirements and we start discussing on it And and that's it. This is created by by my partner Javier, which is a is not a designer Or he is but he doesn't know it. I think he doesn't know he doesn't want to recognize it, but yeah So the second one is that the same is improve the workflow without adding complexity So for us, this is kind of the most important things on on UI design So we really want to remove friction between data and people So I'm very proud of this feature because it was developed by me I have to say this is the disclaimer is the only feature that the team has allowed me to commit to production actually But it's the drug and drop. Yes. I gotta leave it for a while because I want you guys to love it as I do So it's awesome. You just take your file drug and drop it into your dashboard and it gets import Awesome, right? Say yes. Say yes. If not Okay, okay, so But this is this is kind of stupid because in terms of implementation, this is really really easy But it's changing the way that people interact with the platform. I remember we were with a client on a on a very fancy house on the latest phosphor g on Denver and he was like, you know, what would be amazing if I cool dragon drop a file and then whoa Well, wait, wait, this is this is working. It's already implemented was like, oh, perfect so this kind of of the most Is the smallest feature implemented on Carti D maybe but it's one of the ones that people likes more so Another thing about this principle is that we need to implement things on top of technology that will allows us to scale to infinite So everything Carti DB is based on sequel and Carti CSS So if you don't know how to how to code Carti CSS, you can always use the wizards You can always generate pre-generated by by clicking some buttons, but if you're gonna go farther you can actually Improve it just coding in Carti CSS or implementing some of the awesome tricks that the statement creeper for the for the past talk so one of the most important things is that for example, we are now implementing vector rendering on Carti DB and One of the things that we could add to the vent of rendering is mouse events So what happened when you put the mouse on on a point? So we all want the point to grow right and and shine and do like boom and all these kinds of work effect So we are implementing that as our carti DB extension so you can use it on the carti DB editor But you can also on the carti CSS editor, but you can also click some button and activate it and Who is not like really bored of working with info windows? This is kind of the worst thing to code on a map, right? It's really complex is so we wanted to to simplify it by adding some some parameters so Ordering and so on drag and drop another time so make it really easy, but also Very scalable because you can always customize the HTML that is powering during for window So if you want to use the wizard you are not a Technical people a technical user you guys just click a few buttons But if you want you can go farther by by working with HTML that for us This is key we don't implement anything that is not based on those technologies because we are afraid of that like like not not Scaling as the product has to scale So the third one is that design is about the singular pieces. It is about the total space so This is kind of when you are designing we are building a piece of software you have to you have to think on it as a As a bigger thing I mean if you if you are thinking implementing a feature the first thing you have to do is how is how is this feature gonna? Impact the product so you have to think not only about the user interface You don't have to think about the code you have to think about Every single line of code that you generate with a new feature is a line of code that you will have to maintain So it's important to think that sometimes the sign is about deleting So one of the most important exercises that we do are with car to DB is about removing its stuff So then we have less bugs and we are all more happy But but this is very important. This is like adding more features is not necessarily Designing more or designing better. Sometimes you really want to focus on on a particular thing and and do it really good This is my favorite one because it improves my life a lot It's like if you see something that you like it a lot just copy it. So I mean but do it I mean Do it do it. It's really good. So we copy that for example This is a slack is the is the software that we use for for it's like hip-chat But cooler and more expensive of course So this is like it's like has this hidden feature that is really good that you code an X em all an X a decimal Color and it translates to a small box. So we say this is cool We should implement this in our cartos CSS editor So now when you call that color it gets like surrounded by this color area So you can click on that and you can open like a visual editor for that color We designers tend to think that people knows that this is a red But no Trust me. No, if you don't do that people will end coding a color like ff Oh, oh, oh, which is a really horrible one. Oh, oh, ff. Oh, oh, which is a really horrible one ff which is even worse so so this has helped us a lot and The best one so you need people who want to work a high level but who can go all the way down to the atoms This is very very important. So we try to hire people on the team that Even if they are engineers or salespeople or wherever we need them to to focus on a small details because I mean design is detailed So we want people to love and to implement things in a high level of quality But we need them to to think about the the complete view of the thing. So this is this is very very important so my thought was about how to kind of Create like a design driving company without needing hiring designers So what I wanted to to let you know is that you don't like to hire you don't need to hire a designer in order to have a software that is Design in a better way. So you just need to change a little bit your mind. So Just for concluding If we won't design to be at for from the pop and so we need to define it correctly. So I don't want you to define design as colors typography is Forms functions, I don't know wherever so design is much more than that design is how you think and your product design is How you communicate it how just playing it and also how people will will interact with it. So this is Something that is really I mean, I just hope on next force for you We we search our opinion that we have more designers telling our their experiences on opensource software But this is key because if not, I think that open source will not be visible enough I will not have this critical mass that we all need for to to be like kind of success with our products And I think it's all thank you very much Yeah questions I Have a couple comments on the question so first of all When a friend I I'm a cartographer myself I've used a car to DB a little in the past but when a friend had to make a map with who has no Mapping experience had to make a map. I didn't think of car to DB right away. I thought of like, you know, Google Fusion tables and geo commons and we tried a few different things and ended on car to DB Because it's really the only thing that does what you do and you do it well And so I really like the principles of laying out a very easy entry point, you know And then being able to dig down and like use carto CSS. It's very well done Commend you for that. But having said that I take issue a little bit with you know, I get my hackles up Anyone's anytime someone says you can't think about projections And and to me it's you know a situation where you are in a position to be educating people Right about good design principles in particular in relation to cartographic principles Projections is a huge problem in in open source and in any you know modern, you know open source or closed source coding, you know web mapping stuff and So I guess you know in terms of making just for example making a core plus map on on web Mercator, right has some huge theoretical problems with it has some huge like problems with misleading concepts that you're communicating people so so Have you thought about like What you're building is a platform for education and I'm not talking about like teaching people the equations to create a projection You know, but like teaching people appropriate map design. Have you thought about it as in that from that angle that frame? Yes. Yeah, yes. Yes, we do so we started with web Mercator And we started to remove all complexity behind projections because we really want people to create maps in a really quick way So we can engage them because they are creating a lot of maps So then we can help them to improve them so projections is something that we are aware of and I Totally agree with your comment and it's something that we will we will take her of In the midterm, I would say that we will start working with I mean different projections We also want to to map data on the poles for example and we we know that we that with web Mercator you can't and and also to provide more More insights about which map would be fit best For your particular interest for your particular objective. So yeah, we will work on that No More questions Don't I put that projection thing in order to get more? You know more coming Didn't work. Okay, so thank you very much
 Okay, so  Good morning everybody. I'm Sergio Alvariz. I'm co-founder and head of product at Cartodv  I have prepared more kind of philosophical talk  as an intruder in this community that there are not so many designers here  so I try to give you like a different point of view on how we believe in the company that open source will  evolution and  And we'll be in the future. So first of all  A bit of background  So I studied computer science and I work as a designer when being a developer was kind of cool  So we were like discovering the informatics and we were discovering like hackers and all these kind of stuff that never existed  But that was cool enough to to be on films and and books and so on at the end  in the university  After the university you put a suite at I and you become a like a real developer now know that kind of cool  Thing about but yeah, but but the most important thing is that  I mean I studied informatics of computer science because I didn't believe there was another option for me because design study were not official  Were really hard to find very good places that did you how to design I  Realize now that it was a really great decision because I I working a team full of engineers and  Know how things work  Below the design layer is very important when you when you start designing a service or a product or a website  So there is a quote by a teacher by a professor and a university that is that in 19th century  Culture was defined by the noble  20th century culture by the cinema the culture of the 20s 21st century will be defined by the interface  And this is my favorite quote ever because it's like  Saying that we all people that are in the room right now will be defining the future and that's kind of a great opportunity  right so is is is so soon to to to be working on  developing user interfaces or  Interfaces that that has not be on a screen like for example square for payments  They are changing the way we interact with money  This has been as a hardware piece. They they are changing how things work. They are creating a different interface for for doing things  Twitter has changed how people communicate how media publish content  So they and this is an interface to is a is a what is a different way to interact with technology  content people or  Google Glass which is more of the most strange use cases right is a new device that you put in your head and you're  You look a little bit dumb with it, but it's changing the way we interact with information too  so I  Think that  When when we started building something on when when I start to to think about design the main goal is to improve  People right is to make people better by using your product by using your interface by using your technology  So I think every single thing that you that you think on building will start from from this  So this is the main goal of everything that we do now. So  Our CEO have a heavier which is not here  We were launching a developers program. So he he did this kind of cool quote  It's like the geo is not one of it's not one of our application with a million  Buttons, but a million apps with just one button  He's kind of reflecting how we believe that the geo industry is gonna change in the future  So this is gonna be democratizing a lot  So a lot of people is gonna have access to all these technologies. So it's kind of important that we build interfaces adapted to those particular cases and  This is very very important because then you need to to start approaching  open source as a different thing. So  We'll go back later to this but but you need to start building products not only technology or libraries or or software  So I think that in the university again  I had the feeling that we were using open source because it was free  We were a student and we wouldn't have any money  But I really think that we are using open source because we really believe that is better that open source software is gonna change  The wall and we are gonna buy by contributing all to the same piece of software  We are gonna create a better a better  piece of that so I  Think that that this is changing the way we perceive it  So this is one of my favorite quotes too is that people in North design that in North people  So if we are competing with commercial solutions, we will have to start behaving like they do  Not in terms of selling or in terms of hiring a lot of people or in terms of wherever  So we will start we will have to start designing products. We will have to start  like  Worrying about how to design things. So this is a real use case. So this is a Greek year  Our idea is an Android application that allows you to do precision agriculture  So you buy it for 1000 bucks and and you receive a kid the farmer receive a kid in their house  Where we're a Bluetooth receiver GPS antenna and an application and a tablet with an application installed in it  So the aggregate a developer  And did this and then he starts sending it to people so farmers receive the kid  They look all pieces together and they call support. Hey, this is not working  So it's kind of the thing that you expect when a farmer is trying to to interact with technology. So we were like  Hey, this is not working  Have you connected it correctly? Yes, I do. Have you should cheat it on? Yes, I do and so on so  The the the guy that was in charge of this product couldn't go there and help the farmer because it was so far away  So he decided to implement a set of sounds that were reflecting  Until which state the software was set up  So if we if you switch it up it makes a song it's switching on it makes a sound if you just plug the GPS antenna  It makes another sound if you just plug their the Bluetooth receiver  It makes a different sound so he asked people to call him when they being close to the device so they couldn't like him  That would be something that normally happens  So this guy saved a lot of money by not having to go there and then take a look at what was what's running along with the software  And the good thing the best thing is that this guy  Was not it was not at the designer. He's a developer. He is our lead developer in carto db  He has decided this site project and these many things that at the end of the day designers are developers  We are not too much difference, right? We are really similar people  So we are aiming to to solve a problem. We are aiming to find solutions to particular problems  so  What we did with carto db?  So we we think we start thinking about carto db. We really wanted to to do like  different things so we  We said we really didn't I mean we were not sad on a table. We were that doing prototypes  but we thought a  set of things that we wanted to achieve with the software that  That made made us to create a design driving company because we our objectives were really focusing on people  so  The first of them is that we wanted to prove decision-making  By creating a good tool for analyzing and visualizing data maps  and  With this we one of the main objectives for us was to have people that is creating or that is telling compelling stories with important  Stuff so we wanted not only people that is that is that has some skills on the geo  Thing that we wanted journalists scientific people  We wanted designers  Storytellers wherever to use it to use the platform  So we needed to to to design it in a way that anyone like they do like they use Excel or or another piece of software  They could use car TV so  The first thing that we that we are trying to do is to remove our risk between people and data  By humanizing the relation that you have with the data  So nobody understand our next advice with with a one million rows. I think it doesn't work on Excel  Honestly, but yeah, so we wanted to create a user interface that humanize it that makes it more natural to interact with the data  And I think was we wanted to turn data sets into API's  So we really believe that opening data is gonna change the world  We're gonna improve a lot the way that we are that we are working with data  But we wanted to do in the proper way so we we don't want we don't want the people to put data as a CSV files or PDF  Files on the internet we want them to to be creating API endpoints. So we wanted to we cool  Query them in any moment to create applications of the profit and also we wanted to allow people  To focus on problem solving we wanted to our developers to build applications on top of the platform  So they they have not to worry about maintaining a posi is installation or servers or distributing tiles or wherever  They can just focus on on solving a problem that they are experts on it. So  There are kind of five principles  Design that are really spread on the company that every single person in the company has been aware of they are pretty simple  So is this is kind of easy stuff  But I wanted to say with you in case you in case it could help help you  So first of all is that design for us starts in the blackboard or even in a wiki. So  One of the main things that I that I really hate  of designers is that we try to over complex the things that we do  So we try to defend ourselves ourselves by saying that we are doing some crazy stuff  We are researching a lot of things and and that's not a reality  I mean sometimes we do but most of the times we we don't do it like this. We we just  Try different options and we just take the one that we likes more than we implement  So why not to start on a more friendly environment for people that is not a skill like a designer?  Like it's a wiki page on github or a blackboard where we all draw our ideas  So this is for example one wiki page on one of our repos. This is how everything starts on carto db  It's just a text defining some kind of requirements and we start discussing on it  And and that's it. This is created by by my partner Javier, which is a is not a designer  Or he is but he doesn't know it. I think he doesn't know he doesn't want to recognize it, but yeah  So the second one is that the same is improve the workflow without adding complexity  So for us, this is kind of the most important things on on UI design  So we really want to remove friction between data and people  So I'm very proud of this feature because it was developed by me  I have to say this is the disclaimer is the only feature that the team has allowed me to commit to production actually  But it's the drug and drop. Yes. I gotta leave it for a while because I want you guys to love it as I do  So it's awesome. You just take your file drug and drop it into your dashboard and it gets import  Awesome, right?  Say yes. Say yes. If not  Okay, okay, so  But this is this is kind of stupid because in terms of implementation, this is really really easy  But it's changing the way that people interact with the platform. I remember we were with a client on a on a very fancy house on the latest  phosphor g on Denver and he was like, you know, what would be amazing if I cool dragon drop a file and then whoa  Well, wait, wait, this is this is working. It's already implemented was like, oh, perfect  so this kind of of the most  Is the smallest feature implemented on Carti D maybe but it's one of the ones that people likes more  so  Another thing about this principle is that we need to implement things on top of technology that will allows us to scale to infinite  So everything Carti DB is based on sequel and Carti CSS  So if you don't know how to how to code Carti CSS, you can always use the wizards  You can always generate pre-generated by by clicking some buttons, but if you're gonna go farther you can actually  Improve it just coding in Carti CSS or implementing some of the awesome tricks that the statement creeper for the for the past talk  so  one of the most important things is that for example, we are now implementing vector rendering on Carti DB and  One of the things that we could add to the vent of rendering is mouse events  So what happened when you put the mouse on on a point?  So we all want the point to grow right and and shine and do like boom and all these kinds of work effect  So we are implementing that as our carti DB extension so you can use it on the carti DB editor  But you can also on the carti CSS editor, but you can also click some button and activate it and  Who is not like really bored of working with info windows?  This is kind of the worst thing to code on a map, right?  It's really complex is so we wanted to to simplify it by adding some some parameters  so  Ordering and so on drag and drop another time so make it really easy, but also  Very scalable because you can always customize the HTML that is powering during for window  So if you want to use the wizard you are not a  Technical people a technical user you guys just click a few buttons  But if you want you can go farther by by working with HTML that for us  This is key we don't implement anything that is not based on those technologies because we are afraid of that like  like not not  Scaling as the product has to scale  So the third one is that design is about the singular pieces. It is about the total space so  This is kind of when you are designing we are building a piece of software you have to you have to think on it as a  As a bigger thing  I mean if you if you are thinking implementing a feature the first thing you have to do is how is how is this feature gonna?  Impact the product so you have to think not only about the user interface  You don't have to think about the code you have to think about  Every single line of code that you generate with a new feature is a line of code that you will have to maintain  So it's important to think that sometimes the sign is about deleting  So one of the most important exercises that we do are with car to DB is about removing its stuff  So then we have less bugs and we are all more happy  But but this is very important. This is like adding more features is not necessarily  Designing more or designing better. Sometimes you really want to focus on on a particular thing and and do it really good  This is my favorite one because it improves my life a lot  It's like if you see something that you like it a lot just copy it. So I mean but do it  I mean  Do it do it. It's really good. So we copy that for example  This is a slack is the is the software that we use for for it's like hip-chat  But cooler and more expensive of course  So this is like it's like has this hidden feature that is really good that you code an X em all an X a decimal  Color and it translates to a small box. So we say this is cool  We should implement this in our cartos CSS editor  So now when you call that color it gets like surrounded by this color area  So you can click on that and you can open like a visual editor for that color  We designers tend to think that people knows that this is a red  But no  Trust me. No, if you don't do that people will end coding a color like ff  Oh, oh, oh, which is a really horrible one. Oh, oh, ff. Oh, oh, which is a really horrible one  ff which is even worse  so so this has helped us a lot and  The best one so you need people who want to work a high level but who can go all the way down to the atoms  This is very very important. So we try to hire people on the team that  Even if they are engineers or salespeople or wherever we need them to to focus on a small details because I mean design is detailed  So we want people to love and to implement things in a high level of quality  But we need them to to think about the the complete view of the thing. So this is this is very very important  so  my thought was about how to kind of  Create like a design driving company without needing hiring designers  So what I wanted to to let you know is that you don't like to hire you don't need to hire a designer in order to have a  software that is  Design in a better way. So you just need to change a little bit your mind. So  Just for concluding  If we won't design to be at for from the pop and so we need to define it correctly. So I don't want you to define  design as colors  typography is  Forms functions, I don't know wherever so design is much more than that design is how you think and your product design is  How you communicate it how just playing it and also how people will will interact with it. So this is  Something that is really I mean, I just hope on next force for you  We we search our opinion that we have more designers telling our their experiences on opensource software  But this is key because if not, I think that open source will not be visible enough  I will not have this critical mass that we all need for to to be like kind of success with our products  And I think it's all thank you very much  Yeah questions I  Have a couple comments on the question  so first of all  When a friend I I'm a cartographer myself  I've used a car to DB a little in the past but when a friend had to make a map with who has no  Mapping experience had to make a map. I didn't think of car to DB right away. I thought of like, you know, Google  Fusion tables and geo commons and we tried a few different things and ended on car to DB  Because it's really the only thing that does what you do and you do it well  And so I really like the principles of laying out a very easy entry point, you know  And then being able to dig down and like use carto CSS. It's very well done  Commend you for that. But having said that I take issue a little bit with you know, I get my hackles up  Anyone's anytime someone says you can't think about projections  And and to me it's you know a situation where you are in a position to be educating people  Right about good design principles in particular in relation to cartographic principles  Projections is a huge problem in in open source and in any  you know  modern, you know open source or closed source coding, you know web mapping stuff and  So I guess you know in terms of making just for example making a core plus map on on web Mercator, right has some huge  theoretical problems with it has some huge like problems with misleading concepts that you're communicating people so so  Have you thought about like  What you're building is a platform for education and I'm not talking about like teaching people the equations to create a projection  You know, but like teaching people appropriate map design. Have you thought about it as in that from that angle that frame?  Yes. Yeah, yes. Yes, we do so we started with web Mercator  And we started to remove all complexity behind projections because we really want people to create maps in a really quick way  So we can engage them because they are creating a lot of maps  So then we can help them to improve them  so projections is something that we are aware of and I  Totally agree with your comment and it's something that we will we will take her of  In the midterm, I would say that we will start working with I mean different projections  We also want to to map data on the poles for example  and we we know that we that with web Mercator you can't and and also to provide more  More insights about which map would be fit best  For your particular interest for your particular objective. So yeah, we will work on that  No  More questions  Don't I put that projection thing in order to get more?  You know more coming  Didn't work. Okay, so thank you very much
03_Sergio_Leiva_720p_0_107.png 03_Sergio_Leiva_720p_108_851.png 03_Sergio_Leiva_720p_852_2423.png 03_Sergio_Leiva_720p_2424_3287.png 03_Sergio_Leiva_720p_3288_3563.png 03_Sergio_Leiva_720p_3564_3863.png 03_Sergio_Leiva_720p_3864_5891.png 03_Sergio_Leiva_720p_5892_6047.png 03_Sergio_Leiva_720p_6048_6887.png 03_Sergio_Leiva_720p_6888_7379.png 03_Sergio_Leiva_720p_7380_8795.png 03_Sergio_Leiva_720p_8796_9887.png 03_Sergio_Leiva_720p_9888_15599.png 03_Sergio_Leiva_720p_15600_16175.png 03_Sergio_Leiva_720p_16176_16571.png 03_Sergio_Leiva_720p_16572_18323.png 03_Sergio_Leiva_720p_18324_19019.png 03_Sergio_Leiva_720p_19020_19571.png 03_Sergio_Leiva_720p_19572_20735.png 03_Sergio_Leiva_720p_20736_22691.png 03_Sergio_Leiva_720p_22692_27011.png 03_Sergio_Leiva_720p_27012_27131.png 03_Sergio_Leiva_720p_27132_30275.png 03_Sergio_Leiva_720p_30276_31559.png 03_Sergio_Leiva_720p_31560_31631.png 03_Sergio_Leiva_720p_31632_31715.png 03_Sergio_Leiva_720p_31716_31763.png
Okay, so Good morning everybody. I'm Sergio Alvariz. I'm co-founder and head of product at Cartodv I have prepared more kind of philosophical talk as an intruder in this community that there are not so many designers here so I try to give you like a different point of view on how we believe in the company that open source will evolution and And we'll be in the future. So first of all A bit of background So I studied computer science and I work as a designer when being a developer was kind of cool So we were like discovering the informatics and we were discovering like hackers and all these kind of stuff that never existed But that was cool enough to to be on films and and books and so on at the end in the university After the university you put a suite at I and you become a like a real developer now know that kind of cool Thing about but yeah, but but the most important thing is that I mean I studied informatics of computer science because I didn't believe there was another option for me because design study were not official Were really hard to find very good places that did you how to design I Realize now that it was a really great decision because I I working a team full of engineers and Know how things work Below the design layer is very important when you when you start designing a service or a product or a website So there is a quote by a teacher by a professor and a university that is that in 19th century Culture was defined by the noble 20th century culture by the cinema the culture of the 20s 21st century will be defined by the interface And this is my favorite quote ever because it's like Saying that we all people that are in the room right now will be defining the future and that's kind of a great opportunity right so is is is so soon to to to be working on developing user interfaces or Interfaces that that has not be on a screen like for example square for payments They are changing the way we interact with money This has been as a hardware piece. They they are changing how things work. They are creating a different interface for for doing things Twitter has changed how people communicate how media publish content So they and this is an interface to is a is a what is a different way to interact with technology content people or Google Glass which is more of the most strange use cases right is a new device that you put in your head and you're You look a little bit dumb with it, but it's changing the way we interact with information too so I Think that When when we started building something on when when I start to to think about design the main goal is to improve People right is to make people better by using your product by using your interface by using your technology So I think every single thing that you that you think on building will start from from this So this is the main goal of everything that we do now. So Our CEO have a heavier which is not here We were launching a developers program. So he he did this kind of cool quote It's like the geo is not one of it's not one of our application with a million Buttons, but a million apps with just one button He's kind of reflecting how we believe that the geo industry is gonna change in the future So this is gonna be democratizing a lot So a lot of people is gonna have access to all these technologies. So it's kind of important that we build interfaces adapted to those particular cases and This is very very important because then you need to to start approaching open source as a different thing. So We'll go back later to this but but you need to start building products not only technology or libraries or or software So I think that in the university again I had the feeling that we were using open source because it was free We were a student and we wouldn't have any money But I really think that we are using open source because we really believe that is better that open source software is gonna change The wall and we are gonna buy by contributing all to the same piece of software We are gonna create a better a better piece of that so I Think that that this is changing the way we perceive it So this is one of my favorite quotes too is that people in North design that in North people So if we are competing with commercial solutions, we will have to start behaving like they do Not in terms of selling or in terms of hiring a lot of people or in terms of wherever So we will start we will have to start designing products. We will have to start like Worrying about how to design things. So this is a real use case. So this is a Greek year Our idea is an Android application that allows you to do precision agriculture So you buy it for 1000 bucks and and you receive a kid the farmer receive a kid in their house Where we're a Bluetooth receiver GPS antenna and an application and a tablet with an application installed in it So the aggregate a developer And did this and then he starts sending it to people so farmers receive the kid They look all pieces together and they call support. Hey, this is not working So it's kind of the thing that you expect when a farmer is trying to to interact with technology. So we were like Hey, this is not working Have you connected it correctly? Yes, I do. Have you should cheat it on? Yes, I do and so on so The the the guy that was in charge of this product couldn't go there and help the farmer because it was so far away So he decided to implement a set of sounds that were reflecting Until which state the software was set up So if we if you switch it up it makes a song it's switching on it makes a sound if you just plug the GPS antenna It makes another sound if you just plug their the Bluetooth receiver It makes a different sound so he asked people to call him when they being close to the device so they couldn't like him That would be something that normally happens So this guy saved a lot of money by not having to go there and then take a look at what was what's running along with the software And the good thing the best thing is that this guy Was not it was not at the designer. He's a developer. He is our lead developer in carto db He has decided this site project and these many things that at the end of the day designers are developers We are not too much difference, right? We are really similar people So we are aiming to to solve a problem. We are aiming to find solutions to particular problems so What we did with carto db? So we we think we start thinking about carto db. We really wanted to to do like different things so we We said we really didn't I mean we were not sad on a table. We were that doing prototypes but we thought a set of things that we wanted to achieve with the software that That made made us to create a design driving company because we our objectives were really focusing on people so The first of them is that we wanted to prove decision-making By creating a good tool for analyzing and visualizing data maps and With this we one of the main objectives for us was to have people that is creating or that is telling compelling stories with important Stuff so we wanted not only people that is that is that has some skills on the geo Thing that we wanted journalists scientific people We wanted designers Storytellers wherever to use it to use the platform So we needed to to to design it in a way that anyone like they do like they use Excel or or another piece of software They could use car TV so The first thing that we that we are trying to do is to remove our risk between people and data By humanizing the relation that you have with the data So nobody understand our next advice with with a one million rows. I think it doesn't work on Excel Honestly, but yeah, so we wanted to create a user interface that humanize it that makes it more natural to interact with the data And I think was we wanted to turn data sets into API's So we really believe that opening data is gonna change the world We're gonna improve a lot the way that we are that we are working with data But we wanted to do in the proper way so we we don't want we don't want the people to put data as a CSV files or PDF Files on the internet we want them to to be creating API endpoints. So we wanted to we cool Query them in any moment to create applications of the profit and also we wanted to allow people To focus on problem solving we wanted to our developers to build applications on top of the platform So they they have not to worry about maintaining a posi is installation or servers or distributing tiles or wherever They can just focus on on solving a problem that they are experts on it. So There are kind of five principles Design that are really spread on the company that every single person in the company has been aware of they are pretty simple So is this is kind of easy stuff But I wanted to say with you in case you in case it could help help you So first of all is that design for us starts in the blackboard or even in a wiki. So One of the main things that I that I really hate of designers is that we try to over complex the things that we do So we try to defend ourselves ourselves by saying that we are doing some crazy stuff We are researching a lot of things and and that's not a reality I mean sometimes we do but most of the times we we don't do it like this. We we just Try different options and we just take the one that we likes more than we implement So why not to start on a more friendly environment for people that is not a skill like a designer? Like it's a wiki page on github or a blackboard where we all draw our ideas So this is for example one wiki page on one of our repos. This is how everything starts on carto db It's just a text defining some kind of requirements and we start discussing on it And and that's it. This is created by by my partner Javier, which is a is not a designer Or he is but he doesn't know it. I think he doesn't know he doesn't want to recognize it, but yeah So the second one is that the same is improve the workflow without adding complexity So for us, this is kind of the most important things on on UI design So we really want to remove friction between data and people So I'm very proud of this feature because it was developed by me I have to say this is the disclaimer is the only feature that the team has allowed me to commit to production actually But it's the drug and drop. Yes. I gotta leave it for a while because I want you guys to love it as I do So it's awesome. You just take your file drug and drop it into your dashboard and it gets import Awesome, right? Say yes. Say yes. If not Okay, okay, so But this is this is kind of stupid because in terms of implementation, this is really really easy But it's changing the way that people interact with the platform. I remember we were with a client on a on a very fancy house on the latest phosphor g on Denver and he was like, you know, what would be amazing if I cool dragon drop a file and then whoa Well, wait, wait, this is this is working. It's already implemented was like, oh, perfect so this kind of of the most Is the smallest feature implemented on Carti D maybe but it's one of the ones that people likes more so Another thing about this principle is that we need to implement things on top of technology that will allows us to scale to infinite So everything Carti DB is based on sequel and Carti CSS So if you don't know how to how to code Carti CSS, you can always use the wizards You can always generate pre-generated by by clicking some buttons, but if you're gonna go farther you can actually Improve it just coding in Carti CSS or implementing some of the awesome tricks that the statement creeper for the for the past talk so one of the most important things is that for example, we are now implementing vector rendering on Carti DB and One of the things that we could add to the vent of rendering is mouse events So what happened when you put the mouse on on a point? So we all want the point to grow right and and shine and do like boom and all these kinds of work effect So we are implementing that as our carti DB extension so you can use it on the carti DB editor But you can also on the carti CSS editor, but you can also click some button and activate it and Who is not like really bored of working with info windows? This is kind of the worst thing to code on a map, right? It's really complex is so we wanted to to simplify it by adding some some parameters so Ordering and so on drag and drop another time so make it really easy, but also Very scalable because you can always customize the HTML that is powering during for window So if you want to use the wizard you are not a Technical people a technical user you guys just click a few buttons But if you want you can go farther by by working with HTML that for us This is key we don't implement anything that is not based on those technologies because we are afraid of that like like not not Scaling as the product has to scale So the third one is that design is about the singular pieces. It is about the total space so This is kind of when you are designing we are building a piece of software you have to you have to think on it as a As a bigger thing I mean if you if you are thinking implementing a feature the first thing you have to do is how is how is this feature gonna? Impact the product so you have to think not only about the user interface You don't have to think about the code you have to think about Every single line of code that you generate with a new feature is a line of code that you will have to maintain So it's important to think that sometimes the sign is about deleting So one of the most important exercises that we do are with car to DB is about removing its stuff So then we have less bugs and we are all more happy But but this is very important. This is like adding more features is not necessarily Designing more or designing better. Sometimes you really want to focus on on a particular thing and and do it really good This is my favorite one because it improves my life a lot It's like if you see something that you like it a lot just copy it. So I mean but do it I mean Do it do it. It's really good. So we copy that for example This is a slack is the is the software that we use for for it's like hip-chat But cooler and more expensive of course So this is like it's like has this hidden feature that is really good that you code an X em all an X a decimal Color and it translates to a small box. So we say this is cool We should implement this in our cartos CSS editor So now when you call that color it gets like surrounded by this color area So you can click on that and you can open like a visual editor for that color We designers tend to think that people knows that this is a red But no Trust me. No, if you don't do that people will end coding a color like ff Oh, oh, oh, which is a really horrible one. Oh, oh, ff. Oh, oh, which is a really horrible one ff which is even worse so so this has helped us a lot and The best one so you need people who want to work a high level but who can go all the way down to the atoms This is very very important. So we try to hire people on the team that Even if they are engineers or salespeople or wherever we need them to to focus on a small details because I mean design is detailed So we want people to love and to implement things in a high level of quality But we need them to to think about the the complete view of the thing. So this is this is very very important so my thought was about how to kind of Create like a design driving company without needing hiring designers So what I wanted to to let you know is that you don't like to hire you don't need to hire a designer in order to have a software that is Design in a better way. So you just need to change a little bit your mind. So Just for concluding If we won't design to be at for from the pop and so we need to define it correctly. So I don't want you to define design as colors typography is Forms functions, I don't know wherever so design is much more than that design is how you think and your product design is How you communicate it how just playing it and also how people will will interact with it. So this is Something that is really I mean, I just hope on next force for you We we search our opinion that we have more designers telling our their experiences on opensource software But this is key because if not, I think that open source will not be visible enough I will not have this critical mass that we all need for to to be like kind of success with our products And I think it's all thank you very much Yeah questions I Have a couple comments on the question so first of all When a friend I I'm a cartographer myself I've used a car to DB a little in the past but when a friend had to make a map with who has no Mapping experience had to make a map. I didn't think of car to DB right away. I thought of like, you know, Google Fusion tables and geo commons and we tried a few different things and ended on car to DB Because it's really the only thing that does what you do and you do it well And so I really like the principles of laying out a very easy entry point, you know And then being able to dig down and like use carto CSS. It's very well done Commend you for that. But having said that I take issue a little bit with you know, I get my hackles up Anyone's anytime someone says you can't think about projections And and to me it's you know a situation where you are in a position to be educating people Right about good design principles in particular in relation to cartographic principles Projections is a huge problem in in open source and in any you know modern, you know open source or closed source coding, you know web mapping stuff and So I guess you know in terms of making just for example making a core plus map on on web Mercator, right has some huge theoretical problems with it has some huge like problems with misleading concepts that you're communicating people so so Have you thought about like What you're building is a platform for education and I'm not talking about like teaching people the equations to create a projection You know, but like teaching people appropriate map design. Have you thought about it as in that from that angle that frame? Yes. Yeah, yes. Yes, we do so we started with web Mercator And we started to remove all complexity behind projections because we really want people to create maps in a really quick way So we can engage them because they are creating a lot of maps So then we can help them to improve them so projections is something that we are aware of and I Totally agree with your comment and it's something that we will we will take her of In the midterm, I would say that we will start working with I mean different projections We also want to to map data on the poles for example and we we know that we that with web Mercator you can't and and also to provide more More insights about which map would be fit best For your particular interest for your particular objective. So yeah, we will work on that No More questions Don't I put that projection thing in order to get more? You know more coming Didn't work. Okay, so thank you very much
community that there are not so many designers working on developing user interfaces or this is an interface to is a is a what is a building will start from from this So this is the geo industry is gonna change in the future So better that open source software is gonna change to the same piece of software We are gonna create that this is changing the way we perceive it So have to start like Worrying about how to design has some skills on the geo Thing that we wanted improve a lot the way that we are that we are and also we wanted to allow people To focus on we implement So why not to start on a more of our repos. This is how everything starts on for the for the past talk so one of the most have to think not only about the user interface not, I think that open source will not be visible maps So then we can help them to improve them so