<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6809583</id><updated>2011-10-24T07:56:26.548+02:00</updated><category term='future'/><category term='xml'/><category term='ontologies'/><category term='DSLs'/><category term='thesis'/><category term='metamodels'/><category term='emf'/><category term='java'/><category term='refactoring'/><category term='logic'/><category term='metablogging'/><category term='programming'/><category term='models'/><category term='ifc'/><category term='cobol'/><category term='model types'/><category term='mof'/><category term='tefkat'/><category term='doing'/><category term='computational design'/><category term='jobs'/><category term='profiles'/><category term='generics'/><category term='rails'/><category term='type systems'/><category term='coding'/><category term='reviewing'/><category term='uml'/><category term='hutn javascript json'/><category term='bim'/><category term='model transformation'/><category term='iPad'/><category term='programming languages'/><category term='step'/><category term='conferences'/><category term='papers'/><category term='bad smells'/><title type='text'>The Bootstrap</title><subtitle type='html'>This is where Jim discusses his research thoughts, usually related to software models, metamodels, model transformations, and more general software engineering stuff.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default?start-index=101&amp;max-results=100'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>143</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6809583.post-8002031546737714743</id><published>2011-10-24T07:52:00.003+02:00</published><updated>2011-10-24T07:54:45.654+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='model transformation'/><category scheme='http://www.blogger.com/atom/ns#' term='papers'/><category scheme='http://www.blogger.com/atom/ns#' term='bim'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>Domain-Specific Model Transformation in Building Quantity Take-Off</title><content type='html'>Last week I presented a paper at the &lt;a href="http://ecs.victoria.ac.nz/Events/MODELS2011/WebHome"&gt;ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (or MODELS 2011 to its friends)&lt;/a&gt;, held in Wellington, New Zealand. The abstract for the paper is as follows:&lt;br /&gt;&lt;blockquote&gt;The two core concepts of model-driven engineering are models and model transformations. Domain-Specific Modelling has become accepted as a powerful means of providing domain experts and end users with the ability to create and manipulate models within the systems that they use. In this paper we argue that there are domains for which it is appropriate to also provide domain experts with the ability to modify and develop model transformations. One such domain is that of quantity surveying, and specifically the taking-off of quantities from a building design. We describe a language for expressing transformations between building models and bills of quantities, and its implementation within an automated quantity take-off tool, reflecting on the commonalities and differences between this language and a general-purpose model transformation language/tool.&lt;/blockquote&gt;The &lt;a href="http://dx.doi.org/10.1007/978-3-642-24485-8_15"&gt;electronic version of the paper is up at the Springer site&lt;/a&gt;, and at &lt;a href="http://espace.library.uq.edu.au/list/?cat=quick_filter&amp;amp;sort_by=searchKey0&amp;amp;search_keys[0]=jim+steel"&gt;my university's electronic repository&lt;/a&gt; when they get around to putting it up..&lt;br /&gt;&lt;br /&gt;The presentation went pretty well, and I was presently surprised throughout the conference by the number of attendees interesting in modelling things that aren't software. The longer I work in modelling, the less I am interested in modelling the software itself, and the more I'm interested in using the models and modelling languages of the domains, and in how making them explicit can shape the software.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8002031546737714743?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8002031546737714743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8002031546737714743' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8002031546737714743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8002031546737714743'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2011/10/transformation-workbench-for-building.html' title='Domain-Specific Model Transformation in Building Quantity Take-Off'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5082505405219179042</id><published>2011-07-12T07:50:00.002+02:00</published><updated>2011-07-12T08:13:34.676+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='papers'/><category scheme='http://www.blogger.com/atom/ns#' term='doing'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>A Transformation Workbench for Building Information Models</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Last week I presented a paper at the &lt;a href="http://www.model-transformation.org/ICMT2011/"&gt;4th International Conference on Model Transformation&lt;/a&gt;, part of the &lt;a href="http://tools.ethz.ch/tools2011/"&gt;TOOLS Europe federated conferences&lt;/a&gt;, hosted this year by ETH Zurich. The abstract of the paper is/was:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;The building industry is undergoing a significant evolution, with increasing use of digital models during the design process and sub- sequent lifecycle of a building. These models, which span multiple de- sign disciplines, multiple stakeholders, and many phases of the build- ing’s life, represent an interesting study for the application of ideas from model-driven engineering, being large, complex, and highly interrelated. Building models are typically represented using the Industry Foundation Classes (IFC), an industry standard supported by many of the popu- lar CAD tools, defined in the STEP/Express technical space. Because the majority of research in MDE has focussed on the Eclipse Modeling Framework (EMF) technical space, it has previously been difficult to experiment with IFC models using model-driven engineering tools and techniques. In this paper we describe a workbench which provides for the integration of the STEP and EMF technical spaces. We also describe a number of initial experiments in bringing model transformation tech- niques and tools to bear on the domain of building models, and propose some future work.&lt;/blockquote&gt;&lt;div&gt;The &lt;a href="http://dx.doi.org/10.1007/978-3-642-21732-6_7"&gt;full paper is available from Springer&lt;/a&gt; (it'll be up on &lt;a href="http://espace.library.uq.edu.au/list/?cat=quick_filter&amp;amp;search_keys[core_26]=52290"&gt;my university's publications repository&lt;/a&gt; when they get around to it). For the presentation, which I thought went reasonably well, I used the &lt;a href="http://prezi.com"&gt;Prezi&lt;/a&gt; online presentation system, and &lt;a href="http://prezi.com/kupqiis6ba0o/a-transformation-workbench-for-bim/"&gt;the presentation is available here&lt;/a&gt;. (Note: I'll be coy about recommending Prezi - it can be cool, but it has some very serious issues).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;The ICMT conference, and the TOOLS event as a whole, was very interesting, with an ongoing choice of conferences (4 in total) and workshops (8, including &lt;a href="http://thebootstrap.blogspot.com/2011/07/transformation-tools-contest-2011.html"&gt;TTC&lt;/a&gt;) to get along to across the 5 days. I managed to sample all 4 conferences and 3 of the workshops, and pretty much found something of value in all of them.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5082505405219179042?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5082505405219179042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5082505405219179042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5082505405219179042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5082505405219179042'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2011/07/transformation-workbench-for-building.html' title='A Transformation Workbench for Building Information Models'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7625265233479820968</id><published>2011-07-01T09:07:00.002+02:00</published><updated>2011-07-01T09:11:14.092+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='model transformation'/><category scheme='http://www.blogger.com/atom/ns#' term='tefkat'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>Transformation Tools Contest 2011</title><content type='html'>&lt;div&gt;&lt;a href="http://www.tefkat.net"&gt;Tefkat&lt;/a&gt; (with me at the wheel) came in second (of 10) yesterday in the live challenge of the &lt;a href="http://planet-research20.org/ttc2011/"&gt;Transformation Tool Challenge workshop&lt;/a&gt; at the &lt;a href="http://tools.ethz.ch/tools2011/"&gt;TOOLS Federated Conferences in Zurich&lt;/a&gt;. Congratulations go to the first-place winners, Tassilo Horn and &lt;a href="http://www.gupro.de/~ist/GReTL"&gt;GreTL&lt;/a&gt;, who also won awards for the offline problems (along with &lt;a href="http://www.info.uni-karlsruhe.de/software/grgen/"&gt;GrGen.net&lt;/a&gt;). The competition was a lot of fun, with lots of useful discussion and feedback amongst the different competition participants and organisers. I'd encourage people who are interested in model transformation and model transformation languages to get along to check it out, on the web site for this year's edition, and also at future events.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7625265233479820968?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7625265233479820968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7625265233479820968' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7625265233479820968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7625265233479820968'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2011/07/transformation-tools-contest-2011.html' title='Transformation Tools Contest 2011'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7895178907614543481</id><published>2011-06-14T08:12:00.003+02:00</published><updated>2011-06-14T08:18:58.798+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='computational design'/><title type='text'>Graphical Programming</title><content type='html'>Last Thursday I attended the second (well, kind of second) meeting of the Brisbane chapter of the &lt;a href="http://compdesgrp.org/"&gt;Computational Design Group&lt;/a&gt;, kindly hosted by &lt;a href="http://www.arup.com/Global_locations/Australia/Brisbane.aspx"&gt;ARUP&lt;/a&gt;. There were interesting talks by Steve Downing from ARUP Sydney, Ben Doherty from BVN, and Abdullah Habash from Aurecon. I had been exposed to some of Steve's and Ben's stuff in my former life at QUT, but it was nice to see what they've been up to. It was also nice to see the ways that Abdullah and Aurecon have been using computational techniques for designs of their buildings in Abu Dhabi and Brisbane, including on the building currently under construction next door to me.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One of the thoughts that occurred to me, looking at some of the complex Generative Components and Rhino/Grasshopper models in the presentations, was about graphical programming. People in computer science talk about graphical programming from time to time, but the pointy end of the design industry are doing it for real, on big projects, in these tools.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;* I am hoping to revive this blog a little bit. Time will tell whether that ambition yields fruit.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7895178907614543481?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7895178907614543481/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7895178907614543481' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7895178907614543481'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7895178907614543481'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2011/06/graphical-programming.html' title='Graphical Programming'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-6400218773215044373</id><published>2011-03-04T01:58:00.002+01:00</published><updated>2011-03-04T02:02:32.371+01:00</updated><title type='text'>moving on</title><content type='html'>Some people who follow me on &lt;a href="http://twitter.com/#!/flipjibbet/status/38480515984138240"&gt;twitter &lt;/a&gt;and had some inside connections already knew this was happening, but it probably warrants a proper announcement for anyone else who's still subscribed here or elsewhere.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A couple of weeks ago I tendered my official resignation to QUT. In just over a week I will be starting a new position as lecturer in the School of ITEE at the University of Queensland.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-6400218773215044373?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/6400218773215044373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=6400218773215044373' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6400218773215044373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6400218773215044373'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2011/03/moving-on.html' title='moving on'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4667511573713211203</id><published>2010-10-11T02:50:00.002+02:00</published><updated>2010-10-11T02:58:08.972+02:00</updated><title type='text'>SoSyM paper on interoperability in BIM</title><content type='html'>Last year, Robin and I presented a paper on interoperability of models in the architecture/engineering/construction space. Subsequent to that, with the aid of Bianca (a PhD student of Robin's), we expanded it for a special issue of SoSyM on model interoperability. The final accepted paper is &lt;a href="http://www.springerlink.com/content/7104h47756173761/"&gt;now available online at Springer's site (requires subscription)&lt;/a&gt;.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here's the abstract:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: Myriad, 'Trebuchet MS', sans-serif; color: rgb(119, 119, 119); font-size: 14px; line-height: 20px; "&gt;&lt;blockquote&gt;The exchange of design models in the design and construction industry is evolving away from 2-dimensional computer-aided design (CAD) and paper towards semantically-rich 3-dimensional digital models. This approach, known as Building Information Modelling (BIM), is anticipated to become the primary means of information exchange between the various parties involved in construction projects. From a technical perspective, the domain represents an interesting study in model-based interoperability, since the models are large and complex, and the industry is one in which collaboration is a vital part of business. In this paper, we present our experiences with issues of model-based interoperability in exchanging building information models between various tools, and in implementing tools which consume BIM models, particularly using the industry standard IFC data modelling format. We report on the successes and challenges in these endeavours, as the industry endeavours to move further towards fully digitised information exchange.&lt;/blockquote&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4667511573713211203?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4667511573713211203/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4667511573713211203' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4667511573713211203'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4667511573713211203'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/10/sosym-paper-on-interoperability-in-bim.html' title='SoSyM paper on interoperability in BIM'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4861455733650749130</id><published>2010-07-05T09:02:00.003+02:00</published><updated>2010-07-05T09:08:15.196+02:00</updated><title type='text'>Biden on Copyright</title><content type='html'>Last week (or a little longer ago), US vice president Biden claimed &lt;blockquote&gt;"Piracy is theft, clean and simple"&lt;/blockquote&gt;In fact, not only is "piracy" &lt;i&gt;not &lt;/i&gt;theft, plain and simple (as per the US supreme court in &lt;a href="http://en.wikipedia.org/wiki/Dowling_v._United_States_(1985)"&gt;Dowling vs United States&lt;/a&gt;), nor is c&lt;i&gt;opyright infringement&lt;/i&gt;, which is what he is talking about. The use of the term "piracy" for copyright infringement, is really very unhelpful, and interferes with any attempts to have any useful debate about intellectual property rights, how they should or shouldn't differ from material property rights, and how they can/should be enforced.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4861455733650749130?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4861455733650749130/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4861455733650749130' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4861455733650749130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4861455733650749130'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/07/biden-on-copyright.html' title='Biden on Copyright'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-3457880579785055592</id><published>2010-07-01T07:55:00.003+02:00</published><updated>2010-07-01T08:06:37.444+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPad'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='doing'/><title type='text'>trying the "commercial" software thing</title><content type='html'>A couple of friends and I have written an app for the Apple iPad, called &lt;a href="http://www.puzzlement.com.au"&gt;Puzzlement&lt;/a&gt;. Its a jigsaw puzzle game, selected because we felt it was a good fit for the device's touch interface and form factor (bigger than iPhone). Its development (in which I was the lesser partner of 3) was more difficult than we anticipated, but we put it &lt;a href="http://www.itunes.com/app/Puzzlement"&gt;up in the app store&lt;/a&gt; last week.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is just about the first piece of software that I've worked on that has been sold (actually LCADesign was the first, I think), and certainly the first in whose sales I've had a financial stake. Its been interesting tracking the sales numbers from day to day (and, informally, from hour to hour), and seeing which countries are buying the app and in what numbers. (I've even broken out and engaged in some spreadsheet-fu to track it all.) We had a good first day of sales, but after the initial honeymoon we have realised that making the app successful is going to require some marketing. How we do that remains an open question. The feedback we've had from people who played with the app has been very positive, but we will have to get it into people's hands in order for that to matter.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the sake of relevance to my usual topics of interest, there is only the slightest bit of model-driven engineering in the app - we used Apple's Core Data framework to manage persistence of puzzle state, and it does quite a nice job of what I guess is the low-hanging fruit for MDE - autogenerated OO-DB bridges for managing application state.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-3457880579785055592?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/3457880579785055592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=3457880579785055592' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3457880579785055592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3457880579785055592'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/07/trying-commercial-software-thing.html' title='trying the &quot;commercial&quot; software thing'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2149981783356579720</id><published>2010-06-29T03:54:00.001+02:00</published><updated>2010-06-29T03:55:37.717+02:00</updated><title type='text'></title><content type='html'>My paper on bridging STEP and EMF got knocked back from MoDELS'10 this morning. Shame, I really wanted to go. Its been a long time between conferences now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2149981783356579720?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2149981783356579720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2149981783356579720' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2149981783356579720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2149981783356579720'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/06/my-paper-on-bridging-step-and-emf-got.html' title=''/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-8994043848327756229</id><published>2010-05-07T07:35:00.005+02:00</published><updated>2010-05-07T07:51:10.471+02:00</updated><title type='text'>maybe the NBN will be slower than what we have now</title><content type='html'>I enjoy reading about the NBN (most recently &lt;a href="http://www.abc.net.au/unleashed/stories/s2893063.htm"&gt;here&lt;/a&gt;). What I do find frustrating, though, is that although everyone talks about high bandwidth, no-one seems to mention latency.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For those who haven't studied networks at uni, think of a network connection as a pipe (remembering that the internet is a series of tubes). The bandwidth is how many litres of water can flow down the pipe at once. The latency is the time for any give drop to get from one end to another. Replacing a pipe with a fatter pipe might improve your bandwidth, but unless you increase your pressure or reduce the pipe length, then it won't change your latency.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One of the things I use the internet for a lot is online gaming. The way a gamer cares about their connection is like this. They care about bandwidth a lot at first, because it dictates how fast they can download the game data onto their computer (remembering though that it depends on the width). After that, though, provided they have some minimum level of bandwidth (for current games this might be somewhere above modems but short of low-end ADSL), what they really care is latency. It is latency that determines how long it takes them to register that their enemy is doing something, and for the instruction they give in response to that to get back to the server, etc.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;Its not just games, either. I'd imagine latency is important for commercial applications, too - realtime share or currency trading, for example. With the NBN, everyone is talking about bandwidth (100Mb/s to the home, etc). No-one is talking about latency.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Australia's at a physical disadvantage, firstly. For our packets to hit an American server, there's the small matter of traversing the Pacific Ocean, but I wonder how much of a factor that actually is. How much of the ping time is actually a packet screaming along a wire or a photon screaming down a fibre, and how much is a factor of how many computers are catching, processing and resending the packet in between?&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;My understanding is that the signal moving along the wire happens at something like 50-75% the speed of light (depending on whether its fibre, copper, etc), so I would have guessed that the hubs, switches, routers and firewalls (not to mention content filters) would have a much bigger effect on ping. I would also have guessed that new networks probably get more complex rather than simpler, so perhaps the NBN is going to hurt, rather than help, our ping times.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I wonder if one of the goals for the project shouldn't also be simplifying the network topology to try and control latency. Perhaps it is. I'd love it someone could tell me.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;EDIT: There are plenty of other ways a gamer (or anyone else) cares about their network connection, obviously. Availability, packet loss, scalability under congestion, etc. Latency is the one I think about most, though :)&lt;/i&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8994043848327756229?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8994043848327756229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8994043848327756229' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8994043848327756229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8994043848327756229'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/05/maybe-nbn-will-be-slower-than-what-we.html' title='maybe the NBN will be slower than what we have now'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-122686999954990649</id><published>2010-01-11T02:29:00.002+01:00</published><updated>2010-01-11T02:42:28.658+01:00</updated><title type='text'>Uncertainty</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I am back at work this week, but in a strange position. My present 12-month contract with the university expires this Wednesday, and although my next (6-month) contract has been approved and budgeted within my team, whether it gets through the HR processes before Wednesday remains to be seen. I am fairly zen about it all; I have nothing particularly pressing this week, so a few days extra holiday won't phase me too much. The biggest impact may be on my 7 days of accrued leave from last year. If my contract is renewed, I will have to allocate it in the next few weeks. If not, then I expect it will be paid out, and I'll only have my normal 20 days to spend this year.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I feel like this is a significant year for my future at QUT. My last two years, for various reasons, haven't had the research impact that I would like to have going forward, so this is the year where I think I need to get some papers published, and get some good projects going, to convince myself (and to convince the university) that this is a research direction worth pursuing further. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-122686999954990649?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/122686999954990649/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=122686999954990649' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/122686999954990649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/122686999954990649'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2010/01/uncertainty.html' title='Uncertainty'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4291084771905954145</id><published>2009-05-06T01:35:00.003+02:00</published><updated>2009-05-06T01:49:26.203+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ifc'/><category scheme='http://www.blogger.com/atom/ns#' term='papers'/><title type='text'>model interoperability in virtual design and construction</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A couple of weeks ago, I presented a paper at the Knowledge Industry Survival Strategy (KISS) workshop (associated with the ASWEC conference) on the Gold Coast. The conference was about interoperability in domain-specific languages. Our paper (it was written with Professor Robin Drogemuller) was on the IFC language, the standardised language for interoperability in Architecture/Engineering/Construction software, including CAD tools, and on how it performs as an interoperability language. IFC, which I have been working with now for about 16 months, is comfortably the biggest metamodel I have seen or heard of (much bigger than, for example, CWM or UML2), certainly the broadest and among the most complex. The models are enormous - the example I present in the paper included 7.3 computational objects - and also very complex. It is a compelling example of a DSL.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The paper and presentation were very well received, and were singled out for mention in the &lt;a href="http://www.industrialized-software.org/kiss-initiative"&gt;call for submissions&lt;/a&gt; for the followup workshops at Code Generation and ASE. We also got a &lt;a href="http://www.construction-innovation.info/index.php?id=1192"&gt;mention&lt;/a&gt; on the website and newsletter of the &lt;a href="http://www.construction-innovation.info/index.php"&gt;CRC for Construction Innovation&lt;/a&gt;, under whose auspices were conducted the projects that lead to the observations in the paper.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The &lt;a href="http://industrialized-software.wikidot.com/local--files/kiss-aswec-2009/Steel.pdf"&gt;paper&lt;/a&gt; and &lt;a href="http://industrialized-software.wikidot.com/local--files/kiss-aswec-2009/Steel_slides.pdf"&gt;slides&lt;/a&gt; are up on the workshop website,&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4291084771905954145?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4291084771905954145/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4291084771905954145' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4291084771905954145'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4291084771905954145'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2009/05/model-interoperability-in-virtual.html' title='model interoperability in virtual design and construction'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-496451477485323821</id><published>2008-10-13T07:09:00.002+02:00</published><updated>2008-10-13T07:20:02.984+02:00</updated><title type='text'>steal this blog post.</title><content type='html'>From the book of xkcd. &lt;a href="http://xkcd.com/488/"&gt;Amen&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;(You really can steal my blog post, but you should say you did.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-496451477485323821?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/496451477485323821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=496451477485323821' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/496451477485323821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/496451477485323821'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/10/steal-this-blog-post.html' title='steal this blog post.'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5670973791454773310</id><published>2008-10-13T05:59:00.004+02:00</published><updated>2008-10-13T06:24:55.537+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='refactoring'/><category scheme='http://www.blogger.com/atom/ns#' term='emf'/><title type='text'>refactoring EMF models</title><content type='html'>I'm a software engineer now (well, kind of), so I am qualified to espouse great wisdom on my experiences in software engineering.&lt;br /&gt;&lt;br /&gt;Last week we had cause for a couple of refactorings in our EMF models.&lt;br /&gt;&lt;br /&gt;The first refactoring was very simple. One of our metamodels had a traceability link to source model objects, which needed to be generalised to be able to point to a more structured "assembly" of source model objects. For some reason, I already had a metamodel for these assemblies, so it was a simple matter of moving those metamodel elements into our main metamodel. The generated code for the assemblies hadn't been modified, so I was able to just cut&amp;amp;paste in the EMF editor, and add a reference to allow either single-element or assembly traceability. Then, using eclipse's call hierarchy view, I tracked down all the references to the single-element traceability, and generalised them to handle the new structure.&lt;br /&gt;&lt;br /&gt;The second refactoring was more complicated. For one reason or another, we needed/wanted to change the name of one of our metamodel packages (and some other stuff, but let it just be the name). This meant that almost all of our code would change package, and a number of classes would change classname. Unlike the previous refactoring, this would have a huge effect on our generated code, which would need to be moved to new files, in a way that correctly overrode the default generated code. When you generate "over the top" of files, EMF is good at taking care of this, but I wasn't sure it would work when the generated files are "new". (I was pretty sure it wouldn't).&lt;br /&gt;&lt;br /&gt;The approach we took was to anticipate all the effects of the metamodel changes we were making. We worked out that these were a number of changes to classnames (where the package prefix forms part of the classname), and a number of package renamings. We carried these out (in that order) using eclipse's Java refactoring (which is very good). Notwithstanding some complaints from SVN, this went smoothly. Then, when it came time to regenerate code from the changed metamodel, EMF found itself "overwriting" existing code, rather than creating new code. The refactoring was completed with only one or two lines of code needing to be hand-modified (for the curious, we had neglected to refactor some inner classes).&lt;br /&gt;&lt;br /&gt;A refactoring framework for eclipse would be really nice. I do recall some mention of it on the EMF forum, but I don't know how far they got, or how they were going about it. If I were to go about it, experience like that above would probably lead me to look at essentially mapping eclipse refactorings onto generated Java refactorings (probably implemented as commands, off the top of my head).&lt;br /&gt;&lt;br /&gt;In the interim, my advice would be that whenever you are refactoring a metamodel, think about the consequent changes for your non-generated code, and if necessary consider pre-empting the metamodel refactoring with Java refactoring. This way of thinking might not be elegant (the "no-one thinks about bytecode/binary when they're writing Java/C" argument), but it can save you some pain.&lt;br /&gt;&lt;br /&gt;(From a more academic, "transformation" point of view, this is probably a good argument for traceability in transformations, and for treating "replay" transformations differently to "green field" transformations).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5670973791454773310?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5670973791454773310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5670973791454773310' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5670973791454773310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5670973791454773310'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/10/refactoring-emf-models.html' title='refactoring EMF models'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5835585968199703453</id><published>2008-09-30T10:06:00.003+02:00</published><updated>2008-09-30T10:13:51.287+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='models'/><title type='text'>microsoft oslo</title><content type='html'>I'm really impressed to see Microsoft's continuing push towards modelling as important. Their hiring of good people over the years - Jack, Wojtek, Stuart, Steve, etc -  and recently of recognising the benefit of playing nicely with others on modelling (which I assume is the reason for Steve Cook being back at an OMG meeting after a long absence).&lt;br /&gt;&lt;br /&gt;However, &lt;a href="http://www.microsoft.com/soa/products/oslo.aspx"&gt;this kind of presentation&lt;/a&gt; really makes me cringe. The implication that Microsoft are the real drivers of modelling is kind of rough on the people and companies that have been working on the associated tooling (storing, creating, serialising models, among the things mentioned in the video - no mention of transforming, yet) for a decade or more. I do kind of realise that its not meant for me, and hopefully at some point I'll have the time to check out, or someone will point me towards, what MS are doing. Coming in late does offer them some advantages in terms of cherry-picking the ideas that work from those that maybe don't.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5835585968199703453?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5835585968199703453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5835585968199703453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5835585968199703453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5835585968199703453'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/09/microsoft-oslo.html' title='microsoft oslo'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-1952298956750979346</id><published>2008-09-26T03:22:00.003+02:00</published><updated>2008-09-26T03:26:39.538+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metablogging'/><category scheme='http://www.blogger.com/atom/ns#' term='coding'/><title type='text'>posting hiatus</title><content type='html'>Its been a while since I've posted here, and its not the first time I've said that. I've been engineering away, trying to get the estimator feature-complete. I've had a couple of periods of high productivity, particularly when I implemented the rule language and rule engine, and when I was doing some of the traceability (selection sharing, etc) features. In the interim, there have been some slow sections, and some time spent doing non-development things like investigating how the software scales with really large models (not well), and doing some commercialisation- and publicity-motivated demonstrations.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-1952298956750979346?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/1952298956750979346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=1952298956750979346' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1952298956750979346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1952298956750979346'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/09/posting-hiatus.html' title='posting hiatus'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7825900537665785698</id><published>2008-07-22T01:42:00.001+02:00</published><updated>2008-07-22T01:43:15.306+02:00</updated><title type='text'>meta-pizza</title><content type='html'>Its creator dubbed it "Fractal Pizza", but for this blog, it can only be &lt;a href="http://www.urbanhonking.com/digest/archives/2006/06/fractal_pizza.html"&gt;Meta-Pizza&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7825900537665785698?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7825900537665785698/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7825900537665785698' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7825900537665785698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7825900537665785698'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/07/meta-pizza.html' title='meta-pizza'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-906257353555209594</id><published>2008-05-09T08:52:00.003+02:00</published><updated>2008-05-09T09:09:32.507+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='reviewing'/><title type='text'>What am i reviewing?</title><content type='html'>One of the jobs that becomes more prominent upon the completion of PhD is the reviewing of papers. I probably reviewed a half dozen papers a year during my PhD, usually on behalf of one of the full academics in our team. This year, it will probably wind up more like 20 or so, for a mix of conferences, workshops, and journals.&lt;br /&gt;&lt;br /&gt;What I'm finding is that about 2 out of 3 papers that I review is riddled with basic grammatical errors. I'm more than happy to overlook a certain density of errors, but perhaps half of these present with errors in a density that would see a university paper sent back to the student with a fail, with little regard for the technical merit of the ideas being presented.&lt;br /&gt;&lt;br /&gt;So, do we hold academics to a lower standard than students, on the grounds that a higher proportion are non-native speakers, and that the merits of the ideas outweigh the faults of the presentation?&lt;br /&gt;&lt;br /&gt;Personally, I am finding that my critique of the technical merits of these papers is suffering because I am spending too much time correcting, or simply being frustrated by, faults of presentation. The paper is more difficult to read, so the review takes longer to complete, and the lost continuity makes the technical contribution harder to understand. I also spend less time thinking about the science and the relevant technical questions, because I'm instead scribbling down "needs a definite/indefinite article" and "plural: are not is".&lt;br /&gt;&lt;br /&gt;I am not unsympathetic to the difficulty of writing in a non-native tongue; the summary chapter of my thesis was riddled with grammatical errors (ed: I confess I did send this chapter to a French journal; I regret doing so, and it was quite rightly rejected because of the poor quality of its writing). However, I also spent a long time correcting the grammar of my colleagues at the lab in France so that their papers might be more legible when they reached reviewers. This is when the majority of such correction should be done. By the time a paper reaches a reviewer, there shouldn't be more than a couple of errors per page, at the most.&lt;br /&gt;&lt;br /&gt;Well, there's my rant for the day. It will make me feel 3% less guilty about my review taking so long to get done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-906257353555209594?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/906257353555209594/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=906257353555209594' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/906257353555209594'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/906257353555209594'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/05/what-am-i-reviewing.html' title='What am i reviewing?'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-3040140443164933814</id><published>2008-04-16T08:52:00.003+02:00</published><updated>2008-04-16T08:56:33.050+02:00</updated><title type='text'>timely change</title><content type='html'>I only started using Outlook (or Outrage, as Robin calls it) about 9 months ago, which was about 6 months after I started using Google Calendar. the lack of integration between the two was very frustrating.&lt;br /&gt;&lt;br /&gt;I had initially heard a rumour that a bridge was possibly if one had Outlook 2007, but as I didn't, it didn't help me. Of course, I should have realised that it was a better idea to hope for a solution from Google than from Microsoft. Sure enough, &lt;a href="http://www.google.com/support/calendar/bin/answer.py?answer=89955"&gt;Google Calendar Sync&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;It's missing a few features - it only syncs to the first google calendar (which isn't my "work" calendar), and I'd like to be able to control the privacy settings of the incoming events - but it essentially works.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-3040140443164933814?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/3040140443164933814/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=3040140443164933814' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3040140443164933814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3040140443164933814'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/04/timely-change.html' title='timely change'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7486260658348571310</id><published>2008-04-16T07:13:00.003+02:00</published><updated>2008-04-16T08:36:20.548+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metamodels'/><category scheme='http://www.blogger.com/atom/ns#' term='step'/><category scheme='http://www.blogger.com/atom/ns#' term='models'/><title type='text'>STEP/Express</title><content type='html'>Over the last couple of weeks I've been getting to know STEP/Express. STEP is the language used to define IFC, which is the standard modelling language interchange format in the world I'm working at the moment.&lt;br /&gt;&lt;br /&gt;STEP bears a resemblance to MOF, both in its purpose as a language for defining modeling languages, and structurally, in terms of defining object types, attributes, references (right down to opposites), etc.&lt;br /&gt;&lt;br /&gt;The first two days of the course were to do with Jotne's model server, which is essentially like a MOF repository but with domain-specific extensions for model visualization (plugging into a 3-D IFC viewer). There was a fair bit of support for model versioning (versioned at the model level rather than the object level, and with customisable and/or partial checkin/checkout), permissions (although I wasn't very satisfied with their permission model), and even domain-specific merging.&lt;br /&gt;&lt;br /&gt;The last few days were to do with associated technologies. There is a language, Express-X, for writing what they call "query functions", which are really just server-side procedures. In many ways, Express-X fits the sort of role Kermeta tries to fill for MDE, a language for the manipulation of models. The similarity ends there, though. Express-X is procedural, with global variables, and various other language design decisions that I've never seen (real literals without trailing 0s ("1."), "++" as a generic insertion operator applicable equally for integer increment, set insertion and string concatenation) or things I wouldn't personally have done (1-relative arrays). I won't be carving out a career as an Express-X programmer.&lt;br /&gt;&lt;br /&gt;They also have a bunch of tools that one can imagine for MOF/MDE. They have an ontology-like language which they use for common model elements, much the same way as I've heard MDE people talk about using ontologies. They have a validation framework for people to build model-checking modules, and they're sniffing around some process-modelling stuff.&lt;br /&gt;&lt;br /&gt;This isn't the first architecture I've seen with a lot of things in common with MOF/MDA, and I won't be switching, but its interesting to see people in different fields moving in the same direction.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7486260658348571310?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7486260658348571310/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7486260658348571310' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7486260658348571310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7486260658348571310'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/04/stepexpress.html' title='STEP/Express'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5796889510440164611</id><published>2008-03-20T05:54:00.002+01:00</published><updated>2008-03-20T06:08:41.429+01:00</updated><title type='text'>STEPS</title><content type='html'>(Via &lt;a href="http://lambda-the-ultimate.org/node/2725"&gt;LtU&lt;/a&gt;) &lt;a href="http://www.vpri.org/"&gt;Viewpoints Research&lt;/a&gt; have published the &lt;a href="http://vpri.org/pdf/steps_TR-2007-008.pdf"&gt;first year's status report&lt;/a&gt; on their &lt;a href="http://lambda-the-ultimate.org/node/2021/"&gt;previously discussed&lt;/a&gt; project.&lt;br /&gt;&lt;br /&gt;This is a rebadging of the Squeak-Croquet crowd, who do cute enough stuff with Smalltalk, but whom I've always found much more grandiose in their presentation than in their products. I confess I was a little underwhelmed by Squeak/Croquet when I tried it.&lt;br /&gt;&lt;br /&gt;What struck me about their progress report was its similarity to a lot of the principles of MDE, in terms of lots of languages and transformations between them.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;The central tool – called IS – is a pattern directed transformation system with various levels of&lt;br /&gt;language descriptions from very high level languages in which we write code, all the way to descriptions&lt;br /&gt;of the machine language instructions of our target machines.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;If I understand their reference (they don't cite anything, so its hard to tell), they are a bit dismissive of MDE:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Similarly,&lt;br /&gt;the recent work in modeling (too bad this term got co-opted for this) is only convincing to us if&lt;br /&gt;the models can be automatically extracted&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;... which they can, at least in my envisioning of it all. Nonetheless, beyond the pejorative bits, they're doing some cute stuff, with some striking similarities to things I know about.&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;IS can instantiate new programming paradigms and systems, including itself. It demonstrates the&lt;br /&gt;power of “extreme late binding” and treats many of the static vs. dynamic choices that are traditionally&lt;br /&gt;rigid (compilation, typing, deployment, etc.) more like orthogonal axes along which design&lt;br /&gt;decisions can be placed.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;This gets at the aim of Kermeta as a language engineering workbench - the structural part works well, and the operational part is pretty much there. The idea of compilation, typing, deployment etc as orthogonal design decisions was something that I hinted at in my thesis (modeling type systems as opposed to typing modeling systems) as a direction for Kermeta (one that hasn't yet been explored much, to my knowledge). Indeed, part of the idea of model typing was to enable the implementation of "language aspects", I guess (once again, not yet explored much).&lt;br /&gt;&lt;br /&gt;Its a shame, but there seems to be a lot of "turf" differences between crowds like these guys, the graph transformation crowd, the MIC crowd, the MDE crowd (even within the MDE crowd), which leads to a lot of reinvention of the same paradigm.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5796889510440164611?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5796889510440164611/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5796889510440164611' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5796889510440164611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5796889510440164611'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/03/steps.html' title='STEPS'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4149018410159804829</id><published>2008-02-15T03:13:00.002+01:00</published><updated>2008-02-15T03:15:48.991+01:00</updated><title type='text'>starting with a trickle</title><content type='html'>After four weeks, we now finally have a source code repository, our adopted base framework has been checked in, and stuff from our project is just starting to trickle in. I know we haven't been sitting on our hands up to this point, but it does somehow feel like the project is actually underway now. It's a good feeling.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4149018410159804829?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4149018410159804829/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4149018410159804829' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4149018410159804829'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4149018410159804829'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/02/starting-with-trickle.html' title='starting with a trickle'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2793752060024058888</id><published>2008-02-05T01:13:00.000+01:00</published><updated>2008-02-05T01:14:27.846+01:00</updated><title type='text'>good gantt</title><content type='html'>I've promised to do some Gantt charts. By the end of the week, no less. Honest to blog, what am I becoming?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2793752060024058888?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2793752060024058888/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2793752060024058888' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2793752060024058888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2793752060024058888'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/02/good-gantt.html' title='good gantt'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7420437238923137962</id><published>2008-01-31T07:14:00.000+01:00</published><updated>2008-01-31T07:19:37.232+01:00</updated><title type='text'>random notes from a forgotten workshop</title><content type='html'>I stumbled across some random notes I took in a workshop a while back. &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;"W3C does not produce standards" - you just keep tellin' yourself that!&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Standards groups as a means for market research.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Cult of TBL&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A hundred-pound gorilla is a very small gorilla.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Still no evidence of understanding of conceptual vs representational schemata.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;This post may be interesting to no-one. I'm not sure why I'm posting it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7420437238923137962?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7420437238923137962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7420437238923137962' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7420437238923137962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7420437238923137962'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/01/random-notes-from-forgotten-workshop.html' title='random notes from a forgotten workshop'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-1866178672886814240</id><published>2008-01-16T04:57:00.000+01:00</published><updated>2008-01-16T05:06:54.512+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><title type='text'>back to work</title><content type='html'>I started at &lt;a href="http://www.qut.edu.au/"&gt;QUT&lt;/a&gt; on Monday. I'm working for the &lt;a href="http://www.bee.qut.edu.au/"&gt;Faculty of Built Environment &amp; Engineering&lt;/a&gt;, but I'm physically located in the &lt;a href="http://www.construction-innovation.info/"&gt;CRC for Construction Innovation&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;We're going to be working on migrating some construction-related modelling tools across to Eclipse, as well as expanding and integrating them. Very big metamodels (bigger than UML by some measures), and very big models. I once heard someone from Boeing explain that an aeroplane was not a single thing, but tens of thousands of components flying in very close formation. The models with which we will be dealing are the same, with the exception that, with any luck, they don't fly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-1866178672886814240?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/1866178672886814240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=1866178672886814240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1866178672886814240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1866178672886814240'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/01/back-to-work.html' title='back to work'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2049008366050622350</id><published>2008-01-07T05:48:00.000+01:00</published><updated>2008-01-07T05:51:26.744+01:00</updated><title type='text'>moving on</title><content type='html'>I resigned as a &lt;a href="http://www.nicta.com.au"&gt;NICTA&lt;/a&gt; employee at the start of December, and worked my last day there on the 21st.&lt;br /&gt;&lt;br /&gt;I will start a new position with &lt;a href="http://www.qut.edu.au"&gt;QUT&lt;/a&gt; next Monday.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2049008366050622350?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2049008366050622350/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2049008366050622350' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2049008366050622350'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2049008366050622350'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2008/01/moving-on.html' title='moving on'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4435687343141109446</id><published>2007-12-10T05:01:00.000+01:00</published><updated>2007-12-10T05:03:15.455+01:00</updated><title type='text'>someone using model types</title><content type='html'>Note to self: &lt;a href="http://www.lcc.uma.es/~av/"&gt;Antonio&lt;/a&gt; &lt;a href="http://www.jot.fm/issues/issue_2007_10/paper10/"&gt;seems to have implemented model types&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4435687343141109446?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4435687343141109446/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4435687343141109446' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4435687343141109446'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4435687343141109446'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/12/someone-using-model-types.html' title='someone using model types'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-8758985878440003191</id><published>2007-11-22T08:14:00.000+01:00</published><updated>2007-11-22T08:19:38.289+01:00</updated><title type='text'>What I'd like: Face Search</title><content type='html'>When I was half-awake yesterday, I was thinking about image search. Google offers image search, has for a while, and recently added the ability to restrict results to faces. What I want, though, is the ability to use an image as a search term.&lt;br /&gt;&lt;br /&gt;Now, in the general case, I can see that this would be pretty much impossible. If you restrict it to faces, though, I figure it must start to become tractable.&lt;br /&gt;&lt;br /&gt;I mean, in the short term you could let the user supply a face image and a text search term, then grab all the face results from a google image search, and order them based on their compatibility with the face search term. That'd be cool, I would think.&lt;br /&gt;&lt;br /&gt;Longer term, you could have spiders that search for face pictures and store their characteristics for future comparison against image search terms. I'm not a face recognition person, so maybe I'm kidding myself...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8758985878440003191?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8758985878440003191/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8758985878440003191' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8758985878440003191'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8758985878440003191'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/11/what-id-like-face-search.html' title='What I&apos;d like: Face Search'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4990724462965535946</id><published>2007-10-19T02:14:00.000+02:00</published><updated>2007-10-19T02:23:26.428+02:00</updated><title type='text'>David submits</title><content type='html'>(Via &lt;a href="http://www.itee.uq.edu.au/%7Ehearnden/"&gt;Michael&lt;/a&gt;) &lt;a href="http://www.itee.uq.edu.au/%7Ehearnden/"&gt;David Hearnden&lt;/a&gt; has submitted his thesis, on "Deltaware", about (in broad terms) incremental propagation of changes in model transformations.&lt;br /&gt;&lt;br /&gt;I think this is a really good piece of work, albeit pretty heavy-going for the layman (and, I have to confess, for the non-layman!). Rather than posting a link to the document (which at 541 pages is enormous and I presume still in draft until the reviewers are done with it), I'd encourage people to contact David and discuss it if they're interested, as well as checking out his &lt;a href="http://www.springerlink.com/content/g65233m082433r34/"&gt;paper from MoDELS '06&lt;/a&gt;, which should give a taste of what he's on about.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4990724462965535946?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4990724462965535946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4990724462965535946' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4990724462965535946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4990724462965535946'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/10/david-submits.html' title='David submits'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2747617779068479558</id><published>2007-10-09T02:17:00.000+02:00</published><updated>2007-10-09T02:24:11.538+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metamodels'/><category scheme='http://www.blogger.com/atom/ns#' term='mof'/><category scheme='http://www.blogger.com/atom/ns#' term='generics'/><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>EMF vs ECore</title><content type='html'>Ed Merks &lt;a href="http://ed-merks.blogspot.com/2007/10/is-emf-going-to-replace-mof.html"&gt;responds&lt;/a&gt; to a poll about "EMF vs MOF". As Ed points out, there is by no means a conflict; one is an implementation of the other.&lt;br /&gt;&lt;br /&gt;ECore vs EMOF is more interesting, but once again, as Ed points out, ECore has been an influencer of the recent MOF standards, and there is really little difference. Getting rid of associations was a bit of a drag, but other things like property redefinition and package merges were probably ripe for separating into a "fancier" variant of the MOF standard.&lt;br /&gt;&lt;br /&gt;One issue that might bear future consideration is the introduction of generics into EMOF. In my opinion, the way they're modelled in ECore now is pretty ugly, mainly because of the desire to support in-metamodel erasure of type parameters in order to better mirror Java's generics. I'm a big fan of generics - I was heavily involved in their design, and somewhat involved in their implementation, in Kermeta - but I certainly wouldn't like to see the EMOF metamodel introduce them in the same way as EMF has.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://eclipsesummit.org/summiteurope2007/index.php?page=symposia/#modeling"&gt;Eclipse Modeling Symposium&lt;/a&gt;, also mentioned by Ed, looks reasonably interesting, although there are some notable omissions. Its a shame its on the other side of the world, or I might have looked more closely at the possibility going along.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2747617779068479558?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2747617779068479558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2747617779068479558' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2747617779068479558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2747617779068479558'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/10/emf-vs-ecore.html' title='EMF vs ECore'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2152999649470027889</id><published>2007-10-08T02:25:00.000+02:00</published><updated>2007-10-08T02:26:41.829+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming languages'/><title type='text'>seems fair</title><content type='html'>&lt;a href="http://davidrupp.blogspot.com/2007/10/last-language-war-language-trolling.html"&gt;Programming languages throw down&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;CORBA: Can't we all just get along?&lt;br /&gt;Java: Wow, who knew that guy was still alive.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2152999649470027889?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2152999649470027889/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2152999649470027889' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2152999649470027889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2152999649470027889'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/10/seems-fair.html' title='seems fair'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-19982597420588717</id><published>2007-09-25T08:08:00.000+02:00</published><updated>2007-09-25T08:30:08.633+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming languages'/><category scheme='http://www.blogger.com/atom/ns#' term='future'/><title type='text'>near future of programming languages</title><content type='html'>From &lt;a href="http://foundread.com/2007/09/07/top-10-programming-languages-of-the-future-you-voted/"&gt;Found Red&lt;/a&gt;, via &lt;a href="http://lambda-the-ultimate.org/node/2469"&gt;LtU&lt;/a&gt;, a survey of what will be the main programming languages in 2013. Random tidbits I found disappointing:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;HTML/CSS, Ajax, and .Net aren't really programming languages (one could make a case for .Net by reading it as the core "bytecode" language, but I'm skeptical about how many people will be coding in that, for all that is &lt;a href="https://research.microsoft.com/%7Eakenn/generics/index.html"&gt;reasonably interesting&lt;/a&gt;).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;There isn't much in there suggesting any takeup of innovation in language features. What is the 2013 list that isn't already in the 2001 list? Java generics, I guess. Things like closures, introspection and regexps in the dynamic languages, although it'd be hard to argue they're anything that hadn't already been done 20 years ago. Prototype-based OO (Javascript)? Meh.&lt;/li&gt;&lt;li&gt;No Scala. No Erlang. I'd even settle for an OCaml or Haskell just for diversity's sake. Would ontology zealots argue for a reasoning language? That'd be interesting, but all of these are admittedly unlikely to be top-10 material in that time frame.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-19982597420588717?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/19982597420588717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=19982597420588717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/19982597420588717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/19982597420588717'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/09/near-future-of-programming-languages.html' title='near future of programming languages'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-3373893012552889508</id><published>2007-09-13T02:03:00.000+02:00</published><updated>2007-09-13T02:10:52.262+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><category scheme='http://www.blogger.com/atom/ns#' term='xml'/><category scheme='http://www.blogger.com/atom/ns#' term='bad smells'/><title type='text'>quiet</title><content type='html'>I've been quiet for a while. The things I'm working on now aren't really related to the originally intended subject of this blog - MDE. Specifically, we're working on a Rails app for passing around XML messages based on a couple of emergency specs.&lt;br /&gt;&lt;br /&gt;My initial impressions of Rails have been frustrating. There is a lot of scaffold code that really isn't very obvious, and it seems like you have to have a pretty solid understanding of how the code generation works to be able to use it. Something in me wants to say that this needing to know about things that really should be under the hood is a "bad smell" (I can't immediately find where the phrase "bad smell" comes from in the context of software engineering, I'm afraid).&lt;br /&gt;&lt;br /&gt;My impressions of XML and particularly the XML schemata we're using are also not particularly glowing. I still insist that XML schema is a bad language in which to do conceptual modelling. I'm finding the lack of true graph structures frustrating - there are a whole bunch of places in the schemata where references to other elements are through ID lookups, in order to keep the thing tree-like, and writing helper functions to re-link the graph is monkey work that should be done by a computer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-3373893012552889508?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/3373893012552889508/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=3373893012552889508' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3373893012552889508'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/3373893012552889508'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/09/quiet.html' title='quiet'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7932224601890539129</id><published>2007-07-24T13:31:00.000+02:00</published><updated>2007-07-24T13:36:52.494+02:00</updated><title type='text'>welcome aboard, tim</title><content type='html'>When I got my first summer project with DSTC, I was assigned to the Orbit project, under the direction of &lt;a href="http://www.timbomb.net/blog"&gt;Tim&lt;/a&gt;. On the day I arrived, though, I was told that another student hadn't shown up, so I would be working on MOF, which led me down the road I've been walking for the last 10 years.&lt;br /&gt;&lt;a href="http://www.timbomb.net/blog/2007/07/24/new-job/"&gt;&lt;br /&gt;Apparently&lt;/a&gt; Tim and I will soon be colleagues again, albeit it at a distance. Welcome aboard, Tim! (I would have left this as a comment on Tim's blog, but I couldn't be arsed registering.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7932224601890539129?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7932224601890539129/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7932224601890539129' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7932224601890539129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7932224601890539129'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/07/welcome-aboard-tim.html' title='welcome aboard, tim'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-919335865245504796</id><published>2007-07-23T08:40:00.000+02:00</published><updated>2007-07-23T08:44:46.564+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='hutn javascript json'/><title type='text'>JSON</title><content type='html'>&lt;a href="http://www.json.org/"&gt;JSON&lt;/a&gt; is &lt;a href="http://www.omg.org/technology/documents/formal/hutn.htm"&gt;HUTN&lt;/a&gt; for javascript. They really are almost identical, only JSON doesn't include the class of each object, which makes sense because javascript is prototype-based not class-based.&lt;br /&gt;&lt;br /&gt;Something to keep in mind. I've started to think about a MOF mapping towards something like a prototype-based OO language, and JSON would be a logical alternative HUTN-equivalent if/when I do so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-919335865245504796?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/919335865245504796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=919335865245504796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/919335865245504796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/919335865245504796'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/07/json.html' title='JSON'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-8854150728472111047</id><published>2007-07-23T07:34:00.001+02:00</published><updated>2007-07-23T07:45:37.096+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>Program Committees</title><content type='html'>If anyone is looking for someone to serve on program committees for conferences or workshops related to software modelling (or related areas), then please feel free to contact me. I've previously served as a reviewer for SoSyM, as well as doing reviews on behalf of my superiors for ECOOP, MoDELS, EDOC, ASE, FMCO, ISSRE, ASWEC, MoDeVa, and LMO. For more on my research interests and expertise, I've plonked a list of publications over &lt;a href="http://jimsteel.googlepages.com/publications"&gt;here&lt;/a&gt; (I'll add more links to papers as I'm able). I'm now at a point where I'd like to, and I think am qualified to, contribute more directly to the academic processes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8854150728472111047?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8854150728472111047/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8854150728472111047' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8854150728472111047'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8854150728472111047'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/07/program-committees.html' title='Program Committees'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5156286491832006234</id><published>2007-07-23T06:24:00.000+02:00</published><updated>2007-07-23T07:33:55.920+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DSLs'/><category scheme='http://www.blogger.com/atom/ns#' term='uml'/><category scheme='http://www.blogger.com/atom/ns#' term='ontologies'/><title type='text'>UML vs DSL panel @ Code Generation 2007</title><content type='html'>Via &lt;a href="http://blogs.msdn.com/stevecook/archive/2007/07/17/recording-of-cg2007-panel-session.aspx"&gt;Steve Cook&lt;/a&gt;, a taped panel session from &lt;a href="http://www.codegeneration.net/cg2007/index.php"&gt;Code Generation 2007&lt;/a&gt; discussing UML vs DSLs.&lt;br /&gt;&lt;br /&gt;I've met and heard most of the panelists speak before (with the exception of Matthew Fowler), so I kind of knew their stories, and can understand and respect their positions (made easy since each of them work with good businesses from a technical sense).&lt;br /&gt;&lt;br /&gt;Although I reckon he often goes a little too far and bordering on vituperative, I do find Steve the most convincing of them. The point that DSL design should start with good language design principles is well taken, although I do think he sometimes tars the OMG too widely with the UML brush. Jos Warmer backs him up in this panel, saying that UML makes a pretty crap choice as a general purpose language, and an even worse basis for building DSLs.  I wouldn't argue with that at all.&lt;br /&gt;&lt;br /&gt;The discussion about general purpose modelling languages is interesting. I think UML does try to be a general purpose modelling language, and I think it does so poorly. This last week I've been working with ontology languages like OWL and RDF, which I think get closer to general purpose modelling languages. I think languages like these might be the best foundation to what is mentioned in the panel about building up languages as incremental abstractions on top of a GPML.&lt;br /&gt;&lt;br /&gt;Soon after that, the idea put by Andrew that all upcoming languages are cursed to resemble C/C++ is interesting, in the implication that modelling languages might come to be similarly cursed syntactically by UML. I can see that happening, and as much as I have a soft spot for class diagrams, I can see the danger.&lt;br /&gt;&lt;br /&gt;The points about the need for more sharing between programming language people and modelling language people are spot on. I would say that, though, since I just finished a PhD adapting programming language ideas and techniques for use in a modelling language context. Based on that experience, modelling language people need to do most of the legwork, since they have the most to gain, and possibly have a more agile community in terms of adapting to new ideas. This last point is probably down to just being a much younger space.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5156286491832006234?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5156286491832006234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5156286491832006234' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5156286491832006234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5156286491832006234'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/07/uml-vs-dsl-panel-code-generation-2007.html' title='UML vs DSL panel @ Code Generation 2007'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2528522887687141112</id><published>2007-07-10T06:56:00.000+02:00</published><updated>2007-07-10T07:00:28.218+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><category scheme='http://www.blogger.com/atom/ns#' term='ontologies'/><title type='text'>Employed again</title><content type='html'>Last Wednesday I started as a researcher for &lt;a href="http://www.nicta.com.au/"&gt;NICTA&lt;/a&gt; in the Safe Applications For Emergencies (SAFE) Project, specifically in the &lt;a href="http://www.nicta.com.au/research/projects/smart_applications_for_emergencies/information"&gt;SAFE Information strand&lt;/a&gt;. I don't know much about it yet, but it will almost certainly involve a lot of ontologies, which I'm enjoying learning more about. At some point in my future I'll probably offer my opinions on their strengths and weaknesses relative to other modelling techniques I've used.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2528522887687141112?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2528522887687141112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2528522887687141112' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2528522887687141112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2528522887687141112'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/07/employed-again.html' title='Employed again'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2766326315139237696</id><published>2007-04-24T09:27:00.000+02:00</published><updated>2007-04-24T09:36:17.300+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='model types'/><title type='text'>Defended</title><content type='html'>I defended my thesis yesterday before (in my opinion) an illustrious jury: &lt;a href="http://www.swen.uwaterloo.ca/~kczarnec/"&gt;Krzysztof Czarnecki&lt;/a&gt;, &lt;a href="http://folk.uio.no/birger/"&gt;Birger Møller-Pedersen&lt;/a&gt;, &lt;a href="http://www.sse-tubs.de/staff/rumpe/"&gt;Bernhard Rumpe&lt;/a&gt;, &lt;a href="http://www.cs.colostate.edu/~france/"&gt;Robert France&lt;/a&gt;, and my director, &lt;a href="http://www.irisa.fr/prive/jezequel/"&gt;Jean-Marc Jézéquel&lt;/a&gt;. Another member, &lt;a href="http://www.irisa.fr/lande/jensen/"&gt;Thomas Jensen&lt;/a&gt;, was unable to attend due to personal reasons.&lt;br /&gt;&lt;br /&gt;The defense was successful, and I now have my PhD.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2766326315139237696?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2766326315139237696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2766326315139237696' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2766326315139237696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2766326315139237696'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/04/defended.html' title='Defended'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7288508408815185851</id><published>2007-04-13T22:05:00.000+02:00</published><updated>2007-04-13T22:08:06.642+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='jobs'/><title type='text'>recruiting</title><content type='html'>I'm looking for jobs in the &lt;a href="http://senzee.blogspot.com/2007/02/red-5s-pitch.html"&gt;wrong industry&lt;/a&gt; :)&lt;br /&gt;&lt;br /&gt;(via &lt;a href="http://www.innoq.com/blog/st/2007/04/13/hiring_pitch.html"&gt;Stefan Tilkov&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7288508408815185851?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7288508408815185851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7288508408815185851' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7288508408815185851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7288508408815185851'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/04/recruiting.html' title='recruiting'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4084574127271546581</id><published>2007-04-06T17:03:00.000+02:00</published><updated>2007-04-14T12:45:34.841+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='uml'/><category scheme='http://www.blogger.com/atom/ns#' term='metamodels'/><category scheme='http://www.blogger.com/atom/ns#' term='profiles'/><title type='text'>More UML bashing</title><content type='html'>Further to my &lt;a href="http://thebootstrap.blogspot.com/2007/03/insufficient-controversy.html"&gt;cryptic message&lt;/a&gt; of a few weeks back.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bitterjug.com/"&gt;Mark&lt;/a&gt;, who is next door to my office, is working on a big project (metamodel will probably wind up being 60-100 classes, at a guess), where one of the deliverables is a UML profile.&lt;br /&gt;&lt;br /&gt;Particularly horrifying (to me - I won't speak for him) this week has been watching him try to come to grips with the part of the UML metamodel dealing with templates (somewhere in superstructure). Like any part of UML, it involves skipping through different chapters, volumes and even versions of the UML spec to track down from whence each property has come, then tearing out hair when one realises that it is a case of either:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;A simple idea modelled in a very complicated or unintuitive way (e.g. Partial ordering in Interactions, as I looked at with Jacques a while back), or&lt;/li&gt;&lt;br /&gt;&lt;li&gt;A simple modelling made complicated by being defined through indecipherably long and indirect chains of inheritance and package merges.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Mark's case was a mix. Some of it is relatively simple/logical when you can grok the spec (no easy task). On the other hand, there are some things (ParametrableElement) that are really quite weird.&lt;br /&gt;&lt;br /&gt;Another observation is that some people in the project insist that, since a UML profile is a deliverable, they build their metamodel with that of UML in mind. Being a metamodel purist, I would say the opposite: they should concentrate on the essential ideas of their language, and then worry about the profile when they get to that. I'd be interested to hear people's takes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4084574127271546581?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4084574127271546581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4084574127271546581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4084574127271546581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4084574127271546581'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/04/more-uml-bashing.html' title='More UML bashing'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-1726904216406543422</id><published>2007-03-21T13:32:00.001+01:00</published><updated>2007-03-21T13:32:56.825+01:00</updated><title type='text'>insufficient controversy</title><content type='html'>Every time a UML profile dies, an angel gets its wings.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-1726904216406543422?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/1726904216406543422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=1726904216406543422' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1726904216406543422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1726904216406543422'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/03/insufficient-controversy.html' title='insufficient controversy'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-1979790859286425484</id><published>2007-03-07T14:36:00.000+01:00</published><updated>2007-03-07T15:49:00.124+01:00</updated><title type='text'>what I'm up to</title><content type='html'>It's pleasant, sometimes surprising and, in the most recent case, flattering, to hear about people who happen by my blog from to time. The most recent case made me realize that, although I recently posted about my &lt;a href="http://thebootstrap.blogspot.com/2007/02/unemployed.html"&gt;status in the near future&lt;/a&gt;, I haven't commented on my current status for a while.&lt;br /&gt;&lt;br /&gt;I sent my thesis off to my external examiners a couple of weeks ago (just before &lt;a href="http://thebootstrap.blogspot.com/2007/02/mast-astrenet-12.html"&gt;heading over to London&lt;/a&gt;), and am currently working on a French summary in order to please the administration here at the end of this week. After that, and depending on the feedback of my examiners, I expect to defend my thesis in late April. There is a provisional date, and if and when it fixes itself (once again, at the good graces of my examiners), then I'll post it here.&lt;br /&gt;&lt;br /&gt;In the meantime, I have a few things to occupy myself, in terms of getting a paper written for an upcoming conference deadline and fixing some things in Kermeta in order that its model types might be made ready for prime time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-1979790859286425484?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/1979790859286425484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=1979790859286425484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1979790859286425484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1979790859286425484'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/03/what-im-up-to.html' title='what I&apos;m up to'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2001419488958142851</id><published>2007-02-26T11:24:00.000+01:00</published><updated>2007-02-26T11:27:15.695+01:00</updated><title type='text'>unemployed</title><content type='html'>I guess its worth mentioning that, as of the end of April, I will be unemployed. If anyone reading this has offers for interesting work in either academic or applied research in software engineering, and particularly in model-driven engineering, then I'd be happy to hear about it. My preference is to return to Australia, but I'll listen to ideas from pretty much anywhere.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2001419488958142851?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2001419488958142851/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2001419488958142851' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2001419488958142851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2001419488958142851'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/02/unemployed.html' title='unemployed'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-7459757307221199760</id><published>2007-02-26T11:02:00.000+01:00</published><updated>2007-02-26T11:24:07.547+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='conferences'/><title type='text'>MAST (ASTReNet 12)</title><content type='html'>Last week I went over to London for the 12th ASTReNet workshop, on Model Analysis, Slicing and Transformation, having been invited by Laurie.&lt;br /&gt;&lt;br /&gt;The ASTReNet group (of which I am happy to now be a member), as represented by those attending, seems to consist mainly of source-code analysis folks, with a periphery of people from formal methods and modelling. This installment had a focus on modelling, and we congregated at the too-modestly-named Goodenough College.&lt;br /&gt;&lt;br /&gt;There were a handful of talks on various things, the most interesting to me being those by Tony Clark and Richard Paige. We also had a fairly good discussion at the end of the day, much of which was kind of a meeting of the modelling and analysis folks to see what each was doing and what each thought of the other. Perhaps people were just being very English, but I was surprised at how civilized and productive the discussion was.&lt;br /&gt;&lt;br /&gt;Of course, I also had the chance to catch up with people. I had good chats with people I knew like Laurie, Iman and Andrew Watson, with people I'd heard of but not previously met like Tony Clark and Awais Rashid, and with people I hadn't, like Richard Paige from York.&lt;br /&gt;&lt;br /&gt;Strangely, the MDE folks I talked to said that this was pretty much the first assembly they'd had since the workshop I attended in Canterbury back in 2004. Its a shame; between the people working at places like Kings, Canterbury, York and Sheffield, I would have thought they certainly have the critical mass to do so more often.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-7459757307221199760?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/7459757307221199760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=7459757307221199760' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7459757307221199760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/7459757307221199760'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/02/mast-astrenet-12.html' title='MAST (ASTReNet 12)'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-4859205713120288612</id><published>2007-01-31T13:26:00.000+01:00</published><updated>2007-01-31T19:53:32.103+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mof'/><category scheme='http://www.blogger.com/atom/ns#' term='type systems'/><title type='text'>towards formalisms for model-like structures</title><content type='html'>Michael &lt;a href="http://www.lawley.id.au/blog/2007/01/31/relationships-as-first-class-language-constructs/"&gt;posts&lt;/a&gt;, based on an &lt;a href="http://lambda-the-ultimate.org/node/2013"&gt;LtU post&lt;/a&gt;[1], about a &lt;a href="http://homepages.inf.ed.ac.uk/wadler/fool/program/final/4/4_Paper.pdf"&gt;paper for formalising associations as first-class language concepts&lt;/a&gt;. Indeed, I cite this paper in &lt;a href="http://thebootstrap.blogspot.com/2007/01/model-typing-paper.html"&gt;my SoSyM paper on model types&lt;/a&gt; and in my thesis, and its very interesting work.&lt;br /&gt;&lt;br /&gt;The other element of modelling structures (as understood by us MOF-ites) that is not necessarily common in type system models, is that of metaclasses, and by implication meta-levels (if you believe in that sort of thing).&lt;br /&gt;&lt;br /&gt;There's &lt;a href="http://homepages.inf.ed.ac.uk/wadler/fool/program/final/7/7_Paper.pdf"&gt;a paper by Tobin-Hochstadt and Allen from Sun about this&lt;/a&gt;, which was presented at FOOL[2] the same year that Bierman &amp; Wren's association stuff was. Recommended.&lt;br /&gt;&lt;br /&gt;For those inclined to more ambitious type theories, there was some work done on this by folk like Robert Constable in the 90s using constructive type theory (which is elegant, promising, not quite ready for the mainstream due to problems like decidability of dependent types). Along the same lines, &lt;a href="http://www.dcs.kcl.ac.uk/staff/iman/"&gt;Iman Poernomo&lt;/a&gt; has had a couple of &lt;a href="http://dx.doi.org/10.1007/11786160_15"&gt;good&lt;/a&gt; &lt;a href="http://doi.acm.org/10.1145/1141277.1141710"&gt;papers&lt;/a&gt; recently about mapping the MOF to CTT, although without special emphasis on metaclasses as such.&lt;br /&gt;&lt;br /&gt;[1] Laurie once called LtU the &lt;a href="http://tratt.net/laurie/tech_articles/articles/tail_call_optimization"&gt;last resort of the programming scoundrel&lt;/a&gt;, and he's probably right&lt;br /&gt;[2] If there was ever a series of workshops with higher quality papers than &lt;a href="http://www.cis.upenn.edu/~bcpierce/FOOL/"&gt;FOOL&lt;/a&gt;, I haven't heard of it. Stuff there is off the hook, yo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-4859205713120288612?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/4859205713120288612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=4859205713120288612' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4859205713120288612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/4859205713120288612'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/01/towards-formalisms-for-model-like.html' title='towards formalisms for model-like structures'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5109715830405976075</id><published>2007-01-23T21:29:00.000+01:00</published><updated>2007-01-23T21:38:56.523+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metablogging'/><category scheme='http://www.blogger.com/atom/ns#' term='thesis'/><title type='text'>update</title><content type='html'>I suppose it makes little sense to excuse a lack of post for a blog that has only seen twenty in the last year. Its not been so much for a lack of ideas, but for a lack of ideas that stand on their own and strike me as blog-worthy. This blog has proven much less satisfying than my personal blog, just because I've been less inclined to keep it active. With a little luck, that may change at some point in the nearish future.&lt;br /&gt;&lt;br /&gt;I'm in the midst of writing up my thesis, which is basically about model types, along the lines of what my &lt;a href="http://thebootstrap.blogspot.com/2007/01/model-typing-paper.html"&gt;SoSyM paper&lt;/a&gt; talks about. The thesis is coming along, and I hope to be able to send it to reviewers in the next few weeks. The process of choosing who exactly these reviewers will be is quite a distraction, and although begun, is proving frustrating to finalise.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5109715830405976075?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5109715830405976075/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5109715830405976075' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5109715830405976075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5109715830405976075'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/01/update.html' title='update'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-8481079069601096135</id><published>2007-01-17T23:48:00.000+01:00</published><updated>2007-01-31T19:50:27.035+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='model types'/><category scheme='http://www.blogger.com/atom/ns#' term='papers'/><title type='text'>Model Typing paper</title><content type='html'>The &lt;a href="http://thebootstrap.blogspot.com/2005/10/model-typing-paper.html"&gt;paper I presented at Models 2005&lt;/a&gt; was invited for extension and submission for the SoSyM journal, and the extended version was accepted and is &lt;a href="http://dx.doi.org/10.1007/s10270-006-0036-6"&gt;now online here&lt;/a&gt;. For those who don't have access to the journal, its also &lt;a href="http://www.irisa.fr/triskell/publis/2007/Steel07a.pdf"&gt;here&lt;/a&gt;. I would encourage those who do to patronise the site of the publisher, who do a good job.&lt;br /&gt;&lt;br /&gt;I won't repeat the abstract, since it hasn't changed much from the original paper. The ideas of the paper are the same, that having the idea of model as a first-class concept is a good idea, and that these models may be typed in a way so as to make programs robust to variation in metamodels.&lt;br /&gt;&lt;br /&gt;In the original paper the formalisation of these ideas, such as it was, was expressed as OCL constraints, and was certainly naive and probably flawed. In the revised version, the formalism is expressed as an adaptation of existing type systems ideas, notably Bruce &amp; Vanderwaart's Type Groups.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8481079069601096135?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8481079069601096135/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8481079069601096135' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8481079069601096135'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8481079069601096135'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2007/01/model-typing-paper.html' title='Model Typing paper'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-6285589569570456528</id><published>2006-12-12T11:39:00.000+01:00</published><updated>2006-12-12T11:44:35.721+01:00</updated><title type='text'>David on EMF</title><content type='html'>Software should be described along the lines of the &lt;a href="http://www.bloglines.com/blog/DavidHearnden?id=22"&gt;following&lt;/a&gt;:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;What seemed to begin as a promotion of extensibility has now resulted in premature abstraction from too much coupling and it just makes the platform flaccid - all of the classes are too timid to take responsibility for anything.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bloglines.com/blog/DavidHearnden"&gt;David&lt;/a&gt; is blogging again, it appears (and has been for a while). He seems to move blogs often, and I had lost track of him. Its good to have him back on the 'roll.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-6285589569570456528?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/6285589569570456528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=6285589569570456528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6285589569570456528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6285589569570456528'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/12/david-on-emf.html' title='David on EMF'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-529338178879963393</id><published>2006-12-11T17:38:00.000+01:00</published><updated>2006-12-11T17:40:40.060+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><title type='text'>scala</title><content type='html'>Throughout the year I've been running more and more into programming language research. The most impressive thing I've seen therein is &lt;a href="http://scala.epfl.ch/"&gt;Scala&lt;/a&gt;. For anyone who knows or is curious about current work in type systems and programming languages, Scala is pretty much the cat's pyjamas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-529338178879963393?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/529338178879963393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=529338178879963393' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/529338178879963393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/529338178879963393'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/12/scala.html' title='scala'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-8238710723287051364</id><published>2006-10-19T11:04:00.000+02:00</published><updated>2006-10-19T11:12:58.353+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='coding'/><title type='text'>purity lost</title><content type='html'>I worked up an algorithm (and the little data structure for supporting it) on a whiteboard on Tuesday night, refined it on Wednesday morning, and it was all shiny and good. Then I sat down to implement it into the system, and it all went to crap. The devil lives in the details, and although I think the algorithm is still sound, the hoops I'm having to jump through to handle corner cases are making the actual implementation so much less pleasant than the shiny design suggested it was going to be.&lt;br /&gt;&lt;br /&gt;For those who are interested, the algorithm is object-type matching (&amp;lt;#) for comparison of two metamodels. Pretty simple, except its heavily cyclical - one match depending on another, or on the disjunction of a bunch of others. Runs the risk of being pretty expensive, but hey, its prototyping! The complicating factors include enumerations, primitive types, parameterised types, virtual types and type variables, and duplicate objects who don't properly implement equals().&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-8238710723287051364?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/8238710723287051364/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=8238710723287051364' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8238710723287051364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/8238710723287051364'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/10/purity-lost.html' title='purity lost'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-1090611679832496430</id><published>2006-10-17T10:54:00.000+02:00</published><updated>2006-10-17T11:22:27.892+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cobol'/><title type='text'>fallback</title><content type='html'>One day, when research loses its appeal and I'm no longer fascinated by what's new in programming, I'll just &lt;a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=266228"&gt;learn COBOL&lt;/a&gt; and go find a mail-it-in 9-to-5 maintenance job.&lt;br /&gt;&lt;br /&gt;*Shiver*&lt;br /&gt;&lt;br /&gt;Seriously, though. 62% of IT managers says they use COBOL? Those are horror film numbers. &lt;span style="font-style:italic;"&gt;Most&lt;/span&gt; students aren't learning COBOL in school any more? No kidding. I'm surprised that &lt;span style="font-style:italic;"&gt;any&lt;/span&gt; are.&lt;br /&gt;&lt;br /&gt;(via &lt;a href="http://patricklogan.blogspot.com/2006/10/of-course.html"&gt;Patrick Logan&lt;/a&gt;, &lt;a href="http://radar.oreilly.com/archives/2006/10/cobol_the_undea.html"&gt;Nat Torkington&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-1090611679832496430?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/1090611679832496430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=1090611679832496430' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1090611679832496430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/1090611679832496430'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/10/fallback.html' title='fallback'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-6472844692701326041</id><published>2006-09-27T10:57:00.000+02:00</published><updated>2006-09-27T11:11:05.472+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mof'/><category scheme='http://www.blogger.com/atom/ns#' term='logic'/><title type='text'>mofstalgia</title><content type='html'>I was surprised when a &lt;a href="http://thebootstrap.blogspot.com/2005/02/modelog.html"&gt;Brazilian cited a kinda-publication&lt;/a&gt; of mine early last year. Well, here we go again. Our new Brazilian masters student, Rodrigo, is interested in the work too. As an update, what we did was a mapping from MOF models and metamodels to F-Logic facts and predicates in order to permit F-logic reasoning for searching and transforming models.&lt;br /&gt;&lt;br /&gt;This time it was nice in that, courtesy of &lt;a href="http://www.lawley.id.au/blog"&gt;Michael&lt;/a&gt;, I was able to grab the source of our old mapping and show it to Rodrigo. It was a little embarassing - the MOFLog work was very much cardboard and string and, looking now, fairly poorly-architected cardboard. Beyond embarassing, what is sad is that I'm unable to actually demonstrate it to him since I no longer have a dMOF repository against which to run the mapping, and since only non-generated files where checked into the CVS repository, I have no examples of the mapping - only its implementation.&lt;br /&gt;&lt;br /&gt;In many ways, dMOF has been superseded in any case. MOF 2.0 really is much nicer to model in and program against than MOF 1.x was, and having a repository like EMF supported by IBM is nice. That said, dMOF had some nice advantages in terms of deployability, and some stuff like its database connectivity that, though I didn't use it at the time, remains cool.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-6472844692701326041?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/6472844692701326041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=6472844692701326041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6472844692701326041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/6472844692701326041'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/09/mofstalgia.html' title='mofstalgia'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-2219826210555191985</id><published>2006-09-27T10:51:00.000+02:00</published><updated>2006-09-27T10:52:18.309+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='metablogging'/><title type='text'>service</title><content type='html'>Upgraded to Blogger Beta, and fixed my blogroll to reference bloglines. Normal (non-)service continues.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-2219826210555191985?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/2219826210555191985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=2219826210555191985' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2219826210555191985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/2219826210555191985'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/09/service.html' title='service'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-5394123119297317099</id><published>2006-09-14T19:32:00.000+02:00</published><updated>2006-09-14T19:34:40.970+02:00</updated><title type='text'>doppelganger</title><content type='html'>&lt;a href="http://www.ee.kent.ac.uk/department/staff_detail.aspx?id=191"&gt;David Akehurst&lt;/a&gt; and &lt;a href="http://www.imdb.com/name/nm0589505/"&gt;Wentworth Miller&lt;/a&gt; are the same man. Its scary.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-5394123119297317099?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/5394123119297317099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=5394123119297317099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5394123119297317099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/5394123119297317099'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/09/doppelganger.html' title='doppelganger'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115399420571127591</id><published>2006-07-27T11:43:00.000+02:00</published><updated>2006-07-27T11:56:45.733+02:00</updated><title type='text'>paper reviews</title><content type='html'>Part of my job (such as it is) is to review papers for workshops, journals, conferences, and such like. The majority of the time, I have only limited or moderate expertise in the domain, and have to do a little background research into it, or to an extent trust the authors' characterisations of the field.&lt;br /&gt;&lt;br /&gt;Every now and then, I get a paper that is really in my backyard, where I know the works they cite, and am very familiar with the characterisations they make. Usually, such a case ends with me swearing every half-page at something they've gotten (IMHO) wrong, or a decision where they've taken (IMHO) the wrong path. This has never been more true than the paper I'm reviewing at the moment. I'm right in the field, and every page or so I have the almost irresistable urge to hunt them down and beat them upside the head. If their gross misconceptions weren't bad enough, they're basically working on (IMHO) a non-existent problem masquerading as a serious roadblock, and are pretty much wasting their time and, more importantly, mine.&lt;br /&gt;&lt;br /&gt;This post is a salve (-o?) in order to avoid tipping my hand by getting into the problem or authors in question. At some point in the not-too-distant future, I'll find a pretext to discuss the research problem outside the context of this review, which must obviously remain confidential and anonymous.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115399420571127591?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115399420571127591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115399420571127591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115399420571127591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115399420571127591'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/07/paper-reviews.html' title='paper reviews'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115391533864369612</id><published>2006-07-26T14:01:00.000+02:00</published><updated>2006-07-26T14:02:18.656+02:00</updated><title type='text'>DabbleDB pitch</title><content type='html'>Seriously impressive &lt;a href="http://www.dabbledb.com/utr/"&gt;pitch&lt;/a&gt; of &lt;a href="http://www.dabbledb.com"&gt;DabbleDB&lt;/a&gt; (&lt;a href="http://www.innoq.com/blog/st/2006/07/26/dabble_db.html"&gt;via Stefan Tilko&lt;/a&gt;). &lt;br /&gt;&lt;br /&gt;This is the sort of slick app that comes about when a technology (in this case basically databases, though there's a lot of web 2.0 in there as well) is mature. I want to see DabbleModel within about 3-4 years' time, where instead of fiddling data tables and db schemas behind the scenes, it fiddles models, metamodels and transformations. Its really not a big change - the modelling stuff is already there, although model and metamodel refactorings, and the relationship between them, are things I haven't seen done well yet, even conceptually.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115391533864369612?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115391533864369612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115391533864369612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115391533864369612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115391533864369612'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/07/dabbledb-pitch.html' title='DabbleDB pitch'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115226107160901952</id><published>2006-07-07T10:23:00.000+02:00</published><updated>2006-07-07T10:31:11.620+02:00</updated><title type='text'>paper accepted</title><content type='html'>A paper with my name on it got accepted to ISSRE 2006 the other week, on test case generation for model transformations. This is pretty satisfying. I wasn't directly involved with the writing of this revision, but its the fourth or fifth conference to which we have submitted this work, and I was pretty heavily involved in the ideas at the beginning. Whether our continuing revisions made the difference, or whether the domain evolved to make our work more interesting, or whether its just dumb luck to get some reviewers who get what we're doing, it'll be published now, which should let Erwan &amp; Benoit in particular move on with the work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115226107160901952?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115226107160901952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115226107160901952' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115226107160901952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115226107160901952'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/07/paper-accepted.html' title='paper accepted'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115087892109077421</id><published>2006-06-21T09:29:00.000+02:00</published><updated>2006-06-21T10:35:21.116+02:00</updated><title type='text'>MoDeVa 2006</title><content type='html'>MDA/E/SD is coming along, but one of the areas where it still really needs work is on verification and validation. Testing model transformations was something that I looked at with Franck a while ago, and while it seems difficult at first, it only gets moreso the closer you look. We also had some frustration when we were building Tefkat in terms of writing and particularly maintaining a test suite for the engine. More recently, my &lt;a href="http://thebootstrap.blogspot.com/2005/10/model-typing-paper.html"&gt;model typing ideas&lt;/a&gt; play a little into the verification space.&lt;br /&gt;&lt;br /&gt;Ergo, we have the &lt;a href="http://modeva.itee.uq.edu.au/"&gt;MoDeVa workshop&lt;/a&gt;. The first MoDeVa workshop was held a couple of years ago at ISSRE'04 in Rennes/St Malo, and it ran &lt;a href="http://www.irisa.fr/manifestations/2005/MODEVA2005/"&gt;again&lt;/a&gt; last year at MoDELS'05 in Montego Bay. The quality of papers has improved at each step, I think, and &lt;a href="http://modeva.itee.uq.edu.au/"&gt;this year&lt;/a&gt; there should be a better breadth of papers again, with more people starting to look at verifying and testing model-driven systems. I'd encourage anyone with interest in these problems to come along, and to submit a paper (deadline: 31 July) if they have ideas or experiences they'd like to share.&lt;br /&gt;&lt;br /&gt;Disclaimer: I'm on the program committee.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115087892109077421?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115087892109077421/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115087892109077421' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115087892109077421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115087892109077421'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/06/modeva-2006.html' title='MoDeVa 2006'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115072854597352848</id><published>2006-06-19T16:41:00.000+02:00</published><updated>2006-06-19T16:49:05.986+02:00</updated><title type='text'>Benjamin Pierce on bidirectional transformation</title><content type='html'>I got my copy of &lt;a href="http://www.cis.upenn.edu/~bcpierce/tapl/"&gt;Types and Programming Languages&lt;/a&gt; (along with &lt;a href="http://www.cis.upenn.edu/~bcpierce/attapl/index.html"&gt;Advanced Topics in Types and Programming Languages&lt;/a&gt; and &lt;a href="http://www.cs.pomona.edu/~kim/FOOLbook.html"&gt;Fundamentals of Object-Oriented Languages: Types and Semantics&lt;/a&gt;) last week, and while reading it wandered over to &lt;a href="http://www.cis.upenn.edu/~bcpierce/"&gt;Benjamin Pierce's site&lt;/a&gt;. His &lt;a href="http://www.cis.upenn.edu/~bcpierce/papers/lenses-etapsslides.pdf"&gt;latest presentation&lt;/a&gt; talks about the data synchronisation issues that they address in their &lt;a href="http://www.seas.upenn.edu/~harmony/"&gt;Harmony project&lt;/a&gt;. There may very well be things to be learnt from Harmony for model transformation, and particularly for bidirectional transformation and change propagation.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115072854597352848?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115072854597352848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115072854597352848' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115072854597352848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115072854597352848'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/06/benjamin-pierce-on-bidirectional.html' title='Benjamin Pierce on bidirectional transformation'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-115018968755557610</id><published>2006-06-13T11:01:00.001+02:00</published><updated>2006-06-13T11:08:07.570+02:00</updated><title type='text'>mutation testing workshop</title><content type='html'>In the interests of keeping this blog active, and of giving Benoit some much-needed press, this is a heads-up for the &lt;a href="http://www.irisa.fr/manifestations/2006/Mutation2006/"&gt;Mutation '06 workshop&lt;/a&gt;, linked to &lt;a href="http://www.csc2.ncsu.edu/conferences/issre/"&gt;ISSRE 06&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I'm not working with mutation testing myself, but MDA-wise, Jean-Marie Mottu here at our lab has done some interesting things on mutation testing for transformations, both for Kermeta and for Tefkat. I believe there has also been some work done at the uni of Queensland by &lt;a href="http://www.itee.uq.edu.au/~soon/"&gt;Soon-Kyeong Kim&lt;/a&gt; and her group. Its an interesting field, and pleasingly meta- for someone like me, since its generally about testing your testing (as I understand it). Appropriate also given the name of this blog, I suppose.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-115018968755557610?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/115018968755557610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=115018968755557610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115018968755557610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/115018968755557610'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/06/mutation-testing-workshop_13.html' title='mutation testing workshop'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114923843302870942</id><published>2006-06-02T10:49:00.000+02:00</published><updated>2006-06-02T10:53:53.040+02:00</updated><title type='text'>question?</title><content type='html'>So, for the 2 people who actually read this blog, I have a question. What's the prevailing doctrine on generated files and version control?&lt;br /&gt;&lt;br /&gt;I'm getting back to code today, and instantly realised the magnitude of the error I made by not branching my changes from the main trunk right from the start. Having a checked-out copy with changes while 2 busy months passed on the trunk means that I now have 400 or so changed files to sift through, 260 of which are conflicts. I reckon a good three quarters of those are generated files. Its my own fault for not managing my development properly, but are my problems being amplified by having generated files checked in?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114923843302870942?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114923843302870942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114923843302870942' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114923843302870942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114923843302870942'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/06/question.html' title='question?'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114541521192673407</id><published>2006-04-19T04:48:00.000+02:00</published><updated>2006-04-19T04:56:15.436+02:00</updated><title type='text'>talk at UQ</title><content type='html'>I gave a talk at UQ on model typing the other day (last Wednesday afternoon, to be exact), for the &lt;a href="http://www.itee.uq.edu.au/~sse/"&gt;Systems &amp; Software Engineering Research Group&lt;/a&gt;. Present were people I know from recent times, David Hearnden, Jörn-Guy Süss &amp; Geoff Watson, people I knew from my undergraduate days, David Carrington &amp; Paul Strooper (and perhaps Luke Wildman), and others whom I hadn't previously met, including Soon-Kyeong Kim. The latter has been doing some work on testing model transformations using the test criteria proposed in the MoDeVa paper I wrote with Franck &amp; Benoit a couple of years back, so there will probably be some follow-up on that. I chatted with Jörn about workshop proposals for this year's MoDELS conference, and with David about various model typing and model-driven system evolution issues.&lt;br /&gt;&lt;br /&gt;I'll be giving the talk at QUT tomorrow (Thursday). On the off chance that anyone reading this is interesting in coming and hasn't already been made aware, I believe it's at midday at 126 Margaret St.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114541521192673407?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114541521192673407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114541521192673407' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114541521192673407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114541521192673407'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/04/talk-at-uq.html' title='talk at UQ'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114163891369627286</id><published>2006-03-06T10:50:00.000+01:00</published><updated>2006-03-09T13:31:56.300+01:00</updated><title type='text'>tefkat</title><content type='html'>That is, The Engine Formerly (Ed: and Formally, but mainly Formerly) Known as Tefkat. It wasn't really a geekronym until it was recursive, in any case.&lt;br /&gt;&lt;br /&gt;By way of explanation, Tefkat is &lt;a href="https://sourceforge.net/projects/tefkat/"&gt;back on the air&lt;/a&gt;, and now opensourc-ier than ever. As Michael &lt;a href="http://www.lawley.id.au/blog/2006/03/05/tefkat-lives-again/"&gt;suggests&lt;/a&gt;, its pretty basic at this point viz-a-viz builds, website, and refactoring, but that'll no doubt change before too long.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114163891369627286?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114163891369627286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114163891369627286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114163891369627286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114163891369627286'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/03/tefkat.html' title='tefkat'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114079005614599476</id><published>2006-02-24T14:44:00.000+01:00</published><updated>2006-02-24T15:07:36.193+01:00</updated><title type='text'>Just when I thought I was out...</title><content type='html'>I suggested 18 months ago that HUTN would be soon forgotten, and I wasn't far wrong. Every now and then, though, someone dredges it up. Someone wrote a paper for a MoDELS workshop last year bagging it, even though I reckon they just misunderstood how formal it wasn't supposed to be. And last night some poor fool tried to raise issues against the spec! Poor fool only because he doesn't realise that no-one in the OMG gives a good goddamn anymore if the HUTN spec has a few bugs. Of course, the OMG don't care because basically no-one else cares, so its all fair play.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114079005614599476?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114079005614599476/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114079005614599476' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114079005614599476'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114079005614599476'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/02/just-when-i-thought-i-was-out.html' title='Just when I thought I was out...'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114011268167174659</id><published>2006-02-16T18:57:00.000+01:00</published><updated>2006-02-16T18:58:01.683+01:00</updated><title type='text'>(NiceLanguage) Java</title><content type='html'>I'd forgotten just how often you cast in Java. It's giving me the shits already. Ruby spoilt me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114011268167174659?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114011268167174659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114011268167174659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114011268167174659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114011268167174659'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/02/nicelanguage-java.html' title='(NiceLanguage) Java'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114009283405523681</id><published>2006-02-16T13:22:00.000+01:00</published><updated>2006-02-16T13:27:14.056+01:00</updated><title type='text'>EMF refactorings</title><content type='html'>I'm just dipping my toes back into development waters this week. One thing I've noticed is that the refactoring support in Eclipse is really nice, and it would be really nice to have a similar thing in EMF.&lt;br /&gt;&lt;br /&gt;For example, I was rummaging around in Kermeta yesterday and found a spelling mistake in one of the classes of its metamodel. Now, if the mistake was in a java interface I could refactor it and have help finding all the references to it, in order to change them accordingly. However, since there's no refactoring in EMF, it becomes a nasty task of using java refactoring where possible and then scrambling around to make sure all the cases have been caught.&lt;br /&gt;&lt;br /&gt;There's probably an implied story here about change propagation. Really, the change of the class name needs to be propagated across the code generator, which can then invoke the refactoring tools.&lt;br /&gt;&lt;br /&gt;This is what some people call a "worthy" problem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114009283405523681?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114009283405523681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114009283405523681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114009283405523681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114009283405523681'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/02/emf-refactorings.html' title='EMF refactorings'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-114009236264342859</id><published>2006-02-16T13:09:00.000+01:00</published><updated>2006-02-16T13:21:26.483+01:00</updated><title type='text'>a quick update</title><content type='html'>To be honest, I'm not very satisfied with this blog. I think my biggest problem comes from the fact that I posted something online (not even here actually) last year and someone reused my idea without the level of attribution that I would have liked. Since then I've been reluctant to post ideas here for fear that others might claim them as their own.&lt;br /&gt;&lt;br /&gt;As an update to what I've been doing, a couple of weeks ago I submitted a revised version of my &lt;a href="http://thebootstrap.blogspot.com/2005/10/model-typing-paper.html"&gt;MoDELS paper&lt;/a&gt; to &lt;a href="http://www.sosym.org/"&gt;SoSyM&lt;/a&gt;. It changed quite a bit - I've been working on type systems formalisms for better defining the concepts of model type substitutability, and I think its a much more credible piece of work now. I still need to finish it off though and turn it into a coherent type system, something I intend to get to next month.&lt;br /&gt;&lt;br /&gt;Right now, I'm starting to build the model typing ideas into &lt;a href="http://www.kermeta.org"&gt;Kermeta&lt;/a&gt;. There are a bunch of things that make this more complicated that the theory I've been doing - product types, function types and most interestingly parameterised types - but mainly this just makes it more exciting, since these things really raise interesting usage scenarios. If I can get it working, it should be a good validation of my ideas. Also, I believe it would make Kermeta the first model-oriented language (transformation language or otherwise) with models as a first-class concept. Correct me if I'm wrong, people.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-114009236264342859?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/114009236264342859/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=114009236264342859' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114009236264342859'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/114009236264342859'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/02/quick-update.html' title='a quick update'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-113802284345930041</id><published>2006-01-23T14:09:00.000+01:00</published><updated>2006-01-23T14:27:23.643+01:00</updated><title type='text'>tefkat paper now online</title><content type='html'>The paper I co-wrote with &lt;a href="http://www.lawley.id.au/cgi-bin/blosxom.cgi/lawley/"&gt;Michael Lawley&lt;/a&gt; last year for the Model Transformations In Practice (MTIP) workshop at &lt;a href="http://www.cs.colostate.edu/models05/"&gt;MoDELS '05&lt;/a&gt;, entitled "Practical Declarative Model Transformation with Tefkat", is now &lt;a href="http://dx.doi.org/10.1007/11663430_15"&gt;available online&lt;/a&gt; for those with a Springer subscription. Though Michael did the bulk of the writing, I presented the paper at the workshop, which I thought was a really useful forum, and we were lucky enough to have it subsequently selected as one of two papers from the workshop published in the conference's satellite proceedings.&lt;br /&gt;&lt;br /&gt;One day, when I have some time, I'll try to put up a PDF version for the larger public.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Update&lt;/span&gt;: The full proceedings from the workshop are also available online from the &lt;a href="http://sosym.dcs.kcl.ac.uk/events/mtip05/programme.html"&gt;workshop web site&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-113802284345930041?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/113802284345930041/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=113802284345930041' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/113802284345930041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/113802284345930041'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2006/01/tefkat-paper-now-online.html' title='tefkat paper now online'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-113275487467539174</id><published>2005-11-23T14:59:00.000+01:00</published><updated>2005-11-23T15:07:54.686+01:00</updated><title type='text'>Announcing RMOF - a MOF for Ruby</title><content type='html'>Motivated by a request via a passing reference in my &lt;a href="http://thebootstrap.blogspot.com/2005/10/model-typing-paper.html"&gt;Models paper&lt;/a&gt;, &lt;a href="http://www.fleurey.com/weblog/index.php"&gt;Franck&lt;/a&gt; and I have cleaned up the implementation of EMOF in Ruby that we wrote &lt;a href="http://thebootstrap.blogspot.com/2004/05/ruby-and-emof.html"&gt;last year&lt;/a&gt;, and put it up as a project on RubyForge, at &lt;a href="http://rmof.rubyforge.org"&gt;http://rmof.rubyforge.org&lt;/a&gt;. For the moment the download is only via CVS, there are some pretty distracting bugs, almost no documentation and not many test cases. That said, it works, given a sufficiently wide definition of the term. We're neither of us working on it or using as part of our studies, but we'll certainly try to respond to questions and fix bugs where possible.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-113275487467539174?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/113275487467539174/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=113275487467539174' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/113275487467539174'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/113275487467539174'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/11/announcing-rmof-mof-for-ruby.html' title='Announcing RMOF - a MOF for Ruby'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-112955537281940325</id><published>2005-10-17T15:15:00.000+02:00</published><updated>2005-10-17T15:27:11.326+02:00</updated><title type='text'>model typing paper</title><content type='html'>Two weeks ago at the MoDELS '05 conference in Montego Bay, I presented a paper on the idea of a type systems for models. The PDF can be found &lt;a href="http://www.irisa.fr/triskell/publis/2005/Steel05a.pdf"&gt;here&lt;/a&gt;. The abstract is as follows:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;Where object-oriented languages deal with objects as described by classes, model-driven development uses models, as graphs of interconnected objects, described by metamodels. A number of new languages have been and continue to be developed for this model-based paradigm, both for model transformation and for general programming using models. Many of these use single-object approaches to typing, derived from solutions found in object-oriented systems, while others use metamodels as model types, but without a clear notion of polymorphism. Both of these approaches lead to brittle and overly restrictive reuse characteristics.&lt;br /&gt;&lt;br /&gt;In this paper we propose a simple extension to object-oriented typing to better cater for a model-oriented context, including a simple strategy for typing models as a collection of interconnected objects. Using a simple example we show how this extended approach permits more flexible reuse, while preserving type safety.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The definitions presented within for model, model type, and for model type substitutability, are quite simple. This is partly because the paper represents an initial effort, and partly because I believe the solution need not be a complex one. &lt;br /&gt;&lt;br /&gt;I had some feedback, both positive and negative, at the conference, but I'd love to hear more. If you feel the urge, either drop a comment or email me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-112955537281940325?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/112955537281940325/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=112955537281940325' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112955537281940325'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112955537281940325'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/10/model-typing-paper.html' title='model typing paper'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-112928368108471091</id><published>2005-10-14T11:51:00.000+02:00</published><updated>2005-10-14T11:54:41.090+02:00</updated><title type='text'>booch-scootin'</title><content type='html'>I can't resist it. Grady Booch is &lt;a href="http://www-106.ibm.com/developerworks/blogs/dw_blog_comments.jspa?blog=317&amp;entry=96353&amp;ca=drs-bl"&gt;dancing about architecture&lt;/a&gt;, which is like &lt;a href="http://en.wikiquote.org/wiki/Frank_Zappa#Music"&gt;writing about music&lt;/a&gt; (apologies to Frank Zappa).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-112928368108471091?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/112928368108471091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=112928368108471091' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112928368108471091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112928368108471091'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/10/booch-scootin.html' title='booch-scootin&apos;'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-112557291160392341</id><published>2005-09-01T12:07:00.000+02:00</published><updated>2005-09-01T13:08:31.623+02:00</updated><title type='text'>intelligent design</title><content type='html'>You know what the funny thing about the creationism vs evolution debate? We're presented with two cases. We have this really complex system : the universe, or the earth if you prefer to consider a nominal subsystem.&lt;br /&gt;&lt;br /&gt;In one story, someone put it together a few thousand years ago as a static system, and has been intervening from time to time since.&lt;br /&gt;&lt;br /&gt;In the other story, someone designed a set of processes, notably evolution, that have kept the system running for a few tens of millions of years, without extensive intrusion. That's serious uptime for a dynamic, evolving system, and the computer scientist in me says its way more impressive than the first story. If its a choice between a god who made man and a god who made evolution, which made man, then I'll take the programmer god.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-112557291160392341?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/112557291160392341/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=112557291160392341' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112557291160392341'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/112557291160392341'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/09/intelligent-design.html' title='intelligent design'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-111711388763278417</id><published>2005-05-26T15:19:00.000+02:00</published><updated>2005-05-30T02:43:39.440+02:00</updated><title type='text'>Microsoft on wider MDA</title><content type='html'>I've been waiting about a year to hear this clearly from the Microsoft (admittedly, it may be my not listening that has delayed as much as their not saying clearly). This comes from their &lt;a href="http://msdn.microsoft.com/vstudio/default.aspx?pull=/library/en-us/dnvs05/html/vstsmodel.asp"&gt;Modeling [sic] Strategy and FAQ page&lt;/a&gt;, via &lt;a href="http://blogs.msdn.com/stevecook/archive/2005/05/26/422035.aspx"&gt;Steve Cook&lt;/a&gt;:&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;Some organizations pursuing model-driven development accept a wider interpretation of the term MDA than the interpretation prescribed by the OMG; indeed, as we've described, they must do so in order to succeed. The use of any of the OMG's specifications to drive model-driven development is typically marketed as MDA, whether or not it involves PIMs and PSMs. Some organizations, for example, see the OMG's MOF specification as key to MDA. This view relies on new modeling languages defined using MOF, not the modeling languages that are predefined in UML, and is effectively similar to our approach. We will support interchange with popular UML and MOF tools on other platforms, either via XMI or native formats, to help customers who are using them succeed with model-driven development.&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;   &lt;h2 class="dtH1"&gt;&lt;a name="vstsmodel_software_factories"&gt;&lt;/a&gt;&lt;/h2&gt; Its a pleasant change from their usual (and understandable) bashing of UML, which has the unfortunate effect of scaring people away from other useful things that go on at OMG. And who knows, if they keep saying sensible things like that, I might wind up barracking for them a little. Perish the thought.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-111711388763278417?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/111711388763278417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=111711388763278417' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111711388763278417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111711388763278417'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/05/microsoft-on-wider-mda.html' title='Microsoft on wider MDA'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-111046760334552710</id><published>2005-03-10T16:07:00.000+01:00</published><updated>2005-03-10T16:13:23.350+01:00</updated><title type='text'>brittle schemas</title><content type='html'>In &lt;a href="http://wadler.blogspot.com/2005/03/popl-plan-x-fool.html"&gt;this&lt;/a&gt; post from Philip Wadler's blog, he mentions people who are finding that Schemas pose some interesting problems for typing, for example with regard brittleness of programs when adding elements. This is &lt;em&gt;exactly&lt;/em&gt; what I'm trying to get around.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-111046760334552710?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/111046760334552710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=111046760334552710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111046760334552710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111046760334552710'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/03/brittle-schemas.html' title='brittle schemas'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-111044780599698193</id><published>2005-03-10T10:38:00.000+01:00</published><updated>2005-03-10T10:43:25.996+01:00</updated><title type='text'>FP for web apps</title><content type='html'>Philip Wadler, Xavier Leroy, Simon Peyton Jones, and Benjamin Pierce are &lt;a href="http://wadler.blogspot.com/2005/02/links-meeting-at-etaps.html"&gt;organising a workshop&lt;/a&gt; in Edinburgh to talk about designing a functional programming language for building web apps. It might not be the approach that I would take, but when a list of names like that appears, anyone interested in programming languages should listen (via &lt;a href="http://lambda-the-ultimate.org/node/view/571"&gt;LtU&lt;/a&gt;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-111044780599698193?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/111044780599698193/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=111044780599698193' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111044780599698193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/111044780599698193'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/03/fp-for-web-apps.html' title='FP for web apps'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110916815846998183</id><published>2005-02-23T14:55:00.000+01:00</published><updated>2005-02-23T15:15:58.470+01:00</updated><title type='text'>more paper dumping</title><content type='html'>&lt;a href="http://csdl.computer.org/comp/proceedings/ase/2004/2131/00/21310362abs.htm"&gt;This paper&lt;/a&gt;, on incremental model transformation, might be interesting for David Hearnden, although I don't doubt he's way, way ahead of the game by now, or for Michael, if he ever decides to add incremental transformation to Tefkat.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110916815846998183?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110916815846998183/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110916815846998183' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110916815846998183'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110916815846998183'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/02/more-paper-dumping.html' title='more paper dumping'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110916506905691444</id><published>2005-02-23T13:42:00.000+01:00</published><updated>2005-02-23T14:52:14.176+01:00</updated><title type='text'>MODELog</title><content type='html'>Its always nice to see yourself cited, but particularly when you haven't really published properly.&lt;br /&gt;&lt;br /&gt;Via Benoit, I stumbled across &lt;a href="http://http//www.metamodel.com/wisme-2004/accept/2.pdf"&gt;this paper&lt;/a&gt; (PDF, longer non-citing version with oodles of technical detail &lt;a href="http://dx.doi.org/10.1016/j.entcs.2004.04.007"&gt;here&lt;/a&gt;) this morning, on mapping UML class diagrams to OO logic programming. In it, they cite a brief reference we made in our ICGT paper to the work we did at DSTC a couple of years ago with MOFLog. They make two observations about what we said. Firstly, performance can be increased by compiling to Prolog, which was indeed what we ended up doing, I guess after we published. Secondly, that a later version of Flora-2 resolves some of the problems we had with negation.&lt;br /&gt;&lt;br /&gt;In hindsight, I kind of regret that we didn't publish our MofLog stuff, or follow it up, since I thought it was a really nice language. I talked a bit about it last year with a postdoc here who had done his PhD in logic programming, but my background in logic isn't strong enough. One day when I have more time, perhaps I'll remedy that and resurrect the idea.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Update&lt;/span&gt;: Chasing around, this work was the topic of &lt;a href="http://www.dsc.ufcg.edu.br/%7Efranklin/"&gt;Franklin Ramalho&lt;/a&gt;'s thesis, during which it appears he spent some time at LIP6, which I visited last year. Furthermore, it seems that he gave a &lt;a href="http://www-poleia.lip6.fr/%7Ejulien/seminaire/"&gt;seminar&lt;/a&gt; on this work at LIP6 a month before I was there. That's messed up.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://http//onlinestrategy.com.au/cgi-bin/blosxom.cgi/lawley/"&gt;&lt;br /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110916506905691444?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110916506905691444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110916506905691444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110916506905691444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110916506905691444'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/02/modelog.html' title='MODELog'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110681785963185239</id><published>2005-01-27T10:23:00.000+01:00</published><updated>2005-01-27T10:24:19.630+01:00</updated><title type='text'>new club</title><content type='html'>I've finally gotten around to transferring my membership across to the French branch of the "I hate UML" club. Tomorrow I'll talk to someone about getting on board for the "Action semantics is a cruel joke" subcommittee.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110681785963185239?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110681785963185239/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110681785963185239' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110681785963185239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110681785963185239'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/01/new-club.html' title='new club'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110674604852351200</id><published>2005-01-26T14:26:00.000+01:00</published><updated>2005-01-28T10:55:40.810+01:00</updated><title type='text'>opinions on MOF-Text submissions</title><content type='html'>MOF-to-Text initial submissions are in, being presented next week in Burlingame. Given my background with HUTN, I would probably have played in this game if I didn't have a PhD to do. My initial reaction to the RFP was that were two credible paths. Path 1: you do a template language, perhaps based on Velocity or something, using QVT/Q or OCL for selecting model elements, and deem round-tripping too hard. Path 2: You take a grammar approach, using similar query ideas, and then look at possible syntactic sweetening or partial mapping to templates to make it usable. We had a peek down the second path with Anti-Yacc a few years back at DSTC, and it poses many usability problems, so my money would have been on the template approach as the most ready for the OMG.&lt;br /&gt;&lt;br /&gt;There are two groups:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Softeam/SINTEF: Seems to just add &lt;em&gt;print&lt;/em&gt; statements and File manipulation to the imperative part of QVT. I don't think this gets us anywhere.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Interactive Objects (M2T): Template-based, but also with notions of more levels of structuring, of decorators, and of protected text blocks.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Compuware/Pathfinder/Mentor: Template-based, but heavily influenced by aspect-oriented ideas, which I don't quite follow and need to read more about. Seems on the surface like a bigger language than IO's, but that may be just a superficial impression from the document.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;TCS: Template-based, fairly simple, borrows syntactically from JSP, I think, which isn't a bad thing. Lacks advanced structuring concepts that IO and (I think) Compuware have.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;I was asked whether I would support the Softeam submission. I wouldn't because it is the least "MDA" approach to the problem - it is a general programming approach that I don't think will scale. Probably the IO submission is the one I'd go for, but I need to read the Compuware/Pathfinder/Mentor document more closely to grok their aspect stuff.&lt;br /&gt;&lt;br /&gt;I was surprised also that Wim Bast wasn't on any of the submission teams, because he presented a nice little system at EWMDA last year, kind of halfway between the IO and Compuware ideas, I suspect. I also would have liked to see AntiYacc in there, not as a viable ready solution, but just to make people think about the ideas of a grammar-based approach.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110674604852351200?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110674604852351200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110674604852351200' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110674604852351200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110674604852351200'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/01/opinions-on-mof-text-submissions.html' title='opinions on MOF-Text submissions'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110674528160727345</id><published>2005-01-26T14:08:00.000+01:00</published><updated>2005-01-26T14:14:41.606+01:00</updated><title type='text'>papers on interdependent types</title><content type='html'>In my MOF typing travels, I finally found something interesting this morning. First, &lt;a href="http://scholar.google.com/url?sa=U&amp;q=http://www.springerlink.com/index/KCCH0Q9QRFPF1QRL.pdf"&gt;this&lt;/a&gt; paper by Erik Ernst on Family Polymorphism, and then &lt;a href="http://www.cs.williams.edu/~kim/README.html#Wood"&gt;this&lt;/a&gt; paper by Kim Bruce that works on a similar problem, but uses the term Type Groups (he also has another interesting paper &lt;a href="http://www.cs.williams.edu/~kim/README.html#LOOJ"&gt;here&lt;/a&gt;, and a presentation &lt;a href="http://cs.williams.edu/~kim/ftp/FOOL05.pdf"&gt;here&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;These papers come very much from a programming language theory perspective, whereas I'm coming more from a data structures perspective, I guess, but I suspect we're knocking on different doors to the same room.&lt;br /&gt;&lt;br /&gt;Incidentally, I came across this while trying to find works on polymorphism/conformance algorithms for graphs (probably typed graphs or maybe attributed graphs). I haven't been successful, so if anyone knows of some work in that space, let me know. I'm sure it must exist, because the graph grammar and graph transformation folks have been working hard around that for a long time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110674528160727345?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110674528160727345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110674528160727345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110674528160727345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110674528160727345'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2005/01/papers-on-interdependent-types.html' title='papers on interdependent types'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110242856353631377</id><published>2004-12-07T14:58:00.000+01:00</published><updated>2004-12-07T15:11:14.046+01:00</updated><title type='text'>Booch on MS/DSM</title><content type='html'>Every time &lt;a href="http://www-106.ibm.com/developerworks/blogs/dw_blog.jspa?blog=317&amp;roll=0"&gt;Grady Booch&lt;/a&gt; posts these days, my expectation of seeing something interesting from him decreases.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www-106.ibm.com/developerworks/blogs/dw_blog_comments.jspa?blog=317&amp;entry=67637"&gt;This time&lt;/a&gt; its the MS/DSM vs OMG/MDA debate. He responds to a post by Alan Wills about why Microsoft is avoiding UML by trotting out a whole lot of rot (factual rot, but it doesn't make it any less whiffy) about UML stereotypes and profiles, none of which makes a lick of difference to the issue at hand, in my view.&lt;br /&gt;&lt;br /&gt;Look, I'm supposed to be on his side here. I mean, I've played the OMG game for a while, am still playing it with QVT, and generally I believe in the idea of basing this stuff on open standards. However, this sort of defense of UML helps no-one. UML is not going to cut it for some applications of MDA, and I think pretty much everyone is clear on that. The response to the MS separatism is not to defend UML's ability to do things it was never really built to handle, but to remind them that we know it has problems, and we have other standards to use in those cases.&lt;br /&gt;&lt;br /&gt;I know I'm a MOF guy and Grady's an original 'amigo', and that I'm hardly impartial. However, I'm getting worried by the things I'm seeing people doing with UML and, scarier, seeing that the standardisation response seems to be to change the Unified to Universal and hope for the best. I think its going to sink, and I hope it doesn't pull other things down with it.&lt;br /&gt;&lt;br /&gt;Grady, please don't turn me into a Microsofty.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110242856353631377?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110242856353631377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110242856353631377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110242856353631377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110242856353631377'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/12/booch-on-msdsm.html' title='Booch on MS/DSM'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110234435797611532</id><published>2004-12-06T15:45:00.000+01:00</published><updated>2004-12-06T15:45:57.976+01:00</updated><title type='text'>food for thought: types vs tests</title><content type='html'>And furthermore good food for good thought.&lt;br /&gt;&lt;br /&gt;In a &lt;a href="http://discuss.joelonsoftware.com/default.asp?best04"&gt;list&lt;/a&gt; of recent "essay of the year" articles, a couple appealed to me; &lt;a href="http://mindview.net/WebLog/log-0025"&gt;"Strong Typing vs Strong Testing"&lt;/a&gt; by Bruce Eckel, and &lt;a href="http://www.xoltar.org/misc/static_typing_eckel.html"&gt;"Modern Static Typing: Less Code, Better Code"&lt;/a&gt; by Bryn Kellar. The first is a nice focus, effectively, on the question of why languages like Python and Ruby are so much nicer to program in than, say, Java and C++. The second discusses why it is wrong to blame this on static typing per se.&lt;br /&gt;&lt;br /&gt;Both are excellent, but I would advise people to make sure to read them together. The first doesn't stand alone because it needs the definition/theoretical discussions in the second, and the second doesn't stand alone because it quotes pretty selectively, and is in any case very much a response to a question.&lt;br /&gt;&lt;br /&gt;I would make one point in addition to the second article. He explains at one point the "problem" of accidental conformance, although he doesn't name it as such. I think you really have to be careful waving this problem about, because while it is sometimes a real problem, it is also sometimes a real solution. It is one of my views at the moment that systems that are, for example, distributed, or subject evolution, actually benefit greatly from "accidental conformance". This was something I stumbled across last year, in some ancient &lt;a href="http://www.ansa.co.uk/ANSATech/94/Briefing/114801.pdf"&gt;slides&lt;/a&gt; by Andrew Watson, more recently of OMG fame.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110234435797611532?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110234435797611532/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110234435797611532' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110234435797611532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110234435797611532'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/12/food-for-thought-types-vs-tests.html' title='food for thought: types vs tests'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-110181133208217428</id><published>2004-11-30T11:29:00.000+01:00</published><updated>2004-11-30T11:42:12.083+01:00</updated><title type='text'>Adam Bosworth on simplicity</title><content type='html'>&lt;a href="http://www.adambosworth.net/archives/000031.html"&gt;This&lt;/a&gt; from Adam Bosworth, a talk he gave at a SOC conference a couple of weeks ago. My gut says to agree with him, but it's complicated. I think, in fact, that we probably need the tension between the monolithic approaches that he talks about (WS-*, Java, .Net, throw UML in for good measure) and the thin approaches. Eventually, the new thin approaches are going to pick and choose what really worked and was easy from the last-generation fat approaches.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-110181133208217428?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/110181133208217428/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=110181133208217428' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110181133208217428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/110181133208217428'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/11/adam-bosworth-on-simplicity.html' title='Adam Bosworth on simplicity'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109991066949244124</id><published>2004-11-08T11:43:00.000+01:00</published><updated>2004-11-08T11:52:56.840+01:00</updated><title type='text'>ISSRE 2004</title><content type='html'>Last week was &lt;a href="http://www.issre.org/2004/"&gt;ISSRE&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;On Tuesday I attended a &lt;a href="http://www.issre.org/2004/program-modeva.php"&gt;workshop&lt;/a&gt; at Rennes entitled "SIVOES (Specification Implementation and Validation Of Embedded Systems)-MoDeVa (Model Design and Validation)", where Franck presented a paper that we had written (with Benoit). There was some good discussion with Bernhard Rumpe and others afterwards about semantics in UML.&lt;br /&gt;&lt;br /&gt;On Wednesday, the conference proper got underway with a very good keynote from Bob Binder, about different levels of rigour in testing, which I found very interesting, and about the difficulties of testing software in mobile environments, which I found somewhat less interesting. The conference itself was pretty good, although I was generally out of my depth when it came to things like statistical/random testing and reliability analysis. I was also a bit surprised that, in general, a lot of the work only relates to basic data types (ints, floats, not even strings usually), and very low level abstractions, which seems a bit dated for a modelling guy like me.&lt;br /&gt;&lt;br /&gt;The theme was nominally testing for model-driven systems, but there were almost no papers on the topic beyond the one I presented to stony faces on Thursday morning. I got through to a couple of people though, and had some good feedback. Bernhard Rumpe also gave a keynote on model-driven development stuff on Friday, although nothing I hadn't heard before. He also claimed that the "V" in QVT stands for "Validation", and not "Views", as one might have guessed by looking at the RFP. Oh, well. The panel in the afternoon was a little better, but still dealt more with model-based testing (generating tests from custom models of the system) as opposed to testing in model-driven systems. To be fair, the latter is way too immature for a panel.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109991066949244124?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109991066949244124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109991066949244124' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109991066949244124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109991066949244124'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/11/issre-2004.html' title='ISSRE 2004'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109957393766227425</id><published>2004-11-04T14:11:00.000+01:00</published><updated>2004-11-04T14:12:17.663+01:00</updated><title type='text'>i turn my back for 10 months, and...</title><content type='html'>Bad news. Yeah, everyone knows that Bush got re-elected but, according to Tinni, her employer has been &lt;a href="http://www.livejournal.com/users/tinni/87250.html"&gt;knocked back&lt;/a&gt; for their funding application. I'm really, really biased, but DSTC was a great place to do research. Don't believe me though. Another Jim, Jim Coplien, said a couple of years back that:&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;“I hold the DSTC to be one of the most effective software research organisations in the world…”&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;That sucks and, like the elections (also American but particularly Australian), it suggests to me that the people making the decision must have been woefully uninformed or monumentally stupid to make such a choice. Whatever you think of the proposal specifics (and, although I didn't see the full proposal, only the first summary one, I had some criticisms), one look at who's involved screams, or should scream: "Give these people money and they will do world-class research".&lt;br /&gt;&lt;br /&gt;Of course, funding bodies, like voters, aren't always that interested in details like excellence (or lack thereof) in doing what you're required and paid to do. Or maybe it's me. Again. For the third time in a month. Dammit.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109957393766227425?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109957393766227425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109957393766227425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109957393766227425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109957393766227425'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/11/i-turn-my-back-for-10-months-and.html' title='i turn my back for 10 months, and...'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109836143780922956</id><published>2004-10-21T14:21:00.000+02:00</published><updated>2004-10-21T14:23:57.810+02:00</updated><title type='text'>conferences</title><content type='html'>You can bet that I'm going to be trying to get a paper up at the next &lt;a href="http://www.umlconference.org/"&gt;UML/MoDELS conference&lt;/a&gt;; it's in Montego Bay, Jamaica. Enschede, in the Netherlands, isn't quite so much as a drawcard, but I'll have to try and get something sorted out for &lt;a href="http://edoc2005.ctit.utwente.nl/"&gt;EDOC&lt;/a&gt;, too.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109836143780922956?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109836143780922956/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109836143780922956' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109836143780922956'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109836143780922956'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/10/conferences.html' title='conferences'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109775836393757269</id><published>2004-10-14T14:51:00.000+02:00</published><updated>2004-10-14T14:52:43.936+02:00</updated><title type='text'>note to self</title><content type='html'>Note to self: APA (and associated stuff) applications &lt;a href="http://www.uq.edu.au/grad-school/?id=9776"&gt;close&lt;/a&gt; on 31 October.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109775836393757269?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109775836393757269/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109775836393757269' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109775836393757269'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109775836393757269'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/10/note-to-self.html' title='note to self'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109759227591339359</id><published>2004-10-12T16:42:00.000+02:00</published><updated>2004-10-12T16:55:30.210+02:00</updated><title type='text'>programming languages</title><content type='html'>10 years on (plus or minus one or two), and the &lt;a href="http://encyclopedia.thefreedictionary.com/MOO%20programming%20language"&gt;MOO programming language&lt;/a&gt; might still be the programming environment I have most fondness for. I haven't used it since high school, but a lot of its principles still appeal to me, and I wonder how much that is because it influenced the way I think about programming. Looking back now, the syntax was pretty awful, but perhaps it was just the interacting with the objects that was nice, in that you could really see and understand object-orientation when you "were" one of the objects. There were some very sophisticated things in the underlying tech, though: prototype-based OO and stuff like that, but also that it was just the done thing to add and modify classes and methods at runtime. I never really thought about it at the time, but its a pretty neat trick.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109759227591339359?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109759227591339359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109759227591339359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109759227591339359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109759227591339359'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/10/programming-languages.html' title='programming languages'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109750019021513949</id><published>2004-10-11T13:27:00.000+02:00</published><updated>2004-10-11T15:09:50.216+02:00</updated><title type='text'>wherefore?</title><content type='html'>So, last week I was sitting in a talk from Stephane Ducasse, about traits and classboxing, some wacky "separation of concerns" type mechanisms that he's been building for squeak. There was this wacky guy sitting on one side of the room, who kept intervening with questions like "hasn't this already been done in X?", where X varied between functional stuff (ML and its variants), Lisp, and even variations like Self. At one level, he's just a moron with no concept of etiquette (disturbingly common in computing), but at another level, it raises interesting questions. He's right in some very vague sense - FP and Lisp and stuff like them are implemented, in some cases very well, and have got strong theoretical foundations, but no-one using them. Why is that?&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109750019021513949?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109750019021513949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109750019021513949' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109750019021513949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109750019021513949'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/10/wherefore.html' title='wherefore?'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109593088607490054</id><published>2004-09-23T11:14:00.000+02:00</published><updated>2004-09-23T11:14:46.073+02:00</updated><title type='text'>ear, ear</title><content type='html'>Its good to hear that someone is &lt;a href="http://weblogs.asp.net/keith_short/archive/2004/09/22/233077.aspx"&gt;telling&lt;/a&gt; Bill Gates about modelling, and that its smart folk doing the telling; I've not met &lt;a href="http://weblogs.asp.net/keith_short/"&gt;Keith Short&lt;/a&gt;, but Jack Greenfield and Steve Cook are smart cookies. Jack has had a very strong MDA* vision going back a long time. I remember excellent discussions with him, Dave Frankel and many others in &lt;a href="http://www.omg.org/news/meetings/workshops/uml_presentations.htm"&gt;Palm Springs&lt;/a&gt; back in 2000. The differences that Steve &lt;a href="http://www.bptrends.com/deliver_file.cfm?fileType=publication&amp;amp;fileName=01%2D04%20COL%20Dom%20Spec%20Modeling%20Frankel%2DCook%2Epdf"&gt;wrote about&lt;/a&gt; between Microsoft's views on models and the widely- but not universally-held views of the more conspicuous OMG companies are, in many cases, very valid points.&lt;br /&gt;&lt;br /&gt;* rename as appropriate, the term certainly didn't exist at the time&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109593088607490054?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109593088607490054/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109593088607490054' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109593088607490054'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109593088607490054'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/ear-ear.html' title='ear, ear'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109584389020578900</id><published>2004-09-22T11:01:00.000+02:00</published><updated>2004-09-22T11:04:50.206+02:00</updated><title type='text'>what the...</title><content type='html'>Gee, I'm getting sick of my boring old mouse. Hey, I know, I'll use &lt;a href="http://www.cv.iit.nrc.ca/research/Nouse/index2.html"&gt;my nose&lt;/a&gt;! (via &lt;a href="http://svmlecarnet.vnunet.fr/svm/2004/09/nose_as_mouse.html"&gt;SVM&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;*blink* No, I didn't mean to click, I'm just confused...&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109584389020578900?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109584389020578900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109584389020578900' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109584389020578900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109584389020578900'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/what.html' title='what the...'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109523988040487985</id><published>2004-09-15T10:55:00.000+02:00</published><updated>2004-09-15T11:18:00.406+02:00</updated><title type='text'>I have a problem</title><content type='html'>Having &lt;a href="http://thebootstrap.blogspot.com/2004/07/raining-blogs.html"&gt;admitted&lt;/a&gt; that I have a blogging problem, its time to do something about it. I'm starting with &lt;a href="http://radio.weblogs.com/0001011/"&gt;Scoble&lt;/a&gt;. I realise increasingly that I don't really care about "Channel 9", tablet PCs, geek dinners, or MS promotion. Unsubscribed. Likewise &lt;a href="http://radovanjanecek.net/blog/"&gt;Radovan Janecek&lt;/a&gt;, &lt;a href="http://www.25hoursaday.com/weblog/"&gt;Dare Obsanjo&lt;/a&gt;, &lt;a href="http://www.pragmaticautomation.com/cgi-bin/pragauto.cgi"&gt;Mike Clark&lt;/a&gt;, &lt;a href="http://www.joelonsoftware.com/"&gt;Joel on Software&lt;/a&gt;, &lt;a href="http://www.ldodds.com/blog/"&gt;Leigh Dodds&lt;/a&gt;, &lt;a href="http://www.cafeconleche.org/"&gt;Cafe con Leche&lt;/a&gt;, and &lt;a href="http://metaphilm.com/index.xml"&gt;Metaphilm&lt;/a&gt;. I just don't have the time any more.&lt;br /&gt;&lt;br /&gt;(More accurately, they all into the "ignored" folder on &lt;a href="http://bloglines.com"&gt;bloglines&lt;/a&gt; - maybe one day I'll get paid to read blogs.)&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109523988040487985?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109523988040487985/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109523988040487985' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109523988040487985'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109523988040487985'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/i-have-problem.html' title='I have a problem'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109523835998721953</id><published>2004-09-15T10:42:00.000+02:00</published><updated>2004-09-15T10:52:39.986+02:00</updated><title type='text'>fowler on closures</title><content type='html'>Its hardly rocket science, but Martin Fowler joins in &lt;a href="http://martinfowler.com/bliki/Closures.html"&gt;asserting&lt;/a&gt; that closures are Good. His point on the importance of brevity pushes my buttons, too. (The phrase "just concrete syntax" annoys me - keeping concrete syntax under separate consideration from the rest of the language is of course important, but it is important!). What he doesn't mention is the role that the type system plays in the brevity equation. In Java, for example, even if you add closures, the fact that you have to type all of your variables is going to be a big hit on the brevity of the closure.&lt;br /&gt;&lt;br /&gt;As I've mentioned &lt;a href="http://thebootstrap.blogspot.com/2004/05/ruby-and-emof.html"&gt;previously&lt;/a&gt;, they are indispensible in model-driven systems, where you frequently spend a lot of your time navigating structures, and building up, filtering, and tearing down collections. I heard similar sentiments last week in &lt;a href="http://www.cs.kent.ac.uk/projects/kmf/mdaworkshop/"&gt;Canterbury&lt;/a&gt; from other people, such as &lt;a href="http://www.abo.fi/~marcus.alanen/"&gt;Marcus Alanen&lt;/a&gt;, who've been &lt;a href="http://mde.abo.fi/tools/Coral"&gt;using&lt;/a&gt; dynamic languages in connection with MDD* type activities.&lt;br /&gt;&lt;br /&gt;*Yes, &lt;a href="http://blogs.msdn.com/stuart_kent/archive/2004/09/14/229415.aspx"&gt;Stuart&lt;/a&gt;, I hear you :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109523835998721953?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109523835998721953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109523835998721953' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109523835998721953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109523835998721953'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/fowler-on-closures.html' title='fowler on closures'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109517667535355469</id><published>2004-09-14T17:35:00.000+02:00</published><updated>2004-09-14T17:44:35.353+02:00</updated><title type='text'>product lines</title><content type='html'>There seems to be a general confusion about software product lines. In particular, people seem to be confusing them with what might better be called software production lines, meaning some sort of automated or semi-automated process by which a software product or family thereof is produced. By contrast, all of the literature I've read on software product lines uses the term for a group of software products specified in terms of a base model with carefully defined variation points.&lt;br /&gt;&lt;br /&gt;The two are related, but I think its pretty important to keep them well-separated. (I am aware that some readers might perceive irony with respect to my &lt;a href="http://thebootstrap.blogspot.com/2004/05/giving-spade-acronym.html"&gt;thoughts&lt;/a&gt; about MDA term-slippage).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109517667535355469?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109517667535355469/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109517667535355469' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109517667535355469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109517667535355469'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/product-lines.html' title='product lines'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109517531883944912</id><published>2004-09-14T17:15:00.000+02:00</published><updated>2004-09-14T17:21:58.840+02:00</updated><title type='text'>the typing divide</title><content type='html'>The typing divide came up at a typing panel at the &lt;a href="http://www.cs.kent.ac.uk/projects/kmf/mdaworkshop/"&gt;MDA workshop&lt;/a&gt; I was at last week, and was also &lt;a href="http://lambda-the-ultimate.org/node/view/252"&gt;mentioned&lt;/a&gt; recently on &lt;a href="http://lambda-the-ultimate.org/"&gt;LtU&lt;/a&gt; (programming languages blog, naturally with a lot of types stuff). +1 from me.&lt;br /&gt;&lt;br /&gt;I'm currently writing up a 1-page summary of what we talked about in the aforementioned panel, and will post it or link to it when I'm done. I probably should put the workshop paper I presented up, too.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109517531883944912?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109517531883944912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109517531883944912' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109517531883944912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109517531883944912'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/typing-divide.html' title='the typing divide'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109422302950458031</id><published>2004-09-03T16:50:00.000+02:00</published><updated>2004-09-03T16:50:29.503+02:00</updated><title type='text'>CORBA reflection</title><content type='html'>Let's get this straight right now. I love reflection. It lets you do the most ugly, evil, interesting things, and without it, metaprogramming just doesn't work properly. Anyway, it looks like they might finally get around to &lt;a href="http://www.iona.com/blogs/vinoski/archives/000086.html"&gt;adding reflection to CORBA&lt;/a&gt; (even though I've ceased using it recently), which is a good thing. I'll have to read the doc to see if they'll add any support for reflective application (calling operations, etc) in addition to introspection.&lt;br /&gt;&lt;br /&gt;Incidentally, in speaking with &lt;a href="http://www.csse.monash.edu.au/~ipeake/"&gt;Ian&lt;/a&gt; on Monday, it seems that he (and particularly &lt;a href="http://www.itee.uq.edu.au/~paul/"&gt;Paul&lt;/a&gt;) don't believe in reflection. However, I really think this comes down to appropriate definitions of reflection.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109422302950458031?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109422302950458031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109422302950458031' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109422302950458031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109422302950458031'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/09/corba-reflection.html' title='CORBA reflection'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109385550597710313</id><published>2004-08-30T10:42:00.000+02:00</published><updated>2004-08-30T10:45:05.976+02:00</updated><title type='text'>of all the gin-joints in all the world</title><content type='html'>Imagine my surprise getting on the bus this morning when the first person I see is Ian Peake. Background: Ian was one of my lecturers (one of my best lecturers, too, I might add) at UQ in fourth-year, and I also did a little work with him while I was at DSTC. Anyway, it turns out he's now working for Heinz Schmidt at Monash, and is in Rennes (in fact at IFSIC, just downstairs) for this week's EuroMicro conference.&lt;br /&gt;&lt;br /&gt;Its a small world after all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109385550597710313?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109385550597710313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109385550597710313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109385550597710313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109385550597710313'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/08/of-all-gin-joints-in-all-world.html' title='of all the gin-joints in all the world'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109334755477066689</id><published>2004-08-24T13:38:00.000+02:00</published><updated>2004-09-14T11:29:31.796+02:00</updated><title type='text'>GMail invite</title><content type='html'>GMail invite for the person person &lt;emph&gt;I know&lt;/emph&gt; (that means I've met you!) who emails me that they want one.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109334755477066689?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109334755477066689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109334755477066689' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109334755477066689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109334755477066689'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/08/gmail-invite_109334755477066689.html' title='GMail invite'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6809583.post-109291581584563952</id><published>2004-08-19T13:39:00.000+02:00</published><updated>2004-08-19T13:43:35.846+02:00</updated><title type='text'>Cactus</title><content type='html'>&lt;a href="http://www.tbray.org/ongoing/"&gt;Tim Bray&lt;/a&gt; can add &lt;a href="http://www.koalanet.com.au/australian-slang.html#C"&gt;cactus&lt;/a&gt; to &lt;a href="http://www.tbray.org/ongoing/When/200x/2004/08/18/Borked"&gt;his list&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;(Also, 'H' comes after 'F' and 'G' in most alphabets I've seen).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6809583-109291581584563952?l=thebootstrap.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thebootstrap.blogspot.com/feeds/109291581584563952/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6809583&amp;postID=109291581584563952' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109291581584563952'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6809583/posts/default/109291581584563952'/><link rel='alternate' type='text/html' href='http://thebootstrap.blogspot.com/2004/08/cactus.html' title='Cactus'/><author><name>Jim</name><uri>http://www.blogger.com/profile/01107947648278338826</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='28' height='32' src='http://www.irisa.fr/triskell/perso_pro/jsteel/portrait.jpg'/></author><thr:total>0</thr:total></entry></feed>
