<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Daniel Forhan</title>
        <link>http://geekswithblogs.net/dforhan/Default.aspx</link>
        <description>Computer Science Teacher and Java Programmer </description>
        <language>en-US</language>
        <copyright>Daniel Forhan</copyright>
        <managingEditor>dforhan@townisp.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Daniel Forhan</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/dforhan/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Algonquin Regional Programming Team Continues Winning Ways</title>
            <link>http://geekswithblogs.net/dforhan/archive/2012/05/04/algonquin-regional-programming-team-continues-winning-ways.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2012/05/04/algonquin-regional-programming-team-continues-winning-ways.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2012/05/04/algonquin-regional-programming-team-continues-winning-ways.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;i&gt;&lt;/i&gt;&lt;/p&gt;    &lt;p&gt;&lt;font face="Arial"&gt;Algonquin Regional Programming Team won first place in regional computer programming competition at Fitchburg State University. This is now the second regional event the team has won this Spring (also winning the Providence College event). Students solved math problems using the Java and C++ programming languages, and competed against students from schools throughout New England. Team members are Ray Mead, Troy Ling, Jackson Brodeur, and Shaun Tan.&lt;/font&gt;&lt;/p&gt;    &lt;p align="center"&gt;&lt;a href="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/AlgonquinTeam2012_2.jpg"&gt;&lt;img style="background-image: none; border-width: 0px; border-style: none; border-color: -moz-use-text-color; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px;" title="AlgonquinTeam2012" alt="AlgonquinTeam2012" src="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/AlgonquinTeam2012_thumb.jpg" border="0" height="277" width="368" /&gt;&lt;/a&gt;&lt;/p&gt;    &lt;p align="center"&gt;&lt;font face="Arial" size="2"&gt;&lt;i&gt;Team 1-From l to r, Stephen Taylor, professor at FSU, Algonquin students: Shaun Tan, Troy Ling, Ray Mead, and Jackson Brodeur, and Prof. Frits Landers, Dept. Head, FSU&lt;/i&gt;&lt;/font&gt;&lt;/p&gt;    &lt;p&gt; &lt;/p&gt;   &lt;p align="center"&gt;&lt;a href="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/IMAG0471_2.jpg"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="IMAG0471" alt="IMAG0471" src="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/IMAG0471_thumb.jpg" border="0" height="184" width="244" /&gt;&lt;/a&gt;&lt;a href="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/IMAG0473_2.jpg"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="IMAG0473" alt="IMAG0473" src="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/IMAG0473_thumb.jpg" border="0" height="184" width="139" /&gt;&lt;strong&gt;&lt;em&gt;&lt;br /&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;i&gt;&lt;font face="Arial" size="2"&gt;Team's 1, 2 and 3 &lt;/font&gt;&lt;/i&gt;&lt;br /&gt;&lt;a href="http://gwb.blob.core.windows.net/dforhan/Windows-Live-Writer/51b60c698a29_82B7/IMAG0473_2.jpg"&gt;&lt;strong&gt;&lt;em&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;   &lt;img src="http://geekswithblogs.net/dforhan/aggbug/149534.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2012/05/04/algonquin-regional-programming-team-continues-winning-ways.aspx</guid>
            <pubDate>Fri, 04 May 2012 17:18:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2012/05/04/algonquin-regional-programming-team-continues-winning-ways.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/149534.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/149534.aspx</trackback:ping>
        </item>
        <item>
            <title>Algonquin Takes First at Providence College</title>
            <link>http://geekswithblogs.net/dforhan/archive/2012/03/22/algonquin-takes-first-at-providence-college.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2012/03/22/algonquin-takes-first-at-providence-college.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2012/03/22/algonquin-takes-first-at-providence-college.aspx&lt;/a&gt;&lt;/p&gt;Algonquin High School Team takes first place at Providence College Programming Contest.&lt;br /&gt;Winning team:&lt;br /&gt;Jackson Brodeur, Shaun Tan, Raymond Mead, and Akshay Thejaswi&lt;br /&gt;Each member awarded a trophy and a $5,000 scholarship to PC.&lt;br /&gt;Nice job team! &lt;br /&gt;Photo and details here: &lt;a target="_blank" href="http://www.thedailynorthborough.com/schools/local-students-win-honors-programming-contest"&gt;article link&lt;/a&gt;&lt;br /&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/149079.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2012/03/22/algonquin-takes-first-at-providence-college.aspx</guid>
            <pubDate>Thu, 22 Mar 2012 14:44:33 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2012/03/22/algonquin-takes-first-at-providence-college.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/149079.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/149079.aspx</trackback:ping>
        </item>
        <item>
            <title>Using Video Games to Teach Programming</title>
            <link>http://geekswithblogs.net/dforhan/archive/2010/01/26/using-video-games-to-teach-programming.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2010/01/26/using-video-games-to-teach-programming.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2010/01/26/using-video-games-to-teach-programming.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;As a programming teacher one of the things that often comes to mind is; how can I teach programming in a way that is interesting and dynamic? Very recently I came up with a plan that I hope will address this idea. My plan is to add a new and exciting programming course called "Game Development and Programming with &lt;a href="http://msdn.microsoft.com/en-us/aa937791.aspx"&gt;XNA&lt;/a&gt;" to our course offerings.&lt;/p&gt;
&lt;p&gt;Coincidentally this morning I came across an interesting &lt;a href="http://www.sciencedaily.com/releases/2010/01/100121101124.htm"&gt;article&lt;/a&gt; in the Science Daily that really connects with many of the thoughts I have had related to this kind of approach to teaching programming. The &lt;a href="http://www.sciencedaily.com/releases/2010/01/100121101124.htm"&gt;article&lt;/a&gt; discusses how teaching rapid video game development can strengthen critical thinking skills an improve overall participation.  The article also discusses how using video game development can and bolster students' interest in computer science and help to bridge the digital dived. I quote, "...using rapid computer game creation as an innovative teaching method could ultimately help bridge the digital divide between those people lacking computer skills and access and those with them."&lt;/p&gt;
&lt;p&gt;I am very excited to offer a video game development course to my students next year. This approach appears to hold much promise. Stay tuned for updates.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/137633.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2010/01/26/using-video-games-to-teach-programming.aspx</guid>
            <pubDate>Tue, 26 Jan 2010 13:36:20 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2010/01/26/using-video-games-to-teach-programming.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/137633.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/137633.aspx</trackback:ping>
        </item>
        <item>
            <title>I'm back with Big News!!!</title>
            <link>http://geekswithblogs.net/dforhan/archive/2009/12/15/136991.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2009/12/15/136991.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2009/12/15/136991.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;As you can tell by the gap in the posting dates it has been a while since I last posted on this blog. With all that has been happening in my personal as well as professional life, blogging has taken a back seat. Many things have happened since I last posted. I won't enumerate them, but let's just say life has been exciting to say the least. One of the more exciting events in my life been the appointment to a new position at &lt;a href="http://www.nsboro.k12.ma.us/algonquin/"&gt;Algonquin RegionHigh School&lt;/a&gt; as a Programming &amp;amp; Math Teacher.  As great as that has been it is not the big news that I referenced in this article title.&lt;br /&gt;
