<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Management</title>
        <link>http://geekswithblogs.net/RSabourin/category/8178.aspx</link>
        <description>Management</description>
        <language>en-US</language>
        <copyright>Remi Sabourin</copyright>
        <managingEditor>remi.sabourin@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Creativity - The Real Definition</title>
            <link>http://geekswithblogs.net/RSabourin/archive/2008/06/05/creativity---the-real-definition.aspx</link>
            <description>&lt;p&gt;As the creative and interactive staff in my company are under my dictatorship... errrr care, I have had the opportunity to expand my understanding of what makes a great application in ways computer science can't teach you.  I ran across a thought provoking article on A List Apart, that although targeted towards designers, could be generalized to any profession:&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial"&gt;&lt;a href="http://www.alistapart.com/articles/oncreativity"&gt;http://www.alistapart.com/articles/oncreativity&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;"Except for personal projects, self-expression has no place in design, but constraint is vital to design. No component fuels creativity more than constraint. Constraints are a designer’s best friend. They’re signposts, not shackles. Indeed, without constraint, creativity (and design) is irrelevant."&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122631"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122631" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/RSabourin/aggbug/122631.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Remi Sabourin</dc:creator>
            <guid>http://geekswithblogs.net/RSabourin/archive/2008/06/05/creativity---the-real-definition.aspx</guid>
            <pubDate>Thu, 05 Jun 2008 05:29:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/RSabourin/comments/122631.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/RSabourin/archive/2008/06/05/creativity---the-real-definition.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/RSabourin/comments/commentRss/122631.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Nomenclature - A Barrier to Learning</title>
            <link>http://geekswithblogs.net/RSabourin/archive/2008/06/03/nomenclature---a-barrier-to-learning.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-SIZE: 11pt"&gt;&lt;font face="Times New Roman"&gt;“What's in a name? That which we call a rose&lt;br /&gt;
By any other name would smell as sweet."&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-SIZE: 11pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="FONT-SIZE: 11pt"&gt;&lt;font face="Times New Roman"&gt;Smells wonderful, but what if no one plants it, no one waters it and even the gardener can't remember what the heck the flower that smelled so nice was called.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;I’ve been somewhat absent in the Microsoft events and hooplah in the past.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;These meetings and events used to be mostly about technology previews and the next cool tool or language that will revolutionalize software development (in recent while, I’ve noticed things are changing however for the better with the community initiatives). What really interests me is platform agnostic design principles and best practices.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I cringe when I attended a Microsoft event this year and saw yet again that CSS class called ‘MenuLeft’ where the presenter showed how easy it was to change the implementation to have it float right.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;You see, to me a name is important.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;The goal&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Closer to my point now… I feel a part of our responsibility in our goal of moulding new developers into star programmers/designers lies in realizing their roadblocks to learning and in making adjustments to our teachings to compensate.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Do not spend time teaching them technology, they will get drawn into that as long as they have a curious nature, teach them design and good coding practices… and find the right names to make them remember.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;For example, when I held some database design reviews some time back, I didn’t even bother using industry accepted words like ‘normalization’ at first.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I found myself making up the term ‘row-based design’ and teaching how ‘column-based design’ had problems.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Seemed liked they got it and future database additions were in good form without me being involved.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;New team members are since then being taught about how ‘row-based design’ is better.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;A new goal of mine is to focus on teaching object oriented principles in order to have it applied correctly and to leverage the benefits in new development.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Before working where I’m at, I was in the Java camp and spent some time decompiling Java class libraries in order to learn how they were implemented (Sun developers are awesome by the way in their implementation of the Java packages).&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Along with an experienced OO mentor for a few months some time ago and a lot of self-learning and trial and error, I have found some ways to do things that make future maintenance/refactoring much smoother.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;Horror&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;So I talk to people in the .Net camp that know what they’re doing and find out the latest and greatest in OO talk.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;What do I hear about? Stuff like Liskov Substitution Principle.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I wonder – what is this great thing, I never heard of it, it must be past my current knowledge base.&lt;span style="mso-spacerun: yes"&gt;  I look up the d&lt;/span&gt;efinition: “In class hierarchies, it should be possible to treat a specialized object as if it were a base class object.”&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;span style="mso-spacerun: yes"&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;I’m like wow… what a bad name.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;This is like intro to OO type of stuff and we try to teach people this way? A few weeks later, I hear that term again. I want to appear knowledgeable, so look it up.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Oh yeah, I forgot, it’s polymorphism by inheritance.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Gotta remember that… I have a decent amount of OO experience (not an expert, but I’ve thought about how best to do things quite a bit) and yet I need a reference or search engine at my side.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;This is bad, I can tell you I will need to take some time to come up with my own new vocabulary in order to spread the word.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;While I’m at it, I might look for an alternative for Inversion of Control (lovingly shortened by the community to IoC).&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;The ideal&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;It makes me think – what is the best protocol for naming?&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I want to avoid pushing theory and constantly re-inforcing/reminding people the definitions; I want them to just intuitively get it.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Object oriented development is a relatively new field of study (especially in the MS world). As with most areas, I would predict an evolution, how about:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;Phase 1 - Scientific Naming&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;Phase 2 – Layman Descriptive Naming&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font face="Times New Roman" size="3"&gt;Phase 3 – Intent-Based Naming&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;Phase 1 (Scientific Naming)&lt;/strong&gt; is the talk of academics and ‘smart’ people.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;We are not at the point where we can benefit from our full pool of young potential and community.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;We lack the naming that will get old school management on board with new ideas. Scientifically named concepts will yield slow adoption and recognition.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;Phase 2 (Layman Descriptive Naming)&lt;/strong&gt;.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Here we are getting somewhere, we haven’t encoded why we are doing things, but we are now making some good patterns easier to remember.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;This is the difference between saying you have conjunctivitis and getting a lot of blank looks from everyone, or just saying ‘pink eye’ with nodding heads all around.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;We need names even non-technical people can relate to – this ensures that our university students can get hopping with good principles starting from day one.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I even find myself avoiding the widely accepted word ‘polymorphism’ in favor of something like ‘plug and play’.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;My advice: pick up the grade 6 dictionary for teaching IT, throw away the university textbook.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Refer to the official name as a sidebar (there may be multiple official names), but use the layman name to really get an understanding across.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;o:p&gt;&lt;font face="Times New Roman" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt"&gt;&lt;font size="3"&gt;&lt;font face="Times New Roman"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;Phase 3 (Intent-Based Naming)&lt;/strong&gt; is an idea for a utopian naming convention.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Imaging the software engineering field to be mature at a point where we have a deep understanding of why we use the principles we learn.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;How many times have we seen a good concept mis-applied or used in the wrong context?&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Junior developers are passionate to try out every advanced trick in the book yet lack the experience to answer “It depends…”.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;What if we actually put our experience in the nomenclature? &lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Easier said than done and I’m not sure if it is possible to come to such a place for everything, but names like ‘Seperation of Concerns’ kindof hits the mark for me.&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122570"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122570" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/RSabourin/aggbug/122570.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Remi Sabourin</dc:creator>
            <guid>http://geekswithblogs.net/RSabourin/archive/2008/06/03/nomenclature---a-barrier-to-learning.aspx</guid>
            <pubDate>Tue, 03 Jun 2008 05:07:44 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/RSabourin/comments/122570.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/RSabourin/archive/2008/06/03/nomenclature---a-barrier-to-learning.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/RSabourin/comments/commentRss/122570.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>