<?xml version='1.0' encoding='UTF-8' ?>
<rss version="2.0" xml:base="http://www.cincomsmalltalk.com/blog/" xmlns:admin="http://webns.net/mvcb/" xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:icbm="http://postneo.com/icbm" xmlns:includedComments="http://www.laudably.com/rss2-comments" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:media="http://search.yahoo.com/mrss/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/">
	<channel>
		<title>Smalltalk Tidbits, Industry Rants</title>
		<link>http://www.cincomsmalltalk.com/blog/blogView</link>
		<description>Cincom Product Manager</description>
		<webMaster>jrobertson@cincom.com</webMaster>
		<lastBuildDate>Mon, 17 Mar 2008 09:14:58 EST</lastBuildDate>
		<image>
			<url>http://www.cincomsmalltalk.com/images/cst_small.jpg</url>
			<title>Smalltalk Tidbits, Industry Rants</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView</link>
			<height>50</height>
			<width>81</width>
		</image>
		<admin:generatorAgent rdf:resource="/CincomSmalltalkWiki/Silt"></admin:generatorAgent>
		<admin:errorReportsTo rdf:resource="mailto:jrobertson@cincom.com"></admin:errorReportsTo>
		<dc:language>en-us</dc:language>
		<dc:creator>James A. Robertson</dc:creator>
		<dc:rights>Copyright 2007 Cincom Systems, Inc.</dc:rights>
		<dc:date>2008-03-17T09:14:58-05:00</dc:date>
		<icbm:latitude>39.214103</icbm:latitude>
		<icbm:longitude>-76.878807</icbm:longitude>
		<item>
			<title>SPA 2006 Comes to a close</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=SPA_2006_Comes_to_a_close&amp;entry=3321078607</link>
			<category>spa2006</category>
			<pubDate>Wed, 29 Mar 2006 09:50:07 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>Well, it's been a great 3 days, even if I spent most of them jetlagged after traveling to London from Maryland by way of Los Angeles :) For people who like the notion of an <a href="http://en.wikipedia.org/wiki/Unconference">unconference</a> - you want to attend SPA 2007. These folks were doing a &quot;conference for particpants&quot; before anyone else had the idea. I'll be back next year, and I intend to arrive earlier.</p>
</div>]]></description>
			<guid isPermaLink="false">3321078607</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3321078607</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3321078607</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3321078607</wfw:comment>
		</item>
		<item>
			<title>Cargo Cults and Angry Monkeys</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</link>
			<category>spa2006</category>
			<pubDate>Wed, 29 Mar 2006 08:17:25 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>If you ever have a chance to hear <a href="http://blogs.pragprog.com/cgi-bin/pragdave.cgi">Dave Thomas</a> give this talk, run, don't walk. He gave a great talk on the &quot;received wisdom&quot; that too many of us in the software industry follow. Chief amongst those, of course, is declarative typing. I can't summarize the whole talk - he was funny, and his slides were amusing. If Dave is speaking at a conference near you, go.</p>
</div>]]></description>
			<guid isPermaLink="false">3321073045</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3321073045</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3321073045</pingback:target>
			<includedComments:comment-collection>
				<includedComments:comment>
					<includedComments:guid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:guid>
					<includedComments:puid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:puid>
					<includedComments:author></includedComments:author>
					<includedComments:pubDate>2006-03-29T15:35:12-05:00</includedComments:pubDate>
					<includedComments:content>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;p&gt;Infered types are great for run-of-the-mill code.  But types really become interesting when the type system becomes undecidable and you need to provide type signatures.  Check into something like &lt;a href="http://www.e-pig.org/"&gt;Epigram&lt;/a&gt;, or &lt;a href="http://www.cs.bu.edu/~hwxi/DML/DML.html"&gt;Dependent ML&lt;/a&gt;, or &lt;a href="http://www.cs.pdx.edu/~sheard/"&gt;Omega&lt;/a&gt;.&lt;br /&gt;
&lt;/p&gt;&lt;/div&gt;</includedComments:content>
					<includedComments:title>Dependent types</includedComments:title>
				</includedComments:comment>
				<includedComments:comment>
					<includedComments:guid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:guid>
					<includedComments:puid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:puid>
					<includedComments:author></includedComments:author>
					<includedComments:pubDate>2006-03-30T11:18:35-05:00</includedComments:pubDate>
					<includedComments:content>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;p&gt;I thought Dave was having a bit of a rant. The Michael Moore of the software industry.&lt;br /&gt; 
