The unrelenting progress of design in open source
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Number of Parts | 188 | |
Author | ||
License | CC Attribution 3.0 Germany: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/31747 (DOI) | |
Publisher | ||
Release Date | ||
Language | ||
Producer | ||
Production Year | 2014 | |
Production Place | Portland, Oregon, United States of America |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
| |
Keywords |
FOSS4G 2014 Portland22 / 188
7
10
14
15
16
23
24
25
28
29
33
37
39
40
43
45
46
48
50
56
64
65
69
72
74
82
89
91
98
102
107
111
114
118
128
131
132
135
138
141
143
147
149
150
157
158
161
164
165
166
173
174
175
179
185
00:00
Disk read-and-write headView (database)Point (geometry)Different (Kate Ryan album)Product (business)Open sourceMultiplication signGoodness of fitCategory of beingOffice suiteSystem callLecture/Conference
00:33
Computer scienceSoftware developerSquare numberUniverse (mathematics)TouchscreenRight angleUser interfaceDecision theoryObservational studyComputer configurationNeuroinformatikHacker (term)19 (number)Product (business)BitService (economics)Control flowAtomic numberCellular automatonLecture/Conference
02:11
Content (media)HypermediaTwitterComputer hardwareExtreme programmingInteractive televisionUser interfaceCASE <Informatik>Stress (mechanics)InformationDisk read-and-write headComputer animation
02:48
SimulationMaizeComputing platformTheory of relativityWeb-DesignerView (database)SoftwareInternetworkingComputer fileSet (mathematics)Row (database)Software developerBuildingUser interfaceCartesian coordinate systemProduct (business)Moment (mathematics)Key (cryptography)Open sourceProjective planeWebsiteGeometryObject (grammar)Texture mappingUser interfaceTerm (mathematics)CASE <Informatik>Tablet computerMobile appComputer programmingPosition operatorMathematicsExpert systemTesselationServer (computing)Universe (mathematics)Library (computing)Different (Kate Ryan album)Error messageNumberHypermediaBasis <Mathematik>Chemical equationSign (mathematics)PrototypeRange (statistics)AverageTable (information)ProteinEndliche ModelltheorieSlide ruleMedical imagingTheoryPoint (geometry)Order (biology)Right angleVideoconferencingComputer animationPanel painting
09:21
Sign (mathematics)Physical lawIntegrated development environmentRadio-frequency identificationPhysical systemSymbol tableWikiAreaNumberProcess (computing)Multiplication signComplex (psychology)Computer configurationSoftware repositoryBlackboard systemCASE <Informatik>
10:24
Type theoryVisualization (computer graphics)PolygonTraffic reportingCharge carrier
10:47
FrictionUser interfaceState of matterComplex (psychology)Dataflow
11:03
Client (computing)ImplementationTerm (mathematics)Computer fileWage labourNumberForcing (mathematics)Open setParameter (computer programming)Sampling (statistics)Basis <Mathematik>SurfaceScaling (geometry)Multiplication signEqualiser (mathematics)Point (geometry)Event horizonStatement (computer science)Chemical equationText editorExtension (kinesiology)Sound effectCellular automatonProduct (business)WindowBoom (sailing)Drag (physics)Order (biology)Drop (liquid)InformationComputing platformSequel1 (number)Vector spaceCodeCross-site scriptingArtistic renderingComputer animation
13:49
Lie groupBitOrder (biology)View (database)Level (video gaming)User interfaceCodeSoftwareDecimalMemory managementVideo gameSoftware bugGraph coloringText editorCuboidSingle-precision floating-point formatFiber bundleLine (geometry)AreaAtomic numberBasis <Mathematik>Lattice (group)Polar coordinate systemDemosceneSign (mathematics)Mathematical analysisProduct (business)BuildingSpacetimeAnalytic continuationDiagram
17:05
SoftwareForm (programming)Graph coloringOpen setOpen sourceProduct (business)Cellular automatonDecision theoryFocus (optics)Constraint (mathematics)Sign (mathematics)Functional (mathematics)
18:01
Web 2.0Texture mappingBuildingOpen sourceProjective planeNichtlineares GleichungssystemComputing platformRight angleComplex (psychology)AnglePoint (geometry)GeometryTable (information)Source codeMappingTheory of relativityObject (grammar)Goodness of fitPosition operatorPole (complex analysis)BitPredictabilityCore dumpTerm (mathematics)Order (biology)Inheritance (object-oriented programming)Multiplication signWindowPrisoner's dilemmaMereologyGoogolSampling (statistics)FrequencyGraph coloringCircleLecture/Conference
Transcript: English(auto-generated)
00:00
Okay, so Good morning, everybody. I'm Sergio Alvarez. I'm co-founder and head of product at CartoDB I have prepared more a kind of philosophical talk Something true there in this community that there are not so many designers here So I try to give you like a different point of view on
00:21
how we believe in the company that open source will will will evolution and And will 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
00:43
So we were like discovering the informatics and we were discovering like hackers and all this kind of stuff that never existed But that was cool enough to to be on films and books and so on at the end In the university After the university you put a sweet a tie and you become a like a real developer. No, no that kind of cool
01:04
Thing. Oh, yeah, but but the most important thing is that Even I studied informatics or computer science because I didn't believe there was another option for me because design study were not official I were really hard to find very good places that teach you how to design. I Realized now that it was a really great decision because I work in a team full of
01:25
engineers and Know how things work Below the design layer is very important once once you start designing a service or a product or a website So there is a quote by a teacher by a professor in the university. That is that in 19th century
01:43
Culture was defined by the novel 20th century culture by the cinema the culture of the 20th 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
02:01
Right. So is is is awesome 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 are changing how things work They are creating a different interface for for doing things
02:23
Twitter has things how people communicate how media publish content so they and this is an interface to you say So what is a different way to interact with? Technology content people or Google glass, which is more of the most extreme Use cases, right? It's a new device that you put in your head and you're you look a little bit dumb with it
02:43
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
03:04
So I think every single thing that you that you think on building will start from from this So this is the main goal for everything that we do now. So Our CEO Javi Javier, which is not here we were launching a developers program So he he did this kind of cool quote is like the geo is no one
03:24
It's no one application with a million buttons, but a million apps with just one button It'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 this technology So it's kind of important that we build interfaces adapted to those particular cases and
03:45
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
04:03
So I think that in the university again, I had the feeling that we were using open source because it was free We were stealing and we weren'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
04:25
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 Norse design that in Norse people so if we are competing with commercial solutions
04:41
We will have to start behaving like they do not in terms of sailing or in terms of hiring a lot of people or in Terms of whatever so we will start we will have to start designing products. We will have to start like Well worrying about how to design things. So this is a real use case. So this is a great year
05:01
I Read here is an Android application that allows you to do precision agriculture So you buy it for 1,000 bucks and and you receive a key at the farmer receive a key in their house We're we're a Bluetooth receiver a GPS antenna and an application and a tablet with an application installed in it
05:20
So the aggregate developer Did this and then he start sending it to people so farmers receive the key they blew all pieces together And they call support. Hey, this is not working So it's kind of the thing that you you expect when a farmer is trying to to interact with technology So we were like, hey, this is not working
05:42
Have you connected it correctly? Yes, I do. Have you switched it on? Yes, I do and so on so 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 we to state the software was set up
06:02
So if we if you switch it up It makes sure you switch it on it makes a sound if you just plug the GPS and then I makes another sound If you just plug 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
06:22
So this guy saved a lot of money by not having to go there And then take a look at what was what's going on with the software and the good thing the best thing is that this guy Was not it was not a designer. He's a developer. He is our lead developer in Carto DB he has the site as the site project and
06:41
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 problems. We are aiming to find solutions to particular problems So, yeah What we did with Carto DB, so we think we start thinking about Carto DB. We really wanted to to do like
07:03
different things so we we said We really didn't I mean we were not sat on a table. We were that and doing prototypes, but we thought a set of things that we wanted to achieve with the software that that Made made us to to create a design driving company because we our object is we're really focusing on people
07:26
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 objective for us was to have people that is creating or that is telling compelling stories
07:43
Important stuff so we wanted not only people that is that is that has some skills on the geo Thing we wanted journalist scientific people We wanted designers Storytellers wherever to use it to use a platform. So we needed to
08:00
To design it in a way that anyone like they do like they use Excel or another piece of software They could use Carto DB. So The first thing that we that we are trying to do is to remove our views between people and data By humanizing the relation that you have with the data. So nobody understand our next advice with with a 1 million rows
08:22
It I think it doesn't work in 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 going to change the world We're gonna improve a lot the way that we are that we are working with data
08:42
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 could query them in any moment to create applications of profit And also we wanted to allow people to focus on problem solving
09:03
We wanted to allow developers to build applications on top of the platform So they they have not to worry about maintaining a positive installation or servers or distributing tiles or wherever They can just focus on on solving a problem that they are experts on it. So
09:20
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 the first of all is that design for us it starts in the blackboard or even in a wiki. So
09:42
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
10:01
I mean sometimes we do but most of the times we we don't do it like this. We just Try different options and we just take the one that we likes more than we implement So why not restart on a more friendly environment for people that is not a skill like a designer Like it's a wiki page on the hub or a blackboard where we are although our ideas
10:23
So this is for example one wiki page on one of our repos This is how everything starts on carto DB is just a text and 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 He's but he doesn't know it. I think he doesn't know he doesn't want to recognize it. But yeah
10:47
So the second one is that the thing is improve the workflow we do that in 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
11:05
I have to say this is the disclaimer It's the only feature that the team has allowed me to call me to production actually, but it's the dragon 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 drag and drop it in your dashboard and it gets import
11:24
Awesome, right? Say yes. Yes, it's 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 very fancy house on the latest
11:43
Phosphorji on Denver and he was like, you know, what would be amazing if I could drag and 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 implementing a car to the maybe but it's one of the ones that people likes more
12:03
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 in Carto DB is based on sequel and Carto CSS So if you don't know how to how to code Carto 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
12:26
Improve it just coding in Carto CSS or implementing some of the awesome tricks that the statement could prepare for the for the past talk so One of the most important things is that for example We are now implementing vector rendering on Carto DB and one of the things that we could add to the mental rendering is mouse events
12:42
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 can flow effect So we are implementing that as a Carto DB extension So you can use it on the Carto DB editor, but you can also on the Carto CSS editor But you can also click some button and activate it
13:02
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 order in and so drag and drop another time so make it really easy, but also
13:21
Very scalable because you can always customize HTML that is powering your info window So if you want to use the wizard, you are not a technical people a technical user You guys just clicks a few patterns, but if you want you can go further 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
13:45
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
14:04
I mean if you if you are thinking on 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
14:24
So it's important to think that sometimes design is about deleting So one of the most important exercises that we do with CartoDB is about removing 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 necessary designing more or designing better
14:44
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's a lot Like if you see something that you like it a lot just copy it. So I mean but do it I mean
15:05
Do it do it. It's really good. So we copied that for example This is a slack is the is the software that we use for for it's like heap chat But cooler and more expensive, of course So this is like it's like has this heightened feature. That is really good that you code an XML an
15:23
Exa decimal color and it translates to a small box. So we say this is cool We should implement this in our Carto CSS editor So now when you code a 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
15:42
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 Which is a really horrible one. Oh, oh FF. Oh, oh, which is a really horrible one. Oh, oh, oh FF which is even worse
16:05
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
16:25
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 complete view of the thing. So this is this is very very important. So
16:42
my talk 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
17:00
Designed in a better way. So you just need to change a little bit your mind. So Just for concluding If we were designed to be at forefront of open source, we need to define it correctly. So I don't want you to define Design as colors typographies 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
17:26
It how you explain it and also how people will will interact with it. So this is Something that is really I mean, I just hope on next first for you We we search our opinion that we have more designers telling our their experiences on opens our software
17:43
This is key because if not, I think that open source will not be Visible enough will not have this critical mass that we all need for to be like kind of success Successful with our products and I think it's all thank you very much
18:06
Yeah questions, I have a couple comments in the question so first of all When a friend I I'm a cartographer myself
18:21
I've used Carto DB a little in the past But when a friend had to make a map with with who had no mapping experience had to make a map I didn't think of Carto 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 Carto DB because it's really the only thing that Does what you do and you do it?
18:42
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 Command 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
19:03
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
19:21
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
19:42
concepts that you're communicating people so so have you thought about like What you're building is a platform for education 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?
20:03
Yes, yes, yes we 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
20:21
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 care of In the midterm, I will say that we will start working with I mean different predictions We also want to to map data on the poles for example And we we know that we that with one market that you can't and and also to provide more
20:43
More insights about which map will be fit best For your particular interest for your particular objective. So yeah, yeah, we will work on that No more questions Come on. I put that projection thing in order to get more
21:01
You know more coming it didn't work, okay, so thank you very much