<?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/"
	xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule"
	>
<channel>
	<title>Comments on: &#8220;That&#8217;s Not the Way I&#8217;d Do It&#8221;: Justifiable Homicide in 32 States</title>
	<atom:link href="http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/</link>
	<description>OOP Techniques for Flash and Flex Developers</description>
	<lastBuildDate>Sat, 28 Aug 2010 21:46:42 -0700</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-5248</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Sun, 20 Jun 2010 12:29:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-5248</guid>
		<description>Hi Since the 80&#039;s,

I agree with you that consulting with others is essential--on several different levels. First and last, you need to consult with your customer at length before setting down to write the code. Then there are other programmers with whom you are working. You have to craft a plan to work together and optimize any areas of expertise (e.g., the guy&#039;s who&#039;s good at SQL, the gal who&#039;s a great UI developer) and organize around a plan. Finally, if you&#039;re working in a big shop, coordinate with administration so that your resources don&#039;t dry up before the project is done—or you don&#039;t hog resources that are not used.

So on the issue of communication, we&#039;re in total agreement. The other issue is (as you so well put it) a matter of social etiquette. If you see something in another&#039;s program that you believe could be improved, you need to be delicate for two reasons. On the one hand, you don&#039;t want to sound like a jerk. That can be handled by the way you put it to the programmer. On the other hand, you may not understand the program and your suggestions are flat out wrong. So tread lightly. I can&#039;t tell you how many times I&#039;ve had some well-meaning comment suggest that I could &quot;save&quot; programming code by removing an interface!

As for your comments about &quot;elite&quot; programming, you wouldn&#039;t be looking at this blog if you weren&#039;t interested in &lt;em&gt;elite&lt;/em&gt; programming. Let&#039;s face it, there&#039;s no such thing as &lt;strong&gt;elite programming&lt;/strong&gt;; so let&#039;s just drop that term here and now. We can distinguish about four types of programming:

&lt;ul&gt;
	&lt;li&gt;Sequential&lt;/li&gt;
	&lt;li&gt;Procedural&lt;/li&gt;
	&lt;li&gt;Object Oriented&lt;/li&gt;
	&lt;li&gt;Agile (including Design Patterns)&lt;/li&gt;
&lt;/ul&gt;

You might say that both agile programming and design patterns are just extensions of OOP, and you&#039;d get no argument from me. Here our focus is on good &lt;em&gt;Design Pattern&lt;/em&gt; programming in ActionScript 3.0 using OOP. It is difficult to learn and implement. Does that mean you&#039;re too dumb to learn it? Of course not. It means that while the transition from Sequential to Procedural programming is pretty easy, and from Procedural to OOP is a little more difficult, the transition to Design Patterns is more difficult still. 

At this point there are two directions you can take: 1) &lt;em&gt;I&#039;m too busy&lt;/em&gt;; 2) &lt;em&gt;I want to climb Mt. Everest&lt;/em&gt;. In terms of practicality, Design Patterns were developed for the practical work of getting programs done effectively and efficiently for businesses. An early sponsor was IBM, and they didn&#039;t do it because they&#039;re nice guys. They saw this kind of programming as practical; so I don&#039;t want to hear anything about Design Patterns being impractical. What&#039;s impractical is re-inventing the wheel every time you sit down to program.

I guess the title &quot;Since the &#039;80&#039;s&quot; indicates you&#039;ve programmed since the 1980&#039;s. That reminds me of a cop who would boast about having &quot;20 years experience&quot; and so he knew how to be a good police officer. One of the higher ranking officers pointed out that, 

&lt;blockquote&gt;the guy really has 1 year experience 20 times&lt;/blockquote&gt;

I know a programmer who was just like that. Instead of improving his programming skills by learning new programming techniques and approaches, he just learned more programming languages. So instead of growing taller, he just got fatter. That programmer was me. Now, I&#039;m glad I learned several different programming languages from machine language to PHP; but I really needed to become a better programmer. I was fortunate to run into the right people at the right time several years ago, and I migrated first to State Machines and then to Design Patterns. I attended several OOPSLA meetings (where design patterns were introduced) and got to know people who were a lot smarter about programming that I. I learned from them. Sure, I was the dumbest guy in the room; but after several years, I&#039;m not any more. Design patterns went from being hard to the only thing that is challenging enough to be interesting.

Cheers,
Bill

