<?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 for RobG3D</title>
	<atom:link href="http://www.robg3d.com/?feed=comments-rss2" rel="self" type="application/rss+xml" />
	<link>http://www.robg3d.com</link>
	<description>Website and Blog of Rob Galanakis: Tools Programmer, Technical Artist/Animator</description>
	<lastBuildDate>Fri, 24 May 2013 20:01:11 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>Comment on Taking your dog to Iceland by Judith</title>
		<link>http://www.robg3d.com/?p=1044&#038;cpage=1#comment-71117</link>
		<dc:creator>Judith</dc:creator>
		<pubDate>Fri, 24 May 2013 20:01:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1044#comment-71117</guid>
		<description><![CDATA[Rob, thank you so much for this very helpul post on your experience! My dog is of the nervous kind and I am not sure if everything would turn out as smoothely with her as with your Shoni. I am happy for you that you all can be together now in Iceland.]]></description>
		<content:encoded><![CDATA[<p>Rob, thank you so much for this very helpul post on your experience! My dog is of the nervous kind and I am not sure if everything would turn out as smoothely with her as with your Shoni. I am happy for you that you all can be together now in Iceland.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Python Enrichment and PitP by charles</title>
		<link>http://www.robg3d.com/?p=1071&#038;cpage=1#comment-56612</link>
		<dc:creator>charles</dc:creator>
		<pubDate>Fri, 01 Feb 2013 08:02:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1071#comment-56612</guid>
		<description><![CDATA[BIG FAN OF CCP ESP. DUST 514 I JUST WANTED TIPS ON HOW I CAN ONE DAY BE GAME DEVELOPER : AI DEVELOPMENT]]></description>
		<content:encoded><![CDATA[<p>BIG FAN OF CCP ESP. DUST 514 I JUST WANTED TIPS ON HOW I CAN ONE DAY BE GAME DEVELOPER : AI DEVELOPMENT</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Python Enrichment and PitP by The Vengur</title>
		<link>http://www.robg3d.com/?p=1071&#038;cpage=1#comment-56391</link>
		<dc:creator>The Vengur</dc:creator>
		<pubDate>Thu, 31 Jan 2013 16:16:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1071#comment-56391</guid>
		<description><![CDATA[Hey!, you should return to Total War Center!]]></description>
		<content:encoded><![CDATA[<p>Hey!, you should return to Total War Center!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on A lead shouldn&#8217;t lead like lead. by Python Enrichment and PitP &#124; RobG3D</title>
		<link>http://www.robg3d.com/?p=404&#038;cpage=1#comment-54635</link>
		<dc:creator>Python Enrichment and PitP &#124; RobG3D</dc:creator>
		<pubDate>Fri, 18 Jan 2013 16:39:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=404#comment-54635</guid>
		<description><![CDATA[[...] I was starting my job at CCP, I posted about some things I wanted to do as a lead. I&#8217;ve been through two releases with the Tech Art Group in Iceland (and for the past 6 months [...]]]></description>
		<content:encoded><![CDATA[<p>[...] I was starting my job at CCP, I posted about some things I wanted to do as a lead. I&#8217;ve been through two releases with the Tech Art Group in Iceland (and for the past 6 months [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Decisions, decisions by Joe</title>
		<link>http://www.robg3d.com/?p=1022&#038;cpage=1#comment-54303</link>
		<dc:creator>Joe</dc:creator>
		<pubDate>Wed, 16 Jan 2013 19:50:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1022#comment-54303</guid>
		<description><![CDATA[I&#039;m going to go a step further and state:

&quot;Anything which can be automated, should be.&quot;

There&#039;s always more projects and not enough time to handle them all. The less work we have to do on tasks that can be automated, the more time we have for the rest of it.]]></description>
		<content:encoded><![CDATA[<p>I&#8217;m going to go a step further and state:</p>
<p>&#8220;Anything which can be automated, should be.&#8221;</p>
<p>There&#8217;s always more projects and not enough time to handle them all. The less work we have to do on tasks that can be automated, the more time we have for the rest of it.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by chris</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-54194</link>
		<dc:creator>chris</dc:creator>
		<pubDate>Tue, 15 Jan 2013 22:13:50 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-54194</guid>
		<description><![CDATA[&lt;a href=&quot;#comment-54053&quot; rel=&quot;nofollow&quot;&gt;@Adam Skutt&lt;/a&gt; 
You know what&#039;s also unsafe? Parsing and executing Python through an application like Maya.. You guys should quit.]]></description>
		<content:encoded><![CDATA[<p><a href="#comment-54053" rel="nofollow">@Adam Skutt</a><br />
You know what&#8217;s also unsafe? Parsing and executing Python through an application like Maya.. You guys should quit.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Maya and PyCharm by Andrey Vlasovskikh</title>
		<link>http://www.robg3d.com/?p=1061&#038;cpage=1#comment-54174</link>
		<dc:creator>Andrey Vlasovskikh</dc:creator>
		<pubDate>Tue, 15 Jan 2013 17:49:26 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1061#comment-54174</guid>
		<description><![CDATA[Thanks for your post! These notes will be useful for anyone starting with Maya and PyCharm. Unfortunately, Maya is not on the roadmap for PyCharm 2.7, but we may improve Maya support in the future releases. There are several bug reports and feature requests in PyCharm&#039;s tracker , please vote for them to get notifications about the progress.]]></description>
		<content:encoded><![CDATA[<p>Thanks for your post! These notes will be useful for anyone starting with Maya and PyCharm. Unfortunately, Maya is not on the roadmap for PyCharm 2.7, but we may improve Maya support in the future releases. There are several bug reports and feature requests in PyCharm&#8217;s tracker , please vote for them to get notifications about the progress.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by Adam Skutt</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-54053</link>
		<dc:creator>Adam Skutt</dc:creator>
		<pubDate>Mon, 14 Jan 2013 12:53:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-54053</guid>
		<description><![CDATA[There&#039;s lots of questionable advice here.  I&#039;m not sure you fully understand temporary file-race issues, and why they are so dangerous.

You should never, ever just generate a temporary file name, unless you&#039;re going to write into a secure directory.  A secure directory is one that no one else can write into (except root) and the same holds for all parent directories (or the sticky bit is set).  Otherwise, you open yourself up to race attacks.

Temporary filenames in sticky directories (e.g., /tmp) are only safe to use as long as the file itself exists.  Once the file is gone, the name isn&#039;t usable either.  Suitably paranoid code would check that the directory is sticky before creating the file and using the name.

In general, all of this means you should write code that never looks at, or cares about, the name of a temporary file.     If you care about the name, you must be very careful.  In those cases, it&#039;s probably easiest to securely create a temporary directory, then create the files in there.

This code:
“mkstemp(dir=os.path.join(gettempdir(), ‘myscratchfiles’))“ is insecure because someone else could make myscratchfiles into a symlink.  It could be used to write a temporary file into an attacker controlled place, which opens you to attack if you reuse the filename (i.e., close the descriptor and open the same name again).  Likewise, your last paragraph is only safe because you use mkstemp and not one of the other functions.

The simplest way to ensure temporary files and directories get cleaned up is to just use tempfile.TemporaryFile where appropriate, or a context manager when not appropriate.  If you&#039;re finding management of temporary files difficult, then you&#039;re most likely structuring your code incorrectly.]]></description>
		<content:encoded><![CDATA[<p>There&#8217;s lots of questionable advice here.  I&#8217;m not sure you fully understand temporary file-race issues, and why they are so dangerous.</p>
<p>You should never, ever just generate a temporary file name, unless you&#8217;re going to write into a secure directory.  A secure directory is one that no one else can write into (except root) and the same holds for all parent directories (or the sticky bit is set).  Otherwise, you open yourself up to race attacks.</p>
<p>Temporary filenames in sticky directories (e.g., /tmp) are only safe to use as long as the file itself exists.  Once the file is gone, the name isn&#8217;t usable either.  Suitably paranoid code would check that the directory is sticky before creating the file and using the name.</p>
<p>In general, all of this means you should write code that never looks at, or cares about, the name of a temporary file.     If you care about the name, you must be very careful.  In those cases, it&#8217;s probably easiest to securely create a temporary directory, then create the files in there.</p>
<p>This code:<br />
“mkstemp(dir=os.path.join(gettempdir(), ‘myscratchfiles’))“ is insecure because someone else could make myscratchfiles into a symlink.  It could be used to write a temporary file into an attacker controlled place, which opens you to attack if you reuse the filename (i.e., close the descriptor and open the same name again).  Likewise, your last paragraph is only safe because you use mkstemp and not one of the other functions.</p>
<p>The simplest way to ensure temporary files and directories get cleaned up is to just use tempfile.TemporaryFile where appropriate, or a context manager when not appropriate.  If you&#8217;re finding management of temporary files difficult, then you&#8217;re most likely structuring your code incorrectly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by Antonio</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-54044</link>
		<dc:creator>Antonio</dc:creator>
		<pubDate>Mon, 14 Jan 2013 10:37:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-54044</guid>
		<description><![CDATA[I think a context manager is a better overall solution:

class cdinto(object):
  def __enter__(...)
    -&gt; create the temp dir
  def __exit__(...)
    -&gt; remove the leftovers

and wrapping the main with:
  with cdinto() as tmp:
    main()

Much easier;)]]></description>
		<content:encoded><![CDATA[<p>I think a context manager is a better overall solution:</p>
<p>class cdinto(object):<br />
  def __enter__(&#8230;)<br />
    -&gt; create the temp dir<br />
  def __exit__(&#8230;)<br />
    -&gt; remove the leftovers</p>
<p>and wrapping the main with:<br />
  with cdinto() as tmp:<br />
    main()</p>
<p>Much easier;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by Roger</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-54009</link>
		<dc:creator>Roger</dc:creator>
		<pubDate>Mon, 14 Jan 2013 04:17:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-54009</guid>
		<description><![CDATA[Always use the prefix option when making temp files giving the name of your script/module/library/function as appropriate.  That way examination of the temp directory will tell you who is to blame for files and makes manual cleanup easier, not to mention detecting bugs in the cleanup of files when you do an &quot;ls&quot; and see many files with your prefix!]]></description>
		<content:encoded><![CDATA[<p>Always use the prefix option when making temp files giving the name of your script/module/library/function as appropriate.  That way examination of the temp directory will tell you who is to blame for files and makes manual cleanup easier, not to mention detecting bugs in the cleanup of files when you do an &#8220;ls&#8221; and see many files with your prefix!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by Mumm</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-53984</link>
		<dc:creator>Mumm</dc:creator>
		<pubDate>Sun, 13 Jan 2013 21:47:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-53984</guid>
		<description><![CDATA[I would also recommend keeping temp files around for helping with debugging.]]></description>
		<content:encoded><![CDATA[<p>I would also recommend keeping temp files around for helping with debugging.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Best practices for temp files by Adam</title>
		<link>http://www.robg3d.com/?p=1060&#038;cpage=1#comment-53969</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Sun, 13 Jan 2013 17:39:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1060#comment-53969</guid>
		<description><![CDATA[Thanks! I actually never knew about the tempfile module.]]></description>
		<content:encoded><![CDATA[<p>Thanks! I actually never knew about the tempfile module.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development directors? by Adam</title>
		<link>http://www.robg3d.com/?p=1051&#038;cpage=1#comment-52093</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Tue, 18 Dec 2012 17:31:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1051#comment-52093</guid>
		<description><![CDATA[I wouldn&#039;t say it&#039;s any less clear to me than &quot;technical artist,&quot; &quot;game designer,&quot; or &quot;game programmer.&quot; In my case, it&#039;s a question of the level of granularity that matters as a function of a) social context in which I&#039;m presenting myself and b) organization size. In some of the circles in which I traffic, it&#039;s meaningful because it is a management role that is clearly different from other common directorial positions (e.g., Director of Research, Director of Curriculum), and a title like &quot;producer&quot; or &quot;project manager&quot; would be equally ambiguous in many situations (e.g., to a governmental agency, foundation, or other funding body). On the basis of organization size, it&#039;s not sensible to discriminate more (e.g., Art Director, Technical Director).

Basically, like any question of language, it is primarily a question of context. Would the title make sense to use with people who are professional game developers by trade? Probably not (though, as I mentioned, I think there are plenty of vague titles we use without batting an eyelash—I think I&#039;d be hard pressed to not put my understanding of &quot;game designer&quot; into the same category as your &quot;development director&quot;). If I&#039;m out of &quot;Lead Developer&quot; or &quot;Programmer&quot; business cards though, and I&#039;m feeling lazy, then I&#039;ll probably be &quot;Development Director&quot; or something like that, mostly because of the uselessness of titles in my situation generally (I&#039;m not trying to apply for jobs, for instance). I&#039;m pretty sure I&#039;ve had dumber titles printed on my GDC badge before ;)]]></description>
		<content:encoded><![CDATA[<p>I wouldn&#8217;t say it&#8217;s any less clear to me than &#8220;technical artist,&#8221; &#8220;game designer,&#8221; or &#8220;game programmer.&#8221; In my case, it&#8217;s a question of the level of granularity that matters as a function of a) social context in which I&#8217;m presenting myself and b) organization size. In some of the circles in which I traffic, it&#8217;s meaningful because it is a management role that is clearly different from other common directorial positions (e.g., Director of Research, Director of Curriculum), and a title like &#8220;producer&#8221; or &#8220;project manager&#8221; would be equally ambiguous in many situations (e.g., to a governmental agency, foundation, or other funding body). On the basis of organization size, it&#8217;s not sensible to discriminate more (e.g., Art Director, Technical Director).</p>
<p>Basically, like any question of language, it is primarily a question of context. Would the title make sense to use with people who are professional game developers by trade? Probably not (though, as I mentioned, I think there are plenty of vague titles we use without batting an eyelash—I think I&#8217;d be hard pressed to not put my understanding of &#8220;game designer&#8221; into the same category as your &#8220;development director&#8221;). If I&#8217;m out of &#8220;Lead Developer&#8221; or &#8220;Programmer&#8221; business cards though, and I&#8217;m feeling lazy, then I&#8217;ll probably be &#8220;Development Director&#8221; or something like that, mostly because of the uselessness of titles in my situation generally (I&#8217;m not trying to apply for jobs, for instance). I&#8217;m pretty sure I&#8217;ve had dumber titles printed on my GDC badge before ;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development directors? by Rob Galanakis</title>
		<link>http://www.robg3d.com/?p=1051&#038;cpage=1#comment-52092</link>
		<dc:creator>Rob Galanakis</dc:creator>
		<pubDate>Tue, 18 Dec 2012 16:55:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1051#comment-52092</guid>
		<description><![CDATA[Right Adam, but isn&#039;t the title &#039;Development Director&#039; inherently unclearly defined? Ie, what is that person supposed to &#039;direct&#039;? Isn&#039;t &#039;development director&#039; as a title a red flag that a person (or at least the role) isn&#039;t useful because it fundamentally cannot be defined? (or can it?)]]></description>
		<content:encoded><![CDATA[<p>Right Adam, but isn&#8217;t the title &#8216;Development Director&#8217; inherently unclearly defined? Ie, what is that person supposed to &#8216;direct&#8217;? Isn&#8217;t &#8216;development director&#8217; as a title a red flag that a person (or at least the role) isn&#8217;t useful because it fundamentally cannot be defined? (or can it?)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development directors? by Anonymous</title>
		<link>http://www.robg3d.com/?p=1051&#038;cpage=1#comment-52084</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Tue, 18 Dec 2012 15:09:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1051#comment-52084</guid>
		<description><![CDATA[I call all of them &quot;managers&quot;. I do not care about the fancy names because they are not usually standarised through the entire industry...

Probably, your &quot;Development Director&quot; is called different by other people...]]></description>
		<content:encoded><![CDATA[<p>I call all of them &#8220;managers&#8221;. I do not care about the fancy names because they are not usually standarised through the entire industry&#8230;</p>
<p>Probably, your &#8220;Development Director&#8221; is called different by other people&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development directors? by Dmitry</title>
		<link>http://www.robg3d.com/?p=1051&#038;cpage=1#comment-52079</link>
		<dc:creator>Dmitry</dc:creator>
		<pubDate>Tue, 18 Dec 2012 14:30:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1051#comment-52079</guid>
		<description><![CDATA[I have never met a person who can be called Development Director, but I have seen good examples of:

1. Project Manager Assistant, who was in charge of checking the routine like plans/reports and responsible for proper meeting organization (agenda, fup, checks of was actually done after the meeting)

2. Production Lead, who was responsible for creating&#124;managing the art production (both internal team and external outsource individuals and studios) including synchronization with programmers and designers]]></description>
		<content:encoded><![CDATA[<p>I have never met a person who can be called Development Director, but I have seen good examples of:</p>
<p>1. Project Manager Assistant, who was in charge of checking the routine like plans/reports and responsible for proper meeting organization (agenda, fup, checks of was actually done after the meeting)</p>
<p>2. Production Lead, who was responsible for creating|managing the art production (both internal team and external outsource individuals and studios) including synchronization with programmers and designers</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Development directors? by Adam</title>
		<link>http://www.robg3d.com/?p=1051&#038;cpage=1#comment-52075</link>
		<dc:creator>Adam</dc:creator>
		<pubDate>Tue, 18 Dec 2012 13:05:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1051#comment-52075</guid>
		<description><![CDATA[I think this is just title hangup, honestly, and the more general takeaway is something like &quot;roles whose responsibilities and value to the organization are not clearly defined are useless.&quot;  The only times I&#039;ve encountered this particular title myself is in small organizations where something like &quot;producer&quot; or &quot;project manager&quot; doesn&#039;t adequately capture the range of responsibilities, and usually in these cases everyone else is just &quot;developer&quot; or something. The titles are just arbitrary business card fluff--I mean, some cards that I hand people say &quot;development director,&quot; some say &quot;lead developer,&quot; and so on. What matters more is that the people with whom I work know my particular strengths and know when to come to me versus someone else when they need help.]]></description>
		<content:encoded><![CDATA[<p>I think this is just title hangup, honestly, and the more general takeaway is something like &#8220;roles whose responsibilities and value to the organization are not clearly defined are useless.&#8221;  The only times I&#8217;ve encountered this particular title myself is in small organizations where something like &#8220;producer&#8221; or &#8220;project manager&#8221; doesn&#8217;t adequately capture the range of responsibilities, and usually in these cases everyone else is just &#8220;developer&#8221; or something. The titles are just arbitrary business card fluff&#8211;I mean, some cards that I hand people say &#8220;development director,&#8221; some say &#8220;lead developer,&#8221; and so on. What matters more is that the people with whom I work know my particular strengths and know when to come to me versus someone else when they need help.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Python Singletons by Jason</title>
		<link>http://www.robg3d.com/?p=1021&#038;cpage=1#comment-50423</link>
		<dc:creator>Jason</dc:creator>
		<pubDate>Wed, 21 Nov 2012 15:07:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1021#comment-50423</guid>
		<description><![CDATA[I struggled with this a bit, coming from Java I suppose.  I currently don&#039;t have any cases multiple instances would cause harm, but they would be pointless.  My answer is to design the class as I normally would then provide a module level instance as the default instance.

I do sometimes need a module level initialization function, if the class being used as a singleton requires some sort of configuration to be provided by the library user though.]]></description>
		<content:encoded><![CDATA[<p>I struggled with this a bit, coming from Java I suppose.  I currently don&#8217;t have any cases multiple instances would cause harm, but they would be pointless.  My answer is to design the class as I normally would then provide a module level instance as the default instance.</p>
<p>I do sometimes need a module level initialization function, if the class being used as a singleton requires some sort of configuration to be provided by the library user though.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Python Singletons by Brian</title>
		<link>http://www.robg3d.com/?p=1021&#038;cpage=1#comment-50330</link>
		<dc:creator>Brian</dc:creator>
		<pubDate>Tue, 20 Nov 2012 04:55:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1021#comment-50330</guid>
		<description><![CDATA[I gotta agree with Kay. 
I use modules when I want a singleton.
However, I like the tone of the article. 
If you really have to implement a singleton solution, make it a simple implementation. 
That goes for every language. 
I&#039;ve seen tons of terrible versions in C++. 
But any design in python that requires a singleton that I&#039;ve been presented with could be solved with the module as object pattern.]]></description>
		<content:encoded><![CDATA[<p>I gotta agree with Kay.<br />
I use modules when I want a singleton.<br />
However, I like the tone of the article.<br />
If you really have to implement a singleton solution, make it a simple implementation.<br />
That goes for every language.<br />
I&#8217;ve seen tons of terrible versions in C++.<br />
But any design in python that requires a singleton that I&#8217;ve been presented with could be solved with the module as object pattern.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Python Singletons by Radomir</title>
		<link>http://www.robg3d.com/?p=1021&#038;cpage=1#comment-50231</link>
		<dc:creator>Radomir</dc:creator>
		<pubDate>Mon, 19 Nov 2012 09:56:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.robg3d.com/?p=1021#comment-50231</guid>
		<description><![CDATA[&lt;a href=&quot;#comment-50218&quot; rel=&quot;nofollow&quot;&gt;@Kay Hayen&lt;/a&gt;
It would be strange to use a module as a singleton with many mutable members. And performance of module lookup is noticeable lower.]]></description>
		<content:encoded><![CDATA[<p><a href="#comment-50218" rel="nofollow">@Kay Hayen</a><br />
It would be strange to use a module as a singleton with many mutable members. And performance of module lookup is noticeable lower.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
