7 ms·
Yup. I have many happy memories of working in HyperCard as a child—it's what got me into programming. I don't know what a kid nowadays would start on; JavaScri
by wtbob 12y ago
Yup. I have many happy memories of working in HyperCard as a child—it's what got me into programming. I don't know what a kid nowadays would start on; JavaScript really is too much for a beginner IMHO.
- typedweb 12y agoThe combination of HTML+Javascript+CSS+SQL+Python/Ruby/etc as required for a basic web app these days is getting to be too much for the beginner. I remember writing my first game in Hypercard in Grade 6 with no experience on the computer at all. Load up some art, make some buttons and build a 'choose your own adventure'. Easy stuff and lots of fun.
- corry 12y agoI had the exact same experience (e.g. creating simple point-and-click 'games' that were really just stories with multiple branches). What's cool is that as I made these games I kept wanting to add more to them (interactivity, sounds, etc) so I ended up doing some scripting as well. As a 12-year-old, this was amazing - my first introduction to "programming" but I didn't know that at the time.
- thruflo 12y agoWhen I was 12 I made a stop motion animated dizzy egg style adventure game in HyperCard. When I was 25 I remembered and thought, hmm maybe I should try and learn how to code. I'm now a professional developer. As an aside, I sold it to my school mates for 50p a copy. When they asked why they couldn't just copy it themselves I told them I'd installed DRM on the floppy disks. They believed me.
- Already__Taken 12y agoA basic web app like other posters are describing is just some html+css (admittedly are awful) then javascript and local storage. What that kind of a stack enables is potential. So you're happy with your app. Take what you already know, learn about a server and a client and make a scoreboard. Now you understand client/server you can make it collaborative. etc.
- zyxley 12y agoYeah. I was making simple choose-your-own adventure stuff in grade 6 or 7 with just HTML+Javascript. There was no stack involved, just me experimenting with copy-pasting stuff I'd seen on the web. jQuery makes even that learning curve a lot easier (e.g. $('.text-box').text() instead of whatever even hackier stuff I was using back then).
- protonfish 12y agoYes it is, but you can learn it piecemeal. Using HTML only, you can add text, images, and hyperlinks to do your "choose your own adventure" example. Now that it works, want to make it look cooler? OK, here is how to use CSS. Want to add some animations and other advanced dynamic interaction? Here are some simple JavaScript functions.
- donohoe 12y agoAbsolutely, I started on a Commodore 64 and then more basic on Apple IIgs. HyperCard opened the window on Mac programming. I could not have gotten through my teenage years without HyperCard and ResEdit.
- Jtsummers 12y agoI'm working with middle schoolers for the First Lego League competition. The ones with some programming experience either had a Mindstorms kit at home or were playing with mods for games. But a number of the students seem inclined towards programming, but overwhelmed by how to get started. There's some advantage to a stupid simple DOS computer with a copy of some BASIC implementation and every math textbook from grade 3 on having BASIC programs at the end of every chapter or section.
- tdicola 12y agoCheck out scratch, in particular code.org has a nice 1 hour intro with Angry Birds and scratch that's good for kids.
- Jtsummers 12y agoI was actually working on a longer comment that would've included a mention of scratch. Right now the focus is on the robotics competition, but in the spring that may be something I try to introduce them to. The problem will be access to computers. There just aren't enough available for the entire group (though attendance has dropped recently, so unfortunately there may be enough computers to handle all of them soon).
- tdicola 12y agoIf it helps, chromebooks are nice little laptops that can be had for a couple hundred bucks. If you have monitors and keyboards a Raspberry Pi might work well as a computer and is about $50 with SD card, power supply, etc.
- aepearson 12y agoSame here - HyperCard was my first experience with programming as a kid...on my old Mac Plus. I feel like it made a big impact on me, learning that I could create my own applications (I had the later version as well that let you make standalone applications - THAT was awesome!).
- treehau5 12y agoisn't ruby touted for 'reading like english' ? I could imagine some beginner-friendly DSL or API to do very similar things.
- eric_bullington 12y agoI think Elm might well be a good introductory environment for a motivated beginner. It's Javascript/HTML/CSS in the background but you only work with the Elm language. Best of all, you can work with it within a browser (see [1]). So no arduous set-up. It's a functional language, but I'm not convinced that an object-oriented language is good for an introductory language, anyway. I plan to start my 7-year-old daughter on Elm in the next few months. She's already playing around with various introductory programming activities on Sugar OS (Turtle, etc.). I'll report back on how it goes. But I agree that a revived HyperCard would also be a great environment. My family was all PC growing up in the 80s, so I had no exposure to HyperCard at that time. But reading about it retrospectively, I'm impressed. 1. http://elm-lang.org/Examples.elm http://elm-lang.org/Examples.elm
- jowiar 12y agoExcel, the most successful programming environment for non-programmers, is functional in nature, so I don't doubt that functional is the way to go. Elm's syntax leaves me a bit more skeptical, though.
- eric_bullington 12y agoThe Haskell-like syntax? Yeah, it's possible that this could be confusing for a beginner. What in particular are you skeptical about?
- jowiar 12y agoPositional arguments are a big nono for me. When I read the code, there's too much overhead to knowing what things do. One of the nice things about HyperTalk is that it's a bit self describing. One of these three is entirely non-obvious image 472 315 "/stack.jpg" Insert Image "/stack.jpg" with width 472 and height 415 image {width: 472, height: 315, filename: "/stack.jpg"}
- tome 12y agoHow about image Image { width = 472, height = 315, filename = "/stack.jpg" }
- xemoka 12y agoHyperCard was absolutely amazing. It was my introduction to computer programming as well. Hell, I even made a chat server / client based in HyperCard with a simple AppleTalk XCMD/XFCN. It still shocks me how easy everything was to put together.
- sea6ear 12y agoEven though it's lost popularity in the last few years, I still really like Tcl/Tk for being a language that is easy to get started with, that has easy graphical capabilities.
- gaius 12y agoThe Ruby guys in particular seem to be hell-bent on reinventing bits of Tcl/Tk, badly.
- JoblessWonder 12y agoI still have a floppy disk with my first "Choose Your Own Adventure" Hypercard game I made when I was in elementary school. I wonder if I could still get it to run...
- technomancy 12y agoThe only language I know of that takes newbie-friendliness and accessibility seriously without compromising on technical vision is Racket. Seriously, read the prologue of How to Design Programs: http://www.ccs.neu.edu/home/matthias/HtDP2e/part_prologue.html http://www.ccs.neu.edu/home/matthias/HtDP2e/part_prologue.ht... It's clear and accessible, but introduces programming in terms of values and the idea of animation as a reduce/foldl of a function that returns image values over a list of frame numbers. Incredible stuff. And as a bonus DrRacket is simple enough for kids without compromising much on capability.
- protonfish 12y agoKids should start on HTML. This teaches simple coding (UI elements only) so it is great to for them to see quick results of their efforts. Most beginner Hypercard apps were just multimedia pages hyperlinked together. You can do that now GitHub right now and publish it immediately to a web site. It was fast and easy to get my 10-year-old daughter a GitHub account and show her how to use the online editor. Then I showed her HTML and CSS and let her loose. I set up github pages and gave her instructions to pull to that branch (which took me a while to figure out but she took right to it.) She took my netbook into school the next day and blew away the kids in her project group with it. Then she got bored and hasn't wanted to mess around with it anymore. Oh well...
- infinite8s 12y agoAs an interested parent (although of a 4 yr old), did she get bored because she hit a wall in what she wanted to do? With HTML its fairly easy to generate a nonlinear text and image based story, but I imagine trying to add any sort of interactivity through the mess of CSS and JavaScript might quickly lead to frustration. Unlike HyperCard, today's technologies don't seem to have a smooth learning curve as you try and build more complex things.
- protonfish 12y agoNo she just got bored because that's her. HTML can have a smooth learning curve but its not baked-in so you need someone to manually guide them and since most adults don't know how to do this that's a problem. My point is it is solvable, not inherent.