<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Musings about my Profession (and a bit more)</title>
	<atom:link href="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/feed/" rel="self" type="application/rss+xml" />
	<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D</link>
	<description></description>
	<lastBuildDate>Sun, 02 Dec 2012 18:32:44 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>What it means to teach</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2012/12/02/what-it-means-to-teach/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2012/12/02/what-it-means-to-teach/#comments</comments>
		<pubDate>Sun, 02 Dec 2012 17:59:58 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[teaching]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=288</guid>
		<description><![CDATA[<p>We just lost a colleague in my department (<a href="http://piotrrudnicki.blogspot.ca/" title="http://piotrrudnicki.blogspot.ca/" target="_blank">http://piotrrudnicki.blogspot.ca/</a>). He fought intensely, but for far too short a time, the disease that, in Greek, we do not name; we just say the &#8220;cursed disease&#8221; (η επαρατος αθενεια) afraid to invoke its name because just to say the name means to touch the [...]]]></description>
				<content:encoded><![CDATA[<p>We just lost a colleague in my department (<a href="http://piotrrudnicki.blogspot.ca/" title="http://piotrrudnicki.blogspot.ca/" target="_blank">http://piotrrudnicki.blogspot.ca/</a>). He fought intensely, but for far too short a time, the disease that, in Greek, we do not name; we just say the &#8220;cursed disease&#8221; (η επαρατος αθενεια) afraid to invoke its name because just to say the name means to touch the thing&#8230;</p>
<p>It was the first such loss that I have witnessed in my immediate professional circle and it has been a shock! We spend so much time at school, we invest so much of ourselves in our school life, that our colleagues are almost family; somehow the word &#8220;colleague&#8221; does not seem big enough to cover the influence that these people have in our everyday lives. And this is particularly true for Piotr! </p>
<p>Piotr was a particularly compelling personality: intellectually honest, with precise positions on everything he cared to have a position about, with a sharp wit and language, and completely authoritative! He was in fact a bit scary; he always made me feel that I had not thought hard enough about whatever we happened to be talking about, be it programming languages or Greek tragedies. </p>
<p>And this was his &#8220;secret sauce&#8221; in teaching: to push his students hard, to make them responsible for their learning, to make them put into learning as much effort as they could, and more, before asking (and having) their questions (answered). There are so many stories about how tough he was with students who showed up lazy in his office, how unforgiving he was to those who felt they were &#8220;clients&#8221;, entitled by their tuition to answers by him, the &#8220;provider&#8221;. And there are many stories about his patience with students who came to him with &#8220;stupid questions&#8221;, which they had reached after study&#8230; Recognizing that talent is not equally distributed, he did not demand that his students perform well; he *did* however demand that his students put in all their effort and perform to the best of their ability! In addition to his regular teaching, he taught for a long time the team training for the ACM competition, and he also volunteered his Saturday mornings to teach high-school students who were interested in computers. He taught the highly talented, the ones who had chosen (for one reason or another) computing as their profession, and the wannabes. He did not teach just the easy ones who &#8220;got it&#8221; and were likely to succeed in the end, he taught everyone who cared. </p>
<p>And he always said that &#8220;there are two types of students: the self taught and the hopeless; our job is to take the latter and make them into the former&#8221;. I am not even sure I completely agree with this statement, but I am impressed by the guts it takes to admit that we are responsible not for teaching our students the subject matter of whatever the course outline proclaims the course to be about, but rather for teaching them to learn. That&#8217;s a much taller order than teaching them facts and procedures: if a student cannot learn facts and procedures and fails at the end, it may  be because of a variety fo reasons: they came to the course with insufficient background, they are somehow not able to learn this material&#8230; But if a student does not learn to learn, if a student does not improve in his/her ability to learn, then the failure (it seems to me) rests much more on the teacher, because, no matter where one stands in the ability totem pole, everyone should be able to learn something and improve a bit.</p>
<p>I am getting ready for two courses next term, and I will try to think about them both a bit differently&#8230; I will try to think about them in &#8220;the Piotr style&#8221;&#8230;</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2012%2F12%2F02%2Fwhat-it-means-to-teach%2F&amp;title=What%20it%20means%20to%20teach" id="wpa2a_2"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2012/12/02/what-it-means-to-teach/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Domain-Specific Languages and Web Services</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/27/domain-specific-languages-and-web-services/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/27/domain-specific-languages-and-web-services/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 03:05:00 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[semantics]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[web services]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=103</guid>
		<description><![CDATA[<p>This past week, in my graduate class we discussed &#8220;system integration and agreement at the semantics level&#8221;. My class is about &#8220;web services&#8221;, a subject which I have been covering in a variety of ways in the past two three years.</p> <p>In one offering, I covered the languages and the technologies in great detail.</p> <p>In [...]]]></description>
				<content:encoded><![CDATA[<p>This past week, in my graduate class we discussed &#8220;system integration and agreement at the semantics level&#8221;. My class is about &#8220;web services&#8221;, a subject which I have been covering in a variety of ways in the past two three years.</p>
<p>In one offering, I covered the languages and the technologies in great detail.</p>
<p>In another, I saw the subject very generally (as an integration technology) and I asked the class to develop an integration project; that time, most students decided to use/learn REST APIs and we ended up talking a lot about a variety of web-based user-interaction REST-based tools.</p>
<p>Next, I decided to devote a substantial part of the class to &#8220;services science&#8221; readings, examining the overlap between web-services technologies and the issues around developing and offering services, based on software.</p>
<p>This year, I started with an introduction to software architecture, then moved through a review of middleware technologies for distributed-software development, then discussed WS* and REST, and reached the point of discussing the semantic-web vision and current state-of-affaires last week.</p>
<p>Among my favorites over the years have been the papers in the 1995 interoperability issue of the ACM surveys, and especially Frank Manola&#8217;s paper on &#8220;Interoperability Issues in Large-Scale Distributed Object Systems&#8221;. The core idea of that really nice short paper was that different types of middleware support different degrees of interoperability and assume different types of agreement between the to-be-integrated software systems.</p>
<ul>
<li>For example, at the most basic level, a marshalling/umarshalling middleware guarantees the interoperation of two systems at the level of &#8220;exchanging values&#8221; when the systems in question agree at the level of data representation.</li>
<li>Remote-procedure-call middleware guarantees the interoperation of two systems at the level of &#8220;invoking each other&#8217;s procedures&#8221;; to that end, in addition to be able to exchange values (as operation names and parameters), the to-be-integrated systems must also agree on a (set of) basic message-exchange workflow(s)</li>
<li>And then we have the vision of semantic interoperability, which requires agreement at the level of semantics, so that each object shared by interoperating systems enables semantically consistent inferences by each of these systems.</li>
</ul>
<p>Reviewing this idea in class, we talked a lot about how semantics might be defined:</p>
<ul>
<li>in terms of a vocabulary, whether closed or systematically extendible (so that data tuples across systems can be mapped);</li>
<li>in terms of a data model, potentially hierarchically organized in a taxonomy (so that properties of data elements can be transferred across systems based on inferences relying on the data-model relations); or</li>
<li>in terms of a full-fledged ontology, where inferences can be made on the basis of  rules defining invariants within and constraints across data elements.</li>
</ul>
<p>This discussion helped me rethink the methodology behind (a couple of) our recent project(s) where we have been developing (a) a multilayer domain-specific language for characterizing a domain and the various systems in it, (b) a web-service infrastructure for maintaining this model and extending it to cover more systems in the domain by mapping the system-specific domain models to the general language, and (c) web services for querying the data model in a manner that makes the underlying distributed infrastructure transparent to the issuer of the query. </p>
<p>It seems to me that this particular methodology (as exemplified in SociQL, Diego Serrano&#8217;s thesis work) represents a sweet spot in the quest for semantic integration, including</p>
<ol>
<li>the SociQL language at three levels of abstraction
<ul>
<li>the basic level of SociQL defines a closed data model (a few terms and relations among them) in terms of which social systems can be understood</li>
<li>at the next level refinements of the basic data model can be expressed to specify the system-specific data models; these refinements are guided by the semantics of the basic level &#8211; in fact, they have to be specializations of this basic model </li>
<li>at the third level we have the actual data across the various systems</li>
</ul>
</li>
<li>services to populate the third level of SociQL by invoking system-specific data-access procedures, whether they are web-service APIs or SQL queries, and</li>
<li>services to extend the second level of SociQL by defining mappings of data models of new social systems to the basic SociQL level.</li>
</ol>
<p>In this methodology, the semantics is not explicit (not declared in a formal language); instead it is captured in the web services that map new systems (and their data models) on SociQL. This is both a shortcoming (in principle, explicit semantics make system more explainable and maintainable) and an advantage (since it allows &#8220;malleable&#8221; software implementations to map systems to the shared SociQL model).</p>
<p>I am not quite happy with the clarity of this document (and I will need to keep working on it on my head) but it just feels like it is maturing and I hope it was not too prematurely born and it does not read terribly mishappen.  </p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F03%2F27%2Fdomain-specific-languages-and-web-services%2F&amp;title=Domain-Specific%20Languages%20and%20Web%20Services" id="wpa2a_4"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/27/domain-specific-languages-and-web-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Second Smart-Condo Think Tank!</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/18/the-second-smart-condo-think-tank/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/18/the-second-smart-condo-think-tank/#comments</comments>
		<pubDate>Sat, 19 Mar 2011 02:24:11 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[Simulation-based Training]]></category>
		<category><![CDATA[Smart Condo]]></category>
		<category><![CDATA[Virtual Worlds]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=250</guid>
		<description><![CDATA[<p>Today was (a) the third Day in the Life of the Digital Humanities and (b) the second Smart-Condo Think Tank! So I got to participate to the latter and blog about my participation in the context of the former. I managed only two entries: </p> <a href="http://ra.tapor.ualberta.ca/~dayofdh2011/elenistroulia/2011/03/18/the-smart-condo-think-tank-day/">The Smart-Condo Think-Tank Day</a>, and <a href="http://ra.tapor.ualberta.ca/~dayofdh2011/elenistroulia/2011/03/19/dayofdh-almost-done/">DayOfDH almost done</a> [...]]]></description>
				<content:encoded><![CDATA[<p>Today was (a) the third Day in the Life of the Digital Humanities and (b) the second Smart-Condo Think Tank! So I got to participate to the latter and blog about my participation in the context of the former. I managed only two entries: </p>
<ol>
<li><a href="http://ra.tapor.ualberta.ca/~dayofdh2011/elenistroulia/2011/03/18/the-smart-condo-think-tank-day/">The Smart-Condo Think-Tank Day</a>, and
</li>
<li> <a href="http://ra.tapor.ualberta.ca/~dayofdh2011/elenistroulia/2011/03/19/dayofdh-almost-done/">DayOfDH almost done</a>
</li>
</ol>
<hr />
I am reproducing both posts here.</p>
<p><strong>The Smart-Condo Think-Tank Day</strong></p>
<p>Having seen many blog posts already, I feel that I am a bit late and more than a bit irrelevant <img src='http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Not only that but I am also too busy talking to type a blog:-)</p>
<p>The Smart-Condo think-tank, the second in what I hope is a series, is going very well. There is interest and commitment from the administration, excitement from the core team, new students joining (and hopefully getting more excited by the minute), and new potential team members.</p>
<p>I am also terribly excited to meet people from architecture psychology and human ecology who are interested in studying and analyzing how people interact and interpret (I particularly like this word in this context) the objects in their environment. These questions are fundamentally humanistic in nature. And it seems to me that there is a fundamental duality around design (of buildings or esthetic artifacts or documents) and perception (by occupants, art lovers and readers) and emotional reaction. And as more an more of our design, construction and perception is mediated by digital media, the subject matter understood to be included under the heading of &#8220;Digital Humanities&#8221; will expand. And that sounds exciting to me!</p>
<p><strong>DayOfDH almost done</strong></p>
<p>The Smart-Condo Think-Tank has concluded with many good ideas exchanged and lots of plans advanced. It was among the most successful meetings of this type that I have attended; we actually got a lot of things accomplished, including</p>
<p>report on our progress since the last one (more than a year ago), which made us realize that we have done quite a bit of work since then;<br />
outline our plans for the future and identify roles that potential partners can play; several participants seemed to be engaged in the discussion and I am hopeful on the potential extensions of our team; and<br />
listen to our participants&#8217; plans and think about what we could do to align our agenda with theirs.<br />
What was really interesting was our demo of the Smart-Condo platform and functionalities with our Smart-Dollhouse deployment!</p>
<p>We have explained how the Smart Condo works quite clearly.</p>
<p>We have diagrams of the software architectures and process.</p>
<p>We have pictures of the sensors and how they are attached to furniture and appliances.</p>
<p>We have videos and virtual-world simulations.</p>
<p>And yet, when we showed the dollhouse, and let the mom-doll (and it was a mom doll, how could it not be?) cook (by sending hot air through a blow dryer to the sensor attached to the stove), and had the stove light up in the virtual world, and had the virtual-world alarm go off after a minute &#8220;warning&#8221; about the long-term heat of the stove, and had the light in the dollhouse kitchen switch on automatically to signal an alarm, there seemed to be a &#8220;aha&#8221; moment in the audience! And that was fun!</p>
<p>So, lesson#1: there is something seriously important going on with simulations and our pedagogy in simulation-based learning is je right thing to do.</p>
<p>And lesson#2: the fidelity of the simulation is important, and finding the right medium can make the difference between working and not-working!</p>
<p>Happy DayOfDH!</p>
<hr />
My day was interesting and intellectually engaging and productive, all in all a lovely day, under a bright Alberta sun (we were allowed breaks out of the rather grim classroom where the meeting was held) and blue sky! </p>
<p>And then I went back to my office (and I got surprised at my two windows, they seem new and lovely every so often) and had a great chat with my students and a long laugh at some apparently half-baked University initiative.</p>
<p>Life is good!</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F03%2F18%2Fthe-second-smart-condo-think-tank%2F&amp;title=The%20Second%20Smart-Condo%20Think%20Tank%21" id="wpa2a_6"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/18/the-second-smart-condo-think-tank/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Maria Klawe on “Teaching Trials and Triumphs”</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/08/maria-klawe-on-%e2%80%9cteaching-trials-and-triumphs%e2%80%9d/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/08/maria-klawe-on-%e2%80%9cteaching-trials-and-triumphs%e2%80%9d/#comments</comments>
		<pubDate>Tue, 08 Mar 2011 06:59:31 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[teaching]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=242</guid>
		<description><![CDATA[<p>This afternoon I attended Maria Klawe&#8217;s keynote for the UoA&#8217;s Festival of Teaching 2011 (<a href="https://provost.sitecore.ualberta.ca/en/FestivalofTeaching2011.aspx">https://provost.sitecore.ualberta.ca/en/FestivalofTeaching2011.aspx</a>), on “Teaching Trials and Triumphs”. How interesting an accident to have this inspiring female role model here on the eve of the International Women&#8217;s Day!</p> <p>The message of her keynote was simple: there are four important ingredients in becoming [...]]]></description>
				<content:encoded><![CDATA[<p>This afternoon I attended Maria Klawe&#8217;s keynote for the UoA&#8217;s Festival of Teaching 2011 (<a href="https://provost.sitecore.ualberta.ca/en/FestivalofTeaching2011.aspx">https://provost.sitecore.ualberta.ca/en/FestivalofTeaching2011.aspx</a>), on “Teaching Trials and Triumphs”. How interesting an accident to have this inspiring female role model here on the eve of the International Women&#8217;s Day!</p>
<p>The message of her keynote was simple: there are four important ingredients in becoming a successful teacher:</p>
<ol>
<li>confidence</li>
<li>feedback</li>
<li>passion, and</li>
<li>connection</li>
</ol>
<p>To gain <strong>confidence</strong>, among other things, she advised us to ask for positive feedback from colleagues and coworkers (when deserved of course:-) and to actively pursue difficult challenges. Positive feedback energizes one to pursue more of the behaviors that led to the positive feedback in the first place; and accomplishing challenging goals inspires confidence to face professional challenges with more energy.</p>
<p>Students need <strong>feedback</strong> early and frequently on their performance and positive feedback is always better than negative feedback. On the flip side, teachers need student feedback. A great idea,  which I will try to adopt in the future, is to distribute 3&#215;5 cards at the end of each class asking students to respond to the question <i>What I found most difficult today was &#8230;</i>  so that the next time the class meets the teacher can revisit the problem concepts and help the students catch up.  And she also mentioned the story of a Mudd faculty who had the best day ever (as a teacher) when 100% of class &#8220;clicked&#8221; on the correct answer to a question she asked them! I can only imagine the excitement of having a whole class <b>get it right</b> together!</p>
<p>Then she related several stories of Mudd faculty demonstrating amazing <strong>passion</strong> for their job as teachers. I was terribly moved and inspired by the story of a young faculty member, with practically perfect teaching evaluations, who decided to spend his first sabbatical in a Los Angeles high school, whose students had consistently abysmal levels of math competency in standardized tests, teaching math! And this person, whose commitment I find terribly difficult to understand and impossible to espouse, spent the first six months failing (things were not working for him in the high school). But he did not give up and he stayed the course, to see things turn around in the seventh month after having gained the trust and respect of his students, through the recommendation of a trusted colleague and his own involvement with his students&#8217; personal life.  </p>
<p>But the most amazing story came towards the end when she talked about <strong>connection</strong>. She started with a story of a Mudd faculty who asks his linear algebra students to write an essay about what they learned in the course, relevant to their lives, because he believes that this is what our role as teachers is: to connect with our students&#8217; lives. And he manages to inspire his students to think about how changes in perspective may lead to new ideas, just as changes in the chosen base of a space may lead to simplification of problems that seemed too big before. And then she talked about her personal involvement with a shy student who &#8220;was not happy&#8221; at Mudd, according to her parents. Apparently the parents came up to her, after she welcomed everyone to the family weekend, and told her that their daughter was not having a good experience at Mudd. And she met  with this young girl and worked out a plan for how she could practice music and how she could work with another student (who was her mentor) and the girl&#8217;s life at Mudd turned around; and this girl, who started being terribly shy (too shy to practice saxophone because the music room was not 100% sound proof) brought to her a couple more students with problems (love-life problems among them, it turns out). And Klawe, the president, talked with them and advised them and connected with them, just as she had connected with the first shy girl, and just as the shy girl connected with her fellow students, and just as Klawe herself had connected with her PhD supervisor and learned form him how to be a researcher. And this last part made me see in my mind&#8217;s eye a long line of people &#8211; her supervisor, Klawe herself, the shy student, her fellow students &#8211;  touching each other and having an impact on each other, changing each other&#8217;s lives in some significant manner. </p>
<p>And the fact that, Klawe, the Mudd president, can take the time and listen and think up solutions for the shyness and the love aches of these young students made me think that there is always time and always a place to connect with people. And in our privileged position of being teachers and being knowledgeable and having been there (where our students are) we have the opportunity and the duty to connect with them and with care and sensitivity and modesty try to add them to the chains of our lives.</p>
<p>Thank you Dr. Klawe!</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F03%2F08%2Fmaria-klawe-on-%25e2%2580%259cteaching-trials-and-triumphs%25e2%2580%259d%2F&amp;title=Maria%20Klawe%20on%20%E2%80%9CTeaching%20Trials%20and%20Triumphs%E2%80%9D" id="wpa2a_8"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/03/08/maria-klawe-on-%e2%80%9cteaching-trials-and-triumphs%e2%80%9d/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>email</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/email/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/email/#comments</comments>
		<pubDate>Tue, 01 Mar 2011 03:00:42 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=218</guid>
		<description><![CDATA[<p>I have failed&#8230; no question about it; two weeks gone by and no update; yet another resolution who did not stand up the test of time; but never mind, such is life; one simply has to recognize failure, concede the battle and keep trying, imagining a future victorious conclusion to the current war waged&#8230; (I [...]]]></description>
				<content:encoded><![CDATA[<p>I have failed&#8230; no question about it; two weeks gone by and no update; yet another resolution who did not stand up the test of time; but never mind, such is life; one simply has to recognize failure, concede the battle and keep trying, imagining a future victorious conclusion to the current war waged&#8230; (I am not actually taking myself that seriously, I just get carried away writing non-scientifically structured prose:-) </p>
<p>In that spirit, I decided to talk today about email.</p>
<p>I am going on a short vacation for a week and I am debating wether I should have access to email. It is interesting to note that this is a rare case of us taking a vacation that is not in our usual summer retreat to the old world and it is not associated with work-related travel (conference, meeting, &#8230;). There is no other motivation (see family, meet for a project) for this vacation except that to take a break as a family. This makes it feel quite decadent and self-indulgent, and terribly exciting. And somehow it brings to the foreground the question of email: there is no question about these other vacations: work-related travel implies the umbilical cord to the office email and work and so does the long vacation back in the old country (we would not be able to &#8220;afford&#8221; such long vacations if we were cutoff from the office). So here is this new &#8220;vacation-vacation exotic bird&#8221; which makes it seem possible, even required, that I should actually not have access to my office email. There is nothing much that can go terribly wrong in a week (especially when it is Reading Week), and I have been rather good at answering my email so nothing timely is pending (why do you think I have not been blogging?) and, worse comes to worst, people have my phone number so if anything terribly timely was pending someone would call me. So why am I thinking about it?</p>
<p>The funny thing is that I didn&#8217;t until a colleague mentioned to me in passing that <i>I know you will not be able to do much about things since you will be away but you will be on email so you will know about everything</i>, which made me think that </p>
<ul>
<li> his expectation was indeed reasonable &#8212; this has been my mondus operandi for ever, so he can safely make this assumption; and
<li> I did not want him to be right &#8212; why should I be aware of every small emergency and temporary tragedy and storm in a teapot back in the office when I could not actually be expected to respond to it?<br />
</uL></p>
<p>So I started thinking about the possibility of not accessing email during my weekly vacation; and then I considered that I did not actually have to bring a laptop with me at all, so that I would not actually read/mark papers or edit proposals or work on my class or FB/twitter or blog.</p>
<p>And the novelty of this possibility just struck me!</p>
<p>And then I thought about my relationship with email has evolved over time:</p>
<p>I used to respond to email messages after I had made some progress towards the objective that the message was about, since more messages would usually be about some &#8220;todo&#8221;. Now I have a lot of messages that I skim and ignore; with filters much of this categorization can be done automatically. For the messages that I have to respond to, I usually generate a draft response which I conceptually equate with a &#8220;todo&#8221; and then file away. Many of them I try to pass on to other people who may be able to act on them (something like a hot-potato game&#8230;). For the ones I have to keep on my plate I make deadlines by when I must make some progress and I have developed a scheme (not explicit yet) for how behind I will allow myself to be on each particular task. Thus a good metric of how busy I am is the sum of messages in my Inbox and Drafts mail folders, plus some function of the pending todos in my task list (and how late/urgent they are).</p>
<p>So this is a perfect opportunity to validate my metric!</p>
<ol>
<li>First a question of understanding the range of the metric values: I have been controlling this number to be ~20; this is my comfort zone, developed primarily based on my obsession to respond to my mail&#8217;s UI; but how bad would it become in a week if I did not control it on a daily basis? I am estimating ~500 messages</li>
<li>Second a question of validation: how bad is a big number? I have been operating under the assumption that 20-30 is OK and beyond that it is not. But when I see the big number after I come back, I am guessing that I may find that 500 can easily be brought down to 40 which would mean that 500 is not that bad after all.</li>
<li>This is more of a psychometric  (I think this is the right word in this context but I am not sure) assessment: how will I feel when I see that big number of messages? stressed? worried? panicked? overwhelmed?</li>
<p></oL></p>
<hr />
<em><strong>I have written up to this point of the post before my departure&#8230; I will complete it after I come back with the results of the experiment&#8230;</strong></em></p>
<hr />
<p>We are back! It was a wonderful vacation and I could seriously increase my word count if I were to report on what we did during this past week. But I will restrict myself to my original plan: I will only report on my reaction to my mailbox after I left it completely unattended for 8 days.</p>
<p>First let me just repeat it for the record: <strong>I did not read email for 8 days</strong>. I was tempted, I must admit; my husband had his laptop with him and his blackberry, and he was checking his messages. My daughter had her ipod and she did avail herself of free Internet towards the end of our trip at least. I used my husband&#8217;s laptop to find routes using googlemaps. So it is not lack of means that kept me true to my promise; it is simply my monumental strength of character:-) I am honestly quite proud of myself!</p>
<p>Now let me answer the three questions I set for myself before leaving.</p>
<p>I was really stressed when I switched on my laptop. I had visions of expired deadlines, funding agencies complaining, colleagues upset at my delinquency, students idling in mid-step waiting for me to tell them what next, children&#8217;s schools notifying me of piles of homework&#8230; I was truly scared.</p>
<p>I found out that I had 470 messages, which establishes the fact that I have a good grasp on my mail-traffic reality.</p>
<p>I worked through the day and reviewed everything.</p>
<p>I found out that</p>
<ol>
<li>Today was the hard deadline for a short document due for publication; this was a duty that a colleague of mine was supposed to have completed but we are both responsible for it, so if I had been looking at my email, I would have done (or at least have felt obliged to do) it.</li>
<li>I had missed an opportunity to apply for some small funding to offset costs of undergraduate research assistants during the summer</li>
<li>Some actions were due soon-ish for a student to be paid and an account report to be generated and the account to be extended (all was done today). </li>
<li>Several submission notifications had come in; a mix of good news &#8211; bad news (what&#8217;s new?)</li>
<li>My students had taken care of several todos that, had I been checking email, I would have advised them on; it turns out, that would have not been necessary.</li>
<li>A colleague had taken care of a couple of conference-organization tasks for which we were co-responsible; I owe him some extra work in the future. </li>
<li>I had received a couple of todos from a committee of which I am a member; I took care of them today. </li>
<li>A bunch of meetings had been setup in my absence; I had to reschedule things in my calendar and a real problem has occurred due to the shifting which will have to be somehow addressed.</li>
<li>I got a reminder about a presentation I am supposed to give on Wednesday; I am sort of prepared for it and had I been reading email, I would have likely finished it off during the weekend; now I will have to squeeze some late-evening time tonight or tomorrow evening for it. </li>
<li>As I was working through my email, a really nice email came from a colleague complimenting me on my<a href="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/my-interview-with-the-anita-borg-institute/"> ABI profile</a>; it was really heartwarming!</li>
<li>I got in touch with the colleague who, unwittingly, challenged me to not read email and we will meet on Friday to catch up with whatever has come up in the mean time; I am also meeting my assistant tomorrow in preparation for my Friday meeting.</li>
<li>A new proposal opportunity has arisen that matches some ideas that I have already been exploring with another group of colleagues and I need to work on it.</li>
<li>Some emergency work is needed on a collaborative proposal with which I am involved for the past year. A skype meeting has been setup for tomorrow at 6am.</li>
<li>Two more reviewing deadlines have been added to my list of todos.</li>
</ol>
<p>In summary, I am a bit exposed with the potential of missing the hard deadline for the short publication but it is not a tragedy. Neither is the missed funding opportunity. Nothing terrible, not even really bad, has happened. I am relieved and, to my embarrassment, I must admit that I am a touch surprised also: I was really fearing that my weeklong absence might have some more important consequences, thus implicitly validating my practice of responding so fast. It turns out that a week-long delay is not long. Who knew?  </p>
<p>Finally, I can proudly report that my 470 mailbox of this morning is tamed to ~45 (drafts and inbox messages) which shows that 45 is a good number but not that far away from 470; only about a day&#8217;s work. How&#8217;s that for calibration?</p>
<p>In the end, I am terribly happy I stayed out of email. I had an amazingly relaxing vacation, I read a couple of books, I had some memorably inane conversations with both my children and my mailbox is not threatening any more this evening. And, maybe, I may start a yet a different type of relationship with email, where I do not respond immediately, I let things sit for a week. It looks like mail does not go bad in a week&#8230;</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F02%2F28%2Femail%2F&amp;title=email" id="wpa2a_10"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/email/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My interview with the Anita Borg Institute</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/my-interview-with-the-anita-borg-institute/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/my-interview-with-the-anita-borg-institute/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 17:25:40 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[teaching]]></category>
		<category><![CDATA[women]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=228</guid>
		<description><![CDATA[<p>I was interviewed as a &#8220;Senior Technical Woman&#8221; by the Anita Borg Institute and the content of this profile can be found at <a href="http://anitaborg.org/news/archive/senior-technical-woman-profile-eleni-stroulia-professor-and-nsercicore-industrial-research-chair-university-of-alberta/">http://anitaborg.org/news/archive/senior-technical-woman-profile-eleni-stroulia-professor-and-nsercicore-industrial-research-chair-university-of-alberta/</a>.</p>]]></description>
				<content:encoded><![CDATA[<p>I was interviewed as a &#8220;Senior Technical Woman&#8221; by the Anita Borg Institute and the content of this profile can be found at <a href="http://anitaborg.org/news/archive/senior-technical-woman-profile-eleni-stroulia-professor-and-nsercicore-industrial-research-chair-university-of-alberta/">http://anitaborg.org/news/archive/senior-technical-woman-profile-eleni-stroulia-professor-and-nsercicore-industrial-research-chair-university-of-alberta/</a>.</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F02%2F28%2Fmy-interview-with-the-anita-borg-institute%2F&amp;title=My%20interview%20with%20the%20Anita%20Borg%20Institute" id="wpa2a_12"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/28/my-interview-with-the-anita-borg-institute/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Where a &#8220;great success&#8221; gets tainted&#8230;</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/02/where-a-great-success-gets-tainted/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/02/where-a-great-success-gets-tainted/#comments</comments>
		<pubDate>Thu, 03 Feb 2011 03:47:13 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[software engineering]]></category>
		<category><![CDATA[software-engineering education]]></category>
		<category><![CDATA[teaching]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=209</guid>
		<description><![CDATA[<p>I did not want to post this entry, for many reasons.</p> I am embarrassed to admit that I am not a good teacher. I am terribly disappointed to be confronted with this failure, just after the &#8220;high&#8221; of the publicity around my <a href="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2010/12/20/my-cool-cmput-301-class-this-fall-2010/">City-of-Edmonton inspired project in my CMPUT course</a>. I am completely frustrated by [...]]]></description>
				<content:encoded><![CDATA[<p>I did not want to post this entry, for many reasons.</p>
<ol>
<li>I am embarrassed to admit that I am not a good teacher.
<li>I am terribly disappointed to be confronted with this failure, just after the &#8220;high&#8221; of the publicity around my <a href="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2010/12/20/my-cool-cmput-301-class-this-fall-2010/">City-of-Edmonton inspired project in my CMPUT course</a>.
<li>I am completely frustrated by the fact that what I thought was a good (in fact a better-than-good) course may end up in my &#8220;failures&#8221; column.
</ol>
<p>So I was not going to post it, definitely not.</p>
<p>And then, I decided to join the ranks of the ones who <i>come out</i> with embarrassing stories about themselves, in the hopes that <i>their stories may be useful to others who are facing similar situations</i>. And so here I go and I am posting this entry.</p>
<p>Last Friday, I found in my mailbox my teaching evaluations for my course last term. They were not-quite-abysmal but they were definitely, undoubtedly, undeniably bad. If the world was black and white, these evaluations would be black (or white in cultures where white is a color of mourning). </p>
<p>Now, I should also come clean with the fact that I am not an award-winning teacher (at least not at the undergraduate level) but these evaluations were quite below what I have come to expect from me. And the clear message (in fact the only written comment on the back of the collection of &#8220;agree/disagree&#8221; questions) was that <i>the project was too hard</i>. And the fact is that the project was not really too hard, definitely not harder than the projects usually done in this course in past years. And the only explanation that I am left with is that my students disliked the fact that the project was &#8220;real&#8221; and saw this to be too hard. Maybe I am oversimplifying but, no matter whether the project was the reason why my evaluations are bad or not, the truth is that the students did not like the project; they disliked it more than students generally dislike the project in this course; so in the end, I am having to attribute the strong dislike of the students for the project to the only feature that distinquished  this project from the projects of past years: its realism. And that frustrates me &#8230; a lot. And, I am not sure what I will do next time I have to teach this course, and I am guessing it depends on when the next time will be and whether I will have forgotten the sting of this experience by then&#8230;</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F02%2F02%2Fwhere-a-great-success-gets-tainted%2F&amp;title=Where%20a%20%E2%80%9Cgreat%20success%E2%80%9D%20gets%20tainted%E2%80%A6" id="wpa2a_14"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/02/02/where-a-great-success-gets-tainted/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>On the importance of UCOSP</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/24/on-the-importance-of-ucosp/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/24/on-the-importance-of-ucosp/#comments</comments>
		<pubDate>Mon, 24 Jan 2011 22:42:13 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[mentoring]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[teaching]]></category>
		<category><![CDATA[UCOSP]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=201</guid>
		<description><![CDATA[<p>This past weekend I hosted the UCOSP code sprint at the University of Alberta. About 40 students and 7 project mentors came here for an intensive weekend-long session of software development. </p> <p>UCOSP &#8211; the Undergraduate Capstone Open-Source Project &#8211; is a distributed software-engineering course that brings together undergraduate students across Canada (and sometimes North [...]]]></description>
				<content:encoded><![CDATA[<p>This past weekend I hosted the UCOSP code sprint at the University of Alberta. About 40 students and 7 project mentors came here for an intensive weekend-long session of software development. </p>
<p>UCOSP &#8211; the Undergraduate Capstone Open-Source Project &#8211; is a distributed software-engineering course that brings together undergraduate students across Canada (and sometimes North America) to work on open-source projects. </p>
<p>I have described the nuts-and-bolts of UCOSP several times to different people with different purposes, so I can easily give a short description of <em>&#8220;how UCOSP works&#8221;</em>, since I am hoping that some readers may consider participating.</p>
<p>From an administrative point of view, UCOSP is managed by a steering committee of three, Michelle Craig and Karen Reid at the University of Toronto and Eleni Stroulia at the University of Alberta, with support from a part-time administrator. It runs under the auspices of the Canadian Computer-Science Department Chairs. </p>
<p>Each semester, since the Fall term of 2008, a few (between five and ten) open-source projects are solicited and selected to join the UCOSP. Projects that participate in UCOSP should </p>
<ul>
<li>be open source,
<li>have an existing user community, and
<li>have a person willing to act as a mentor and team lead for a group of students.
</ul>
<p>At the same time, through software-engineering faculty in Universities across Canada, senior students are solicited to participate. These students register to related courses in their home institutions, usually independent-studies or special-project courses, with a supervising faculty. The steering committee associates students with projects, based on their preferences and background. During the term, the students work in the context of these distributed teams under the guidance of the project mentor, who, in the end, comments on each individual student&#8217;s work and performance and assigns a &#8220;grade&#8221; which, then, is submitted to their home institution by home supervising faculty. </p>
<p>In the beginning of each semester, UCOSP facilitates a <em>&#8220;code sprint&#8221;</em> week-end, where the students enrolled in the program travel to a central location and work on their projects with fellow team members and their project mentors. And this time, the sprint was at my home. </p>
<p>So now that I have the descriptive details out of the way, let me proceed to the more interesting part of the blog, and let me explain my position on why I think this is a terribly important, interesting and rewarding activity.</p>
<p>First off, on <strong>&#8220;why this is important&#8221;</strong>, I have to say that this is as close as we can get to the proverbial &#8220;real world&#8221;, in teaching software engineering. And making it real is terribly important from a pedagogical perspective. I am working with many colleagues in health-science disciplines who, at this point in time, are seeing a shift in their pedagogy model, from curriculum-based to competence-based. As a result, instead of defining the “required body of knowledge”, educators are defining “professional competencies”; correspondingly, instead of assessing students through traditional examinations designed to cover this or that body of knowledge, educators are turning to simulation-based methods for training and assessment, so that students should not have to demonstrate knowledge of facts and procedures anymore but rather their ability to bring this knowledge to bear in scenarios simulating the situations where this knowledge is relevant in real practice. I believe we (software-engineering educators) should be doing the same, namely develop simulation of the real practice, which is what UCOSP essentially is. This is the only means to actually train people to become competent in</p>
<ul>
<li>dealing with projects whose lifecycle does not coincide with the student project (all of our UCOSP projects exist outside UCOSP and some have long lifecycles and large developer teams within which the UCOSP student teams work),
<li>collaborating with team members (without relying on the bonds that usually come with belonging in the same peer group or class cohort),
<li>managing their personal agenda and synchronizing it with that of the project (without relying on well-defined deadlines for submissions that come with the well-defined well-scoped projects of typical courses and similar typical loads across the team members),
<li>dealing with unknown tools and languages that the project comes with (which is usually unheard of in projects of courses with well-thought out dependencies on prerequisite courses), and
<li>working across time zones (Canada has a special advantage in this dimension).
</ul>
<p>Second, on the <strong>&#8220;why is this interesting&#8221;</strong> question, I have to argue for its variety. The scope of software systems that are being developed by UCOSP projects is astounding. This term, we have a mobile application (on the Android platform) for biological monitoring applications, a couple of video recording/streaming/sharing systems, and two web-based tools. The students get the opportunity to explore conceptual and technical problems and technologies that cannot possibly be part of any four-year, or even five-year, undergraduate program. Clearly, it cannot be the objective of an undergraduate program to teach students all technologies, especially in a field so fast as computer science. Instead, it is our objective to teach students how to learn; and UCOSP gives them the ability to practice this &#8220;learning&#8221; skill and develop this competence, while at the same time adding &#8220;knowledge facts&#8221; on their CVs, which may make them more appealing to an employer down the road. </p>
<p>Finally,<strong> &#8220;this is rewarding&#8221;</strong> because it is actually quite fun! It is a bit of stress, matchmaking students and projects, aligning calendars and deadlines across schools, getting feedback on time to students and home-institution faculty supervisors, and &#8211; generally speaking &#8211; making sure that a standard (in terms of amount and quality) work is being done by each individual student in each individual project. On the other hand, students love it and appreciate the opportunity and the sprint itself is a blast! In our building we have a open atrium area and from the third floor I could see inside several breakout rooms on the second floor, where UCOSP teams were working. I could see silent teams &#8220;hacking&#8221;, I could see teams drawing on whiteboards, I could see teams skyping with some remote mentors, I could see teams laughing at jokes! The intensity of  their  working faces, the energy of their thinking &#8220;fights&#8221;, and the merriness of their fooling around was so exciting and so optimistic that I am charged for at least a week of drudgery&#8230; but I have not drudgery in my future so will bank it for the future!</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F01%2F24%2Fon-the-importance-of-ucosp%2F&amp;title=On%20the%20importance%20of%20UCOSP" id="wpa2a_16"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/24/on-the-importance-of-ucosp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>What makes a good project for a software-engineering course?</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/16/what-makes-a-good-project-for-a-software-engineering-course/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/16/what-makes-a-good-project-for-a-software-engineering-course/#comments</comments>
		<pubDate>Mon, 17 Jan 2011 05:34:48 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[CityOfEdmonton]]></category>
		<category><![CDATA[OpenData]]></category>
		<category><![CDATA[software-engineering education]]></category>
		<category><![CDATA[UCOSP]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=192</guid>
		<description><![CDATA[<p>I, and, I know, many of my colleagues too, fret over designing our project-based courses. Courses in the computing-science sub-disciplines within the generally construed &#8220;systems/applications&#8221; area, like databases, software engineering, operating systems and architecture, frequently use projects.</p> <p>I am a strong believer in learning-by-doing (the fundamental principle of constructivist pedagogical theories) and learning in teams [...]]]></description>
				<content:encoded><![CDATA[<p>I, and, I know, many of my colleagues too, fret over designing our project-based courses. Courses in the computing-science sub-disciplines within the generally construed &#8220;systems/applications&#8221; area, like databases, software engineering, operating systems and architecture, frequently use projects.</p>
<p>I am a strong believer in learning-by-doing (the fundamental principle of constructivist pedagogical theories) and learning in teams of peers and I have never shied away from taking risks in leading complex, open-ended projects, even in undergraduate software-engineering courses. In these courses, most students learn to analyze complexity and conquer it through good software design, effective project management and teamwork, and solid development. Many (I like to think most) students thrive in these projects, in spite of the original uncertainty and fear that it is too much and that I have unreasonable expectations, Some do not; they get flustered and frustrated usually when the team dynamics t=do not work.  </p>
<p>So here are a few things that I have explored in the past. In Fall 2005, a CMPUT410 student developed XBook, a web-based application for UoA students to buy and sell used textbooks from previous terms while registering for subsequent courses. This student actually chose the application himself since he found my project specification &#8220;boring&#8221; and in the end, through his connections with the UoA Student Union, he arranged to have the application integrated with the Beartracks registration system. More recently, in the Winter term of 2010, I gave my CMPUT301 students the task of developing a web-based visualization interface for <a href="http://www.arts.ualberta.ca/~orlando/wordpress/">the Orlando project</a>. The Orlando people gave me access to a data set, and then proceeded to simplify it about four times at my request. The data set included was a set of XML-annotated documents about English poetesses. The thing I remember the most about this project was the fact that our notions of well behaved XML were soon thrown outside the window: the XML tags were well formed of course, but the schema was terribly lax and since the tags had been added by editors they were terribly inconsistent, frequently missing attributes and internal elements. In the end, the successful teams identified interesting data nuggets and, around them, they developed really useful and inventive visualizations. And of course, this past Fall 2010, my CMPUT301 students developed <a href="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2010/12/20/my-cool-cmput-301-class-this-fall-2010/">an application for Edmonton visitors based on City-of-Edmonton open data</a>. And of course, I have also been several times a mentor for <a href="http://ucosp.ca">UCOSP</a>, supervising distributed undergraduate cross-Canada teams, working on open-source projects.</p>
<p>Recently, I specified a set of projects for my graduate course. I used to leave the project specification in graduate courses to my students. This sometimes worked excellently, when students were interested in the area and has a specific research problem to explore in mind. In far too many cases, however, student-designed projects ended up being weak since they did not have a good intuition for what is important in my area of research (which my graduate projects cover) and, I, in spite of my good intent, would frequently fail to tease out the interesting software-engineering challenges in their envisioned projects.</p>
<p>So this year I am trying something else: I am making up the projects specifications, and I am &#8220;negotiating&#8221; with my students changes and variations that may make them more interesting to them, without compromising the software-engineering content of the project. I must admit that this was an idea that came from another colleague, which intrigued me enough to try it. And as I am trying it, I have been thinking what makes a software-engineering project a good opportunity for learning.  I am definitely not sure that I can completely answer this one but I think good projects have to meet at least the following requirements.</p>
<ol>
<li> They have to come with constraints about the nature of their implementation: today, there is a huge variety of technologies and, unless a few reasonable choices are given as a starting point to the students, they may end up  making a misleading choice. In the end, technology is a tool and some are definitely inappropriate, I think that identifying a few possible good choices is essential.
  </li>
<li> They have to be of substantial complexity, which can be understood and organized in layers. &#8220;Easier&#8221; projects get completed but may not be sufficient learning vehicles. Students, definitely the good ones, get excited by the challenge of complexity and, as they proceed to manage it through architectural design, they learn some important lessons.
  </li>
<li> They also have to be relevant; someone must have a vested interested in the project&#8217;s success, besides the student that is. A grade is never motivating enough. In my graduate course this year, all projects are defined in consultation with clients who are actually interested in meeting with the students and using their products. This co-creation process, where the potential consumer informs and elaborates the needs and the software professional translates the stated needs into designs and systems, is terribly fulfilling. And although I appreciate the potential elegance of a project that has been conceived, designed and developed by a single agent, the external validation that comes from a &#8220;satisfied customer&#8221; is priceless to me.
  </li>
</ol>
<p>So I am excited to see what will come out of this batch! And I will report some time in May:-)</p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F01%2F16%2Fwhat-makes-a-good-project-for-a-software-engineering-course%2F&amp;title=What%20makes%20a%20good%20project%20for%20a%20software-engineering%20course%3F" id="wpa2a_18"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/16/what-makes-a-good-project-for-a-software-engineering-course/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>God is in the Detail</title>
		<link>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/09/god-is-in-the-detail/</link>
		<comments>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/09/god-is-in-the-detail/#comments</comments>
		<pubDate>Mon, 10 Jan 2011 03:56:12 +0000</pubDate>
		<dc:creator>Eleni Stroulia</dc:creator>
				<category><![CDATA[academia]]></category>
		<category><![CDATA[computer science]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[software-engineering education]]></category>

		<guid isPermaLink="false">http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/?p=167</guid>
		<description><![CDATA[<p>I have had two interesting (and rather intense) professional experiences recently, which made me say to myself a few times &#8220;the Devil is in the Details&#8221;. And I wanted to reflect (i.e., think aloud) upon these experiences and so I went and looked at Wikipedia where the expression comes from. And there, I found that [...]]]></description>
				<content:encoded><![CDATA[<p>I have had two interesting (and rather intense) professional experiences recently, which made me say to myself a few times &#8220;the Devil is in the Details&#8221;. And I wanted to reflect (i.e., think aloud) upon these experiences and so I went and looked at Wikipedia where the expression comes from. And there, I found that the &#8216;original&#8217; was &#8220;God is in the Detail&#8221;, which is much closer to what I actually have been thinking &#8211; thus the origin of my title.</p>
<p>The first was around the development of a rather complex software system under rather extreme time constraints and with a very public development/testing process: the system, a web-based tool, supports three layers of users and each layer can only start working as the &#8220;previous&#8221; layer has completed their activities. Within each layer, a long-ish workflow is to be supported (longer for the first layer, simpler for the last). Given the tight timeline, the system subsequent functionalities (i.e., later workflows) were developed as the &#8216;early&#8217; functionalities (layer one, first workflow steps) were being used. My role in the process was to &#8220;manage&#8221; the small developer team (of two) and to translate the client requirements into design and implementation decisions, so that reasonably <a href="http://xkcd.com/844/">good code</a> might be produced to meet the functionality required in the most &#8220;inexpensive&#8221; manner. At the esame time, I was handling (as much as possible) the user help center, to give the developers time to deal with development and debugging as necessary. To top this off, the timeline of the project overlapped with the Christmas break! My team did not have a long break, meedless to say:-)</p>
<p>The other experience has been the design of my graduate course, about to start (Tuesday this coming week is the first meeting). My course is, generally conceived, on &#8220;software engineering&#8221;. Its specific focus is on system integration on the web, frequently involving reengineering of existing resources to make them fit in the integrated system, using web-service technologies, while being aware of the human ecosystem around the system under development. The important thing to note here is that the systems we are concerned with are systems used for supporting human-intensive processes and services, so there is lots to be aware of when we talk about &#8220;the human ecosystem&#8221;. This is the way I perceive my area of research, branded under the term &#8220;Services Science&#8221; and &#8220;Service Systems&#8221;. So I started writing my course outline, and that went well. There are tons of interesting problems in the area and I am excited about them, so clearly I can describe them and I am sure the students reading the description will just &#8220;see&#8221; how terribly exciting the field is and how fulfilling and fun it would be to work in it! And then I started describing the course-evaluation process, which of course involves projects; and then I started describing my projects; and it went really well throughout the motivation paragraph (all my projects are motivated by real needs of real clients, i.e., researchers who are working with systems that do not work and envision their new variants), and the general plan paragraph, but then I started working on project-specific deliverables and this is where the muse abandoned me&#8230;</p>
<p>In both cases, I realized that &#8220;Details&#8221; are important:</p>
<ol>
<li>users are affected by how exactly reports are formatted	and where buttons are placed; if these decisions are wrong,	then people are unhappy and systems are unusable </li>
<li>my team is really good! they are pretty darn amazing in	fact! but bugs somehow happen (just like other &#8220;things	happen&#8221;); and this time, we had many really &#8220;good bugs&#8221;; you	know, the ones that depend on a particular setting of a	five-year old browser; or the ones caused by extra spaces that	make a careless matching function fail; or the ones that	five fields still manages to generate colliding keys for one	unfortunate user&#8230; </li>
<li>some of the workflow steps ended up making incorrect	assumptions about what the users actually knew; a fact the	client specifying the requirements did not necessarily know	and neither, of course, did we, but we discovered as users	starting attempting to enact said workflow</li>
<li>in the context of my course, the details of what I	actually envision as &#8220;deliverables&#8221; are difficult to pin down;	these are research projects after all! but they are also	course deliverables, the same way that the system whose	development I had to manage had specifications, which we were	&#8220;almost&#8221; meeting as we were fielding user questions and	hunting down obscure bugs reported by individual users</li>
</ol>
<p>So God (and accomplishment and perfection) is in the detail, which (it just dawned on me, as I was writing this post) is the same idea as the 80/20 rule (80% of your accomplishments come from 20% of your task list). It is this last 20% that needs to be accomplished, the part that will require the 80% of our effort, that makes the task complete! It is this missing 20% that may cause the &#8220;failure&#8221; label to be affixed to our project or may generate comments about &#8220;the objectives of the course were not clear&#8221; feedback to be collected about my course. It is this 80% of effort that will enable perfection.</p>
<p>And sometimes perfection is impossible&#8230; I really believe that my software-project timeline was quite impossible; and, by procrastinating on my course specification, I made this timeline impossible too:-) But through this experience, I became painfully and starkly aware of the distinction. Especially in these fields where there is no long chain separating us from the &#8220;client&#8221; who &#8220;validates&#8221; our effort. In both these cases, the client &#8211; namely the users of our software and the students in my course &#8211; are so close, practically &#8220;in my face&#8221;. And this is not generally the case in our job as academics; we are, in general, removed from the <i>hard</i> validation step: when submitting a paper the acceptance/rejection decision is really a judgement about whether the work is &#8220;good enough&#8221; (or, even worse, in the case of conferences &#8220;better than the competition&#8221;) not about whether it is actually &#8220;good&#8221;. And, moreover, it comes from a faceless &#8220;committee&#8221; not from a user or student with a name and a face! And it is easy to forget the distinction between &#8220;good enough&#8221; vs. &#8220;good&#8221;, between &#8220;80% done&#8221; vs. &#8220;done&#8221; and miss the importance of the <b>details</b>.</p>
<p>And, I do believe, that in some cases in may not matter: &#8220;good enough&#8221; is frequently good enough! But there are cases where it does matter; where what is needed is &#8220;good&#8221; without qualifications, without footnotes. No matter what though, perfection is, and will always be, in the detail! </p>
<p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fssrg.cs.ualberta.ca%2Fblogs%2FWS-20-3D%2F2011%2F01%2F09%2Fgod-is-in-the-detail%2F&amp;title=God%20is%20in%20the%20Detail" id="wpa2a_20"><img src="http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://ssrg.cs.ualberta.ca/blogs/WS-20-3D/2011/01/09/god-is-in-the-detail/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
