Merken

Pragmatic Lessons of Rails & Ruby in the Enterprise

Zitierlink des Filmsegments
Embed Code

Automatisierte Medienanalyse

Beta
Erkannte Entitäten
Sprachtranskript
and the and the other a parts so thank you for coming and this is the pragmatic lessons of realism revealing the enterprise on I
want to start off with mentioning a so I work for summer and and I doubt anybody in the room that police Peabody doesn't work for certain knows what that is is there anybody knows what is and 0 so there's a couple but so server is a health care company and we are not have our tag lines that we believe health care is too important to stay the same so we're a global and healthcare company trying to um facilitating change the way health care is delivered on you know specifically in the US that and that means quite a few things but we spend a lot of time working with hospitals Clinical providers in networks etc. providing intent various technologies on the most that you would see with things like electronic medical records and so on but and part of what I work on is the kind of a newer frontier for us which is
population health and so that is about trying to the focus on the care of populations as a whole and trying to the just the way that we approach health care especially in the US where we're trying to change from our health care system that mostly motivated by to pay for service where we want to move that you can't pay for care of my name is an buyer in my Twitter handles and biosphere so inclined it's not all that interesting but until free I've been with siRNA for over 17 years so that problem at me old a yes but I've been working on in a variety of technologies over that period of time and so I've been doing open-source development for most of that period of time I had the glorious fortunate misfortune of being a a member of the Apache harmony project if anybody knows that that is some it was a brief to attempt to create a open source J. Bian on and the coolest thing we got to do was be part of an android and then our being thrown out so that that that and work out so well but it so about what
we our today is kind of how we we've utilized rails in Ruby at siRNA hinted to kind of hard about that I wanted to give a brief history of what's and web application development servers look like I am and to start off with we can have to start with the beginning which is around 1999 which also have to be when I started working at server and a start at straight out of college and you know that my fancy computer science degree I know absolutely nothing about software engineering a what it really means to build software and at this point there really isn't doing anything with web development and we're doing a little bit so they've been experimenting with this on initial kind of where ification of I power chart which is 1 of services and solutions they called it you know gloriously enough Web power shot and because all of our charters most of power turn leads the end user portions of it are a C + + on windows and desktops the natural inclination was what we do that works with that so I I started building a C + + deal and throwing him into a as the and when I say if the I don't mean that cool the net stuff I mean the previous . net world where you did just as strange syntax but we don't know anything about
web development at the time and so I don't know that many people did but essentially most of the code look like this it was an enormous amount of code written in C + + deal URLs and it was literally writing HTML and sepals plus the sum amazing brainstorm that I had which wasn't ideas so unique was that we probably shouldn't put or HTML in the compiled code which actually put that in the case the and separator are concerned that was an amazing feat in on I feel like I was you know a key engineer on the corporation and so it turned out like that that really wasn't a thing and not too many people really
wanted that we don't really even know what we're really doing but and so as things evolve years later we started and utilizing or more job as everyone kind of does it at large enterprises and and so on you know people when it comes to job at at that time job was still little we started using Java Server was still a little bit of our assure you really wanna do that but it hadn't quite got to the point where job was the thing that nobody gets fired for using the and so we can work system that then we started doing various amounts of Java development using doing web development so we are pretty good at doing some that we're obviously using struts and just like everybody else so this is what you call job back in that day was job at to be and at that time you know I've been doing an enormous amount of job development so this was fairly familiar on you know anyone who's ever seen servlets instructs you know you know this looks like it was just the kind that's right and this was the beginning of what you know I think our keynote speaker referred to as the XML sit-ups this was even before then right we hadn't quite got to I got configure everything with you know x amount as that of all of the stars some offshoots of things so around 2009 from we had uh some some teams specifically this this repulsive health that was more focused on consumer kind of oriented stuff and so they started experimenting with Python Django and and so in 2009 this is and this is a good valid choice not that it's not about today yes that is just a different situation and so they start experiments with Python Django in this was a very interesting time that they kind of a smaller group but at that moment you know off on their own doing their own thing there's still lots of Java development happening lots of instruction and by this time your final struts to things like that all that pops up sort of concurrently I'm I can get this weird and assignment to go build it and a customer facing pseudo e-commerce store and so this is what we call the server store and and at that time I I was completely aware of what was going on with the Python world right and really you know quite understand what these guys were doing so i in item collaborate too much with them and and this was kind of set up as a somewhat of an experiment so and I just spent a moment said no what's the rest of the world doing him maybe I should try that well 1 of the things that I noticed the rest world was doing was rails and it was like well was just give that a try this is a very isolated piece of and software I can do what I whatever I wanted to do so at that moment and you start using rails it was me and then I got to hire a couple engineers who were straight out of college and add you know experience you the there like this seems interesting and cool so let's try doing that so that's kind of where our adventure began you we started doing a fairly standard Rails application it was simple rails here using on Ruby Enterprise Edition and we're using passenger reason mice equals a data store is a fairly simple monolithic systems and so that that works fairly well and and but over time we start to see that light as our our needs as a company started changing we actually needed to do much more and more have what I would call cloud-based development where previously this almost everything that we've been doing was found have packaged software so this is your traditional enterprise delivery of things where you package of all your software and you give it to your your client and they did taken hold for you know we can go right for you but we run for you an account of isolated way and so as that an evolution is changed to more of the software as a service we started meeting different in different technologies and this is where then we popped up into we needed to start doing on mobile development so about 2012 we start needing to do mobile development well what we found was that we didn't really understand that you know with a connected mobile application you really still need an application on the server side that kind of connects to your application stay on your iPhone and so on I can't I wrangled in our analysis I'd I kind of throughout that we should start using rails because I've been using this before and I think this would fit in a really nice Nietzsche spot here which is we're gonna build some web services to facilitate work are with applications need and so we can fit on a nice unifil realm that we could kind of quickly build these applications and it was very productive and easy to use and so we started building lots of i basically RESTful services to fulfill or I was that's behind the scenes those this is a very nontraditional kind of system in that and there's a lot of and the rails applications themselves didn connected databases directly they interacted through services on and i'm partially to blame for some of this but for some reason we decided to use thrift which if any of you are familiar with this is a binary Service protocol and RCP RPC mechanism so I would not suggest it to anyone the the so we built all these internal
services using thrift and so you had a real that's doing that at the same time we also started realizing we need to figure out how to do at deployment automation much better so this is where chef came in and 1 of the big I think drivers for chef was found it also used Ruby in terms of the way you define recipes and so on and so is actually have serendipitous 1st they're like well we've got all these these tools but if we can use some of the same language is a kind of helps us and work through things yeah and then I'll probably 6 to 9 months later I attacked with and working on the population health initiative which is what I'm response partially responsible for now and we don't we're became responsible for building what we call healthy intent healthy intent is our platform for providing population health services the software as a service and system part of that is delivering web applications and services and so it was fairly natural at that time so as to start using rails again I will build a web applications using rails will build our API using rails come behind the scenes instead of using thrift we drop that we still need to use a lot of job because we build a lot of internal tools using and Java and unfortunately or fortunately this year I think we have a lot of big data and and that really means you got to do and if you're working with who do you really working with jobs at as much as you want to not work with Java if you work with the do you're working without so to build services on top of each basin in those things we use JAX-RS on top of this we also define what we call blue steel and and some you'll get the joke there would be that we define what is essentially a HTML CSS and JavaScript Our framework for building applications quickly so that to some extent it's a little bit like bootstrap and it's essentially lots of components that have these that we can easily people together in kind of build up an application and the style this works the HTML this works on any interaction can of just works and also provides us with consistency so that's kind of where we are at today that's kind of the current state of what we're doing so we use rails and to do lots of web application development we use Rails to do lots of public service development and but it's not and everything that we use and so what I can point out some of the things that I think our somewhat unique to our environment and yeah as I've kind of spoken with people I don't I I a seemingly unique because I don't think they are totally unique I think people just don't talk about 10 years it's not paper cool in some some circles and so 1 of the big things that we really use Rails is just a single tool or tool well it's really but it's really a component in a very distributed system and so but this is Gavin very simple generalization of the way that healthy intent would look if you were to think of it from the top down and so we have a lots of rails instances running that manifest as individual applications and those those applications interact with lots of services and so those services that they interact with will be job a services some of them we've actually built using rails because there sort of a simple reference service for it's really just I want to have some kind of a specific domain of modeled and then I need a little database and then it's a nice little service and builds recently there the job of stuff we've got a lot of time database and solar and we use those in in parallel so it had this diagram doesn't do justice but we use them if you ever had use phase it's very interesting for doing you know key-value lookups but it's really not good at anything else and almost everything else you need to do is that anything else and so if you need a like search for something you know defining if you need an index right normally you know with a sequel kind of world where you use indexes and I do select know where lexical this you do lots of where statements you don't get that in each case so we use that solar to kind of help with that and use in in the wild would also see what people use elastic search in this kind of fashion and yeah we also do have cases where we use solar as kind of both it is the data store and the the query mechanism but it's not super important for this kind of context but obviously underneath that we've got this huge massive Big Data processing system and I've simply trivialized it from also because I really don't like big data i it's it's not fun so if you can avoid approach to justice and I unfortunately the and so to can give a little bit of scale in terms of what this really means the died at the top there avaliable 4 boxes but I'm within healthy intend that really represents I think something like 15 to 20 and actual projects and below that we're probably talking more like 20 to 50 and projects in a can of blossoms like that across our there's probably 50 to 100 rails projects that are all completely independent doing all kinds of interesting things and so and we got plenty of
usage at scale so 1 of the time 1 can unique aspect is how we talk about security release some of the requirements of security I don't think security is anything unique in terms of rails
development but we do have some some specific the requirements that I haven't seen manifest elsewhere sure they do just not talked about but we have this requirement around user event already and so in a in a clinical setting when you have is you know working on and working on some software in there taking their interacting with the system that has on health care data unit you you have to know exactly what they're doing every step of the way so every step that they do have to be audited and that order that have to be made available to you and the people running the system so in this case it would be I have on hospitals and physicians clinics etc. they have to be able to go back and say I need to know what this user did when they did it what they saw because mandate could have been doing something wrong and legally you can get into situations where I you know for malpractice yet to say well can you show me that this person didn't see this chart I need to go look do those having things and so we have to actually have a complete system where every single action that a user can take gets logged in order did and so we store that already in so this is kind of a and interesting security feature where we have to have this whole system where you know we can spawn off these events say this thing happened this thing happens thing happened real attract and it's it especially difficult or onerous thing to do but it does have a lot of complexity to your rails code that the application tends to be where you implement the auditing capture because that's where you actually know what the users are doing at lower levels it's all system-oriented so you don't know what the users doing and so is that a lot of interesting complexity and that you you figure out kind of interesting ways to add DSLs to you know your controller or model objects of the that's a well as a by-product of this action submit a view chart ordered event for this user account just capture simply
Bell another kind of interesting security feature that we've been kind of experimenting with a lot of In the past few years is really about Federated Authentication but I think people have seen this before you you know you when you've got I've got my application and I don't have my own identity I say I let you log in with Facebook or Google or on Twitter etc. I a Confederate my identity but in in our world Federated Authentication me is it's the exact same thing but instead of it being on Google or Facebook is client X has this sample provided that the bill of Active Directory and they've kind of got this weird system for doing login that doesn't really work but we do sample so it all work together on therefore if if you know what Samael is hopefully you know why capsules sarcasm going there but if you don't know it's is if you ever see it in like an hour fire something worse like a can you do some sound like you just leave no don't involve of and so we had to build on these this whole kind of federated sessions system where we completely separated that from from our are applications and so we can have a slick separation of concerns now where we have applications that interact with a I'm authentication session service and all we know about is that you have an authenticated session I really care about you know how your identity was logged in and what you meant with I just know you're valid user and I can deal with that but for such services they get a deal with integrating with all these variety of identity providers and none of them do the same it's all a terrible terrible experience that the so another
piece of security that I don't think is is completely unique but it is a variation on what you might you might generally approach so when it comes to authorization access control from you often hear about the terms may be like role-based access control redefine you know this person is a role like they're an owner or publisher or creator and you can have you have permission is that you do you based on that well in the health care around what we've got is we have a variety of things where it's sort of role but roles are much more arbitrary than that where so we can have use local group based you can define groups to be role that you can also can manages to find groups to be hi h I mean this really cool groups so that means I get to do these really cool things and so that happens there are quite a bit but what makes that much more complicated is that authorization also has to be based on data in the system it's not and this is where the the more complicated access control is that it's a user's relationship to data not users role that tends to be the more complicated more important security so a user's relationship to patient so say your doctor's relationship to you right they get to see your chart because they have a relationship with you another doctor the link it to just see your chart because they don't have a relationship with you so there are hundreds of these have database access controls that you have to try to model you have to try to work through where decreases fairly complicated situation where you have to have layers layers of complicated code words like OK do are they in this group can I let them do this and then do they have this relationship with the data should I allow them to do that but it is especially complicated because oftentimes that relationship isn't on is a direct and indirect and so it'll be a user's relationship to something like an organization and then that organizations relationship to from a patient so I get to see that patients data because the patients related to the or an unrelated to the Oregon so then we will get to do and this is an extremely kind of painful complicated thing that again this manifests in Oct rails applications because that's where we do a lot of our security because that's where the user meets the data the
that the other I think can have major aspects of things is really what I called developmental ecosystem and this is really so oftentimes in a smaller binary it's kind of a by-product of of just doing development but it's something I worry about what is really how engineers are productive and how they go do their job what are the tools you have for doing builds what are the tools you have for accessing libraries were the tools for documentation for all the libraries you're building how we make all that consistent how do I make sure your using the right libraries had make sure you're using the right code style and things like that but 1 of the things that I
think it that hold and for us is that so we have an enormous amount of time because we have so many projects rails projects that naturally used only to lots of gems and so we got hundreds of internal libraries that we have to manage and maintain and so obviously we have to have our own genome server and the veranda deal was trying to run your own like local or internal Gem server but this is this is not something that they've Ruby community does well this is also something that i've i've kind of bristled against for a very long time and so I mean I was for a long time is very much a Java developer and and as much as it's it's kind of gross and things like me then a kind of gross of maven you nailed it in terms of dependency management they really had they really works through all these concepts of are going have a repository not have namespaces and names for artifacts versions and then I'm and I define dependencies in the files tree and Ruby gems did a little bit of that they've got you know any inkling of that Bundler comes in and tries to use a more that bundlers evolving but it's still kind of a difficult patchwork of things and so this is still a very painful piece of making an eigen set up my Jim server but Bundler with multiple Jim servers is kind of weird and altered warn you about and you know there's this name is the same servers but I can help you fix that and so and this is kind of a very painful partner and I are I like to see help in in the community in terms of being able to have more of a distributed a mechanism for dealing with Jan management it's it's very very painful it of yeah 1 part
of a are developing a system that's kind important is is local builds and so this of as a lot of things that we builds our are kind of important for us and that so as a I and and I again ideas were enterprise but as kind of an enterprise the attack on we've got lots of these regulations and processes so the answer is an ISO 9 thousand 1 certified we have to deal with the FDA we have to deal with it but you get ethical obligations as well their legal obligations to get all these things and so we have lots of processes that are very general and generic to talk about k through do development you have to have all of these things that you do development to prove that you're doing it right that you're auditing it that you can recreate it we have you know frequent visits from not so friendly people that come in and say like 0 you're not doing this you know this step in your process right and it's extremely painful that those people come in and you pay them to come in and tell your terrible out of 3 if you never dealt with that of you no regulation process it's it can be a difficult thing and so so the topic's account is like so when we talk about like when you just work with the code when you're finished you you can just say like unfinished and it works right we actually have to go through and say like we have to make sure it's actually tagged correctly package virtually we have to make sure it's tested correctly you have to prove all of those things and so it isn't so much that you can just tested in that year you tests run you actually have to have the results of those unit test you have to be able to prove that you could recreate them and they have to be done on thing and so them as a side effect of that we've created this this kind of tool we call rollout and it's a little bit like the the really poor man's maven but essentially what we built is on each project it's a description of the project we felt the product Emil file that tells you what the product is its name tells you where its source code is tells you 0 is tells you all kinds of information and then we got a little tool that kind of wraps around things like 1 letter Ruby gems as well as on our . generation as well as running our 2nd test unit and then all kinds of other things that we want Poland so polling in my career and Bregman audits we're on a run of a dependency report so we can have so I fear the real dependencies and do all these things so that then we can run a builds off of our tags and an archive and it seems like it's kind of a trivial thing but it can be kind of painful and expensive if you don't just have it and it doesn't just work
and so speedy independence is 1 of the things that we found is you know working with was well that I think a lot of people are in no this is that you you've got to stay up to date I In and in the end we have in our world that can be interesting in that you know not everyone is moving very quickly and releasing very quickly so . siRNAs kind of an older software so suffers around for 30 plus years that development release cycles of measure in months in almost a year and so when you know a rails updates come out every few weeks whether those patches or fixes the subway at play it's it's got a whole new world and then if you add in all of the dependencies you start using right all your dependencies are releasing you code all the time and they're also really suffixes all the time if you don't stay up on that new code it'll break and so you you do not wanna wait till they go they released you 2 . 0 the guys the time for that it could be 3 months later and they release 3 . 0 I like got got some time ago do that that upgrades it's almost impossible or it is like the you know the lightning quick changes that can happen in these environments and are crumbles interval also you got to say today so fortunately we got pretty good at this almost all of our on rails applications in the health in 10 environment favored all running 4 to 5 or 6 but I think it's 45 but we've we've kept them up to date very quickly we move as fast as we can I and also at the same time say we like to trim them as fast as we can um you've got to keep a handle on the dependencies you cannot just say let everyone decide to be like I think this is a cool 1 many go do this and pick up that well both from a practical pragmatic standpoint as well as a development control standpoint you've got to that you're dependencies so we'll just go pick whatever we want you can just go out so in a circle in the standard because it's the latest coolest thing right on yeah like in JavaScript land like that's even worse off the I I I don't I don't get involved too much in that world unfortunately but I can imagine dealing with that where you got that you're dependencies so we spend a lot of time actually trying to understand them you know you know most of it is open source of energy so if you look at that advance like is if it's a community is the community you actively maintain it are they still developing it right you can just if it's 1 dude and that's that's a risk I can take a risk on a dependency just because it's cool right it actually has to be valid if 1 guy is a reflect either fall off the earth at or users be a bore right and the mitigation for that for us is if the guy falls off the Earth we'll use code right so that that effort you know chasing the of like is you understood builder remove it instantly so the moment that becomes you lost you on it and it's yours to deal with so this is something that we spend a lot of time with can't talking about the asymptotic this quickly some of the lessons and you have to be aware of culture shock so as cool as rails and Ruby are are people will hate it just because it's different and so if you had a job developers you'll see things like this a lot where I I even know you can do this really you could do private and in public again and this is like this is really cool of the loss I wouldn't just things like why do you need a factory the like the thus far was that this was of service factory was in a library was the rails app so is like creating an abstraction and is you didn't need the abstraction like everywhere you needed to do you could have just done new for the service I wouldn't find on and then hidden in here too is it's interesting to see this dot absence it like they actually built an extension to like string in Milam like all objects to add the acid which is really just the little question mark and feature you function already built in the Ruby ideas like now I don't trust it on a build all myself the played this happens layout army times we've seen this the other 1 is so
if you run into road this world where like if it's all static types right people just are afraid of dynamic typing they have no I'm a wide on you I never have understood this site funding Ruby it's just where it is fine JavaScript it's it's something right these are all their own thing but people spend a lot of time and energy writing hundreds of lines of code are like is this type string it was this tight had to this type would like to go through all this stuff is like it so you have to kind of be prepared to teach them that duck typing is OK and that loose typing is OK that like it might just be nil it's OK on final state there is a serious fear about this and and as a side I have I've tried which there also seems to be a weird fear this in the big data world to use that and there is this fear of light the text words like C a season J. sundresses plaintext verses and get a proto buffs Avro alone like and I'm not at I haven't completely defined decided this but I think that it's pretty much the same thing as static typing in dynamic typing right everyone who's I got got had these proto Boston Avros like these are all static typing people right uh like if you can this deal with J. Sun and C. is these you probably just a dynamic time but I think you'll you'd see that if you they in these in these big data conferences of technologies that people are using Python right all the users use user j some people that using scholar right it's Avros and improbable since it's a very interesting dynamic and ones if you have your types and I've got my data types and yeah I
on what are the other pieces that and and this is just a rails thing but I've seen a palpable on rails because of the way that when work on rails project a kind of encapsulates things is that there's a lot of misconceptions around reuse and so I C 3 things that I often bristle against and so what was what I call micro frameworks and this is lake where it's it's related to everyone wants to write infrastructure they at the other and maybe this might be just me talking about a server culture thing but I think you were a cool guy here right in the of the architecture and the infrastructure right like taking so cool if you're writing your features much ISO Tennessee this like I'm a create some frameworks within my Rails app that are gonna make developing this rails that the super awesome right and sometimes this is creating abstractions over the existing abstractions and kind of doing on things and the other pieces like it's lots of do not repeat yourself when it's really not repeating yourself all that much but act I think reuse can be tortured and over used and it really doesn't work at scale and what I mean by scale when I talk about healthy intent which is the organization in so I'm responsible as the prince logic for like the direction of about 300 or so engineers and architects the when you're dealing with 300 engineers and architects re-use is a little overrated right because each individual person thanks they are dealing with reuse and that they are creating the best thing but what happens is you get 300 snowflakes and they're all special and now want their own frameworks and talented like now I'm gonna do it this way because it's super cool to do it this way and to make sure this rails project as this way and then what i and obscene dealing with is that that this rails project that's a snowflake and Israel's product that's snowflake and the only difference between them is that 1 of them has domain model X and 1 of them is the main model what but all of the code is completely different so I can't move people around me like a taking you help me build this feature regular now I got things crazy I can believe they when did that they like but if they were just been doing it my way to be totally perfect of like well like that person over there saying the same thing about you so things like so this is something that happens in and I know that's silly enterprise from would at scale it happens a lot right so I don't know reviving any time but if there's questions I will come answer your questions you can come up we can chit-chat but I have 3 little reservations for the siRNA party at that you can get into any 1 really wants to get in I can give you 1 if you ask the interesting question tomorrow at as when the blues open up exhibit hall on tomorrow they're giving away a raffle for Jack gift card which if European cities can go Jack 2nd it your barbecue fix I believe that sigh 100 dollars so it's like more than you could you could deal with it and then I believe it's Friday were giving away a phantom drone was like a thousand dollar drawing its super awesome they and so I would suggest you losing it that but there's also people walking around the server engineering and uh a putties is no 1 else is wearing is so you know check those people also stuff again you won't talk to me thank you everyone I appreciate your time few you thank you if you do that to you stored
Unternehmensarchitektur
Hauptideal
Datennetz
Mathematisierung
Mereologie
Server
Unternehmensarchitektur
Gerade
Service provider
Computeranimation
Bit
Punkt
Integritätsbereich
Open Source
Web-Applikation
Softwarewerkzeug
Physikalisches System
Humanoider Roboter
Fokalpunkt
Frequenz
Computeranimation
Open Source
Benutzerbeteiligung
Dienst <Informatik>
Minimalgrad
Twitter <Softwareplattform>
Bildschirmfenster
Mereologie
Server
Web-Designer
Projektive Ebene
Geneigte Ebene
Softwareentwickler
Software Engineering
Informatik
Gerade
Varietät <Mathematik>
Leistung <Physik>
Orientierung <Mathematik>
Bit
Punkt
Gewichtete Summe
Momentenproblem
Applet
Kartesische Koordinaten
Binärcode
Abenteuerspiel
Code
Computeranimation
Demoszene <Programmierung>
Client
Web Services
Software
Prozess <Informatik>
Speicher <Informatik>
Softwareentwickler
Konfigurationsraum
Auswahlaxiom
Analysis
Trennungsaxiom
Kraftfahrzeugmechatroniker
App <Programm>
Protokoll <Datenverarbeitungssystem>
Datenhaltung
Physikalisches System
Quick-Sort
Dienst <Informatik>
Rechter Winkel
Evolute
Server
Web-Designer
Strebe
URL
Unternehmensarchitektur
Standardabweichung
Bit
Applet
Bootstrap-Aggregation
Web-Applikation
Formale Sprache
Kartesische Koordinaten
Fortsetzung <Mathematik>
Computeranimation
Komponente <Software>
Prozess <Informatik>
Parallele Schnittstelle
Phasenumwandlung
Kraftfahrzeugmechatroniker
Zentrische Streckung
Befehl <Informatik>
Datenhaltung
Gebäude <Mathematik>
Ruhmasse
Abfrage
Kontextbezogenes System
Dienst <Informatik>
Automatische Indexierung
Rechter Winkel
Projektive Ebene
Programmierumgebung
Instantiierung
Aggregatzustand
Quader
Interaktives Fernsehen
Systemplattform
Term
Framework <Informatik>
Demoszene <Programmierung>
Physikalisches System
Domain-Name
Software
Endogene Variable
Zusammenhängender Graph
Speicher <Informatik>
Softwareentwickler
Maßerweiterung
Widerspruchsfreiheit
Hilfesystem
Kreisfläche
Einfache Genauigkeit
Physikalisches System
Quick-Sort
Diagramm
Druckertreiber
Mereologie
Zentrische Streckung
Sichtenkonzept
Computersicherheit
Eindeutigkeit
Gruppenoperation
Kartesische Koordinaten
Physikalisches System
Term
Komplex <Algebra>
Unternehmensmodell
Ereignishorizont
Computeranimation
Übergang
Motion Capturing
Objekt <Kategorie>
Einheit <Mathematik>
Menge
Software
Gamecontroller
Ordnung <Mathematik>
Softwareentwickler
Ereignishorizont
TVD-Verfahren
Bit
Facebook
Selbst organisierendes System
Kreisring
Gruppenkeim
Kartesische Koordinaten
Login
Term
Code
Service provider
Computeranimation
Client
Authentifikation
Nichtunterscheidbarkeit
Stichprobenumfang
Rollenbasierte Zugriffskontrolle
Oktaeder
Trennungsaxiom
Autorisierung
Datenhaltung
Computersicherheit
Physikalisches System
Binder <Informatik>
Quick-Sort
Zugriffskontrolle
Dienst <Informatik>
Gruppenkeim
Twitter <Softwareplattform>
Einheit <Mathematik>
Gamecontroller
Authentifikation
Wort <Informatik>
Varietät <Mathematik>
Kraftfahrzeugmechatroniker
Namensraum
Bit
Dokumentenserver
Applet
Versionsverwaltung
Datenmanagement
Elektronische Publikation
Term
Binärcode
Computeranimation
Netzwerktopologie
Multiplikation
Datenmanagement
Rechter Winkel
Prozess <Informatik>
Eigenwert
Mereologie
Programmbibliothek
Programmierstil
Server
Projektive Ebene
Softwareentwickler
Resultante
Bit
Einfügungsdämpfung
Komponententest
Prozess <Physik>
Euler-Winkel
Momentenproblem
Atomarität <Informatik>
Kartesische Koordinaten
Computeranimation
Deskriptive Statistik
Einheit <Mathematik>
Prozess <Informatik>
Faktor <Algebra>
Kontrollstruktur
Regulator <Mathematik>
Einflussgröße
Metropolitan area network
Softwaretest
Prozess <Informatik>
Abstraktionsebene
Quellcode
Instantiierung
Biprodukt
Generator <Informatik>
Dienst <Informatik>
Rechter Winkel
Projektive Ebene
Information
Programmierumgebung
Standardabweichung
Zeichenkette
Subtraktion
Mathematisierung
Dienst <Informatik>
Code
Software
Programmbibliothek
Softwareentwickler
Maßerweiterung
Soundverarbeitung
Kreisfläche
Open Source
Stochastische Abhängigkeit
Physikalisches System
Elektronische Publikation
Packprogramm
Objekt <Kategorie>
Energiedichte
Patch <Software>
Dreiecksfreier Graph
Gamecontroller
Faktor <Algebra>
Unternehmensarchitektur
Verkehrsinformation
Web Site
Subtraktion
Selbst organisierendes System
Schreiben <Datenverarbeitung>
Geheimnisprinzip
Abstraktionsebene
Mathematische Logik
Unternehmensmodell
Code
Framework <Informatik>
Computeranimation
Eins
Hydrostatik
Domain-Name
Maßstab
Datentyp
Gerade
Zentrische Streckung
App <Programm>
Diskretes System
Abstraktionsebene
sinc-Funktion
Gasströmung
Biprodukt
Chipkarte
Energiedichte
Rechter Winkel
Server
Wort <Informatik>
Projektive Ebene
PRINCE2
Unternehmensarchitektur
Aggregatzustand
Zeichenkette

Metadaten

Formale Metadaten

Titel Pragmatic Lessons of Rails & Ruby in the Enterprise
Serientitel RailsConf 2016
Teil 75
Anzahl der Teile 89
Autor Beyer, Nathan
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/31544
Herausgeber Confreaks, LLC
Erscheinungsjahr 2016
Sprache Englisch

Inhaltliche Metadaten

Fachgebiet Informatik
Abstract Adopting Rails and Ruby for use within a large development organization was and continues to be an adventure. Rails and Ruby have been in use at Cerner for 7 years and over that time, their use has gone from niche technology used by a handful of people to a core platform used by hundreds. Along this adventure, we have learned many lessons and gained lots of experience. In this talk, we’ll share the interesting up and downs of this adventure in an effort to share our experiences and knowledge.

Ähnliche Filme

Loading...