![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Pedagogy PlaceDiscussion here about how big and little people, novice and experienced alike, learn and use squeak.Eventually we'll move to a bboard if there is any substantive traffic. ... Lenny Tuesday, 15 March 2005, 8:28:51 am cs498, Speaking of jibjab . . . The whole subject of adding sound and, more importantly adding music, needs a lot of explanation. 'sound' in the supplies flap is something I figured out by trial and error but no where is there an explanation of the steps. My students at DRH can use a little $10 microphone and add sound efffects to their Squeak projects. 'Object make sound croak' from the Basic viewer list will drive teachers crazy because the sound runs continuosly. 'Object bounce croak' from the Motion list is more tolerable unless the bounces happen too frequently and then the sound loops overlap. I do not know how to 'trim' a sound. There seven things in the 'sound' tool. They all need explanations. The other four things in the 'multimedia' category of the object catalog need explanation too. Let's show people how to use the 'MPEGPlayer', 'PianoKeyboard', 'ScorePlayer' and 'WaveEditor'. They are there and they are part of eToys. Without explanations they are empty promises. Or worse, "nee-ner, nee-ner we know how to use these and the poor neophytes don't . . ." I have a digital camera a that will take short bursts of video. How do I get from there to including an MPEG movie in Squeak? Does anyone in class have a midi compatible keyboard? Have your tried playing music on that keyboard and adding it to a Squeak project? I would love to be able to do that. It is not as simple a dragging a photo from a file to a Squeakscreen, I know that. If no one in class has a keyboard, I will bring one. Tell me. I have wanted to add a piece of music from a cd and syncronize it with the movement of a Squeak project but have yet to make that happen. I know it is just a screen-saver-with-music purpose but I think it would please many children and musicians. "Peter and the Wolf" are waiting in the wings. KathleenH Tuesday, 15 March 2005, 8:04:02 am cs498, Using digital photos is Squeak is easy but I had to be shown how to do it. And no where is there a written explanation that I have found. We should write a how to lesson for that. I know one of Kathleen Smith's high school students was studying metamorphosis tadpole to frog. By the time I knew about his project he had pencil drawings of each stage and some digital photos. It would have made a great animation using a holder. Or, someone with a sense of humor could do a Squeak version of jibjab. KathleenH Is this what you are looking for? Importing Images -Dave Tuesday, 15 March 2005, 7:39:21 am cs498, The object catalog has a category called 'Collaborative'. Click on that button and find: 'audio chat', 'badge', 'fridge', 'listener', 'text chat', 'text chat+' and 'welcome'. Last summer Kathleen Smith and I used badge and fridge but we had to be shown how and I have now forgotten how. I remember we had to know our ISP number and the ISP number of the person who we wanted to share screens with. We did not use the other communication tools in the collaborative categoy. I think they should be tried though. The cs498 class could/can work on a project at the same time from the same or different locations. This would be instead of using the swiki and telling others in the class you have it. Instead post your ISP number do the hocus pocus needed and work with a partner or partners. It is shared screens and cursors can operate in other screens in other locations. I do not know how. All of this category in the object catolog needs to be explained in simple step by step directions. KathleenH Tuesday, 15 March 2005, 7:16:42 am cs498, My list in the previous posting used # the symbol for number that also looks like a tic tac toe grid but they have all been turned into a 1. This makes it a mess. Sorry. There should have been seven of the number symbols. I don't know what happened. kh Tuesday, 15 March 2005, 7:12:47 am cs498, It would be useful to see all in one list the number of means available to someone who wants to make a copy of an object. I know the following ways. Are there others?
If the object does not have a script before it is dragged into the supllies flap, it does not have a script when it is dragged out.
Notice the second item in the 'from' list is 'from an alphabetical list' and the arrow leads to more, much more. I selected from that alphabetical list 'ellipse' and it put one on my cursor just as though I had dragged it from the 'supplies' flap. 'grab rectangle from screen' and 'grab with lasso from screen' are in the supplies flap. 'grab rubber band from screen is not. But it is a tool that would be especially useful if a digital photo graph had been dragged into a squeak project and you wanted to just keep a face and get remove of a background. 'rubber band' allows for much finer selection than rectangle and lasso. 'grab flood area from screen'is a mystery to me. I do not know what that is doing. I have tried it, my screen flashes to black and white and then what do I have or what I have done? 'Make a new drawing' opens the paint just like choosing the paintbrush from the navigator flap. 'Make link to a project' I do not know how to use it, or why.
Tuesday, 15 March 2005, 6:26:09 am cs498 I can use the green dot in the halo to make a copy. Is it an instance, or a sibling or just a copy? What is the difference between instance and sibling? Does that make the original one the parent? How are they related in what they can and will do? KathleenH Sunday, 13 March 2005, 7:45:10 am cs498 What is the difference between an object and a morph? kh Sunday, 13 March 2005, 7:44:35 am cs498, In the world menu's list is 'new morph' and that leads to eight pages of alphabetical lists. I screen captured each page and printed a paper copy. One thing I am noticing about my ouw learning of Squeak is that I am not used to learning important information from the computer screen, I want it on paper, partly because that way it doesn't disappear while I am thinking and partly because when I only see one screen at a time I don't have any idea of how many other screens worth of information there are. Each screen is just the tip of an iceberg big enough to sink the Titanic. I think a notebook on paper is necessary if we really expect a classroom teachers to use Squeak with any level of confidence in what is there. What is there? What it is. Applications. These are three different categories and it would clarify a path of learning to have them set out in a way that is clear what category a learner is in when they are looking at a page in the notebook. A note book will be used by more than just a few people. I read to teach myself something all the time. I do however like to know where I am in the stream of information. Have I stepped into the water at the headwaters or am I jumping into deep water halfway to the sea? Students will read especially if what they are reading is answering a question they have formed themselves. Looking for answers to questions a teacher posed for you to answer is a whole different kind of looking. Given what you know about all the tools, menus and viewers, what is your estimate of the number of pages such a notebook would contain? I am not thinking of how to use/apply them, just how many are there? I wonder if we could think of a color scheme to make clear where the boundries are between eToys and Squeak and Smalltalk. Etoys is green, Squeak is caution yellow and Smalltalk is red for STOP. This would help beginners stay on a path that led them through eToys and tell them if you go here or here you are leaving eToys. The note book could be divided into three major sections, one for each color tab. Inside these then would be all the information for that level and would assume that the reader went there by choice not by accident. I was reading about 'flap' because one of my first grade girls discovered she could drag a scribbbled object her teacher drew down into the Supplies flap and use it in projects that day. She wanted it to be there all the time and was asking me how to do that. She thought it was very funny to be able to use Miss Iehl's bad drawiing over and over again. Miss Iehl thought it was funny too. We found out we could find it in the supplies flap for the project that Miss Iehl did and where Grace dragged it into the the flap for that project. I see that we can make a custom flap and add it to Squeak on that computer. Does that mean that every project from then on the 'Miss Iehl's Class Flap' will appear every time Squeak opens only on that computer? Saturday, 19 February 2005, 9:30:14 am cs 498, I showed my students Alice last year and they really liked it but I couldn't learn Squeak and Alice at the same time. www.alice.org It too is freeware, it too uses Squeak somewhere under the hood. I think you can import from and to etoys as well as from and to Alice. Alice is a 'gift from Cagnegie-Mellon'.I mention this because Alice has script tiles too but the objects come from a catalog of pre-made and adapt-able ones. It is also possible to make new objects and add them to the bank. Alice lends itself to story lines in ways different from e Toys/Squeak. I am reading the list serve messages about Croquet but it is still in the developers hands and not ready for the likes of me nor me for it. Alan Kay, Kim Rose, Dan Ingalls, Mark McCahill(Gopher)David ? Smith are involved. Many of the same people from Squeak eToys are behind Croquet. You probably have looked at these already, but if you haven't you might want to. I thought you might be interested in them as curious tangents to what we are already doing. Kathleen Harness Saturday, 19 February 2005, 9:08:43 am cs498, Another non-game suggestion: Squeak jib-jab. Students in the secondary schools might like this kind of idea for social/political commentary. I do. There must be a jillion songs in the public domain that are available to play with, adapt, bend or break. I am working on 'the wheels on the bus go round and round'. Mine is just a simple animation for each verse on each page of a book. It will not be a parody but rather something for young children who like the song. Kathleen Harness Tuesday, 15 February 2005, 8:17:39 pm cs498, Would it be a good idea to analyze some student projects (from elementary age students) and look at them from different viewpoints. cs persons could write about what cs fundametal prinicples a student shows in a project. Then show what else a student could learn from the same project. A Squeak person could write about what Squeak tools are used Same project: what science concepts, facts? What else could be added? Same project: what math principles, number sense, differential geometry of vectors . . .? A music teacher could play an accompaniement or perhaps write a Squeakopera. http://squeakcmi.servehttp.com:8080/super/gallery is full of student projects. FYI: I include kh in most of my project's names but not always. Kathleen Harness Tuesday, 15 February 2005, 7:55:54 pm cs498, Another kind of project rather than a game is something that tells a story, illustrates a saying, or a poem, shows a character from a film visiting them at home or school. These are kinds of projects that allow for variety, crreativity, and encourge kids to choose something that is interesting to them. What did you have for lunch? What would the county fair look like if you were a giant. What would the county fair look like if you were an ant? Squeak a TV commerical for your school to show why someone should buy. Do a public service announcment for a concert, dance, or play. Draw a cartoon with a hat or a jacket as the star of the show. Do a project that moves very, very slowly. Make a project that assembles component parts into a coherent object, such as a building or a car, or a cat. Tilings and patterns always please children, think of projects. Kaleidopscopic images in Squeak. POV images in Squeak. Write a story with missing words and draw the objects that fill the blanks, could be funny. Ask them to do a Squeak project showing a science fact they know. Draw a maze and steer an object through it. Inventions: turn a pancake, push a car, walk a dog, stir one paint color into another, rube goldberg Animals:A talking parrot, monkey swinging, barking dog,etc. Illustrate jokes: books of them for children. Scout projects, 4H, church stories, magic tricks, recipes, experiments, monopoly, clue, postcards, squeak travel posters. One thing I have been thinking about is to show a return on investment. To say to a teacher of a 4th grade class: spend a hour teaching Squeak to your class and when they know these working vocabulary 10 Squeak items, be able to expect them to do projects like these for class work in science, math, language arts. show porjects. Invest two hours and expect your students to do projects like these . . . Kathleen Harness Wow. Lots of great ideas and directions. The "return on investment" idea is excellent. What I think we should do is to indicate for each demo project that we create, what squeak knowledge and tools in particular are required. Can also create a guide in the other direction.... if you know these tools and these programming tricks, here are a dozen suggested types of projects..... ... Lenny Tuesday, 15 February 2005, 6:43:49 pm ... when I was in CS 125, each hw assignment built upon a previous one, all around a common theme (a "CD organizer"), should we be doing something like that.... I think projects that build are great, effective, exciting, etc. But one of the great things about squeak, and kids, is the creativity and imagination component. You want opportunity for them to drive the main ideas a lot. One project theme would risk alienating kids who don't relate (e.g., asteroids will hit a lot of the little boys, but a simulation where you raise and ride ponies, care for them...? While this may sound sexist, the main point is that we need to think about ways to engage and excite everybody. Several medium sized projects might make sense, touching on different themes. We could make them closer to "one size fits all" by allowing individual choice of design that doesn't change the function and programming concepts taught. At the simplest level, we could just have them draw different backgrounds. At a deeper level, we might teach "how to shoot" (don't call it that) by having them choose an object that will launch another, and this could be bows and arrows, watermelons and seeds, magic wand and bubbles... In some sense, we're starting to build up little pieces of behaviors, like scoreboxes, launching objects, etc. Do you want to take a stab at describing a generic game that e.g. "you move an object, one other chases it. if you get caught x happens. you try to reach y on the screen. when you run over objects of type z1, z2, ... this happens. There are events where you need to press a button at the right time to avoid w. you win if you make it to this location collecting so many z's without x happening more then y times." Example.... horse race over hurdles, eating oats, avoiding stinging insects, making it across the pasture and back to the barn. How many different "templates" for games that are substantially different are there? What sequence of adding which components makes the most sense in a multi-staged project? Easiest to hardest pieces. Within a CS course, you have no choice but to follow the one theme - it would be foolish to quite because you didn't like the domain of the MPs. But we are dealing with voluntary learners here, without long range planning (like "I'll suffer through this course so that I can graduate and have a better life"). Wednesday, 16 February 2005, 7:05:35 am cs498, When I read the phrase 'voluntary learners' I heard myself think," Yes, that is key". As teachers if we keep that in mind, we see our students as participants in learning rather than as receptacles to be filled. Even a student in a required course (vs an elective course) should still be viewed as a voluntary learner and treated accordingly. A children's book, "Alexander and the horrible, terrible, no good, very bad day" has a line "They can make me buy plain old white tennis shoes, but they can't make me wear them." kh Sunday, 6 February 2005, 10:15:30 am Question Lenny asked to various adults using squeak with kids: I assume the basic painting/handles/car tutorials are good first-starts. The question I have for you all is... what would be the most helpful thing for you to see next? What is most confusing? Is it the so-many-places to look for things, and not quite sure where to go in order to do something you have in mind? Perhaps having several simple projects that introduce a couple of new commands, or what's available in the different categories of a viewer (scripting, miscellaneous, geometry, ...)? Or a high-level overview that helps people make sense of the "big picture" of how to do things? In a short time, I can write a bunch of notes-in-english, which is not the best means of delivery, what with a picture being worth a 1000 words, but it might be good for an adult or mentor to use. Kathleen Harness's response, with lots of worthwhile directions: Lenny, You ask very large questions! The most helpful thing . . . hmmm Kathleen - see my comments embedded below in italics. - Lenny I started to write a little on your 498 pedagogy page this morning and had more to say, so here is more. I didn't know if that was what you had in mind or if it sounded like royal commands. I have opinions about how children learn and how to teach what I know but there are vast areas where I just don't know enough to know what should be the next thing. My best guess is that whatever it is for the young children it has got to be sensible to them and useful and interesting to them in the here and now. It is no good telling them it will be good for them to have done it and they will be glad when they are older. With my students that I see at DRH every week I always offer them a new application of familiar ideas or something new from Squeak hooked to something they know well. They have to feel confident of their knowledge someplace in the project. It could be confidence in building a script from script tiles, or being creative, knowing they've made something beautiful or funny or clever or surprising, or precise, and/or something they are in control of. Above sounds like good advice for anybody learning anything, especially a system that can be quite complex. A cs researcher investigating how to make computers learn said "learning happens at the boundaries of our knowledge" (as opposed to far away from them in the "dark" The early lessons for children need to give them a sense of how to move around in the viewers and script tiles. Menus are a whole other thing, aren't they. I have been debating with myself about whether it is better to introduce tiles/concepts that fit together in a coherent project or go through all the tiles in a category and try them all in etude-like studies. Some of the categories work better one way than the other. I think you got it right. Some tour by pane. Others slowly, in context.
I do not know about any of the other tiles in that category. I used to try to figure out how to use 'look like dot' but I could never get the dot to be the object again. I haven't used these either. I think if you do fancy coloring using gradients on your background, these allow you to check various color properties. See the salmon project on the squeakland.org projects page. Can make the salmon head "upstream" by heading towards a darker (less luminous) area
All the basic tiles are there for every object. Because every object has an x-coordinate, a y-coordinate, a height, width, etc. These are all basic properties associated with the objects. Some objects have special properties that do not make sense for other objects, so you get special categories. Joystick has a "leftRight" and "upDown". Buttons have special categories just because they are buttons. Holders, playfields have special properties just for use because they hold things. This is one of the powers of object-oriented programming - that you can define properties that are specific to a kind of object that help in its use. Giving an ellipse a leftRight property wouldn't make sense, nor would giving it a "numberAtCursor". Continuing along this line, the power of adding variables (the little "v" at the top of all the panes) is to let you define your own properties for an object. If you look at the "plankton" project on the squeakfest 2004 project page (linked to on the Tutorials page) you'll notice lots of properties (variables) defined like "timeSinceLastBirth", which keeps track of how many clock ticks in a simulation it has been since a particular fish gave birth. This is needed to control the rate of breeding. A key in simulation is figuring out what properties (variables) you need to define for a given object, and what methods (scripts) you associate with the object. The scripts make use of the variables.
This is a good example of object-orientedness. The graphics categories apply to things that you have painted... or pictures imported perhaps... things that are graphical. While everything in squeak/etoys is graphical in a larger sense, you don't think of an ellipse as something which wil change its graphic (say, to a square), because then it isn't really an ellipse. I think the view is that objects you paint have an identity separate from their look (graphic), and you can change their look by changing their graphic. But other objects (ellipse, joystick, random stuff pullied out of object catalog) have an identity that is tightly tied to the way they look, so giving you power to change their graphic seems inappropriate - hence no such category for them. That said, I think every object can be made to "look like (whatever)", so the bonding of an object with its physical appearance is not being completely dictated. You can make an ellipse look like a star. You just can't change an ellipse's graphic. Since then it isn't an ellipse. Pretty subtle I suppose.
Obscure: auto phrase expansion, behave like holder, automatic viewing, shuffle contents, parts bin.
Geometry can be a textbook. Lots of stuff has been done with Logo and geometry. If you don't know about Logo - go to logofoundation.org, or stop by and see some demos. You'd love it, especially microworlds logo, which combines what you like about squeak with real programming in an elegant language. Only thing is that the school site license is about $1500. So, I'm on the squeak bandwagon for now (and squeak does some things better anyway, but some things a lot worse.)
I will explore these one day. Working now on basic concepts. But many of the plugins and fancy stuff you can get in object catalog ultimately make squeak much more useful. Hope is that if people get all other fundamentals, these will fall in place naturally. Some though should be covered specifically because they open up ways of using squeak that will increase likelihood of engagement. Books and pages are a good example. In the list I made this morning I came down on the side of touring places. There are some of those places that remain dark, mysteries for me and I find it very sad that there is something called 'Tools' in the object catalog and that I don't know how a single one of those tools works or what to do with it. Or do I mean embarrassed not sad? Cut it out. No room for embarassment in learning, just gets in the way. Most of the tools seem useful for interaction with squeakSMALLTALKsqueak, not squeakETOYSsqueak. Some places are better left dark. Eventually I'll illuminate the ones I think we want. If i could I would remove the games, demos and 3d and star squeak stuff from the object catalog. They belong somewhere else. And if I could cast other things into darkness, like you, I would. These were not done with etoys. They were done in smalltalk. At least, they should be set aside in a special category that says "these were not done with etoys". We need to recognize that there is a much larger squeak user community that mean "smalltalk" when they say "squeak", instead of "etoys". They don't use the scripting tiles. It is a real programming language, and the interface they work with typically inolves some of the menus of menus you talk about in the next paragraph. I think there should be more obvious boundaries built around etoys, so that when you wander off, you get a warning that there is thin ice, or dangerous trails, or whatever. Perhaps a special option (like "etoys friendly" preference that you may or may not know about... but you're using) that is "non-etoys-unfriendly" and makes stuff you really don't want to see just disappear, including some of the tools you've talked about above One week last fall I tried to follow all the paths through menus and the menus of menus. One tour started with 'world menu' I kept it open and then opened the 'desktop' menu and then the 'changes'. At one time I thought an lexicon might be useful to understand Squeak. I must have 25 pages of screen shots that I printed out to see if it helped to see it all layed out on paper. It didn't help.. There is a nice math site that uses flash called a Maths dictionary for kids http://www.amathsdictionaryforkids.com/ that my students enjoyed using. I found it very interesting to watch the different uses. Some started with a word they knew like 'add' and then stayed in that little place doing addition problems, some hopped around from topic to topic in no particular order, some started with the list of words in 'a' and were working their way through alphabetically. One of the girls worked her way from 'A- 'C' . It is a system isn't it? I can remember doing something similar only I started with 'A' in Compton's Pictured Encyclopedia. I can remember very clearly thinking if I worked through them that way I would know a lot and I would not have left anything out. I was 7 so I think that is what I am seeing in my students too. I don't know if a Squeak Dictionary would be the best way but it would certainly be a reference that is a familiar format. There is something good to be said for a familiar format for an unfamiliar topic. As I realized how big the body of knowledge is in Squeak, even the eToys version is huge, I realized I didn't know enough about computer science to make a good job of a lexicon. Would it be a big project for someone with your knowledge? If not, then I ask for it. A Squeak Lexicon in Squeak. The lexicon might be used by adults learning Squeak too. A guided tour though everything you want/need to know in Squeak, that introduces things in the "right" order, or at least suggests reasonable orders, is what we want. This conversation is helping us figure out what that would look like, and I'm finding it very valuable. Meanwhile, we'll continue to collect scattershot the Squeak How-To tips. Did you find anything valuable in the 'how to think like a computer scientist' book idea. Is it worth a second look given the state of my knowledge? I noticed it mentioned in the 498 class notes. The forward is by someone from the University of Chicago but I don't know if the book is good or bad, mainstream or backroad. My impression was that I could have learned python if I had read it carefully. At quick glance it looks like a nice programming introductory book. Python is a nice language from what I understand. If you're really interested, go for it... but not with your eyes closed. There is a lot more to programming than just the commands and how they work. I'd recommend taking a course with an instructor, or just sitting in on a course. Parkland has several. You might find our CS 105 worth looking at. We're also talking about introducing some CS courses aimed at non-technical, non-business majors. Squeak (etoys) is actually under consideration as one of the vehicles, as is microworlds logo, and some javascript or other dynamic web page programming. Thats the course you want to wait for - but I think you're doing it right now slowly anyway. I could have posted this on your 498 pedagogy page and you can post it if you want to or just archive it, which ever suits you purposes. Thank you for asking. KathleenH This discussion is very helpful to me. Other educators, students, parents, should feel free to weigh in. I think we're helping figure out what a course like that mentioned in the last paragraph might look like. After reading through your comments in detail, and giving my answers, I'm intrigued about how three different confusions mix together. Knowing about programming in general. Knowing about how squeak constructs work in particular, and being able to navigate/prioritize/use the many categories, panes, etc. I struggled through the last two, as my class is doing now, but had a solid base with the first, and a conceptual model to hang things onto, which must make things a lot easier. We should try to separate these issues and deal with them directly for the novice. ... Lenny Friday, 4 February 2005, 6:34:22 am [Specific suggestions for what to cover in demos moved to Squeak How-To page.] If example projects are provided in the tutorials,it would be great if they were based in a science, math, or arts topic. Please avoid violent games, it seems like most of the ones I have seen destroy something as part of the game. Surely we can offer children something that is constructive rather than destructive. It will help Squeak be adopted into public school classrooms more quickly if every Squeak tutorial is also a lesson that is in national math/science/arts standards. This will help teachers see the possibilites of this form of project learning that will be new to so many of them. An early project we did last summer was to draw an object with a forward and turn script,on a playfield with a color change to blue/black and then ask students to do a solar system. Kathleen Harness Sunday, 6 February 2005, 10:05:12 am I've suggested a project to some in my class that perhaps somebody will take up. A simulation of an atomic chain reaction. No explosions, just lots of atom splittings. It wasn't suggested so much for science, but just to exercise some programming tricks. At what age do you think this would be good, or do we need to cloak it with good uses of atomic energy? ... Lenny Links to this Page
|