&lt;br /&gt;
Algonquin, like many high schools in the U.S. has a computer programming team that competes against other high schools in regional competitions-- typically sponsored by local colleges. I am fortunate to be the coach of this team. The big news?...&lt;br /&gt;
&lt;br /&gt;
On December 11th our Programming Team participated in a contest sponsored by &lt;a href="http://compsci.fsc.edu/"&gt;Fitchburg State College&lt;/a&gt; and did exceptionally well. Our school took 1st, 2nd and 5th place.  Although this may have happened before, I have never personally witnessed a team in this type of event accomplish this feat (taking first and second place). This is very difficult to accomplish given the level of challenge we faced.  There were 27 teams that participated from at least 14 different schools in MA, RI and CT representing some of the most talented young programmers in New England.  Way to go team!!! &lt;/p&gt;
&lt;p&gt;I am very proud of you!!! &lt;br /&gt;
&lt;br /&gt;
Results:&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Team 2- First Place&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Matteen, Sooyong, Ofir, Alekhya&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Team 1- Second Place&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Ben, Taylor, Ehsan, Vijay&lt;br /&gt;
&lt;strong&gt;&lt;br /&gt;
Team 3- Fifth Place&lt;/strong&gt;&lt;br /&gt;
&lt;br /&gt;
Ian, Wilfred, Nick, Arjun&lt;/p&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/136991.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2009/12/15/136991.aspx</guid>
            <pubDate>Tue, 15 Dec 2009 12:43:40 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2009/12/15/136991.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/136991.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/136991.aspx</trackback:ping>
        </item>
        <item>
            <title>Hunt for the Wombat</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/04/26/76460.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/04/26/76460.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/04/26/76460.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Very often as us AP Computer Teacher's approach exam time we start to think of interesting activities that our students can do the weeks that follow the exam. I was fortunate enough to come across a real nice&amp;nbsp;project that was developed by a teacher and his former student who is now an employee at Microsoft. The project is called &amp;#8220;Hunt for the Wombat&amp;#8221;. Alfred Thompson does a great job describing this project on his blog (&lt;A href="http://blogs.msdn.com/alfredth/archive/2006/04/10/Hunt_the_Wombat.aspx"&gt;&lt;FONT color=#800080&gt;link&lt;/FONT&gt;&lt;/A&gt;). Thank you for that Alfred.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P&gt;I thought that to promote this I would do a little covert advertising around the school and in my classroom.&amp;nbsp;What I did was printed out some color copies of the Wombat and put them up in my classroom without telling my students what they are. All I am telling them is &amp;#8220;you will see what this is all about after the exam&amp;#8221;. I am hoping to build their interest a little by creating some anticipation. I have to be honest, I am getting pretty excited about this project myself and&amp;nbsp; can't wait to introduce this to my students.&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/76460.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/04/26/76460.aspx</guid>
            <pubDate>Wed, 26 Apr 2006 14:08:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/04/26/76460.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/76460.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/76460.aspx</trackback:ping>
        </item>
        <item>
            <title>Great Idea For a Computer Science Education Day</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/04/26/76448.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/04/26/76448.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/04/26/76448.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Brian Scarbeau&amp;nbsp;has a great idea posted&amp;nbsp;on his blog&amp;nbsp;to promote Computer Science Education.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://geekswithblogs.net/bscarbeau/archive/2006/04/18/75478.aspx"&gt;Check it out&lt;/A&gt;. I'm&amp;nbsp;in!!!&amp;nbsp; &lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/76448.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/04/26/76448.aspx</guid>
            <pubDate>Wed, 26 Apr 2006 12:52:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/04/26/76448.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/76448.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/76448.aspx</trackback:ping>
        </item>
        <item>
            <title>Professional Development in Phoenix, Arizona</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/03/09/71809.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/03/09/71809.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/03/09/71809.aspx&lt;/a&gt;&lt;/p&gt;&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;A couple a of days ago I attended a conference in &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:State&gt;&lt;st1:place&gt;Arizona&lt;/st1:place&gt;&lt;/st1:State&gt; that was hosted by a new (to me anyway) and exciting company called &lt;A href="http://www.21-learn.com/"&gt;21st-Century Learning&lt;/A&gt;. This was a very exciting trip for me as I had a chance to see demonstrations of some very interesting ways to introduce lessons into to the classroom. The main focus of what this company does is deliver live web presentations to schools using a software program called &amp;#8220;&lt;A href="http://www.macromedia.com/software/breeze/"&gt;breeze&lt;/A&gt;&amp;#8221;. The presentation might be a professional development session for teachers, or a special speaker that&amp;nbsp;talks to students. They have what is called &amp;#8220;&lt;A href="http://www.21-learn.com/teamtarget/passports.php"&gt;passports&lt;/A&gt;&amp;#8221;. These passports are very cool. The nice thing about them is that it is kind of like a field trip, only students don&amp;#8217;t have to leave the building. They usually have&amp;nbsp;speakers that are experts in their field (i.e. Astronomy, Medicine, Geology), and the person speaking is visible via live streaming video.&amp;nbsp;Theer are also supplemental resources that are&amp;nbsp;presented by&amp;nbsp;the speaker (such as&amp;nbsp;&lt;A href="http://lp.21-learn.com/files.php?fid=1864"&gt;streaming video/audio&lt;/A&gt;). I was very impressed with the demonstrations. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;This company also provides professional development for teachers. Our school has been using this service for a few months now. Our teachers are involved with a series called &lt;A href="http://www.21-learn.com/teamtarget/strands.php"&gt;differentiated learning&lt;/A&gt;. Just like the passport series, the presentations are live, and involve multiple schools. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;What really topped it all off was the wonderful weather. I also had a chance to see a lot of professional athletes that were part of the World Baseball Classic (&lt;A href="http://www.worldbaseballclassic.com/2006/rosters/index.jsp?sid=t940"&gt;roster&lt;/A&gt;). Many of them were staying in the &lt;A href="http://www.ritzcarlton.com/hotels/phoenix/default.html"&gt;same hotel &lt;/A&gt;as me. Very exciting! As luck would have it the American team was eating dinner right across the hall from our group so we had a chance to see most of the players. The next morning I nearly dropped my coffee as I was walking through the hotel lobby when Roger Clemens walked past me. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The people from 21st-Century Learning gave us a chance to do a little sports as well in between the the wonderful presentations. Another highlight of my trip was that I was selected&amp;nbsp;from one of there drawings to&amp;nbsp;take a chance to win money&amp;nbsp;in on &amp;#8220;the putting green&amp;#8221;&amp;nbsp;. Well, I have to tell you it has been a while since I played golf last, but I&amp;nbsp;managed to sink the put for $50!&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;DIV style="align: center"&gt;&lt;IMG style="WIDTH: 244px; HEIGHT: 153px" height=100 src="http://www.townisp.com/~dforhan/golfAz1.JPG" width=271&gt; &lt;IMG height=155 src="http://www.townisp.com/~dforhan/golfAz2.JPG" width=213&gt; &lt;/DIV&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;All-in-all the trip was great! &lt;/P&gt;
