Riding the Latest Rails for Charity
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Title of Series | ||
Part Number | 63 | |
Number of Parts | 89 | |
Author | ||
License | CC Attribution - ShareAlike 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 and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this | |
Identifiers | 10.5446/31553 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
RailsConf 201663 / 89
1
2
3
5
7
8
11
12
19
22
28
29
30
31
33
45
47
50
52
53
58
62
67
71
74
76
77
78
79
80
81
84
85
86
88
89
00:00
Programmer (hardware)Computer programmingReading (process)4 (number)FluidPopulation densityFood energyNeuroinformatikBasis <Mathematik>CodeMathematicsMachine visionMathematical analysisTrailWordGravitationRight angleArchaeological field surveyGroup actionMoment (mathematics)Computing platformQuicksortLatent heatGame theoryGraphische ProgrammierungDisk read-and-write headOpen sourceSocial classComputer fontSystem callLevel (video gaming)Integrated development environment1 (number)DampingCodeResultantRadical (chemistry)Musical ensembleCivil engineeringFigurate numberKeyboard shortcutSoftware bugProbability density functionView (database)Case moddingOnline helpAlgebraPiInheritance (object-oriented programming)Slide ruleHecke operatorDirectory serviceConfiguration spaceComputer animation
09:50
MereologyFigurate numberStudent's t-testMathematicsVideo gameMultiplication signEvent horizonWordPhysical systemData miningMoment (mathematics)NeuroinformatikMatching (graph theory)Type theoryCASE <Informatik>Shared memoryIntegerMotif (narrative)Row (database)DampingNetwork topologyPoint (geometry)FamilyProjective planeVirtual machineParticle systemComputer programmingStorage area networkOffice suiteDirection (geometry)RoboticsTranslation (relic)Formal languageCodeEuler anglesAreaRegulator geneDegree (graph theory)Social classView (database)Musical ensembleComputer scienceBookmark (World Wide Web)Data conversionObject (grammar)Different (Kate Ryan album)Inheritance (object-oriented programming)Lattice (order)CodeCondition numberBitGame controllerConnectivity (graph theory)Principal idealAlgebraTouchscreenPlanningProgrammschleifeComputer animation
19:31
Figurate numberNominal numberRule of inferenceGroup actionEntire functionInsertion lossShared memoryRight angleMultiplication signTablet computerSoftware frameworkWebsiteMathematicsMereologyPlanningFrequencyField (computer science)Video gameRepetitionTerm (mathematics)Formal grammarRevision controlForm (programming)Focus (optics)Different (Kate Ryan album)BitIntegrated development environmentProduct (business)BuildingInheritance (object-oriented programming)Series (mathematics)Message passingRow (database)FacebookMatching (graph theory)DatabaseGraph (mathematics)QuicksortDatabase normalizationPower (physics)SpacetimeProcess (computing)Workstation <Musikinstrument>Complex (psychology)Cellular automatonStability theoryDomain nameCore dumpHecke operatorInternetworkingType theoryOnline helpUniform resource locatorComputer animation
29:11
MathematicsOrder (biology)SpreadsheetComputer animation
29:57
Network topologyBuildingProcess (computing)Form (programming)TrailDependent and independent variablesOrder (biology)Execution unitMobile appComputer animation
30:34
EmailMultiplication signPublic key certificateMathematicsInformation securityVideo gameTunisGraph (mathematics)Metropolitan area networkRight angleProduct (business)Point (geometry)Office suiteExpected valueMobile appSet (mathematics)CodeProcess (computing)Online helpMathematical analysisLibrary (computing)BitForm (programming)SpiralProjective planeGreatest elementMaxima and minimaBuildingAreaComputer animation
35:48
Process (computing)Multiplication signMathematicsSelf-organizationStudent's t-testOnline helpMixture modelMedical imagingComputer animationLecture/Conference
36:50
Expected valueGroup actionPower (physics)MassSelf-organizationComplete metric spaceMathematicsOnline helpVideo gameType theoryLattice (order)Natural numberInsertion lossWordProcess (computing)CodeCore dump
38:40
Self-organizationGroup actionGoodness of fitUniform resource locatorTwitterChord (peer-to-peer)Right angleDifferent (Kate Ryan album)Core dumpMultiplication signCodeMathematicsHypermediaDuality (mathematics)System callWebsiteComputer animationLecture/Conference
40:36
Computer animation
Transcript: English(auto-generated)
00:12
This is riding the latest rails for charity. How many teachers do we have in the room tonight, today?
00:22
One. How many people per program? You're all teachers. And this is Teacher Appreciation Week, so thank you very much for being awesome teachers. Today's Wednesday, May 4th.
00:40
May the 4th be with you. And there's something special that our team does every Wednesday, and we do what's called bad, and I emphasize bad, joke Wednesday. So I'm going to start off the talk in tradition for my company and start off with a bad joke. And since it's May 4th.
01:01
What do you call a Jedi? Or what do Jedi use to view PDF files? Adobe, Wan, Kenobi. Yep, bad joke Wednesday. So be the change.
01:29
That you want to see in the world is a powerful quote. It's even more powerful when you put this quote into action.
01:45
And so here today, I'm going to try to hopefully motivate all of you to be the change. And hopefully, since you're such a small group, that you can be motivated to help others at RailsConf
02:01
be the change. To change the world that you personally want to see changed in the world today. So that's my goal for this talk. I'm going to start off kind of telling you how I personally am trying to be the change. And then I'm going to go into how my company
02:20
has enabled its developers to be the change. How do I, how am I trying to be the change that I want to see in the world today? Whoops.
02:46
It's skipping a slide, but the way I want to see the world change today is I want to teach kids how to code. And it's not just teaching kids to code. It's giving every child the opportunity to program.
03:03
And a lot of us think, well, it depends on the kids. Some kids gravitate more towards computer programming. They're the gaming kids, right? And that's what we think of when we think of teaching kids how to code. We think of these specific group of kids. But what I want to do is I want to change it.
03:22
I want to change the world today so that computer programming is a required class as young as kindergarten. This is how I want to change the world personally. And for me, it's really important because no matter what a child's passion is,
03:43
understanding how to use the computer as a tool gives them the edge that they need to be successful with their passion, what they want to do, whatever profession they want to get into. The computer and programming a computer will help them be that much more successful.
04:02
And so this is my passion. This is how I want to change the world. And this is my mission. And so, and I had a whole slide up there that showed me with a bunch of Coder Dojo kids and they were all, yay, we finished our code. It was awesome. So that's what we missed out there on. But that's essentially what I do on a regular basis.
04:22
I'm always looking for an opportunity to teach every kid, give every kid the opportunity to be introduced to programming a computer. And my motivation is what you're looking at right now is my children. Here we are at Super Pi Day enjoying pie together.
04:43
This is kind of a benefit of having a nerdy dad is you get all these like special little holidays and they're actually really bummed that I'm not home for May 4th, but oh well, I'm here to celebrate that with all of you. But this is my motivation. And that's a really important thing in identifying how you want to change the world
05:01
is identify what motivates you. This is my oldest son and he is my inspiration. Back in 2012, this is a kid who's kind of your stereotypical programming kid.
05:22
He came to me at about 10 years old asking me questions on how to solve algebra problems. He was reading algebra textbooks for fun because he loves to learn. When he came to me with that, I was pretty shocked. And so I instantly was like,
05:42
dude, you are gonna be an awesome programmer. I can totally see this. So I sat down with him and introduced him to computer programming. And I did that with, the only thing I knew was I was like a Ruby programmer. So, and I was like, okay, cool. Let's look, how am I gonna teach my son how to code?
06:03
And so I went in and found Ruby for Kids. I don't know if you guys are familiar with that, but it's a really awesome platform for teaching kids how to code in Ruby. And he loved it, just like I thought. He sat down, got into bugs.
06:20
He became a programmer right before my very eyes. It was such a special moment for me because he experienced what all of us programmers experience, and that is the nasty bug that you can't figure out. He's banging his head in the keyboard. Dad, can you help me? And I'm looking at his code and I can't figure it out. I'm like, wait, let's go through this together. And we started analyzing the code. He figured it out on his own.
06:40
And he did like all of us do when you figure out that bug you've been beating your head on the wall for is he started jumping up and down. He's like, yeah, Dad, we did it, this is awesome. And he's like running around, we're slapping finds. I'm like, dude, you got the bug. You're a coder. And that's when it really started, I started to think about it because what was happening to me right there is I was bonding with my son.
07:04
I wasn't teaching him to code. I was bonding with my son, very special level. And it meant a lot to me. And I have two other kids and I'm like, I want the same thing for them. And not only that, he's learning to code at 10.
07:22
I didn't learn this till like, well, I did a little coding when I was 11, but I didn't really learn to code to the level he was until I was really later high school and even college and actually when I graduated, I wasn't a CS major, I was civil engineering. And so I was really excited about that. And so we started doing it more with Hackety Hack,
07:44
Ruby Warrior, awesome game to play with kids, text-based or it's now graphical. And you get to code like the class to be the warrior and all the little features you wanna add to your word to do different things is super fun. And so I was having like more and more bonding moments
08:02
with my son. And then I wanted to have the same experience with my middle son. And he and my youngest were really into Minecraft. And so I introduced them to computer craft mod. And I don't know if you guys are familiar with that, but that was really exciting for me too. And it was actually a really funny story because I sat down with them,
08:21
showed them how to craft a computer and they're like, oh, this is cool. They're already into Minecraft. So we're crafting, this is awesome. And then I click into the computer and we're on a terminal and my middle son does like an LS command. And he's like, dad, check it out. I'm listing all the directories. This is awesome. He's super excited. And I'm sitting there going, really?
08:42
Like if I just brought up a terminal, he would have been like, what the heck is this dad? This is boring. But because I was in computer craft, he loved it. And with him, he eventually kind of got sick of Minecraft. My middle one, my younger one, still totally into it. But that's when I realized that programming
09:04
isn't about teaching the kids, about the specifics of programming, all the detailed commands. It's about understanding what interests them and teaching them through their interests. That's what's really important.
09:20
And that's when I kind of discovered Scratch. This is a graphical programming language that really allows the kids to get to their interests as quick as possible without dealing with text-based things, without dealing with configuration and any headaches that you might have in setting up coding.
09:41
And so that's when I really started working with Scratch and my middle son, because he wants to be a Broadway star. That's what he wants to do. So you're like, how am I going to teach someone who wants to be a Broadway star, get excited about computer programming? Well, it's actually really easy. You just do everything,
10:01
and you create Broadway skits in Scratch. And then instantly he's like, dude, this is totally cool. I want to do this and that. And he just starts coding without even realizing he's coding. What is he doing? He's creating, and he's loving it.
10:21
So I was really excited because I got to teach this to all my kids, and I got really, really frustrated one day. And that was when my oldest son came home from school one day, and he said to me, Dad, I'm not very good in math.
10:41
And this is the kid who was studying algebra with textbooks and he thinks he's terrible in math. He's like, I suck at math. I literally cried, couldn't believe it. I said, you are a math genius. What are you talking about?
11:01
And that was the moment when I got super frustrated with, it's not the teachers, the teachers are awesome. It's not the principals, the principals are awesome. It's the system and the curriculum that they're following right now
11:22
that prevents them from really focusing on encouraging the kids and making them better instead of discouraging them and giving that feeling without even knowing it, but giving the kids this discouraged feeling that they can't be good at something,
11:40
like math, even though they're awesome. And it was just memorization of math facts that he didn't spend time doing. And that's what gave him the impression he was bad in math. Unfortunately, then I went to a parent-teacher conference and man, did I lay into that teacher. And my poor wife had to pick up all the pieces from that
12:03
and she was super embarrassed. And I learned a valuable lesson that it's not the teacher's fault. And so that's when my wife told me, you have to be the change, you have to change things. Your job, don't put it on other people. I'm just a developer, how am I gonna change it?
12:23
I don't know anything about teaching. I don't know anything about the system. I could just go and sit back in my office with my kids and just pair with them. Like my kids are gonna have a great opportunity. Or I could try to change the world. I can make a difference.
12:40
This is what I decided to do. But I figured I'd do that once I made a lot of money because teaching doesn't pay that well. So I was like, I'll wait. But I ran into a friend of mine and he told me, hey, Joe, I'm teaching on Saturdays, computer science to a bunch of underprivileged kids in downtown San Jose.
13:06
That sounds pretty cool, actually. I'll go do that. He was so excited because he was teaching Excel and he didn't know what he was doing. And he's like, dude, you're a programmer. Like you could come and teach these kids. So I went and did that. And I spent what, like two weeks preparing for it.
13:22
Got into the classroom at Sacred Heart and started teaching a room of 13 year olds how to code with Scratch. Well, probably a third of the room was really into it because this is the only chance they ever get to sit in front of a computer because they can't afford a computer
13:41
and they live in a house with three other families. And the other two thirds of the classroom just didn't want to be there. They didn't want anything to do with it. And I was trying to explain to them how Scratch, the Scratch language went from Scratch all the way down to binary and was going through all the translations and it was like major turn off.
14:01
And so I went home, went back to the next class and I was trying to wrack my brain. I was like, do what I did with my middle son. Find out what it is they care about. So the next time I went to the classroom, I said, what do you guys care about? I went around and each child would tell me what they're excited about. And lo and behold, that's what they're excited about.
14:25
One direction. That's easy. All I did was I put one direction just like that onto the Scratch screen and we were able to create little bubbles on there and they were able to create a conversation with their favorite band members and they were so stoked and they're doing conditionals.
14:42
If you say this, then do this and they're doing loops and I'm just like, holy crap, you guys are coding. And they wouldn't leave. Like the first class, they couldn't wait to get out of there. In this class, the parents, it was on the second story, they had to come up to the classroom, okay, it's time to go. They're like, no, we wanna stay. Mr. Dean's gonna upload the music. And so I upload the music.
15:02
They wanted to stay. We played the music. It was really awesome. And then eventually the principal had to say, okay, the computer class is over. You've gotta get out now. And so that was like a really valuable lesson that I learned in being the change and being a teacher is that all the planning, you really have to change your plans
15:21
and do what's best for the students. So that's my Sacred Heart story, but there's actually another really cool story that I'll share with you guys about Sacred Heart. And it really moved me. And this is the type of things you experience
15:40
when you take these small steps to change the world. I had the opportunity on New Year's Day, one of the high schools dumped all their old computers and a friend of mine called me up and said, dude, there's a bunch of computers outside of the high school and they're just gonna go to garbage. Do you want me to get them? I said, definitely. Get them all in my garage.
16:01
And then people like actually a friend of mine from work came over and we all got into the garage and we started to build up these machines and fix them up for the kids. And so on the day of the final exam, I had the kids demonstrate to me their final project
16:21
and to the principal and to their parents. And at the end of this, it was like the greatest feeling, one of the greatest feelings of my life is at the end I got to be like Oprah and I was like, okay, congratulations. You all get to take those computers home, they're yours. You can go home and code now at any time.
16:41
I had kids hugging me, parents crying. It was the most moving experience that I've ever experienced. It was awesome. And that's the feeling that you guys get when you're being the change.
17:00
So then I got addicted and I started up and found one of the founders for Coder Dojo in Silicon Valley and I teach kids every month how to code and I do coding clubs after my son's school, still fighting to make it part of the curriculum at their school. I teach robotics during the robotics season,
17:24
during fall season at school. So I teach kids how to code through robotics. I also teach boy scouts and I am the chapter lead of little bits which is really cool electronics components that you like snap together kind of like Legos and it has an Arduino bit
17:40
so you can code these robotic components and that's super fun. The kids and I coded like an asteroids controller and we played asteroids and now with little bits being the chapter lead, I do meetings with other educators across the world in different countries and I'm being the change in the world
18:01
so my little acts there are having a huge impact across the entire world. I'm just a developer, that's all I am and I have a passion to change something and I took that step and it's completely transforming my life and other people's lives, be the change.
18:27
It's easy, you just gotta take action and do it now. All right, that's like the halfway point and one more joke for you guys.
18:42
What do you call a fight between two film actors? Star Wars, bad joke, Winston. So I work at this awesome company called onsite.com.
19:05
Don't worry, I'm not doing like the big recruiting pitch here but pretty much a lot of my colleagues are here in the front row and I really appreciate, shout out to them. They've heard this talk like I think six times and they're still here listening to it again so thank you guys for that
19:21
and it's just an awesome culture and one of the things that's really neat is we started sending folks out to RailsConf about four or five years ago and it really inspired the company
19:40
to start up its own internal conference and the motivation behind starting up this conference was really developer happiness. This conference is called Dashcon and we've done it three years now and it's called Dashcon because our URL is ondashsite.com
20:03
which is the worst thing you can do in a URL is put a dash in it, that's terrible. Like internet one-on-one, don't pick a domain name with a dash in it but we're onsite so we own the mistake. We are Dashcon, you know, so it's a really fun time for all of us
20:20
because we learned from RailsConf that it's so, it's a special feeling we get when we come together and we share our technical skills, we share our, you know, learning new things, it's just really awesome
20:40
and so now we do this as a team and the company allows us to take a whole week off of work, the entire engineering group, QA, IT, all the developers, everyone and we all get in a room and we talk about anything that we want, whatever our passion is and we share it with each other. It's a phenomenal bonding moment, phenomenal and the productivity you get out of that is amazing.
21:04
I don't even think I need to explain it, it's obvious. And this year we did something really special where we decided to do a hackathon for charity.
21:21
We were really excited about it because what an awesome way to do team building between a bunch of engineers is to do a hackathon for charity. Now it's not the hackathon in the traditional sense, it's not the hackathon where we're competing against each other to see who can come up with the best product, it's really identifying core charities that we think we can make a difference in and we all get in a room
21:41
and focus on delivering a successful technical solution for this charity to help them with their mission. Now I'm gonna warn everyone right now that these charities are very sensitive topics and their missions are phenomenal in what they're doing.
22:04
So I'm gonna explain what these charities are right now. First charity we looked at was the Housing Industry Foundation and what we did for them was providing a way for them to manage their grants and what they do is they provide grants
22:22
to people that cannot afford to pay their rent and so they're gonna become homeless. They cannot afford to make that bill so they're gonna become homeless. It's because of an unfortunate circumstance
22:41
that came up in their life and life is cruel. There's no second chance. If you can't pay your rent, you get a three day payer quit put on your door and if you can't make up that, I'm sorry, you're out on the street and you've got a black mark. You can't pay rent.
23:00
Who's gonna want you to live in their complex? It's really sad and HIF, what they do is they help and give them another opportunity so that and they just give them a grant. They give them the money so that they can pay the rent and that's pretty awesome.
23:21
That's a killer mission and we as a development team were able to help them and that was a big match for us because they were excited about it. We were excited about it. We saw something that we thought we could definitely deliver to them to help them with their mission. So another charity that we looked at was in the city of San Francisco
23:44
and they are creating like a database for low income housing so you can search if you can't afford the houses in San Francisco or apartments in San Francisco, you can search through this database that they wanted to create and you could find out what you can afford
24:01
and that really wasn't a match for us in terms of what we were trying to accomplish and it's primarily because they had a lot of help and support and with Google, they had a lot of support with Facebook and it was just too complicated for us to kind of inject ourselves into that complexity. So beware when you're searching for these charities that you wanna do a hackathon for or that you wanna start a meetup on,
24:23
make sure it's a match with what you're trying to accomplish. Now this next charity, one of our, so those were the two charities we kinda looked at and we were like okay, well we got one and another developer on the team came to us and said,
24:44
hey, there's another charity that means a lot to me and I wanna be the change and it's pretty awesome because he came to us with this charity called Grateful Garments
25:01
and that picture says it all. It helps those that have been sexually assaulted and what happens today before this charity was they would leave the police station or the hospital in the gown on the right.
25:25
What this charity does is it gives them clothing so that they can leave with a sense of dignity, whatever dignity is left and that touched the entire development team
25:40
when he brought that forward and we all were like yes, we wanna take that on too, we wanna help them. So we started up a product called Stockade as part of our hackathon as well. So now it's time for us to plan this out, right?
26:02
How the heck are we gonna do this hackathon for these charities? And the key thing in that whole process of planning is meeting with the charities, understanding what their needs are, understanding their existing technology stack, understanding how they do things today, what their processes are, what their mission is.
26:24
We didn't have the opportunity to actually volunteer and work with them on these charities like in the field, like actually going through the inventory of clothing or helping them fill out grants but if you can do that, that's even better
26:42
because you'll understand their business process and you'll understand how you can help and let's face it, with our skill set, we're superheroes to them. So we really should share our talents with these charities that are trying to do good
27:01
in the world and then we can be the change. You also should set up your environment, your stack, figure out what are you gonna use, are you gonna use Rails 5, are you gonna use Rails 4.2, are you gonna use a different framework, like what makes sense, right? And so it really allows you to start analyzing clean slate, no legacy code,
27:21
kind of our dream, right? We wanna be able to build something from the ground up for them and what we did was we first went in, we're like, awesome, we get to use Rails 5, for sure. So we dove in with Rails 5 and we were checking out, this is before the hackathon started, this is what I mean by planning and we started exploring it, like how's Dubai's gem gonna work?
27:41
You know what, it doesn't, it doesn't. So we instantly went back and said, you know what, we have to go back to a stable Rails environment. We have to respect the charities. So that's the key message there when you're planning this is listen, respect the charity and put together an environment
28:04
for them that you have some experience. It's not free for you to learn every new technology in there but I guarantee you will learn new things. So I'm gonna show you a little bit about where we're at with these
28:22
different technologies that we built for these charities and they're still under development. So, Grantzilla, they started with just like an access database, a bunch of fields and the way it worked was they would manually fill out a form and then they would manually type in, or the person filling out the grant would fill it all out and then they would give it to the rep
28:42
and then the rep would get it and they would manually fill in all of these fields and then they would have a record and access the query again, so it was exhausting. Totally exhausting. And we built that, you guys are Rails developers, that's like a scaffold with bootstrap, that's easy. And they're like, oh my god, you guys are superheroes,
29:01
you're the best. Yeah, we're being the change, it's awesome. And this is Grateful Garments, this is how they're doing it today before we do our stuff, this is their Excel spreadsheet, inventory along the left column there and how the orders all the way across,
29:23
like this is gonna keep going till LC, like I didn't even know Excel went out this far, it's ridiculous. And this is how they're managing it today, like so inefficient. And you think about it and you're like, oh yeah, that's painful to use, but you know what happens, is they get the orders wrong and when they get the orders wrong, they ship the wrong stuff
29:40
and when they ship the wrong stuff, it's costing them money. They're trying to do a good thing in the world and it's painful, but they can't. It's primarily because of the technology that they're familiar with. They need a superhero to come in and be the change. Oh, we got the LC, crazy, huh? So this is what we have now
30:01
that we're in the process of building for them. I mean, it's night and day. Here's the orders, simple list, there's everything in the order, the inventory, this is responsive design so they can walk around with their mobile app as they're walking through their warehouse to track the inventory. Like, dude, I don't really even need to say much more.
30:23
I mean, this is obvious. And you guys all know, this isn't hard, this is easy. But they're like, you guys are awesome. And they can't wait for it to be done. But as always, we're engineers and we're trying to build this thing up
30:40
and give them this awesome shiny car right from the beginning. And we're not gonna just give them like this small little MVP thing. We wanna like overbuild this thing. So we in the hackathon, you know, silly us, we're like, we're gonna deliver this whole thing to you guys in three days. Yes, and they even were like, really, you guys can do that? Of course we can, we're bad ass.
31:01
And yeah, we're still working on them. Because we're fine tuning them, we're engineers, right? Oh, this isn't secure enough. We need to have the best security with SSL certificates. And this is, we can be more efficient here. And we're just like, we can use an awesome mailing tool
31:22
to send, you know, help with your process and blah, blah, blah. And we just go on and on and on. And we learned a really valuable lesson is don't over promise. Set your expectations early and start off with the skateboard. They're gonna be happy with that. Just something to get them from point A to point B. And then iterate on it.
31:43
But iterate on it as if you're building a minimum viable product. And oftentimes there's a misunderstanding with that. And a lot of people think it's the top way of doing it, but it's really the bottom way. You have to have something that works. You can't just throw a wheel at them and say like, yeah, good luck.
32:02
This is cool. These are our get commits from Stockade. And you can see on the top there during the hackathon that everyone is doing all their commits and all this activity's happening. And then when the hackathon ends, it kind of dies off. But the coolest thing about this graph that I love so much is look at Tech.
32:25
He's not the highest in the beginning, but as the hackathon ends, he's being the change. He found his passion. He found his motivation. He found his kids to code. And that's this Stockade. And now this is a guy, he told me,
32:42
gave me chills down my spine when he told me this. He says, I used to go to work, come home, and play video games to relax. Now when I go home, I'll be the change and I code for charity. And that's so much more rewarding, so much more fun, and makes me so much more happy
33:01
than relaxing and playing video games. And it's evident, I mean, look at his commits. It's awesome and inspirational, and it's inspired a team to form around him. We finished the hackathon at our work and it was like, okay, that's it. Don't do the hackathon during work hours anymore. These folks are doing it, as you can see,
33:21
from the commits that are happening after the big spike in the beginning. They're doing it at night. That's pretty cool. They're being the change. So, yeah, so if you're like, yeah, that's cool, Joe. I don't have time for this.
33:41
To, I got a lot going on in my life, and maybe one day when I have more time, I can do this. Well, you know what? Make the time. You all made time for RailsConf, right? Why? Because you wanna be a better developer, right?
34:01
I mean, we have a lot of stuff going on at work right now, but you're here because you wanna be a better developer. Well, guess what? If you code for charity and you do this, it's gonna make your path to becoming a better developer that much straighter because you're gonna learn how to unwrap complex or simple,
34:25
depending on the charity, business processes, and apply a technical solution to that. You're gonna learn when Rails 5 comes out and is stable, we're gonna learn how to migrate from 4.2 to 5. We're gonna be writing the latest Rails
34:41
with all these awesome gems and trying it out with these charities. Again, be respectful. You don't want to just say, oh, cool, I wanna learn this thing and I'm gonna add all this risk to this charity. No, it keeps you honest. And you're doing what you should do to become a better developer, and all that is
35:01
stuff that Jeremy was talking on the keynote this morning. He was saying all these cool things about a team and you're like, oh, that's not my team, I don't have that. Well, guess what? You can have it right now. If you just be the change and you code for charity, you can have that. Go in and say, oh, yeah,
35:21
I already upgraded a whole app from 4.2 to 5 and this is what you don't wanna do, this is how you wanna do it, and everyone at your office is gonna be like, holy crap, this guy's awesome. Like, oh, did you do that on your personal project? Yeah, I did, but it's actually really implemented for real and people are using it. Like, customers of mine, this charity, check it out.
35:42
You've convinced everyone with that. You're the boss, you're the man. And it gets you closer to whatever your dream job is. That's personal, right? My dream job is very different from what your dream job is. Identify what your dream job is,
36:01
identify what charity you wanna be the change in, and that is really going to be a way to get there. Some of you may be thinking, like, I'm too junior to do this, I'm not good enough.
36:20
No, you're awesome. You're 10 times, 100 times better than these charitable organizations. And you know what? I'm sure, I am positive you'll be able to motivate and encourage a senior engineer to help mentor you along the same mission to help that charity.
36:43
Phenomenal opportunity for you as a junior engineer to become a better developer and to find your dream job. So let's review. These are the tips that we discovered in being the change from our hackathon. One, find your motivation.
37:01
That's personal, you have to find yours. The way to do it, try one charity, then try another one, try another one, and you'll find yours, I promise. But don't give up, because once you find your motivation, you're gonna change the world. Explore many charities to identify the one that's for you just like I just said.
37:22
Identify a charity advocate. You really have to identify someone in that charitable organization that will, the power to help you set up DNS, they're gonna understand the business processes so you know what technology and how to implement the technology. Someone you're gonna need to transition the technology
37:42
over to so that they can use it and they can maintain it. So that's really important. Manage the expectations, like I said before. We did a poor job in that, but doing that is really critical to the success.
38:00
And like I said, just a little skateboard is all they really want, and they're gonna be more than happy. And as we all know, as engineers, we're gonna build this up to be the awesome rocket ship. Get a team around it, don't do it alone. So be that core committer on that charitable coding for charity, and then have others committing with you.
38:23
And that way, if life gets in the way, you can have someone help you out and you don't leave the charity high and dry. And just really define what completion is for them, so they understand that.
38:42
So what do you wanna do to change the world? That is the question I put out to every one of you. And if you don't have the answer to that, that's okay. I didn't, at first. Start. You can start today. You can start right now, right after this talk.
39:03
Go out to these charitable organizations that we did the hackathon for. Do a pull request. Help us out. Give to these charities. If it's education and teaching kids to code is your passion, talk to me. I'll talk to you forever about that. This is like my passion. But I've been moved so much by Grant Zilla.
39:22
I am also one of the core committers for that. So you can make a difference right now. Try it with these charities. Maybe it'll strike a chord with you and that becomes your passion. Maybe not, but at least it's a place for you to start.
39:44
And if I can ask you all to do a favor and tweet this out to your community. Tweet this out to RailsConf. Get them on these URLs and get people to start helping these charities out because they're doing an awesome thing. There's also Ruby for Good that I don't know if folks have heard of, but that's also a really cool organization
40:03
that you can start learning about other charities. And then just Google what motivates you. Google it. Find out what's out there and start looking into it. Start a meetup. Take action. Do it right now. Be the change.
40:22
Thank you. I'm Joe Dean from Onsite. We're always hiring as well. So thanks so much for all your time. I appreciate it.