Bestand wählen
Merken

Using Ember to Make the Seemingly Impossible Easy

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
I'm and the the I am replication and I worked
on as a breach is an analytics company company that helps publishers track how their content is doing around the Internet and especially social and then helps them predicts which are the content could possibly go OWL and obstinacy there it also predict which kind conic got violent help matching take actions that would make that up before I go further because I know it distracts some people of my accent is left originally had about a canadian mixed in there and some key at some point so when you hear me say things in a funny way that's that's what I have I I I I and he's represented as you may know I'm the princess and I were I worked with and is reason the in my days that I use they use us only in the past and I love where I love and the community and I'm so glad to see you basal in person today so how clock really is so almost like a 2 while what time in U.S. and so were looking at using to make this seemingly impossible easy so when Thomas talking about productivity in your day-to-day work we're looking at We're remembering stories of times when we had massive gains and partly because we tried and feature that was really really hard and seen would take forever and it's in that we couldn't do it within the time frame that we were given to do that but because of the nature of the nature of having a front jobs that that that that nature of having imitate around as it is allowed us to get orders of magnitude more productive productivity and deliver the features on time where the acquired Hatuel not sometimes it is sometimes it isn't but the point was that we deliver the features because of the nature of this this new kind of paradigm of computing and so as we're going to pieces some of them might not be relevant at all but the hope is to help you guys figure out in your own applications where you're avoiding doing something that's really hard because you've got your years of developer training and the like what type of those because it's really really difficult and that you will take another look at that in the light of Emirates you've maybe there's something else that can make it easy so that through a just war different examples of what we had so the
first one is migration which as
everybody knows is not a fun profits at all home and so said the story stage I was working at a start-up that was a social network for universities and the company decides that it has started to tend to do it and became a knowledge management company or the advice so completely different and we had to rewrite weighty at looked and felt and work and so we had this massive 4 year old code base that had a bunch of you know J. queries to rails to code built by developers from over 10 different countries were to and it was kind of impossible for us to do that so we decided to build the funding for the new ballot in amber and so we did that leaving the back in the same users and other base and then discuss how different 8 months later this I really really really the rails to have any to get some more modern so it's not a switch over and put all our new clients on a new wills 3 up and because the Mbarara had just changing not new we rebuild the whole them rep as well and so now we had this new thing was a rap but because we had which feature parity you just getting Euclides now once we left the all kinds all that's we've migrate them when everything was the same 8 months later but it's time to my duties users and they were itching g going in and really what a new feature the stuff that was showing the cool stuff we built in the new Member and so this is going to be hard to move things from my sequel rails to stuff that was living in do all over the place international clean amber posts world so we had a consultant and after a month of installing different database mapping tools internal pull 1 database the other and pull things from had do down it's something that could be mangled right he threw his hands up and give up half and just left with 3 days before we promise or what class they be on the new thing so that left me with the migration due in 3 days which somebody was enabled to clean a month and terrified so while pondering through that throughout the entire day had a liberally in my own head and trying to figure it out I think it was in the shower when she came to me that it was actually a really easy solution to this both apps were wraps and they will both data back so if you look at the the 2
different models for with the old was an item the new 1 was opposed they kind of that be words had me change the sterilize but essentially I had this common interface worry at active model sterilizer could actually turn what was an old dude stuff into abilities on that looked almost exactly the same way I knew I was expecting Jason and so the only thing I really had to do was
going right a script the pretended I was a user of the so this is the the you know the production create method which is take the rap Ramdas pass it to a creator object that just builds up the object really nicely in the data that and so my script I just had to pretend was in the database into stored up find on those items and then pass the Mormon doing the kind of stored up great record that said and with that and so by writing this code and a lot of you know big city things help the map over I was able to do the entire migration within 3 or 4 hours completely just because having data provide this natural interface that was the same in both you know again most people aren't going from Hambrecht and brackish of but you get the point where the connections to really easily animate the migration and natural
science and thinking of of where data could go from this because EURAC is now built in a way that it has to be able to send it in a nice way back and forth you consent to other places so another thing that we did often was we would have multiple wraps the company continued to put that many times and as such were able to just still uses same back and start a new Embraer quickly and all the code that would create these objects and items we wanted to do was write down to just be sent to a different at same thing with search we want full-text search we just use 0 is the central up to an Elasticsearch shows that science and we had that cashing in the wars thing so thinking now that your data isn't live in a do or Cassandra will places we have mechanisms that pulling out and put them in a format you can push them to different places
have so I'm going to be talking about the reader and with this Remember Symp rates she is unless company of to help to publishers to understand the story behind their data so as you can see the screen we have many visualizations like the wheelchair in areas so this thing was
our choice of schools to use to 4 of their visualization and it worked pretty well box did by these 3 is 8 of as I was wearing so as your application grows in the it turns out display could Israel is a life and all of the this 1
that 1 is that you have to learn a lot about these really to be able to make a great visualization so for entry did a little task they need disease but is it good at all so this reason is just that the other for him at the expense comes up today by the way that we would be
so how we solve the problems the answer is No. component so as you can see the last time a component there is this the code which is in keeping encapsulated in a component so and it was our designer indeed they don't have to care about they don't have to learn about the city at all because it is encapsulated so that means there are the major OS save their time to focus on word there's like over designer the chain more focused on like make type type freely in the and he can play more the apple of 3 in the so the thing
that I think this is an example of these 3 the wall chart with a component if you want to bring to all this is the same as being so all you can do but it is only right side there's some escape code what it can do is divide it component and enter the code into our component and left side there is the bars sciences template you can just have 1 line of code it will alter role as a tool of charts so if you want to add more to assert you can just you can just copy that line of 1 line kind of code in Templin interspace Serial ATA on other bulletin
so why should I use the 3 remember because it is in that it is very easy to add from solid to a components like the 3 and back textured helps me to think of the suppression concern like data and on that makes me to focus on data and more about this story which is the main goal of the
association this is 1 of my favorite favorite coat value that in town and novel uncompressed frameworks are designed to last you in the right direction so I think Amber is a framework for all we in this we all the 3 for devs attention is that this is a library not framework so we use a merchandiser recruit this the code in the right direction and that's true I have been
working at some reach for close to 6 months now and I still can't make a straight line in the 3 at all and have and I've just able entirely effect around all the other code our without touching and just offstage and helping and so the next piece and is 1 that Tonya who have actually already introduced its the divine up and so this is the story is courtesy of the amazing domestic get over time as she had I think it was 3 months to build the front in Vine at and because mine was a mobile-first application and they have a web app and all that she was almost entirely responsible for coming up with it from scratch and two-sided remember without having known member before so a 3 month use learning in which she has to create this application and you know Thom you if it looks like a simple it's quite complicated with other pieces of but the most complicated part of the AT actually is as guardian infinitely scrolling list of video elements and browsers really don't like video elements at all you put a couple of video tags into anywhere with Chrome Endicott's brought to its knees so the genes' now I had to come up with a way of making this thing that is relatively impossible and even more unbalanced
so 1st we started with a bang your head against the wall to optimized and a bunch of metal talk about some ways we can optimize this is just kind of an order of magnitude past optimization that she was filing above the current you try to get them to fix things out but that wasn't going to work so instead she was able to use amber and decide not actually play the game at all and only ever just ran a 1 video so if you look at the
1 and it works and my encourage you guys that you go through it you can scroll through an everything's feels smooth by the entire time you would never think that it was that the video and the way she does it she has a mind controller that has reference to this buying view that contains the and this is some arbitrary barrier then when the post are created these are just images they're not the posters for the because again even the post labbadia playing will kill come quite quickly they're just pictures and they told by control hand here as they scroll and the top thing they then told by mental ahead and the top the page give me a video at which point the line controller which is also doing other crazy things like because it has a list of the post users by offering a once performed after so by the time she gets there they're ready to play buffered loaded and just switches out that post you for its BindView which is a video with great video and it's playing and you can scroll up and down back and forth and it's just maintain all the state would be normally don't heavy back in the controller and just switching of non path it needs women it's happened thinking forward you know if we think of so looking
at the way that she works you know in the see if I can gesticulate wildly over here and at the top we have you know the average mitosis the really dumb object the optimized image and then when concerted they say hate Mr. mind-control around here of the take care of me and then when they get the top interest since I want to play and the mind control of their has a play function which it's got this pre buffered image as P of video that it just spits back and the application and places and then when it's a bus stop playing my natural pulls it back out and replace it with the image so you'll here have that 1 the on the screen at any point in time
use this idea of swapping outdoor from old heavyweights lightweight objects is something that and yet he is actually a lot member of the list you have for me is a great example where it's only rendering the things that you see on the page as you scroll becoming garbage collector once in the top and his reign is a new 1 so you can actually have an infinitely scrolling lists not the like Pinterest style just a very very very long page that thing is paginated when the browser starts to cry on actually becomes infinite because you just clear out the door and so when we're putting our entire French and application into your browser we need to be aware that we actually have these tools available to us to just remove things and put them back in when we need to and the architecture of Russia provides us with tools are quite easily and comfortably so the
lost 1 that I want to go into is this idea of 2 applications in 1 so some breach has a report section where publishers thing going in and they can look at the data that can filter by date the categories the tags come up with these kind of insane reports that they might need to to give some people the organization to show them how this conference during however they want maybe settings people in your organization and do not have access to some preschool it on a given when dealing with these logins for these other users so what great public report to the king to share your role with which would be more fine great except our hapten handle authentication goal authentication is handled by vise before we get in the act this was strategic because we actually that authentication therefore multiple different applications so we really didn't feel like we were unable to come up with a way of to go to the app suddenly be public suddenly privately had to be reckoned got that your
so the the 2 ways that we 1st thought of solving this kind i.e. way was well we just making you at and that would work but in a different route with very similar coding that would show the
reports of but again if you look at how similar the public and the private report pages are their close to identical and I would just be a massive amount of code duplication which makes a very sad and bugs and all sorts of things as the other 1
was biting the bullet action moving the vindication into the rapid self which I know a lot of people here the like ended that on the bed for this feature it really was waiting area left and again with answers about other parts of of our infrastructure as we really didn't have that option available so the option that I ended up taking
was just see how well in of doing was OK we just had another rail for out that wasn't authenticated and purse erupted act up there and then just include another job supplied with a new router so this new router just had that shit report page
that in a 2nd piece of repetition adjust which we got stuck underneath the bottom of the of the other record was you know a new application templates get that brains and the black I just the controller needed for this 1 piece and any application which no was it and so were able to create this public out with just this code that you see on the screen and 0 for like you know my develop a sense like tangling being like no you shouldn't do that his then it's a terrible way to go about things and I agreed that it works and we have a public out yes we're sending the public away more jobs the matching need but they have it and it didn't take long to do and you know I staff goes into the talking but of by tomorrow the bull tools are coming that will actually allow us to do
this for real and without hacks you're thinking of in this world we're sending our entire application to a browser we can send different types of people in different applications entirely batwing applications will side you know to do that yet which lead me spinning up different machines and copy things between them and kind of doing it in front of us for this week is decide no what right you on what kind of user you we will send you this compile piece of jobs if you're a manager you get the setting screens at such etc. If you not a manager we just don't compile those screens into the JavaScript that gets into so your code no longer has these if current user . is manager do block it's just this uses manager of course because this is the jobs report that they have the same thing with premium or paid clients right if you have people who have access to free stuff don't give them the page suffered step not sending up the browser and certainly the bull tools aren't there yet but I'm able to lean very heavily on staff in New York City and make sure that when there is available we can get rid of that but the moment again it's this idea of companies but up now that is a light week thing that you can just put places where you actually be pushing other pieces around the code so that's kind of
more different pieces and we had a few that we can talk about the 1 afterward but essentially again the thing is these are toss it seemed really hard to us maybe they aren't tossing you would want accomplished but they seemed closer possible and by thinking through this new different paradigm we were able to fashion victim takes them and come up with a little of the feature on time and features that works more somebody in the day there would've been 2 inches away because we had the ability to do new things with Amber
and that thing here I'd like to say thank you again the genus of for Gaussian some examples in talking us through how our work I'm really sorry about butchered how it actually works out but I think I got the annotation and the pants for helping us make the slides look at it thank you the the world at the beginning of the the might occur and the
Subtraktion
Wellenpaket
Punkt
Rahmenproblem
Natürliche Zahl
Gruppenoperation
Kartesische Koordinaten
Computerunterstütztes Verfahren
Analytische Menge
Biprodukt
Internetworking
Videokonferenz
Datentyp
Datenreplikation
Programmierparadigma
Größenordnung
Inhalt <Mathematik>
Softwareentwickler
Schlüsselverwaltung
Hilfesystem
App <Programm>
Subtraktion
Datentyp
Elektronische Publikation
Gewicht <Mathematik>
Datenhaltung
Dreizehn
Klasse <Mathematik>
Fortsetzung <Mathematik>
Wiederkehrender Zustand
Migration <Informatik>
Datensicherung
Code
Mapping <Computergraphik>
Client
Datenmanagement
Gerade Zahl
Migration <Informatik>
Grundraum
Schreib-Lese-Kopf
Einfach zusammenhängender Raum
Punkt
Natürliche Zahl
Datenhaltung
Biprodukt
Code
Mapping <Computergraphik>
Objekt <Kategorie>
Informationsmodellierung
Datensatz
Migration <Informatik>
Skript <Programm>
Wort <Informatik>
Schnittstelle
Caching
Objekt <Kategorie>
Kraftfahrzeugmechatroniker
Flächeninhalt
Visualisierung
Mobiles Internet
Dateiformat
Migration <Informatik>
Bitrate
Code
Touchscreen
Videospiel
Quader
Datensichtgerät
Mathematisierung
Kartesische Koordinaten
Frequenz
Task
Visualisierung
FLOPS <Informatik>
Compiler
Auswahlaxiom
Kartesische Koordinaten
Cliquenweite
Komponente <Software>
Domain <Netzwerk>
Verkettung <Informatik>
Code
Mailbox
Maskierung <Informatik>
Datentyp
Serielle Schnittstelle
Wort <Informatik>
Zusammenhängender Graph
Visualisierung
Template
Gerade
Code
Assoziativgesetz
Architektur <Informatik>
Framework <Informatik>
Code
Richtung
Komponente <Software>
Lesezeichen <Internet>
Framework <Informatik>
Funktion <Mathematik>
Rechter Winkel
Code
Fokalpunkt
Programmbibliothek
Zusammenhängender Graph
Programmbibliothek
Geheimnisprinzip
Quellencodierung
Soundverarbeitung
Minimierung
Browser
Web-Applikation
Element <Gruppentheorie>
Abgeschlossene Menge
Kartesische Koordinaten
Mailing-Liste
Element <Mathematik>
Code
Videokonferenz
Data Mining
Videokonferenz
Spieltheorie
Mereologie
Größenordnung
Gerade
Schreib-Lese-Kopf
Lineares Funktional
Sichtenkonzept
Punkt
Kontrolltheorie
Kartesische Koordinaten
Mailing-Liste
Videokonferenz
Homepage
Videokonferenz
Objekt <Kategorie>
Gamecontroller
Gamecontroller
Bus <Informatik>
Bildgebendes Verfahren
Gerade
Touchscreen
Feuchteleitung
Aggregatzustand
App <Programm>
Kategorie <Mathematik>
Selbst organisierendes System
Browser
Mailing-Liste
Kartesische Koordinaten
Login
Homepage
Unendlichkeit
Objekt <Kategorie>
Menge
Authentifikation
Garbentheorie
Computerarchitektur
Speicherbereinigung
Verkehrsinformation
Authentifikation
Gewichtete Summe
Codierung
Ruhmasse
Abgeschlossene Menge
Routing
Quick-Sort
Code
Verkehrsinformation
Programmfehler
Homepage
Flächeninhalt
Authentifikation
Prozess <Informatik>
Mereologie
Gruppenoperation
Router
Hacker
Verkehrsinformation
Homepage
Konfiguration <Informatik>
Subtraktion
Freeware
Momentenproblem
Pay-TV
Browser
Stab
Template
Kartesische Koordinaten
Code
Homepage
Virtuelle Maschine
Datensatz
Client
Datenmanagement
Prozess <Informatik>
Code
Datentyp
Minimum
Gamecontroller
Pay-TV
Hacker
Touchscreen
Rechenschieber
Offene Menge
Komponente <Software>
Task
XML
Programmierparadigma
Gebäude <Mathematik>
Dialekt
Visualisierung

Metadaten

Formale Metadaten

Titel Using Ember to Make the Seemingly Impossible Easy
Serientitel EmberConf 2014
Autor Kim, Heyjin
Malan, André
Lizenz CC-Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben.
DOI 10.5446/35001
Herausgeber Confreaks, LLC
Erscheinungsjahr 2014
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract The fact that Ember is different to everything else out there means that there are things you can do with Ember within a couple of hours that would take days to accomplish in other frameworks. The Ember community is going to have a lot of fun over the next few years discovering all the innovative ways that they can use the platform. We will highlight some of the awesome hacks that we have found and hopefully inspire you to look deeper into your own app and see what crazy things you could be doing.

Ähnliche Filme

Loading...
Feedback