&lt;DIV&gt;&lt;/DIV&gt;&lt;FONT face="Courier New" size=2&gt;&lt;/FONT&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/71809.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/03/09/71809.aspx</guid>
            <pubDate>Thu, 09 Mar 2006 10:37:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/03/09/71809.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/71809.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/71809.aspx</trackback:ping>
        </item>
        <item>
            <title>Programming Contest at Providence College</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/03/10/71927.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/03/10/71927.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/03/10/71927.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;On Monday some of my AP Computer Science students had a chance to participate in the annual programming contest at Providence College. This the 21&lt;SUP&gt;st &lt;/SUP&gt;year that PC has hosted this event. The contest&amp;nbsp;was a fantastic&amp;nbsp;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG style="WIDTH: 195px; HEIGHT: 155px" height=174 src="http://www.townisp.com/~dforhan/pcCont2s.JPG" width=223&gt;&lt;IMG style="WIDTH: 202px; HEIGHT: 156px" height=182 src="http://www.townisp.com/~dforhan/pcCont1s.JPG" width=168&gt;&lt;IMG style="WIDTH: 203px; HEIGHT: 154px" height=128 src="http://www.townisp.com/~dforhan/pcCon3s.JPG" width=258&gt;&lt;/P&gt;
&lt;P&gt;experience for my students.&amp;nbsp;They had a chance to compete against students from all over New England. It was very challenging. Most of the problems were fairly tough, but fair. I don't know how they come with so many cleaver new problems each year. &amp;nbsp;Anyway, we didn't win this year, however our team placed in the top ten out of a field of 23 schools. Nice effort guys!!!&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/71927.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/03/10/71927.aspx</guid>
            <pubDate>Fri, 10 Mar 2006 10:01:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/03/10/71927.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/71927.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/71927.aspx</trackback:ping>
        </item>
        <item>
            <title>What is a "brrreeeport" ?</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/02/14/69453.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/02/14/69453.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/02/14/69453.aspx&lt;/a&gt;&lt;/p&gt;&lt;P id=brrreeeport&gt;Here is something kind of cool I came across on Brian Scarbeau's blog today. Looks like fun. To find out what this is all about go&amp;nbsp;&lt;A href="http://scobleizer.wordpress.com/2006/02/13/the-brrreeeport-report/"&gt;here&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/69453.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/02/14/69453.aspx</guid>
            <pubDate>Tue, 14 Feb 2006 15:02:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/02/14/69453.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/69453.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/69453.aspx</trackback:ping>
        </item>
        <item>
            <title>Exception handling</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/02/08/68769.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/02/08/68769.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/02/08/68769.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;This week, in addition to re-visiting the&amp;nbsp;Marine Biology Case Study, &amp;nbsp;our class wrapped up the unit on exception handling. My students seemed to get a good handle on this topic and it went much smoother than other units we have covered. We did also get into the idea of writing our own exception classes (that extend the Java Exception class) and how we might design them. Then we discussed the benefits of exception handling, and various approaches to handling &amp;#8220;tricky code&amp;#8221;. &lt;/P&gt;
&lt;P&gt;As a side note,&amp;nbsp;I came across a nice &lt;A href="http://www.javaspecialists.co.za/archive/newsletter.do?issue=120"&gt;article&lt;/A&gt; by Heinz Kabutz that couldn't have been timed better. It has an interesting take on exception handling.&amp;nbsp; He talks about managing exceptions from constructors. Normally I don't&amp;nbsp; refer my students to his articles as they are usually considered expert-level discussion, but I think this one they handled fine (without exception).&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/68769.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/02/08/68769.aspx</guid>
            <pubDate>Thu, 09 Feb 2006 00:12:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/02/08/68769.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/68769.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/68769.aspx</trackback:ping>
        </item>
        <item>
            <title>MBS Simulation-Inheritance</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/02/08/68665.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/02/08/68665.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/02/08/68665.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Today our AP Computer Science class will be doing the Marine Biology role play exercise.&amp;nbsp;Many AP teachers, like &lt;A href="http://geekswithblogs.net/bscarbeau/archive/2006/01/27/67282.aspx"&gt;Brian Scarbeau&lt;/A&gt;&amp;nbsp; use this&amp;nbsp;to help students visualize the&amp;nbsp;role of objects&amp;nbsp;in the MBS classes, and how they relate to one another. Earlier this school year we did a version of the role play that simulated fish in an environment. This week will are doing the version that uses specialized fish (i.e. Darter, and Slow fish) which helps to reinforce the OOP concept of inheritance. &amp;nbsp;The Marine Biology case study can be overwhelming for students because of its complexity, so these role plays really help them (particularly the visual learners), get a handle on the basic mechanics of the case study. I have also used this exercise as an opportunity to discuss design issues. I will have student discuss what think about the class structure of the MBS and decide if perhaps there are other ways one could engineer this project. This makes for good dialog with the class and really invokes critical thinking. Give it a try if you have an opportunity to incorporate the role play into your curriculum.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P align=center&gt;&lt;IMG class=mbsdriver height=400 alt=MBS src="http://www.townisp.com/~dforhan/Driver.jpg" width=400&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/68665.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/02/08/68665.aspx</guid>
            <pubDate>Wed, 08 Feb 2006 11:38:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/02/08/68665.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/68665.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/68665.aspx</trackback:ping>
        </item>
        <item>
            <title>Linux Lab fun</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/02/07/68502.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/02/07/68502.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/02/07/68502.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;The most recent adventure my computer club has embarked on is the development of a new Linux lab. So far they have installed about five different Linux distributions on various computers on the computer club lab. Their goal was to further developer their networking/TCP/IP skills and at the same time see how different versions of  Linux perform in parallel in a network. Really they are trying to see what version can perform the best on a computer system with limited resources (i.e. cpu speed, memory).  The server computer is a AMD Athlon 64 box that they built themselves from spare parts. The server software they are &lt;FONT face=Tahoma&gt;using&lt;/FONT&gt; is Windows Server 2003, Enterprise version.&lt;/P&gt;