&lt;/p&gt;&lt;/div&gt;</includedComments:content>
					<includedComments:title>Bit of a rant</includedComments:title>
				</includedComments:comment>
				<includedComments:comment>
					<includedComments:guid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:guid>
					<includedComments:puid>blogView?showComments=true&amp;printTitle=Cargo_Cults_and_Angry_Monkeys&amp;entry=3321073045</includedComments:puid>
					<includedComments:author>Steve W</includedComments:author>
					<includedComments:pubDate>2006-04-01T03:53:09-05:00</includedComments:pubDate>
					<includedComments:content>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;p&gt;
&lt;/p&gt;&lt;/div&gt;</includedComments:content>
					<includedComments:title>Dynamic typing is for socialists?</includedComments:title>
				</includedComments:comment>
			</includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3321073045</wfw:comment>
		</item>
		<item>
			<title>Distributed Workplaces</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=Distributed_Workplaces&amp;entry=3321068089</link>
			<category>spa2006</category>
			<pubDate>Wed, 29 Mar 2006 06:54:49 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p><strong>Update:</strong> Bernard has posted some of the preliminary outputs from the session. First, <a href="http://www.spaconference.org/cgi-bin/wiki.pl/?DistributedWorkforces">Laura Hill's preliminary notes are here.</a> The <a href="http://web.mac.com/drydock/iWeb/SPA2006/Distributed%20Workforces.html">audio of the session has been posted here.</a> </p>

<p>I participated in a fascinating discussion forum this morning - Laura Hill and Bernard Horan (both of Sun) organized a &quot;fishbowl&quot; on the topic of distributed workplaces. That works like this - there were 7 chairs arranged in a circle in the center of the room, with a large ring of chairs around them. There were 6 of us in that center ring, and discussion kicked off with our opening statements on distributed working (which we had submitted previously). From there, it was an open discussion under the following ground rules:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>Only people in the bowl could talk (fish)</li>
		<li>People on the outside could get up and enter the bowl at any time</li><li>There always had to be at least one open chair in the center</li></ul>
<p>What that means is that people are entering and leaving the bowl regularly. We got participation from nearly the entire audience, and the conversation ranged over a lot of stuff: whether remote working is desirable, whether it works for anyone, how you can manage agile development, how you do communication.</p><p>The talking really focused on communication - both on tools (IM, NetMeeting, IRC, phone), and on the practice - how often, ad-hoc or planned, how often you need face to face meetings, that sort of thing. It was a good time, and a good discussion. In know that Laura and Bernard were taking notes and recording the session, so if any of that comes online, I'll link to it.</p></div>]]></description>
			<guid isPermaLink="false">3321068089</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3321068089</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3321068089</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3321068089</wfw:comment>
		</item>
		<item>
			<title>Offshoring</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=Offshoring&amp;entry=3321059405</link>
			<category>spa2006</category>
			<pubDate>Wed, 29 Mar 2006 04:30:05 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>Here's a talk I'm seeing at a lot of conferences - something to address the widespread worry about offshoring of IT sector jobs. Personally, I'm skeptical of governmental programs to &quot;address&quot; the &quot;problem&quot; - this is nothing new. Take textiles, for instance. Between the 18th and 21st century, that industry moved from France to the UK, on to New England, then off to the US south, on to Latin America, and now to Asia. In all that time, there have always been high value textile jobs in all the &quot;losing&quot; areas. </p>
