SunshinePHP 2014

Cómo convertirte en un programador mejor

Rowan Merewood  · 

Presentación

Vídeo

Transcripción

Extracto de la transcripción automática del vídeo realizada por YouTube.

so this is all going to talk about today building better developers and that's a that's a pretty big philosophical question but before we get into that one let's do some of the more straightforward ones just so we can get to know each other Who

am I why am I here so if you want to follow me on Twitter so at rowan underscore em if you want to find me on google+ it's google com plus round meal would if you want to find me on IMDb you can go there and find out exactly why i'm on IMDb i'll

leave that conversation for the bar later and why am I here then so I'm this can be our little secret I'm not a good developer but I feel like I've worked with a lot of people who were and over the years they've taught me a whole bunch of different

things so so this talk is basically just a long rambling series of my opinions about things so little lessons that I've picked up little stories that I've heard bits and pieces where I think we can make better developers so this is what we've got

this is our sad average developer and and he's sad for a number of reasons kind of looks a bit like Kristen Stewart from twilight staring off into the distance it's got a couple other problems as well it good ABS though so he's got that going for

him so what we're going to do over the course of this talk is we're going to change this guy we're going to take away the parts that I don't approve of we're going to put some new ones in there and we're going to build something better

at the end of this okay now one of the things that I wanted to say though is often i come to conferences and at the end of the conference I kind of go back to my job actually feeling like less confident than when I came to the conference because suddenly I'm

here and I'm surrounded by all these people and it's kind of like oh it is very clear that I am an idiot and I'm hey you guys are way smarter than I am but I don't want you to be you know beating yourself up about that because frankly there

will always be people out there who are smarter and better than you in some aspect so so don't worry too much about you know trying to hack off your own limbs to replace them with something better you know maybe maybe there is some good stuff there that

you can just leave and that's okay the other thing i want to say as well is don't go crazy and think that you have to be this kind of superhero who's gonna fix all of this stuff like you're not gonna go back to work on Monday and immediately

kind of go hey guys I've put in a CI server and now we're not rolling anything out unless it's got a hundred percent test coverage no one's no one's going to thank you for that all right not immediately okay so don't try and change

all of this stuff on your own because if you decide that you need to be the one superhero the one martyr and the organization then not only are you not gonna do it you're never going to be the best of everything and you're going to burn out along the

way and when you burn out and you know you're in the middle of the office and have that nervous breakdown you just kind of tear your clothes off and walk out into the sunshine go everybody else is going to be left there having to clean up your mess as

well so it's not just going to be you going down in flames you're going to take other people with you okay now the other thing about this talk is we can give a little interactive not only am I just going to spell my opinions about development I'm

also going to give you an insight into a whole bunch of books and films that I believe you should have seen so what we're going to do is whenever you see something on here if you recognize where it's from then feel free just a shout out and we can

see and if you don't then this is going to be doubly educational for you because I'm going to give you a whole reading list and watching this that you need to go and take care of okay so at first yet eter this is the tool that you spend almost all

of your day with so it needs to be a part of you it needs to be like a reflex and tools are there to help you achieve the goals so for me I kind of have a I have a love-hate relationship with eclipse I come back to it on a sort of semi annual basis to see

how not sucking it is at doing khp development and and every year I managed to use it for about three or four days before I find myself falling back to other editors again but one of the things about the tools that we use as developers is that this is not

usability in the sense of you know grabbing grabbing an iphone app and just intuitively being able to use it you're a professional so your tools require investment from you into making that tool like a reflex that just becomes part of you okay so this

is our first body part that we're going to deal with this is there this is a hand with six fingers on it yes yeah okay so in the princess bride which if you haven't read it or watch it you need to go and do that now well not right now but you know

it give me an hour okay now count Rugen in that he has six fingers on his hand now the reason he has six fingers on his right hand is because of the editor that he uses he suffers from a condition known as Emacs hand because because the there are certain things

you know like if you want to write a file you have to put your nose in a particular position and hold down 17 keys at the same time so before we get on to what my favorite editor is and it take you a little story so does anyone read any neal stephenson Wow

okay good guys start noting this down you're going to need to okay so Neal Stephenson is a like mostly a science fiction author but he also does a bunch of other technical related stuff did a really good essay in the beginning there was the command line

but he also wrote this story about a job they had over summer when he was a lot younger and he talks about this drill that he used from the construction site called the whole hog and essentially it was just this metal box that had a hole in one side where

the drill bit would go it had a slot on the other side where you could basically put like a new an iron bar or something called it in place and it had a button that made the drill go and when you press that button the drill would start and it would not stop

until you stopped pressing that button it didn't matter what you put in front of it it would just drill straight through it he was saying they were there were issues you know where people haven't secured themselves properly so they would be drilling

into something that was quite hard and the drill wouldn't stop so it would just kind of spin round and throw them into a wall or something so these are these are serious tools and after he got used to it so this just a little excerpt from it this this

for me was the bit that started to feel a bit like some developers I've met when they start to have opinions maybe this is a bit hypocritical now now I'm not like this there's just the looking at other drills and considering them nearly scaled

up twice to design to exploit the self delusional tendencies of soft-handed homeowners and it is kind of like so that's that's the the area you win when you know ages ago when people on their websites would kind of proudly add the banner that says

made with notepad kind of thing and and now you kind of have that sort of slightly sneering looking down on that you kind of like you write code in notepad but this is the thing is our tools are designed to do specific jobs and they can be very dangerous black

boxes if you do not put the effort in to learning how to use those tools correctly so with that in mind I want to tell you about my favorite black box so VIN then really comes into the comes from the philosophy of old-school unix tools where when something's

going right you get no output and also you don't get any kind of information about how to use the tool or anything so who's who uses them okay good so you guys know that well before you've added your 500 lines of MRC to make it look completely

different to every single other instance of them if you just load up them normally you get nothing you get a blank screen but if you want to get into using vim now the thing is the reason is that's the most efficient thing to do okay you don't need

all that extra information because you should just be reflexively going through these keys dropping into edit mode doing stuff you know all of these kind of bits and pieces but you do need to start somewhere so if you want to get into them vim comes with its

own little vim tutor so you can run this and what this does is it loads up them for you with an existing text document and just by reading the text document it explains to you how to start navigating and how to use the various commands so for example you wouldn't

use the arrow keys to move the text down that would be ridiculous and inefficient so you actually use use J&K to navigate through the text because that means you don't have to move your fingers off of the home row on the keyboard they still that's

a lot quicker than going all the way over to the arrow keys which are miles over in that direction okay but but you know if you go through the tutorial and you learn this stuff then those are that's valuable time that you're saving you're not fighting

with your editor your editor becomes this kind of reflexive part of you that you are just able to really rapidly do this stuff so you start going through this explaining all of this now if the command line does not get you as kind of ridiculously excited as

it does me then there are other ways to get into them as well the stock isn't entirely about them I mean we can do that if you want so if the command line is not entirely your thing you can go here vim adventures com okay which is I gave these guys my

credit card details instantly and bought this so this is like a top-down RPG that takes you through how to use vim so you move your little guy around using using the H&K NJ keys and you navigate through and you collect commands as you go around so it's

like you're going in here so you start learning the commands that will let you jump past the rocks and open the chest and all those kind of stuff I'm at the end of it it's it you're learning them at the same time like they're sneaking it

[ ... ]

Nota: se han omitido las otras 5.237 palabras de la transcripción completa para cumplir con las normas de «uso razonable» de YouTube.