&lt;P&gt; It has been real exciting to watch them set it all up. They all came in on a Saturday morning (how's that for dedication) to accomplish that. I must confess they have taught me a few things. &lt;/P&gt;
&lt;P&gt;Now that everything is set up our goal is to use that lab for various networking experiments. They students are also considering using the lab to set up a programming competition simulations to help prepare for future competitions. By the way our next programming competition will be be at &lt;A href="http://www.providence.edu/mcs/rhc/"&gt;Providence College&lt;/A&gt; on March 6th. That event is always an exciting one. I have a real talented group of students this year, I think we will do well.&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/68502.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/02/07/68502.aspx</guid>
            <pubDate>Tue, 07 Feb 2006 10:10:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/02/07/68502.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/68502.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/68502.aspx</trackback:ping>
        </item>
        <item>
            <title>Be careful what examples you give your students</title>
            <link>http://geekswithblogs.net/dforhan/archive/2006/01/30/67599.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2006/01/30/67599.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2006/01/30/67599.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Yesterday I sent my students an e-mail link that I came across, of what I thought was an interesting little program that might make for a good project once the AP students took the exam. Well let me say that I wish that I had waited, because many of the students got hooked on the example program. &lt;A href="http://tinyurl.com/56t9u"&gt;Take a look&lt;/A&gt;. See if you can last for 2 minutes in the game. (btw-there is a claim that comes with the game that fighter pilots must last two minutes with this game -I can't verify that though).&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;If you have time try to code it in Java.&amp;nbsp; I think it would be much easier to write the game than to play for 2 minutes.&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/67599.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2006/01/30/67599.aspx</guid>
            <pubDate>Mon, 30 Jan 2006 15:18:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2006/01/30/67599.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/67599.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/67599.aspx</trackback:ping>
        </item>
        <item>
            <title>Arrays: Copy vs. Clone</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/12/01/61852.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/12/01/61852.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/12/01/61852.aspx&lt;/a&gt;&lt;/p&gt;&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Occasionally when working with an array is may be useful to make a copy of that array. What might not be apparent is that by making a copy of an an array&amp;nbsp;there are&amp;nbsp;implications that can cause unintended side-effects if one isn&amp;#8217;t aware of what actually happens when a simple copy the array is made. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;For instance let&amp;#8217;s consider:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;int [] numbers = { 2, 3, 4, 5};&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;int [] numbersCopy = numbers;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The &amp;#8220;numbersCopy&amp;#8221; array now contains the same values, but more importantly the array object itself points to the same object reference as the &amp;#8220;numbers&amp;#8221; array.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So if I were to do something like:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;numbersCopy[2] = 0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;What would be the output for the following statements?&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;System.out.println(numbers[2]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;System.out.println(numbersCopy[2]);&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Considering both arrays point to the same reference we would get:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;0&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;0&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;for an output.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;But what if we want to make a distinct copy of the first array with its own reference? Well in that case we would want to &lt;I style="mso-bidi-font-style: normal"&gt;clone&lt;/I&gt; the array. In doing so each array will now have its own object reference. Let&amp;#8217;s see how that will work.&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;int [] numbers = { 2, 3, 4, 5};&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;int [] numbersClone = (int[])numbers.clone();&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The &amp;#8220;numbersClone&amp;#8221; array now contains the same values, but in this case the array object itself points a different reference than the &amp;#8220;numbers&amp;#8221; array.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So if I were to do something like:&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;numbersClone[2] = 0;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;What would be the output now for the following statements?&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;System.out.println(numbers[2]);&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;System.out.println(numbersClone[2]);&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;You guessed it:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;4&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;0&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;I spent some time going over this with my class but was not satisfied that we nailed this concept down very well, so I created a simple application using J# (that my student can eventually build) that I think may&amp;nbsp;help illustrate this point further. It dives a little deeper into the basic mechanics of the Java Code with respect to copying or cloning arrays. So here it is. Give a try and see if it helps you draw conclusions about this topic.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;I started with a simple &lt;A href="http://www.townisp.com/~danielf/CloneVSCopy.exe"&gt;Windows application &lt;/A&gt;as I did in my &lt;A href="http://www.geekswithblogs.com/dforhan/archive/2005/11/20/60660.aspx"&gt;previous post&lt;/A&gt;. This example uses Strings but you could have also coded it for other types.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;&lt;IMG src="http://www.townisp.com/~danielf/jsharpf3.JPG"&gt; 
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;The idea is to compare the hash code that is generated for each array object, and compare those values. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;If the hash code values are the same then we can say that the two arrays point to the same object reference. &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;What is interesting about this program is what it illustrates when you continue to click the &amp;#8220;Clone Array&amp;#8221; button and then the &amp;#8220;Hash Code&amp;#8221; button that corresponds to it. Compare that with what happens when you make copies of the array, and check the hash code. You can download the whole program &lt;A href="http://www.townisp.com/~danielf/CloneVSCopy.zip"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/61852.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/12/01/61852.aspx</guid>
            <pubDate>Thu, 01 Dec 2005 21:57:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/12/01/61852.aspx#feedback</comments>
            <slash:comments>24</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/61852.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/61852.aspx</trackback:ping>
        </item>
        <item>
            <title>Java Puzzle</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/12/02/61907.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/12/02/61907.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/12/02/61907.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;Today&amp;nbsp;four of my students are competing in a programming &lt;A href="http://www.fsc.edu/publicrelations/news/051805ProgrammingContest.html"&gt;contest&lt;/A&gt; at Fitchburg State College (MA).&amp;nbsp;Since I cannot interact with them during the competition I have had a little time to catch up on some of the blogs/newsletters that I enjoy reading (and update my blog). One thing I came across this morning was a neat Java puzzle from one of my favorite&amp;nbsp;Java sources, the &lt;A href="http://cretesoft.com/archive/archive.jsp"&gt;The Java Specialists' Newsletter &lt;/A&gt;. This&amp;nbsp;probably&amp;nbsp;falls under the expert category. The result is a little surpising, and interesting to say the least. Here it is. See if you can predict the output. (assume each class is in a separate file). Have fun.&lt;/P&gt;&lt;PRE&gt;&lt;B&gt;&lt;FONT color=#000080&gt;package&lt;/FONT&gt;&lt;/B&gt; com.cretesoft.tjsn.issue117;


&lt;B&gt;&lt;FONT color=#000080&gt;public class&lt;/FONT&gt;&lt;/B&gt; Greeter {
  &lt;B&gt;&lt;FONT color=#000080&gt;public void&lt;/FONT&gt;&lt;/B&gt; hello() {
    System.out.println(&lt;B&gt;&lt;FONT color=#008000&gt;"Hello from Greeter&lt;/FONT&gt;&lt;/B&gt;");
  }
}
  &lt;/PRE&gt;&lt;PRE&gt;&lt;B&gt;&lt;FONT color=#000080&gt;package&lt;/FONT&gt;&lt;/B&gt; com.cretesoft.tjsn.issue117;

&lt;B&gt;&lt;FONT color=#000080&gt;public class&lt;/FONT&gt;&lt;/B&gt; Exec {
  &lt;B&gt;&lt;FONT color=#000080&gt;public static void&lt;/FONT&gt;&lt;/B&gt; run(Greeter target) {
    System.out.println();

    System.out.print(&lt;B&gt;&lt;FONT color=#008000&gt;"method call&amp;gt; "&lt;/FONT&gt;&lt;/B&gt;);
    target.hello();

    System.out.print(&lt;B&gt;&lt;FONT color=#008000&gt;"base class &amp;gt; "&lt;/FONT&gt;&lt;/B&gt;);
    run(target, Greeter.&lt;B&gt;&lt;FONT color=#000080&gt;class&lt;/FONT&gt;&lt;/B&gt;, &lt;B&gt;&lt;FONT color=#008000&gt;"hello"&lt;/FONT&gt;&lt;/B&gt;);

    System.out.print(&lt;B&gt;&lt;FONT color=#008000&gt;"obj class  &amp;gt; "&lt;/FONT&gt;&lt;/B&gt;);
    run(target, target.getClass(), &lt;B&gt;&lt;FONT color=#008000&gt;"hello"&lt;/FONT&gt;&lt;/B&gt;);
  }

  &lt;I&gt;&lt;FONT color=#808080&gt;// this calls the method using reflection&lt;/FONT&gt;&lt;/I&gt;

  &lt;B&gt;&lt;FONT color=#000080&gt;static void&lt;/FONT&gt;&lt;/B&gt; run(Greeter target, Class cls, String method) {
    &lt;B&gt;&lt;FONT color=#000080&gt;try&lt;/FONT&gt;&lt;/B&gt; {
      cls.getMethod(method, null).invoke(target, &lt;B&gt;&lt;FONT color=#000080&gt;null&lt;/FONT&gt;&lt;/B&gt;);
    } &lt;B&gt;&lt;FONT color=#000080&gt;catch&lt;/FONT&gt;&lt;/B&gt; (Exception x) {
      System.out.println(x);
    }
  }
}
  &lt;/PRE&gt;&lt;PRE&gt;&lt;B&gt;&lt;FONT color=#000080&gt;package&lt;/FONT&gt;&lt;/B&gt; com.cretesoft.tjsn.issue117;


&lt;B&gt;&lt;FONT color=#000080&gt;public class &lt;/FONT&gt;&lt;/B&gt;InsideJob {
  &lt;B&gt;&lt;FONT color=#000080&gt;public static void &lt;/FONT&gt;&lt;/B&gt;run() {
    Exec.run(&lt;B&gt;&lt;FONT color=#000080&gt;new &lt;/FONT&gt;&lt;/B&gt;Greeter() {
      &lt;B&gt;&lt;FONT color=#000080&gt;public void &lt;/FONT&gt;&lt;/B&gt;hello() {
        System.out.println(&lt;B&gt;&lt;FONT color=#008000&gt;"Hello from InsideJob"&lt;/FONT&gt;&lt;/B&gt;);
      }
    });
  }
}
  &lt;/PRE&gt;&lt;PRE&gt;&lt;B&gt;&lt;FONT color=#000080&gt;import &lt;/FONT&gt;&lt;/B&gt;com.cretesoft.tjsn.issue117.*;

