tags:

views:

247

answers:

11

When a programmer is working, you see somebody typing on a computer. This is not like being a mountain climber or a rock star. Everything we do is inside a computer and most of the time people don't understand what we are doing. How can I show others that programming is really an interesting fun thing?

+3  A: 

Explain to them that being a programmer is something like being the ruler of your own kingdom (and your friend's, and the world's [assuming you work on the web!]). You can do whatever you want, as long as you don't make the computer mad by being unreasonable, or unclear.

Fiarr
I sometimes try a variant of this, where I tell people that programming is like creating your own universe where you get to define the laws of physics and control everything. Blank stares.
MusiGenesis
Haha, you most likely forgot the evil smile :D
Fiarr
+4  A: 

Games, games, games. I got into programming because I thought I wanted to program games (I didn't), but most people have always wanted to make a video game.

Dan
game programming is painful :(
Aziz
not to mention hard
waqasahmed
try something like pygame, xna, or basic command line games
Dan
Game programming is fun, as long as it isn't your job.
Cybis
@Dan.. people usually get into it because they want to make a CS or civilization clone. Commandline games won't do it for them... xna is pretty neat however.
waqasahmed
+1  A: 

Make sure you're actually programming something interesting and different, and then show people what you've created. Unfortunately, 99.99% of what programmers do is not interesting or different, so this is a tall order.

Alternatively, show them one of your pay stubs, and compare and contrast (hopefully favorably) with managing a Burger King.

MusiGenesis
"Unfortunately, 99.99% of what programmers do is not interesting or different, so this is a tall order."If I agreed with this statement, I must be one of the lucky 0.01% ;) As it is, I cannot. Making programming fun is easy if you're even a tiny bit creative.
Rushyo
@Rushyo: actually, I stopped at 99.99% because I got tired of typing 9s. I consider myself very creative, and I'm only at maybe 95% not-interesting/not-different. This is not by choice, but because not-interesting and not-different pays a lot better than interesting and different (unfortunately).
MusiGenesis
It depends on what you're interested in. I wouldn't be interested in iPhone development, or writing some blogging engine. I still enjoy programming though - like 3d apps with OpenGL, or playing with algorithms from various AI books.
Cybis
@Cybis: why not iPhone development? I think I may be romanticizing the platform a bit (because I don't actually do it), but it seems like you can do pretty much anything at all on an iPhone. I'd love to write an app that just spits out random pirate insults.
MusiGenesis
The iPhone is just an expensive toy. Worse, a status symbol. It kinda sickens me that people think they need the latest expensive gadgets just because everyone else has them.
Cybis
I've written a few iPhone apps. The novelty wears off pretty quickly but they often prove useful.
Rushyo
+4  A: 

I think video games are what turn most people on to programming. Create something fun (an Unreal Tournament mutator perhaps?) and show it off to people.

I learned programming by trying to make Quake 2 mods. I really didn't know C++, but still managed to do some awesome stuff (Rocket-launcher machinegun, baby!)

Cybis
LMCTF was the best fps ever!
Maslow
+1  A: 

If it doesn't interest them, then you're not suddenly going to make it seem interesting.

I wrote my first video games in BASIC at the young age of 9. I wrote my first online game at the age of 12, had my first MMO at 16 and went on to do a Games Programming BSc. During that time, I've seen so many people become disheartened and drop out. The large majority.

Programming web sites, on the other hand, offers much more immediate results and doesn't require a whole bunch of specialist skills to do well. You can concentrate on your preferred areas (eg. graphical design) rather than gaming which, as a hobbyist, you have to become fluent in everything just to get started.

You have modern tools like ASP.NET deliberately designed to ease you in, only introducing you to new concepts when you feel you're ready for them. Although I also know tons of people who are utterly paralysed by fear of moving on from their comfort zones in VS.

That said, modding can be a superb introduction to programming. It has the caveat that you have to really happen to like a moddable game, though.

Rushyo
+1  A: 

I often build fun and interesting things to share with my friends, like those you can see in my ugly web tools repository, but when some of them ask me how do I do it and I show them, they think "WTF it makes no sense at all, you must be autist"... LOL

Havenard
I was thinking more "WTF? None of these links work." I'm using IE, so maybe that's why.
MusiGenesis
+1  A: 

Show them how you can solve a real problem through software.

I wrote some judging software for a beer tasting my buddy and I through for our birthdays. It's amazing to see people cooperate, and how interested they were in the solution.

They all lit up when they saw the results after voting for the beers they had brought.

I emailed people the google project link so they could learn how we pooled it together.

Phillip Jacobs
+3  A: 

I wouldn't.

The good programmers that I've worked with have all been the ones that think it's fun without any convincing. I have yet to meet a programmer who got into it because of the money that truly was passionate about it. The good ones have ALL been the the types who saw programming as cool, fun, challenging, whatever on their own. It just tripped their trigger naturally.

On the other hand, those that I've worked with who are mediocre or worse, are generally the people who got into it because they thought it was a good career choice, or because they thought it was where the money would be at, etc.

So, I think it's a BAD idea to convince people programming is cool. Let the ones who think it's cool naturally join the club, and the club will be better off.

David Stratton
Doh, sounds like I'm simultaneously good and mediocre or worse. :)
John Lockwood
David, people with absolutely zero experience programming today could still potentially become the next John Carmack someday, if only they have the motivation to start. I don't think the OP suggested he try to convince people to take a job programming, but rather convince people to just give it a try and see if they like it.
Cybis
I feel this way. My experiments with C# just display a little list of numbers in a console window, but behind them is recursivity or currying or something else, and its beauty is only seen by people who really love to code.This was close to be my choose for the answer, but Cybis has a really good point. I feared my aunt's programming books until I had to take a programming course at university.
yelinna
A: 

Some good ideas in Raymond Hettinger's Easy AI with Python talk.

Anon
+1  A: 

Write a program that does / shows something personal.

Something that takes in user input and outputs something with the subject's name or something like that.

That way they see how you get to craft a program to do what you want it to.

Many people like this aspect of programming [even though we can't really control it >D ]

TJB
+1  A: 

When choosing people to whom to show this fun thing, it helps to pick geeks.

John Lockwood