Ruby Conference 2015: Lightning Talks

Video thumbnail (Frame 0) Video thumbnail (Frame 8351) Video thumbnail (Frame 16333) Video thumbnail (Frame 22648) Video thumbnail (Frame 24693) Video thumbnail (Frame 26682) Video thumbnail (Frame 29370) Video thumbnail (Frame 31112) Video thumbnail (Frame 39220) Video thumbnail (Frame 40980) Video thumbnail (Frame 42685) Video thumbnail (Frame 44502) Video thumbnail (Frame 46170) Video thumbnail (Frame 51116) Video thumbnail (Frame 52790) Video thumbnail (Frame 54487) Video thumbnail (Frame 56121) Video thumbnail (Frame 58861) Video thumbnail (Frame 60588) Video thumbnail (Frame 62333) Video thumbnail (Frame 64336) Video thumbnail (Frame 66771) Video thumbnail (Frame 68833) Video thumbnail (Frame 77810) Video thumbnail (Frame 79493) Video thumbnail (Frame 81329) Video thumbnail (Frame 84565) Video thumbnail (Frame 87456) Video thumbnail (Frame 89723) Video thumbnail (Frame 91757) Video thumbnail (Frame 100328) Video thumbnail (Frame 112747) Video thumbnail (Frame 116779) Video thumbnail (Frame 118921) Video thumbnail (Frame 124854)
Video in TIB AV-Portal: Ruby Conference 2015: Lightning Talks

Formal Metadata

Ruby Conference 2015: Lightning Talks
Title of Series
Number of Parts
CC Attribution 3.0 Unported:
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.
Release Date
Confreaks, LLC
Production Place
San Antonio

Content Metadata