</description>
		<content:encoded><![CDATA[<p>Hi Since the 80&#8217;s,</p>
<p>I agree with you that consulting with others is essential&#8211;on several different levels. First and last, you need to consult with your customer at length before setting down to write the code. Then there are other programmers with whom you are working. You have to craft a plan to work together and optimize any areas of expertise (e.g., the guy&#8217;s who&#8217;s good at SQL, the gal who&#8217;s a great UI developer) and organize around a plan. Finally, if you&#8217;re working in a big shop, coordinate with administration so that your resources don&#8217;t dry up before the project is done—or you don&#8217;t hog resources that are not used.</p>
<p>So on the issue of communication, we&#8217;re in total agreement. The other issue is (as you so well put it) a matter of social etiquette. If you see something in another&#8217;s program that you believe could be improved, you need to be delicate for two reasons. On the one hand, you don&#8217;t want to sound like a jerk. That can be handled by the way you put it to the programmer. On the other hand, you may not understand the program and your suggestions are flat out wrong. So tread lightly. I can&#8217;t tell you how many times I&#8217;ve had some well-meaning comment suggest that I could &#8220;save&#8221; programming code by removing an interface!</p>
<p>As for your comments about &#8220;elite&#8221; programming, you wouldn&#8217;t be looking at this blog if you weren&#8217;t interested in <em>elite</em> programming. Let&#8217;s face it, there&#8217;s no such thing as <strong>elite programming</strong>; so let&#8217;s just drop that term here and now. We can distinguish about four types of programming:</p>
<ul>
<li>Sequential</li>
<li>Procedural</li>
<li>Object Oriented</li>
<li>Agile (including Design Patterns)</li>
</ul>
<p>You might say that both agile programming and design patterns are just extensions of OOP, and you&#8217;d get no argument from me. Here our focus is on good <em>Design Pattern</em> programming in ActionScript 3.0 using OOP. It is difficult to learn and implement. Does that mean you&#8217;re too dumb to learn it? Of course not. It means that while the transition from Sequential to Procedural programming is pretty easy, and from Procedural to OOP is a little more difficult, the transition to Design Patterns is more difficult still. </p>
<p>At this point there are two directions you can take: 1) <em>I&#8217;m too busy</em>; 2) <em>I want to climb Mt. Everest</em>. In terms of practicality, Design Patterns were developed for the practical work of getting programs done effectively and efficiently for businesses. An early sponsor was IBM, and they didn&#8217;t do it because they&#8217;re nice guys. They saw this kind of programming as practical; so I don&#8217;t want to hear anything about Design Patterns being impractical. What&#8217;s impractical is re-inventing the wheel every time you sit down to program.</p>
<p>I guess the title &#8220;Since the &#8217;80&#8217;s&#8221; indicates you&#8217;ve programmed since the 1980&#8217;s. That reminds me of a cop who would boast about having &#8220;20 years experience&#8221; and so he knew how to be a good police officer. One of the higher ranking officers pointed out that, </p>
<blockquote><p>the guy really has 1 year experience 20 times</p></blockquote>
<p>I know a programmer who was just like that. Instead of improving his programming skills by learning new programming techniques and approaches, he just learned more programming languages. So instead of growing taller, he just got fatter. That programmer was me. Now, I&#8217;m glad I learned several different programming languages from machine language to PHP; but I really needed to become a better programmer. I was fortunate to run into the right people at the right time several years ago, and I migrated first to State Machines and then to Design Patterns. I attended several OOPSLA meetings (where design patterns were introduced) and got to know people who were a lot smarter about programming that I. I learned from them. Sure, I was the dumbest guy in the room; but after several years, I&#8217;m not any more. Design patterns went from being hard to the only thing that is challenging enough to be interesting.</p>
<p>Cheers,<br />
Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: since the 80's</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-5247</link>
		<dc:creator>since the 80's</dc:creator>
		<pubDate>Sat, 19 Jun 2010 17:46:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-5247</guid>
		<description>One of the things I have seen for many years are people that code to code so that it looks complicated.  This obviously stems from either insecurity or an over inflated ego.  

The only real &#039;mistake&#039; being done, especially when dealing with DP is not to consult others before undertaking the development cycle.  More is less, think more, code less.

I and many other non elitist programmers have also come to see that most of the time, a pattern, even though well thought of, becomes restrictive and actually hinders the development process, in essence, it all comes down to polymorphism.

Being that programming is still in an infant stage (believe me) we fail to see while we standardize and regiment our methods the errors of other disciplines that have come across similar bottle necks in their evolution.  One could look at symbolic logic for example in order to see where thought and practicality are logically demonstrated not to meet in a reasonable manner.  

Theory is theory, and practice rarely resembles what the books say.

As for people with no social etiquette, well, thats the world we live in and its not about to change soon.  Change yourself and the world will change with you. :)</description>
		<content:encoded><![CDATA[<p>One of the things I have seen for many years are people that code to code so that it looks complicated.  This obviously stems from either insecurity or an over inflated ego.  </p>
<p>The only real &#8216;mistake&#8217; being done, especially when dealing with DP is not to consult others before undertaking the development cycle.  More is less, think more, code less.</p>
<p>I and many other non elitist programmers have also come to see that most of the time, a pattern, even though well thought of, becomes restrictive and actually hinders the development process, in essence, it all comes down to polymorphism.</p>
<p>Being that programming is still in an infant stage (believe me) we fail to see while we standardize and regiment our methods the errors of other disciplines that have come across similar bottle necks in their evolution.  One could look at symbolic logic for example in order to see where thought and practicality are logically demonstrated not to meet in a reasonable manner.  </p>
<p>Theory is theory, and practice rarely resembles what the books say.</p>
<p>As for people with no social etiquette, well, thats the world we live in and its not about to change soon.  Change yourself and the world will change with you. :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3952</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Mon, 01 Feb 2010 11:00:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3952</guid>
		<description>Hi Sharetut,

I agree with you. Readers of this blog know the language  and algorithms inside-out. It&#039;s always difficult to move from a functional understanding of a computer language to an understanding of OOP principles that are used together in design patterns. If anyone thinks they understand all of this the first time they look at it; they probably don&#039;t.

Thanks for your insights,
Bill</description>
		<content:encoded><![CDATA[<p>Hi Sharetut,</p>
<p>I agree with you. Readers of this blog know the language  and algorithms inside-out. It&#8217;s always difficult to move from a functional understanding of a computer language to an understanding of OOP principles that are used together in design patterns. If anyone thinks they understand all of this the first time they look at it; they probably don&#8217;t.</p>
<p>Thanks for your insights,<br />
Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sharedtut</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3948</link>
		<dc:creator>Sharedtut</dc:creator>
		<pubDate>Mon, 01 Feb 2010 03:02:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3948</guid>
		<description>It&#039;s all about patterns and practice. I think a lot of us
understand the language but not all interpret the same.</description>
		<content:encoded><![CDATA[<p>It&#8217;s all about patterns and practice. I think a lot of us<br />
understand the language but not all interpret the same.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3848</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Mon, 18 Jan 2010 09:20:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3848</guid>
		<description>Jonathan,

Lots of ways to skin a cat, and that&#039;s why it&#039;s important to differentiate the TNTWIDI from useful information. I suppose a better way of putting it is: &lt;blockquote&gt;By which criteria do we best judge our code?&lt;/blockquote&gt; If we can look for good criteria and communicate those ideas; then we&#039;re dealing with people who are sincerely interested in collectively moving ahead with understanding. However, when someone spouts out a TNTWIDI whenever they look at your code; then it&#039;s not too helpful.

Bill</description>
		<content:encoded><![CDATA[<p>Jonathan,</p>
<p>Lots of ways to skin a cat, and that&#8217;s why it&#8217;s important to differentiate the TNTWIDI from useful information. I suppose a better way of putting it is:<br />
<blockquote>By which criteria do we best judge our code?</p></blockquote>
<p> If we can look for good criteria and communicate those ideas; then we&#8217;re dealing with people who are sincerely interested in collectively moving ahead with understanding. However, when someone spouts out a TNTWIDI whenever they look at your code; then it&#8217;s not too helpful.</p>
<p>Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3846</link>
		<dc:creator>Jonathan</dc:creator>
		<pubDate>Sun, 17 Jan 2010 22:36:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3846</guid>
		<description>Some people just don&#039;t make good people.  I see life in the same light as Ziegler.  There&#039;s a lot of different ways to &quot;skin a cat&quot; and anyone who doesn&#039;t see that is doing their selves a great injustice.  But I guess it takes all kinds!</description>
		<content:encoded><![CDATA[<p>Some people just don&#8217;t make good people.  I see life in the same light as Ziegler.  There&#8217;s a lot of different ways to &#8220;skin a cat&#8221; and anyone who doesn&#8217;t see that is doing their selves a great injustice.  But I guess it takes all kinds!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3838</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Fri, 15 Jan 2010 10:15:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3838</guid>
		<description>Hi Curro,

We&#039;re going to be going over all of the basic relationships in design patterns, and that should add to a firm DP foundation.

Kindest regards,
Bill</description>
		<content:encoded><![CDATA[<p>Hi Curro,</p>
<p>We&#8217;re going to be going over all of the basic relationships in design patterns, and that should add to a firm DP foundation.</p>
<p>Kindest regards,<br />
Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Curro</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3836</link>
		<dc:creator>Curro</dc:creator>
		<pubDate>Thu, 14 Jan 2010 22:40:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3836</guid>
		<description>For me, that&#039;s definitely the way I&#039;d do it ... if I could. I&#039;m still a novice with both ActionScript and Design Patterns.

As for the original question for 2010 and beyond I am going to continue learning and using Design Patterns for my little educational applications. DPs have a sort of poison that make you want more and more. 

And they are fun!

Best wishes

Curro</description>
		<content:encoded><![CDATA[<p>For me, that&#8217;s definitely the way I&#8217;d do it &#8230; if I could. I&#8217;m still a novice with both ActionScript and Design Patterns.</p>
<p>As for the original question for 2010 and beyond I am going to continue learning and using Design Patterns for my little educational applications. DPs have a sort of poison that make you want more and more. </p>
<p>And they are fun!</p>
<p>Best wishes</p>
<p>Curro</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3834</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Thu, 14 Jan 2010 10:22:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3834</guid>
		<description>Hi Axelle,

I think that all of us would agree with you when it comes to really wanting good ideas &lt;em&gt;and&lt;/em&gt; better ways of coding. That was how I got into Design Patterns in the first place. When Jonathan Kaye first introduced me to the concept of a State Machine, I was blown out of my socks and am very grateful to Jonathan for taking the time to explain it to me.

The kind of comment I am talking about is the thoughtless TNTWIDI that is based on &quot;See how smart I am,&quot; rather than, &quot;Let&#039;s look at it this way because it follows Design Pattern Principle A and OOP Principle B.&quot;

I&#039;m with you 100% when it comes to being open to ideas and learning something new about programming virtually &lt;em&gt;all the time&lt;/em&gt;. Danny&#039;s point seems to hit the nail on the head when he points out that TNTWIDI comments are more likely to cause other problems because the comments really aren&#039;t about programming—they&#039;re about the programmer&#039;s ego.

Great hearing from you and hope to hear more.

Kindest regards,
Bill</description>
		<content:encoded><![CDATA[<p>Hi Axelle,</p>
<p>I think that all of us would agree with you when it comes to really wanting good ideas <em>and</em> better ways of coding. That was how I got into Design Patterns in the first place. When Jonathan Kaye first introduced me to the concept of a State Machine, I was blown out of my socks and am very grateful to Jonathan for taking the time to explain it to me.</p>
<p>The kind of comment I am talking about is the thoughtless TNTWIDI that is based on &#8220;See how smart I am,&#8221; rather than, &#8220;Let&#8217;s look at it this way because it follows Design Pattern Principle A and OOP Principle B.&#8221;</p>
<p>I&#8217;m with you 100% when it comes to being open to ideas and learning something new about programming virtually <em>all the time</em>. Danny&#8217;s point seems to hit the nail on the head when he points out that TNTWIDI comments are more likely to cause other problems because the comments really aren&#8217;t about programming—they&#8217;re about the programmer&#8217;s ego.</p>
<p>Great hearing from you and hope to hear more.</p>
<p>Kindest regards,<br />
Bill</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: William B. Sanders</title>
		<link>http://www.as3dp.com/2010/01/13/thats-not-the-way-id-do-it-justifiable-homicide-in-32-states/comment-page-1/#comment-3833</link>
		<dc:creator>William B. Sanders</dc:creator>
		<pubDate>Thu, 14 Jan 2010 10:08:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.as3dp.com/?p=2352#comment-3833</guid>
		<description>Hi Danny,

That&#039;s right! It can waste a huge amount of time and you have to undo it all and go back to your original starting point.

Kindest regards,
Bill</description>
		<content:encoded><![CDATA[<p>Hi Danny,</p>
<p>That&#8217;s right! It can waste a huge amount of time and you have to undo it all and go back to your original starting point.</p>
<p>Kindest regards,<br />
Bill</p>
]]></content:encoded>
	</item>
</channel>
</rss>
