<?xml version='1.0' encoding='UTF-8' ?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title>Runar Jordahl - Smallwalk</title>
	<updated>2008-04-16T06:05:18-04:00</updated>
	<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView</id>
	<rights>Copyright 2005 Runar Jordahl</rights>
	<generator uri="/CincomSmalltalkWiki/Silt" version="1.0">Silt Syndication Generator</generator>
	<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView" rel="alternate" type="text/html"></link>
	<link href="/rssBlog/runarj-atom02.xml" rel="self" type="application/atom+xml"></link>
	<entry>
		<title>Helpful Comments</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Helpful_Comments&amp;entry=3385467832</id>
		<updated>2008-04-12T15:43:52-04:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">





<p> Here is the comment for CompositePart&gt;&gt;initialize</p><blockquote>&quot;Initialize the receiver.&quot; </blockquote><p><em>How helpful!</em> We could auto-document all code by getting the name of the selector and appending &quot;the receiver&quot;.</p><p>If your comment does not add any useful information, drop it.</p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3385467832" rel="alternate" type="text/html"></link>
		<category term="Smalltalk"></category>
	</entry>
	<entry>
		<title>Use accessors to access private instance variables</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Use_accessors_to_access_private_instance_variables&amp;entry=3385467148</id>
		<updated>2008-04-12T15:32:28-04:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p> I need to subclass CompositePart and change the way it stores its components. I basically want to hold a predefined set of named components and answer those when a client of the class sends it #components.</p><p>Of course CompositePart choose to access its instance variable #components directly, instead of going thought an accessor. Now, had it decided to always use the accessor I could have overridden a single method. Now I got around 15 methods I would need to change. Better look for another way to solve this problem&#8230;</p><p><em>If you want to ease white-box reuse, use accessors to access your private instance variables. </em></p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3385467148" rel="alternate" type="text/html"></link>
		<category term="Smalltalk"></category>
	</entry>
	<entry>
		<title>Presentation of the Office 2007 UI design process</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Presentation_of_the_Office_2007_UI_design_process&amp;entry=3385387017</id>
		<updated>2008-04-11T17:16:57-04:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p>Jensen Harris is one of the designers behind the new Office 2007 UI, and has a <a href="http://blogs.msdn.com/jensenh/">blog</a> which is filled with interesting details on how Microsoft ended up with this advancement in Office.</p><p>Now a <a href="http://blogs.msdn.com/jensenh/archive/2008/03/12/the-story-of-the-ribbon.aspx">video showing a presentation of the design process behind the Office 2007 UI</a> is available. The video sums up some of the previous details found in the blog posts, but does also show previously unpublished information. </p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3385387017" rel="alternate" type="text/html"></link>
		<category term="development"></category>
	</entry>
	<entry>
		<title>Do you need "native" widgets?</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Do_you_need_native_widgets&amp;entry=3385386209</id>
		<updated>2008-04-11T17:03:29-04:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p> &#8230;probably not. Here&rsquo;s a <a href="http://www.hethu.com/blog/2006/05/future-of-windows-uis.html ">post</a> that sums up the various Microsoft applications that ignores their own &ldquo;native&rdquo; widgets. </p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3385386209" rel="alternate" type="text/html"></link>
		<category term="Gui Frameworks"></category>
	</entry>
	<entry>
		<title>Qt as the new VisualWorks UI Framework?</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Qt_as_the_new_VisualWorks_UI_Framework&amp;entry=3385039436</id>
		<updated>2008-04-07T16:43:56-04:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p>I had a brief look at <a href="http://trolltech.com/products/qt">Qt from Trolltech</a>. To use the basic services provided by Qt, any development tool that has support for calling external libraries could be used. Apparently there was a project providing integration with Squeak, but it s no longer maintained.</p><p>Qt is delivered as a set of DLLs and integration code for each supported language. The Qt integration code for Smalltalk would of course have to be written by Cincom. The lower layer of this code would have to be platform specific, as the mechanisms for calling external libraries differs between the supported platforms.</p><p>From what I can understand, the services provided by the Qt DLLs are very basic. This means Smalltalk code would need to implement an event loop handler, support data binding, provide event handling, and a range of other functions. The advantages of using Qt are the framework&rsquo;s ability to draw the actual widgets, the rich selection of widgets, and the tools provided. Getting an <a href="http://trolltech.com/products/qt">UI editor</a> and UI testing tools for &ldquo;free&rdquo; would be nice. Cincom would no longer need to maintain the UI editor and the code to emulate widget look &amp; feel.</p><p>The Qt UI editor deals only with specifying the content of the UI, not the connection to the underlying model. The editor can emit the form specification as XML. Using this XML a window can be created and show by calling the DLLs. (A form&rsquo;s XML specification could be store in a Smalltalk method.) So one way of using Qt would be to replace the entire window handling system in VisualWorks.</p><p>Part of the reason <a href="http://www.cincomsmalltalk.com/blog/blogView?showComments=true&amp;entry=3366909150">Cincom dropped Widgetry</a> was lack of customers&rsquo; interest. Even if this might be part of the reasons behind Cincom&rsquo;s decision, I suspect writing yet another emulating, cross-platform UI framework was a too huge task. Surly, providing support for Qt would take a lot of work too. But as I point out above, you get a lot free with Qt. <strong>At least this solution should be evaluated and discussed.</strong></p><p><em>Note that I might be wrong in my assumptions about Qt. Please feel free to correct me, and I will update this post.</em></p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3385039436" rel="alternate" type="text/html"></link>
		<category term="VisualWorks"></category>
	</entry>
	<entry>
		<title>Magnifying the Screen</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Magnifying_the_Screen&amp;entry=3384084271</id>
		<updated>2008-03-27T15:24:31-05:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p>If you need to magnify (zoom) your screen, try <a href="http://magnifier.sourceforge.net/">Virtual Magnifying Glass.</a> It is very nice when you need to adjust an UI. Highly recommended. Note that this tool does not turn off ClearType like the magnifier bundled with Windows XP does.</p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3384084271" rel="alternate" type="text/html"></link>
		<category term="tools"></category>
	</entry>
	<entry>
		<title>Update of Alpha Channel Graphics Support in VisualWorks</title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Update_of_Alpha_Channel_Graphics_Support_in_VisualWorks&amp;entry=3383999354</id>
		<updated>2008-03-26T15:49:14-05:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">