Subject Area
Installation art Point (geometry) Open source Code Pseudonymization Multiplication sign Real number Projective plane Expert system 1 (number) Sound effect Line (geometry) Coma Berenices Data management Process (computing) Voting Compiler String (computer science) Touch typing Authorization HTTP cookie Series (mathematics) Freeware Library (computing)
Point (geometry) Computer program Group action Server (computing) Enterprise architecture Link (knot theory) Open source Computer file Code Gradient Multiplication sign Source code Translation (relic) Online help Function (mathematics) Menu (computing) Product (business) Formal language Neuroinformatik Different (Kate Ryan album) String (computer science) Touch typing Software testing Data conversion Website Physical system Default (computer science) Email Touchscreen File format Projective plane Stress (mechanics) Plastikkarte Line (geometry) Cartesian coordinate system Hand fan Tablet computer Type theory Web application Arithmetic mean Googol Process (computing) Compiler Website Right angle Family Row (database)
Stapeldatei Complex (psychology) Greatest element Randomization Enterprise architecture Service (economics) Observational study Open source State of matter Multiplication sign Function (mathematics) Parameter (computer programming) Computer programming Number Element (mathematics) Web 2.0 Length of stay Hypermedia Different (Kate Ryan album) Single-precision floating-point format String (computer science) Program slicing Encryption Software testing Information Process (computing) Endliche Modelltheorie Personal identification number (Denmark) Physical system Default (computer science) Enterprise architecture Parsing Execution unit Software developer Computer file Line (geometry) Process (computing) Hash function Personal digital assistant String (computer science) Key (cryptography) Figurate number Resultant
Web 2.0 Enterprise architecture Dependent and independent variables Process (computing) Different (Kate Ryan album) Bit Encryption Drum memory Control flow Product (business)
Computer file 40 (number) Real number Decision theory Multiplication sign Workstation <Musikinstrument> Fitness function Formal language Vector potential Category of being Arithmetic mean Word Blog
Meta element Group action Constraint (mathematics) Code State of matter Software developer Multiplication sign Electronic mailing list Planning Flow separation Formal language Sound effect Mathematics Type theory Software Spherical cap Lie group Radio-frequency identification Blog Right angle Software testing Library (computing) Computer architecture Row (database)
Revision control Divisor Blog Electronic mailing list Text editor Software testing Computer font Computer programming Spacetime
State observer Metric system Code Multiplication sign Sheaf (mathematics) Coroutine Port scanner Water vapor Computer programming Coefficient of determination Blog Semiconductor memory Hypermedia Videoconferencing Circle Error message Social class Metropolitan area network Software engineering Software developer Special unitary group Term (mathematics) Complete metric space Checklist Arithmetic mean Process (computing) Internetworking Telecommunication Software testing Pattern language Procedural programming Quicksort Metric system Dataflow Beat (acoustics) Backup Game controller Student's t-test Checklist Login Machine vision Field (computer science) Power (physics) Number 2 (number) Frequency Moore's law Internetworking Term (mathematics) Group code Reduction of order Representation (politics) Software testing Scale (map) Standard deviation Matching (graph theory) Scaling (geometry) Physical law Code Planning Coroutine System call Power (physics) Word Error message Visualization (computer graphics) Personal digital assistant Factory (trading post) Point cloud Family
Greatest element Functional (mathematics) Arm Multiplication sign Computer Parallel port Plastikkarte Single-board computer Rule of inference Neuroinformatik Number Power (physics) Moore's law Pi Voting Computer engineering Reduction of order
Rule of inference Distribution (mathematics) Group action Reduced instruction set computing Block (periodic table) Parallel port Web browser Parallel port Neuroinformatik Power (physics) Text editor Bounded variation Computer architecture
Point (geometry) Reduced instruction set computing Serial port Primality test Distribution (mathematics) MIDI Prime number Computer programming 2 (number) Neuroinformatik Read-only memory Befehlsprozessor Core dump Macro (computer science) Punched card Pressure Social class Chi-squared distribution Execution unit Serial port Link (knot theory) Touchscreen Parallel port Menu (computing) Core dump Line (geometry) Fermat's Last Theorem Uniform resource name Universal product code Kerr-Lösung Fingerprint Resultant Electric current Row (database)
Serial port Greatest element Matching (graph theory) Primality test Quantum state Software developer Multiplication sign Parallel port Maxima and minima Parallel computing Line (geometry) Coma Berenices Parallel port Type theory Moore's law Bit rate Tower Blog
Point (geometry) Key (cryptography) Observational study Code Digitizing Strut Letterpress printing Online help Line (geometry) Parameter (computer programming) Open set 19 (number) System call Theory Value-added network Word Hash function Factory (trading post) Speech synthesis Data conversion Object (grammar) Data structure Block (periodic table)
Pointer (computer programming) Different (Kate Ryan album) Multiplication sign Source code Projective plane Letterpress printing Instance (computer science) Mereology
Expected value Process (computing) Building Multiplication sign Set (mathematics) Letterpress printing Maize Species Office suite Line (geometry)
Torus Building Open source Letterpress printing Ultraviolet photoelectron spectroscopy Online help Lattice (order) PRINCE2 Limit (category theory) God
Synchronization Multiplication sign Virtual machine Letterpress printing Bit Right angle Disk read-and-write head Service-oriented architecture Disk read-and-write head Process modeling
Point (geometry) Weight Right angle Table (information) Mereology Software development kit Spacetime
Point (geometry) Telecommunication Hydraulic motor Right angle Cartesian coordinate system Mereology Family Spacetime
Point (geometry) Suite (music) Group action Different (Kate Ryan album) Software developer Test-driven development Spacetime
Point (geometry) Building Group action Touchscreen Code Software developer Multiplication sign Line (geometry) Mereology Disk read-and-write head Medical imaging Causality Video game Software testing Flux Row (database)
Point (geometry) Sequel State of matter Multiplication sign Debugger Cartesian coordinate system Subset Front and back ends Data model Type theory Mathematics Message passing Personal digital assistant Energy level Right angle Quicksort Endliche Modelltheorie Block (periodic table)
Group action Functional (mathematics) Greatest element Mobile app Multiplication sign Set (mathematics) Online help Frustration Disk read-and-write head Theory Formal language Twitter Wave packet Expected value Mathematics Latent heat Nichtkommutative Jordan-Algebra Physical law Software testing Process (computing) Service-oriented architecture Tunis Social class Area Domain name Matching (graph theory) Software engineering Frustration Projective plane Feedback Data storage device Process capability index Theory Binary file Formal language Arithmetic mean Data management Process (computing) Internet service provider Video game Website Speech synthesis Personal area network Pattern language Right angle Whiteboard Game theory Pole (complex analysis)
Metropolitan area network Direct numerical simulation Sign (mathematics) Mobile app Dependent and independent variables Service (economics) Computer cluster Logic Internet service provider Website Cartesian coordinate system System call
Intel Mobile app Dependent and independent variables Cartesian coordinate system Statistics Event horizon Uniform boundedness principle Sign (mathematics) Operator (mathematics) Website Video game Service-oriented architecture Message passing Error message Physical system
Mobile app Key (cryptography) Open source Block (periodic table) Multiplication sign Control flow Cartesian coordinate system Event horizon Demoscene Uniform boundedness principle Mathematics Process (computing) Average Queue (abstract data type) Website Service-oriented architecture Office suite Service-oriented architecture Message passing
Point (geometry) Classical physics Complex (psychology) Group action Greatest element Software developer Code Feedback Number Writing Avatar (2009 film) Goodness of fit Software testing Social class User interface Touchscreen Dreizehn Kolmogorov complexity Software developer Feedback Complex (psychology) Avatar (2009 film) Pointer (computer programming) Interface (computing) Endliche Modelltheorie Object (grammar) Programmschleife
Point (geometry) Computer file Code File format Multiplication sign 1 (number) Line (geometry) Entire function Graph coloring User profile Sample (statistics) Root Cuboid Object (grammar)
Dot product Touchscreen Computer file Code Real number Multiplication sign Similarity (geometry) Web browser Function (mathematics) Menu (computing) Computer Web browser Web 2.0 Goodness of fit Process (computing) Profil (magazine) Fiber bundle Reading (process)
Complex (psychology) Source code Price index Database Real-time operating system Open set Client (computing) Front and back ends Data model Sign (mathematics) Hypermedia Single-precision floating-point format Local ring Social class Computer icon Mapping Web page GUI widget Sampling (statistics) Electronic mailing list Bit Mereology Message passing Software framework Clef Writing Directed graph Web page Sequel Open source GUI widget Computer file Boilerplate (text) Data storage device Rule of inference Authorization Energy level Computing platform Authentication Default (computer science) Code Voltmeter Login Parity (mathematics) Cartesian coordinate system System call Web browser Compiler Uniform boundedness principle Maize Personal digital assistant String (computer science) Code State of matter Multiplication sign View (database) Decision theory Voltmeter Repeating decimal Mereology Formal language Web 2.0 Uniform resource locator Query language Software framework Endliche Modelltheorie Extension (kinesiology) Vulnerability (computing) Scripting language Adventure game Source code Data storage device Menu (computing) Mechanism design Repository (publishing) Right angle Online chat Row (database) Mobile app Game controller Server (computing) Authentication Web browser Hand fan Field (computer science) Prototype Read-only memory Robotics String (computer science) Uniqueness quantification Validity (statistics) Debugger Boilerplate (text) Projective plane Database Blog Password Synchronization Hydraulic motor Routing Local ring
Satellite User-defined function Mashup <Internet> Suite (music) Context awareness Length Multiplication sign Source code Counting Mereology Computer programming Data transmission Formal language Estimator Bit rate Different (Kate Ryan album) Position operator Social class Programming language Software developer Point (geometry) Feedback Electronic mailing list Student's t-test Mountain pass Arithmetic mean Data management Right angle Point (geometry) Metre Functional (mathematics) Feedback Translation (relic) Markov chain Student's t-test Streaming media Automatic differentiation 2 (number) Twitter Well-formed formula Energy level Utility software Loop (music) Dependent and independent variables Key (cryptography) Forcing (mathematics) Projective plane Diffuser (automotive) Markov chain Word Estimation Iteration Library (computing)
Probability distribution Mashup <Internet> Mobile app Table (information) Closed set Software developer Feedback Markov chain Open set Content (media) Neuroinformatik Formal language Twitter Revision control Web application Word Exact sequence Chain Authorization Right angle Musical ensemble
Area Mashup <Internet> Building Software developer Execution unit Similarity (geometry) Markov chain Word Process (computing) Authorization Factory (trading post) Energy level James Waddell Alexander II
Point (geometry) Group action Software developer Euler angles Multiplication sign Real number Student's t-test Mereology Twitter Facebook Hypermedia Software James Waddell Alexander II Position operator Taylor series Software engineering Inheritance (object-oriented programming) Software developer Physical law Moment (mathematics) Electronic mailing list Stress (mechanics) Student's t-test System call Data management Process (computing) Web-Designer Video game Whiteboard Quicksort Local ring
Process (computing) Multiplication sign Website
a i.
a. a lot of money is like a hurdle aluminium years the author of the realist utah real i'm i have two things said yesterday i have two things to mention one of the things i'm working right now is a series of prerequisite tutorials under the brand to learn enough to be dangerous starting with learning of command line to be injuries so the first thing i need is newbies if you're in new york. you know newbies i am looking for newbies to help me work on this series if you have for prayer project was its leading all the way up to the are going to toil the second thing is that if you're an expert on any technical subject i'm looking for people to work with under the learn enough to be dangerous brandell enough been to be dangerous i've got someone working on long enough i was to be dangerous so if you have an idea for that. you get in touch with me i'm also interested in me writing a full review tutorial at some point but that's a huge project i'm looking for someone to collaborate with so if any of this picture interest reach out to me i'm a bill what michael at michael hartl dot com thank you but and three. any other takers one minute talks usually get one or two that i come on you're on the less right. maybe i should allow anybody. not who's got the vote for mike now i am. and what's your name sir. even in broke also speaking. ok this is really seven minute to expenses talks i'm going to try to do it the minute in nineteen twenty two a woman in while the massachusetts who ran the restaurant was making but are dropped due cookies she ran out of cocoa so she chopped up a chocolate bar put it in thinking would melt it didn't she actually invented the to laos talk. cookie recipes she ran the toll house restaurant in nineteen thirty eight hundred s. he showed up said hey you she was popular for the cookie among other big things said i would like to buy that recipe from you in the name and he paid ten thousand dollars in a lifetime supply of chocolate and then he put it on the bag chocolate chips for free and every talkative effects. a copy it why would he do that this is the original open source idea he open source the chocolate chip cookie recipe because he was selling chocolate notes on recipe if he saw more chips if you sold more tips for everybody it raises bottom line so the idea here is you can use that story to convince your management open source. if that is not critical to your business infrastructure open source stuff that you know give back to the community we were over line i thank you. very good job. excellent super in fact i'm going to pounce or name correctly david good job. such high praise. any other ones guests come up. so now they are. it. it. rights but i'm just down the whole time a clap if you want it's pretty pretty know and i'm here all night. my name is benjamin fleischer i am a robust that's because i get paid to do really that's how i think of myself i wanted to share too interesting things with you there interesting by my own opinions years with the are one of them is i really if you've ever had an issue with string code been particularly if you live from the dark days of. one eight to one nine these blue up so i did some work on the respect library to make this easier and basically not blow up if you're interested in if you have problems with strings gem install and coated string from self use that it's going to it's going to evolve along with respect other thing if you ever wanted to see a one commit one line. commit to rails of one character deletion that's commit that i made and i have another example of other comments that are very small that you can make to things like rails whatever if you go to my speaker dec us last via for that's my get home you can see that and that's i think all the time i have and that's violent now because i referred on. west. i don't want to. thank you busy. so without further ado biden says before i will be mispronouncing everyone's name that is in fairness to people whose names i can not pronounce. so the first one is steve the down down the now let's go at that got to go ahead. my for sense is my name is steve how do we put on to. yeah that's a question that's ok. my pseudonyms captain down or so just call me captain down or are iccat ok floor is the are as this is my ninth rubicam in the seem to get bigger and better every year.
thanks to the great folks and run it. because. i've written a web app called time we talk or that will help that neat with help from the open source community can be a complete universal translator its is going to and currently supports twenty six languages from all the phrases appear as links in your chosen language. when you click on the phrase which is a link it speaks it currently only in english. i'm i haven't a clue what will happen if you all try and log on to the apple wants right now because it has been stress test that in some a single server. it's a dedicated server but even so you might want to try this after the show. but you can try now for works it works in the server blows up that's fine aman. there. i can always rebooted. when you access the site the default languages english there's a scroll will drop down menu for selecting languages and explain what happens once you select a language immediately translates the text into your chosen language i originally wrote this is a touch and speak application for my brother who unfortunately has a chronic disease. these that is slowly causing him to lose his ability to speak all of his smarts us though going to be there but he's not going to be able to move his mouth so i tried to come up with something that he could use to communicate that didn't involve typing because he's not a computer guy it's just simply touch it. speaks so it's very easy aam. i have to give give thanks to robert clam to a lot of you know from the really talk group because he corrected the google translate a german strings for me to be correct ermine and i also had a guy called simon courtois who's in the paris are be user group who i just contacted via e-mail i contacted the group and they had a guy that was. willing to do it was fluent in both english and in french so right now i've got two balls on right phrases but i still have to have recordings of those phrases in french and in german any in twenty four twenty three other languages so i'm looking for volunteers that speak a foreign language. which they don't have to be bilingual but it will certainly help aam. in the designs eventually going to evolve where you can pick a source in a target link which one i have all twenty six languages recorded you'll be able to present the phrases in english and the output can be in spanish or stony in or russian or japanese firm and it's just a simple this is kind of english market because. already does this and i got i basically use google translate to do all the phrases aam but i was always i was always a i was a star trek fan i was attracted to the universal translator has always been one of those just not quite there yet goals but were get were so close to it now and google does such. good job of it that of their final with google you still have to type stuff in or you have to speak stuff if you lose your ability to speak you can speak and have a translate in speak another language so this is sort of on a different different means it's really more like i said originally started out for people to couldn't couldn't actually. the move their mouth and speak so instead the point what they want to say in the computer or the phone or the tablet says it aam project is open source and get help and the session is as the m p three data is redacted of forget hub size every size i have thousands of m p three. fossett just got it useless as as it's being stored up on google because it just didn't didn't work well so i got all that in p three files at home and i'm willing to share with anyone who happens to contact me so they can actually have a working copy the files they don't know the source code but the source because they're it has every line of code in the file and everything that it does is kept up to. the bomb if you if you know someone who speaks a foreign language that would like to contribute to open source they don't have to be a computer programmer they have to be able to have access to a microphone in some computer some recording device that will record the files preferably an m p three format it would just say me some extra extra work. doing file conversions tom and if you do know some of the contribute on my e-mail no been telling my screen enough by e-mail at my house has our team elite ok i'm done now. thank you guys said. there are big on centennial where the uk actually going to be backing and so were large the charity shop running big production system and this is the latest have been so strong that we have available so going to try have a look see what looks like the rocket job.
so when some studies and could not have much time so we're going to create a simple job quit my job here is from a rocket job job and simple method perform and it's going to do something. now the key thing to look at just when you want to create that job simply my job to create back on the complex a piazza we have to do with other systems is very simple like to do with it or am i to recall top models. so lets you create the first job and now you've run it so let's add some actually used to this job the traditional ways you can add some random hash summit of parameters them to perform but in this an aria what we can do is actually define a key so if we have a look at those line we can to find actually within the model not going to end a fall name and to find of top string. and yes if i want to cut off all i do as i say my job to create and say phone name that it was easy. but the nation's so now we really create this job begin to fall name wondering why regular elevations against it was appointed to get the job if we cannot delegate to the parameters of done and correct before even stick the job of we want the and use a was actually creating the job to see the failure to act to dig through some loves aback insistent apply. so you can see any developed nations country from all the regular television is that you can do they are all a big enough to save my job to create and you'll see the bottom it doesn't work media comes up with the fall in qom people . so immediately my job has been validated. job status so many of you picked up a job because the back and system ok what's happened to it how do i find it was happening to program magically very often the different i p i was difficult to use you'll use that to reconnect models will you do is off to create a job get asked for state so before we create a model job that state. a case cute. not your job don't reload that status that reloads of from the data still have the current status that job immediately available to me. because you know status running and eventually you'll go to complete it such an awesome job he completed running it will come back stronger and then another key element how about getting back the result of that job i said some local to go do something that i want to know what that result was i don't have stored in some dead by someone else after figure out where it is doable. back to me and this will do that for you. so states as he queued running completed and the output so now we've been able to just simple job was given a found them and ran off and a single work as someone is going to pick up the fall and processes what if i want to take a million line from now see as the data and i want to use five. hundred thousand service workers out there that we want to process that data that can be a lot of work in love systems and the smart and now we've created a c. is the job. and we just derived from a slice job to the difference here is we can system to fold up so the first thing on to say is collect output as i want to keep out for this year's we did them than the other thing is now is the perform when the before macos is going to get that line remember we had a million line see as the fall each job not to each of these workers in get the single line i was. million lines one of the time was really easy i can pause that line. and in this market for this test we're just going to reverse as to take the rover of us have sent back as soon as he did it the sea is the processing is all done within the workers themselves are not doing that as my lower prices or anything like that will spread out so this is how you define the job itself now we have a simple job that will run across hundreds of service on where you want to beat and or did concurrently. the at the same time in los gatos. so how do we keep it off so we wanted to be a plum job going to see is the job would use a job that up blood give it the farm and it breaks up sensible out when the jobs finished just on that it's that easy. so some movies you as an enterprise features in the rocks opera in corruption and up letting sense the data this use the data my country might contain social security numbers bank account numbers reveal encrypt that community is available to you.
we have a u.i. web you while open source you can try the side to see the status of every single job in the system.
he and his summarize that you could understand learn you don't have to run rails euro israel's you got the web you why and another critical aspect is as business based parties process along with the enterprise features and this is in production today as when they for every years you construct you can trust. that's it for myself and join us on the get to chat session if you have any questions get her i am rocket job support thank you happy. hello i'm no one of consequence i have about fifty flights so we're going to get right into it.
ideas are everywhere and when we encountered idea respond in different ways depending on how it fits in with other existing knowledge you can tell this is a thought were legally talk because i was on my flights some ideas are those that we've seen before and already adopted and we just carry on some ideas fill gaps in our existing knowledge and. easily adopt those other ideas are just kind of on the fringe of what we already know what think about those little bit more but will probably adoption for i quickly than ourselves ideas that are way out there are some ideas are so while it is absolutely totally and all other ways inconceivable that they could ever work.
we almost always reject those ideas out of hand. why do we do that.
the main reason is off to my station me help you have to be by alinghi so many things we can learn course want we run ideas through a filter and inconceivable at the other languages suffered this is a very well in a blog post you're probably smart enough to get it merely by reading the hundred forty character summary of just about anything but of course.
that doesn't mean you understand it or that it changed you all it means is that your quickly able to sort of into an appropriate category to make a decision about where it belongs in your mental filing cabinet another reason we might reject is inconceivable ideas because they wouldn't work in the real world jason freed h.h. road and rework the real world is into place it's an excuse. yes it's a justification for not trying it has nothing to do with you so maybe this word doesn't mean we think it means.
what happens if we adopt these ideas ideas changeups and inconceivable ideas have the potential to change the so significantly that the world becomes a completely different place the same what pushed myself go he goes on to say the best experiences in the biggest ideas don't fit into a category they change it they don't get filed away they. france for months. we need to spend more time on these idea it's.
i'm going to give you a few examples of some inconceivable ideas and that used to be inconceivable the now widely accepted just to get an idea what i'm talking about first one is dynamically type languages were over be us we get this one but used to be that you need to compile ernest out of sight checking keep you safe right.
two emitter of development or agile development you can start writing software involving over time you need a plan and architecture and design first or test urban development.
developers can test their own code you need a separate group of testers that don't work closely with the developers.
we have to train conceivable ideas some time but how i have now given you even more guilt about things you should be doing i might have led you into pit of despair you might think you'll never survive how do we really get started of first of all we need to suppress our initial reaction of rejecting these ideas and state of saying that will never work we need to.
start asking what would have to be true to make that work that question is often enough to get our creativity going another thing we can try as we can try called carter caltech we can accept what other people are saying about these ideas and trust them long enough to give it a fair shot and see what happens if we get we need to clear a mental caps as a blog post by ben ornstein. and he talks about these ideas the record in his brain from so long ago that are just no longer true and we need to be able to clear those out. we saw of time constraints we still have work to get done even for managing i feel like joe talked about today so maybe we can do is we can pick one inconceivable idea and try. so i'm going to give you a list of ideas and what i'd really like free to do is pick one of them to try and if you don't should be very put out now.
and i'd like you to tweet your intention to try the idea with the has taken conceivable i watched out for a while and just kind of see what comes out so here's ten ideas pick one that we haven't tried before that seems crazy and give it a fair shot see what happens so try working with the fast test week this might need to be a side project. make a budget and live on at try my and mapping use a much larger font size in your editor. use of proportionally space find i got that one from david brady so blame him if it doesn't work for you. you ever tried journaling try pair programming or mob program if you haven't before try getting completely at that one might take a while. or try some try using automated factoring tools and a longer version of the talk i would go through why i would like you to try those but for now years going after maybe take it on faith and give it a shot you be surprised what happens again treated with our stake inconceivable i went through that list really fast it's up on my blog there's the link and after you've tried the idea. and you know what happens let me know and remember this is for posterity so pianist have been some of the couch.
up their very good this is a software engineering lessons from aviation or as i like to call it plain programming to i.c.i. did their money was billy watson i am the lead engineer j.d. power although i'm a pile.
it sort of internet scale data on the student pilot and ruby of the same shop in sunny orlando florida sun he was on under storms definitions are just so we agree on some terminology and you understand what the hell i'm talking about general aviation his pilots like me i'm not in a commercial airline i do not have a backup i and my own back up and the only chance i have just survive. his me me and me. go around his with a pilot is trying to land a plane and he decides that it happened in this time for all the throttle and does a circle around the airport and tries again. the f.a. if you're not from this country think government and slow a s o p standard operating procedure would and more that flow check is how i checked my instruments it's something i have in my memory and a checklist is how i become a second pilot it's something i have written down that hold up my field of vision and that is my second pilot just to make sure i don't screw. europe could shout out to michael martin's you to talk yesterday called mind over air to mention some of this and his q. and a section and another shots nicholas means who did talk about nothing but aviation. and how we got some lesson from programming so these are some other lessons quick quick is going for these are kind of the issues we do with what kind of video this program although it was me two months ago these issues i deal with as a pilot i thought would never break of those clouds little an upside down towards those rabbits so. not so happy anymore ok so in aviation. in the media go around on call out there is a document that lists this procedure from the f.a. in as of two thousand seven a sickly anyone in the cockpit not just the captain can call for go around and whoever is at the controls must immediately far all the throttle and go around period and of story doesn't matter what you think you go around. do not die to enable everyone to fix problems as the lesson this becomes before problems occur or after problems occur so i've got some ways you can do this group code of you open code of you run time docks and method documentation are some ways you can have this done at your place where take off means clear. the for take off this is from the awful tenor of disaster and five hundred eighty seven people died. they never say do not take off or or i wish i could take off my shirt they say take off when your cleared for takeoff and of storing case are some radio communication errors careful about your verbiage. agree on some verbiage with their business users use that same verbiage in your code and don't use the word match five different ways as we do it at our place. be careful about what you say so that way you can train new developers and you can understand your code tomorrow the safest general aviation pilots me i use flow checks and checklist you back yourself off so when you're fixing problems at ten thirty night by yourself code of yourself submit a poor quest to yourself go get a glass of water you're in a do whatever was. walk the dog come back and reread your code before you bush. if you are if you're saying that doesn't apply to me we always do that sort of thing find your brother me ok pilots have routine insurance scans are not just talking about my flow checks i'm talking about if i'm in the clouds i will look at the instruments and i will how much to know its one hundred twenty beats per minute it's like stand alive and i hope those instruments and i do at the same. way every time for safety in in our world what we can do is say that the completion criteria for story includes metrics logs documentation and testing period or it does not get merge down and you have to have agreement with your business obligatory cuteness that's my she too and that someone else's she to dress as a pilot. ok great big picture that's a big plane with six engines your welcome ok. standard operating procedures reduce errors sending operating procedures include those things i mentioned before but maybe some other things like usury factory methods refectory the patterns is a great book or you can cheat just look up and the million posts about it online but if every time you need to move a method for most of class to his upper class you did at the same. wait you would be so much faster and so much better your job it's boring but it's better i assure you. way less boring and exciting are way more boring and weigh less exciting than having to do with blogs for forty five minutes because you didn't run your tax code of yourself as i said agonize over names and turns and completeness doesn't mean it done in traditional terms no no no it means documented monitored and tested money was billy watson you can time. tudor confusingly it at william or watson and you can find me down there and for questions of ideation dallas cowboys or programming banks. the afternoon rubicam on the afternoon. got some news where you are already know about this moore's law is running out and you're off a million with moore's rely here's a graphical representation of it moore's law is the observation that we can double the number of transistors on a way for of silicon every eighteen months to sell and this is the this is moore's law graphically here is moore's law visually.
because every time we double the number of transistors on a way for of silicon we increase processing power there for all of the functions in the devices in the tap photographed are in the single device in the bottom voter breath that's moore's law but moore's law is running out the party is almost over and we're going to have to do something else to extract process. power from our computers enter parallelism and one way we can learn about parallelism is through a tiny device card parallel and it's a single board computer roughly the size of a credit card or raspberry pie and you plug in your age b.m.i. monitor plug in your u.s.b. keyboard and you're good to go it's got eighteen corps and you can fit this thing and.
your hand it's got to arm course sixteen risk corps and i define those in a second risks is the eighty twenty rule applied to computing its reduced instruction set computing the eighty twenty rule computer engineers have observed that twenty percent of our instructions are executed eighty percent of the time so.
we've taken steps to make those instructions execute very quickly very performance and then we build the remaining instructions out of those building block so that's risk.
so let's take a look at parallel in action this is what it looks like it is a linguist lennox computer it runs a distribution and distribution of linux carbon narrow it's a variation of a boon to it's got a web browser it's got a command line interface and it has the best tex editor ever known to humans let's say altogether vim.
it's low power to i wanted to convince myself that it was really low power so i took one of these handheld cellular charging devices with a photovoltaic cell on one side and a lithium ion battery inside of it jerry rig a u.s.b. cable and a power adapter its side.
for those puppies together and yes you can power it via solar power with a little five watts older device the right let's talk about architecture inside the sixteen corps there's four rose four columns rose are numbered zero three three columns numbered zero through three let's take a look at what it can do for you for us we're going to look.
for the all of the prime numbers between zero and sixteen million in cereal on the parallel of if you execute that takes just under four minutes that's what the screen looks like if you do the same program on the same program on macro x. ten in fact of this same back then i'm are working with the right here.
serial on macro s. ten it takes roughly fourteen point four seconds so four minutes fourteen point four seconds what have you run that same programmed you modify it so it can run in parallel on the parallel well let's take a look at it and i have a real quick movie for you running year let's take a look will watch build.
and run if you take a look inside of the parentheses you see and ordered pair row column.
what happened all right it's aligning talks i'm going to skip ahead here's the punch line in the grand the z z z row column for each core it took eighteen point six seconds.
let's summarize those results serial on the parallel about four minutes syrian on a mac about fourteen seconds parallel on the parallel about eighteen seconds ladies and gentleman this one hundred fifty dollar hand-held computer is performing about in the class of a two thousand dollar mac.
but don't throw away your max because you don't throw a match because we can at this is kind of a set up this is an example of an embarrassingly parallel problem problem or an embarrassingly parallel program what's going on here is this is the type of problem that.
we can break up into bite sized pieces very readily and it can be executed very quickly in parallel if you want more details on this you can go to my blog at re high tower dot com were at the end of the top bottom line this is parallel and you can buy it for about one hundred fifty bucks i amazon dot com we as developers need to learn about.
parallelism now because moore's law the party is almost over and it's time for us to learn about parallelism so we can continue to extract performance out of our silicone my name is ray hightower you can learn more about me at rate high tower dot com thank you for listening.
i recently he sat down to write my first three digit and i thought that i thought let's make something useful at least to me and hopefully to some of you and so i decided i was going to do something with struct and make its how i like so. made objects great theory you could turn data into an object to the got a nice thought methods used in factories and you get a nice no method there when you do something wrong like call van dot can set up a study getting a meal. on your hash. of the great dish in ruby though you can call your shot without your arguments and you get meals i don't like meals and my strengths. and this isn't cool either you kate you don't get rabies cool. fewer targets that are so awesome. and also you can change them van dyck year nineteen sixty five and one excess or on my structures the data object and i wanted to change so van gogh year equals twenty fifteen not cool. and then like i said q what arguments we've had them for a while why are they instruct so i decided i was going to put them instruct so that's where we get. oh no open shocked doesn't help either that actually makes it worse because now we can have a van dot painting goals of a red and vindicate plays it can sequels true out of nowhere and even better than dakar mom and if you don't get in anything you just sets of the mill which as awful. few of the gems out there are not the first person to think of how cool it would be to make date objects and ruby immutable some of them do it the great lesson hundred lines of code you should use them should check my now use theirs because are older and more maintained is not somebody his first him but i would love you try mine as well. so what does or do the first has required keyword arguments soak articles are not new paint year if you try to call it without pain year it tells you you're missing key word paint. so we have one where works scooby than equals car year nineteen sixty five paint your all school even year nineteen sixty five that's how i wish that's how i like to work. and then we have effectively immutable if you try to change it does not have an assignment method. and then the newest release last night i have dated it was he really cop to have a to chase on methods of the speech out some chase on and are these use it please love it please contribute to it because it is my first german i would like people to make it better think you have. wow divine floors rooms you use your uk are also many was devonport and others my top called reprinting is not like cooking rotisserie chicken at home and his mother makes sense story will make sense. so while ago about a year ago i got a three d. printer built it an oncoming really complex built our friends in a giant really everything so i can use as a talking point and used to like start conversations and allow people to come up to me and asking questions about the printing everyone really awesome cool and up.
i was at that question everyone small it all mean for me one on one of those comes as a qassam i'm sorry i can't really control one and they a saunter often look also and feed and i'm wondering when one hundred be like fine once and go and make known to be printed and i'm a print all the world needs more reason you can imagine.
had a print cool stuff like tiny bogus source of this little drawer and everything it will be amazing and show my friends and this be the face that the me that unless they have a three project that will be like that.
but as you can the three printing you start to notice a lot of things like for instance it's really slow like really really really slow so slow that i can usually the soviet none of time it's also kind of temperamental so your parts will break which great as those parts are three principal so you.
broken three pointer can't print them and then also the same time you have something i stick to the bed it will fail halfway through a fail a seven hour print will fail with twelve minutes left and it's too bad so set you can also hear yourself that's not guaranteed but it hurts a lot.
but then you'd like to know honestly was looking for it is awesome cool dragon costume the dragon is until you realize you have to break up to six different pieces and assembly with blue and if you want to be going to work as schools that print it and hope that your print quality came out as nice or feel like know them and i can print was supports but anyway so that extra plastic.
and the need to break all those hard plastic supports office and animal species because otherwise you have a little bumps and bruises all of your print and the entire time you print that who knows ten and twenty hour print you're hoping it doesn't come out like that it.
so now you're probably thinking like we were all what's going on seven became a piercing from three hundred is awesome it's the future it's so cool people would be jolly of me and now you're single betray because of being really negative in you're like oh i don't understand what's going on and it's not because i want to stand up your like this it's not how it's now it's actually because.
i want all of you guys are going to three printing but i want you to get into it with the correct expectations because thirty printing is not like cooking or to search your home is not a set it in for get process and is not something you just or by the printer i get something off line i pop in come back yards later it's the most perfect print in the world know it's not like that's tedious.
some hard work involved you go through multiple prince over and over again. and it's really frustrating but when you get something like this this is how you feel.
to the tea. and you run out and show your friends and the like oh my god as course thing ever and you could act like this.
and because you know they didn't see the fourteen feel principle. so i love you are to be like oh how kind involving three printing there's a freeway to gamble with reprinting and you can using online to them to meet ups and there's usually a one year he won almost every city in the have little labs and you get a tory all are on how to use of three percent or the house.
of a workshop that you can pay for everything you don't have to spend a bunch of money and everything like that but i always recommend doing as much research as you can because when you go out there and you look at the financial economy that for japan or that's my budget that sounds nice but it's not the same is that one that costs more than two thousand dollars.
you can just go get awesome print quality with a cheaper printer but you want to make sure that you build within your budget last thing i want you guys to do is go buy cheap runner and then have your prince not come agree and then gone into like treating stark some future we want everyone to be excited and you know help keep building is now open source like we are and everything and make awesome prince. because the limit there's no i guess there's really no limitations anything like that because there's really nothing you can't print and i'm really really serious there's really nothing you can find so just a quick shout out to the guys who made my printer and everything like that help me build it all the somali three d. open source for and.
it's built by these guys over the five three in sync years before they're all really awesome and i wouldn't be up here with an awesome ruby it wasn't for them and i like that but up my bag and my name is that clark animal because there's your conference and everything like that think through time. on soa i can feel like maybe i've seen that last talk before i did this and now. so this is the place i console myself his eye i say something to a friend or whatever and then i commit right like i got it done so in over my head so little bit about three printing for those of you don't know if you take a really precise machine like a machine that can position itself well and you give it a hot glue gun.
you have a sense to have my three d. printer is right super simple super simple so simple that print about actually named their printer simple right so i look at this and i thought to myself i can totally do that this has a billed as size of a four inch few rights like that the largest thing that you can build is that i thought i can take that and.
i could build my own i just need to buy this kit and maybe modify slightly and really what i built was a monstrosity significantly improved the build size but it was an not designed as well as it could be it actually would fall over hundreds on weight so i had to strap into that table it's awesome.
i'm from this guy who do actually can design things much better than i can and he designed this beautiful printer it had one foot the build space which is amazing right but that's not nearly large enough for my needs so i took his open design and try to make it better has i am want to do.
i printed out the parts on my little tiny printer and i sampled it and really to give us size play a gig concept of how large is printers it's a three foot the bill size which my daughter at this point was a roughly three feet so you give you an idea she believes in me a lot right you can tell that interacts what are you building a giant.
the printer a giant three printer so these are the parts that i assembled right either all the things that he designed that are beautiful and wonderful and we get to the axis and it had had to change significantly how this works right because the way that he had designed it was fine for a small space but when ever used.
we're getting to the size of bed that i have it doesn't work anymore.
so this is the point i'm not like i'm a hobby us i don't know electronics and so whenever this actually moved it was the best day of my live a defeated only by getting married and having children. seeing lights flickering hand motors spinning.
amazing so as of just the about a month ago this with the printer look like right it's a wood and metal and wires and and barely it actually works it's amazing so why why in the world you need this large of a printer well tell you why i have children and my family.
loves to dress up we love to dress up in the end as all kinds of different characters and i'm my two girls fight me constantly and whenever you have that problem and you need a suit of armor.
so this guy build this incredible suit was you were just and i totally said my friend i can do that too but not anywhere close right.
so huge and printer so you can scan yourself with connect maybe and the and then for not parts.
thanks. i am coll you'll dawson but i wanted to take his action points for their own that i think i just wanted to be yes. certainly about how we approach problems and how some of the tools we use when you approach as problems totally a fact like some of the solutions that we come up with and a different problem spaces that we end up and and i wanted to began with kind of a struggle that i had when i first started development especially specifically test driven.
meant a lot of times i find myself staring at the screen it was like this one during exactly what my first test should be a lake a lot of times everybody says has first in this thing and you get kind of stock and you're not really sure what to do and as we grow as developers we kind of building we kind of gather this like a group knowledge. it right like of where the right part to break out in a distraction is and where the right test to start out is instead of you know when your new the thing you into thinking about his lake i just wanted to work greatly want the whole thing that just and i love this image and i see it in a few talks.
like the the whole idea of you you just want the whole thing to happen great and i actually bring this up i have an ulterior motive i don't know how many of you have taken any or causes are done in the rowing a few years so i'm a terrible artist but i did try and take some are crosses at one point my life and one of the things they talk about. out whenever you're taking in our cars and learning how to try one of the things they do they actually make you flip the image upside down right because there's this thing in your head whenever you're trying to draw something that you think you know what it looks like like maybe a human face that makes it very difficult for you to separate the lines of what makes up the face of the code radiance from what your brain. thinks they should look like and so what times to break that up for what you do is you flipped upside down and makes it a little easier to separate that in your head at now obviously the solution here is we should just full of our test weeks upside down right through all of the code of it up unfortunately we can't do that but one thing at that i found especially.
helpful in my case is maybe not trying to think about the entire problem out once great and a good place to start maybe is where you interact with this thing i've been playing a lot with a functional reactive from and i know don't throw stuff happening under review conference call our end on. and it gives you the ability of the way it works you kind of build this model of your you lie state in the way this model changes is by passing messages into it and updating the state right and what are you build this thing starting at the very front end what it does is a sort of outlines what sort of application or what sort of like a guy and points you. want on the back end to communicate directly with it and what's interesting about that we can build on sinatra are you know whatever you want to build it out with them what's interesting about that is a lot of times when you're starting at the a.p.i. level or you're starting at a very like higher level and working away down the types of things and the types of gems that used to build with are very very different. i found myself trying to build things without using or him at all or like trying to roll something that just uses the small subset of sequel that actually need to solve the problem.
and so i just really the point i wanted to get across is bitter full of the tools that were using and try especially when you're teaching and when you're trying to express things to people like to think more about the messages that you're pushing around.
and like how your things are communicating group started and how how things are communicating and less about trying to fit all of the functionality of the problem in your soul of the problem you're selling within your head because i don't know i've really tiny brain and i'm not very good anyways thinks that's it.
wow. wow why i need to use any means i work with spritely in german earth carolina and i came up with his talk because and i spent twenty years basically teaching math privately and also in high school and i also coached has coached about ten years of high school sports and so i tunes issue. in software engineering about three years ago in the transition i got to go from the top of the totem pole where i was so everyone else what to do to the bottom of the totem pole which was interesting because as a teacher you start seeing on the as i'm a little differently at the new do is offer engineer and so came to a conference this my first would be confident the way in its. but i did not know i was going to like him talking so all this was done last night i know it's awesome but don't be jealous right so here are my tips for on board as you do your debts. first as a teacher we had a book that i read it was written by john milton in up late eighty's hundreds called the seven most a teaching and all the more applicable to our industry but many of them are going to over three of them first the teacher and it has to know the lesson seems obvious but i'm pretty sure we've also and classes where the teacher does not know what they're talking about. now i'm pretty confident that most time by the time he reached in your death of the most of this year as i work with have know what you're talking about but he also has to have lessons so when your brain someone on sometimes there's not a pretty fine process and i know it's a process and see your desk at the hives ok but process is helpful for junior deaths because for junior dead. as the world is completely unknown your you're coming in you you you don't know about the industry you don't know about the domain and so many things are a known that process gives him a crutch on how to get from not knowing anything to knowing something so you need to have a lesson for them on boarding. but avoid acronyms and use common language because when you use a lot of acronyms especially domain specific acronyms orange industry specific acronyms it's like you're speaking vietnamese or french or something else they're not going to understand how. and you want to teach from unknowns of the unknown everyone when you learn a factoid if you have nothing to connected to it will just fall off to the wayside so happens is as you grow and you learn to read in you read this book he learns of kevlar everything changed together but for some reason when you're not educator and you're not trying to piece of someone's education. together you think you're less and start over here and you never stop to consider that that person that you try to teach their understanding stops back your and so although you cannot necessarily provide personalized education experience for everyone. if you want to be successful you going to have to figure out where their understanding n.'s so you can figure out where you're teaching these begin if you don't do that they will always get lost. setting expectations i'm big on to the expectations because my come in i don't want to just meet them i want to see them i can't do that was i know they are when you have high performers and they want to do a good job. they get frustrated when i don't know what they're supposed to do so if you have tools you want to learn tell them if you have theory or best practices books want to read tell them because if you can articulate your expectations you're saying about for frustration of failure just a bad bad you also you want to set a feedback loop some way to tell them when they're meeting that your. patients and some way for them tell them for them tell you if you're somehow not mean there's a you like you. you go you go ok so we want and are getting his twenty's process i train wheels so many times we start you know some of that you have to start a project and you know a bench where you're going to get carded done are you going to finish that and you're going to play it but the pieces in between are really like magic especially when people are moving very quickly through it so. from what you want to do is try to provide some kind of process for them in and try to get hives my say process but you won't have some process so that they can take all the unknowns all the things they don't know at least cling to something you know i'm going to do this and agree this step test team i expect this to protest expect this time to test i'm done and then if they mess up. worth any feedback at least they've had a pattern follow in their not completely lost because the goal is to get a new debt deaf to stick around long enough to realize that we're all imposters that's probably the biggest lesson i've learned of last year's i've been doing this is that although people know lots of things they don't know everything and if you're a good day you're going to push yourself in those areas that you're an imposter. because you want to get better all the things it's just that to new has everything is is overwhelmingly unknown and so if you can cut out the unknowns makes life easier also don't engage in of in the match to beat with the new the it's not helpful. i am making is an easy game there's my twitter handle i was extremely it's great and we're hiring. true. art. it's already has gone. so are its owner dusan for half minutes and we see more time but i want to share with you two things one talk about as a way and how you can do it better with cubs so totally discovered this by accident on so if you have as a way or if you're thinking about it and haven't done it yet. you probably seen something like this before or you will very soon so let's say you have for apps you have a company website you have on your internal and into will have an inventory management tool that your customers walk into a manager inventory and you have a customer store front for your customers where they actually sell their stuff.
so customer comes by they sign up and you proceed to make a series of a.p.i. calls to these different services they need to do something new customer signs up like set up the account importer inventory from their previous provider set up the us for the website all kinds of things i'm so you know that's great you've got. the logic separated out but there are some things that happened like your now your marketing app has to know about the twenty applications so you get tight coupling gaps that know too much about each other have too much responsibility there is compounding failure scenarios if the import fails then you'll never even try to set up the dns. this and how to recover from that and dumb. the customers to sit and wait for all the stuff complete so about wouldn't be great if come on now.
i'm. we had a way to divide up where.
the customer comes and signs off we fire off an event that says hey this customer signed off signed up and then all these other applications from would get that event and they know what to do the company website doesn't have to know how to tell them what to do anymore.
so this is pubs of i found out by accident and have since learned to talk about it from houses better you no longer have tight coupling you have opper applications that operate independently i'm not putting a whole bunch application on one app to know how to drive the others each application has its own responsibility trying to keep.
the dia port plug in here you no longer have this compounding failure scenario you have independent failures the receivers know how to resolve those errors or you just have one to debugged to resolve it and the operations happened asynchronously and so your customer can go out of go. along with their life and not have to wait on your system so great in the cubs have.
so i introduce a gem and build called cha ski and the motivation for this was years ago are sitting around i didn't have any vacation time so is like only one in office over christmas break and how we were doing this at the time was.
we would have one app and he would need to interview job background jobs at the time we were using rescue on to come on the other applications cues from which was kind of great but it was like we still have an application and knows about the other applications queues in which jobs the key.
the mike would be great if we automatically did that for you and the average is in need to know about each other i'm so is a very simple way to add pubs a if you're already using rescue or site cake which a lot of people here i bet our it's very robust friendly britain ruby and have actually seen it used to. it working on getting it in place at the third company i worked for who's had this problem and the original installation is like five years and running without really any changes and so this is a open source rewrite that i'm announcing today was very simply use you just jim install it and then you. run choppy and it will run a broker for you and will use your local has read is unless you tell it to do otherwise. to write a subscriber it's pretty simple you require chomsky and you call the subscribe method and then you tell it what do you want to process jobs on andy and you tell it which eventually want to receive you get a block of what to do with the events and you can have multiple subscribers city can be indifferent apps. i'm and they should all have their own q and so you basically get my original thought his i wanted to multiplex scene of my rescue jobs now psychic jobs and so that's how i did it and so you can run it would psychic more with rescue and time over time so but.
but you should go check it out on get have and let me know we think and contributions or more than welcome. ok so the two tiny developer tools are rather too tiny user interfaces i wrote for developer tools other people wrote actually think all those people here at at this conference that's going to school anyway so high and now i work at patients like me we are essential. i work for people with chronic medical conditions and we just started using code climate which i'm sure many of you know and love will have it on our could climate score going to show it to you despite our embarrassment is one point six two. and we'd love to improve it and so we look at it will get good kleiner like ok we have clearly have got object here is very high overall complexity it's called user this kind of classic example is two thousand one hundred eighteen complexity score which is kind of amazing to me but anyway so what's what's wrong with this thing well here's an example we have a complex meth. but avatar your all it has a complexity score forty seven was forty seven mean well look at the club could climb documentation you find out that if using flawed which is written by ryan do this and the if you run flawed on the command line against this class you'll see why it's getting the score thirteen of those points are coming from. around to his forty four four one five going to have assignments etc etc you can look at the method and see what you have to respect her about it to improve the complexity score and we start to get into a feedback loop where your your improving your method and then your testing to see if it works and then you run flawed again any group to refine your method in the new improve. but again it's that are etc i like a tighter feedback loop than that so i use text made to another confession found a high so rude a plug in called flawed got to number one goal and here's what it does on actually running against flawed here example company could up on the screen but here's a complex and often flawed.
it has a little pointer finger next to it on the left side bottom of you can see it but hopefully on the first one of the method you have a little point a finger to click on it it was ridiculous idea that method and if you added and save the method it up it's the complexity score and hopefully removes the point a finger and my co-workers said well that's great.
i am the only took me to use or in this entire company. so close to the other ones use either sublime texted him so i root someone for highlighter which is exactly the same thing but it's of one text i can't put point a finger on it because the sublime a.p.i. but it will highlight the first one of the method with a box of varying color depending on how about it is hard to develop.
for to remember to argue line prof this is great i love our the line profit health the final meisler could. and if you're not familiar with it you just a run it on some piece of code it shows you the times how long each line takes to run all the files that around and then you can get this a you get this fairly complex object in this is more or less from the real me this is how you end up having to use it. you get this object and then you have to do this thing to make it so you kind of to do this thing to make it actually show you a nice format so.
and then there is a way around this that's mention of the read me its peak are beyond prof which is great for reals eps the time they were trying to pursue profile slow web request you can just get it right up there on the screen it looks very nice. but suppose you're not trying to profile webber questor you're not reading the rails out suppose you're reading a background job which is what i was doing on so i have this thing called everyone from browser on what this does is you run it like this and then instead of having to parse through your own code with felt reliance on.
you get a menu of all the implicated files you choose the one you want to look at and you get this output its could highlight of using pigments and pretty much it mirrors roughly what the example give you i changed a little because unlike some things about it but it is roughly the same thing and get could highlighting and you get a menu so.
so i think it's a lot easier to use thanks for listening the if you want to use any of these things yourself this is how you get him get have dot coms legend good and thanks. of his next i know for sure room be. actually i did i will switch with ryan stout we have similar topics minds more of an intro so we decided to switch spots and saw lowry.
and. i write we had some minor technical difficulties there but i think we're off to everybody i'm recur leno during the day i am a full time maintain or for something called farm bought which is an open source robotics platform and i'm also a maintain or for the volt framework which i was a surprise. the seat when i was here ruby confit some people in the ruby community haven't heard about it yet so i want to give you a quick rundown of what volt is and why it's cool i'm basically volt is a vault is a full stack rapid prototyping framework similar to rails but i'm like rails it's taken a step. it's more towards like pubs a real time on a single page applications and it's got a lot of features that i think ruby us can really appreciate first one i think people are going to appreciate when they give all to try is that you run ruby in the front end there's no javascript unless you explicitly want to run javascript on and it. which is this using something called the opel compiler and opel allows you to transpire all your ruby code into javascript can run natively on the clients browser right here have got an example where i have a controller which involved controllers run on the browser not on the server and i'm calling the java script alert message and. you can see its totes a maze. it also has source maps a big thing that a lot of people here when they get started with something like opel is they think it's going to be it you know total pain to get started with and i would say that the level of complexity you're going to deal with is on par with coffee script so if you're already using coffee script then you can pretty much handle developing with ruby on the. on and so the big win with told that for me is that you can do data sink without having to write rest a.p. eyes or a lot of boilerplate for sinking things on the browser because the browser is not an afterthought in bulk so when you define a date a model that works on the back end all of that code get sent to the front and so now you've got validation. and and things like that and you also when is just as a little bit fuzzy here but you can see i've got to browser windows open and i'm creating a new model and it makes a call to the server and when the new model is created everybody who has that record loaded in their browser is going to be able to see that up. state happen in real time and you don't write any of this cinco yourself it's part of the framework so it saves you a bunch of time when euro when you're just trying to prototype something and ship it fast and just because you don't write rest eighty eyes doesn't mean you can't write it you can do rest a p eyes it's very familiar this is what you would put into your route file. it looks a kind of rails the or maybe even sinatra issue in some ways and then this would be your controller code right there and this is running in the back and obviously because we're just doing traditional h.t.t.p. you can do files jaison its it's pretty complete in that regard some people try to say always this i'm you know media year for ruby. not quite it does a lot of the things that you can do with traditional web frameworks and it really is a general purpose full stack framework so if you like rest keep doing it. going further into that about how you have one model is very dry on you got many storage layers like you see here on right now we support mongo db and as of this week we have support for poster sequel and. but he always a good thing and the good thing is though that when you write that class definition for your model you can just take that thing and put it into h t m l five local storage pocket out of their throat in the posters sequel and you're only writing your your validation rules once in one place so you save a bunch of time here's an example. sample right here i got a widget class with a string field called name i'm make of variable called my widget and then boom i throw it into the database store is what's called a repository in this case is going to be mongo d. be on but i just throw that into mongo db it goes back to the server save that their later i change my mind now i want to store. that model in local storage and it's the exact same a p i the only thing i've changed is that instead of calling store which is mongo db are now calling local storage very dry. just like rails its batteries included you know it knows what it means to be building a full stack framework and so right off the bat got user authentication you need to worry about making that decision on your own this is a volt app that i made probably an hour ago and i just did the volt new command and as you see i've got a log and page of guy. you know sign up forgot password that's things you don't need to worry about and i'm if you need to change the view very easy to do also this is the model that comes with a volt by default it's open for extension you know if you are some you don't want to change the way that the user classes validated you're free to do so but both users. some kind of special treatment and i'll show you what that means here in a sec means we have a permissions an authorisation. the idea so well the checkout i got my blog their say hi to us on good or chat were a friendly bunch thinks. thanks. well as i love that the deep but the topic that i'm going to talk about these will be the knack i think would not be an english soon that's my good and the larvae be i've got a company blog by nannies a company does not have offices in the one was remotely from home and i decided that ok let's not have home as well so yeah this is what i.
and since january of this month i'm traveling to all the pieces and walking from there have been delayed in cities seven to the conference's these next seven to be conference for me this year alone and yet this is one of the ruby adventure that i did recently i was at the carbon locked up as a beacon he might have any you can drive which is like highest motorable. road in the world and i've been to eighteen thousand feet and sat in the lives that and did some to comment on that land gordon pushed when i came down to. so you've got thinking that you did gordon the thirty five thousand feet when you're in the in that is mocking again. so and i recently heard that there is a t.v. signal a little bit weak bead on the list as well so maybe someday so yeah the topic is really been asked what advice who are but the this project that i'm working on is about writing who be invidious spoken languages and not just in english and the reason.
i part of this idea was i was teaching my younger that about to be programming and he had many of the questions related to get what his death what his class why are we using class while using death the diffuser definition definition of what definition of function ok so i found that it is very difficult for him to understand of mini e.. few words because english is not the force language not only did language for him in india the start teaching it at the age of twelve in the schools so you can understand that so that was the reason i first time partner for writing something which will allow people to rate will be in their native languages and that's what i tried to do so here is a simple example which is. the hello word then in him the it's just so hotel on top notch car and the most of whatever it takes like one lane offer to be to get this working you just have to elias been to the chapel in that suit because will be able to give you this new shoes and now on your this is a full fledged example of each of the can do. this is an end that program did. but i'm into into tiny know him the the key word sorry list which early class and the functions like death and is also the best you can see there is an added which has made of streams and stuff and then there are meters been coronary and he comes from the standard likely so with this project again added the transmissions for the standard library. you can eric translations for the key word and the rest of the things are any candidate in any language because we suppose you give your. yeah and i hope nobody here understand source of even in that program right now imagine ninety four percent of the people in this world are not need the english because you're feeling their feelings right now. so yeah that was one of the example of why do that so i made this a project and i presented the year. and the bow of the country's in india and the i got very positive response from the people what things that i phone with this is our learning becomes understanding because fubar hello world this doesn't make sense for the people who are not need to speakers. another example class know if you think of the glass classes are two different meanings based on the context like this is it the world is that not only is it a added. you are and what not so for the non-native speakers when they heard here class the most common use difference is a classroom kind of thing does not have expected year second is more you i try to translate more brilliant of hindi and the translation comes up as a separate part of on a satellite know that is not what. we mean been when we clear the mortgage in programming language right so i have taught to do what you have to do is to extract the meaning out of the english think about what that meaning can be presented best in your own language and come up with the words i can guarantee that whatever length of a key words that we are using in him the no one will come up with the questions like should i use a class or more. before the sting because it makes sense it makes of really have meaningful to have those key words and learn related to that one other thing is learning becomes fun as in them of when i created many of the examples for the him the and marty i made sure that i use all the references the. fun things slams from the local languages and that makes it of understandable to the people just for about a good idea to about four hundred hello or what what's the right to the emotion that is present in their native languages can be brought into those examples and because of that learning becomes fund school year. it can detect that the this guy buehrle if you are interested in going or didn't do any other languages your income you can contact me on i.d.b. that's my twitter handle. it's good for education that's what i'm looking at and secondly it's good for the people who don't have english as their native language and then they can perform these exercises to rethink about the program in concepts that they have learned they can try an exercise of converting programs into their own languages thank you. maybe there are eight. i asked some questions the audience if you could just show your answers. to get access to making are pretty bad estimating. i usually asked me to hire too low in your own so i why do we estimate. utility. we want we want to know the cost how much will things cost of oil what we want to know the cost. so we want to know whether it can be worth the cost. so we want to figure out the are why the return on investment so that's the formula this year the value in the cost. what do we want the ri to be. positive. right how do we know whether we should start on a project. i asked have a positive our ally. to calculate the are why without knowing the expected value now so to project managers typically figure out the value before asking us to estimate are to our cost in our time. so why are we wasting our time and so were worse account lean our eyes and we are estimating there's no point if if we've already started a project there's no point in calculating that are i were already doing it so the other conclusion is don't estimated story level year it's too late at that point. so no estimates is is something it when i say no estimates i don't mean don't estimate anything i say don't just made it a finding level it's too late at that point only estimated the project level or an epic level. and another way we can do this we can actually shorten the feedback loop we can we can either rates and we can set a two week iteration and we can determine the ri after the fact instead of trying to to estimated head of time. and she can stories instead a story points. turns out that the predictive value is pretty much about this thing or even possibly but about discounting stories and that of wasting time spinning know that's the main points so that's all i get hit me on twitter if you disagree ordered thanks. how. i saw something that flickered ira we can kind of see that get our act so i'm going to talk about book duets this is my student project overrated developers academy i have been programming for seven months now i am an opportunity scholar here at risk. qantas is my first to be conned says. but that is. i go by she and they pronounced and here we go we're going to look at markoff mash ups of lyrics and literary quotes so if you go to book due out stock calm.
you'll see that you can get mash ups of a artist and musician and a offered so here's something awesome by aqua and and race will see that says i'm the vampire list that shirt can jump in and i'm a barbecue role in a barbie world. so that's what it does if you signed up for an account you can save your favorite ones and tweak them out so i had to for the purposes of my project talk about like you know what the purpose of this as and the user personas i made it for fun i come from a freelance writing background.
i wanted to make something that would amuse me and i wanted to make it for book nerds language nerds and music nerds and i have a feeling that some of you are in the audience. right so what is a mark of chain i learned about markov chains through an amazing developers talk and seattle her name is liz also said she also graduated from high school and she was talking about twitter bought ses markov chains to make some really interesting computer generated tex. it's so what it does it takes a look at the current word and uses probability distribution to find the next possible word in those mash up as you can see here that i've used a amazing gem called marquee markov to out young i love say. painted at to create this dictionary and if you take a look at in its followed by these possible words below it. so here's my tech stack i actively made to apps i made the a.p.i. and a front facing web app and so i was trying to practice like a mini version of us so a so one of the closings was using read us to kind of cash what people are. been up as far as musicians and i'm authors so as people use less it's faster and faster and learns by building up lyrics an excerpt from books us so there's kind of like a explanation as to why he decided to use readiness because. of copyright restrictions a lot of lyric guys don't allow you to just grab huge chunks to feed like a lyrical corpus so i'm here is like an example of what read us is cashing in its some lyrics from austria.
and if you want to take a look at you know making mash ups of her own i created a secure public a.p.i. and i'm totally open sea like feedback or suggestions and ideas on how to make this cooler.
and i was going to walk you through like way it looks like to create is create this mash up so you send an author and musician name it collects texts and build something called a corporal it feeds thought into marquee markov of and then it creates a mash up and i find. that if a artist and musician author and musician have similar words in vocabularies then you get really fun mash ups were it jumps back and forth every other word but if they're very like to similar then you get kind of chunky mash ups so it's pretty cool and i want to say. a hollow to my instructors scary in germany for tb ruby and to meet started with rails my classmates were known as the unit goats and one of them is here right now and i also wanted say thank you to the community. i. i am very eyes and air and i minutes late as how to get it and job this is mostly for junior developers who are looking for your first gig but i think some of these things could be applicable to people who are trying to do that maybe from junior to mid-level are from a level seen your own no died.
the area.
i get so anyway the first thing he should know about me is that an awesome and the second thing we should know about me is that i'm incredibly humble on you should also know that i met taylor handsome last month it's a point of pride have been waiting twenty years to do that on the week after i met taylor hands and i started my very first new developer job at mannheim were.
hiring so you can contact me at twenty the girl if you want me to introduce you to my hiring manager.
the first thing i wanted to all of you if you're looking for any kind of job is this not so of sabotaging a lot of you aren't even applying to jobs because you're waiting for for the perfect moment whenever you're ready and you know all of the things you're never going to feel ready ever and it's ok because if you feel like you're in a position where you know everything. being in the ready you're probably not growing and you're probably super board and nobody wants the board. so whenever you start looking for jobs you should make it about you you should figure out what you want to do because we're going to be working at this place for probably one to five years and a you don't want to suck so make a list of all things that you want and all the things you don't want but also be able to flexible if you want to create your brand as the law. of this aspiring lead developer or a lake student learning cymru be but that's not what you are you are software engineer you are a web developer you're a self-taught web developer and also whenever someone ask you something you're like oh i don't know anything about our. spec what you should say is no are stacked how hard could that be only just google that if i could. i said how argue that the like five times in my interview in anaheim and they actually told me that that was like the best attitude about that so if it works for me it could probably were free and so after you decide who you are in your putting out there on the need to put up their everywhere cast the widest net possible. you want to talk only did we want to be on meet up on you ought to be in your local technology slack if there's not a local technologies like in your community you should make one and then will be the person who made the local technology slack and everybody will want to hire you and your friend. use twitter lot. facebook meet people in real life and actually communicate face to face i know this is really strange for some of us but you can do it on and then also if there's a company that you really does that the you want to work out just e-mail them and say hey you're not posting junior developer positions but you should hire me anyway and they probably will have someone who wants talk to someone thing that i don't say about me that is that. i did get my job off have made up and not apply for a job i posted in every media group of something that i was interested in i went to all of those made up and the little part we use to introduce yourself and sort of introducing myself i just said that i was looking for jobs by hiring manager kept seeing my face pop up and i guess he was like well this girl keeps. showing up and says she's looking for a job that so i'll talk to her. from then once you get offered interviews just take all of them like i know that i told you to be discerning and yet you don't want to just work for any old company but every time you do a technical interview you're going to be more comfortable with the process going to learn something every go don't don't stress out have a lot of fun where your superhero underpants to make your. so feel better and to make friends and if you see something at a company that makes you uncomfortable maybe you thought you really wanted to work at name call start up in your city. and you go in there and so i asked you really an appropriate question now you know that you don't want to work there and you can tell people know their sketchy.
if they don't think you it's fine you probably learn something and the next time will be a total bad ass and of the awesome this is my friend shane as website she's here she is one of the opportunity scholars and she's looking for a job.
back if you feel slighted that i did my remote you who are also looking for a job to eat at me with this hashtag and i will reach we you and i encourage everybody else and here to follow that hashtag if you can't hire them. you should repeat them so that everyone else can see the you know lots of people looking for jobs. that. a on.