&lt;B&gt;&lt;FONT color=#000080&gt;public class &lt;/FONT&gt;&lt;/B&gt;Main {
  &lt;B&gt;&lt;FONT color=#000080&gt;public static void &lt;/FONT&gt;&lt;/B&gt;main(String[] args) {
    InsideJob.run();
    Exec.run(&lt;B&gt;&lt;FONT color=#000080&gt;new &lt;/FONT&gt;&lt;/B&gt;Greeter() {
      &lt;B&gt;&lt;FONT color=#000080&gt;public void &lt;/FONT&gt;&lt;/B&gt;hello() {
        System.out.println(&lt;B&gt;&lt;FONT color=#008000&gt;"Hello from Main"&lt;/FONT&gt;&lt;/B&gt;);
      }
    });
  }
}
  &lt;/PRE&gt;
&lt;P&gt;&lt;EM&gt;This material from The Java(tm) Specialists' Newsletter by Maximum Solutions (South Africa). Please contact &lt;/EM&gt;&lt;A title="This external link will open in a new window" href="http://www.cretesoft.com/" target=_new&gt;&lt;EM&gt;Maximum Solutions&lt;/EM&gt;&lt;/A&gt;&lt;EM&gt; for more information.&lt;/EM&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Try on paper before you compile. Did you get it? &lt;/P&gt;
&lt;P&gt;More detailed discussion can be found &lt;A href="http://www.cretesoft.com/archive/newsletter.do?issue=117&amp;amp;locale=en_US"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/61907.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/12/02/61907.aspx</guid>
            <pubDate>Fri, 02 Dec 2005 12:42:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/12/02/61907.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/61907.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/61907.aspx</trackback:ping>
        </item>
        <item>
            <title>Working with Arrays</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/20/60660.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/20/60660.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/20/60660.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&amp;nbsp;This past week we&amp;nbsp;have been studying arrays and ArrayLists in my AP class. It didn&amp;#8217;t take long for students to become excited about using them once they saw how valuable of a tool they are. One of the issues I try get across with them is how arrays/ArrayLists are a key part to use of sorting/searching algorithms. Since sorting and searching doesn&amp;#8217;t come up officially until later in the course I take this opportunity to discuss it a little with them now saving the in-depth discussion on various sorting algorithms for later. &lt;/P&gt;