<p>I have updated bundle <a href="http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;entry=3360717237">&ldquo;Epigent Graphics&rdquo;</a> in the <a href="http://www.cincomsmalltalk.com/CincomSmalltalkWiki/PostgreSQL+Access+Page">Public Store Database</a>. The new version is 1.4. There were problems with refresh of the images when the window was repainted. </p>
</div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3383999354" rel="alternate" type="text/html"></link>
		<category term="VisualWorks Graphics"></category>
	</entry>
	<entry>
		<title>Amazon SimpleDB   </title>
		<id>http://www.cincomsmalltalk.com/userblogs/runarj/blogView?showComments=true&amp;printTitle=Amazon_SimpleDB___&amp;entry=3375093644</id>
		<updated>2007-12-14T14:00:44-05:00</updated>
		<author>
			<name>Runar Jordahl</name>
			<uri>http://www.cincomsmalltalk.com/userblogsrunarj/blogView</uri>
			<email></email>
		</author>
		<content type="html" xml:lang="en-us"><![CDATA[<div xmlns="http://www.w3.org/1999/xhtml">


<p>I have looked at <a href="http://www.amazon.com/gp/browse.html?node=16427261">Amazon S3 </a>recently and like what I see. The ability to have a always-running, never crashing database is a big advantage. S3 also has the advantage of working through fire walls. S3 is basically a huge (Smalltalk) Dictionary, so efficient querying is tricky. Now it seems like Amazon is fixing this:</p><blockquote><a href="http://www.amazon.com/gp/browse.html?node=342335011">Amazon SimpleDB is a web service for running queries on structured data in real time. This service works in close conjunction with Amazon Simple Storage Service (Amazon S3) and Amazon Elastic Compute Cloud (Amazon EC2), collectively providing the ability to store, process and query data sets in the cloud. These services are designed to make web-scale computing easier and more cost-effective for developers.</a></blockquote><p>I always thought object-oriented databases would replace relational databases. Now it looks like services like S3 and <a href="http://www.nirvanix.com/">Nirvanix</a> shows another alternative.</p></div>]]></content>
		<link href="http://www.cincomsmalltalk.com/userblogsrunarj/blogView?showComments=true&amp;entry=3375093644" rel="alternate" type="text/html"></link>
		<category term="development"></category>
	</entry>
</feed>