<p>I also wonder about the supposed gap between comp sci graduates and the job market; in general, the market tends to solve those problems by itself. Put another way, I'm wary of solutions that chase ill defined problems. The bottom line is, costs in the IT sector are dropping inexorably, as they have in other industries that have globalized. There's no way to get around the existance of highly trained, rapidly industrializing populations in places like India, China (etc). </p><p>Also, I wonder if one of the problems isn't the uptick in demand for credentials before hiring into a development position. When I got into the business in the late 80's, it was quite common for people to get into software development who did not have software related degrees. I certainly didn't; most of the people who worked where I first worked didn't have software degrees either. Good comment from a professor in the room on this: no one has a shared understanding of the term &quot;software engineering&quot;, if you go across university departments, industry, etc. </p><p>Here's a good consensus - the difficulty arises in attempting to have developers over there (wherever the offshoring location is) and the managers here (US, UK, wherever). The difficulty is that there are communication difficulties that add huge overhead to such projects. Project management in general is bad in the software field; adding a large communication disruption into that already poor discipline just makes things worse. IMHO, the companies that ought to worry are software development firms (like Microsoft), who will, over time, find that new firms in India (etc) will be at least as effective as they are, but with lower costs. The company that isn't actually in IT, but has IT needs won't be nearly as impacted. </p></div>]]></description>
			<guid isPermaLink="false">3321059405</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3321059405</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3321059405</pingback:target>
			<includedComments:comment-collection>
				<includedComments:comment>
					<includedComments:guid>blogView?showComments=true&amp;printTitle=Offshoring&amp;entry=3321059405</includedComments:guid>
					<includedComments:puid>blogView?showComments=true&amp;printTitle=Offshoring&amp;entry=3321059405</includedComments:puid>
					<includedComments:author>
anonymous</includedComments:author>
					<includedComments:pubDate>2006-03-29T11:10:11-05:00</includedComments:pubDate>
					<includedComments:content>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;p&gt;Comment by 
anonymous&lt;/p&gt;

&lt;p&gt;


&lt;p&gt;Add to it business culture. As someone who came to this continent from Central Europe, I can tell you it took me five years to adapt to North American way of doing things. IT is supposed to serve business. I don't see how someone in India or China can understand the intricacies of how IT is supposed to support the way business functions in the US or Canada.&lt;/p&gt;
&lt;p&gt;Oh, BTW - I think computer science grads are the least useful people in business IT departments.&lt;/p&gt;&lt;p&gt;-XCheck&lt;/p&gt;&lt;/p&gt;
&lt;/div&gt;</includedComments:content>
					<includedComments:title>
Re: Offshoring</includedComments:title>
				</includedComments:comment>
				<includedComments:comment>
					<includedComments:guid>blogView?showComments=true&amp;printTitle=Offshoring&amp;entry=3321059405</includedComments:guid>
					<includedComments:puid>blogView?showComments=true&amp;printTitle=Offshoring&amp;entry=3321059405</includedComments:puid>
					<includedComments:author>Isaac Gouy</includedComments:author>
					<includedComments:pubDate>2006-03-29T12:03:44-05:00</includedComments:pubDate>
					<includedComments:content>&lt;div xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;p&gt;&lt;em&gt;the difficulty arises in attempting to have developers over there (wherever the offshoring location is) and the managers here (US, UK, wherever)&lt;/em&gt;&lt;br/&gt;
That's easy - offshore the managers.
&lt;/p&gt;&lt;/div&gt;</includedComments:content>
					<includedComments:title>trickle up</includedComments:title>
				</includedComments:comment>
			</includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3321059405</wfw:comment>
		</item>
		<item>
			<title>Test First Development of Web Applications with XML</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=Test_First_Development_of_Web_Applications_with_XML&amp;entry=3320999231</link>
			<category>spa2006</category>
			<pubDate>Tue, 28 Mar 2006 11:47:11 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>This a is a case study of a mobile phone operator - the idea being to specify behavior and run tests all by filling in a few forms. A look at the issues of defining and testing a web application - present some approaches, a 2005 case study, some of the tools used. Requirements:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>Underlying business logic needs to be explicit</li>
		<li>Marketing oriented requirements tend to be imprecise - concentrating on user stories, providing few usable test cases. They had to feed the requirements back to marketing for verification</li></ul>