&lt;P&gt;Although I don&amp;#8217;t get into the actual algorithms right now, I do show them how they can use existing methods to do a sort using arrays. It also seemed like a good opportunity to show how easy it is to build an application using J#. So this lesson accomplished two major things; It familiarized them with the benefit of using arrays, and gave them some exposure to a nice programming tool (J#). So here is the example. &lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;Let's start with the set up of J#. We used the &lt;A href="http://msdn.microsoft.com/vstudio/express/visualJ/default.aspx"&gt;express version&lt;/A&gt;. &lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;Go to file-&amp;gt; new Project-&amp;gt; windows Application. &lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;IMG src="http://www.townisp.com/~danielf/jsharpf1.JPG"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;Once the application files are created we can now build a simple application that will sort the values that are entered to it. &lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;IMG src="http://www.townisp.com/~danielf/jsharpf2.JPG"&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;In my example we added a text-box for entering the values, a text-box for displaying the sorted values and button to trigger the sort. Most of the action occurs in the SortButton_Click method of our Form class (Form1). The easiest way to get to that method is to double click on the button in the &amp;#8220;design mode&amp;#8221; and that will take you to the method automatically (see code example below).&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;The code example below illustrates how the sorting was done. Keeping in mind that we are just using the sort method to illustrate the benefit of arrays, not to learn how sorting algorithms work (at least not yet). This example also illustrates how one can use the StringTokenizer class to break down a string. Note: This method requires as few extra imports (&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT color=#000000&gt;java.util.&lt;/FONT&gt;&lt;FONT color=#008080&gt;Arrays&lt;/FONT&gt;&lt;FONT color=#000000&gt;, and java.util.&lt;/FONT&gt;&lt;FONT color=#008080&gt;StringTokenizer&lt;/FONT&gt;&lt;FONT color=#000000&gt;). &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;private&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;void&lt;/FONT&gt; SortButton_Click(&lt;FONT color=#008080&gt;Object&lt;/FONT&gt; sender, &lt;FONT color=#008080&gt;System&lt;/FONT&gt;.&lt;FONT color=#008080&gt;EventArgs&lt;/FONT&gt; e)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;{&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; answerBox.Clear(); &lt;FONT color=#008000&gt;//reset in case text already there&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; String&lt;/FONT&gt; values = numberTextBox.get_Text(); &lt;FONT color=#00ae00&gt;//get string &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //class that allows one to break down a string. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT size=2&gt;&lt;SPAN lang=""&gt;&lt;FONT face="Courier New" color=#008000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN lang=""&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008080&gt;StringTokenizer&lt;/FONT&gt; tokens = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#008080&gt;StringTokenizer&lt;/FONT&gt;(values);&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int&lt;/FONT&gt; size = tokens.countTokens(); &lt;FONT color=#008000&gt;//to get token count&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; double&lt;/FONT&gt;[] doubleNums = &lt;FONT color=#0000ff&gt;new&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;double&lt;/FONT&gt;[size]; &lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int&lt;/FONT&gt; tokenCount = 0;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;FONT color=#008000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //grabs each token, parses to double and stores in array.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while&lt;/FONT&gt; (tokens.hasMoreTokens())&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;SPAN lang=""&gt;&lt;FONT face="Courier New, monospace"&gt;doubleNums[tokenCount] = &lt;FONT color=#008080&gt;Double&lt;/FONT&gt;.parseDouble(tokens.nextToken()); &lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; tokenCount++;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Arrays&lt;/FONT&gt;.sort(doubleNums); &lt;FONT color=#008000&gt;//sort array&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //Display array elements in text box&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for&lt;/FONT&gt; (&lt;FONT color=#0000ff&gt;int&lt;/FONT&gt; x = 0; x &amp;lt; doubleNums.length; x++)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&lt;/FONT&gt; (x &amp;lt; doubleNums.length-1)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; answerBox.AppendText(doubleNums[x]+ &lt;FONT color=#800000&gt;", "&lt;/FONT&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; answerBox.AppendText(doubleNums[x]+ &lt;FONT color=#800000&gt;""&lt;/FONT&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;}&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#0000ff&gt;private&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;void&lt;/FONT&gt; button1_Click(&lt;FONT color=#008080&gt;Object&lt;/FONT&gt; sender, &lt;FONT color=#008080&gt;System&lt;/FONT&gt;.&lt;FONT color=#008080&gt;EventArgs&lt;/FONT&gt; e)&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN-BOTTOM: 0in"&gt;&lt;SPAN lang=""&gt;&lt;FONT size=2&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT color=#008080&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; System&lt;/FONT&gt;.exit(0); &lt;FONT color=#008000&gt;//Exits application&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;BR&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;&lt;FONT face="Courier New, monospace"&gt;&lt;FONT size=2&gt;}//end of class &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;The students in my class seemed to really like the simplicity of using J# and were anxious to try it out. I gave them a few simple programs to practice using J# for their weekend homework. Who says homework has to be boring.&lt;BR&gt;&lt;/P&gt;
&lt;P lang="" style="MARGIN-BOTTOM: 0in"&gt;You can download the whole program &lt;A href="http://www.townisp.com/~danielf/ArrayEx.zip"&gt;here&lt;/A&gt; if you wish&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/60660.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/20/60660.aspx</guid>
            <pubDate>Sun, 20 Nov 2005 17:37:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/20/60660.aspx#feedback</comments>
            <slash:comments>8</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/60660.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/60660.aspx</trackback:ping>
        </item>
        <item>
            <title>LINQ</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/05/59209.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/05/59209.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/05/59209.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;There is an awesome article about LINQ on Azam Sharp's blog today, &lt;A href="http://geekswithblogs.net/AzamSharp/archive/2005/11/05/59201.aspx"&gt;http://geekswithblogs.net/AzamSharp/archive/2005/11/05/59201.aspx&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The&amp;nbsp;Microsoft Faculty Advisory&amp;nbsp;team had a nice opportunity to hear&amp;nbsp;about this from Anders Hejlsberg at our meeting in Redmond. Chanel&amp;nbsp;9 also has a nice&lt;A href="http://channel9.msdn.com/showpost.aspx?postid=114680"&gt;&amp;nbsp;interview &lt;/A&gt;with him as well where he talks about&amp;nbsp;some of the exciting features of&amp;nbsp;LINQ.&amp;nbsp; I am really excited about this new programming tool. I hope to now &lt;A href="http://download.microsoft.com/download/4/7/0/4703eba2-78c4-4b09-8912-69f6c38d3a56/LINQ%20Preview.msi"&gt;download&lt;/A&gt; it&amp;nbsp;an see what I&amp;nbsp;can do with it.&amp;nbsp;&amp;nbsp;Once I get it running on my system perhaps I can&amp;nbsp;introduce it to my students.&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/59209.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/05/59209.aspx</guid>
            <pubDate>Sat, 05 Nov 2005 19:40:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/05/59209.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/59209.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/59209.aspx</trackback:ping>
        </item>
        <item>
            <title>Apple's and Banana's</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/05/59165.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/05/59165.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/05/59165.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;By now you are thinking, what the heck is a title like this doing on a computer science teachers blog?&amp;nbsp;&amp;nbsp;Now that I have official entered the blog world and started dumping my thoughts/opinions into cyberspace I have also&amp;nbsp;started reading&amp;nbsp;many blogs that other people are writing as well. One thing I have noticed is that in many respects blogs have become an extension of the office &amp;#8220;water cooler&amp;#8220;, and other respects they are more like a intellectual symposium .&amp;nbsp;Either case may very well have some value. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;The thing about blogs is you can encounter discussion about anything imaginable. The possibilities for blog topics/formats are practically without bounds. So what's with&amp;nbsp;today's&amp;nbsp;title?&amp;nbsp;This past week in the course of reading one of the many blogs I now subscribe to&amp;nbsp;I would occasionally encounter comments that&amp;nbsp;were so bizarre that&amp;nbsp;even your best guest&amp;nbsp;would probably&amp;nbsp;not be what the person may have been thinking when she or he posted&amp;nbsp;it. So I&amp;nbsp;thought to myself,&amp;nbsp;&amp;nbsp;I could have posted back &amp;#8220;apples and banana's&amp;#8221; and it would have been equally coherent.&amp;nbsp;Fortunately&amp;nbsp;most of&amp;nbsp;the articles I have encountered this past week were enriching and worth my time.&amp;nbsp; Just the same, this whole idea got me thinking about the value of blogging in general and forced the question- &lt;EM&gt;is&amp;nbsp;blogging&amp;nbsp;a worthwhile endeavor&lt;/EM&gt;?&lt;/P&gt;
