Mr. I's profileIntuitively ObviousPhotosBlogListsMore ![]() | Help |
|
September 04 Welcome, and welcome backToday is a banner day for me, in terms of "other people's software." First of all, the fact that you're reading this at all means that someone at TheSpoke v2 managed to hear my laments, and got my blog working again. It's been frustrating, because I've had a number of really amazing insights that I haven't been able to share with anyone, because since my account was blasted to v2 I got an error message any time I tried to add a new entry. But what's also amazing is that I'm writing this blog entry from a hotel room in Denver. Why is this so amazing? Because it means that my laptop is talking to hotspots again. Background: I've had my Toshiba for two years now, and besides being an amazing workhorse (so much so that I've been finally tempted to ditch the desktop in my office), I've been able to surf from virtually anywhere (yeah, I know, life's supposed to be that good). Anyway, prior to my loading of Visual Studio 2005 Beta 2, I had to add Windows XP Service Pack 2. The installation went flawlessly, but someTHING in the updated security managed to turn off my ability to connect to any hotspot other than at my school. I've played with bunches of setup switches, and had the two certifiable geniuses (genii?) at school look over the system, but we couldn't figure anything out. This made the summer really frustrating, because I did a 6,500 mile trip, driving from New Hampshire to Colorado Springs to Yellowstone National Park to Ohio and back, and COULDN'T attach to any of the dozen or more places I stopped. The mystery was that I COULD connect at school. Right before flying out here this weekend, I played once more with the settings, and when I got into the hotel here ... it worked. Just plain weird. Which, of course, is a LONG way around saying welcome to my TheSpoke v.2 blog. Hope I don't bore you too much in the months to come. August 23 The New Year BeginsNext Monday starts my sixth year teaching at Bishop Guertin High School. (Man, how time flies!) For the Fall I've got a couple classes of Microsoft Office, a Visual Basic, and an AP Computer Science this semester. (All courses are semester long, except for APCS). In my spare time I also moderate the school's FIRST Robotics team.
We're using Visual Studio .NET (2003) for all of the programming classes (which includes the above two and a C++ course covered by another teacher). Overall, I think the curriculum works well, although I'd like to see my AP scores a little higher this year than last. (Wouldn't we all?) As I look out at the year to come, and the students I'm likely to see, I'm fairly hopeful. I know that I'm prepared, and that I know the material cold. I mean, I've been programming since 1976 or so, I was a software engineer for 17 years, I've seen the inside of DOS and Windows system code (including Tony's Bar and Grill and the BurgerMeister), I've been using VB ever since Version 1.0 (in 1990!), and I've been to a number of APCS semenars, a couple at Carnegie Mellon University. All I have to do now, is transfer this knowledge to (as Rush Limbaugh would say) young skulls full of mush. What could possibly go wrong?
(stay tuned!)
COMMENTS FROM theSpoke: @ Wednesday, August 24, 2005 11:18 AMYeah, what could go wrong? go wrong? go wrong? :-) have a great year Tom! AlfredTwo
August 04 Teaching computer skillsI just spent the last 3/4 hr on the phone with my mom. She lives in New York City, or around 220 miles away from Southern New Hampshire where I live. She needed help putting together a chart in Word so she could get the various ministers at her church scheduled for the next couple of months. She's making the chart in Word, and was getting stuck on getting a table with 100 rows and about 20 columns the first column (for the name) being very wide (3") and the rest very narrow (1/4"), and each row had to be two lines tall. Piece of cake for most of us, I know.
Five years ago this month, as I was being interviewed by my school principal and Alfred Thompson as they tried to see if I could teach computers (I was coming in from industry, never having taught before), the principal asked me how I'd handle a hypothetical situation. What would I do, he asked, if no matter how many times I explained something, one student just didn't seem to get it. I looked at him with a face that was a mixture of fear and confusion and asked, "My mother is going to be in the class??" It really is nice to see some things never change.
(Yes, mom, I love you too!)
COMMENTS FROM theSpoke: @ Friday, August 05, 2005 6:24 AMHas it been 5 years already? Wow. Thanks for taking the job BTW. You're still doing a great job. AlfredTwo
August 02 Visual Studio Startup KitsHas anyone seen the Microsoft Startup Kits yet? If you're like me, and have been playing around with Visual Studio 2005 Beta 2 (and why haven't you if you not?), Microsoft has collected a number prewritten code samples for the tool. You can see a description of them here: http://msdn.microsoft.com/vbasic/downloads/2005/starterkits/ They have kits for Card Games, Shareware (with product activation and registration, links to PayPal, etc.), Web Log Analyzer, Time Tracker, Personal and Club Websites, all really neat sounding. I've taken a look at the Card Game and Club Website kits, and generally like what I've seen. I do have to ask, however, regarding the Card Game kit: Why hasn't anyone created a Playing Card object for VB.NET? Various ISVs created Playing Card objects for previous versions of VB, and they made writing card games a piece of cake (almost). The Card Game Startup Kit includes all sorts of wonderful object oriented code, and the end result obviously IS a card game, but it doesn't have an installable Card object that you can plunk into the Toolbox. THAT would be a wonderful thing to give away, and if no one steps up to the plate, I might just have to do this myself. @ Friday, August 05, 2005 6:23 AMI've been thinking the very same thing! One of us has to do it. You're on vacation so you go first. :-) AlfredTwo @ Saturday, August 06, 2005 3:52 AMTell you what, let's start simple. Remember the LED / LightBar objects? How would we turn them into installable tools? Mr_I July 22 Summer VacationOkay, so it's been about a month since I added an entry. Not my fault, for more than a few reasons:
So, how's your summer going? June 15 It's all MineSweeperMineSweeper is now working; for those interested, a copy of the CAB file can be found in MySpace.
Anyone ever notice that when you finally get a program "finished", you start figure out ways of thinking of ways to make it better? Back in industry, we called it "Feature Creep," but these games of mine have really been driving that point home.
For example, MineSweeper has been working fine, and I notice that I need a way to "mark" squares for where I think bombs are. So I add that, and then I realize I should add a display of how many bombs are left to mark. That causes me to think about a better display of the clock, which ... etc.
Of course, as I tell my students, Feature Creep is something that needs a measure of maturity to fight. Case in point, my VB student who started (!) writing a Galaxian game by figuring out how to turn the mouse pointer off, add sound, save the high scores in the Registry, ... Which all would have been fine, if the game ACTUALLY WORKED! 8^) June 13 It's a minefield!Okay, I've got a memory leak. Wouldn't have thought that was possible with the .NET Compact Framework, but it seems to be the case.
My MineSweeper program is running fine in the emulator, but when I transfer the CAB file to my PPC, it runs for a while. After I select New Game for the third or forth time, it starts dragging. Last week I reported the PPC crashed hard; I think I found the culpret. Of course, I don't know where the bug is yet, but identifying that there is a bug is always the first step.
Updated at 1:55pm DUH!!! If you're looking for places to put bombs, you should remember to clear away the OLD ONES FIRST! (Boy, do I feel silly.)
More on ChipWits.In yesterday's entry about ChipWits, you had to rely on your own imagination. Of course, if I had been really thinking, I would have added a picture!
This is what my VB6 version looks like. In this shot you can see all of the major pieces. The left side of the screen shows a robot in one room of the maze, which currently has three disks, three cups of coffee, two pieces of pie and two oil cans. (Sorry, no "bad things" in this shot.) The green doors take you to other rooms. This particular maze is called "Greedville", because it's purpose in life is to train you in IBOL programming; therefore there are only a few rooms filled with good things.
Below the maze are displays for fuel, damage, distance to a sought after object, and the keypress indicator; also the top entries of the move, object, and number stacks. The stacks let you remember things like how you got into a particular room or what you found there.
The right side of the picture shows "Greedy", a typical IBOL program. All programs start in the top left chip (indicated by the traffic light). The next tile is an If statement, asking if the thing directly in front of the robot is a floor (as opposed to a door, wall, etc.). If so, follow the arrow to the right (through the Junction Block) and "drive forward"; otherwise, go down and ask if it's a door, then a wall, etc. The tiles that look like binoculars are asking if the robot can see an object anywhere ahead (if so, store the distance to the object, in steps, in the Range Finder). The tile with "Y or N" is a coin flip, to add a random factor. The large red quasi-circular arrow is "return to the traffic light". The tile that looks like a claw (row 3, column 4) is a "pick up object" instruction.
When running an IBOL program, the tile being executed is highlighted, and the "clock speed" is about 5 per second. Back in the day, the Mac version would slide around the maze with various sound effects, with a simple "arm" that would grab objects, and animations for crashing into walls or firing the laser. (Currently mine just slides around, nothing else ... yet). June 10 PocketPC AppsAs previously mentioned, I've gotten into writing applications, games mostly, for my PocketPC. Using VB.NET and VS.NET 2003 just makes it too easy to not explore.
To date, I've got Othello (Reversi), Traffic, and just this afternoon MineSweeper finished. The CAB files for the first two can be found in MySpace, if anyone is interested. I'd put MineSweeper up as well, but ... it' ain't quite ready for prime time.
For some reason, shortly after loading MineSweeper onto my PocketPC, the PC crashed hard. I mean, dead dead. It's happened before, when I first started exploring programming stuff, but always at home where the backup files were easily reachable. I'm at school right now, which means I'm disconnected until I get home. Bummer, man, because it plays pretty good ... May 31 What is ChipWits anyway?Once, long ago, I owned a Mac.
(Okay, so there's a whole story connected there, but it's not got anything to do with this entry 8^). Anyway, back in '85, a friend of mine gave me a present called ChipWits. It ran on my FatMac (all of 512K RAM!), and was, oh, how can I describe this? A game, edutainment, a programming challenge, ... all of the above? ChipWits was a program that let you program a robot to navigate a maze. The maze consisted of rooms of 8x8 tiles, and each tile could have a wall, a floor, a door (which lead to other rooms), a good thing (an oil can, a cup of coffee, a disk, or a piece of pie), or a bad thing (a "bouncer", an electro crab, or a bomb). In ChipWits you had to write a program that would let your robot navigate any of the 8 mazes ("environments"), picking up good things and avoiding (or killing) bad things, while trying not to run out of energy or time. The ChipWit robots were programmed in IBOL (Icon Based Operating Language), which consisted of chips that were laid out like cards on the right side of the screen. Each chip had a function ("turn left", "do you see a wall", "go forward", "flip a coin", "fire laser", "save what you feel on the stack", etc.), and would be connected to one or two other chips via "wires" (arrows).
The robots looked a lot like original Macs sitting on a pair or roller skates, and the simple animation of the day made the single stepping of the IBOL programs easy to understand and fun to watch.
It was an amazingly addictive game. I spent days upon days trying to perfect a given program, dealing with the limited programming "space" (one of 8 panels of 10x6 chips). Rumor had it that there were competitions out there of ChipWit programmers, trying to achieve high score or fastest execution, although I never saw any of these myself. Back then, there was no web to drive such things ...
According to the package (which I still have!), ChipWits was written by a pair of guys, and was available at one point or another on for Mac, Apple II, C64, and Exidy Sorcerer. There's been a website up for about 6 years now (http://www.chipwits.com) that has a single page stating "coming soon", and an EMail link that seems to be one of the authors. Some years ago I tracked down the other author, but he's been medically disabled and unable to write software ...Anyway, about three years ago I started, for the fun of it, writing my own version of ChipWits in VB6. It took a lot of time, mostly because I was working from 15+ year old memories, but it started coming along s-l-o-w-l-y. A year ago or so, I found a C64 ROM image, and together with a C64 emulator, I actually had it running on my laptop, which propelled me to "finishing" ChipWits for the PC. Which brings us to today: I figure this summer, with my copious spare time, I might try to upgrade ChipWits to ChipWits.NET. Doing so would greatly increase the potential audience, as well as open the door to a possible PocketPC version.
Of course, only time will tell. It's been, after all, 20 years ...
COMMENTS FROM theSpoke: @ Tuesday, May 31, 2005 11:26 PMOooh... sounds interesting. Let us know if you finish the .NET version. :-) punzki @ Monday, June 06, 2005 8:23 PMhave you seen Baltie? http://www.baltie.net/newcom/w1/aboutus.asp gitwitguy May 20 Prom NightYes, it's the end of Senior year, which means the most important night of a young person's life, the Senior Prom is here.
Oh, I'm sorry, it's not prom night for me, but for my son.
My oldest is at the prom right now, so naturally I'm on line. I've had the honor and pleasure of watching Will grow from birth to a fine man of 18 years. I've spent probably more time with him than most parents for the past four years, as I teach at his high school, and he's taken five of my classes (Visual Basic, AP CS, Systems Management, Principals of Networking, and Assembler). Add to that his incredible involvement in FIRST Robotics, where I'm the moderator for the school's team, and we've grown up a lot together. And now he's off with a wonderful young lady
My wife, almost as in a SitCom script, is off at a camping trip with my daughter and the Girl Scouts. My other son is upstairs sleeping, and I'm here blogging.
As the comedian Robin Williams would say, "Reality, what a concept." May 19 The Apps are coming!The last time I spoke I told of the PocketPC apps my students were working on. The good news is that this little activity definitely caught their attention, and mine as well! In about two weeks, my students have written a Text Encryption utility, Minesweeper, Cribbage, a Day Trader simulation, a Tip calculator, Space Invaders, Mad Libs, a Planetary Orbit simulator, and a PacMan. Some are obviously more "ooo, wow" than others, and some are closer to completion than others, but it's all good, because the goal was to see what people could create when they're given free reign As for myself, I've gotten my Othello running bug-free, and I've moved on to a Traffic game (get your car out of the jam-packed parking lot). That one took only two evenings to get into the PPC, which means I'm getting the hang of it. Beyond these, I see in the future (i.e., this summer):
May 11 Pocket ProgrammingSo, the APCS exam is over, and my class is almost entirely composed of Seniors, who, while technically have classes until the 20th, in reality have checked out a while ago. What do I do with them to keep them interested in coming to class?
Various members of the APCS listsrv dwell on this problem every year, and suggestions abound. Last year I tried running Terrarium, a sort of MBCS Fish on steroids. This year, however, I tried something different. Following in the footsteps of a friend of mine (Pat Phillips), I assigned them a programming project, with the requirement that the program they write has to end up on a PocketPC.
Bishop Guertin High School received a couple of ViewSonic PocketPCs last year in a grant, and I've been waiting for this opportunity to put them to use. (Actually, I've been using one myself for quite some time, since my own Palm Pilot died a premature death! 8^) Anyway, while I've toyed with writing programs for it for a while, and even spent ten minutes creating a Rock Paper Scissor app, this apparently was the kick that I needed (as well as the students!) So while they're digging into cribbage games, and text encoders, and iPod replacements, etc., I went into my archives and found an Othello (a.k.a. Reversi) game that I wrote years ago while learning VB.NET, and set out to convert it to PocketPC. To say it was easier than expected would be an understatement! Visual Studio with VB.NET (or C#) is an amazing platform for program development, and this little project points this out in an undeniable way. In less than a day I had the game running on the emulator, which let me hunt down a few gotchas; by the second day I was playing my Othello game while standing at a traffic light. (Just try that with a laptop ... oh, never mind, you probably do!) Yes, the .NET Compact Framework has limitations ... but you can learn to live with these so quickly it's almost not worth mentioning. (FYI, If anyone wants the CAB file, drop me a line!) Next challenge: Replace the brain-dead calculator that comes with the PDA!May 09 APCS 2005Okay, let's try this in code:
But seriously, how did you find the the exam? The eight students in my APCS-AB class had pretty much one opinion: The multiple choice were easy enough, but the free response were very tough. (I haven't had the time to go over the questions myself yet.) Actually, the first AB question (SalmonFish) they got pretty much without incident. (In fact, it looks like a lot of fun to create.) Question 2, involving ZIP codes and MapSets, caused many of them some pain; I guess I should have spent a bit more programming time on those advanced data structures. About half got through the modified TreeNode in Quesiton 3 without too much bloodshed. They universally got pummled with the EMail Map / Set / Queue in Question 4. Anyway, last year's scores (the first year I taught an AP class) of 6-1s, 1-2, 4-4s, and 3-5s prompted me to use the term "inverse bell curve." My students this year promise me that they've "filled in the missing numbers."May 05 Winning the defeat: The Atlanta FIRST ChampionshipTwo weeks ago, I led a troop of 21 students and 11 parents on a quest for glory, the FIRST Robotics Competition Championship Event in Atlanta. Seven weeks earlier we faced some worthy competitors in the Manchester NH Regional, and placed 29th out of 51, winning 5 of 9 matches we were in. These results were consistant with how we did last year at Manchester, and when we went to Atlanta last year everything seemed to fall in our favor: we were 5-1-1, finishing the division preliminary rounds in 7th place (out of 75 teams), were seeded into the finals, where we won most of our rounds, winning a Division Finalist trophy and missing Division Champion by literally a hair's breadth. It was wonderful.
This year, however, our robot had a few more issues to contend with, and our team was missing a critical spark that was present in previous years. To say we had our cybernetic posteriors handed to us would be diplomatic. Fate had us scheduled to compete in the first of the 100 preliminary matches, and in it we set the standard for losing. Two minutes and fifteen seconds into the weekend, we lost 123-7, a point spread that would go unsurpassed for the rest of the 460-something matches over the weekend.
One could point out that our division (85 teams, roughly a quarter of those present) consisted of 14 first place seeds from regional competitions and 21 regional competition winners, and thereby say that we were extremely outclassed. However, when our scores for the remaining matches was 36-38, 8-0, 22-35, 21-55, 35-45, and 10-46, thus winning only one of seven, there's not much that can be said to sooth our egos. Of course, we did do better than home-town rivals Nashua High, who didn't win any of their matches and ended up in 83rd place! So why did I title this piece "Winning the defeat"? I remain extremely impressed with our team of students. Overall, they carried themselves with dignity, even in the face of such disasterous results. Somehow they remained mostly cheerful and upbeat, cheering the team on even when things went awry. Add to that the fact that many of the students and adults attended conferences during the weekend that taught how to improve the team, the robot, the design process, etc., and you see why I remain extremely confident for the future. (Plus, as the only BG teacher on the team, I have inside information about the incomming students arriving in the fall, and I know what our prospects will be: sweet!) Maybe, if I stay consistant in this blog, you'll see what I mean next year! April 15 Missing InactionYes, it's been months since I wrote something. So where have I been?
A combination of not in the habit of blogging regularly, getting caught up in the hustle of FIRST Robotics, teaching new courses, my son going through the excitment of college selection, finishing off a room or two in the basement, trying to get the 1960 MG-A up and running, and my wife who's two years into a six-month project. You know, life.
Things are starting to calm down, though, so hopefully I can continue at a more regular pace. Only time will tell. December 06 Another day, another entry ... hopefullyIf you note, it's been some time since I blogged. Unfortunatley, to quote the Bard, "It ain't my fault!"
Over the past month or so, I've sat down and waxed poetically about a bunch of things (high school entrance exams, FIRST Lego tournaments, etc.), and after typing what seemed like pages of really neat and insightful stuff, I hit the Post button, and ... got an error message equivalent of a Bronx Cheer. (That's a raspberry, or a rude thing to do with one's tongue, for those who don't know.)
I don't know why that happened, but it did, so I'm going to be extremely brief now, in case it happens again. (I'd rather lose a brief message than another long one.) November 16 FIRST Things First: Robots, big and smallOne of the things that has captured my interest for the past few years is robotics, and specifically FIRST Robotic Competitions.
For those who don't know, FIRST is an acronym meaning For Inspiration and Recognition of Science and Technology, and was created by Dean Kamen (inventor of the Segway, iBot Personal Transporter, compact kidney dialysis machines, etc.) and Dr. Woodie Flowers (Pappalardo Professor of Mechanical Engineering at MIT, former host of the PBS program Scientific American Frontiers, etc.). FIRST seeks to get young people as excited about technology as they are about sports or entertainment, and accomplishes this with annual robotic competitions. Each year in early January teams of students are presented with the "game", a challenge that changes every year, and the game involves robots that the students have to build. Anyway, FIRST has been around for about 14 years, and I recall seeing something about it on TV around 10 years ago and thinking, "Man, why couldn't they have had that when I was in high school???" But I was a software engineer for a PC manufacturer, well out of college, married with three kids of my own, so I guess some dreams were never meant to be.
Then I got laid off from that job. (Actually, that was the greatest thing that could hav happened to me, but that's a tale for another entry.) I found myself working for a company near (about 4-1/2 miles) to my home. I was there for about 2 years when I found out that the company was sponsoring a FIRST team for the local high school. "Wow," I thought, "I could really get into this!", but personal committments kept me from getting involved for a few weeks, at which point, lo and behold, the year's activities were done. No problem, I could always try again next year.
Or not: Just a few months later I left THAT job to become a high school computer science teacher. (No, not at that local school, at a much better one! 8^) And, as luck would have it, or as Murphy would declare, there was no FIRST at BG. Rats!
At the start of the next school year, my boss (fellow theSpoke blogger AlfredTwo) announced that we were starting a FIRST team, and the rest, as they say, is history.
COMMENTS FROM theSpoke: @ Tuesday, November 16, 2004 4:25 PMI gotta show you how to add links in your blog. :-) FIRST's web site is http://www/usfirst.org for those interested. AlfredTwo @ Tuesday, November 16, 2004 7:19 PMYeah, well I WAS going to do that when I started that entry, but obviously forgot by the time I was done (a few classes later!) Mr_I @ Wednesday, November 17, 2004 5:02 PMFIRST is awesome. I'd love to see either FIRST or Battlebots for HS take on more of an automated and AI component so that s/w can get emphasis in robotics as well. davemi_ms @ Thursday, November 18, 2004 7:24 PMHey, has anyone seen the Java Robotics products at www.ridgesoft.com? Let me know if they are any good! Maybe I'm getting the bug Tom has! BrianS @ Friday, December 03, 2004 5:02 AMits great to see FIRST coming onto the spoke as well =) im from team 188 based in toronto, good to see you! CanuckZ
November 12 Wow, I've got readers!(Okay, I must admit, it's a little bit of an ego-boost to know someone actually read my stuff.) Thanks to friends new and old.
COMMENTS FROM theSpoke: @ Saturday, November 13, 2004 3:10 AMActually people might be interested in this week ends FFL event at BG. :-) Or perhaps what your experience was like when you realized how easy it was to program games for your poket PC. AlfredTwo @ Sunday, November 14, 2004 1:26 AMI found you! Boy, I miss our fall meeting in Redmond this year! :( BrianS @ Tuesday, November 16, 2004 3:21 PM(Live feedback ... another "oh, wow" moment.) Where to begin with comments. Nice to see Colletti is blogging, and hopefully he'll make good on his "threat" to enter ImagineCup. (Now if I can get his partners in crime to do so also ...) Hi, Brian, good to see you too. FLL ... okay, another blog entry is coming. And then maybe a whole separate thread on FIRST in general. Gotta grade some tests first. Mr_I
November 09 Is this thing on?So, what is this thing called Blog?
COMMENTS FROM theSpoke: @ Tuesday, November 09, 2004 6:02 PMWell now you’re started, so just keep e’m coming :) prismejon @ Friday, November 12, 2004 4:15 PMGlad you are here. Enjoy yourself. AlfredTwo @ Saturday, November 13, 2004 4:00 PMWelcome on board! :) punzki
|
|
|