<p>For testing, you cannot rely entirely on vendor testing - you need to test the configuration. The testing in question here is functional testing. To create the test specification:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>specify system behavior, end to end</li>
		<li>highlight boundary conditions and end points</li><li>model the tests while system functionality is still fluid</li><li>tests should be specified before detailed APIs are specified</li><li>maintain traceability between tests and requirements</li></ul><p>Some of the tools considered: WebRunner, HttpUnit, HTMLUnit, Homebrew XML based requirements management tools. Various toolsets were considered afterwards - FIT, WATIR (Ruby), Selenium (Javascript), Agitator, Canoo Web Test. These latter tools were unknown to the team when the project was ongoing. They ended up using the homebrew system.</p><p><strong>The Problem:</strong> A Mobile Internet Content Filter. There was no software available at the time to filter inapproriate content from mobile systems. A definition: &quot;on-net&quot; means on the operator's portal. </p><p><strong>The Solution: </strong>Interpose a proxy between mobiles and &quot;off net&quot; (i.e., general internet) content. Apply rules to determine whether the content is appropriate. Redirect on failure of that test, allow user to change the settings. </p><p>There are a few possible outcomes:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>Access Denied (can change settings to allow)</li>
		<li>Illegal Page (cannot view under any circumstances - some 2000 sites are so classified in the UK)</li><li>Allowed (normal viewing)</li></ul><p>The &quot;Denied&quot; category has rules that involve the operator and their classification scheme - these become policy rules. Testing types?</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>Automated tests for basic stuff</li>
		<li>User acceptance testing (manual)</li></ul><p>The first is the one they needed to deal with. Test cases were based on use cases, requirements, exception conditions. Did not attempt to achieve complete decision coverage, instead using representative test cases. The tools that were developed:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>XMLSpy/Authentic - Schema per data type, stylesheets per data type</li>
		<li>Java - Documentation Generator, batch file to execute from files, FilterTestSuite based on HttpUnit</li><li>Directory Load Scripts - Templates for the data files</li></ul><p>And then a demo. The tools they created allow them to store their test cases as XML docs. The test cases are created via an XSchema driven form.</p></div>]]></description>
			<guid isPermaLink="false">3320999231</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3320999231</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3320999231</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3320999231</wfw:comment>
		</item>
		<item>
			<title>XML Database Applications</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=XML_Database_Applications&amp;entry=3320993124</link>
			<category>spa2006</category>
			<pubDate>Tue, 28 Mar 2006 10:05:24 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>After lunch (which I skipped to exercise) and a nap (ad-hoc, in front my laptop in the common room), we're on to XML database applications with Chris Wallace. He's starting off with some XQuery examples. The backing data is in an XML database (<a href="http://exist.sourceforge.net/">eXist</a>). </p>
<p>Heh. He says that XQuery and eXist are the most fun he's had in software since Smalltalk, which he's used since 1983. The focus with these tools is on data more than functionality. He's doing all this to explore the design space (XML Databases and Documents). In terms of information systems, the focus here is on semi-structured data (RSS, anyone :) ). The problem space includes spreadsheets, documents, ad-hoc databases, and web integrated data. </p><p>The database he's using supports XQuery, XUpdate, XSLT, XQuery extensions, and free text searching. It supports a RESTful interface (Java servlets), SOAP, and XML-RPC. One of the example applications he's working on is a Faculty Online Database - currently the data exists across Access, SQL Databases, flat text files, spreadsheets, etc. The plan is to simplify all that and still support distributed data ownership. Code:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>3000 lines of XQuery</li>
		<li>3000 lines of XSLT</li><li>300 of XSD (One schema)</li><li>10 lines of PHP (not much web work done yet)</li><li>25 pages online thus far</li></ul><p>When storing data, trying to use &quot;real world&quot; identifiers as much as possible (names, room numbers, etc). Reduces the gap between the real world domain and the system, but it does have issues - you can easily hit duplicates (example: if I mention &quot;Dave Thomas&quot;, which one do I mean? pragDave, or Bedarra Dave?). </p><p>In terms of data, decided against using attributes - just went with more elements. Integrity? Schema validation is too weak and too restrictive. NXD stores any well formed XML. Referential Integrity? RDBMS' are &quot;eager, integrity failures have to be repaired outside the db. NXD - stores data on demand, but integrity failures can be persisted. repair is inside the db. XML ids only checked within a document, NXD stores all nodes with internal ids.</p><p><strong>For information systems, veracity of the model is what's important.</strong></p><p>Functionality delivered via:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>XQuery generating HTML</li>
		<li>code moving to lunction libraries and XSLT as it matures</li><li>XQuery for request input, sessions, selection of nodes, computation of views</li><li>XSLT to generate the interface</li><li>CSS for presentation style</li></ul></div>]]></description>
			<guid isPermaLink="false">3320993124</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3320993124</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3320993124</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3320993124</wfw:comment>
		</item>
		<item>
			<title>A Retrospective on Retrospectives</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=A_Retrospective_on_Retrospectives&amp;entry=3320973356</link>
			<category>spa2006</category>
			<pubDate>Tue, 28 Mar 2006 04:35:56 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>Today's invited talk is on project retrospectives, and a retrospective on the book &quot;<a href="http://www.amazon.com/gp/product/0932633447/sr=8-1/qid=1143534212/ref=pd_bbs_1/103-8433547-6667001?%5Fencoding=UTF8">Project Retrospectives</a>&quot; by the author, Norman Kerth. The idea: after a project (any sort), it's a good idea to sit back and discuss what lessons were learned from it. </p>