&lt;P&gt;Many of you will right away react to this by saying to yourself, of course it is. Others may feel that blogging is a waste of time.&amp;nbsp;My personal opinion is that blogging, when done well can be a very positive thing, and that overall bogging&amp;nbsp;&amp;nbsp;is a positive phenomena. The down side of it is, how do we filter out the garbage and focus on reading blogs that offer something that is worth the time we spend reading it? And I am not sure&amp;nbsp;I have a solid answer for this. It seems to me that blogs sites like &lt;A href="http://geekswithblogs.com"&gt;geekswithblogs&lt;/A&gt; can help remedy that by giving the blog surfer a filter to guide them to the general type of content they are looking to read.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The net effect of blogging for me has been a very positive one&amp;nbsp;so far. Not only have I enjoyed articulating ideas, but have expanded my horizons by reading ideas posted by other computer science teachers, and professionals. As a new member of the Technology Committee for my school district I am going to recommend that we start encouraging teachers to start blogs for their classes as a means of communicating ideas to students and parents. It could be as simple as posting homework assignments,&amp;nbsp;or be a little more involved. The wonderful thing about it is that&amp;nbsp;blogging is so easy to do. Teacher may find it overwhelming if asked to build a Website, but if asked to build&amp;nbsp;a blog, they can&amp;nbsp;accomplished that&amp;nbsp;in a matter of minutes. &lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/59165.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/05/59165.aspx</guid>
            <pubDate>Sat, 05 Nov 2005 10:30:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/05/59165.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/59165.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/59165.aspx</trackback:ping>
        </item>
        <item>
            <title>Microsoft In the news</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/05/59169.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/05/59169.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/05/59169.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;I came across an interesting article today about Microsoft. I&amp;nbsp;would be curious to hear peoples opinions on it. Looks like this could be an exciting opportunity for Microsoft's customers.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;A href="http://www.microsoft.com/presspass/press/2005/nov05/11-03FolderSharePR.mspx"&gt;Microsoft Acquires FolderShare&lt;/A&gt;, a File-Synchronization Technology Provider.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/59169.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/05/59169.aspx</guid>
            <pubDate>Sat, 05 Nov 2005 11:25:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/05/59169.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/59169.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/59169.aspx</trackback:ping>
        </item>
        <item>
            <title>Method overloading, is &lt;font style="text-transform:lowercase"&gt;this.good(idea) ?&lt;/font&gt;</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/03/59009.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/03/59009.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/03/59009.aspx&lt;/a&gt;&lt;/p&gt;&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The short answer is yes, but&amp;#8230;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The ability to overload is one the many powerful tools built in to the Java Language (as well as many other programming languages). Like many of the powerful tools in the Java language that we use to program there are often complexities that get in the way of proper use. I hope to describe some of them here. &lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;There can be certain stumbling blocks/pitfalls that my students will encounter when using this technique. I hope to clarify some confusion with this matter with my example today. First let&amp;#8217;s see if we start by understanding what overloading is, and then look at some code examples:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;So what is method overloading? It is really just a fancy way of saying that you can define two or more different methods with the same name. What differs with each respective implementation is what we call the &lt;I style="mso-bidi-font-style: normal"&gt;method signature&lt;/I&gt;. The method signature is the type, order, or number of parameters. &lt;U&gt;&lt;EM&gt;Changing the return type alone does not constitute overloading&lt;/EM&gt;&lt;/U&gt;. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;A classic example of method overloading is the &amp;#8220;println&amp;#8221; method of the System class. There are actually 10 different versions of that method defined in the Java language. When you think about how one might call println you start to realize that we often provide different parameters to that method. Sometimes a number such as an int, double, or float, and sometimes a string, or a character or even character array. That method doesn&amp;#8217;t just work magically for all those cases. There has to be an implementation for each case, or &lt;I style="mso-bidi-font-style: normal"&gt;overloaded&lt;/I&gt; version. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;It starts to become clear why this technique is beneficial when you think about the alternative. Without overloading you would need a different method name for each case of println instead of just remembering one. So from a design point of view it allows us to produce more elegant code.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Now let&amp;#8217;s look at some potential pitfalls. One of the mistakes my students when asked to give examples of method overloading is they simply change the return type. Technically the return type is not part of the method signature. For instance,&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;public int getBalance()&lt;/STRONG&gt; and &lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;STRONG&gt;public double getBalance()&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;In this example both methods have the same number of parameters (none), so the second is not overloaded. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Or..&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;public static void setBalance(int value)&lt;/STRONG&gt; and &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;public int setBalance(int value)&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Same idea here, all that has changed is the return type.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;We can fix the second example to provide an actual example of overloading as follows:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;public void setBalance(int value)&lt;/STRONG&gt; and&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;public void setBalance(double value)&lt;/STRONG&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;STRONG&gt;&lt;/STRONG&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;In the last example the methods have different parameter types, so we can say that they are overloaded.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;Constructors can also be overloaded just like any method. In the example I am using today I will use constructors. We will see that is very easy to create ambiguity in our code when we start overloading methods.&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;We can easily fall into a trap. Consider the following example:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;class OverLoad {&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;   &lt;/SPAN&gt;public OverLoad ( int a, int b) { &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;System.out.println("int, int version");&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;   &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;public OverLoad ( double a, double b) { &lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;    &lt;/SPAN&gt;System.out.println("double, double version");&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;       &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;}//end of OverLoad class&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;public class OverLoadTester {&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;   &lt;/SPAN&gt;public static void main (String [] ol) {&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;int intNum1= 5, intNum2 = 10;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-tab-count: 1"&gt;            &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;double dNum1 = 5.0, dNum2 = 10.0;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;OverLoad one = new OverLoad(intNum1, intNum2); &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;                                                       //(int,int) Constructor&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;OverLoad two = new OverLoad(dNum1, dNum2); &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;                                                  //(double, double) Constructor&lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;OverLoad three = new OverLoad(intNum1, dNum1);&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;                                                    // What about here?&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;      &lt;/SPAN&gt;OverLoad four = new OverLoad(dNum1, intNum1);&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;                                                     //or here?&lt;SPAN style="mso-spacerun: yes"&gt;  &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;   &lt;/SPAN&gt;}&lt;o:p&gt; &lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;}//end of class&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;output:&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;int, int version&lt;BR&gt;double, double version&lt;BR&gt;double, double version&lt;BR&gt;double, double version&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;The compiler knows which constructor to call by matching up the parameters with the correct method. However in certain cases the compiler will need to assume your intention and that might not be correct. &lt;SPAN style="mso-spacerun: yes"&gt; &lt;/SPAN&gt;These last two examples illustrate that point. What if the user of the class accidentally entered a double when an int was indented (or visa versa)? The program will still execute but the wrong constructor may get called. This class is designed poorly for that reason. It presents itself with the potential for ambiguity. So the point is to be cautious about creating such scenarios. &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt; &lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;I have found that students often confuse method overriding (which is taking an existing method and providing new implementation) with overloading. Soon I will post some thoughts on that topic and compare the two techniques.&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/59009.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/03/59009.aspx</guid>
            <pubDate>Thu, 03 Nov 2005 14:00:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/03/59009.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/59009.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/59009.aspx</trackback:ping>
        </item>
        <item>
            <title>Networking 101 -the Student way</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/11/03/58991.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/11/03/58991.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/11/03/58991.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;Yesterday after school a few students from my AP class came by for our weekly computer club meeting. At this meeting they took a computer system, which was an amalgam of spare parts, and installed &lt;/FONT&gt;&lt;A href="http://www.ubuntu.com/"&gt;&lt;FONT face=Tahoma size=2&gt;Ubuntu&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma size=2&gt; ( a user-friendly open source&amp;nbsp;Linux shell) with the intent on building a Web server for our school. They then installed Apache, MySQL, and a PHP web interface for remote access to our&amp;nbsp;Web server. The whole experiment went great.&amp;nbsp;We did have to call the cable company to get port 80 forwarded to or domain (from our cablem modem/router), but other than that it went off without a hitch.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;Our headmaster loves the idea of what we are doing,&amp;nbsp;and may let us buy a new server for this now that we have &amp;#8220;proof of product&amp;#8221;.&amp;nbsp;We hope to do the scale up by purchasing a Dell Xeon server. Our ultimate goal is to install Windows server 2003, and set up an exchange server so that our school community can take full advantage of the wonderful resources Microsoft has to offer through our MSDN subscription. We also hope to eventually set up subdomians for teacher's to host their Web sites like many colleges do. Another aside, AP student Brendan (TCP/IP guru) has found a nice blog utility that we will use to set up blogs for every teacher in the school using our Web server. Once everything is online I will post the URL.&lt;/FONT&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/58991.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/11/03/58991.aspx</guid>
            <pubDate>Thu, 03 Nov 2005 09:40:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/11/03/58991.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/58991.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/58991.aspx</trackback:ping>
        </item>
        <item>
            <title>What's with the Modifiers?</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/10/31/58606.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/10/31/58606.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/10/31/58606.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;Each year that I have taught Java or AP Computer Science I have found my that students tend to get confused&amp;nbsp;with the proper use of modifiers when designing classes. Partly from a misunderstanding of what the modifiers mean, and partly because they haven't really developed a strong conception what&amp;nbsp;the whole OOP paradigm is all about. So here is a brief explanation that I give to my students, starting with a few definitions. This usually helps&amp;nbsp;to clear this&amp;nbsp;matter up a&amp;nbsp;bit.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;Modifiers:&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&lt;STRONG&gt;public&lt;/STRONG&gt;- Can be accessed from any class from any location. &lt;BR&gt;&lt;STRONG&gt;default&lt;/STRONG&gt; -Available to classes in the same folder/package (&lt;EM&gt;no&lt;/EM&gt; &lt;EM&gt;modifier&lt;/EM&gt;)&lt;/EM&lt; FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face=Tahoma&gt;&lt;BR&gt;&lt;STRONG&gt;protected-&lt;/STRONG&gt; Available to all classes in the same package and its subclasses.&lt;/FONT&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;FONT face=Tahoma&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;private&lt;/STRONG&gt;- Same class access only. Not available outside the class defined in.&lt;BR&gt;&lt;BR&gt;Now when using these modifiers we have to be careful. Some students think that having public methods means that your data is exposed or unprotected. I get questions like, &amp;#8220;shouldn't methods be private just as the instance fields are private?&amp;#8220; Of course I tell them no. To help them understand why I remind them of some of the OOP principles that come into play here and how we model that with the proper use of modifiers. One of the basic principles in object oriented programming is the who idea of "data hiding" or "encapsulation". The way that works is you design your classes so that data can only be changed by the class that it is defined it. That is accomplished by declaring your instance variables (class variables) as "private". If they are private no class can change them other than the class that they are defined in. &lt;BR&gt;&lt;BR&gt;The question remains, how can other classes use that data? Well it is simple, the class has a *public interface*&amp;nbsp;. These are the class methods (ex. getSum() ). So we need to have public methods otherwise no other class could use our data. These methods update (mutator methods), and provide access (accessor methods) to or private data. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;Classes that use our class&amp;nbsp;need an object to access those methods, so it makes no difference if two or more classes have the same method names (although you should avoid this) because you need an object of the class to access them, and the object decides what class methods will be used. [And remember that classes are designed so that other classes can call their methods. If a class method is private then no other class can use it.]&lt;BR&gt;&lt;BR&gt;Now that all said, there are some cases that we might declare a method as private. Occasionally your class might need what is called a helper method, which is a method that supports another method in the class. In other words other classes don't ever need to call it or use it, because it serves the class itself. So the bottom line is to design classes with a constructor that initalizes&amp;nbsp;the private data (instance fields), and a&amp;nbsp;public interface (mutator and accessor methods) that acts on the private data. And remember to make methods private only when their purpose is to serve the class that they are defined in.&lt;/FONT&gt;&lt;FONT face=Tahoma&gt;&lt;FONT size=2&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/58606.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/10/31/58606.aspx</guid>
            <pubDate>Mon, 31 Oct 2005 09:45:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/10/31/58606.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/58606.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/58606.aspx</trackback:ping>
        </item>
        <item>
            <title>SPM LAN Party</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/10/24/57905.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/10/24/57905.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/10/24/57905.aspx&lt;/a&gt;&lt;/p&gt;&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;Students in my AP CS class decided that it would be fun to test out their TCP/IP knowledge by setting up a mini- LAN in one of our old computer rooms. They planned out the whole thing during after school meetings with our Computer Club.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;Yesterday (yes Sunday) each student brought in their own computer systems to school, and they linked them together. They decided that it would be kind of boring to just do simple file sharing to test their LAN so they set up a &amp;#8220;&lt;A href="http://www.counter-strike.net/"&gt;Counter-Strike&lt;/A&gt;&amp;#8221; match. It was very impressive, and I&amp;nbsp;was very proud of them for pulling it off without many glitches. Here are a few screen shots of their set up.&lt;/FONT&gt;&lt;/P&gt;
