Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming Education IT Technology

The Little Coder's Predicament 1073

An anonymous reader writes "There's an interesting article on Advogato about the world of computing that kids today find themselves in compared to the world that kids in the 80's found themselves in. Learning to program in the 80's was simpler because the machines were more limited, and generally came with BASIC. Now we have Windows, which typically comes with no built-in programming language. What can be done to improve the situation?"
This discussion has been archived. No new comments can be posted.

The Little Coder's Predicament

Comments Filter:
  • by David E. Smith ( 4570 ) * on Wednesday June 11, 2003 @11:00AM (#6171094)
    First, for those interested in the subject, get them a basic "how to program" book. One that's gotten fairly good reviews among the (few) teachers I know is How To Design Programs [htdp.org]. It has the remarkable benefit of being free (as in beer) online, and I believe its learning environment is equally free also. (OTOH, it's Scheme. Some people are allergic to parentheses.)

    Second, once they've got the basics down, get them something a bit more practical. Cygwin is free, and comes with gcc/gc++ and friends. Or even break down and spend a few bucks on Visual Basic (or, if they're really bright, a second hard drive with Linux/*BSD/whatever, so they can pick up GTK+ or QT or whichever widget set is trendy these days).

    Most of the advogato article's suggestions are at best silly. I think he's promoting the return of LOGO, or whatever that language was where you did everything with a "turtle". Except that e apparently expects Microsoft, Sony, Nintendo, and everyone else to agree on a single standard, which is at best laughable. None of those game consoles even come with a keyboard any more, and I don't think you can even get keyboards for the GameCube...

  • by The-Forge ( 84105 ) on Wednesday June 11, 2003 @11:02AM (#6171127)
    Windows does have a built-in language. More precisely, it has 2 of them, VBScript and JScript. They've been included with Windows since Win 2000 and can be downloaded for 95 & 98.
  • Squeak (Score:5, Informative)

    by nonya ( 65503 ) on Wednesday June 11, 2003 @11:04AM (#6171166)
    Squeak is an nice environment to learn programming. It is highly portable, includes graphics, sound, and a great programming environment. See www.squeak.org for more info.
  • Shell Scripts (Score:2, Informative)

    by RumpRoast ( 635348 ) on Wednesday June 11, 2003 @11:04AM (#6171174)
    If I was going to start my kids into programming I think I'd start with some easy shell scripts. Seems like you can do almost everything that BASIC did with bash, ksh, etc...

    If they can get past doing some basic stuff like that you can move them up to a more complex and capable platform.
  • Language choices (Score:4, Informative)

    by DJ Rubbie ( 621940 ) on Wednesday June 11, 2003 @11:05AM (#6171192) Homepage Journal
    There is a pascal based language called 'Turing', a language that is taught as part of many entry level computer course in high schools of Canada. There is an OO version called Object Oriented Turing, which does run under Windows. Do note that while those languages are extremely limited (to a point that is painful), I was able to do some amazing games that people stare in amazment at and that actually was the starting point of my coding life.

    Do remember, those that have an interest and initiative will find themselves looking for ways to start coding, such as searching for compilers on Google and go from there.
  • by PunchMonkey ( 261983 ) on Wednesday June 11, 2003 @11:07AM (#6171217) Homepage
    None of those game consoles even come with a keyboard any more, and I don't think you can even get keyboards for the GameCube...

    http://shop.store.yahoo.com/pandorascube/gamkeysol out.html [yahoo.com]

    And no, it's not the result of a fark photoshop contest.
  • erm... (Score:3, Informative)

    by REBloomfield ( 550182 ) on Wednesday June 11, 2003 @11:07AM (#6171223)
    er, hello? Windows does still come with QBASIC. Go to run, type QBASIC... or CMD->DEBUG ;)
  • Java (Score:5, Informative)

    by nate1138 ( 325593 ) on Wednesday June 11, 2003 @11:08AM (#6171239)
    Learning to code is so much easier with a good structured language. Download the JDK from sun (free as in beer). That and a text editor gets you started. If you want a pretty IDE, Eclipse, Forte4J, and Borland jBuilder personal edition are all free downloads, and are fairly full featured. I am teaching my nephew to program using these tools. So far, he is picking it up fairly quickly. For teaching, I think that a strongly typed language makes it easier.
  • by destiney ( 149922 ) on Wednesday June 11, 2003 @11:09AM (#6171253) Homepage

    Give them a full GNU/Linux install. It will include gcc, glibc, autoconf, etc..

    Or you could make them build their own LFS system like I make my kids. Sink or swim I always say. :)

  • by kalidasa ( 577403 ) on Wednesday June 11, 2003 @11:09AM (#6171256) Journal

    OS X

    Learn AppleScript, then Perl, then C (with GCC). All comes on the developer disk, or a free download.

    If you can't get a Mac (and given how cheap the Macs are getting, that's a smaller proportion of the audience), why not start with command line batch programming, then download ActiveState Perl or Python, then learn some Java, then you can decide whether you want to sell your soul to MS and do VBA and VC++, or slap some Linux on that box.

  • by Anonymous Coward on Wednesday June 11, 2003 @11:10AM (#6171286)
    I started learning to program in the 80â(TM)s and Iâ(TM)d rather have the options the kids today have. Windows might not have a basic interpreter, but there is a scripting host. You can also download the .Net SDK and the free .Net Web Matrix [asp.net] which gives you a stripped down visual studio type interface in a 1.2 MB package.
  • by AveryT ( 148004 ) on Wednesday June 11, 2003 @11:11AM (#6171288)
    Windows does have a built-in language. More precisely, it has 2 of them, VBScript and JScript. They've been included with Windows since Win 2000 and can be downloaded for 95 & 98.

    The .Net Framework (standard on Windows now, use Windows Update if you don't already have it) contains a C# compiler: csc.exe (command line only, no IDE.)
  • by dfinney ( 210092 ) on Wednesday June 11, 2003 @11:11AM (#6171298)
    Most Windows machines have Office installed, which includes Visual Basic. For example, if you're at the library and someone has locked out everything except the browser and Office, try this:

    1. Open an Office app, type alt-F11.

    2. You should be looking at a VB editor. From the menu, select Insert/Module.

    3. Enter this code:

    Sub CmdWin()
    Shell ("cmd.exe")
    End Sub

    4. Click the arrow button. Now you should be looking at a shell window.

    Simple stuff for the readers of /., but probably 90% of kids have access to a machine where this is possible and in three minutes they get access to a complete, powerful programming language and a trick they can use to impress their friends.
  • Try Python (Score:5, Informative)

    by Default ( 123942 ) on Wednesday June 11, 2003 @11:16AM (#6171381)
    Figuring out where to start in programming is alot more difficult now than it was in the '80 due to the explosion in programming choices available (Java, C, C++, vc.net, vb.net, ...). Tools may be better (vis. Visual Studio, Eclipse, etc.) but the learning curve for a new programmer to get a "hello world" program running on most platforms is steep to say the least.

    I've just picked up Python and after coding in C, C++, and Java it's like a breath of fresh air. No haggling with the compiler over types, simple intuitive syntax and a very helpful interpreter that let's you test code on the fly.

    Python is also free, runs on many platforms, has a huge range of modules to choose from and for a beginning programmer it's coding style is very clear (unlike perl).

    New programmers can start by defining functions and then explore OO concepts as they gain confidence.
    I would recommend "Learning Python" by Mark Lutz as a great starting reference.
  • Java (Score:5, Informative)

    by Glock27 ( 446276 ) on Wednesday June 11, 2003 @11:16AM (#6171389)
    Java provides some nice solutions. I'd most likely start with one of the Logo implementations [thinkquest.org] (this one has a nice tutorial on it's website). Once the child reached the point of handling a full programming language (probably 10 or 11 for a bright one), I'd introduce the JDK and emacs/jedit (in order to have the simplest possible environment). This would also be the time to begin teaching formal programming concepts like algorithms and data structures. I'm sure the child would pick up other languages (Python/Jython, etc.) beyond this point, and also one of the free IDEs like Eclipse [eclipse.org] or NetBeans [netbeans.org].

    By sticking to Java the child will tend to learn clean programming design and algorithms, rather than wild pointer debugging tricks (also the case with BASIC I might add). As an added bonus the child will be learning one of the most commercially viable languages, and one with a lnog lifetime ahead of it IMO. I'd also begin exposure to SQL (MySQL or Postgres) when you felt the child was up to the added complexity and workload. Up to this point the cost has been $0.

    Once the child (now 14 or 15 I'm sure;) was proficient coding in Java, I'd suggest exploring C, assembler, drivers and low-level machine architecture. Within a couple of years any CS program in the country should be easy pickings.

  • Delphi Anyone? (Score:3, Informative)

    by sapgau ( 413511 ) on Wednesday June 11, 2003 @11:17AM (#6171394) Journal
    What's wrong with Delphi?
    It has the modularity, strong type checking and simple sintax to help you start learning.

    I beleive you could download version 1 (16 bit?) for free - but Im not sure.

    Just my $0.02
  • by Sans_A_Cause ( 446229 ) on Wednesday June 11, 2003 @11:19AM (#6171425)
    It's available [mit.edu] for free for most platfoms.
  • .Net Framework (Score:1, Informative)

    by Anonymous Coward on Wednesday June 11, 2003 @11:19AM (#6171434)
    Microsoft does provide a host of programming languages/compilers for FREE (C#, VB.Net, C++...).

    Microsoft .Net Framework SDK
    http://msdn.microsoft.com/netframework/downlo ads/h owtoget.aspx

    Linux/Cygwin users can try
    http://go-mono.org (my personal choice)
    OR
    http://www.dotgnu.org
  • by WillAdams ( 45638 ) on Wednesday June 11, 2003 @11:20AM (#6171451) Homepage
    D/l'd a copy of UCB Logo(1) and started working through _The Great Logo Adventure_(2) w/ her---she got a big kick out of making the computer do what she wanted, esp. once I showed her the abbreviations (FD == forward &c.). Minor glitch was TGLA was writte n w/ MSW Logo in mind, so TRI was undefined....

    Other things I've been meaning to try with her include:

    Boxer(3), which oddly is only readily available for the Mac. It's positioned as an alternative to Logo and feels a lot like Squeak(4).

    Apple had a s ystem called ``Cocoa'' (this was before the NeXT purchase) which was lauded for kids' programming, but not finding much about it now.

    One commercial program which I'm saddened has vanished is Widget Workshop by Maxis(5) and wasn't carried farther.

    That last really points out that a more visual tool might be better for kids. Although there's been some interesting research on this(6), none of the available tools(7) are really suitable for kids excepting Drape(8).

    William

    (1) http://www.cs.berkeley.edu/~bh/logo.html
    (2) http://www.softronix.com/download/tgla.zip
    (3) http://www.soe.berkeley.edu/~boxer/index.html
    (4) http://www.squeak.org
    (5) http://www.superkids.com/aweb/pages/reviews/scienc e1/widget/merge.shtml
    (6) http://www.cs.berkeley.edu/~maratb/cs2 63/paper/paper.html
    (7) http://www.nwoods.com/sanscript/index.htm
    (8) http://www.cs.uu.nl/~markov/kids/drape.html

    Ë
  • Squeak (Score:5, Informative)

    by fizbin ( 2046 ) <martin@s[ ]plow.org ['now' in gap]> on Wednesday June 11, 2003 @11:20AM (#6171460) Homepage
    Squeak [squeak.org] is a cross-platform implementation of smalltalk that has developed quite the little community [squeakland.org] of educators and students around it. It allows budding programmers to start on a very basic level - something reminiscent of hypercard - but underneath it all is a real language that allows all the power and syntax you might want. As soon as you're ready, the power is there.

    The scheme environment bundled with How To Design Programs [htdp.org] has a similar goal of allowing the student to gradually ramp up the complexity of the language, but I find their rigid levels confining. Also, the programs a beginning programmer is able to put together are nowhere near as satisfying visually as what a new squeak user can build. (These kids today - in my day, we had either text or 40 by 40 graphics and we liked it.) That said, the htdp scheme environment may be more appropriate for a structured classroom environment with a series of lessons.

    My only complaint about squeak is the license (despite claims on squeak.org, it's not really an open source license because of the fonts it includes); however, it is free-as-in-beer and has been already been used in elementary and middle school classrooms for both teacher- and student-created projects. (See squeakland)
  • Re:Perl (Score:1, Informative)

    by Anonymous Coward on Wednesday June 11, 2003 @11:23AM (#6171484)
    Perl would be good, but python would be better--especially for newbies.
  • Java? (Score:2, Informative)

    by KamuSan ( 680564 ) on Wednesday June 11, 2003 @11:24AM (#6171528) Journal
    I'd download Java for them. It's free (as in beer), you can get it for most platforms (standard on a Mac), it might be a bit complicated, but it's got big standard libraries. Even more, with Java2D you can draw! My first programs were all simple demo's, so I see that as a big plus.
  • Comment removed (Score:5, Informative)

    by account_deleted ( 4530225 ) on Wednesday June 11, 2003 @11:25AM (#6171534)
    Comment removed based on user account deletion
  • by sdjunky ( 586961 ) on Wednesday June 11, 2003 @11:31AM (#6171617)
    "Visual Basic is still around, but I don't know of any serious programmers who really use it hard core - it's more for very small, internal apps (yes, there are visual basic apps out there, but last I checked, nobody's programming Doom III in Visual Basic, move on)"

    Wel.. There is this feature rich, stable and FREE CD Burning Software written in Visual Basic 6.

    You can find CDBurner XP here [telia.com]
    VB does have it's uses. No. Nobody's going to write Doom 3 with VB but it's not as limited as people tend to think it is.
  • Pascal (Score:5, Informative)

    by s20451 ( 410424 ) on Wednesday June 11, 2003 @11:32AM (#6171638) Journal
    Whatever happened to pascal?

    Lo these many years ago, when I was in first year, pascal was used as the teaching language in many universities, including mine. It's nice enough as a sandbox language to help you learn good programming habits, yet powerful enough to do non-trivial things.

    In fact you can download a free pascal compiler [freepascal.org] to play around with it.
  • by Plutor ( 2994 ) on Wednesday June 11, 2003 @11:44AM (#6171814) Homepage
    Haha, brilliant! Debug is the source of half of my DOS programming experience.
  • by rkz ( 667993 ) on Wednesday June 11, 2003 @12:02PM (#6172035) Homepage Journal
    give them a game [epsitec.ch] to play which sneakly teaches them to program.
  • Re:Java (Score:3, Informative)

    by pmz ( 462998 ) on Wednesday June 11, 2003 @12:03PM (#6172049) Homepage
    Download, install, and run. Read the tutorials on Sun's site.

    If a kid can't do that, then programming isn't for them.


    Be careful, though. A kid might look into Java, see the hundreds of APIs in the Java "platform", become depressed, and decide that those liberal arts classes aren't so bad after all.

    Java/J2EE and .NET are enormous. Kids needs a simple, interactive, and fun environment for learning. Logo is fun for a few minutes, but the novelty wears off. Quite honestly, something along the lines of a Commodore 64 BASIC might be very appropriate, with fun examples in old issues of Compute's Gazette, animated sprites, and easy sound generation. I also remember seeing young people managing fun things in Pascal and Turbo C, but those might be best for a second language/platform.

    It really is too bad that a kid's first computer now-a-days will have the opaque behemoth that is Windows XP. My C-64 was a great first computer, and even my first DOS 5.0 PC was a lot of fun. Now, however, when I boot Win2K or XP, all I really am motivated to do is click around until I find something and the "magic" is gone. I would even argue that even UNIX/Linux is a bit too much, at first, but, perhaps, these are the best thing going, anymore.
  • Mac OS X (Score:2, Informative)

    by spam38 ( 680467 ) on Wednesday June 11, 2003 @12:03PM (#6172050)
    Now that Mac OS is a *nix clone, it has all of the great programming/scripting languages that any other *nix has. ie: c/c++, perl, python, php. Not only that, but AppleScript is still around. Plus Apple has a free downloadable/bundled-on-cd IDE (developer.apple.com) that can do things like simple c/c++ tools to build full fledged apps based on Apple's Cocoa and Carbon APIs.
  • Re:Not OO! (Score:5, Informative)

    by RevAaron ( 125240 ) <revaaron AT hotmail DOT com> on Wednesday June 11, 2003 @12:05PM (#6172075) Homepage
    OO doesn't mean a scary IDE. OO doesn't mean VB.NET or any other language on the .NET object model.

    Smalltalk has been used for teaching kids for 30 years, and with a good amount of success.

    Part of the reason kids can learn Smalltalk well is that there is no need to learn and use OO off the bat. You can do a fair amount of stuff in Smalltalk just by using Object-Based Programming, rather than OOP. Object-based means *using* objects, creating them, but without a full dose of creating classes, etc.

    Now a days, we have Squeak [squeak.org], which takes it to the next level. Kids can get a big return on their investment of time, creating moving, colorful things, while writing a very small amount of code. Unlike some environments for beginners, it scales up, being useful for creating big and scary applications with a lot of code. :) Kids end up learning OO by manipulating actual objects, in the form of graphical "Morphs," giving them functionality, changing their properties... until the day it clicks, and they decide they want a totally new "kind" of Morph.

    Check out the demos- it's open source, and runs on just about every platform worth runnning, including Mac OS Classic/X, Windows > 3.1 (incl WinCE), and all modern Unices under X11 (or DirectFB, Linux FB, SDL).
  • by e2d2 ( 115622 ) on Wednesday June 11, 2003 @12:17PM (#6172212)
    Expecting a 10 year-old to pick up C++ and start working on the next Doom is ridicuous. Kids want something that is simple, easy to understand, and allows them to create fun applications. They don't want to get mired in the arcitecture and process and years of time neccessary to write a modern commerical application

    http://turtletracks.sourceforge.net/

    Or any other Logo implementation might do fine for young ones. Nice and easy way to teach logic.

  • by BlackHawk-666 ( 560896 ) on Wednesday June 11, 2003 @01:02PM (#6172729)
    Would you let a 12 year old child replace the alternator in your car?

    It was compulsory in our family when young to help dad repair cars. So yes, he did get me replacing alternators (relatively easy) or striping parts, cleaning and then re-assembling.

  • Re:Except... (Score:2, Informative)

    by tvsjr ( 242190 ) on Wednesday June 11, 2003 @01:22PM (#6172979)
    Perhaps I can weigh in as a part of the younger Slashdot crowd (I'm 19, BTW).

    I started "programming" with a very close derivative of the 10 PRINT 'XXX'/20 GOTO 10 logic. I was about 2 when I started being able to type my name of the computer, and about 3 when I started actually doing some simple BASIC programs.

    I was given Borland C++ around age 10, and inhaled all the manuals, books, readmes, etc. I could find. I also elicited help from others over the Net (then available to me using UUCP and Waffle... remember those days?)

    Long story short, the language didn't give me the desire to code. My parents showing me what a computer could do (along with some other exceptional parenting, school involvement, grandparents, ad nauseum) made me interested in learning the computer. Once I started learning, I wanted to do my own thing - the only way to do that was by writing some programs. So, I learned what I needed to know to build those programs..

    In short, the language doesn't make that much difference. Programming languages are *not that hard*. If a child has the desire to learn, he'll find a language.
  • by Khelder ( 34398 ) on Wednesday June 11, 2003 @01:41PM (#6173186)
    I recommend looking at Alice [cmu.edu], an environment that's designed specifically to be an easy way for kids to learn to program. It's quite mature (started at least 7 years ago) and the developers have evaluated it with real kids. It's about programming in an interactive 3D world, which I think is a great environment for beginning programming. One of my early programming experiences was in LOGO, and I really liked being able to type commands and see an immediate effect.

    From what I know of squeak, it sounds like a good environment, but AFAIK it wasn't designed specifically for kids.

  • Re:Java (Score:2, Informative)

    by fnc ( 666371 ) on Wednesday June 11, 2003 @01:52PM (#6173315)
    While I like static typed languages, I think that Java type system is too complex, I would prefer start using Pascal. And for children, I think Squeak (squeak.org - a nice multimedia Smalltalk) or DrScheme (drscheme.org - Scheme with learning facilities) are better.
  • by ChaoticCoyote ( 195677 ) on Wednesday June 11, 2003 @02:09PM (#6173503) Homepage

    For the purposes of home schooling, I use Python. The interactive nature of Python resembles the old MBasic and GBasic interpretters; immediate feedback is terrific for learning.

    Python's capabilities scale nicely between simple "hello world" and complex applications; my daughters can gradually learn concepts and techniques.

  • by Marc2k ( 221814 ) on Wednesday June 11, 2003 @03:10PM (#6174114) Homepage Journal
    No one's writing Doom III in C#, Java, Perl, Python or Pascal either, Cap'n, those are all relatively horrible languages to write graphics intensive apps on. It sounds like you don't know what you're talking about with VisualBasic either. Update your analogy or update your list of what's '1337'.
  • by divbyzero ( 23176 ) on Wednesday June 11, 2003 @03:26PM (#6174283) Journal
    There have been many, many "robot programming" games written for just about every platform. Some use their own mini languages, some use real world languages. Some, like Core Wars, are even portable and semi-standardized. As a category [google.com], these are definitely a great introduction to programming.
  • by Q Who ( 588741 ) on Wednesday June 11, 2003 @03:36PM (#6174378)

    Nobody is programming Doom III in anything except C, assembly, and maybe some C++.

    Doom III engine is written in C++ [gamespy.com].

  • by awol ( 98751 ) on Wednesday June 11, 2003 @03:40PM (#6174422) Journal
    I don't think there is anything inherently wrong with javasript that would make it broken enough to suggest that it is a bad place to start.

    It is with every machine you can think of. It has procedural aspects, some decent obect oriented features, yep, I reckon it just might work. Nice idea!
  • by Anonymous Coward on Wednesday June 11, 2003 @05:02PM (#6175369)
    From Borland, shortcuts to bypass the free registration...enjoy.

    JBuilder Personal Edition for Windows: Windows [borland.com]


    for Solaris: Solaris [borland.com]


    for Linux: Linux [borland.com]

  • by whytheluckystiff ( 574085 ) on Wednesday June 11, 2003 @05:11PM (#6175481) Homepage
    A thanks to those who sent personal stories about how they learned to code. Kind of fun to read about. Didn't expect the amount of responses, of course.

    With all the comments that have been posted, it seems a lot of you believe there is no problem. That there are a wealth of intriguing technologies for kids who want to find them. Which is true. Kids can build websites. Kids can hack Hotmail. Kids can mod games.

    I still feel like we haven't cracked the door open on mainstream coding. I believe a majority of humans could learn to code. How many students are required to take math, chemistry, physics? Could programming become a commonly taught skill?

    Many of you have suggested that the job market would die. Are you kidding me? The job market for programmers would undoubtedly swell. More using the Web, more understanding the need for software, more purchasing software to help their casual coding. Better yet, the more who understand how to code, the fewer people have to say they are "computer illiterate!" Instead, clients could possibly have a better understanding and appreciation of the things we do.

    Let's push coding to the mainstream. There are those among us who can influence the world to make such a thing happen. I believe it could be well worth it.
  • by Our Man In Redmond ( 63094 ) on Wednesday June 11, 2003 @08:17PM (#6176889)
    For those of you who weren't paying attention in the early to mid 80s, Bert Kersey was the mad genius behind Beagle Bros Software, the coolest software company out there. Their catalogs were a hoot and their products exhibited a complete disregard for taking themselves seriously (this site [panic.com] will give you some of the flavor of the Beagle Bros style), but their best claim to fame was their software. Not only did they write programs that let you do cool things with your Apple II, they showed you how to do the cool things yourself. They were open source years before its restoration to hipness.

    Maybe what we need is someone who enjoys building marvelous toys and then distributing the plans so we can see how they're built, along with a programming environment a kid can use "straight out of the box". If I were doing this I'd do it in Python and distribute it on a CD with Python interpreters for the major platforms to give a kid the best possible chance of being able to start playing right away.
  • Examples (Score:3, Informative)

    by Our Man In Redmond ( 63094 ) on Wednesday June 11, 2003 @08:45PM (#6177119)
    The real problem these days is examples. And I'm not talking about downloading the kernel source to see how to write programs in C, either.

    Back in the Early Days Of Microcomputing (1980, give or take about five years) there were a number of sources for Basic programs that you could type in to your computer. Once they were typed in you could see how the code correlated to what was on the screen. You could also steal, er, ah, learn from the code in building programs you had created yourself.

    Creative Computing, Compute!, 80-Micro, Softside, Beagle Bros (mentioned in another post farther up the page) . . . if we really want kids to get hooked on computers, we need something like what these magazines and companies provided.
  • by G-funk ( 22712 ) <josh@gfunk007.com> on Wednesday June 11, 2003 @10:10PM (#6177767) Homepage Journal
    www.icsharpcode.net

    sure it's not visual studio, but it's damned good value. :-)

"May your future be limited only by your dreams." -- Christa McAuliffe

Working...