<p>It's not enough to just gather and identify &quot;what went wrong&quot; and point fingers - the idea is to have the retrospective become a post project ritual that focuses on learning, not blame. For purposes of the retrospective, assume that everyone did the best job that they could at the time with the skills/tools/resources available to them at the time. Example: The campfire discussion of the buffalo hunt in &quot;<a href="http://www.imdb.com/title/tt0099348/">Dances With Wolves</a>&quot;. The upshot: <em>No one person has a complete picture of what happened</em> - you need the perspectives of all the participants, so you can see the things you missed.</p><p>Important - you want an &quot;atmosphere of safety&quot; in order to get honest (and complete) feedback. The key things to learn in a retrospective:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>What worked well?</li>
		<li>What have we learned?</li><li>What would we do differently next time?</li><li>What still puzzles us?</li><li>What needs furher work?</li></ul><p>The way corporate culture changes is by changing the stories they tell about themselves. Constant learning implies a continual change in the way work gets done. Many organizations simply don't want to change. Some teams do want change:</p><ul xmlns="http://www.w3.org/1999/xhtml">
			<li>Agile teams</li>
		<li>Software Process Groups</li><li>Teams at Wits end</li><li>Consulting firms</li><li>Highly Dynamic firms by design</li><li>Disaster Response teams</li></ul><p>Retrospectices can also be useful after milestones are reached, or after a merger, or after a manager/lead has been replaced. in other words, after an important event.</p><p>Good question: What do you do about people who lie, or spend their time working to undermine someone else? The idea is to focus on the events that happened, not on the people themselves. Seems to me that this might require a highly focused facilitator with many teams.</p></div>]]></description>
			<guid isPermaLink="false">3320973356</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3320973356</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3320973356</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3320973356</wfw:comment>
		</item>
		<item>
			<title>Question Time at SPA</title>
			<link>http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;printTitle=Question_Time_at_SPA&amp;entry=3320931646</link>
			<category>spa2006</category>
			<pubDate>Mon, 27 Mar 2006 17:00:46 EST</pubDate>
			<description><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>Michael Feathers, Bruce Anderson, Jason Gorman, Dave Thomas (pragDave), John Daniels, James Dobson are on the panel. It's clearly not a completely serious effort :)</p>
