Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 The girlfriend project
Index -> General Programming
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Aziz




PostPosted: Thu May 01, 2008 11:12 am   Post subject: The girlfriend project

Last night, just before turning on an episode of "One Tree Hill" for my obsevive girlfriend, she asks me "Anthony, what's a good programming language to start with?" My first reaction to these questions are, "Oh hey, cool, someone wants to learn to program", but my girlfriend is not technical at all, and while she knows her way around a computer (usually), she doesn't know anything about programming or computer logic. So I doubted her at first. "Why, you don't want to program, do you?" And she give me a sheepish reply... "..well, I dunno, maybe".

I rofl'd (not literally). I've known her for almost 4 years and any time I talk of programming she gets this glaze in her eyes. And now this. I thought it would be interesting. I have just downloaded Ruby and Python and some books, so I told her Ruby might be a place to start. She said "What about Turing? That's what you started in." Again, roflcopters, I told her it didn't mean it was necessarily good to start in. So I put a shortcut to the ruby interactive shell on my desktop, and a beginners programming book (for ruby), too. I told her how to run it.

Now here's the thing. How far will she take this? This is the project, to take her under my wing and become my programming sidekick. XD. Please, do share your success/horror stories on the topic.
Sponsor
Sponsor
Sponsor
sponsor
btiffin




PostPosted: Thu May 01, 2008 11:23 am   Post subject: Re: The girlfriend project

Show her Inform 7. She may not even realize she is programming. The output files are interactive fiction games, but the sources are almost pure natural English story writing. http://www.inform-fiction.org/I7/Welcome.html Along with story, there are conditionals, variables etc. If it takes and she has some fun, she may want to get into the nut and bolts of other programming.

Inform 7 is wrapped in a fairly easy to use IDE with a "Go" button for testing. You can help her out with any error messages and the odd technical bits that may occur, but because Inform is targeted for writers more than coders, the documentation is top notch.

Another human friendly environment is REBOL. http://www.rebol.com There is a HUGE (kinda hard to manage) tutorial written by a music teacher at http://www.musiclessonz.com/rebol_tutorial.html Nick does a good job of talking in normal people speak but has been working on it for so long now that it has grown to cover a lot of bases. Plus he's posted a lot of hours to Youtube for the more visually inclined. Links in the tutorial.

Cheers
Aziz




PostPosted: Thu May 01, 2008 12:11 pm   Post subject: RE:The girlfriend project

I read that in your previous topics, sounds interesting. I'll have to look into it.
md




PostPosted: Thu May 01, 2008 10:37 pm   Post subject: RE:The girlfriend project

Brainfuck. It's the way to go.

Or INTERCAL.
Mackie




PostPosted: Thu May 01, 2008 10:55 pm   Post subject: RE:The girlfriend project

Turing! (Just to play Devils Advocate)
StealthArcher




PostPosted: Thu May 01, 2008 11:03 pm   Post subject: RE:The girlfriend project

VB6! Just so you will seriously want to kill me! Very Happy


...


Not, I say Ruby, just to play MackiTony's Advocate.
Tony




PostPosted: Thu May 01, 2008 11:55 pm   Post subject: Re: RE:The girlfriend project

StealthArcher @ Thu May 01, 2008 11:03 pm wrote:
just to play MackiTony's Advocate.

I haven't even posted in this thread yet!

Ruby is excellent in that it's very clean and easy to understand. IRB is a very good learning tool, as it lets one play around with the language and test things out on a per-line basis. No need to write out a full program and then try to figure out what a compiler is complaining about.

More importantly than technical aspects, I think it's important to maintain her interest in the field. She has her own reasons to start, and that helps tremendously. Though things can quickly turn into a grind as there is a lot of the fundamental basics that you are taking for granted, but she's got to catch up on. Setting target goals (such as an application she'd be interested in building) and referencing it with every new thing you learn, could provide enough motivation for her to get far enough to remain hooked on her own.

Good luck.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
Aziz




PostPosted: Fri May 02, 2008 5:30 am   Post subject: RE:The girlfriend project

Day 1:

Nothing so far. She wasn't home much yesterday and when she was she was scrapbooking Neutral. I did try to intrigue her more by writing a function and telling her to run it.

code:
def go()
  print "How many times?"
  n = gets.to_i
  n.times do puts "I love you" end
end


That should keep her buttered up. She typed in 100000000000000000000 and I had to kill to intrepreter, but still.
Sponsor
Sponsor
Sponsor
sponsor
Tony




PostPosted: Fri May 02, 2008 9:39 am   Post subject: Re: RE:The girlfriend project

Aziz @ Fri May 02, 2008 5:30 am wrote:
def go()

You really don't need the brackets if there are no arguments to the method (not function). def go ... would have been sufficient.
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
Aziz




PostPosted: Fri May 02, 2008 9:50 am   Post subject: RE:The girlfriend project

code:
def go
  #whatever
end


should work?

see at first i put just "def go:", but that was wrong. I myself am learning python right now, but I did go through some small Ruby tuts, so I confused them. the brackets alone was the next thing i tried so Razz
Tony




PostPosted: Fri May 02, 2008 10:38 am   Post subject: RE:The girlfriend project

yup
code:

>> def go
>>    puts "look, no brackets"
>> end
=> nil
>> go
look, no brackets
=> nil
Latest from compsci.ca/blog: Tony's programming blog. DWITE - a programming contest.
wtd




PostPosted: Fri May 02, 2008 11:38 am   Post subject: RE:The girlfriend project

You can also:

code:
gets.to_i.times do ... end
StealthArcher




PostPosted: Fri May 02, 2008 12:10 pm   Post subject: Re: RE:The girlfriend project

Tony @ Thu May 01, 2008 10:55 pm wrote:
StealthArcher @ Thu May 01, 2008 11:03 pm wrote:
just to play MackiTony's Advocate.

I haven't even posted in this thread yet!


I know you too well. Very Happy
btiffin




PostPosted: Fri May 02, 2008 2:13 pm   Post subject: Re: The girlfriend project

Gentlemen; I'll call your irb and raise you a rebol.

code:
>> loop 10 [print "I love you"]
>> loop to integer! ask "How much? " [print "I love you"]

with input error protection and a little randomness on non numeric input
code:
>> loop any [attempt [to integer! ask "How much? "] random 10] [print "I love you"] print "this much"

Adding the go function definition
code:
>> go: does [loop 10 [print "I love you"]]
>> go

or even better
code:
>> view layout [button pink "Girl" [print "I love you. Let's talk"]  button blue "Boy" [print "Let's get naked"]]

Smile
Cheers
Edit; Added the go function definition, to match more in line with the the current thread
Display posts from previous:   
   Index -> General Programming
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 1  [ 14 Posts ]
Jump to:   


Style:  
Search: