Larry Wall: Computer Programming in 5 Minutes

Video Transcript

Well I can I can certainly try. Computer programming is really a lot like writing a recipe.  If you’ve read a recipe you know what what the structure of a recipe is.  It’s got some things up at the top that are the your ingredients and below that the directions for how to deal with those ingredients.

Well it’s very similar thing happens in a computer program. You have you list out the various things that you’re going to be dealing with typically and then you have some instructions that say what to do with those ingredients. So if you can understand a recipe and follow it in in your kitchen then you could program on that level but you can take it a lot farther than that.

You know many of you I’m sure have seen the the Iron Chef show.   I love to watch that especially if they are given strange ingredients and I’m not sure I would like trout ice cream either.  But one of the things that happens there if you if you follow along is that the Iron Chef or whoever the chef is doesn’t actually do all the work.  They have what are called sous chefs that they farm out subdivide the jobs to and they’ll do the kind of busy work and programming is kind of like that.

You are the the head chef but there are bits and pieces of the computer out there that will do things for you. Now it’s not quite like iron chef because iron chef you have some fairly intelligent sous chefs who know how to boil an egg or or chop up a fish, but your computer tends to be more like a bunch of really efficient robots.  Unfortunately they’re very stupid robots and very literal-minded.  So you have to at some level you know tell them exactly what to do.  Yet once you’ve told them that you can just point to the robot and it’ll do the same thing over and over and over again and do it exactly the same. Computers like that that’s how they are valuable.  It’s sort of take over all the boring bits of our thinking and then you can kind of take it beyond that.

Instead of just thinking of yourself as the chef that’s in control. Sometimes you want to program more like you’re thinking about how the food actually goes through the process and maybe even take it up a notch.  Say here’s a factory that produces some food item Twinkies or whatever and you have raw ingredients coming in it’s.  Assuming you think Twinkies or food you have raw ingredients coming in and they go on various conveyor belts and get chopped up in various ways and they get recombined.   There’s this flow of the materials through the factory and eventually comes back out with a some sort of a product that we consider to be food.

So there’s programming languages that work like that too that are more about you just talk about how the data runs around in the in the program.  For instance your Excel spreadsheet you’re putting data into little cells and you have other cells that say well just take take make a little conveyor belt of these cells and add them up in this cell.  You’re really doing programming even if you think you’re just writing Excel macros.  So that’s like a little little Factory on your on your desktop they’re now going beyond that!

There’s various ways that you can get into you know sort of more highfalutin concepts that you would learn if you were taking a computer science degree. So the whole idea of programming on this level is you’re saying one thing some abstract thing and that controls a bunch of other things.  So the next step that happens is that instead of just thinking about data as the pieces of things you’re working with you know as strings, decks, phone numbers whatever.  You start thinking about those those bits of recipe and those recipes can also be considered data and can be sent around on the conveyor belt in your factory.  So it’s like little little conveyor that you might have in your cafe you put put little things up there that order things up.  So when you start talking about actions and abstracting them.

That you can start talking about doing them multiple times and looping and this action may do this action.  Which might come back and do the thing and you get a recursive sort of fractal pattern and so this this is these are the basis of the more mathematical views of programming.  But you know you don’t have to do all that at the beginning you can just start off with a simple recipe ID and add things on as you go and learn as you go and then you’ll do fine!

 

Additional:

If you want to make money out of programming, you don’t have to got the traditional route and sit at a desk coding for hours.  There’s a whole world of opportunities for those who can code in all sorts of areas.  If you look online you’ll find more and more ways that programming can help or even completely pay the bills.

There’s a lot of demand for small companies and businesses for ad-hoc programming skills which can be quite lucrative. For every Microsoft and IBM there are thousands of smaller companies who need these skills for support and development. There’s a whole industry for example of VPNs, proxy and security services who always need network support and programmers. The company referenced in this post about How to change country on Netflix account is a prime example.

Another area which regularly recruits is the booming ecommerce and online retailing sector. Smaller companies and websites often can’t afford full time staff but are happy to engage on a project basis. This means you can get a simple job producing some code for a single company producing a product like an application to access rotating proxies or similar and then get follow on work supporting and upgrading.

Leave a Reply

Your email address will not be published. Required fields are marked *