<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://132.161.132.157/drupal6"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Computer Science - Articles</title>
 <link>http://132.161.132.157/drupal6/taxonomy/term/464/0</link>
 <description></description>
 <language>en</language>
<item>
 <title>Things Every CS Major Should Read</title>
 <link>http://132.161.132.157/drupal6/readings</link>
 <description>&lt;p&gt;&lt;strong&gt;The page is currently in very rough form&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;
  This page provides a list of papers that department faculty think our students would benefit from reading.  It will evolve over time. 
&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;
Anonymous.  n.d.  The story of Mel, a real programmer.
&lt;/p&gt;

&lt;blockquote&gt;
  A funny historical piece.  The story of Mel should give you a sense of a different era of programming, help you think differently about the relationships between code and data, and remind you of moral obligations of programmers.
&lt;/blockquote&gt;

&lt;p&gt;
John Backus. 1978. Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs. &lt;i&gt;Commun. ACM&lt;/i&gt; 21, 8 (August 1978), 613-641. DOI=10.1145/359576.359579 http://doi.acm.org/10.1145/359576.359579
&lt;/p&gt;

&lt;blockquote&gt;
  We&#039;ve seen an evolution of approaches to program design.  Early programs were unstructured.  In the 70&#039;s and 80&#039;s, there was a move toward &lt;q&gt;structured programming&lt;/q&gt;.  In the 80&#039;s, 90&#039;s, and 00&#039;s, object-oriented programming was the primary mechanism.  But in the 10&#039;s we&#039;re seeing increasing understanding of why a functional approach may be better.  Backus, who invented Fortran, realized the power of functional programming decades ago.  The first parts of this article provide a nice summary of this power.
&lt;/blockquote&gt;

&lt;p&gt;
Jon Bentley. 1983. Programming pearls: Writing correct programs. &lt;i&gt;Commun. ACM&lt;/i&gt; 26, 12 (December 1983), 1040-1045. DOI=10.1145/358476.358484 http://doi.acm.org/10.1145/358476.358484
&lt;/p&gt;&lt;p&gt;

&lt;blockquote&gt;
  A very interesting discussion of a famous and often incorrectly implemented algorithm: binary search.  Bentley provides an excellent example of the design of a unit test (although he does not call it such), then suggests that there are more formal techniques beyond unit testing likely to provide us with more confidence in our results.
&lt;/blockquote&gt;

&lt;/p&gt;&lt;p&gt;
Fred Brooks.  &lt;i&gt;The Mythical Man-Month&lt;/i&gt;.
&lt;/p&gt;

&lt;blockquote&gt;
A classic book on software engineering.  Read it to better understand ways to think about group projects (and managing group projects).
&lt;/blockquote&gt;

&lt;p&gt;
Paul Graham.  2002.  The roots of Lisp.  http://www.paulgraham.com/rootsoflisp.html
&lt;/p&gt;

&lt;p&gt;
Paul Graham. 2002.  What made Lisp different.  http://www.paulgraham.com/diff.html
&lt;/p&gt;&lt;p&gt;

&lt;blockquote&gt;
  Grinnell starts our curriculum with Scheme, a dialect of Lisp.  And we return to Lisp in many classes.  These articles by Graham suggest reasons that Lisp remains a powerful programming model.
&lt;/blockquote&gt;

&lt;/p&gt;&lt;p&gt;
Ken Thompson. 1984. Reflections on trusting trust. &lt;i&gt;Commun. ACM&lt;/i&gt; 27, 8 (August 1984), 761-763. DOI=10.1145/358198.358210 http://doi.acm.org/10.1145/358198.358210
&lt;/p&gt;

&lt;blockquote&gt;
  Thompson&#039;s Turing Award speech on reading and trusting code.
&lt;/blockquote&gt;

&lt;p&gt;
Stuart Wray. 2010.  How pair programming really works.  &lt;i&gt;IEEE Computer&lt;/i&gt;.
http://www.computer.org/cms/Computer.org/ComputingNow/homepage/2010/0110/W_SW_PairProgramming.pdf
&lt;/p&gt;

&lt;blockquote&gt;
  There are a variety of good articles on pair programming.  This is a nice short one.
&lt;/blockquote&gt;</description>
 <category domain="http://132.161.132.157/drupal6/taxonomy/term/464">Articles</category>
 <category domain="http://132.161.132.157/drupal6/taxonomy/term/178">Classics</category>
 <category domain="http://132.161.132.157/drupal6/taxonomy/term/41">CS Table</category>
 <pubDate>Thu, 12 Sep 2013 12:42:34 +0000</pubDate>
 <dc:creator>rebelsky</dc:creator>
 <guid isPermaLink="false">647 at http://132.161.132.157/drupal6</guid>
</item>
</channel>
</rss>
