<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Garfield Computer Science</title>
	<atom:link href="http://www.garfieldcs.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.garfieldcs.com</link>
	<description></description>
	<lastBuildDate>Tue, 07 Sep 2010 20:56:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Najee Siu-Chang</title>
		<link>http://www.garfieldcs.com/2010/09/najee-siu-chang/</link>
		<comments>http://www.garfieldcs.com/2010/09/najee-siu-chang/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 20:55:06 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1613</guid>
		<description><![CDATA[Najee designed a new resource guide during his summer at Microsoft.]]></description>
			<content:encoded><![CDATA[<div id="attachment_1614" class="wp-caption alignleft" style="width: 118px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/badgepic.jpg"><img class="size-full wp-image-1614" title="badgepic" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/badgepic.jpg" alt="" width="108" height="144" /></a><p class="wp-caption-text">Najee&#39;s Microsoft badge picture!</p></div>
<p>Najee Siu-Chang (Garfield &#8217;10) was a Microsoft intern the summer after being your Garfield ASB president his senior year!  Najee came in with only some Python experience from Creative Computing and managed to learn several exciting new technologies and produce a great looking online guide.  You don&#8217;t have to have much experience to follow in Najee&#8217;s footsteps, only a desire to work hard and to work in a team!  <a href="https://careers.microsoft.com/careers/en/us/highschoolintern.aspx" onclick="urchinTracker('/outgoing/careers.microsoft.com/careers/en/us/highschoolintern.aspx?referer=');">Apply to be a Microsoft summer intern</a> this summer.</p>
<h2>Life as a HSintern</h2>
<p>As a high school intern, I worked in the “patterns &amp; practices” department. This department is not the glamour of Microsoft, like Office and Zune, but is indeed the support system for developers. With the help of p&amp;p’s source code, step-by-step instruction, and beginning applications, programmers can efficiently save time and reduce risk. My role in this organization was to create a new and improved interface for their online Architecture Guide. The current site is simple, classic, dull, hard to navigate, and difficult to read due to the canvas size. And more importantly the layout doesn’t even follow the color scheme of Microsoft’s products. So, the p&amp;p team wanted a guide that was more appealing, resourceful, and interactive to its customers. That’s where I come in.  <strong>No prior skills or experience with web design, C#, or Xaml</strong>, and my manager expects me to create something cool with animations. So I jumped in the deep end and experimented with Microsoft tools: Expression Blend and Design 4, and Visual Studio.</p>
<p>Over the course of the internship, I focused on learning the cool developer tools and techniques to designing apps not only for the web but for the upcoming Windows 7 phone. As a creative design intern, I had to constantly switch perceptions as a designer to a user so I could analyze my work and find what was best for the user.</p>
<p>The most value experience from this internship is my new understanding of collaboration and team work, the essential to Microsoft’s success. It was helpful working with other teams to brainstorm ideas and market my design. Although I created a solid amateur prototype, the team is considering using my layout in the future!</p>
<div id="attachment_1615" class="wp-caption alignleft" style="width: 310px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/ugly-layout.jpg"><img class="size-medium wp-image-1615" title="orig" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/ugly-layout-300x220.jpg" alt="Original layout" width="300" height="220" /></a><p class="wp-caption-text">The original layout.</p></div>
<div id="attachment_1616" class="wp-caption alignleft" style="width: 310px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/final-retract.jpg"><img class="size-medium wp-image-1616" title="final retract" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/09/final-retract-300x222.jpg" alt="" width="300" height="222" /></a><p class="wp-caption-text">Najee&#39;s final design.</p></div>
<h2>Microsoft’s Notorious Work Environment</h2>
<p>Microsoft is definitely one of the best companies to work for. Free drinks, variety of ethnic foods, Ping-Pong, up-to-date info on the tech world, a community of talented innovators, flexible work time, and your very own office!!</p>
<p><strong>I highly encourage everyone to apply for this internship, regardless of your skill level</strong>. I considered myself as an under qualified candidate, but my project required almost no coding. So do not be discouraged! The best part about the interview process is that the Microsoft teams pick candidates that fit and match their needs. So, if you don’t know something, someone on the campus does.</p>
<p>I guarantee your experience at Microsoft will help you consider what you want to do in the future. I have now developed an interest in Program Management and the User Experience roles within the computer science field.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/09/najee-siu-chang/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stanford Mechatronics</title>
		<link>http://www.garfieldcs.com/2010/09/stanford-mechatronics/</link>
		<comments>http://www.garfieldcs.com/2010/09/stanford-mechatronics/#comments</comments>
		<pubDate>Sun, 05 Sep 2010 18:25:48 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1593</guid>
		<description><![CDATA[Emma Meersman learned to build robots at Stanford University.]]></description>
			<content:encoded><![CDATA[<p>After taking Exploring Computer Science, Emma Meersman (Garfield &#8217;11) spent part of the summer following her sophomore year at Stanford University where she learned how to build robots!  Read more about Stanford&#8217;s <a href="http://epgy.stanford.edu/summer/highschoolprogram.html" onclick="urchinTracker('/outgoing/epgy.stanford.edu/summer/highschoolprogram.html?referer=');">EPGY (Education Program for Gifted Youth) Summer Institutes</a> and apply for this summer.</p>
<h2>Building Robots</h2>
<p>This summer I went to Stanford as a part of their EPGY Summer Institutes Program. I took part in their Engineering program, and I got to take a three week course on <a href="http://en.wikipedia.org/wiki/Mechatronics" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Mechatronics?referer=');">Mechatronics</a>. The course covered electrical engineering and complex circuit constructing, an introduction to <a href="http://en.wikipedia.org/wiki/C_Stamp" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/C_Stamp?referer=');">CSTAMP</a> programming, and a general overview of the field of robotics. After two weeks, the course culminated in the construction of robots in groups of two or three people that had circuit board bases. The robots needed to be programmed to follow a curving line of black electrical tape against a field of white foam core. I had such a great time doing this program, and would never have been inspired to look in this field if it weren&#8217;t for Ms. Martin!</p>
<p>My professor for Mechatronics was a originally from Spokane and attended Seattle University. He then went to graduate school at Stanford. He works in the robotics department there, and is currently working on <a href="http://www.robotshop.com/blog/gecko-lizard-robot-3-from-stanford-473" onclick="urchinTracker('/outgoing/www.robotshop.com/blog/gecko-lizard-robot-3-from-stanford-473?referer=');">Stickybot 3</a>, a gecko-like robot that can climb vertically on a glass surface. I got a chance to see Stickybot and the rest of his lab, it was very cool!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/09/stanford-mechatronics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Functions Design Recipe</title>
		<link>http://www.garfieldcs.com/2010/09/function-design-recipe/</link>
		<comments>http://www.garfieldcs.com/2010/09/function-design-recipe/#comments</comments>
		<pubDate>Sat, 04 Sep 2010 00:23:22 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[2010 APCS++]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1570</guid>
		<description><![CDATA[1. Write down a signature, a purpose statement, and a function header.
A signature is a comment that tells the readers of your design how many inputs your function consumes, from what collection of data they are drawn, and what kind of output data it produces.
A purpose statement is a comment that summarizes the purpose of the function in a single line. If you are ever in doubt about a purpose statement, write down the shortest possible answer to the question
2. Illustrate the signature and the purpose statement with some tests. To construct ...]]></description>
			<content:encoded><![CDATA[<p>1. Write down a signature, a purpose statement, and a function header.</p>
<p>A <em>signature</em> is a comment that tells the readers of your design how many inputs your function consumes, from what collection of data they are drawn, and what kind of output data it produces.</p>
<p>A <em>purpose statement</em> is a comment that summarizes the purpose of the function in a single line. If you are ever in doubt about a purpose statement, write down the shortest possible answer to the question</p>
<p>2. Illustrate the signature and the purpose statement with some tests. To construct a test, pick one piece of data from each input class from the signature and determine what you expect back.  Use a <code><a href="http://pre.plt-scheme.org/docs/html/htdp-langs/Test_Cases.html#(form._((lib._lang%2Fhtdp-beginner..rkt)._check-expect))" onclick="urchinTracker('/outgoing/pre.plt-scheme.org/docs/html/htdp-langs/Test_Cases.html_form._lib._lang_2Fhtdp-beginner..rkt_._check-expect?referer=');">check-expect</a></code> function.</p>
<p>3. Formulate how the function computes its results &#8211; develop a Scheme expression that uses Scheme&#8217;s primitive operations, other functions, and the variables.</p>
<h2>Example</h2>
<pre>(define (area-of-disk r)
  (* 3.14 (* r r)))

;; <span style="text-decoration: underline;">Signature</span>: area-of-ring : number number -&gt; number

;; <span style="text-decoration: underline;">Purpose</span>: to compute the area of a ring whose radius is
;; outer and whose hole has a radius of inner

;; <span style="text-decoration: underline;">Tests</span>:
(check-expect (area-of-ring 5 3) 50.24)

;; <span style="text-decoration: underline;">Definition</span>:
(define (area-of-ring outer inner)
  (- (area-of-disk outer)
     (area-of-disk inner)))</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/09/function-design-recipe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zach Wener-Fligner</title>
		<link>http://www.garfieldcs.com/2010/08/zach-wener-fligner/</link>
		<comments>http://www.garfieldcs.com/2010/08/zach-wener-fligner/#comments</comments>
		<pubDate>Sat, 28 Aug 2010 19:11:27 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1545</guid>
		<description><![CDATA[Zach was a Microsoft intern the summer after his senior year. ]]></description>
			<content:encoded><![CDATA[<p>Zach Wener-Fligner (Garfield &#8217;10), was a Microsoft intern the summer after his senior year.  Read more about the <a href="https://careers.microsoft.com/careers/en/us/highschoolintern.aspx" onclick="urchinTracker('/outgoing/careers.microsoft.com/careers/en/us/highschoolintern.aspx?referer=');">Microsoft high school intern program</a> and apply for the coming summer!</p>
<h2>My Project</h2>
<p>This summer, I was lucky enough to be a part of the Microsoft High School internship program. I worked for <a href="http://en.wikipedia.org/wiki/Microsoft_SQL_Server" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Microsoft_SQL_Server?referer=');">SQL Server</a>, Microsoft’s databse platform, in the Business Platform Division, a multibillion dollar division that creates software for businesses. During the summer, my primary project was to write a “toggler” program&#8211;a scalable program that could automate many of the startup and shutdown processes the BPD Operations guys needed to do monthly. Through this project, I learned <a href="http://en.wikipedia.org/wiki/C_Sharp_(programming_language)" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/C_Sharp_programming_language?referer=');">C#</a>, <a href="http://en.wikipedia.org/wiki/Sql" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Sql?referer=');">SQL</a>, networking skills, and how to use SQL Server. I got to present my project to high school interns and to the rest of my department at the end of the summer.</p>
<h2>Great Environment</h2>
<p>The internship provides each high school intern with a mentor and a manager to help ensure that the summer is a success. These people know their stuff&#8211;I learned an incredible amount from them. I also met a lot of awesome kids from all around the Seattle area with interests in technology, which was great. In addition, we were able to attend some awesome lectures&#8211;I went to talks by <a href="http://en.wikipedia.org/wiki/Jeff_Ma" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Jeff_Ma?referer=');">Jeff Ma</a>, card counter the Hollywood movie “21” is based on; <a href="http://scottgu.com/" onclick="urchinTracker('/outgoing/scottgu.com/?referer=');">Scott Guthrie</a>, a Microsoft VP who was a lead developer on Visual Studio and .NET, and invented ASP.NET; and, of course, Steve Ballmer, who promised all of us interns free Windows 7 phones (not kidding!).</p>
<h2>Connections</h2>
<p>There were about 20 or 25 high school interns this year at Microsoft&#8211;but over 700 college interns. Working at Microsoft was a great experience partially because it provided me with a network of Microsofties that I can hopefully go through to get more internship experience later.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/08/zach-wener-fligner/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AJ Ostrow</title>
		<link>http://www.garfieldcs.com/2010/08/aj-ostrow/</link>
		<comments>http://www.garfieldcs.com/2010/08/aj-ostrow/#comments</comments>
		<pubDate>Thu, 26 Aug 2010 05:15:54 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1515</guid>
		<description><![CDATA[AJ was a software engineering intern at Cobalt the summer after his junior year.]]></description>
			<content:encoded><![CDATA[<div id="attachment_1516" class="wp-caption alignleft" style="width: 310px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/AJ.png"><img class="size-medium wp-image-1516" title="AJ" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/AJ-300x223.png" alt="" width="300" height="223" /></a><p class="wp-caption-text">AJ working at his desk.</p></div>
<p>AJ Ostrow (Garfield ’11) took half of Creative Computing in spring of 2009 and after learning some Python, decided he wanted to pursue a summer internship in a technical field.  He spent the summer working for the <a href="http://www.cobalt.com/" onclick="urchinTracker('/outgoing/www.cobalt.com/?referer=');">Cobalt Group</a>, now a division of <a href="http://www.adp.com/" onclick="urchinTracker('/outgoing/www.adp.com/?referer=');">ADP</a>.</p>
<h2>Role at Cobalt</h2>
<p>My position at Cobalt was Software Engineering Intern for the Visualization team.  Cobalt is an automative marketing company and I was involved with making their consumers, car dealerships and manufacturers, happy. To do this I created reports to measure website success using the information in the database, which would then be made into a dynamic web page to be accessible to dealerships.</p>
<p>More specifically, I was in charge of creating Google Spreadsheets with motion charts and working with the visualization team to make sure we found meaningful metrics.  Each time I finished a query, I would export the resulting table, create a moving chart, and then document my work on <a href="http://www.atlassian.com/software/confluence/" onclick="urchinTracker('/outgoing/www.atlassian.com/software/confluence/?referer=');">Confluence</a> (a collaboration tool). Also, I was often tasked with searching through traffic logs (enormous, compressed text files) to make reports back to Websites Team.  I did most of my programming in <a href="http://en.wikipedia.org/wiki/SQL" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/SQL?referer=');">SQL</a> but I also learned how to use <a href="http://en.wikipedia.org/wiki/Unix" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Unix?referer=');">UNIX</a> power tools in <a href="http://en.wikipedia.org/wiki/Vim_(text_editor)" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Vim_text_editor?referer=');">VIM</a>, and learned a little <a href="http://en.wikipedia.org/wiki/Perl" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Perl?referer=');">Perl</a>, <a href="http://en.wikipedia.org/wiki/Groovy_(programming_language)" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Groovy_programming_language?referer=');">Groovy</a>, and <a href="http://en.wikipedia.org/wiki/Javascript" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Javascript?referer=');">Javascript</a>.  However, I didn’t spend the whole day in front of a computer!  I also joined in on many brainstorming meetings to create a new way to report Cobalt&#8217;s services to car dealerships. Every day we had a stand-up meeting in addition. Each day I had a morning session to learn and go over assignments.</p>
<h2>Cobalt&#8217;s Culture</h2>
<p>Working at Cobalt was really fun because everyone treated me very well, and as an equal.  I got to work on interesting projects and could ask questions at any time. part of the way through, I got to experience what a <a href="http://www.adp.com/media/press-releases/2010-news-releases/adp-to-acquire-cobalt-leading-provider-of-digital-marketing-solutions-for-the-automotive-industry.aspx" onclick="urchinTracker('/outgoing/www.adp.com/media/press-releases/2010-news-releases/adp-to-acquire-cobalt-leading-provider-of-digital-marketing-solutions-for-the-automotive-industry.aspx?referer=');">company merger</a> is like, which was a valuable experience.  Twice during my time our team had Indian food for lunch.  Oh, and my manager enjoyed pinging people with giant nerf guns.</p>
<h2>Lessons Learned</h2>
<p>While at Cobalt, I learned a lot about the power of information, and the computing power possible with databases.  Once I was discussing (arguing) with a developer about the best way to complete a complex SQL query, and after 15 minutes or so he said at one point &#8220;If you calculate it in a batch, it will only have to hold, what, a 1600 times 1600 table in memory. Oracle should be fine&#8230;&#8221; And he was right! It took maybe 20 seconds to do all of the calculations including inner queries. Another thing I learned was how to put together a meaningful report.  I had to restructure my reports and add to them, but they will eventually be shown in a demonstration.</p>
<h2>Advice for Students Interested in Cobalt</h2>
<p>Cobalt has a ton to offer its interns!  I was their first intern ever as a high school student.  I do not think they realized how someone my age could contribute, and now my manager is interested in bringing more interns from Garfield on, and eventually starting an official program.  Right now there is not an application process, so the best way would be to create a resume, and be ready when Ms. Martin, my manager, and I have more information. I highly recommend staying tuned, because Cobalt was a great experience for me!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/08/aj-ostrow/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Game Development</title>
		<link>http://www.garfieldcs.com/2010/08/game-development/</link>
		<comments>http://www.garfieldcs.com/2010/08/game-development/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 23:43:43 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1456</guid>
		<description><![CDATA[Grant took a week-long game design course at Bellevue College and made a role playing game!]]></description>
			<content:encoded><![CDATA[<div id="attachment_1457" class="wp-caption alignleft" style="width: 310px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/game.png"><img class="size-medium wp-image-1457" title="game" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/game-300x167.png" alt="" width="300" height="167" /></a><p class="wp-caption-text">The game designed by Grant and other students.</p></div>
<p>Grant Bronsdon (Garfield ’12) used the summer after his sophomore year to take a week long programming course at Bellevue College in order to get a better understanding of how to make video games.  <strong>He learned C# and worked on a large team project. </strong>Read<strong> </strong>more about the course and see if you might want to take it, too!</p>
<h3>What did you do in the class?</h3>
<p>The class was on designing video games, so part of the time was spent introducing the language to the students and the rest of the time was devoted to actually designing a game. We went over basic concepts such as variables, methods, arrays, objects, XML, and so on.</p>
<h3>Did you have a final project or any sort of cumulative work?</h3>
<p>During the last day of the class, we all put our heads together and came up with one large game that incorporated many different aspects. We had a map of 100 rooms that were all connected to one another, with various mazes and pathways winding through the area. Your character had predefined statistics, including Hit Points, Strength, and Agility, as well as the power to equip items to attack with. A monster would chase after your character and if you ended up in the same room, you would be attacked and possibly killed. Each room also had its own descriptions as well as items. Considering that this program was mostly created in four hours, I think the coders deserve some props? <img src='http://www.garfieldcs.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h3>How much homework did you have from the class?</h3>
<p>NONE! Although if you were interested in coding some more, or if you wanted to create another add-on, that was possible.</p>
<h3>Any advice for students interested in programming or gaming?</h3>
<p>If you can find the time for a class like this, it’s a perfect environment to learn aspects of coding, make a cool project, and discover how to work with others collaboratively on a really cool game.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/08/game-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tracy Whelen</title>
		<link>http://www.garfieldcs.com/2010/08/tracy-whelen/</link>
		<comments>http://www.garfieldcs.com/2010/08/tracy-whelen/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 19:41:59 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1437</guid>
		<description><![CDATA[Tracy was an intern at Institute for Systems Biology the summer after her senior year.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/Whelen-Tracy.png"><img class="alignleft size-full wp-image-1511" title="Whelen, Tracy" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/Whelen-Tracy.png" alt="" width="212" height="300" /></a>Tracy Whelen (Garfield &#8217;10) spent the summer after her senior year as an intern for the <a href="http://www.systemsbiology.org/" onclick="urchinTracker('/outgoing/www.systemsbiology.org/?referer=');">Institute for Systems Biology</a>.  While there, she expanded on the programming skills she had gained in Creative Computing as well as on her biology knowledge.  Check out <a href="http://tools.proteomecenter.org/wiki/index.php?title=PeptideAtlas:Chromosomal_coverage" onclick="urchinTracker('/outgoing/tools.proteomecenter.org/wiki/index.php?title=PeptideAtlas_Chromosomal_coverage&amp;referer=');">the chromosomal coverage tool</a> she worked on!</p>
<p>Over the summer, Tracy learned about working with a large existing code base, producing graphics and working with several new languages and environments including <a href="http://www.perl.org/" onclick="urchinTracker('/outgoing/www.perl.org/?referer=');">Perl</a>, <a href="http://en.wikipedia.org/wiki/SQL" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/SQL?referer=');">SQL</a>, <a href="http://www.cplusplus.com/doc/tutorial/" onclick="urchinTracker('/outgoing/www.cplusplus.com/doc/tutorial/?referer=');">C++</a>, <a href="http://en.wikipedia.org/wiki/Unix" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Unix?referer=');">Unix</a> and <a href="http://en.wikipedia.org/wiki/Vim_(text_editor)" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Vim_text_editor?referer=');">Vim</a>.  She also worked with biology-specific programming libraries including <a href="http://www.bioperl.org/wiki/Main_Page" onclick="urchinTracker('/outgoing/www.bioperl.org/wiki/Main_Page?referer=');">BioPerl</a> and an <a href="http://en.wikipedia.org/wiki/Ensembl" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Ensembl?referer=');">Ensembl</a> API.</p>
<p>If you are interested in biology, <strong>you might be interested in following in Tracy&#8217;s footstep</strong><strong>s</strong>.  Tracy said she&#8217;s more than happy to discuss her experience in greater depth, so please let Ms. Martin know if you&#8217;d like to get in touch with her!  In the mean time, let&#8217;s take a closer look at what Tracy accomplished&#8230;</p>
<h3>Week 1</h3>
<p>Learn Perl, learn Perl, learn Perl. By the end of Friday it felt like anything more I tried to stuff in my brain was going to bounce off of it like a ping pong ball, let alone going in one ear and out the other. However in 4 days I got through the six chapters of basic Perl, and I was starting to tackle understanding the BioPerl (special module) code for the graphics.</p>
<h3>Week 2</h3>
<p>Went from barely understanding the code to modifying a skeleton program so that it drew a graphic that charts observed proteins (downloaded data from <a href="http://www.peptideatlas.org/" onclick="urchinTracker('/outgoing/www.peptideatlas.org/?referer=');">PeptideAtlas</a>) based on chromosomal coordinates. In other words, draw a scale the length of the chromosome by base pair length, and then match the proteins along that scale by their length in base pairs.</p>
<h3>Week 3</h3>
<p>Added tracks to show genes and karyotypic banding. The genes are so that you can compare and see if there are genes for which we have no observed proteins. Karyotypic banding is to show how base pairs relate to genetic locus of location. Also, from here hopefully I can read the genetic locus for proteins that don’t have chromosomal coordinates listed, and draw them by their genetic locus/band instead. <strong>It’s interesting learning a second programming language because of the comparisons between Python and Perl that I kept making</strong>. I prefer not having to initialize/have local vs. global variables like Python lets you do, but I like the <a href="http://en.wikipedia.org/wiki/Regular_expression" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/Regular_expression?referer=');">regular expression</a> weird character abilities of Perl.  Regular expressions in Perl use almost every single piece of punctuation with different special meanings.</p>
<h3>Week 4</h3>
<p>Added track to show which genes are seen in PeptideAtlas (aka, there is a PeptideAtlas protein on that gene). This should cover all the proteins, however it doesn’t. When I compare the coordinates of each they keep not quite lining up right. For some reason about half of the chromosomes don’t work (they spit an error instead of a picture). No clear pattern to this, so I’m investigating. Also made a real histogram of how many genes are present per 1 million base pairs. Apparently gene density has a connection with genes that express proteins. However this graph basically looks the same as what I already have, due to BioPerl’s staggering feature for overlapping track bits. Now I’m working on zooming in on a section of the chromosome.</p>
<h3>Week 5</h3>
<p>Got the zooming feature working. Already the user has the option of specifying a region to look at (ex start = &gt;30,000,000). I used this to change what portion of the chromosome is shown in the picture.  Meant that I had to get it to read from those boxes, and then depending on what was (or wasn’t) in the boxes it modifies starting/ending locations. Had to use regular expressions to parse &gt;30000000 (or some such) into two pieces – modifier and digits.</p>
<p>I solved why half the chromosomes wouldn’t draw. There was a karyotype stain type that I hadn’t noticed before, so the program was doing “if a…, if b…, if c… wait, where’s if x…?” Once I noticed this it was easy just to put in “if x…” I’m basically done with this program (all but the last little problems that slowly get discovered), so I’m starting to learn C++ in order to do some tidying work on another program. This next task will make it so that<strong> errors actually print useful information, such as &#8221; the file name is not in the right format&#8221; or some such</strong>.</p>
<h3>Week 6</h3>
<p>C++ is slowly starting to make sense, and learning a third language is easier than the second language, which was easier than the first. It’s pretty different from Python and Perl in its syntax, and because it’s a compiled language. At least I don’t have to also relearn all the basics like what are strings and ints. <strong>Pointers are another new concept, combined with dealing with where in memory something is being stored or how much memory it uses</strong>. I guess the references in Perl are a little like pointers though. I’ve just done little test programs in C++ so far, although this afternoon things finally started to come together, and I’ve almost got a little program that checks the existence and permission to write for a file. Now I just have to figure out how to check writeability without opening and closing the file, and how to work this all into the big program. Note – by the end of the week I figured out how to check writeability without opening and closing the file.</p>
<p>As for the final details in my Perl program, I’ve just realized that intense zooming is problematic because it insists on drawing to the end of a karyotype band for the scale, and that the graphic makes it barf if there are no proteins in the specified range. However this morning I did fix it so that it doesn’t spit errors at you every time you try a non-human build.  I also wrote up a wiki page that explains how to access/make the protein graph, and then how to interpret it.</p>
<h3>Week 7</h3>
<p>Final week of my internship and today is Friday the final day. I’ve spent a lot of this week continuing to debug my protein program (Perl program). <strong>You never realize how many bugs can be lurking until you have to go hunt them all down</strong>. I think I got the last one though, and we should be able to try to rollout again today and hopefully not find any new problems. (Third time’s the charm?) A lot of the issues I’ve had to deal with have been what happens when people use more of the user input options than I had originally been dealing with. I’ve found that I can ignore most of them as long as they input the chromosome number. I’ve also managed to fix last week’s bugs. The no proteins in the range problem was connected to one that Terry (my boss, and the writer of much of the other code in this program) had to solve because it had to do with how the data table was drawn from the SQL database. I ended up being able to take out my SQL query after that because it was redundant. Basically Terry implemented the SQL query I was using onto the entire program. This past week or two I’ve also been cleaning up my code – getting the indents tidy, removing stray test print statements, etc.</p>
<p>As for C++, I got my test program to work, and now I’ve put that code into the real program. I need a refresher though on how to test this code.</p>
<h3>Conclusion</h3>
<p>I’ve learned a lot, and had an interesting summer. This was a really great chance to learn in a self taught format – I had to take the initiative to ask questions and use the web and people I know to find answers to my questions. <strong>The more you have to teach yourself, the better you get at it</strong>. Also, the more programming languages you know, the easier new ones are to learn. However, sitting at a desk staring at a computer for 8hrs a day isn’t something my eyes or back appreciated, so remember to get up and go walk around a little bit every hour or two! If you have any questions feel free to contact me – I would be happy to chat with you. Ms. Martin can give you my email address.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/08/tracy-whelen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tracy and George</title>
		<link>http://www.garfieldcs.com/2010/08/tracy-and-george/</link>
		<comments>http://www.garfieldcs.com/2010/08/tracy-and-george/#comments</comments>
		<pubDate>Fri, 20 Aug 2010 18:39:43 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[Beyond the Classroom]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1423</guid>
		<description><![CDATA[Tracy and George got second place at both programming contests in 2009-2010!]]></description>
			<content:encoded><![CDATA[<div id="attachment_1424" class="wp-caption alignleft" style="width: 224px"><a href="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/G2.jpg"><img class="size-medium wp-image-1424" title="G2" src="http://www.garfieldcs.com/wordpress/wordpress/wp-content/uploads/2010/08/G2-214x300.jpg" alt="" width="214" height="300" /></a><p class="wp-caption-text">Wearing their medals at the April competition</p></div>
<p>Tracy (Garfield &#8217;10) and George (Garfield &#8217;12) placed second at the University of Washington high school programming contest not once but twice in the 2009-2010 school year!  They both completed Creative Computing in fall of 2009 and competed in the Python programming language.</p>
<h3>Why did you choose to go to the programming competitions?</h3>
<p><strong>Tracy</strong>: Ms. Martin suggested I go and said it was fun. She gave us some practice problems in class, and they seemed fairly interesting so I decided to go. Once I got there I had so much fun that no persuasion was needed to get me to go to the spring competition.</p>
<p>George:</p>
<h3>How would you describe the competitions for someone who has never been?</h3>
<p><strong>Tracy</strong>: It is a fun out of school opportunity to try programming a variety of different things, while under a slight time limit. The time limit means you have to prioritize and work efficiently, but it’s not so stressful that things stop becoming fun. In the morning there is usually some sort participatory of talk or demonstration about an area of computer science. The programming prompts are usually formatted as a data file that you have to read, make changes to the info inside, and then print a result. You also have plenty of opportunities during the day to meet and talk with other students and teachers from around the area.</p>
<p>George:</p>
<h3>What do you think contributed most to your competition success?</h3>
<p><strong>Tracy</strong>: George and I worked out a good strategy of alternating between sketching out the basics of a program on paper, and actually typing it into the computer and debugging.  We were able to communicate well, and we knew our own strengths and weaknesses.  Between these we could figure out whether it was worth it to tackle a problem, let the other person do it, or leave alone.</p>
<p>George:</p>
<h3>What advice would you give to others looking to participate in programming competitions?</h3>
<p><strong>Tracy</strong>: A two person team is the best size. Alone means you can’t bounce ideas off of someone when you get stuck debugging, and a three person team produces more ideas than you can get in to the computer in time. Don&#8217;t expect you&#8217;re going to be able to figure out all the programs in the competition time, so don&#8217;t worry if you have no idea how to solve some of them. And just have fun &#8211; don&#8217;t get too stressed out if you&#8217;re running out of time.</p>
<p>George:</p>
<div id="_mcePaste"></div>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/08/tracy-and-george/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Final Project Topics</title>
		<link>http://www.garfieldcs.com/2010/06/final-project-topics/</link>
		<comments>http://www.garfieldcs.com/2010/06/final-project-topics/#comments</comments>
		<pubDate>Mon, 14 Jun 2010 04:04:09 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[2010 Spring Creative Computing 1]]></category>
		<category><![CDATA[2010 Spring Exploring CS]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1368</guid>
		<description><![CDATA[Find inspiration in UW, CMU, Stanford research.
Artificial Intelligence
- intelligent transport systems
- swarm computing
- automatic image analysis (image search)
- automatic translation
- voice control
- natural language processing
- get ideas from MIT&#8217;s CSAIL
Human-Computer Interfaces
- brain-controlled computers
- gesture interfaces (skinput, sixth sense, Natal)
Ubiquitous Computing
- wearable computers
- &#8220;Smart grid&#8221; (sensors for electrical, power grids; HydroSense)
- RFID applications (&#8220;smart tags&#8221;, tracking)
Computing law
- laws regulating privacy
- anti-hacking laws
Large-scale computing
- quantum computing
- parallel computing (multi-core, multi-processor)
Computing Concepts
- Moore&#8217;s Law
- Agile Software Design
- Cloud Computing (Google docs, GMail, etc)
- Databases (information storage)
- Peer to peer networking (BitTorrent)
- Encryption
Human-based computation ...]]></description>
			<content:encoded><![CDATA[<p>Find inspiration in <a href="http://www.cs.washington.edu/research/" onclick="urchinTracker('/outgoing/www.cs.washington.edu/research/?referer=');">UW</a>, <a href="http://www.cs.cmu.edu/research/areas/index.html" onclick="urchinTracker('/outgoing/www.cs.cmu.edu/research/areas/index.html?referer=');">CMU</a>, <a href="http://cs.stanford.edu/research/projects" onclick="urchinTracker('/outgoing/cs.stanford.edu/research/projects?referer=');">Stanford</a> research.</p>
<p>Artificial Intelligence<br />
- intelligent transport systems<br />
- swarm computing<br />
- automatic image analysis (image search)<br />
- automatic translation<br />
- voice control<br />
- natural language processing<br />
- get ideas from <a href="http://www.csail.mit.edu/node/3" onclick="urchinTracker('/outgoing/www.csail.mit.edu/node/3?referer=');">MIT&#8217;s CSAIL</a></p>
<p>Human-Computer Interfaces<br />
- brain-controlled computers<br />
- gesture interfaces (skinput, sixth sense, Natal)</p>
<p>Ubiquitous Computing<br />
- wearable computers<br />
- &#8220;Smart grid&#8221; (sensors for electrical, power grids; HydroSense)<br />
- RFID applications (&#8220;smart tags&#8221;, tracking)</p>
<p>Computing law<br />
- laws regulating privacy<br />
- anti-hacking laws</p>
<p>Large-scale computing<br />
- quantum computing<br />
- parallel computing (multi-core, multi-processor)</p>
<p>Computing Concepts<br />
- Moore&#8217;s Law<br />
- Agile Software Design<br />
- Cloud Computing (Google docs, GMail, etc)<br />
- Databases (information storage)<br />
- Peer to peer networking (BitTorrent)<br />
- Encryption</p>
<p>Human-based computation (Captcha)</p>
<p>Computing in the developing world</p>
<p>Android OS<br />
Linux</p>
<p>People in computing<br />
- Edsger Dijkstra (algorithms)<br />
- Alan Turing (father of CS)<br />
- Douglas Engelbart (pioneer, invented the mouse)<br />
- Marissa Mayer (early Google employee)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/06/final-project-topics/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Cheat Sheet</title>
		<link>http://www.garfieldcs.com/2010/06/css-cheat-sheet/</link>
		<comments>http://www.garfieldcs.com/2010/06/css-cheat-sheet/#comments</comments>
		<pubDate>Thu, 10 Jun 2010 04:03:39 +0000</pubDate>
		<dc:creator>Ms. Martin</dc:creator>
				<category><![CDATA[2010 Spring Exploring CS]]></category>

		<guid isPermaLink="false">http://www.garfieldcs.com/?p=1362</guid>
		<description><![CDATA[This reference was adapted from Dawn Pedersen&#8217;s original sheet &#8212; thanks!
External Style Sheets
External style sheets must be called from inside an XHTML page using a &#60;link&#62; element, which goes inside the &#60;head&#62; element. External style sheet file names must end in &#8220;.css&#8221;.
Example:

&#60;head&#62;
&#60;title&#62;An External Style Sheet&#60;/title&#62;
&#60;link type="text/css" rel="stylesheet" href="style.css" /&#62;
&#60;/head&#62;

External style sheets contain only CSS rules. They should never contain any XHTML tags such as &#60;style&#62;.
CSS Rules
All CSS rules are formatted like this:

selector {
    property: value;
}

Example:

p {
    color: #000000;
}

The example above specifies that all text inside ...]]></description>
			<content:encoded><![CDATA[<h4><span style="font-weight: normal;">This reference was adapted from <a href="http://www.nhsdesigns.com/web/css/css_cheat-sheet.php" onclick="urchinTracker('/outgoing/www.nhsdesigns.com/web/css/css_cheat-sheet.php?referer=');">Dawn Pedersen&#8217;s original sheet</a> &#8212; thanks!</span></h4>
<h4>External Style Sheets</h4>
<p>External style sheets must be called from inside an XHTML page using a &lt;link&gt; element, which goes inside the &lt;head&gt; element. External style sheet file names must end in &#8220;.css&#8221;.</p>
<p><em>Example:</em><br />
<code><br />
&lt;head&gt;<br />
&lt;title&gt;An External Style Sheet&lt;/title&gt;<br />
&lt;link type="text/css" rel="stylesheet" href="style.css" /&gt;<br />
&lt;/head&gt;<br />
</code></p>
<p>External style sheets contain <strong>only</strong> CSS rules. They should never contain any XHTML tags such as &lt;style&gt;.</p>
<h4>CSS Rules</h4>
<p>All CSS rules are formatted like this:</p>
<pre><code>
selector {
    property: value;
}
</code></pre>
<p><em>Example:</em></p>
<pre><code>
p {
    color: #000000;
}
</code></pre>
<p>The example above specifies that all text inside paragraph tags should be black.</p>
<h4>CSS Classes</h4>
<p>CSS classes start the selector with a dot, such as this:</p>
<pre><code>
.bluetext {
    color: #0000ff;
}
</code></pre>
<p><code> </code><br />
CSS class allow you to pinpoint a single element for special treatment. For example, if you want only one paragraph to be blue but not all of them, you add the class to the open &lt;p&gt; tag, like this:<br />
<code><br />
&lt;p class="bluetext"&gt;</code></p>
<p>You do not leave the dot in the class name when adding the class to an XHTML element.</p>
<h3>Some Beginner&#8217;s CSS Rules</h3>
<p>Below are some <strong>sample</strong> property/value combinations. You choose the <em>selector</em> &#8211; either a tag like &lt;h1&gt; or a class as mentioned above. The values below can easily be changed to something else in most cases.</p>
<h4>Colors</h4>
<p>Make Font Color Red<br />
<code>color: #ff0000;</code></p>
<p>Make Background Color Green<br />
<code>background-color: #00ff00;</code></p>
<h4>Font Styles</h4>
<p>Make Font a Sans-Serif Style<br />
<code>font-family:  sans-serif;</code></p>
<p>Make Font a Serif Style<br />
<code>font-family: serif;</code></p>
<p>Make a Font Bold<br />
<code>font-weight: bold;</code></p>
<p>Make a Font Italicized<br />
<code>font-style: italic;</code></p>
<p>Make Text All Uppercase<br />
<code>text-transform: uppercase;</code></p>
<h4>Font Sizes</h4>
<p>Make a Font Approximately 12pt<br />
<code>font-size: small;</code></p>
<p>Make a Font Larger Than the Body Font<br />
<code>font-size: 130%;</code></p>
<p>Make a Font Smaller Than the Body Font<br />
<code>font-size: 90%;</code></p>
<h4>Text Decorations</h4>
<p>Remove an Underline<br />
<code>text-decoration: none;</code></p>
<p>Add an Underline<br />
<code>text-decoration: underline;</code></p>
<p>Add an Overline<br />
<code>text-decoration: overline;</code></p>
<h4>Borders</h4>
<p>Add a Thin, Dotted, Gray Bottom Border<br />
<code>border-bottom: thin dotted #888888;</code></p>
<p>Remove a Border Around a Linked Image</p>
<p><code>img {<br />
border: 0px;<br />
}</code></p>
<h4>Text Positioning</h4>
<p>Center-Align Text<br />
<code>text-align: center;</code></p>
<p>Right-Align text<br />
<code>text-align: right;</code></p>
<p>Add Spacing Between Lines of Text Within a Block Element<br />
<code>line-height: 20px;</code></p>
<h4>Links</h4>
<p>Here&#8217;s an example of how to change the color and underline for links in their <em>unvisited</em>, <em>visited</em>, <em>hover</em> and <em>active</em> states.</p>
<p><em>Hover</em> means the mouse is on the link but it has not been clicked yet.</p>
<p><em>Active</em> means the link has just been clicked but the new page has not yet appeared.</p>
<pre><code>a:link {
    color: #000000;
    text-decoration: underline;
}</code></pre>
<pre><code>a:visited {
    color: #444444;
    text-decoration: underline;
}</code></pre>
<pre><code>a:hover, a:active {
    color: #FF3300;
    text-decoration: none;
}
</code></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.garfieldcs.com/2010/06/css-cheat-sheet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