<p><strong>Web 2.0 - what is it, and where can I buy it?</strong> </p><p><strong>Dave Thomas</strong> - a huge success in marketing, and he's not sure where you can buy it. Web 2.0 is all about making browsers suck less (AJAX, asynch updates, etc). There's no worse place for an application than a 3270 that also gets porn - are we putting more<strong> </strong>and more lipstick on a pig? He's saying that the browser should be dead, and we should be moving to smarter clients. For a lesson, look at how the next generation plays video games - why can't we produce applications that are as useful as that? We need a more immersive, useful environment.</p><p><strong>Michael Feathers</strong> - Yes, the browser model is somewhat broken, but it's non-proprietary. It's lousy, but it works. </p><p><strong>Audience question</strong> - what about Flash? Michael says yes, it's definitely part of Web 2.0. Jason says it's unclear what Web 2.0 even is. It feels like something I already have, but with a cooler name. Bruce - keeps thinking about <a href="http://earth.google.com/">Google Earth.</a> A large part is that IT shops like the browser because of the low maintenance aspect of installation.</p><p><strong>Audience followup</strong> - what about mashups? Browsers enable it, it looks cool, but how maintainable/scalable is it? Dave: XML should have been shot at birth. DJ's (music) are an example of mashups. HTTP's advantages: dynamic typing and port 80.</p><p><strong>Automatic vs. Manual Tests: What do you recommend?</strong></p><p><strong>Jason</strong> - manual tests are run once as a sanity check, so that you know what's being done. Then move to automation.</p><p><strong>John</strong> - don't do manual testing - automate it. You'll find that you won't need manual tests. James: what about more ad-hoc testing that still needs to be done? What about UI tests? John: Talking about system/acceptance testing more than unit testing. Michael: as many automated tests as possible is good. Manual testing is useful for &quot;exploratory testing&quot;, when you are trying things out. James: User Interface testing, when we are talking about subjective judgements, cannot be automated.</p><p><strong>Audience feedback</strong> - Manual testing is error prone and cannot be as predictable as automated testing. Dave: testing is a design/analytic tool as much - or more - than a bug finding tool. In this case, the question becomes meaningless. All the testing is manual, with some of it becoming automated over time as we move through development. Michael: Testing tells us about the design, and provides a frame for &quot;holding it up&quot;. Michael: We've moved from BDUF to BTUF (Big Test Up Front). We've gone too far. </p><p><strong>What are the best motivational techniques for developers?</strong></p><p><strong>Bruce</strong> - I like to see developers taken seriously. It's about being genuinely involved in the task at hand.</p><p> <strong>Jason</strong> - Need to be able to &quot;put my stamp&quot; on things. Being able to walk away and say &quot;I was there&quot;.You lose motivation when you aren't taken seriously</p><p><strong>John</strong> - I only hire developers who care about what they are doing. There are the 9 to 5 types, and the people who attend conferences like this. If you have the latter, and you give them the space to do what they are good at, then you'll get results.</p><p><strong>Dave</strong> - No way to motivate, but tons of ways to de-motivate. It comes from a lack of respect. </p><p><strong>Michael</strong> - Different people are motivated differently. A lot of self selection happens. </p><p><strong>Bruce</strong> - At IBM, we get involved in large projects, where you might fear death marches. We find it's easy to attract people to the challenge.</p><p><strong>Audience question</strong> - What about the tension between what product management wants/needs, and what developers want/need? Need more and better communication to bridge that gap. Feedback - it can be very demotivating to end up doing what you are sure is not the right thing.</p><p><strong>Is Management the root of all evil?</strong></p><p><strong>John</strong> - I'm pretty sure it's no :)</p><p><strong>Dave</strong> - Listening to managers is the root of all evil. You have a responsibility to say no if you think you are being told to do the wrong thing.</p><p><strong>Jason</strong> - Money is the root of all evil. Managers are just the weed growing around the mony</p><p><strong>Bruce</strong> - A good manager shields developers from the day to day &quot;crap&quot; that crops up. </p><p><strong>Michael</strong> - Bruce just described good management. Too many organizations have people who cannot understand the ramifications of bad decisions. </p><p><strong>John - </strong>it's about having a good relationship between managers and developers. It's about mutual respect toward common goals.</p><p><strong>Audience question</strong> - Should managers come up from technical staff? Jospeh: would prefer someone who understand what's going on. We are in one of the few professions where we have managers who do not understand technology. Michael: Do leadership and management have to be the same? Dave: Some teams need a strong tech lead, some teams need a non-technical manager. It depends on the team. Michael: You want the soft skills, regardless.</p><p><strong>I'm in Dilbert Hell. What do I do?</strong></p><p><strong>Consensus:</strong> Get another job, or if not possible, find a hobby.</p></div>]]></description>
			<guid isPermaLink="false">3320931646</guid>
			<pingback:server>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIPBServlet?guid=3320931646</pingback:server>
			<pingback:target>http://www.cincomsmalltalk.com/blog/blogView?guid=3320931646</pingback:target>
			<includedComments:comment-collection></includedComments:comment-collection>
			<wfw:comment>http://www.cincomsmalltalk.com/blog/servlet/CommentAPIServlet?guid=3320931646</wfw:comment>
		</item>
	</channel>
</rss>
