<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<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/"
	>

<channel>
	<title>cacm &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/cacm/</link>
	<description>Feed of posts on WordPress.com tagged "cacm"</description>
	<pubDate>Tue, 22 Dec 2009 19:20:48 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[An Introduction to Sharath Sury Video]]></title>
<link>http://sharathsurynews.wordpress.com/2009/12/09/an-introduction-to-sharath-sury-video/</link>
<pubDate>Wed, 09 Dec 2009 19:10:10 +0000</pubDate>
<dc:creator>AboutSharathSury</dc:creator>
<guid>http://sharathsurynews.wordpress.com/2009/12/09/an-introduction-to-sharath-sury-video/</guid>
<description><![CDATA[~ Get To Know Sharath Sury In This Brief Bio Video ~ Thanks for watching!]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><em><strong>~ Get To Know Sharath Sury In This Brief Bio Video ~</strong></em></p>
<p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/Z2s5clr4T1Y&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/Z2s5clr4T1Y&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p><strong>Thanks for watching!</strong></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Nice CACM piece on K-12 Education Policy]]></title>
<link>http://computinged.wordpress.com/2009/08/26/nice-cacm-piece-on-k-12-education-policy/</link>
<pubDate>Wed, 26 Aug 2009 18:21:09 +0000</pubDate>
<dc:creator>Mark Guzdial</dc:creator>
<guid>http://computinged.wordpress.com/2009/08/26/nice-cacm-piece-on-k-12-education-policy/</guid>
<description><![CDATA[Cameron Wilson and Peter Harsha have written a nice piece in the September CACM highlighting the cha]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Cameron Wilson and Peter Harsha have written <a href="http://cacm.acm.org/magazines/2009/9/38896-the-long-road-to-computer-science-education-reform/abstract">a nice piece in the September CACM highlighting the challenges in changing K-12 education policy as it relates to computing</a>.  They hit on all the big points, from the challenges of getting computing education to &#8220;count&#8221; for anything in high schools, to teacher certification, to &#8220;No Child Left Behind.&#8221;  Of course, I&#8217;m also pleased that &#8220;<a href="http://www.gacomputes.org">Georgia Computes!</a>&#8221; gets highlighted.  Recommended for understanding why it&#8217;s so hard to get more and better computing education into schools!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Point/Counterpoint: CS Education headed in wrong direction?]]></title>
<link>http://computinged.wordpress.com/2009/07/08/pointcounterpoint-cs-education-headed-in-wrong-direction/</link>
<pubDate>Wed, 08 Jul 2009 13:39:14 +0000</pubDate>
<dc:creator>Mark Guzdial</dc:creator>
<guid>http://computinged.wordpress.com/2009/07/08/pointcounterpoint-cs-education-headed-in-wrong-direction/</guid>
<description><![CDATA[The July 2009 CACM also has a great point/counterpoint piece by Robert Dewar and Owen Astrachan aski]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The July 2009 CACM also has <a href="http://mags.acm.org/communications/200907/?pg=42&#38;pm=2&#38;u1=friend">a great point/counterpoint piece</a> by Robert Dewar and Owen Astrachan asking &#8220;Is CS Education in the US headed in the wrong direction?&#8221;  I&#8217;m not going to give my personal opinion on the pieces, because I solicited both articles for CACM.  I am really pleased with both position papers, and how the overall piece came out.  It&#8217;s really about what do we want from our education system &#8212; what does an undergraduate degree in computing <em>mean</em>?</p>
<address>(For testing purposes: xky7qhc4r2)</address>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Aligning Computer Science with Mathematics by Felleisen and Krishnamurthi]]></title>
<link>http://computinged.wordpress.com/2009/07/07/aligning-computer-science-with-mathematics-by-felleisen-and-krishnamurthi/</link>
<pubDate>Tue, 07 Jul 2009 19:44:44 +0000</pubDate>
<dc:creator>Mark Guzdial</dc:creator>
<guid>http://computinged.wordpress.com/2009/07/07/aligning-computer-science-with-mathematics-by-felleisen-and-krishnamurthi/</guid>
<description><![CDATA[The July 2009 Communications of the ACM has an interesting article by Matthias Felleisen and Shriram]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The July 2009 <em>Communications of the ACM </em>has an<a href="http://mags.acm.org/communications/200907/?pg=38&#38;pm=2&#38;u1=friend"> interesting article </a>by Matthias Felleisen and Shriram Krishnamurthi <em>Why Computer Science Doesn&#8217;t Matter</em> with the great subtitle &#8220;Aligning computer science with high school mathematics can help turn it into an essential subject for all students.&#8221;  The argument that Matthias and Shriram are making is that we can use programming to teach mathematics better, and help students learn both.  In so doing, we prevent marginalization of computer science and support an important goal of the American education system, the teaching of &#8220;&#8216;rithmetic.&#8221;</p>
<p>It&#8217;s a good argument and one that I support.  I am dubious about some of the education claims made in the argument, like &#8220;we have already seen our curricular approach&#8230;help students raise their alebra scores&#8221; and &#8220;Formal evaluation shows the extremely positive impact this curriculum has&#8230;&#8221;  (I&#8217;ve been searching through the sites given in the article, but can&#8217;t find peer-reviewed, published papers that support these claims.)  But these are really minor quibbles.  Having written one of these pieces, I know that the tyrany of 1800 words is severe, and the authors can be excused for not providing background citations to the studies supporting their claims.  Instead, I&#8217;d like to provide some of the background literature that supports their claim.</p>
<p>Can we use programming to help students learn mathematics?  Absolutely!  Probably the most famous study supporting this argument is Idit Harel&#8217;s dissertation work on <em>Instructional Software Development Project (ISDP). </em>Idit had fourth graders write software in Logo to teach fractions to third graders.  She found that a real synergy occurred between the concepts of programming and the concepts of mathematics, and her students ended up learning more about both compared to another class.  Yasmin Kafai (who just moved to Penn from UCLA this last year) continued this project, exploring novel collaboration models (e.g., the fourth graders become fifth grade &#8220;consultants&#8221; as another cohort of fourth graders helps another cohort of third graders) and expanding from mathematics into science.  My own dissertation explored the synergy between physics and programming.  My results weren&#8217;t as strong &#8212; I had good physics learning, but not good computer science learning.  I suspect the problems were the challenge of making real learning in only a three week summer workshop, and not having the kinds of IDE&#8217;s that Matthias and Shriram are calling for.</p>
<p>&#8220;Our community must realize that minor tweaks of currently dominant approaches to programming won&#8217;t suffice.&#8221;  Completely agreed, and the best argument for this point came from Bruce Sherin&#8217;s powerful dissertation (with Andy diSessa at Berkeley).  Bruce taught two groups of students lessons in physics, one using programming and one using algebra.  (Andy would probably argue with Matthias and Shriram, &#8220;The ideal language and the IDE for imaginative programming are still to be designed.&#8221;  Over 20 years ago, Boxer implemented much of what they&#8217;re calling for.)  Bruce found some really interesting differences between what was learned via each form of notation.  For example, programming was better for figuring out <em>causality</em> and <em>sequencing.</em> An algebraic formula like <em>x = x0 + vt</em> leaves invisible to the novice that the <em>t</em> is what will typically vary in that equation.  On the other hand, algebra was better for understanding <em>balance </em>and <em>equilibria</em>.  A formula like <em>F=ma</em> works in both directions:  increase the mass or acceleration and the force increases, or if the force declines, then either the mass or the acceleration must have declined.  Most programming languages do not make evident how constraints work in the world.  The media extensions that Matthias and Shriram describe help address some of the challenges Bruce found when students had a single physics concept (e.g., an object moving because it&#8217;s location changed) being represented by multiple lines of code.</p>
<p>&#8220;As computer science educators, we must also demand a smooth, continuous path from imaginative programming to the engineering of large programs.&#8221;  Alan Kay has been making this argument for years.  He refers to the concept of <em>Omniuser</em> who can move from scripting in E-Toys, to changing how the levels close to the metal of the machine work, all with a single system and (hopefully) a single notation.  His <a href="http://vpri.org/html/writings.php">STEPS effort</a> is seeking to build such systems. In particular, Alan and his team are exploring &#8220;systems math&#8221; which is a kind of powerful mathematics that can only really exist in the powerful medium of programming.  Thus, STEPS gives us a way to go beyond just support &#8220;&#8216;rithmetic&#8221; to support powerful new kinds of mathematics learning.</p>
<p>I&#8217;m a big fan of Scheme and consider DrScheme to be one of the finest pedagogical IDE&#8217;s ever created.  TeachScheme is a brilliant curriculum.  My guess is that careful studies of the effort would support many of the claims being made by Matthias and Shriram.  More importantly, though, I believe that they&#8217;re right that programming could actually <em>improve</em> mathematics learning.  Doing it in such a way that students&#8217; mathaphobia doesn&#8217;t drive even <em>more</em> students from computer science is a real challenge.  An even bigger challenge is doing it in such a way that can gain the support of organizations like NCTM and that meets the mathematics standards in our schools. As they say, &#8220;Any attempt to align programming with mathematics will fail unless the programming language is as close to school mathematics as possible.&#8221;  It&#8217;s more than just the programming language &#8212; the whole package (curriculum, IDE, language) has to look and feel like mathematics to make it successful with the mathematics education community.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Compact Tree Storage]]></title>
<link>http://hbfs.wordpress.com/2009/04/07/compact-tree-storage/</link>
<pubDate>Tue, 07 Apr 2009 10:35:08 +0000</pubDate>
<dc:creator>Steven Pigeon</dc:creator>
<guid>http://hbfs.wordpress.com/2009/04/07/compact-tree-storage/</guid>
<description><![CDATA[Implementing data structures in a way that uses efficiently memory should always be on your mind. I ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Implementing data structures in a way that uses efficiently memory should always be on your mind. I do not mean going overboard and micro-optimizing memory allocation right down to the bit. I mean organize data structures in memory so that you can avoid pointers, so that you can use contiguous memory segments, etc. Normally, minimizing storage by avoiding extra pointers when possible will benefit your program in at least two ways.</p>
<p>First, the reduced memory requirement will make your data structure fit in cache more easily. Remember that if pointers are 4 bytes long in 32 bits programming, they are 8 bytes long in 64 bits environments. This yields better run time performance because you maximize your chances of having the data you need in cache.</p>
<p>Second, contiguous memory layouts also allow for efficient scans of data structures. For example, if you have a classical binary tree, implemented using nodes having each two pointers, you will have to use a <a href="http://en.wikipedia.org/wiki/Tree_traversal" target="_blank">tree traversal</a> algorithm, possibly recursive, to enumerate the tree&#8217;s content. If you don&#8217;t really care about the order in which the nodes are visited, what&#8217;s quite cumbersome.</p>
<p>It turns out that for special classes of trees, <a href="http://www.itl.nist.gov/div897/sqg/dads/HTML/completeBinaryTree.html" target="_blank">complete trees</a>, there is a contiguous, and quite simple, layout.</p>
<p><!--more--></p>
<p>Consider the following figure:</p>
<div id="attachment_1116" class="wp-caption aligncenter" style="width: 310px"><a href="http://hbfs.wordpress.com/files/2009/04/diagram1-2.png"><img src="http://hbfs.wordpress.com/files/2009/04/diagram1-2.png?w=300" alt="A complete binary tree" title="diagram1-2" width="300" height="146" class="size-medium wp-image-1116" /></a><p class="wp-caption-text">A complete binary tree</p></div>
<p>You notice that each node is numbered, and that you have the following relations holding between the nodes:</p>
<p>For a node <img src='http://l.wordpress.com/latex.php?latex=n&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='n' title='n' class='latex' />, you have&#8230;</p>
<ul>
<li>that its parent is given by <img src='http://l.wordpress.com/latex.php?latex=%5Clfloor+%5Cfrac%7B1%7D%7B2%7D%28n-1%29+%5Crfloor&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\lfloor \frac{1}{2}(n-1) \rfloor' title='\lfloor \frac{1}{2}(n-1) \rfloor' class='latex' />,</li>
<p></p>
<li>that its left child is given by <img src='http://l.wordpress.com/latex.php?latex=2n%2B1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='2n+1' title='2n+1' class='latex' />,</li>
<p></p>
<li>that its right child is given by <img src='http://l.wordpress.com/latex.php?latex=2n%2B2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='2n+2' title='2n+2' class='latex' />,</li>
<p>
</ul>
<p>Assuming that the root is numbered <img src='http://l.wordpress.com/latex.php?latex=0&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='0' title='0' class='latex' />. This suggests the layout:</p>
<div id="attachment_790" class="wp-caption aligncenter" style="width: 310px"><a href="http://hbfs.wordpress.com/files/2009/02/diagram2.png"><img src="http://hbfs.wordpress.com/files/2009/02/diagram2.png?w=300" alt="The tree, as seen in a flat layout" title="diagram2" width="300" height="66" class="size-medium wp-image-790" /></a><p class="wp-caption-text">The tree, as seen in a flat layout</p></div>
<p>where the arrows corresponds to parent/child links.</p>
<p>The proof that this mapping works correctly is somewhat self-evident. What is less evident, is that such mappings exist for trees with higher branching factors. In general, if you have a tree with a branching factor of <img src='http://l.wordpress.com/latex.php?latex=k&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k' title='k' class='latex' />, you will have that, for a node <img src='http://l.wordpress.com/latex.php?latex=n&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='n' title='n' class='latex' />,&#8230;</p>
<ul>
<li>the parent is given by <img src='http://l.wordpress.com/latex.php?latex=%5Clfloor+%5Cfrac%7B1%7D%7Bk%7D%28n-1%29+%5Crfloor&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\lfloor \frac{1}{k}(n-1) \rfloor' title='\lfloor \frac{1}{k}(n-1) \rfloor' class='latex' />,</li>
<p></p>
<li>the children are given by <img src='http://l.wordpress.com/latex.php?latex=kn%2B1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='kn+1' title='kn+1' class='latex' />, <img src='http://l.wordpress.com/latex.php?latex=kn%2B2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='kn+2' title='kn+2' class='latex' />, &#8230; <img src='http://l.wordpress.com/latex.php?latex=kn%2Bk&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='kn+k' title='kn+k' class='latex' />.</li>
<p>
</ul>
<p>So, plugging <img src='http://l.wordpress.com/latex.php?latex=k%3D2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=2' title='k=2' class='latex' /> in the previous equations leads us to the binary tree case. The case <img src='http://l.wordpress.com/latex.php?latex=k%5Cgeqslant%7B%7D3&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k\geqslant{}3' title='k\geqslant{}3' class='latex' /> corresponds to higher-order three. Letting <img src='http://l.wordpress.com/latex.php?latex=k%3D4&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=4' title='k=4' class='latex' /> gives us a layout for <a href="http://en.wikipedia.org/wiki/Quad_tree" target="_blank">quad-trees</a>, which are extensively used in computer graphics. <img src='http://l.wordpress.com/latex.php?latex=k%3D8&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=8' title='k=8' class='latex' /> yields <a href="http://en.wikipedia.org/wiki/Octree" target="_blank">octrees</a> which are also used in computer graphics applications, such as <a href="http://en.wikipedia.org/wiki/Collision_detection" target="_blank">collision detection</a>, <a href="http://en.wikipedia.org/wiki/Ray_tracing_(graphics)" target="_blank">ray tracing</a> and <a href="http://en.wikipedia.org/wiki/Volume_rendering" target="_blank">volume rendering</a>. Note that if you put <img src='http://l.wordpress.com/latex.php?latex=k%3D1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=1' title='k=1' class='latex' />, you get a list, that the parent is given correctly by <img src='http://l.wordpress.com/latex.php?latex=n-1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='n-1' title='n-1' class='latex' /> and the (only) child by <img src='http://l.wordpress.com/latex.php?latex=n%2B1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='n+1' title='n+1' class='latex' />.</p>
<p>The addresses of the first node in a row, for:</p>
<ul>
<li><img src='http://l.wordpress.com/latex.php?latex=k%3D2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=2' title='k=2' class='latex' />, is given by 0,1,3,7,15,&#8230; or <img src='http://l.wordpress.com/latex.php?latex=2%5En-1&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='2^n-1' title='2^n-1' class='latex' />, is Sloane&#8217;s <a href="http://www.research.att.com/~njas/sequences/A000225" target="_blank">A000225</a>.</li>
<p></p>
<li><img src='http://l.wordpress.com/latex.php?latex=k%3D3&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=3' title='k=3' class='latex' />, is given by 0,1,4,13,40,121,&#8230; or <img src='http://l.wordpress.com/latex.php?latex=%5Cfrac%7B1%7D%7B2%7D%283%5En-1%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\frac{1}{2}(3^n-1)' title='\frac{1}{2}(3^n-1)' class='latex' />, and is Sloane&#8217;s <a href="http://www.research.att.com/~njas/sequences/A003462" target="_blank">A003462</a>.</li>
<p></p>
<li><img src='http://l.wordpress.com/latex.php?latex=k%3D4&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=4' title='k=4' class='latex' />, is given by 0,1,5,31,85,341,&#8230; or <img src='http://l.wordpress.com/latex.php?latex=%5Cfrac%7B1%7D%7B3%7D%284%5En-1%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\frac{1}{3}(4^n-1)' title='\frac{1}{3}(4^n-1)' class='latex' />, and is Sloane&#8217;s <a href="http://www.research.att.com/~njas/sequences/A002450" target="_blank">A002450</a>.</li>
<p>
</ul>
<p>The general formula is <img src='http://l.wordpress.com/latex.php?latex=%5Cfrac%7B1%7D%7Bk-1%7D%28k%5En-1%29&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='\frac{1}{k-1}(k^n-1)' title='\frac{1}{k-1}(k^n-1)' class='latex' />.</p>
<p align="center">*<br />*&#8195;*</p>
<p>The cases with <img src='http://l.wordpress.com/latex.php?latex=k%3D2&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=2' title='k=2' class='latex' />, <img src='http://l.wordpress.com/latex.php?latex=k%3D4&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=4' title='k=4' class='latex' /> and <img src='http://l.wordpress.com/latex.php?latex=k%3D8&#038;bg=ffffff&#038;fg=000000&#038;s=0' alt='k=8' title='k=8' class='latex' /> can be implemented very efficiently depending on the type of processor you are using. Of course, multiplies by powers of two can be replaced by left shifts. On Intel processors, the following two functions:</p>
<pre class="brush: cpp;">
inline int left_child(int x) { return 2*x+1; }
inline int right_child(int x) { return 2*x+2; }
</pre>
<p>Can each be replaced by a single <tt>lea</tt> instruction. Assuming the parameter value is passed through <tt>eax</tt>, <tt>left_child</tt> should compile to <tt>lea eax,2*eax+1</tt>. Since the normal calling convention for Intel is to return integer types through <tt>eax</tt>, we&#8217;re done.</p>
<p align="center">*<br />*&#8195;*</p>
<p>If you think this addressing scheme is way cool, you&#8217;ll find even more interesting that the scheme dates from <em>way back</em> [<a href="#ref-1">1</a>]. Although Williams considers it only in terms of a binary heap (for <a href="http://en.wikipedia.org/wiki/Heap_sort" target="_blank">heap sort</a>) and that expresses the addressing relations only in terms of the address of the parent; one can understand through that very terse paper (a page and a few lines) that the addressing can be generalized. Williams&#8217; paper is the earliest reference I could find on the addressing scheme. However, I am not sure that it is the original paper; surely the 1964 C.ACM report is based on earlier work?</p>
<hr width="30%" align="left">
<a name="ref-1"></a>[1] J. W. J. Williams &#8212;&#160;<i>Algorithm 232: Heap Sort</i>&#160;&#8212; C. ACM, vol. 7 n° 6 (1964) pp. 347&#8211;348 [at the <a href="http://portal.acm.org/citation.cfm?doid=512274.51228" target="_blank">ACM (account required)</a>]</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[CACM has a new birth]]></title>
<link>http://ss.emergic.org/2008/06/23/cacm-has-a-new-birth/</link>
<pubDate>Mon, 23 Jun 2008 16:54:57 +0000</pubDate>
<dc:creator>ssemergic</dc:creator>
<guid>http://ss.emergic.org/2008/06/23/cacm-has-a-new-birth/</guid>
<description><![CDATA[The Association of Computing Machinery (ACM), the first society in computing, re-launched its flagsh]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">The Association of Computing Machinery (ACM), the first society in computing, re-launched its flagship magazine &#8220;Communications&#8221; today with July 2008 edition. </span></h4>
<h4 style="text-align:justify;margin:auto 0;"><span style="font-family:Arial;" lang="EN">For many of us used to CACM (the way Communications is called) since 70’s, it is indeed heartening to see the transformation in</span></h4>
<ul>
<li>
<h4 style="text-align:justify;margin:auto 0;"><span style="font-family:Arial;" lang="EN">Content</span></h4>
</li>
<li>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">Layout</span></h4>
</li>
<li>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">Design</span></h4>
</li>
</ul>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">And</span></h4>
<ul>
<li>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">Branding</span></h4>
</li>
</ul>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">It is refreshingly pleasing to the eyes; there is depth in content; consistency in style; and, clarity in addressing the different stake holders. </span></h4>
<h4 style="margin:auto 0;"><span style="font-family:Arial;" lang="EN">I am sure CACM over the next one year will claim its exalted position within computing literature.</span></h4>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[La seguridad importa]]></title>
<link>http://omniumpotentior.wordpress.com/2008/05/04/la-seguridad-importa/</link>
<pubDate>Sun, 04 May 2008 12:05:28 +0000</pubDate>
<dc:creator>Death Master</dc:creator>
<guid>http://omniumpotentior.wordpress.com/2008/05/04/la-seguridad-importa/</guid>
<description><![CDATA[La semana pasada, unos días antes de irme a Toulouse, estuve echando un vistazo al número de abril d]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>La semana pasada, unos días antes de irme a <a href="http://es.wikipedia.org/wiki/Toulouse" target="_blank">Toulouse</a>, estuve echando un vistazo al número de abril de la revista científica <a href="http://www.acm.org/publications/cacm/" target="_blank">Communications of the ACM</a>, una publicación periódica de la <a href="http://www.acm.org/" target="_blank"><acronym title="Association for Computing Machinery">ACM</acronym></a>. Lo interesante es que en <a href="http://portalparts.acm.org/1340000/1330311/fm/frontmatter.pdf" target="_blank">portada</a> de dicho número (<a href="http://portal.acm.org/toc.cfm?id=1330311&#38;coll=ACM&#38;dl=ACM&#38;type=issue&#38;idx=J79&#38;part=magazine&#38;WantType=Magazines&#38;title=Communications%20of%20the%20ACM&#38;CFID=66487587&#38;CFTOKEN=89094974" target="_blank">volume 51, number 4</a>) encontramos, curiosamente, la seguridad como tema principal, con un artículo de Ryan West (investigador de <a href="http://www.dell.com/" target="_blank">Dell</a>) titulado &#8220;<em>The psychology of scurity</em>&#8220;, que viene acompañado del más curioso aún subtítulo &#8220;<em>Why do users make bad decisions?</em>&#8220;.</p>
<p>El artículo analiza justamente lo que su subtítulo deja adivinar: ciertos aspectos que hacen a los usuarios correr riesgos de seguridad, en la mayoría de los casos innecesarios. Desde aspectos psicológicos, como la falsa sensación de seguridad, hasta aspectos de diseño, como el formato de las ventanas emergentes de alerta, y pasando por problemas técnicos, como la abstracción del término &#8220;seguridad&#8221;; el autor realiza un brillante análisis de la situación actual de la seguridad a nivel de usuario, planteando ciertos escenarios como ejemplo.</p>
<p>Pero no es el único artículo relacionado con la seguridad en este número, pues también encontramos un artículo de Hal Berghel titulado &#8220;<em>Faith-Based Security</em>&#8220;, más brillante aún si cabe que el anterior, a pesar de no ser el artículo central de la revista. En este texto, el autor realiza una ácida crítica de los sistemas que denomina de &#8220;seguridad basada en la fé&#8221;, particularmente de la filosofía de <a href="http://en.wikipedia.org/wiki/Security_through_obscurity" target="_blank"><em>security through obscurity</em></a>. Analizando ejemplos como el cifrado <a href="http://en.wikipedia.org/wiki/Wired_Equivalent_Privacy" target="_blank">WEP</a>, el desbordamiento de <em>buffer</em> de la extensión ISAPI de Windows [<a href="http://www.ciac.org/ciac/bulletins/l-098.shtml" target="_blank">1</a>], o la famosa y reciente vulnerabilidad del cifrado <a href="http://www.nxp.com/products/identification/mifare/classic/" target="_blank">MIFARE</a> en chips <a href="http://es.wikipedia.org/wiki/RFID" target="_blank">RFID</a> (de la cual hablé <a href="http://omniumpotentior.wordpress.com/2008/03/13/mas-madera-sobre-rfid/" target="_blank">aquí</a>); Berghel rompe una lanza en favor del <a href="http://en.wikipedia.org/wiki/Full_disclosure" target="_blank"><em>full disclosure</em></a>, aportando argumentos sobre su idoneidad en el desarrollo de la seguridad informática.</p>
<p>Hay un par de artículos más que me interesan, y que aún no he tenido tiempo de leer, titulados &#8220;Disk is the new RAM&#8221; y &#8220;The business of Open Source&#8221; respectivamente. A ver cuándo les puedo echar un ojo.</p>
<p>En cualquier caso, siempre es una agradable sorpresa ver que en publicaciones serias -más aún si tienen tanta tradición como la que comento- la seguridad informática tiene cabida, y más aún si el tema es tratado de una forma tan coherente, alejándose de intereses comerciales y la larga sombra de determinadas compañías&#8230;</p>
<p style="text-align:center;"><img class="size-full wp-image-237" src="http://omniumpotentior.wordpress.com/files/2008/05/cacm_51_4.jpg" alt="Portada CACM 51_4" width="129" height="171" /></p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
