<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Our Experiences Switching to Python</title>
	<atom:link href="http://third-bit.com/blog/archives/2834.html/feed" rel="self" type="application/rss+xml" />
	<link>http://third-bit.com/blog/archives/2834.html</link>
	<description>Data is ones and zeroes &#124; Software is ones and zeroes and hard work.</description>
	<lastBuildDate>Fri, 03 Feb 2012 17:07:30 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Dairon Medina</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2924</link>
		<dc:creator>Dairon Medina</dc:creator>
		<pubDate>Thu, 08 Apr 2010 16:03:37 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2924</guid>
		<description>I recommend pyGTK for GUI programing , its easy to develop and works on the 3 plataforms</description>
		<content:encoded><![CDATA[<p>I recommend pyGTK for GUI programing , its easy to develop and works on the 3 plataforms</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Gries</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2923</link>
		<dc:creator>Paul Gries</dc:creator>
		<pubDate>Mon, 26 Oct 2009 18:49:05 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2923</guid>
		<description>Robert Kern asks: &quot;I find PyQt quite usable on all of the Big Three platforms. What do you see as problematic?&quot;

One issue we&#039;re dealing with is that a significant number (20%, perhaps?) of the students in our intro course are not planning to major in computer science, and they are not technically savvy.  Heck, the majority of our students have never programmed before.  Every extra step can cause a lot of pain.

So: the main issue we have with PyQt is with the installation, at least on OS X:

  http://www.oak-tree.us/blog/index.php/2009/05/12/pyqt-mac

Most students want to work on their own computers, but asking new programmers to follow those instructions would lead to mass confusion, and a mass exodus from the course when they can&#039;t get it to work.</description>
		<content:encoded><![CDATA[<p>Robert Kern asks: &#8220;I find PyQt quite usable on all of the Big Three platforms. What do you see as problematic?&#8221;</p>
<p>One issue we&#8217;re dealing with is that a significant number (20%, perhaps?) of the students in our intro course are not planning to major in computer science, and they are not technically savvy.  Heck, the majority of our students have never programmed before.  Every extra step can cause a lot of pain.</p>
<p>So: the main issue we have with PyQt is with the installation, at least on OS X:</p>
<p>  <a href="http://www.oak-tree.us/blog/index.php/2009/05/12/pyqt-mac" rel="nofollow">http://www.oak-tree.us/blog/index.php/2009/05/12/pyqt-mac</a></p>
<p>Most students want to work on their own computers, but asking new programmers to follow those instructions would lead to mass confusion, and a mass exodus from the course when they can&#8217;t get it to work.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adriano</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2922</link>
		<dc:creator>Adriano</dc:creator>
		<pubDate>Mon, 14 Sep 2009 14:40:36 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2922</guid>
		<description>@Gary: do you pretend to understand a language before learning it? Python is (even in the cases mentioned) as readable as possible, but not more.

Heck, since recent versions, the error printed when calling h() is a very understandable
Traceback (most recent call last):
  File &quot;&quot;, line 1, in
  File &quot;&quot;, line 2, in h
UnboundLocalError: local variable &#039;i&#039; referenced before assignment</description>
		<content:encoded><![CDATA[<p>@Gary: do you pretend to understand a language before learning it? Python is (even in the cases mentioned) as readable as possible, but not more.</p>
<p>Heck, since recent versions, the error printed when calling h() is a very understandable<br />
Traceback (most recent call last):<br />
  File &#8220;&#8221;, line 1, in<br />
  File &#8220;&#8221;, line 2, in h<br />
UnboundLocalError: local variable &#8216;i&#8217; referenced before assignment</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gary Baumgartner</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2921</link>
		<dc:creator>Gary Baumgartner</dc:creator>
		<pubDate>Thu, 03 Sep 2009 22:06:37 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2921</guid>
		<description>The three scope examples, as well as some of the other problems mentioned, and others I&#039;ve encountered students having, suggest that Python isn&#039;t as &quot;readable&quot; as claimed, unless &quot;readable&quot; doesn&#039;t include &quot;with the correct meaning&quot;.</description>
		<content:encoded><![CDATA[<p>The three scope examples, as well as some of the other problems mentioned, and others I&#8217;ve encountered students having, suggest that Python isn&#8217;t as &#8220;readable&#8221; as claimed, unless &#8220;readable&#8221; doesn&#8217;t include &#8220;with the correct meaning&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Blog post on U. Toronto&#8217;s switch to Python (and Media Computation) &#171; Computing Education Blog</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2920</link>
		<dc:creator>Blog post on U. Toronto&#8217;s switch to Python (and Media Computation) &#171; Computing Education Blog</dc:creator>
		<pubDate>Mon, 31 Aug 2009 17:34:59 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2920</guid>
		<description>[...] 31, 2009   Nice blog post about U. Toronto&#8217;s switch to Python. They used Media Computation as a starting point, but [...]</description>
		<content:encoded><![CDATA[<p>[...] 31, 2009   Nice blog post about U. Toronto&#8217;s switch to Python. They used Media Computation as a starting point, but [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Weekend miscellany &#8212; The Endeavour</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2919</link>
		<dc:creator>Weekend miscellany &#8212; The Endeavour</dc:creator>
		<pubDate>Sat, 29 Aug 2009 13:41:49 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2919</guid>
		<description>[...] Moving CS classes from Java to Python The status of N = NP More on the problem of email Psake, a build automation tool written in PowerShell [...]</description>
		<content:encoded><![CDATA[<p>[...] Moving CS classes from Java to Python The status of N = NP More on the problem of email Psake, a build automation tool written in PowerShell [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Kern</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2918</link>
		<dc:creator>Robert Kern</dc:creator>
		<pubDate>Tue, 25 Aug 2009 22:28:09 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2918</guid>
		<description>I mostly agree with David about __vars. If you are going to teach CS using a dynamic language, I think you should teach dynamic idioms. Enforced information hiding is perhaps useful in other languages with more segfaults.

Interfaces, perhaps via ABCs, might be a better way to teach the good information hiding practices that are general across languages.</description>
		<content:encoded><![CDATA[<p>I mostly agree with David about __vars. If you are going to teach CS using a dynamic language, I think you should teach dynamic idioms. Enforced information hiding is perhaps useful in other languages with more segfaults.</p>
<p>Interfaces, perhaps via ABCs, might be a better way to teach the good information hiding practices that are general across languages.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Wolever</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2917</link>
		<dc:creator>David Wolever</dc:creator>
		<pubDate>Tue, 25 Aug 2009 20:06:15 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2917</guid>
		<description>Noo! Don’t use the stupid double underscore! Never! Ever! They have a very particular use, and using them for anything else (ie, information hiding) is no good.

Single underscore is fine – in Python-speak, it’s analogous to protected in Java. Double underscore is equivalent to Java’s “private”, which is almost never &quot;what you actually want&quot;.

IMO, it should be noted that the double underscore magic exists, but should not be used unless you’ve got a really, really good reason.

Also, IMO, go for properties: getters/setters aren’t incredibly “pythonic”, and encourage the writing of “busy code”. With properties, you can start out using variables, then when you realize you need more logic, you can replace them with with properties.</description>
		<content:encoded><![CDATA[<p>Noo! Don’t use the stupid double underscore! Never! Ever! They have a very particular use, and using them for anything else (ie, information hiding) is no good.</p>
<p>Single underscore is fine – in Python-speak, it’s analogous to protected in Java. Double underscore is equivalent to Java’s “private”, which is almost never &#8220;what you actually want&#8221;.</p>
<p>IMO, it should be noted that the double underscore magic exists, but should not be used unless you’ve got a really, really good reason.</p>
<p>Also, IMO, go for properties: getters/setters aren’t incredibly “pythonic”, and encourage the writing of “busy code”. With properties, you can start out using variables, then when you realize you need more logic, you can replace them with with properties.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aran Donohue</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2916</link>
		<dc:creator>Aran Donohue</dc:creator>
		<pubDate>Tue, 25 Aug 2009 18:53:41 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2916</guid>
		<description>These days, why teach form-GUI programming at all? Desktop apps are built in interface builders, or they&#039;re games. Web GUIs are the common case now, and they&#039;re built in totally different ways.</description>
		<content:encoded><![CDATA[<p>These days, why teach form-GUI programming at all? Desktop apps are built in interface builders, or they&#8217;re games. Web GUIs are the common case now, and they&#8217;re built in totally different ways.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Kern</title>
		<link>http://third-bit.com/blog/archives/2834.html#comment-2915</link>
		<dc:creator>Robert Kern</dc:creator>
		<pubDate>Tue, 25 Aug 2009 18:39:10 +0000</pubDate>
		<guid isPermaLink="false">http://pyre.third-bit.com/blog/?p=2834#comment-2915</guid>
		<description>I find PyQt quite usable on all of the Big Three platforms. What do you see as problematic?</description>
		<content:encoded><![CDATA[<p>I find PyQt quite usable on all of the Big Three platforms. What do you see as problematic?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