&lt;CENTER&gt;&lt;IMG style="WIDTH: 133px; HEIGHT: 131px" height=175 src="http://www.townisp.com/~dforhan/lan1.JPG" width=180&gt;&lt;IMG style="WIDTH: 128px; HEIGHT: 132px" height=175 src="http://www.townisp.com/~dforhan/lan3.JPG" width=180&gt;&lt;IMG style="WIDTH: 116px; HEIGHT: 133px" height=175 src="http://www.townisp.com/~dforhan/lan2.JPG" width=180&gt;&lt;/CENTER&gt;
&lt;CENTER&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;Brendan, the network admin for this experiment was using Windows Server 2003. The next phase is they want to start learning how develop their own half-life 2 mod using Visual Studio 2005.&lt;/FONT&gt;&lt;/CENTER&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/57905.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/10/24/57905.aspx</guid>
            <pubDate>Mon, 24 Oct 2005 15:27:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/10/24/57905.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/57905.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/57905.aspx</trackback:ping>
        </item>
        <item>
            <title>Welcome</title>
            <link>http://geekswithblogs.net/dforhan/archive/2005/10/21/57666.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/dforhan/archive/2005/10/21/57666.aspx'&gt;http://geekswithblogs.net/dforhan/archive/2005/10/21/57666.aspx&lt;/a&gt;&lt;/p&gt;&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Tahoma&gt;&lt;FONT size=2&gt;Hello, welcome to my new Blog! - Just dropping in to introduce myself. My name is Daniel Forhan and I am a new member of Microsoft&amp;#8217;s K-12 Faculty Advisory Board.&amp;nbsp;I have been a certified teacher now for over 15 years and in that time I have taught many different computer languages such as Pascal, Basic, C, C++, and now Java. During my teaching career I have also taught many science classes such as chemistry. In the mid 90's I discovered the Java programming language and was immediately drawn to it. That eventually led to me becoming&amp;nbsp;a certified Java programmer (2003).&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Tahoma size=2&gt;Right now I teach programming courses at Saint Peter-Marian Jr./Sr. High School. This is my 9th year at SPM, and I have enjoyed every minute of it. In past years I have taught courses in Web Design and Java at one of our local &lt;/FONT&gt;&lt;A href="http://www.qcc.edu/index.html?"&gt;&lt;FONT face=Tahoma size=2&gt;community colleges&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma&gt;&lt;FONT size=2&gt;. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Tahoma size=2&gt;One of my most recent ventures is my appointment as the &lt;/FONT&gt;&lt;A href="http://www.govhs.org/"&gt;&lt;FONT face=Tahoma size=2&gt;VHS&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma size=2&gt; Site Coordinator at SPM (The &amp;#8216;VHS&amp;#8217; stands for &lt;?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" /&gt;&lt;st1:place&gt;&lt;st1:PlaceName&gt;Virtual&lt;/st1:PlaceName&gt; &lt;st1:PlaceType&gt;High School&lt;/st1:PlaceType&gt;&lt;/st1:place&gt;). I also teach an online course through VHS called &lt;/FONT&gt;&lt;A href="http://www.govhs.org/vhsweb/coursecatalog05.nsf/0/f38275b6a903356a05256ccd00524f08?OpenDocument"&gt;&lt;FONT face=Tahoma size=2&gt;Computational Science &amp;amp; Engineering Using Java&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma&gt;&lt;FONT size=2&gt;. This course uses the Java programming language to teach students how to develop mathematical models.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;FONT face=Tahoma size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;FONT face=Tahoma size=2&gt;Back to programming languages, I have recently been developing curriculum for my students using the .NET technology. Some specific examples of this would be the use of &lt;/FONT&gt;&lt;A href="http://www.asp.net/"&gt;&lt;FONT face=Tahoma size=2&gt;ASP&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Tahoma size=2&gt; in my Web design course, and &lt;A href="http://msdn.microsoft.com/vjsharp/"&gt;J#&lt;/A&gt; with my AP Computer Science class.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The purpose of this blog is to discuss lessons (recent and not so recent) that I have found to be effective, and to share my "best practices" with you.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Stay tuned. &lt;/FONT&gt;&lt;/P&gt; &lt;img src="http://geekswithblogs.net/dforhan/aggbug/57666.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Daniel Forhan</dc:creator>
            <guid>http://geekswithblogs.net/dforhan/archive/2005/10/21/57666.aspx</guid>
            <pubDate>Fri, 21 Oct 2005 20:08:00 GMT</pubDate>
            <comments>http://geekswithblogs.net/dforhan/archive/2005/10/21/57666.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/dforhan/comments/commentRss/57666.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/dforhan/services/trackbacks/57666.aspx</trackback:ping>
        </item>
    </channel>
</rss>