<?xml version="1.0" encoding="UTF-8"?>
<rss version="0.91"><channel><title>RSSMix.com Mix ID 11245</title><generator>RSSMix</generator><link>http://www.rssmix.com/</link><description>This feed was created by mixing existing feeds from various sources.</description><language>en-gb</language>
<item><title type="text">Smalltalk Party Brussels 11 March 2006</title><description type="html">Only six days left to the &lt;a href=&quot;http://www.cdegroot.com/blog/2006/02/16/smalltalk-party-brussels-11th-march-2006/&quot;&gt;Smalltalk Party in Brussels&lt;/a&gt;! I'll be there, and &lt;a href=&quot;http://prog.vub.ac.be:8080/SmalltalkParty/&quot;&gt;more interesting people&lt;/a&gt;, too. You should come, too!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-114155895642679160?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/03/smalltalk-party-brussels-11-march-2006.html</link><guid>dd64d295031c7ac645bcc786715d2642</guid></item>
<item><title type="text">Be a magician</title><description type="html">A very nice post about the &lt;a href=&quot;http://peripateticaxiom.blogspot.com/2006/04/keywords-magic-and-edsls.html&quot;&gt;Magic of Smalltalk&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-114444221679527345?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/04/be-magician.html</link><guid>33cfaa602e6c1a578833c2ba604882ff</guid></item>
<item><title type="text">Sophie, Tweak on the OLPC laptop</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/RaZekV8B_kI/AAAAAAAAAAk/6P8mXeoRYL8/s1600-h/SophieOnXO-2.jpg&quot;&gt;&lt;img style=&quot;margin: 0pt 10px 10px 0pt; float: right; cursor: pointer;&quot; src=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/RaZekV8B_kI/AAAAAAAAAAk/6P8mXeoRYL8/s320/SophieOnXO-2.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5018802813208231490&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;I just installed &lt;a href=&quot;http://sophieproject.org/&quot;&gt;Sophie&lt;/a&gt; on my green machine. Sophie is a project of the &lt;a href=&quot;http://www.futureofthebook.org/&quot;&gt;Institute for the Future of the Book&lt;/a&gt;, is implemented in &lt;a href=&quot;http://squeak.org/&quot;&gt;Squeak&lt;/a&gt; (just like my &lt;a href=&quot;http://wiki.laptop.org/go/Etoys&quot;&gt;Etoys activity&lt;/a&gt; on the laptop) using &lt;a href=&quot;http://tweak.impara.de/&quot;&gt;Tweak&lt;/a&gt; as its UI framework (which is the original topic of my blog). Tweak is also the base for the next-gen Etoys.&lt;br /&gt;&lt;br /&gt;Installation went pretty smooth. I downloaded the cross-platform zip file using the  Web activity from Sugar&lt;br /&gt;and unpacked it using the command line. The first start of Sophie failed, but after replacing the failing plugin with one from the pre-installed Squeak it started and worked. Yay!&lt;br /&gt;&lt;br /&gt;This is an excellent example why it's a good idea to have a regular X11 installation on the kid's laptop: a lot of software will just work, even if it is not correctly integrated into the Sugar UI.&lt;br /&gt;&lt;br /&gt;Michael Rger of &lt;a href=&quot;http://impara.de/&quot;&gt;impara&lt;/a&gt; (a Squeak shop leading Sophie development here in Magdeburg, Germany) came over and made a little book, downloading two logos directly from the web (Sophie can do that!), adding a bit of text and color ... Tweak performance is not exactly blazing on the XO machine, I think we made the right decision to not use the Tweak-based Etoys but stick to the proven Morphic-based one. Of course one could optimize it a lot, but who has time for that? Anyway, it was useable - click the image to get a larger view:&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/RaZooV8B_lI/AAAAAAAAAAs/PEvYnG3fCKQ/s1600-h/SophieOnXO-1.jpg&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;&quot; src=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/RaZooV8B_lI/AAAAAAAAAAs/PEvYnG3fCKQ/s320/SophieOnXO-1.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5018813877043986002&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2070333274906015010?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/01/sophie-tweak-on-olpc-laptop.html</link><guid>9b4639518d515aa8070e69af21d4e8f0</guid></item>
<item><title type="text">Croquet &amp; Tweak at NASA</title><description type="html">Ted Shab &lt;a href=&quot;http://www.aito.org/pipermail/ecoop-info/2006-January/000208.html&quot;&gt;posted&lt;/a&gt; a job offer to the ECOOP list. Part of it was this:&lt;br /&gt;&lt;blockquote style=&quot;font-style: italic;&quot;&gt;We are currently building a [...] testbed for user-experience exploration in Squeak (Smalltalk) (really). The resulting framework will be used by the various NASA centers [...] to build distributed, multi-mission systems for planning and executing a variety of NASA missions, including robotic (e.g. Mars rovers &amp; deep- space probes) and manned (e.g. the new Moon/Mars exploration effort, including the Crew Exploration Vehicle currently being designed).&lt;br /&gt;&lt;/blockquote&gt;Andreas Raab &lt;a href=&quot;http://lists.squeakfoundation.org/pipermail/squeak-dev/2006-January/100029.html&quot;&gt;commented&lt;/a&gt;:&lt;br /&gt;&lt;blockquote style=&quot;font-style: italic;&quot;&gt;FWIW, this project uses Croquet and Tweak. If you ever wanted to work with a bunch of really sharp guys this is definitely a place to consider.&lt;br /&gt;&lt;/blockquote&gt;Sounds cool :)&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-113818946435929018?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/01/croquet-tweak-at-nasa.html</link><guid>06ee2bedc1a4645b3efa4a0fabd52494</guid></item>
<item><title type="text">Performance Profiling</title><description type="html">Andreas Raab wrote a &lt;a href=&quot;https://lists.wisc.edu/read/messages?id=1411189&quot;&gt;nice primer&lt;/a&gt; on profiling in Squeak. MessageTally might be the single most undervalued Squeak performance tool - a mandatory read for every serious developer.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-115952747167731510?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/09/performance-profiling.html</link><guid>8ee8efb9bedc83bd77ba0034af939895</guid></item>
<item><title type="text">OLPC talk at design school</title><description type="html">I gave a talk about the $100-laptop at the Magdeburg school of &lt;a href=&quot;http://www.gestaltung.hs-magdeburg.de/&quot;&gt;Industrial Design&lt;/a&gt;. We did some very inspiring projects using Squeak, Etoys, and Croquet together before. The designers always come up with interesting ideas, even though not everything is directly implementable by us developers.&lt;br /&gt;&lt;br /&gt;Carola Zwick, dean of the school, wrote a book &lt;a href=&quot;http://www.avabooks.com.sg/avauk/details.php?id=107&quot;&gt;Designing for Small Screens&lt;/a&gt; that certainly gives valuable insight for OLPC developers, and she provided (though indirectly) some very important infrastructure for the OLPC office: her &lt;a href=&quot;http://www.seven5.com/&quot;&gt;group&lt;/a&gt; designed the &lt;a href=&quot;http://www.hermanmiller.com/mirra/&quot;&gt;chairs&lt;/a&gt; they are sitting on. I got the actual invitation by Christine Strothotte, who got her PhD doing computer graphics in Smalltalk just a few years before I got mine from the same school. She's teaching interaction design nowadays. I'm looking forward to doing an OLPC-related project with these great folks.&lt;br /&gt;&lt;br /&gt;A student took some &lt;a href=&quot;http://www.wretch.cc/album/album.php?id=hangxdesign&amp;book=34&amp;amp;page=1&quot;&gt;photographs&lt;/a&gt; during the talk. Also, from his &lt;a href=&quot;http://hangxdesign.blogspot.com/2007/01/the100-dollar-laptop.html&quot;&gt;blog post&lt;/a&gt; it seems I convinced him of the merits of the OLPC project (it was a lively discussion). Thanks for posting, Cheng!&lt;a href=&quot;javascript:void(0)&quot; onclick=&quot;return false;&quot; tabindex=&quot;7&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-6570186759354313299?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/01/olpc-talk-at-design-school.html</link><guid>3d015146b79f178e1252ac68ec59364c</guid></item>
<item><title type="text">Squeak Elections</title><description type="html">The first-ever &lt;a href=&quot;http://people.squeakfoundation.org/article/53.html&quot;&gt;elections&lt;/a&gt; are held in the Squeak community. Candidates have to be nominated by February 17, same deadline for getting certified at &lt;a href=&quot;http://people.squeakfoundation.org/&quot;&gt;SqP&lt;/a&gt; if you want to vote.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-113970329939638255?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/02/squeak-elections.html</link><guid>47e58ece41f5d2a10e09865ce1a1c948</guid></item>
<item><title type="text">Squeak for every child</title><description type="html">&lt;img src=&quot;http://photos1.blogger.com/blogger/1210/665/400/olpc-squeak.jpg&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;&lt;br /&gt;Lately I work on Squeak integration in the One Laptop Per Child (&lt;a href=&quot;http://laptop.org/&quot;&gt;OLPC&lt;/a&gt;) project, perhaps better known as the &quot;$100 laptop&quot;. The whole etoys group came over to OLPC's office in Cambridge. Squeak looks surprisingly well on the display prototype, and also etoys are reasonably fast. Ian Piumarta took some nice &lt;a href=&quot;http://piumarta.com/photos/olpc/&quot;&gt;pictures&lt;/a&gt;, which might very well be the first photos of the actual display in the wild.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-115801261793100987?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/09/squeak-for-every-child.html</link><guid>237b9416701d708fbc14343ff69a7a1d</guid></item>
<item><title type="text">Tweak Interview</title><description type="html">Andreas gave an interesting &lt;a href=&quot;http://people.squeakfoundation.org/person/gcorriga/diary.html?start=8&quot;&gt;interview&lt;/a&gt; about Tweak.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-112974150145137505?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2005/10/tweak-interview.html</link><guid>a71b36c121e0ea450c0cc2902eab0579</guid></item>
<item><title type="text">Simplified TeaTime</title><description type="html">The next Croquet release, code-named &quot;Hedgehog&quot;, will be centered around a real replicated object model, rather than the ad-hoc meta sends in Jasmine. See Andreas' and David's &lt;a href=&quot;http://croquetproject.org/about_croquet/05.10.16HedgehogArchitecture.pdf&quot;&gt;OOPSLA presentation&lt;/a&gt; (PDF) for an overview.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-113439690869642029?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2005/12/simplified-teatime.html</link><guid>e25f7a15e64e0ded0860c87998513b43</guid></item>
<item><title type="text">Sophie movies</title><description type="html">Steve is posting &lt;a href=&quot;http://www.geeksrus.com/sophie/&quot;&gt;screen clips&lt;/a&gt; of progress in Sophie (a.k.a. the Future of the Book), which is  developed in Squeak with a Tweak UI. It's looking nicer and nicer every week.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-114124831938825828?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/03/sophie-movies.html</link><guid>75ec2088e7b743b8903dbb17dc42d1f2</guid></item>
<item><title type="text">OLPC, graphics, and more</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://wiki.laptop.org/images/0/0f/CameraInEtoys.jpg&quot;&gt;&lt;img style=&quot;margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 200px;&quot; src=&quot;http://wiki.laptop.org/images/0/0f/CameraInEtoys.jpg&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;I just returned from a nice productive visit to California, where I brought back my very own $100-laptop. Got the camera working in Etoys (see picture on the right, showing Yoshiki and me) with just a few patches  to &lt;a href=&quot;http://diegogomezdeck.blogspot.com/2006/12/video4squeak-funcionando-en-la-olpc.html&quot;&gt;Diego&lt;/a&gt;'s code.&lt;br /&gt;&lt;br /&gt;We also went to visit Keith Packard and Carl Worth of &lt;a href=&quot;http://cairographics.org/&quot;&gt;Cairo&lt;/a&gt; fame in Portland. Had a nice chat about &lt;a href=&quot;http://geek.vtnet.ca/doc/ols2005-notes/html/d1-15h00.html&quot;&gt;Twin&lt;/a&gt; and then hacked away on a &lt;a href=&quot;http://piumarta.com/pepsi/&quot;&gt;Pepsi&lt;/a&gt; version of image compositing operators. A very interesting meeting it was, with the old folks (Alan Kay, Jim Gettys) and the younger ones all sharing their thoughts.&lt;br /&gt;&lt;br /&gt;And back to OLPC, read this nice essay titled &lt;a href=&quot;http://alchemicalmusings.org/2006/12/19/free-laptops/&quot;&gt;Free Laptops: Creating, Producing and Sharing a Revolution&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-116654329642180701?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/12/olpc-graphics-and-more.html</link><guid>206f82aea687d31089b352dfa84960c3</guid></item>
<item><title type="text">Croquet SDK 1.0 Beta out</title><description type="html">Get it at &lt;a href=&quot;http://www.opencroquet.org/&quot;&gt;opencroquet.org&lt;/a&gt;!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-114556211000396449?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/04/croquet-sdk-10-beta-out.html</link><guid>d3cc829c4ed8e1e9903fdc5012248c6d</guid></item>
<item><title type="text">OLPC video from NECC</title><description type="html">Just found a nice &lt;a href=&quot;http://www.youtube.com/watch?v=UvpP3Farb2g&quot;&gt;video on youtube&lt;/a&gt; about the $100 laptop at &lt;a href=&quot;http://web.uoregon.edu/ISTE/NECC2006/&quot;&gt;NECC 06&lt;/a&gt;, including a cameo of our very own Kim Rose (at 3:21) while the speaker is mentioning &quot;creativity&quot; - very apt, I'd say.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-116153400875766976?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2006/10/olpc-video-from-necc.html</link><guid>89733f02144a66c574fc7a63ee08af73</guid></item>
<item><title type="text">Etoys kid-tested on XO</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/RbPn6l8B_mI/AAAAAAAAABI/Us45v3XKeng/s1600-h/OLPCSophie2.jpg&quot;&gt;&lt;img style=&quot;margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;&quot; src=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/RbPn6l8B_mI/AAAAAAAAABI/Us45v3XKeng/s200/OLPCSophie2.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5022613003250564706&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;I brought my green machine home this weekend, and my twins had fun with it. Enormous fun in fact for the two 7-year olds, pounding on TamTam furiously. I couldn't bear it anymore after half an hour or so.&lt;br /&gt;&lt;br /&gt;Instead, I showed Jakob how to make a little figure bounce around on the screen in Etoys, while his sister went to practice her cello. He painted a simple head, and then we used the &quot;forward by&quot; and &quot;bounce&quot; tiles in a tiny two-line script making it move around. I made the mistake of pointing out that the &quot;bounce&quot; tile can produce some noise when bouncing. Endless fun trying the different noises ensued. Oh well.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp1.blogger.com/_gCu9ub99Rz4/RbPn618B_nI/AAAAAAAAABQ/eDfr0-fxWAo/s1600-h/OLPCSophieJakob2.jpg&quot;&gt;&lt;img style=&quot;margin: 0pt 10pt 10px 0px; float: left; cursor: pointer;&quot; src=&quot;http://bp1.blogger.com/_gCu9ub99Rz4/RbPn618B_nI/AAAAAAAAABQ/eDfr0-fxWAo/s200/OLPCSophieJakob2.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5022613007545532018&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;Disturbed in her practice by these noises, Sophie came over and wanted to paint, too. So we saved Jakob's project and started a new one for her. I sat back to work on my email and let her brother teach. She spend like half an hour just painting the figure. The paint tool showed that it is not tuned to the XO's display resolution yet, it's far too small. But not giving up that easily, Sophie was erasing and repainting it over and over until she was satisfied with her &quot;cow girl&quot;.  Then Jakob proudly told her how to let it move and bounce, he had rembered almost everything needed. Together they  quickly made it work, and just started exploring the noise-making possibilities again when we were saved by the call to dinner ...&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2513343767600019122?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/01/etoys-kid-tested-on-xo.html</link><guid>615ae4e8523837b17210a9df06269d8c</guid></item>
<item><title type="text">Why Second Life Won't Get a Third</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R4__5GaeHaI/AAAAAAAAAUc/VvOp4qVT8aI/s1600-h/afterlife1.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R4__5GaeHaI/AAAAAAAAAUc/VvOp4qVT8aI/s320/afterlife1.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5156621454801771938&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Max Borders &lt;a href=&quot;http://www.tcsdaily.com/article.aspx?id=110207A&quot;&gt;opines&lt;/a&gt; on what he views as the key differences between &lt;a href=&quot;http://en.wikipedia.org/wiki/Second_Life&quot;&gt;Second Life&lt;/a&gt; and Croquet.  Another piece comparing the two technologies can be found &lt;a href=&quot;http://www.edutechie.com/2007/07/7-ways-croquet-is-better-than-second-life/&quot;&gt;here&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5845131140697608471?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/01/why-second-life-wont-get-third.html</link><guid>2f5b46b0c9adacb40088b816baaebe9f</guid></item>
<item><title type="text">Touchy-Feely Croquet</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R20OoWaeHYI/AAAAAAAAAUM/InTiROkbJq0/s1600-h/Novint+Falcon.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R20OoWaeHYI/AAAAAAAAAUM/InTiROkbJq0/s320/Novint+Falcon.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5146786035528506754&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;UNC's Jeff VanDrimmelen has recently begun exploring ways to integrate haptic technology with Croquet virtual worlds.  Haptic technology allows simulations to convey information to users in the form of mechanical stimulation.  Haptic devices typically transmit information in the form of vibrations or motions, thereby creating a sense of &lt;span style=&quot;font-style:italic;&quot;&gt;touching&lt;/span&gt; or &lt;span style=&quot;font-style:italic;&quot;&gt;feeling&lt;/span&gt; virtual objects.  The main types of haptic devices are 1) &lt;span style=&quot;font-style:italic;&quot;&gt;tactile feedback devices&lt;/span&gt; (that generate resistance to user input movement) and &lt;span style=&quot;font-style:italic;&quot;&gt;force feedback devices&lt;/span&gt; (that generate movement back to the input device). &lt;br /&gt;&lt;br /&gt;The &lt;a href=&quot;http://home.novint.com/products/novint_falcon.php&quot;&gt;Novint Falcon&lt;/a&gt; device is a new haptic device developed for use as a gaming peripheral and input device. The user interacts with  a small knob with three degrees of freedom in movement at the front of what is otherwise a stationary desktop device. The knob is attached to the main body via three multi-hinged and motorized arms. The step motors within the arms feel what the user is doing as well as apply forces back to the knob.&lt;br /&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;373&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/S5h4owxpHcI&amp;rel=0&amp;border=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/S5h4owxpHcI&amp;rel=0&amp;border=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;373&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Jeff recently posted this video about his earliest effort to integrate the Novint Falcon haptic device with Croquet technology.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5725458674594210177?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/12/touchy-feely-croquet.html</link><guid>38490449c3b299deaaff4cbf67e93610</guid></item>
<item><title type="text">The Server Dilemma</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R8BnL6NGxLI/AAAAAAAAAVE/qC2xfRNf5RE/s1600-h/servers.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R8BnL6NGxLI/AAAAAAAAAVE/qC2xfRNf5RE/s320/servers.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5170245826521777330&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The following quote from the article &lt;span style=&quot;font-style:italic;&quot;&gt;Second Earth&lt;/span&gt; (MIT Technology Review, July-August 2007) provides some interesting numbers around the server dilemma associated with server hosted virtual worlds such as Second Life:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;This reimagining of the real world can go only so far, given current limitations on the growth of Linden Lab's server farm, the amount of bandwidth available to stream data to users, and the power of the graphics card in the average PC.&lt;br /&gt;&lt;br /&gt;According to&lt;/span&gt; [Cory]&lt;span style=&quot;font-style:italic;&quot;&gt; Ondrejka&lt;/span&gt; [Linden Lab's now former CTO]&lt;span style=&quot;font-style:italic;&quot;&gt;, Linden Lab must purchase and install more than 120 servers every week to keep up with all the new members pouring into Second Life, who increase the computational load by creating new objects and demanding their own slices of land. Each server at Linden Lab supports one to four &quot;regions,&quot; 65,536-square-meter chunks of the Second Life environment--establishing the base topography, storing and rendering all inanimate objects, animating avatars, running scripts, and the like. This architecture is what makes it next to impossible to imagine re-creating a full-scale earth within Second Life, even at a low level of detail. At one region per server, simulating just the 29.2 percent of the planet's surface that's dry land would require 2.3 billion servers and 150 dedicated nuclear power plants to keep them running. It's the kind of system that &quot;doesn't scale well,&quot; to use the jargon of information technology.&lt;br /&gt;&lt;br /&gt;But then, Linden Lab's engineers never designed Second Life's back end to scale that way. Says Ondrejka, &quot;We're not interested in 100 percent veracity or a true representation of static reality.&quot;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5958755932185298068?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/02/server-dilemma.html</link><guid>4b38a7dcde6deeade8a90c718f60e28f</guid></item>
<item><title type="text">Saving and Loading Spaces</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R98S_NOOWNI/AAAAAAAAAVk/TLOyvkjtaBk/s1600-h/SaveAndLoad.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R98S_NOOWNI/AAAAAAAAAVk/TLOyvkjtaBk/s320/SaveAndLoad.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5178878973589739730&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A new build of Cobalt has just been made available download.  Added functionality includes the ability to save and load spaces from web or local directories.  This means that you can now make your custom Cobalt spaces available to others as a kind of template virtual world over the web!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-6562084312584448852?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/03/saving-and-loading-spaces.html</link><guid>6a5397ec6d9eea158b1f12eaa75370a7</guid></item>
<item><title type="text">Duke Receives Mellon Award</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R2CNuH89EaI/AAAAAAAAATk/EQqs3sMxOVk/s1600-h/Mellon.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R2CNuH89EaI/AAAAAAAAATk/EQqs3sMxOVk/s320/Mellon.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5143266598005313954&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Today, the Andrew W. Mellon Foundation awarded Duke University a $100,000 prize for leadership and development work to advance Croquet in the open source.  The prize was one of ten presented as part of the second annual Mellon Awards for Technology Collaboration (MATC) which are given each year to notforprofit organizations for leadership in the collaborative development of open source software tools with application to scholarship in the arts and humanities.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R2RMvmaeHVI/AAAAAAAAAT0/M7suvg2r2u4/s1600-h/2007-12-10+at+13-25-09.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R2RMvmaeHVI/AAAAAAAAAT0/M7suvg2r2u4/s320/2007-12-10+at+13-25-09.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5144321055013084498&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The award was presented at the Fall Task Force meeting of the Coalition for Networked Information in Washington D.C. by Sir &lt;a href=&quot;http://en.wikipedia.org/wiki/Tim_Berners-Lee&quot;&gt;Timothy BernersLee&lt;/a&gt;, Director of the World Wide Web Consortium and the inventor of the World Wide Web. Dukes MATC award was one of three that received the top prize of $100,000. The other award winners received prizes of $50,000 each. Award recipients were selected by the MATC Award Committee, which included BernersLee, &lt;a href=&quot;http://en.wikipedia.org/wiki/Mitchell_Baker&quot;&gt;Mitchell Baker&lt;/a&gt; (CEO, Mozilla Corporation), &lt;a href=&quot;http://en.wikipedia.org/wiki/John_Seely_Brown&quot;&gt;John Seely Brown&lt;/a&gt; (former Chief Scientist, Xerox Corp.), &lt;a href=&quot;http://en.wikipedia.org/wiki/Vinton_G._Cerf&quot;&gt;Vinton G. Cerf&lt;/a&gt; (Vice President and Chief Internet Evangelist, Google, Inc.), &lt;a href=&quot;http://en.wikipedia.org/wiki/John_Gage&quot;&gt;John Gage&lt;/a&gt; (Chief Researcher and Director of the Science Office, Sun Microsystems, Inc.), and Tim OReilly (Founder and CEO, OReilly Media).&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-76992878734793493?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/12/duke-receives-mellon-award.html</link><guid>200f1a6ec4be08fdcf5e5c61efeb8ae0</guid></item>
<item><title type="text">Squeak by Example</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R0Tfhhe6ZXI/AAAAAAAAATE/CLagUSfiFJg/s1600-h/Squeak_Cover.png&quot;&gt;&lt;img style=&quot;cursor: pointer;&quot; src=&quot;http://bp2.blogger.com/_8RhdmQ9Bi6c/R0Tfhhe6ZXI/AAAAAAAAATE/CLagUSfiFJg/s320/Squeak_Cover.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5135475242125911410&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Croquet is written in &lt;a target=&quot;_blank&quot; href=&quot;http://www.squeak.org/About/&quot;&gt;Squeak&lt;/a&gt;, a modern open-source development environment for the classic &lt;a target=&quot;_blank&quot; href=&quot;http://en.wikipedia.org/wiki/Smalltalk&quot;&gt;Smalltalk-80&lt;/a&gt; programming language (the first purely object-oriented language and environment).  Squeak was used because Croquet required a number of capabilities that could only be provided by a true late bound, message sending language. Croquet's relationship to Squeak gives Croquet the property of a purely object-oriented system. This has allowed for some significant flexibility in the design and the nature of the protocols and architectures that have been developed for Croquet.&lt;br /&gt;&lt;br /&gt;An essential property of Squeak is its ability to keep the system running while testing and making changes. Squeak allows even major changes to be performed incrementally and within a mere fraction of a second. Another key feature is Squeak's generalized storage allocator and garbage collector that is efficient in &lt;span style=&quot;font-style: italic;&quot;&gt;real-time&lt;/span&gt; so that animations and dynamic media of many kinds can be played while the garbage collector is collecting.  It also allows reshaping of objects to be done safely.  This is important to the creation and delivery of media rich collaborative virtual environments.&lt;br /&gt;&lt;br /&gt;Early on in the project, a &lt;a href=&quot;http://en.wikipedia.org/wiki/Java_%28programming_language%29&quot;&gt;Java&lt;/a&gt;-based  Croquet was considered&lt;a href=&quot;http://en.wikipedia.org/wiki/Java_%28programming_language%29&quot;&gt;&lt;/a&gt;. However, that approach was abandoned because Java lacks needed meta facilities. In many ways Squeak/Smalltalk is still far ahead of its successors in promoting a vision of an environment where &lt;em&gt;everything is an object&lt;/em&gt;, and &lt;span style=&quot;font-style: italic;&quot;&gt;anything&lt;/span&gt; can change at run-time.  This is an important property for virtual environments that are deeply flexible and modifiable as an immediate result of the actions people take within those environments.  Still, the lack of significant corporate backing and marketing muscle behind Squeak/Smalltalk has meant that less capable technologies are the ones with which most of today's developers are most familiar.&lt;br /&gt;&lt;br /&gt;To help more people get familiar with Squeak's very powerful programming environment, the new book &lt;a href=&quot;http://squeakbyexample.org/&quot;&gt;&lt;em&gt;Squeak by Example&lt;/em&gt;&lt;/a&gt; is now being made available under the Creative Commons Attribution-ShareAlike 3.0 license.  It's intended for both students and developers and guides readers through the Squeak language and development environment by means of a series of examples and exercises. This is very useful to those who wish to become more familiar with the Croquet programming environment.  You can either &lt;a target=&quot;blank_&quot; href=&quot;http://squeakbyexample.org/SBE.pdf&quot;&gt;download the PDF for free&lt;/a&gt;, or you can &lt;a target=&quot;_blank&quot; href=&quot;http://www.lulu.com/content/1171965&quot;&gt;buy a softcover copy from lulu.com&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-6873028870723042111?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/11/squeak-by-example.html</link><guid>534155f121d4004f631d84f5abe4d58e</guid></item>
<item><title type="text">A Croquet Winter Wonderland</title><description type="html">&lt;object height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/djcEQeR-Uqc&amp;amp;rel=1&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/djcEQeR-Uqc&amp;amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;It has emerged as a type of practice here in the United States for people to begin putting up holiday decorations on the weekend after our annual &lt;a href=&quot;http://en.wikipedia.org/wiki/Thanksgiving&quot;&gt;Thanksgiving&lt;/a&gt; celebration. In keeping with this, I offer this link to a new video from the folks at &lt;a href=&quot;http://edusim3d.com/&quot;&gt;EduSim&lt;/a&gt;.  In this one, they use a projected Croquet space in combination with a very compact &lt;a href=&quot;http://www.e-beam.com/&quot;&gt;eBeam&lt;/a&gt; input device that converts any surface (in this case a regular wall) into an interactive surface.  The result is an on demand and relatively low cost interactive white board solution ($800-900 US) that, in combination with a data projector ($600-2,500 US) and Croquet software (free), may represent the beginnings of an economical alternative to traditional in-classroom visual communication boards (the typical front-of-the-classroom whiteboard/bulletin board installation is comparable in price).  Could this be the earliest manifestation of a new form of broadly available classroom media for K-12?&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-3902083799076024404?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/11/croquet-winter-wonderland.html</link><guid>7040994f89e2f533b251769ec078f05f</guid></item>
<item><title type="text">Cobalt Released</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R86F8DRzrfI/AAAAAAAAAVM/0dF6MqcO9J0/s1600-h/Cobalt+Parrish.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/R86F8DRzrfI/AAAAAAAAAVM/0dF6MqcO9J0/s320/Cobalt+Parrish.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5174220288613920242&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cobalt is an emerging open source and multi-platform metaverse browser and toolkit application being built using the open source Croquet SDK. A pre-alpha build of the Cobalt application is being made freely available to the emerging virtual worlds community by Duke University and its partners under the Croquet license.  We hope that by doing so, we will foster a viable community-based software development effort leading to open virtual world technologies supporting the needs of education and research.&lt;br /&gt;&lt;br /&gt;The &lt;span style=&quot;font-style:italic;&quot;&gt;current build&lt;/span&gt; of Cobalt is located &lt;a href=&quot;http://croquet-src-01.oit.duke.edu/cobalt.html&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The &lt;span style=&quot;font-style:italic;&quot;&gt;Monticello source code repository&lt;/span&gt; for Cobalt is located &lt;a href=&quot;http://croquet-src-01.oit.duke.edu:8886/&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The Cobalt-specific &lt;span style=&quot;font-style:italic;&quot;&gt;Mantis bug tracker&lt;/span&gt; is located &lt;a href=&quot;http://croquet-src-01.oit.duke.edu/mantis/index.php&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Software testing and bug reporting is a very important contribution to the effort. Doing so will help the Cobalt development community to identify areas in need of programming and re-engineering. Well-written bug reports can be an especially useful contribution by non-developers who are interested in advancing this effort during these early stages of Cobalt development. We hope that many of the community's software developers will consider taking on bug fixes.&lt;br /&gt;&lt;br /&gt;Mark McCahill will be coordinating updates and code contributions to Cobalt to ensure compatibility with the base classes within the present Croquet SDK. In this way we can ensure that Cobalt development does not create a fork from the Croquet SDK. The goal here is to build a Croquet-based application that end-users can really use and then to contribute the application back to the Croquet Consortium for distribution as part of a future Croquet release. We hope that by making the pre-alpha available we can tap into the creative potential of the broader community as a way of advancing something that all of us can freely use to create deeply collaborative, greatly featured, and widely interlinked virtual environments on a very large scale.  Lets do it!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5598610686329261610?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/03/cobalt-released.html</link><guid>9c95086fab531dde732c4c8ed3d2c315</guid></item>
<item><title type="text">Wii-mote Possibilities</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/5s5EvhHy7eQ&amp;rel=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/5s5EvhHy7eQ&amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Here is a clever video from Johnny Lee at Carnegie Mellon University showing how you can use a  Nintendo Wii-mote and home-made infrared LED light pens to create a low cost multi-touch interactive whiteboard system.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-3605450581147273309?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/01/wii-mote-possibilities.html</link><guid>0514eec060c231c68b160633ccfd5ee5</guid></item>
<item><title type="text">Croquet Skeletal Animation Part 2</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/iU4Xp6iomwA&amp;rel=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/iU4Xp6iomwA&amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Another example video of skeletal animation in Croquet.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-9111449590944392019?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/02/croquet-skeletal-animation-part-2.html</link><guid>8e10b744752bd4e88d9f9045d8842e75</guid></item>
<item><title type="text">A Croquet Spoof</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/pPCyJHEQHL8&amp;rel=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/pPCyJHEQHL8&amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Recently posted by David Faught.  Happy New Year!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-3065742473089096596?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/01/croquet-spoof.html</link><guid>afcbea63235b9eb6af0fccb2c34d43c6</guid></item>
<item><title type="text">Building a Lesson in EduSim</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/Fqwnj0pC5-4&amp;rel=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/Fqwnj0pC5-4&amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Here is another video tutorial developed by Rich White at the &lt;a href=&quot;http://edusim.greenbush.us/&quot;&gt;Greenbush EduSim project&lt;/a&gt; showing how to bring resources into an EduSim/Croquet world and how apply textures to those resources.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-4183153529083018036?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/11/building-lesson-in-edusim.html</link><guid>eb1def6c9f654287be833ad0d21e5da2</guid></item>
<item><title type="text">Croquet Selected!</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp1.blogger.com/_8RhdmQ9Bi6c/R2kLAGaeHWI/AAAAAAAAAT8/6k5baPu8CEs/s1600-h/2008_SummitPoster_Header.png&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp1.blogger.com/_8RhdmQ9Bi6c/R2kLAGaeHWI/AAAAAAAAAT8/6k5baPu8CEs/s320/2008_SummitPoster_Header.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5145656145597046114&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This past weekend, it was announced at &lt;a href=&quot;http://MediaGrid.org/summit/&quot;&gt;The Boston Media-Grid Summit&lt;/a&gt; that the &lt;a href=&quot;http://immersiveeducation.org/&quot;&gt;Immersive Education Initiative&lt;/a&gt; (see &lt;a href=&quot;http://chronicle.com/daily/2007/12/925n.htm?rss&quot;&gt;article&lt;/a&gt; on the initiative's goals) has selected Croquet as one of three official &quot;next generation&quot; immersive education platforms.  The Immersive Education Initiative is an international collaboration of universities, colleges, research institutes, consortia companies, and foundations that are working together to define and develop open standards, best practices, platforms, and communities of support for virtual reality and game-based learning and training systems. The other two immersive education platforms selected were Sun's open source &lt;a href=&quot;https://lg3d-wonderland.dev.java.net/&quot;&gt;Project Wonderland&lt;/a&gt; client and the now open source &lt;a href=&quot;http://secondlife.com/community/downloads.php&quot;&gt;Second Life client&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;What this all means is that the open source Croquet platform's value will become better known and that the Immersive Education Initiative will now &lt;span style=&quot;font-style:italic;&quot;&gt;direct both funding and programming resources towards the development and deployment of open source Croquet technologies and open source Croquet-based educational applications&lt;/span&gt;. Selection criteria for this important honor included the following: 1) support for the Windows and Macintosh operating systems; 2) availability as open source code; 3) vendor-neutral client and server architectures (no vendor lock-in); 4) stable and reliable runtime implementations; 5) integrated text chat and voice chat; 6) high resolution graphics; 7) multi-user support for collaboration; 8) highly customizable avatars that support high resolution graphics and body animation (gestures); and 9) support for user-created content.&lt;br /&gt;&lt;br /&gt;The event in Boston was an invitation-only affair hosted and sponsored by the &lt;a href=&quot;http//mediagrid.org/&quot;&gt;Grid Institute&lt;/a&gt;, the &lt;a href=&quot;http://www.bc.edu/schools/advstudies/&quot;&gt;Woods College of Advancing Studies&lt;/a&gt; at Boston College, and the City of Boston with participation from the &lt;a href=&quot;http://www.fas.org/main/home.jsp&quot;&gt;Federation of American Scientists&lt;/a&gt; and the &lt;a href=&quot;http://www.kauffman.org/&quot;&gt;Ewing Marion Kauffman Foundation&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5951781894116449827?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/01/croquet-selected.html</link><guid>7d096f4adae0d3405acc031090c8c157</guid></item>
<item><title type="text">Avatars in First Life</title><description type="html">&lt;object height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/flkgNn50k14&amp;amp;rel=1&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;transparent&quot;&gt;&lt;embed src=&quot;http://www.youtube.com/v/flkgNn50k14&amp;amp;rel=1&quot; type=&quot;application/x-shockwave-flash&quot; wmode=&quot;transparent&quot; height=&quot;355&quot; width=&quot;425&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;This video illustrates what real life might be like if we were limited to the avatar capabilities/interactions presently available in virtual worlds such as Second Life.  It very much underscores the limitations in the ways we are able to represent ourselves within  today's 3D gaming and chat environments.  If we are going to leverage virtual environments to support interactions between people, then we need far better ways of representing ourselves within them.   Our representations should ideally be able to project as fully as possible the broadest range of human cues and capabilities.  Clearly, 3D virtual worlds have a long way to go in this regard. As a first step, we need to get past the &lt;span style=&quot;font-style: italic;&quot;&gt;dress-up doll house&lt;/span&gt; metaphor that appears to have emerged for interaction within these environments.&lt;br /&gt;&lt;br /&gt;The static avatars presently made available as placeholders in the Croquet SDK are far less capable than those of Second Life.  Still, the Croquet SDK offers developers an opportunity to change whatever they need about the way people are represented with virtual environments. Opportunities for avatar experimentation are huge.  Just imagine avatars that contain action triggers, link buttons, or even multiple on-board virtual environments.  The possibilities through Croquet are as limitless as the imaginations brought to bear on the problem (and of course the resources expended in implementing them).  The flexibility and efficiency of the Croquet programming environment gives researchers and other creatives far more capability in exploring how best to represent presence in virtual environments than is available with today's commercial 3D world technologies.&lt;br /&gt;&lt;br /&gt;I should point out that all of the .mdl avatars that the Croquet SDK now uses actually came from an early version of the &lt;a href=&quot;http://www.alice.org/&quot;&gt;Alice&lt;/a&gt; project and from &lt;a href=&quot;http://coweb.cc.gatech.edu/cs2340/3367&quot;&gt;Squeak's Wonderland&lt;/a&gt;.  However, the Croquet team at the University of Minnesota is working on some nicer avatars that will likely be made available in the next version of the Croquet SDK. A preview of the Minnesota avatars can be seen briefly on the Croquet video in a &lt;a href=&quot;http://jlombardi.blogspot.com/2007/09/croquet-demo-movie.html&quot;&gt;previous post&lt;/a&gt;. Also, &lt;a href=&quot;http://xaverse.blogspot.com/&quot;&gt;Matt Schmidt&lt;/a&gt; and his team in Missouri are also beginning to experiment with avatar improvements and it will be interesting to see what they come up with.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-3498260186838855573?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2007/11/avatars-in-first-life.html</link><guid>23719353d1ed85553845f14512955b51</guid></item>
<item><title type="text">NSF SGER</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/SEp4rmnRcQI/AAAAAAAAAWY/cPBVrK3DGZk/s1600-h/NSF_logo.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp3.blogger.com/_8RhdmQ9Bi6c/SEp4rmnRcQI/AAAAAAAAAWY/cPBVrK3DGZk/s320/NSF_logo.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5209108609502376194&quot; /&gt;&lt;/a&gt;&lt;br /&gt;I've just been awarded an NSF Small Grant for Exploratory Research (SGER) to advance exploratory work towards a more complete open source Croquet-based browser application and toolset that can support the large scale needs of the scientific community. With this support, we will be helping to advance the Cobalt effort by 1) making general improvements to the user interface which includes the more complete buildout of Cobalt's menus as well as improvements to basic navigational control, 2) fully implementing and testing of the ability for end-users to tag and electronically store their Cobalt-created worlds to online directories, 3) designing and implementing methods for finding and contacting other users of Croquet spaces by leveraging XMPP/Jabber as a presence registration and rendezvous mechanism, and 4) designing and implementing of methods that enable Cobalt users to browse a directory of all registered and active Cobalt spaces and to make it possible for users to contact current participants of those spaces by leveraging XMPP/Jabber and institutional IAA infrastructures as a means of defining user permissions by group affiliations. At the end of this, we hope to have a full Beta of the Cobalt application available for download to all.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-587543660357709209?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/06/nsf-sger.html</link><guid>243be209ebae46e0e07c4ea962b2a772</guid></item>
<item><title type="text">Another Digital Rainout</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp0.blogger.com/_8RhdmQ9Bi6c/R__3fHCDVaI/AAAAAAAAAVs/lBduSf2Wwts/s1600-h/StormCloud1.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp0.blogger.com/_8RhdmQ9Bi6c/R__3fHCDVaI/AAAAAAAAAVs/lBduSf2Wwts/s320/StormCloud1.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5188137409589761442&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Today, for the second time in as many weeks, &lt;a href=&quot;http://secondlife.com/&quot;&gt;Second Life&lt;/a&gt; became unavailable for  the same reasons that 3rd party large-scale server-based architectures should not be relied on to support mission-critical virtual worlds in any serious way.  The outage happened, once again, just at the time that Aaron Walsh of the &lt;a href=&quot;http://immersiveeducation.org/&quot;&gt;Media Grid Immersive Education Initiative&lt;/a&gt; was trying to host a &lt;a href=&quot;http://secondlife.com/&quot;&gt;Second Life&lt;/a&gt; in-world meeting. Here is what Linden Lab had to say:  &lt;span style=&quot;font-style:italic;&quot;&gt;Logins have temporarily been restricted to staff-only as Operations addresses a slowdown in the asset system. Weve also broadcast a request in world for residents who are currently logged in to refrain from manipulating or transferring assets. Well have more info ASAP.&lt;/span&gt;  Obviously, this company is in real trouble given the frequency of these problems in a system that so many have come to rely on....&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-4746158045115295653?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/04/another-digital-rainout.html</link><guid>88034eaaa2ab18b5f1de39b765db35c1</guid></item>
<item><title type="text">MS-OLPC?</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp0.blogger.com/_8RhdmQ9Bi6c/SC18SzZ-M5I/AAAAAAAAAV8/k2t2orxWt8Y/s1600-h/olpc.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://bp0.blogger.com/_8RhdmQ9Bi6c/SC18SzZ-M5I/AAAAAAAAAV8/k2t2orxWt8Y/s320/olpc.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5200949807161422738&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Nicholas Negroponte just posted the following announcement:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;&quot;One Laptop per Child is announcing an agreement with Microsoft&lt;br /&gt;to make a dual boot, Linux/Windows, version of the XO laptop. In addition, our intention is to engage one or more third parties to port Sugar to run on Windows in order to reach a wider installed base of laptops. In the meanwhile, OLPC remains fully committed to our goal: a completely free and open learning platform for the world's children. The mission statement of OLPC has not changed in three years.&lt;br /&gt;&lt;br /&gt;Sugar is the first user interface specifically designed for children and teachers to learn and collaborate, and remains central to our strategy. Broadening Sugar's reach to as many children as possible remains key to OLPC's mission.&lt;br /&gt;&lt;br /&gt;To enable the Sugar environment to reach as many children as possible, particularly in the poorest areas of the world, OLPC must be able to bid on educational technology contracts, some of which require that Microsoft Windows be able to run on our hardware. The increased volumes will lower the XO-1's price, already lowest in the industry with capabilities no other laptop shares.&lt;br /&gt;&lt;br /&gt;OLPC is substantially increasing its engineering resources and all software development continues entirely on GNU/Linux.  We will continue to work to make Sugar on Linux the best possible platform for education and to invest in our expanding Linux deployments in Peru, Uruguay, Mexico and elsewhere.&lt;br /&gt;&lt;br /&gt;No OLPC resources are going to porting Sugar to Microsoft Windows, although as a free software project, we encourage others to do so. The Sugar user interface is already available for Fedora, Debian and Ubuntu Linux distributions, greatly broadening Sugar's reach to the millions of existing Linux systems. We continue to solicit help from the free software community in these efforts. Additionally, the Fedora, Debian and Ubuntu software environments run on the XO-1, adding support for tens of thousands of free software applications.&lt;br /&gt;&lt;br /&gt;Open Firmware V2, the free and open source BIOS, is now capable of running Linux, Microsoft Windows XP and other operating systems, and was developed by Firmworks with support from OLPC. This will enable dual boot of OLPC XO laptops with Microsoft Windows XP in addition to the existing Fedora-based system and will become the standard BIOS/bootloader for all XO systems when completed. With this &quot;free BIOS,&quot; the XO-1 continues to be the most open laptop hardware currently&lt;br /&gt;available.&quot;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;For more information, see http://wiki.laptop.org/go/AnnounceFAQ.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5542876454174968190?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/05/ms-olpc.html</link><guid>0c50baf6d06f19f40d5ac7e1848ce023</guid></item>
<item><title type="text">Deep play</title><description type="html">Over thirty years ago, anthropologist Clifford Geertz posted a proto-blog on &quot;deep play.&quot; Today, &quot;Deep Play: Notes on a Balinese Cockfight&quot; could stand as the manifesto for www.seriousgames.org. It's certainly an inspiration for this blog.&lt;br /&gt;&lt;br /&gt;So, what's deep play? For Geertz it was what happened when groups of people got really engrossed in the same dynamic activity. Relating to one another in terms of that activity flow, they got the chance to see what their culture was all about and comment on the underlying rules that controlled their lives.&lt;br /&gt;&lt;br /&gt;Of course, Geertz came up with this notion while watching a cockfight. Like today's batch of videogame researchers, Geertz recognized in an &quot;edge&quot; activity the makings of an ideal learning situation.&lt;br /&gt;&lt;br /&gt;A little background. Cockfighting was illegal in Bali, but it happened anyway. It was an ad hoc sort of event -- popping up on side streets and plazas, then shutting down and picking up again down the road. A fight would start up and a flashmob of gamblers would swarm around it. Geertz called it a &quot;FOCUSED GATHERING.&quot;&lt;br /&gt;&lt;br /&gt;So the sight of &quot;one chicken mindlessly hacking another one to bits&quot; was a kind of &quot;strange attractor&quot; that drew all these people to it. But Geertz thought the cockfight was more than a bloody entertainment. &lt;br /&gt;&lt;br /&gt; The Balinese cockfight was &quot;a SIMULATION of the entire social matrix . . . in which its devotees lived.&quot; The Bali caste system had rigid rules -- it was one very serious game. As a complex system, social caste affected every aspect of their everyday social relations and was too complicated to see in its entirety. &lt;br /&gt;&lt;br /&gt; Geertz thought of the brutal cockfight as a way for the Balinese to LEARN what their culture looked like &quot;when it was SPELLED OUT IN A COLLECTIVE TEXT.&quot; Here was the entire Balinese pecking order &quot;raised to a level ... where it could be more exactly perceived.&quot;&lt;br /&gt;&lt;br /&gt;Simulation as learning tool. For the Balinese, this cockfight-as-simulation was more than a chance to stand back and see the rules that controlled their collective lives. It was a chance for participants to REFLECT and COMMENT on the underlying rules of the game. &lt;br /&gt;&lt;br /&gt;So what does this mean for education today? &lt;br /&gt;&lt;br /&gt; Cockfights, like videogames, are an object lesson for academic -- as J.C. Herz points out in her terrific essay &quot;Gaming the System.&quot; But not because universities need to get into the business of staging cockfights or making games. &lt;br /&gt;&lt;br /&gt; What these forms of DEEP PLAY illustrate is what Herz calls &quot;the learning potential of a network, and the social ecology that unlocks that potential.&quot;&lt;br /&gt;&lt;br /&gt;But universities won't be able to harness that potential until they have easy, cost-effective tools for building online educational worlds that scale.&lt;br /&gt;&lt;br /&gt;We need to use our network technologies to support the emergence of AD HOC collaboration communities where groups of learners can see and interact with one another, becoming engrossed in a common flow of activities, and having the tools ready-at-hand to reflect on what they're doing -- collaborative CRITICAL THINKING -- e.g. the basis of an effective liberal arts education.&lt;br /&gt;&lt;br /&gt;My role in the Croquet Higher Education Collaborative is to take on an immediate challenge - bringing together as many researchers as possible to design breakthrough applications that show the value of Croquet in the educational domain. &lt;br /&gt;&lt;br /&gt; This blog will talk about what it takes to build a multi-institutional open-source collaborative from the ground up.&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8747177-109794811105128049?l=croquet4education.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquet4education.blogspot.com/2004/10/deep-play.html</link><guid>fea55a9443535275a2fb3e895e8e1fec</guid></item>
<item><title type="text">New Posting . . . At Last</title><description type="html">First, I apologize for not blogging for such a long while.  Like everyone else involved in Croquet, I've been juggling full-time responsibilities at work with dedication to the Croquet cause.  Okay, no excuses.  &lt;br /&gt;&lt;br /&gt;The Third International Conference on Creating, Connecting and Collaborating through Computing (C5 2005) conference in Kyoto, Japan was a great opportunity to make progress on the Wisconsin/Minnesota plan to build an international alliance of educational institutions around the Croquet Project.  Much more on this in later postings.&lt;br /&gt;&lt;br /&gt;While Mark and Julian demonstrated new interface elements geared towards making the Croquet experience as intuitive as possible for educators and their students, I presented on &quot;Croquet and Higher Education.&quot;  I spoke to a growing realization at the highest levels of the American academic technology community that commercial course management systems will never touch the heart of education -- teaching and scholarship -- in a transformative way.  Our colleagues in Japan agreed.&lt;br /&gt;&lt;br /&gt;After all, the CMS was never meant to support innovative teaching practice.  It was intended as an administrative container or set of containers for course management (connoting efficiency and restraint).  Regardless of the number of improvements grafted onto the CMS platform, the conceptual framework will always give primacy to administrative matters over pedagogical experimentation.  &lt;br /&gt;&lt;br /&gt;In point of fact, we have been far too easy to please until now, but as greater and greater numbers of faculty members commit themselves to using CMSs, vendors are likely to be confronted with a considerably less pliable customer base. To put it bluntly, its about time we (e.g. universities, colleges, academic technologists and educators) learned to feed ourselves.  After all, give a man [sic] a fish; you have fed him for today.  Teach a man to fish, and you have fed him for a lifetime. &lt;br /&gt;&lt;br /&gt;One powerful organization that agrees with this argument is NLII, the National Learning Infrastructure Initiative of the Educause organization.  In fact, NLII will soon be renamed to reflect a new strategic focus on the neo-millennial learner and how to address that learner's needs through emerging technologies.   Croquet is going to be a large part of that focus, I'm sure.&lt;br /&gt;&lt;br /&gt;So here's an ANNOUNCEMENT -- check out the upcoming March/April issue of Educause Review for my column &quot;Standing on the Plateau,&quot; which introduces Croquet to univerity CIOs, Chancellors, Provosts, and the like.  You'll also find a link to a longer version published online by NLII.  The extended article will also be available for download on the Croquet Project site's &quot;Whitepaper&quot; page.  &lt;br /&gt;&lt;br /&gt;When you have a chance to read the article, we'd really appreciate your feedback.  Post your comments to my blog.  Thanks!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8747177-110926214076203335?l=croquet4education.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquet4education.blogspot.com/2005/02/new-posting-at-last.html</link><guid>6902d4d55872c789ee8fcca441531313</guid></item>
<item><title type="text">New Version of Gallery Released</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;&lt;br /&gt;Well it's far from finished&lt;br /&gt;but our rewrite of the Digitial Gallery software&lt;br /&gt;has reached a point where we'd like to share it!&lt;br /&gt;&lt;br /&gt;Documentation and download are available here:&lt;br /&gt;http://www.citris-uc.org/hosted/projects/ith/gallery&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you used the first version at all,&lt;br /&gt;we think you'll be much happier with this one.&lt;br /&gt;We certainly are.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Additions &amp; Improvements:&lt;br /&gt;&lt;br /&gt;* Gallery design is now entirely in the 3D world,&lt;br /&gt;  no more split 2D/3D business.&lt;br /&gt;&lt;br /&gt;* Collaboration Actually Works!&lt;br /&gt;&lt;br /&gt;* 3D Annotations.&lt;br /&gt;&lt;br /&gt;* VRML model loading.&lt;br /&gt;&lt;br /&gt;* Overall streamlining, improved ease-of-use, etc.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ideas, suggestions, criticism, and bug reports are always welcome-&lt;br /&gt;please use the links at the bottom of the project's web page.&lt;br /&gt;&lt;br /&gt;We've also started an online forum for users of the software,&lt;br /&gt;please feel free to ask questions or report bugs there:&lt;br /&gt;http://makephpbb.com/phpbb/?mforum=citrisgallery&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Best Regards,&lt;br /&gt;&lt;br /&gt;Ruzena, Tao &amp;amp; Orion&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111059071617378442?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/03/new-version-of-gallery-released.html</link><guid>a906fd93fe5f26678f62cf5eb44a3b53</guid></item>
<item><title type="text">Collision Refinements &amp; Smalltalk Gripe</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;&lt;br /&gt;First, the smalltalk gripe: The syntax for boolean logic is just ugly.&lt;br /&gt;Compare smalltalk and 'C' here:&lt;br /&gt;&lt;br /&gt;(x &lt;= y and: [x &lt;= z]) ifTrue:&lt;br /&gt;&amp;nbsp;&amp;nbsp;[foo := 10.].&lt;br /&gt;vs.&lt;br /&gt;if (x &lt;= y &amp;amp;&amp; x &lt;= z)&lt;br /&gt;&amp;nbsp;&amp;nbsp;foo = 10;&lt;br /&gt;&lt;br /&gt;or, worse horrors, here:&lt;br /&gt;&lt;br /&gt;(a &lt; b and: [a &lt; c and: [a &lt; d]] ifTrue:&lt;br /&gt;&amp;nbsp;&amp;nbsp;[aIsSmall := true.].&lt;br /&gt;vs.&lt;br /&gt;if (a &lt; b &amp;amp;&amp; a &lt; c &amp;amp;&amp; a &lt; d)&lt;br /&gt;&amp;nbsp;&amp;nbsp;aIsSmall = true;&lt;br /&gt;&lt;br /&gt;in both cases, it's pretty easy to tell at a glance what's going on in the 'C' code, whereas the smalltalk code requires you to actually count the brackets etc.&lt;br /&gt;true, i've only barely cut my teeth on smalltalk and have years of 'C' under the belt, but i think there's no denying that smalltalk obsfucates boolean algebra.&lt;br /&gt;&lt;br /&gt;On to Collisions!&lt;br /&gt;&lt;br /&gt;So in the previous post i referred to a shortcut i took in assuming that the avatar needed to be pushed out in the local Z direction, which was more or less valid for cubes which are relatively thin in Z. But i expanded it to do the test for which face of the cube the avatar is closest to, and push it out along that face instead, which works nicely for all faces.&lt;br /&gt;&lt;br /&gt;I also noticed that the rabbit avatar is *not* spherical in extent, and therefor the amount by which the wall extents are expanded should really take into account the orientation of the avatar, which is achieved via this line:&lt;br /&gt;gex _ geometry extent + (geometry inverseGlobalOrientation localPointToGlobal: avatar extent) abs.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;that's all for now.&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110746438209177433?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/collision-refinements-smalltalk-gripe.html</link><guid>a261e3e0f18d609203fd0eb3f98632d2</guid></item>
<item><title type="text">too much meta can be a bad thing</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;This afternoon i learned that too much meta can be a bad thing.&lt;br /&gt;&lt;br /&gt;In our software, you layout walls, and then add 'items' (think paintings) to the walls. This has all been done with meta-fied collaborativity in mind.&lt;br /&gt;&lt;br /&gt;I discovered that when connected, the AddItem method would work as intended on the machine which initiated the AddItem, but on the other machine (or, i presume, machines) a sort of bastard doppelganger of the item would be added in addition to the reglar one. &lt;br /&gt;That is, a nice textured picture would appear on the wall as intended, but an untextured duplicate would appear in the same place.&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(51, 51, 255);&quot;&gt;The correct item and the doppelganger would have the same teaObjectName, and thus of course have strange collaborative behaviour.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After some fooling around i learned that it was too much meta !&lt;br /&gt;&lt;br /&gt;Here's the basic code structure which caused the problem:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;----------------------------------------------------------&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;TWall &gt;&gt; addItemWithFileName: fn&lt;br /&gt;  &quot;This method gets called from a user event, so it's not currently meta'd&quot;&lt;br /&gt;&lt;br /&gt;  item := self meta createNewItem.&lt;br /&gt;  item meta setUpStuff: fn.&lt;br /&gt;----------------------------------------------------------&lt;br /&gt;TWall &gt;&gt; createNewItem&lt;br /&gt;  &quot;This is the &lt;span style=&quot;font-weight: bold;&quot;&gt;wrong&lt;/span&gt; way to do it - there should be no metas!&quot;&lt;br /&gt;  item := TItem meta new.&lt;br /&gt;  self meta addChild: item.&lt;br /&gt;  ^ item.&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;----------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.. the solution was simply to remove the metas from createNewItem.&lt;br /&gt;&lt;br /&gt;- which is easy enough but somewhat intimidating,&lt;br /&gt;as i was under the impression that using meta while already 'inside' of meta was a safe thing to do. Is this not the case ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110747864975799979?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/too-much-meta-can-be-bad-thing.html</link><guid>f7e08f057438ccea628c9924b698f768</guid></item>
<item><title type="text">getting it</title><description type="html">A month or so ago when i had been working with meta for a little bit&lt;br /&gt;i went and tried to meta-fy TEditBox so that it would be collaborative&lt;br /&gt;the way TDragger is.  I rapidly fell into a cats cradle of confusion,&lt;br /&gt;hanging images, etc etc.&lt;br /&gt;&lt;br /&gt;Last friday i decided to take another crack,&lt;br /&gt;and it took about half an hour and works great!&lt;br /&gt;&lt;br /&gt;Here's the changeset for any who're interested:&lt;br /&gt;&lt;br /&gt;&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://bugs.impara.de/view.php?id=883&quot;&gt;http://bugs.impara.de/view.php?id=883&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Also improved TTorus, giving it a snugly-fitting frameBox and a fun texture Twist parameter.&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/donut%20con%20twist.png&quot;&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110841425175295190?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/getting-it.html</link><guid>ada5380d2a0cf2bc14875ec3c6debd83</guid></item>
<item><title type="text">Another New Version of the Gallery Released</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;.. I think i need to change the title of this blog to something more like &quot;Release Notices&quot;.&lt;br /&gt;&lt;br /&gt;In any event,&lt;br /&gt;Tao and i have been working steadily on the Gallery software&lt;br /&gt;and finally decided to let loose with a beta release of what we've got.&lt;br /&gt;&lt;br /&gt;You can download it &lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/software.html&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;b&gt;Citris Gallery 2.8.0&lt;/b&gt;&lt;br /&gt;     &lt;ul&gt;        Beta Release&lt;br /&gt;      Many, many new features. (Some of these have links to more info)&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Tweak UI&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Load &amp; Save to XML&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=18&quot;&gt;Manipulate lights&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Primitives&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=6&quot;&gt;Change wall &amp;amp; floor textures&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Portals to other Spaces!&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=49&quot;&gt;Improved TEdit Box&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Improved VRML Loading&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;Changeable Avatars&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Spinning Objects&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=40&quot;&gt;Patch for locked-down firewalls&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;More included Content&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/main_page.php&quot;&gt;.. and so much more!&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111663203105612150?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/05/another-new-version-of-gallery.html</link><guid>9ee3942eeefd8c804ad7595499c65af2</guid></item>
<item><title type="text">Collision Detection</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;Well i was not looking forward to reimplementing collision detection between the avatar and the gallery walls, especially as this time around the walls aren't parameterized as lines on the floor.&lt;br /&gt;&lt;br /&gt;Previously i basically just did 2D intersection, intersecting the line on the floor with the line representing the avatar's movement for this frame.&lt;br /&gt;&lt;br /&gt;This time i decided to try going at it the 'right' way and it worked great.&lt;br /&gt;&lt;br /&gt;The 'right' way of course is to transform the avatar into the wall's coordinate system and do the collision stuff there. It took a bit of flailing around, and the calls i ended up using seem rather like misnomers to me, but in the end it worked great.&lt;br /&gt;&lt;br /&gt;Here's the algo i ended up with:&lt;br /&gt;&lt;br /&gt;1. convert the avatar's position to wall-space.&lt;br /&gt;&lt;blockquote&gt;a1  _ geometry inverseGlobalTransform localPointToGlobal: avatar globalPosition.&lt;br /&gt;&lt;/blockquote&gt;2. extend the wall's extent by the avatar's extent.&lt;br /&gt;   (This is actually somewhat inaccurate unless you also transform the avatar's extent&lt;br /&gt;    out of the avatar's orientation and into the wall's orientation, but what the heck.)&lt;br /&gt;&lt;br /&gt;3. test if the avatar's position (in wall space) is outside the expanded wall extents.&lt;br /&gt;   if so, no collision.&lt;br /&gt;&lt;br /&gt;4. move the avatar outside of the wall.&lt;br /&gt;- I really shortcutted here. The walls are represented as just Cubes who are relatively thin in their Z component. So i just set the avatar's Z (still in wall space) component to be the expanded Z-extent of the wall. (Taking into account the sign of course). This seems to work really well.&lt;br /&gt;&lt;br /&gt;5. convert the modified wall-space avatar position back to global space:&lt;br /&gt;&lt;blockquote&gt;avatar translation: (geometry globalTransform localPointToGlobal: a1).&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;ta da!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-Also integrated Tao's contentBrowser, improved the menus, and done i don't know what all.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110739025637719390?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/collision-detection.html</link><guid>ffafe2190582dd0f6d2a575cb4ffb89c</guid></item>
<item><title type="text">annotating</title><description type="html">Annotating seems to be a pretty hot topic lately,&lt;br /&gt;and Tao &amp; i are starting a stab at it.&lt;br /&gt;&lt;br /&gt;The  big debate for us is how to present the text.&lt;br /&gt;&lt;br /&gt;We've argued over it a lot and i think we're going to try a few different methods and see which one(s) we like.&lt;br /&gt;&lt;br /&gt;* 2D morphic pop-up windows in screen-space. (external to the whole croquet window)&lt;br /&gt;* TWindows in camera-space. (ala the default croquet HUD pop-up for left-click)&lt;br /&gt;* TWindows in world-space.&lt;br /&gt;&lt;br /&gt;Re Collaboration:&lt;br /&gt;&lt;br /&gt;* The last approach has a default solution. Just zoom up to the window and edit. (Some tweaks will have to be made to allow an avatar to select thru another avatar when they're superimposed)&lt;br /&gt;&lt;br /&gt;* The first two will need some work. We'd like the annotation to be visible only to those folks who want to see it.  That is if A, B and C are editing the annotation, and D doesn't care, then the annotation shouldn't take up World or Screen real-estate for D.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Meanwhile,&lt;br /&gt;here's a nifty-looking screenshot of the first pass at the annotation incidators.&lt;br /&gt;This required a small change to TRay&gt;&gt; pickTriangles: list: because that routine did not return a normal. I added some very brutish normal calculation and it seems to work as well as could be expected. (quite well in the four or so objects i've tried it on) Change set is available &lt;a href=&quot;http://bugs.impara.de/view.php?id=918&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/surfacemarkers.png&quot;&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110989165964201764?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/03/annotating.html</link><guid>413ec23ded4461fa600f2e4a8bb44ec5</guid></item>
<item><title type="text">getting ready for citris open house thursday</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;After a bit of thought,&lt;br /&gt;Tao and I decided to show the new version of the gallery software at a CITRIS open-house this thursday. While the newer version does not have the media support quite in place, it does feature actual collaborativity and a more intuitive and sexy user interface.&lt;br /&gt;&lt;br /&gt;Today i got the bulk of Tao's mpeg player into the new version,&lt;br /&gt;along with the usual control buttons, but still have a bit of work to do.&lt;br /&gt;&lt;br /&gt;Loading VRML2 files still needs a bit of work and we'll be faking it a little (but truly only a little) at the demo.  One problem we're facing here is collaborative manipulation of 3D objects with the TEditBox.  TEditBox is a wonderful interface but hasn't been meta-fied yet, unlike TDragger.  I may take another stab at bringing meta into the TEB now that i'm a little familiar with how meta works.&lt;br /&gt;Also the texture field of a VRML2 file seems to be being ignored, which i plan on trying to just fix, but i may have to do some work-around like assigning a texture w/ the same name as the file.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110790921185465028?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/getting-ready-for-citris-open-house.html</link><guid>51109a178d61e4be783aefd4829e3a82</guid></item>
<item><title type="text">gallery mark 2 demo available</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;&lt;a href=&quot;http://citris-uc.org/hosted/projects/ith/gallery/mark2demo.html&quot;&gt;http://citris-uc.org/hosted/projects/ith/gallery/mark2demo.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Tao and I felt like showing the new version of the gallery in its current state, in hopes of getting feedback etc. This demo is of more interest i think to the Croquet development community than to the actual target users of the software, which are humanities academics.&lt;br /&gt;&lt;br /&gt;We're especially looking for feedback in these areas&lt;br /&gt;&lt;br /&gt;* does it run ?&lt;br /&gt;   * what sort of framerate (and system description)&lt;br /&gt;&lt;br /&gt;* does it run collaboratively ?&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;   * what sort of framerate (and system description)&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;&lt;br /&gt;* how's the interface ?&lt;br /&gt;   * menus&lt;br /&gt;   * overhead view ('!' button | views | dual view)&lt;br /&gt;   * manipulating walls&lt;br /&gt;&lt;br /&gt;any thought you have are highly welcome.&lt;br /&gt;please email starbow@eecs.berkeley.edu or oxe@eecs.berkeley.edu.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-110755220368816197?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/02/gallery-mark-2-demo-available.html</link><guid>0b9ea89d72e9cf33e21ca1d933c43341</guid></item>
<item><title type="text">CInputFieldWithReset</title><description type="html">I seem to be writing small Tweak classes lately.&lt;br /&gt;&lt;br /&gt;This afternoon added &quot;CInputFieldWithReset&quot; to allow users to easily reset the values in the primitive properties editor dialog.&lt;br /&gt;&lt;br /&gt;This object is available here: &lt;a href=&quot;http://bugs.impara.de/view.php?id=1598&quot;&gt;http://bugs.impara.de/view.php?id=1598&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112302652826696177?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/08/cinputfieldwithreset.html</link><guid>60665bb96b3e2deb9ef5cb23c57673d7</guid></item>
<item><title type="text">Go Here, Primitive Properties, SkyBox</title><description type="html">There's a new partial release up at:&lt;br /&gt;&lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&quot;&gt;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- Added a pop-up dialog for Primitives allowing you to&lt;br /&gt;manually edit their position, size, and other properties.&lt;br /&gt;This seems to work with save &amp; load,&lt;br /&gt;but i'm a bit nervous about it,&lt;br /&gt;especially the extent of cubes and squares.&lt;br /&gt;(well, formerly cubes and squares ;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- Added 'go here' item in the pop-up menu for most items,&lt;br /&gt;  under options.&lt;br /&gt;&lt;br /&gt;- Fixed skybox problems, added 'none' as an option.&lt;br /&gt;  (Still need a 'background color' option tho!)&lt;br /&gt;&lt;br /&gt;- various other small changes.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112250677662411795?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/07/go-here-primitive-properties-skybox.html</link><guid>0c9b61f7441a6c1f5c70719afdade8c2</guid></item>
<item><title type="text">Navigation Buttons</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;We've been kicking around the idea for a while of putting some heads-up buttons on the screen for navigation. That is, buttons to press for 'forward', 'back' etc.&lt;br /&gt;&lt;br /&gt;Watching a new user yesterday struggle with the QWE/ASD keyboard navigation (mouse navigation was even harder) i decided to add it in sooner rather than later.&lt;br /&gt;&lt;br /&gt;So there's now 6 floating overlay buttons which mirror the layout of QWE/ASD.&lt;br /&gt;When you mouse-click a button, the expected thing happens.&lt;br /&gt;&lt;br /&gt;But what's really good, i think, is that when you press or release a key on the keyboard, these buttons reflect that. It's a very nice visual feedback.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/navbuttons.png&quot; /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111697018193492712?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/05/navigation-buttons.html</link><guid>426685e37d83bd17a691c8df95f4ac8b</guid></item>
<item><title type="text">mmm donuts</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;As a quick aside in the pursuit of point-clouds,&lt;br /&gt;i generated some point clouds which are points 'near' the surface of a torroid.&lt;br /&gt;The nifty part is that the points are evenly distributed on the donut surface.&lt;br /&gt;That is, if you were standing on the donut, you'd perceive the average point density around you to be pretty much constant no matter where you were standing.&lt;br /&gt;&lt;br /&gt;This is actually non-trivial.&lt;br /&gt;Consider the traditional simple mapping of wrapping a rectangle around a donut via theta = x , phi = y. This mapping contracts the map on the inner wall of the donut and expands it on the outter.&lt;br /&gt;&lt;br /&gt;Similarly with a sphere, theta = x, phi = y contracts at the poles.&lt;br /&gt;For a sphere this turns out to have a simple analytical solution which i think is just theta = x, phi = sqrt(y). (I explore this mapping &lt;a href=&quot;http://elenzil.com/orion/progs/randompoints/index.html&quot;&gt;here&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;However such an analytical mapping of a rectangle onto a donut turns out to be much more complex. &lt;a href=&quot;http://www.sciencenews.org/&quot;&gt;Science News&lt;/a&gt; had an article in 2003 or 2004 which talked about a recent solution, but i can't find it.&lt;br /&gt;&lt;br /&gt;For evenly distributing Random points however,&lt;br /&gt;there's a fairly simple if brutish approach:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;choose a random point inside the rectilinear volume which contains the torus.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;if the point is within some threshhold of the torus surface keep it.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;optional: project the point onto the torus surface. (this actually introduces a bit of non-even distribution, but it allows you to relax the threshhold quite a bit)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;repeat until you have as many points as you want.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;Torroid with 100,000 points evenly distributed within 0.01 units of its surface, not projected:&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/eventorroid1.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/eventorroid1.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/eventorroid2.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/eventorroid2.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Comparison of filtered and non-filtered projected points:&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/torroidcomparison2.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/torroidcomparison2.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/torroidcomparison1.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/torroid/torroidcomparison1.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.. honestly, it barely makes a visual difference, but it's nice to see anyhow.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Actually, after doing some more comparisons with donuts of different shapes,&lt;br /&gt;i've come to the conclusion that the whole threshholding thing is pretty much unnecessary if you project the points onto the donut surface.&lt;br /&gt;&lt;br /&gt;Funnily, projecting a point onto the surface of a donut is suprisingly simple and doesn't involve and trig.&lt;br /&gt;Just project the point in question onto the circle which is the core of the donut and then project onto the surface.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111886418751744327?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/06/mmm-donuts.html</link><guid>686a36875e8433adb71b739d13566358</guid></item>
<item><title type="text">New features, Release, Installer</title><description type="html">Have finally rolled Croquet into a Nullsoft installer package,&lt;br /&gt;which works great of Windows users.  Have continued to release .zip files&lt;br /&gt;for cross-platform users.&lt;br /&gt;&lt;br /&gt;New release out:&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It notably includes two new sample galleries which are content-lite &amp; -heavy, and a demo of the animated pointcloud tele-immersion stuff.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Just added ability to zoom-to an object, similar to TWindow's (but without facing you &quot;in front&quot; of the object, just close to the object.) it works nicely.  Thanks to Ed Boyce for lighting a fire under that one.&lt;br /&gt;&lt;br /&gt;Also added ability to put Markers on TPrimitives. This was also thanks to Ed, who is using the Sphere primitives to model a solar system, and i realized that one might want to annotate a planet.&lt;br /&gt;&lt;br /&gt;Animated point clouds have been added with pre-calculated geometrical summaries. Am beginning work on networking to dynamically pull in tele-immersion data.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Am at work now on an input dialog for Primitives,&lt;br /&gt;to allow numerical placement.  - Will probably generalize that for TGalleryBase objects.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112198848565141564?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/07/new-features-release-installer.html</link><guid>f88e167904f1011dfa5421c510d26b45</guid></item>
<item><title type="text">Fond Adieu.</title><description type="html">&lt;font face= arial&gt;&lt;br /&gt;I think this is probably the last post for this blog.&lt;br /&gt;&lt;br /&gt;I've taken a new position as a physics research assistant at the south pole of the earth, where i'll be from about mid-october 2005 thru november, 2006.&lt;br /&gt;There's more info (and a blog) here: &lt;a href=&quot;http://www.elenzil.com/ohpolar&quot;&gt;http://www.elenzil.com/ohpolar&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It's been a pleasure working with the Croquet community, and i hope to stay in touch. I'll definitely continue following the Croquet scene from down there, but i doubt i'll have time to do much more than dabble.&lt;br /&gt;&lt;br /&gt;best,&lt;br /&gt;Orion&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/font&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112835899138478094?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/10/fond-adieu.html</link><guid>c6aab7d1429add96d346be61da706c71</guid></item>
<item><title type="text">Cloth again</title><description type="html">(related to &lt;a href=&quot;http://orionelenzil.blogspot.com/2005/08/vernet-cloth.html&quot;&gt;this&lt;/a&gt; previous post)&lt;br /&gt;&lt;br /&gt;I couldn't stay away from the cloth,&lt;br /&gt;so i've put together a change set which includes a decent demo.&lt;br /&gt;&lt;br /&gt;I added collision with spheres,&lt;br /&gt;and in addition added something which altho i'm sure it's been done, i've never seen, which is: not only does cloth make way for the sphere, it also pushes the sphere around. I've only ever seen fairly static objects which the cloth humbly obeys, but it's simple enough to additionally have the cloth push the sphere.&lt;br /&gt;&lt;br /&gt;The changeset files-in to a stock Croquet0.3 image, and is located here:&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/cloth/ClothOxe.5.cs&quot;&gt;http://www.citris-uc.org/hosted/projects/ith/cloth/ClothOxe.5.cs&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The changeset includes a pop-up menu with different preset situations.&lt;br /&gt;The presets run fairly fast (20 or 30Hz or so) on my 3.2GHz windows machine,&lt;br /&gt;&lt;b&gt;with the major caveat&lt;/b&gt; that performance seriously degrades over time. I'm not sure why this is. I think it may have something to do with squeak garbage collection.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/cloth/clothoxe1.jpg&quot;&gt;&lt;br /&gt;Pretty close to some initial conditions. It's billowing up because of 'wind'.&lt;br /&gt;The cloth is anchored along its four edges.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/cloth/clothoxe2.jpg&quot;&gt;&lt;br /&gt;A bit more billowing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/cloth/clothoxe3.jpg&quot;&gt;&lt;br /&gt;Holding a sphere. The sphere rolls around fairly nicely.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/cloth/clothoxe4.jpg&quot;&gt;&lt;br /&gt;One of 8 exciting preset scenes: A sphere bowling into a cloth which is anchored only along the top edge.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112535539739389641?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/08/cloth-again.html</link><guid>d372618e2da1ef3655982c111ca7a4b6</guid></item>
<item><title type="text">Primitive Editor</title><description type="html">Ed Boyce is interested in using the Gallery software to present solar system simulations. (Is &quot;solar&quot; Sol-centeric ?  ie, is there only one solar system in the universe, one solar wind, etc ? or does Alpha Centauri or Sirius produce a solar wind as well ?) To that end, a couple new features are in the worls:&lt;br /&gt;&lt;br /&gt;* numerical positioning of objects.&lt;br /&gt;  - for starters a simple dialog which lets you edit the properties of a primitive.&lt;br /&gt;i've been wanting to make one of those for a while. It's a relatively generic dialog with fields for position, radius, inner radius, top radius, base radius, segments, wedges, etc, in essence all the potential fields a primitive may support. The fields are only shown if the passed-in primitive supports the methods to set/get those fields. ie via &quot;aTPrimitive class includesSelector: someSelector&quot;.&lt;br /&gt;It's a bit clunky, definitely, but works so far.&lt;br /&gt;  - I'm not sure if i want to include Texture, Spin, etc in here.&lt;br /&gt;  - for seconds, we may work out a table format to input the data, altho this seems to be straying a bit from a general gallery app to me.&lt;br /&gt;&lt;br /&gt;* &quot;Go To&quot; feature.&lt;br /&gt;  - added a menu item to all objects which reads &quot;Go Here&quot; and simply zooms the camera/avatar up to the object.  The behaviour is similar to that of TWindow, but somewhat different in that it doesn't pay attention to the 'front' face of the object. With TWindow, the viewer always ends up aligned facing the front of the object, which is as it should be. However that's a bit unintuitive when you just see some object in the distance and want to go to it.  With &quot;Go here&quot; it's as if you simply walked (quickly) over to the object.&lt;br /&gt;  - I would like to add a pop-up window listing all the objects (of interest) in the scene and allowing you to select, edit, and of course, go to them.&lt;br /&gt;&lt;br /&gt;* Providing hooks to ODE for physics&lt;br /&gt;&lt;br /&gt;* Ed would like to see 128-bit numbers instead of 32-bit.&lt;br /&gt;  - I think this is somewhat out of the scope of the Gallery project and more in the purview of Croquet or Squeak itself. itselves. themself.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112232856154328189?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/07/primitive-editor.html</link><guid>67e3d6009d2216fb496b576782f2a5c8</guid></item>
<item><title type="text">Using Shorts for spacial Coordinates</title><description type="html">The teleimmersion project generates huge point-cloud datasets,&lt;br /&gt;with approximately 100,000 points per frame, each point having XYZ and RGB data.&lt;br /&gt;&lt;br /&gt;In the interest of increasing the performance of (future) streaming of this data from the source machines into a target machine running croquet, i've been working on simply reducing the precision of the data.&lt;br /&gt;&lt;br /&gt;I assume a maximum streaming thruput of 18MB per second, based on tests streaming within my own computer.&lt;br /&gt;&lt;br /&gt;Originally, XYZ and RGB were each represented as triples of four-byte floats.&lt;br /&gt;So, 3 * 4 + 3 * 4 = 24 bytes per point * 100,000 = 2.4MB per frame -&gt; up to  7.5Hz.&lt;br /&gt;&lt;br /&gt;RGB is an obvious target, since rendering cards at their base level can only handle colors with single-byte components.&lt;br /&gt;&lt;br /&gt;So i made an option to represent the RGB values as triples of single-byte components.&lt;br /&gt;So, 3 * 4 + 3 * 1 = 15 bytes per point * 100,000 = 1.5MB per frame -&gt; up to 12.0Hz&lt;br /&gt;&lt;br /&gt;I'm nearly finished with an option to represent the XYZ values as triples of two-byte signed shorts.&lt;br /&gt;So, 3 * 2 + 3 * 1 =  9 bytes per point * 100,000 = 0.9MB per frame -&gt; up to 20.0Hz&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Here is a screenshot showing three different types of representations.&lt;br /&gt;Random-point placement aside, they look pretty much identical.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/shortxyz/shortxyz1.png&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Implementation Issues&lt;br /&gt;---------------------&lt;br /&gt;&lt;br /&gt;Changing to single-byte color components was relatively straight-forward.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Changing to two-byte spacial components&lt;/b&gt; has been a bit trickier.&lt;br /&gt;OpenGL is perfectly happy being passed GLShorts for spacial data;&lt;br /&gt;the card must be converting them to floats before running them thru the graphics pipeline. I haven't yet tested for performance issues here, but i don't expect any.&lt;br /&gt;More complicated however is that Croquet of course works with B3DVector3, which is based on B3DFloatArray,which is based on FloatArray, which is of course, Floats.&lt;br /&gt;Furthermore, Squeak doesn't even have a ShortArray!&lt;br /&gt;What Squeak does have is ByteArray, which has convenience methods for accessing pairs of elements as shorts. (and longs, if you're in to that sort of thing)&lt;br /&gt;So the data can be accessed for purposes such as finding bounding boxes and doing calculations.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Dealing with Scaling&lt;/b&gt; is so far definitely the trickiest issue.&lt;br /&gt;Croquet does not use the usual scale feature of transformation matrices; rather it requires the actual vertices to be actually changed. David Smith once explained to me that this is to enable/simplify picking thru portals, if i recall correctly. In any event, i felt that reimplementing scale as a per-point conversion, multiplication, and unconversion would be prohibitively slow. So i'm trying out just putting scale right in the matrix.  The sphere on the far right has been scaled this way.  So far it's working well altho there must be some remaining issues with bounding box, as a TEditBox no longer works with the byte-spatial-components pointclouds. I'm about to look at this.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112613819345440970?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/09/using-shorts-for-spacial-coordinates.html</link><guid>3ea421acb2530b59f2a49c9772cffc4c</guid></item>
<item><title type="text">Vernet Cloth</title><description type="html">Dave Faught pointed me to Thomas Jakobsen's article &quot;&lt;a href=&quot;http://www.gpgstudy.com/gpgiki/GDC%202001%3A%20Advanced%20Character%20Physics&quot;&gt;Advanced Character Physics&lt;/a&gt;&quot;, which was used by the guy who made the&lt;a href=&quot;http://www.pekkasandborg.com/portfolio/?id=2&quot;&gt; Falling Woman demo&lt;/a&gt;.&lt;br /&gt;Jakobsen writes about particle systems, a subject dear to my heart, and interestingly advocates using Vernet Integration rather than Euler. I've traditionally just gone with Euler because it's straight-forward.&lt;br /&gt;&lt;br /&gt;Review:&lt;br /&gt;&lt;br /&gt;In Euler,&lt;br /&gt;the basic per-frame per-particle process is something like:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;position'     = position + velocity * dt.&lt;br /&gt;velocity'     = velocity + acceleration * dt.&lt;br /&gt;acceleration' = whatever.&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;With Verner,&lt;br /&gt;instead of storing velocity, you store the previous position. And thus:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;position'     = position - positionOld + acceleration * dt^2.&lt;br /&gt;positionOld   = position.&lt;br /&gt;acceleration' = whatever.&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;- I have to confess i don't understand the derivation of that core line,&lt;br /&gt;but it seems to work.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Jakobsen also gives a nice approximation for square root.&lt;br /&gt;&lt;br /&gt;So i thought i'd try out implementing the Cloth simulation outlined in Jakobsen's paper. Basically it's a triangular mesh with every edge a spring. Velocity of the nodes is not stored, but the previous position is.&lt;br /&gt;&lt;br /&gt;A very heavy part of the computation is calculating normals.&lt;br /&gt;For every node, i pre-compute a list of 2 pairs of other nodes (4 nodes total) which represent vectors to be cross-producted with each other. Essentially, for most nodes in the mesh, the node is the center of a hexagon and i calculate the normal as the cross-product of two of the hexagon's three obvious bisectors. The edges are special cases and work allright but not great, and i ignored the four corners.&lt;br /&gt;To speed up normal computation, i also only calculate every Nth normal per frame. When N is 3 or 4, this is a significant speedup.&lt;br /&gt;&lt;br /&gt;The simulation runs fairly well on my 3Ghz PC with about 25x25 nodes. Fairly well = about 20Hz or so.&lt;br /&gt;&lt;br /&gt;Here are the &lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads/ClothOxe1.zip&quot;&gt;change sets for the classes&lt;/a&gt;, and here is &lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads/ClothOxe1_image.zip&quot;&gt;an image file&lt;/a&gt; if you're in a hurry.&lt;br /&gt;&lt;br /&gt;Screenshots:&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/cloth/cloth1.png&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/cloth/cloth2.png&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/cloth/cloth3.png&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/cloth/cloth4.png&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112430153284912063?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/08/vernet-cloth.html</link><guid>c51c5796bb58ee077affba82c3e526f8</guid></item>
<item><title type="text">Byte Color Components versus Floats</title><description type="html">The tele-immersion data sets are point-clouds where each point has XYZ and RGB information. Previously, each of component of XYZ and RGB have been floats.&lt;br /&gt;However, since colors are eventually converted to 8-bit components, RGB could be 3*8 bits instead of 3*32 bits.&lt;br /&gt;&lt;br /&gt;Below is a comparison of tele-immersion data with 7-bit* color components versus 32-bit floats. Basically it looks fine. The 7-bit file is 2,004,809 bytes, and the float file is 3,207,668 bytes, so the ration is about 5/8!&lt;br /&gt;&lt;br /&gt;Future directions:&lt;br /&gt;I'd assumed that OpenGL required float data for XYZ information,&lt;br /&gt;but i just checked and GLVertex3s is a call for specifiying XYZ with 'GLShort' components, which i presume are 16-bit. If we're able to get that to work, the data would go from 64 bits per point to only 24 bPP, or a ratio of 3/8.&lt;br /&gt;&lt;br /&gt;Current streaming speeds indicate a theoretical maximum frame rate of about 6Hz with 64bPP, so that maximum could go up to about 16Hz, which is much more appealing.&lt;br /&gt;&lt;br /&gt;On the resolution of 16-bit spacial information:&lt;br /&gt;16 bits has a resolution of one part in 65,000.&lt;br /&gt;The tele-immersion &quot;playpen&quot; is approximately 10 feet in each dimension, which translates to a 16-bit resolution of about .002 inches, or about .05 millimeters, which is pretty good.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/bytecolors/7bitfloatcomparison.png&quot;&gt;&lt;br /&gt;&lt;br /&gt;* For some reason, OpenGL via Croquet interprets byte color components as being in the range 0-127, not 0-255. Values over 127 are clamped to zero. See &lt;a href=&quot;http://bugs.impara.de/view.php?id=1684&quot;&gt;http://bugs.impara.de/view.php?id=1684&lt;/a&gt;.&lt;br /&gt;edit: Bert Freudenberg has clued me in that GLBYTE is a signed value; i want GLUNSIGNEDBYTE or equivelant. Thanks Bert !&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112449350990084462?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/08/byte-color-components-versus-floats.html</link><guid>4c7bd4c7df4c972b9bf461b643bec188</guid></item>
<item><title type="text">Input Validation</title><description type="html">This is kinda neat.&lt;br /&gt;&lt;br /&gt;With the new Properties editor for primitives,&lt;br /&gt;there's a number of input fields which need to have the user's input validated before being used.&lt;br /&gt;&lt;br /&gt;For example, maybe the user types in a word where a number is wanted,&lt;br /&gt;or enters a value outside of the allowed range,&lt;br /&gt;(or, because i thought it might come in handy, the user types in 0 when 0 in particular is disallowed).&lt;br /&gt;&lt;br /&gt;Validation becomes somewhat trickier when the fields affect the scene immediately - that is, as soon as the user hits a key, it's reflected in the scene. In this situation, you absolutely need validation.&lt;br /&gt;&lt;br /&gt;For example, in the case of TSphere segments, the minimum value is 2 (altho i'm using 3).&lt;br /&gt;A natural and frequent user interaction will be to delete the value currently in the field and then type in a new value. After deletion but before typing, the value of the field is invalid, and so must be handled.&lt;br /&gt;&lt;br /&gt;I subclassed CNumberConverter and added members for min, max, zero disallowment, as well as a pointer (?) back to the CInputField itself, and some helper variables.&lt;br /&gt;When the input goes invalid, the CInputField background is changed to lightRed (the man's pink!) and the last valid value is reported. The text content of the input field is left unchanged, however, because changing would interfere with the user's typing.&lt;br /&gt;When the input goes valid, the background color is changed to the CInputField's container's background color, and the current value is stored as the last valid value.&lt;br /&gt;&lt;br /&gt;Basically, it works fairly nicely.&lt;br /&gt;&lt;br /&gt;The file-outs of the new classes are &lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads/CNumberConverterOxe_20050728.zip&quot;&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/inputfields/validatedfields.png&quot;&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-112258766184991107?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/07/input-validation.html</link><guid>3b3da39c0a775abf59f5debe64ce66d1</guid></item>
<item><title type="text">Small new release - Good Stuff</title><description type="html">There's an image/changes-only release up at &lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&quot;&gt;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Most notably there was an old bug around which was causing a dump to the log file at least every frame in some situations, which pretty severely impacted performance, to say nothing of filling up the harddrive !  Folks should download this version just for this.&lt;br /&gt;&lt;br /&gt;Also included are the heads-up navigation keys described in the previous blog post,&lt;br /&gt;which are really pretty nice,&lt;br /&gt;&lt;br /&gt;and some other improvements:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Citris Gallery 2.8.2&lt;/b&gt;&lt;br /&gt;    &lt;ul&gt;        Partial Release (Image &amp;amp; Changes file only)&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=87&quot;&gt;Fixed bad bug that was often dumping ~4KB/second to log file.&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=74&quot;&gt;Added heads-up navigation keys.&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href=&quot;http://citrissrv2.eecs.berkeley.edu:8888/mantis/view.php?id=49&quot;&gt;Cursor changes according to which part of EditBox it's over.&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Various other improvements/fixes.&lt;/li&gt; &lt;/ul&gt;&lt;br /&gt;&lt;span style=&quot;font-family:arial;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111825874953928425?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/06/small-new-release-good-stuff.html</link><guid>5b407aedd2f787fc5cedeeb6570d4755</guid></item>
<item><title type="text">one megapixel</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;We're looking at combining (live) tele-immersion data with the croquet gallery project.&lt;br /&gt;&lt;br /&gt;The tele-immersion data comes in the form of a huge point cloud: xyz, rgb per point,&lt;br /&gt;with millions of points. (~ 640x480x20 or so per frame at about 10Hz.)&lt;br /&gt;&lt;br /&gt;I did some initial tests to see if there's even a remotre feasability and discovered some interesting things:&lt;br /&gt;&lt;br /&gt;1. you can send at least a million points straight to openGL in an array.&lt;br /&gt;2. openGL can render at least a million point at slow but interactive rates, say 13Hz.&lt;br /&gt;3. openGL rendered big points faster than small points!&lt;br /&gt;   - with pointsize at 1, i got 9Hz, with pointsize at 15, i got 13Hz, very consistently.&lt;br /&gt;  Weird!&lt;br /&gt;&lt;br /&gt;some screenshots.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/onemegapixel/megapixel1.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/onemegapixel/megapixel1.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/onemegapixel/megapixel2.png&quot;&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/onemegapixel/megapixel2.png&quot; width=&quot;48%&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111879170249069696?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/06/one-megapixel.html</link><guid>f693234dada7b77698b1b19a20ead40c</guid></item>
<item><title type="text">Humanoid PointClouds</title><description type="html">Towards bringing together the gallery project and CITRIS's &lt;a href=&quot;http://www.eecs.berkeley.edu/%7Esangj/teleim/&quot;&gt;tele-immersion lab&lt;/a&gt;, we've taken some data from Sang-Hack Jung and imported it into croquet.&lt;br /&gt;&lt;br /&gt;The data is simply lots and lots of points with XYZ &amp;amp; RGB info.&lt;br /&gt;Each frame is approximate 150,000 points, with a framerate of about 12Hz.&lt;br /&gt;&lt;br /&gt;Below are preliminary results showing simply getting some of the data in to Croquet.&lt;br /&gt;Next steps are reading in approximately 50 frames from 50 files,&lt;br /&gt;followed hopefully by networking.&lt;br /&gt;&lt;br /&gt;Qualitative observations:&lt;br /&gt;The data reads in from disk nigh instantly via AsyncFile, straight into a B3DVector3Array.&lt;br /&gt;Additionally it scales quite fast, which surprised me because the actual points are scaled rather than having the scale in the matrix.&lt;br /&gt;Very slow however is computing the bounding sphere/box of the cloud.&lt;br /&gt;I'll probably pre-calculate this and include it in the data files.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src=&quot;http://www.citris-uc.org/hosted/projects/ith/screenshots/2pointclouds.png&quot;&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111956885916201951?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/06/humanoid-pointclouds.html</link><guid>d91c85a60b52e51981d2814e2f271026</guid></item>
<item><title type="text">Heirarchy between gallery objects</title><description type="html">&lt;span style=&quot;font-family:arial;&quot;&gt;you asked for it and now you almost get it!&lt;br /&gt;&lt;br /&gt;There's a new image/changes file here:&lt;br /&gt;&lt;a href=&quot;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&quot;&gt;http://www.citris-uc.org/hosted/projects/ith/gallery/downloads.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Primitives and VRML objects now have a new menu called 'heirarchy'&lt;br /&gt;which lets you make one object a child of another.&lt;br /&gt;&lt;br /&gt;This way you can group things together,&lt;br /&gt;like a vase on a table,&lt;br /&gt;and work with them conveniently.&lt;br /&gt;&lt;br /&gt;How to do it:&lt;br /&gt;&lt;br /&gt;this is admittedly real clumsy for now but:&lt;br /&gt;1. find the object you want to be the parent.&lt;br /&gt;2. heirarchy | select&lt;br /&gt;3. find the object you want to be the child&lt;br /&gt;4. heirarchy | make child of &lt;something&gt;&lt;br /&gt;&lt;br /&gt;there's also &quot;make me a child of nobody&quot;,&lt;br /&gt;orphanize children (makes them children of their grandparents).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;it seems to work with saving and loading of .ctrgal files,&lt;br /&gt;but that could use some testing..&lt;br /&gt;&lt;br /&gt;&lt;/something&gt;&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9100018-111827574822974323?l=orionelenzil.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://orionelenzil.blogspot.com/2005/06/heirarchy-between-gallery-objects.html</link><guid>a52314580f65f5e824dc0ddead69fb86</guid></item>
<item><title type="text">Stripped XO</title><description type="html">Early in January, my laptop was the star of a photo shooting for the German issue of MIT's Technology Review&lt;a href=&quot;http://www.heise.de/tr/magazin/&quot;&gt;&lt;/a&gt;. We took off the plastic enclosure of the &quot;brick&quot;, it was pretty interesting, for example to see how the whole display in its metallic housing is carefully held by rubber mounts.&lt;br /&gt;&lt;br /&gt;This photograph was published in the magazin's current issue (02/07), along with a shot of the main board (which sits behind the display). The accompanying text not only provided a description of the parts, but also highlighted some design decisions that makes it unique hardware-wise. OLPC's educational goals were already reported on in the previous issue.&lt;br /&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/Rb_Dql8B_oI/AAAAAAAAABg/377aeAeQpRg/s1600-h/xostripped.jpg&quot;&gt;&lt;img style=&quot;margin: 0pt 0pt 0px 0px; float: center; cursor: pointer;&quot; src=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/Rb_Dql8B_oI/AAAAAAAAABg/377aeAeQpRg/s320/xostripped.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5025950845674585730&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Image courtesy of &lt;a href=&quot;http://www.heise.de/tr/magazin/&quot;&gt;http://www.heise.de/tr/magazin/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot; &gt;&lt;span style=&quot;color: rgb(102, 102, 102);&quot;&gt;The colors are off for some reason after uploading to blogger - they were fine on my disk. Sorry.&lt;/span&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2140132911973763292?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/01/stripped-xo.html</link><guid>6d5c2c1f3e9c57e53ed1bfd347e91f8e</guid></item>
<item><title type="text">European grassroots meeting</title><description type="html">&lt;div&gt;I went to Brussels last weekend, meeting with folks from OLPC Europe, OLPC Boston, and some other European grassroots (me representing &lt;a href=&quot;http://olpc-deutschland.de/&quot;&gt;OLPC Germany e.V.&lt;/a&gt;). We mostly discussed how to implement the new &lt;a href=&quot;http://laptop.org/global&quot;&gt;Give-1-Get-1&lt;/a&gt; program as well as &lt;a href=&quot;http://laptop.org/en/participate/give-many.shtml&quot;&gt;Give-many&lt;/a&gt;here in Europe. Some &lt;a href=&quot;http://wiki.laptop.org/go/Grassroots_meetings/November_29%2C_2008&quot;&gt;notes&lt;/a&gt; are available.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href=&quot;http://squeakland.org/launcher/?http://freudenbergs.de/bert/etoys/OLPC-Europe.pr&quot;&gt;&lt;img style=&quot;float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 137px;&quot; src=&quot;http://4.bp.blogspot.com/_gCu9ub99Rz4/STmmDZO3mvI/AAAAAAAAAEY/OtX8h4w0mN0/s200/OLPC-Europe.png&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5276431015684315890&quot; /&gt;&lt;/a&gt;And, while sitting together at a nice Cafe on Sunday I made this little Etoys project to celebrate OLPC Europe. Just click &lt;a href=&quot;http://squeakland.org/launcher/?http://freudenbergs.de/bert/etoys/OLPC-Europe.pr&quot;&gt;here&lt;/a&gt; if you are on an &lt;a href=&quot;http://laptop.org/&quot;&gt;XO&lt;/a&gt; or have the &lt;a href=&quot;http://squeakland.org/&quot;&gt;Squeakland&lt;/a&gt;plugin installed (as everyone should of course). For those who were there and took the huge file home on their USB drives - this is a fixed version that does not keep growing indefinitely while animating.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For the Etoyers out there - if you put a copy of a player in one of its own variables repeatedly, this creates an evergrowing &quot;linked list&quot; of player copies. Bad idea. Reset the variable first (by assigning dot for example) then do the copy: see my example.&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-364282043877713009?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2008/12/european-grassroots-meeting.html</link><guid>5ebebf083ae1a7ce1455749ab25965d4</guid></item>
<item><title type="text">OLPC review now online, English too</title><description type="html">The extensive OLPC article by c't magazine is now available online in both original &lt;a href=&quot;http://www.heise.de/mobil/artikel/88439&quot;&gt;German&lt;/a&gt; and an &lt;a href=&quot;http://www.heise.de/mobil/artikel/88916&quot;&gt;English translation&lt;/a&gt;. It's a thorough review (they had a B1 machine) with some interesting photographs in it, like the Squeak Etoys screen  in reflective and backlight modes with microscopic images revealing the working  of the XO's incredible LCD.&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://www.heise.de/mobil/artikel/88916/3&quot;&gt;&lt;img style=&quot;margin: 10px; float: left;&quot; src=&quot;http://bp3.blogger.com/_gCu9ub99Rz4/RijDniTPsPI/AAAAAAAAACo/Y3U24qclhCM/s320/1.jpeg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5055505665713221874&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2848720280456903502?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/04/olpc-review-now-online-english-too.html</link><guid>19dfeae59a1a1d12a7c0cd09a2180738</guid></item>
<item><title type="text">Peaceful Holidays ...</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_gCu9ub99Rz4/SU-n5JYaFiI/AAAAAAAAAEg/IJKvGNdfm10/s1600-h/xo-hugger.jpg&quot;&gt;&lt;img style=&quot;float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px; height: 200px;&quot; src=&quot;http://4.bp.blogspot.com/_gCu9ub99Rz4/SU-n5JYaFiI/AAAAAAAAAEg/IJKvGNdfm10/s320/xo-hugger.jpg&quot; border=&quot;0&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5282625488141555234&quot; /&gt;&lt;/a&gt;&lt;div&gt;... and a Happy 2009 to everyone from me and my family.&lt;/div&gt;&lt;div&gt;Presented by my XO-hugging &lt;a href=&quot;http://shop.ebay.de/?_nkw=usb+%28marsfigur%2Cgummimensch%29&quot;&gt;USB men&lt;/a&gt; (who seem to have more memory capacity than me at times).&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Featuring a seriously tree-infested Etoys project, with snow (for those living south who cannot enjoy the white fluff this time of the year).&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And see you at &lt;a href=&quot;http://events.ccc.de/congress/2008/wiki/OLPC&quot;&gt;25C3&lt;/a&gt; I hope!&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2752971592019279550?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2008/12/peaceful-holidays.html</link><guid>9ff70cde5be4e6cbd1352fac676fcd9f</guid></item>
<item><title type="text">Emulating the latest stable OLPC XO software</title><description type="html">Even with XO laptops &lt;a href=&quot;http://laptop.org/global&quot;&gt;readily available now&lt;/a&gt; there are quite a lot of reasons why one would want to emulate it on another machine. One being to hook up a projector. Unfortunately there are quite a number of hoops (*) one has to jump through to make it work.&lt;br /&gt;&lt;br /&gt;Anyway, I made a virtual machine that allows me to emulate the XO in VMWare on my Mac, running Sugar in the XO's native 1200x900 resolution, scaled down to a nice physical size in a window on my regular screen (fullscreen works, too). Sound works (even Tam Tam), Browse works (so networking is good), and after setting a working Jabber server I do see other XOs in the neighborhood view (Chat worked fine).  Camera and mic are half working (Measure crashes, Record shows blank picture, but &lt;a href=&quot;http://lists.laptop.org/pipermail/devel/2008-December/021591.html&quot;&gt;reportedly&lt;/a&gt; does record video), and a &quot;Sugar restart&quot; does not actually restart Sugar, but apart from that it seems fully functional, and much nicer than the emulations I had used to date.&lt;br /&gt;&lt;br /&gt;Click to see actual screenshots (calibrated to match the XO's physical extent using the Ruler activity on my MBP's &lt;a href=&quot;http://members.ping.de/%7Esven/dpi.html&quot;&gt;110 ppi&lt;/a&gt; screen):&lt;div&gt;&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://dev.laptop.org/%7Ebert/Ruler-emulated.png&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 120px; height: 105px;&quot; src=&quot;http://dev.laptop.org/%7Ebert/Ruler-emulated.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://dev.laptop.org/%7Ebert/Home-emulated.png&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 120px; height: 105px;&quot; src=&quot;http://dev.laptop.org/%7Ebert/Home-emulated.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://dev.laptop.org/%7Ebert/Journal-emulated.png&quot;&gt;&lt;img style=&quot;cursor: pointer; width: 120px; height: 105px;&quot; src=&quot;http://dev.laptop.org/%7Ebert/Journal-emulated.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt; &lt;/a&gt;&lt;img style=&quot;cursor: pointer; width: 120px; height: 105px;&quot; src=&quot;http://dev.laptop.org/%7Ebert/TamTamMini-emulated.png&quot; alt=&quot;&quot; border=&quot;0&quot; /&gt;&lt;br /&gt;&lt;br /&gt;And here you can get that virtual machine (665 MB, 2 GB unzipped): &lt;a href=&quot;http://dev.laptop.org/%7Ebert/VMWare-8.2-767-bf.zip&quot;&gt;VMWare-8.2-767-bf.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I made this using &lt;a href=&quot;http://www.vmware.com/products/fusion/&quot;&gt;VMWare Fusion&lt;/a&gt;, which I found to be much better at running Linux clients than Parallels Desktop (I had been using that for 2 years). Give it a try, it's free as in beer for 30 days. No, I don't get paid if you buy it.&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-weight: bold;&quot;&gt;Update:&lt;/span&gt; Reportedly it does work in &lt;a href=&quot;http://www.vmware.com/products/player/&quot;&gt;VMWare Player&lt;/a&gt; on Windows and Linux, too (see comments). And maybe someone can make an appliance for even easier use?&lt;br /&gt;&lt;br /&gt;(*) Now to the hoops:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I started with the 767/ext3 image from &lt;a href=&quot;http://download.laptop.org/xo-1/os/official/&quot;&gt;http://download.laptop.org/xo-1/os/official/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;extended to 2 GB by appending /dev/zero&lt;br /&gt;(jffs2 compression gives roughly 2 GB too)&lt;/li&gt;&lt;li&gt;enlarged the partition to full 2 GB&lt;br /&gt;(using fdisk and ext2resize)&lt;/li&gt;&lt;li&gt;mounted that in a Fedora 10 virtual machine&lt;br /&gt;&lt;/li&gt;&lt;li&gt;copied over the F10 kernel, initrd, and modules&lt;br /&gt;(olpc kernel wanted AMD instructions)&lt;/li&gt;&lt;li&gt;edited grub.conf to use that kernel&lt;br /&gt;&lt;/li&gt;&lt;li&gt;and appended a root=/dev/sda1 kernel arg&lt;br /&gt;(the fedora kernel wants to use LVM otherwise)&lt;/li&gt;&lt;li&gt;unmounted&lt;br /&gt;&lt;/li&gt;&lt;li&gt;created new virtual machine&lt;br /&gt;(that disk, 1 CPU, 256 MB RAM, NAT networking)&lt;/li&gt;&lt;li&gt;booted into that new system&lt;br /&gt;&lt;/li&gt;&lt;li&gt;installed Perl&lt;br /&gt;(for vmware tools installer)&lt;/li&gt;&lt;li&gt;installed vmware tools&lt;br /&gt;(to get the X driver)&lt;br /&gt;(but none of the kernel modules, would need make/gcc/etc.)&lt;/li&gt;&lt;li&gt;deleted Perl&lt;br /&gt;(to restore the default sw environment)&lt;/li&gt;&lt;li&gt;copied the existing xorg-vmware.conf to xorg.conf&lt;br /&gt;(to get 1200x900 resolution w/ 200 dpi)&lt;/li&gt;&lt;li&gt;booted into Sugar&lt;br /&gt;(looks really nice so scaled down)&lt;/li&gt;&lt;li&gt;installed activities&lt;br /&gt;(took a long time, maybe it's my DSL)&lt;/li&gt;&lt;li&gt;tested a bit&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rm -r ~olpc/.sugar&lt;br /&gt;(to remove my personal data)&lt;/li&gt;&lt;li&gt;should have deleted sshd host keys, too, but didn't&lt;br /&gt;&lt;/li&gt;&lt;li&gt;shut down&lt;br /&gt;&lt;/li&gt;&lt;li&gt;zip&lt;br /&gt;&lt;/li&gt;&lt;li&gt;upload&lt;br /&gt;&lt;/li&gt;&lt;li&gt;...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;...&lt;br /&gt;&lt;/li&gt;&lt;li&gt;still no profit? ;)&lt;/li&gt;&lt;/ul&gt;Enjoy.&lt;br /&gt;&lt;/div&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-1100506158715727729?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2008/12/emulating-latest-stable-olpc-xo.html</link><guid>f4bd131126ea19954f7167ad8306dfbe</guid></item>
<item><title type="text">Croquet SDK 1.0 released</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://croquetconsortium.org/&quot;&gt;&lt;img style=&quot;margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;&quot; src=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/Rgk0fJVJK7I/AAAAAAAAACU/_YzlsRyHg6E/s200/Croquet-Logo-small.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5046622567130540978&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Get it while it's hot from the equally new &lt;a href=&quot;http://croquetconsortium.org/&quot;&gt;Croquet Consortium&lt;/a&gt; web site.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-3700814658261302983?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/03/croquet-sdk-10-released.html</link><guid>1219eacabafbe45c560275f75d310173</guid></item>
<item><title type="text">Interactive OLPC XO Display Simulation</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://squeakland.org/project.jsp?http://freudenbergs.de/bert/etoys/OLPC-XO-Display.pr&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;&quot; src=&quot;http://bp1.blogger.com/_gCu9ub99Rz4/Resga6xtdFI/AAAAAAAAABs/6CGTXxZzVgM/s400/OLPC-XO-Display.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5038156254970475602&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;&lt;br /&gt;Many people still have not seen the innovative display of the OLPC project's &quot;XO&quot; laptop. It has twice the resolution of a regular LCD (200 dpi), and works in bright daylight in gray-scale reflective mode. It's impossible for me to increase your screen's resolution by software, and I cannot make your display reflective, but here is an interactive simulation of the backlight mode with its interesting color pattern. This pattern is the source of a lot of confusion about the &quot;color resolution&quot; of the display. The LCD has 1200x900 square pixels, but the backlight puts a full color through each pixel. It is not made of red, green, and blue sub-pixels like a regular LCD, but the first pixel is full red, the second green, the third blue, and so on. The DCON chip (Display CONtroller) selects the color components from the full-color frame buffer.&lt;br /&gt;&lt;br /&gt;My simulation of the DCON achieves the same effect by selecting either the red, green, or blue color component in each pixel. Just move the mouse pointer around to see how different colors are reproduced.  You'll notice strong diagonal patterns, but remember, on the actual display the pixels are only half as large. Note that the actual DCON optionally applies a bit of anti-aliasing in hardware which is not simulated here. It helps reproducing fine structures and depicts colors more accurately. Additionally, the simulation shows a magnified image to better illustrate the principle, but it is not accurate because the reflective area of each pixel is not depicted. Maybe I can add this in a later version.&lt;br /&gt;&lt;br /&gt;I made the simulation using Squeak / Etoys, which is one of the programming environments on the OLPC machine, but also works on Windows, Mac OS X, Linux, and many  more systems. If you run the simulation on the actual laptop (download the project, place it in /home/olpc/.sugar/default/etoys/MyEtoys, run Etoys, choose Load Project), then you should close the small simulated screen and just leave the magnified view open.&lt;br /&gt;&lt;br /&gt;For the interactive simulation, download &lt;a href=&quot;http://squeakland.org/detect.html&quot;&gt;Squeak&lt;/a&gt; (this version installs both, a regular application and a browser plugin), then &lt;a href=&quot;http://squeakland.org/project.jsp?http://freudenbergs.de/bert/etoys/OLPC-XO-Display.pr&quot;&gt;click here&lt;/a&gt; to run the simulation in your browser, or download the &lt;a href=&quot;http://freudenbergs.de/bert/etoys/OLPC-XO-Display.pr&quot;&gt;project file&lt;/a&gt;, launch Squeak, and drop the project into it.&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;br /&gt;Intel-Mac users&lt;/span&gt; beware, the plugin is not supported directly yet. To see the project in  Safari, you have to quit Safari, set it to open in Rosetta (select Safari in the finder, press Cmd-i), and reopen. Or, use the download method, Squeak itself is running fine on Intel Mac, it's just the browser plugin that's making problems.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-5092299994185428197?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/03/interactive-olpc-xo-display-simulation.html</link><guid>9a73c37733eea5fddb7b358c06b46509</guid></item>
<item><title type="text">OpenGL in a Workspace</title><description type="html">On some modern Linux systems, Croquet does not work anymore because OpenGL failes to initialize. Now, I originally wrote that code, and it worked fine for years. So it can't possibly be buggy, right? Jens Lincke of &lt;a href=&quot;http://impara.de/&quot;&gt;impara&lt;/a&gt; tracked it down to the &quot;Composite&quot; extension that is enabled by default nowadays. With Composite disabled, it works, enable it, and it does not.&lt;br /&gt;&lt;br /&gt;So I turned to NVIDIA for help, thinking their driver might be buggy. Had to give them an easy way to reproduce the problem, this is the snippet I came up with:&lt;br /&gt;&lt;blockquote&gt;&lt;pre style=&quot;font-family: arial;line-height:1.1em&quot;&gt;| ogl green |&lt;br /&gt;ogl := OpenGL newIn: (0@0 extent: 100@100).&lt;br /&gt;green := 1.&lt;br /&gt;[[&lt;br /&gt;        ogl glClearColor(0, green, 0, 1).&lt;br /&gt;        ogl glClear(16r4000).&lt;br /&gt;        ogl swapBuffers.&lt;br /&gt;        Sensor waitClickButton.&lt;br /&gt;        green := 1 - green.&lt;br /&gt;] repeat] ensure: [ogl destroy]&lt;/pre&gt;&lt;/blockquote&gt;Beauty, eh? ;-) I guess nobody has done this in a workspace for a long time. Stop it with Alt-.&lt;br /&gt;&lt;br /&gt;Anyway, NVIDIA could reproduce the problem, and found our bug:&lt;br /&gt;&lt;blockquote&gt;[...] the app is trying to create a depth 24 child window of a depth 32 parent and the app specifies neither a border pixel nor a border pixmap.&lt;/blockquote&gt;Doh! I forgot to specify the &lt;a href=&quot;http://www.tronche.com/gui/x/xlib/window/attributes/border.html&quot;&gt;border&lt;/a&gt;! We were just lucky that this did not happen before. Jens and y.t. made a patch, should be in the next VM. And big thanks to &lt;a href=&quot;http://developer.nvidia.com/&quot;&gt;NVIDIA developer support&lt;/a&gt;!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-4770989905943515991?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/02/opengl-in-workspace.html</link><guid>d8a5561b6efcca1842aea9b7b70d9af2</guid></item>
<item><title type="text">In-depth review of XO in German c't magazine</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/Rf--bJVJK5I/AAAAAAAAACE/3PDaDQgmOwA/s1600-h/xo-sophie.jpg&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;&quot; src=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/Rf--bJVJK5I/AAAAAAAAACE/3PDaDQgmOwA/s200/xo-sophie.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5043959481248590738&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;There's a glowing review of the OLPC project and its XO machine in the current issue 07/2007 of &lt;a href=&quot;http://www.heise.de/ct/&quot;&gt;c't magazine&lt;/a&gt;. The &lt;a href=&quot;http://www.heise-medien.de/presseinfo.php/ct,07,03_19_a/41&quot;&gt;in-depth article&lt;/a&gt; by Dr. Jrgen Rink describes the project's history and educational ambitions as well as its current prototype hardware and software. One very interesting detail is a comparison of the XO's novel dual-mode display in  low light and bright sun light, at normal size and magnified:&lt;br /&gt;&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://www.heise-medien.de/presseinfo.php/ct,07,03_19_a/41&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;&quot; src=&quot;http://bp0.blogger.com/_gCu9ub99Rz4/Rf-74pVJK4I/AAAAAAAAAB8/O35rnaEV4So/s400/xo-microscope.png&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5043956689519848322&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;On the left, under indoor lighting, the colored backlight shines through holes in the reflective layer. On the right, when brightly lit outdoors, the reflection is so strong that the backlight is not even visible anymore, thus creating a gray-scale image. The photographs show one of the example &lt;a href=&quot;http://wiki.laptop.org/go/Sugar_EToys&quot;&gt;Etoys&lt;/a&gt; projects.&lt;br /&gt;&lt;br /&gt;The magazine is available now at kiosks until next week, or via &lt;a href=&quot;https://www.heise.de/abo/ct/hefte.shtml&quot;&gt;mail order&lt;/a&gt;. In a few weeks the article should be available online via &lt;a href=&quot;http://www.heise.de/kiosk/&quot;&gt;click&amp;amp;buy&lt;/a&gt;.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-8878669578234706031?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/03/in-depth-review-of-xo-in-german-ct.html</link><guid>86cb37b0006ee9238fbde0e7a49fdcc9</guid></item>
<item><title type="text">Croquet for Business: Qwaq Forums</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://qwaq.com/&quot;&gt;&lt;img style=&quot;margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;&quot; src=&quot;http://bp2.blogger.com/_gCu9ub99Rz4/RffMO0XO9MI/AAAAAAAAAB0/sSw1Tpzf7nQ/s400/Slide1_34pct.jpg&quot; alt=&quot;&quot; id=&quot;BLOGGER_PHOTO_ID_5041722862810887362&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;So &lt;a href=&quot;http://qwaq.com/&quot;&gt;Qwaq&lt;/a&gt; came out of &quot;stealth-mode&quot; and reveiled what they have been working on  for a while now, &lt;a href=&quot;http://qwaq.com/qwaq_forums.html&quot;&gt;Qwaq Forums&lt;/a&gt;:&lt;br /&gt;&lt;blockquote style=&quot;font-style: italic;&quot;&gt;Qwaq Forums, the company's first product, is a secure virtual workspace application that significantly increases the productivity of distributed teams by bringing critical resources together in virtual places, as if they were in an actual physical location. A highly interactive and persistent environment, Qwaq Forums enables users to work, collaborate with others, and identify and solve problems.&lt;br /&gt;&lt;/blockquote&gt;And I'm proud to say I contributed a little, which most probably will find its way into the next &lt;a href=&quot;http://opencroquet.org/&quot;&gt;Croquet&lt;/a&gt; release.&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Update: &lt;/span&gt;Here's a few nice stories of fellow bloggers who have seen Forums already.&lt;br /&gt;&lt;br /&gt;From Steve Borsch's &lt;a href=&quot;http://www.iconnectdots.com/ctd/2007/03/qwaq_launches_v.html&quot;&gt;Connecting The Dots&lt;/a&gt;:&lt;br /&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;Qwaq will get traction only because they completely understand that giving someone a semi-trailer truck (i.e., an engine like There or Second Life) doesn't do much good if the person has a small garage and needs a vehicle to go get groceries and tool around  (90% of collaborators). Qwaq Forums is a powerful, easy to use and navigate, co-creation space that the rest of us can use.&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;&lt;span class=&quot;post-author&quot;&gt;Glyn Moody&lt;/span&gt; writes on &lt;a href=&quot;http://opendotdotdot.blogspot.com/2007/03/going-quaqqers-about-quaq.html&quot;&gt;Open dot dot dot&lt;/a&gt;:&lt;br /&gt;&lt;a href=&quot;http://www2.blogger.com/post-edit.g?blogID=10460112&amp;postID=2510783906925727101#%20http://www.iconnectdots.com/ctd/2007/03/qwaq_launches_v.html&quot;&gt;&lt;/a&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;&lt;/span&gt;&lt;blockquote&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;One of the benefits of using Croquet as the basis of its products is that the protocols are open, and this allows Croquet-compatible products to interoperate with Qwaq's. This means that the dynamics of the Croquet ecosystem are similar to that of the Web, which is never a bad thing.&lt;/span&gt;&lt;br /&gt;&lt;/blockquote&gt;And in &lt;a href=&quot;http://collaborationblog.typepad.com/collaboration/2007/03/qwaq_exits_stea.html&quot;&gt;The Culture of Collaboration&lt;/a&gt;, Evan Rosen writes:&lt;br /&gt;&lt;blockquote style=&quot;font-style: italic;&quot;&gt;Unlike most traditional web conferencing which works only while a session is underway, Qwaq Forums is persistent. This means authorized users can access the virtual space any time. Team members in another time zone may wake up to find the results of real-time collaboration that occurred while they were sleeping.&lt;/blockquote&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/10460112-2510783906925727101?l=croquetweak.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croquetweak.blogspot.com/2007/03/croquet-for-business-qwaq-forums.html</link><guid>97d5caf8b2c4179ea947650bed891826</guid></item>
<item><title type="text">Tasks</title><description type="html">I am working on a new implementation of tasks that will make creating new UIs much simpler. Basically, there is a new base class, called a TTask which handles all events from the CroquetHarness. Even the default interface in Croquet is implemented this way.&lt;br /&gt;&lt;br /&gt;An event is interpreted and redirected by the task object. The default task simply forwards the event to the initially selected object, which is just what happens now. &lt;br /&gt;&lt;br /&gt;Ultimately, any portal will be able to reinterpret the events via their own task objects.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-114589344541406382?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2006/04/tasks.html</link><guid>8b7ea5541c65091433b9da6e94229e8b</guid></item>
<item><title type="text">Updates</title><description type="html">Lots happening. The Croquet release is doing well. Remember that this is very much a developer release, so don't expect it to change your life today. Still lots of loose ends, the UI needs LOTS more work, performance is sub-optimal, still a number of complex problems to solve, but the underlying architecture looks like it is in great shape.&lt;br /&gt;&lt;br /&gt;Julian Lombardi and I attended the Metaverse Roadmap Project where we had a number of opportunities to demonstrate the system. Response was quite positive. See the following:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://metaverseroadmap.org/index.html&quot;&gt;http://metaverseroadmap.org/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://scobleizer.wordpress.com/2006/05/06/wow-3d-operating-system-open-croquet/&quot;&gt;http://scobleizer.wordpress.com/2006/05/06/wow-3d-operating-system-open-croquet/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://www.ethanzuckerman.com/blog/?p=537&quot;&gt;http://www.ethanzuckerman.com/blog/?p=537&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-114701445203476758?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2006/05/updates.html</link><guid>6a9ee381acb3164043783054997c908a</guid></item>
<item><title type="text">Tasks</title><description type="html">I am working on a new implementation of tasks that will make creating new UIs much simpler. Basically, there is a new base class, called a TTask which handles all events from the CroquetHarness. Even the default interface in Croquet is implemented this way.&lt;br /&gt;&lt;br /&gt;An event is interpreted and redirected by the task object. The default task simply forwards the event to the initially selected object, which is just what happens now. &lt;br /&gt;&lt;br /&gt;Ultimately, any portal will be able to reinterpret the events via their own task objects.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-114589369921286568?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2006/04/tasks_114589369921286568.html</link><guid>119f6fd562c6597790162ed3da0e1029</guid></item>
<item><title type="text">Tasks</title><description type="html">I am working on a new implementation of tasks that will make creating new UIs much simpler. Basically, there is a new base class, called a TTask which handles all events from the CroquetHarness. Even the default interface in Croquet is implemented this way.&lt;br /&gt;&lt;br /&gt;An event is interpreted and redirected by the task object. The default task simply forwards the event to the initially selected object, which is just what happens now. &lt;br /&gt;&lt;br /&gt;Ultimately, any portal will be able to reinterpret the events via their own task objects.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-114589345957444937?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2006/04/tasks_24.html</link><guid>49fd9c1846e59ce96475a9664224e732</guid></item>
<item><title type="text">Qwaq</title><description type="html">We finally announced Qwaq. I am sure one or two of you were wondering why this blog went silent for such a long time. I had some good excuses - I was busy, and I didn't want to say anything about what I was doing anyway.&lt;br /&gt;&lt;br /&gt;Qwaq was founded by a group of us that believe Croquet can have an impact on the business world. Even an open source project like Croquet must have a revenue stream to drive it, and Qwaq is the first of what I hope will be many companies that will focus their efforts around making Croquet even more valuable. You can read more about the company here: &lt;a href=&quot;http://www.qwaq.com&quot;&gt;http://www.qwaq.com&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Alan Kay and David Reed are advisers to Qwaq and Andreas Raab is a cofounder so we are still working together. In addition, Greg Nuyens, our other co-founder is the Qwaq CEO. I met Greg at a previous company I co-founded, and was extremely impressed by his intelligence, drive, and in particular his interest in the customers. &lt;br /&gt;&lt;br /&gt;Why Qwaq? I wanted a short word that was easy to remember and easy to type. Look at the top left three keys of your keyboard - QW are next to each other and the A is directly below these. I also thought that it sounded fun.&lt;br /&gt;&lt;br /&gt;There is evidently quite a bit of interest out there in what we are doing. Typing Qwaq into Google and you will see an amazing amount of coverage just since we announced the product a few weeks ago. I should mention that Remy Malan is our VP of Enterprise and did a terrific job with this.&lt;br /&gt;&lt;br /&gt;Finally, what impact will Qwaq have on the continued development of Croquet as an open source project? A very positive one. We are still extremely committed to this project and if anything have accelerated the amount of effort we have put into it. Croquet continues to improve - much of what we learned in building Qwaq Forums was directly incorporated into the next Croquet release (imminent) and I think it is better than ever. I plan to continue using this particular forum to keep people up-to-date on where Croquet will be going.&lt;br /&gt;&lt;br /&gt;Thanks for checking back - it is a really exciting time for Croquet (Qwaq is just half of the story), so watch this space and the Croquet Project home for more details to come.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-117496611599836391?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/03/qwaq.html</link><guid>122cc14e7ac9ba7853e440b8a060aa00</guid></item>
<item><title type="text">Croquet Consortium Launched</title><description type="html">Industry and Education Leaders Launch The Croquet Consortium, Inc., a non-profit Foundation for Open Source Software Development.&lt;br /&gt;&lt;br /&gt;DURHAM, N.C.  March 27, 2007  HP (Hewlett-Packard), Duke University, The University of Minnesota, and Qwaq, Inc. have jointly announced the formation of The Croquet Consortium, Inc., a 501(3)c non-profit foundation dedicated to promoting the continued development and widespread adoption of open source Croquet technologies for use in education, research, and industry. The launch of The Croquet Consortium coincides with the Consortiums release the open source Croquet Software Developers Kit 1.0 -- as free software under the Croquet Open Source License.&lt;br /&gt;&lt;br /&gt;The Croquet Consortium provides an organizational base for the Croquet community of developers and users. Open to institutional and individual members, the Consortium offers an avenue for academic, corporate, and individual members ensure the long-term viability of the community by federating their Croquet software development projects mobilizing distributed resources on their behalf.&lt;br /&gt;&lt;br /&gt;With the launch of The Croquet Consortium, Inc., the development and adoption of scalable Croquet-based applications for use in education, research and industry enters a new, expanded, and highly-inclusive phase of multi-institutional collaboration. The Consortium 1) establishes a legal home for the Croquet community, 2) coordinates the management, definition and release of core interoperable Croquet architecture, 3) provides a clearinghouse for the collection and distribution of freely available Croquet open source software artifacts, 4) supplies a management structure for the solicitation and mobilization of distributed development resources, and 5) creates a focal point for outreach activities, including the Consortium Website, Annual Conference, training workshops, fellowships, and sponsored projects.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-117500963356738354?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/03/croquet-consortium-launched.html</link><guid>362343b4464649012c2bf115becd8a5b</guid></item>
<item><title type="text">Qwaq and Croquet at HASTAC</title><description type="html">We will be demoing Qwaq Forums at the HASTAC conference at Duke next week. &lt;br /&gt;&lt;br /&gt;From their site:&lt;br /&gt;&lt;br /&gt;&quot;A consortium of humanists, artists, scientists, social scientists and engineers from universities and other civic institutions across the U.S. and internationally, HASTAC (&quot;Haystack&quot;) is committed to new forms of collaboration across communities and disciplines fostered by creative uses of technology.Since 2003, we have been developing tools for multimedia archiving and social interaction, gaming environments for teaching, innovative educational programs in information science and information studies, virtual museums, and other digital projects. HASTAC leaders have served as consultants to U.S. and international organizations and governments on grid computing and cyberinfrastructure.Our aim is to promote expansive models for thinking, teaching, and research. To view a presentation on HASTAC, please click on the presentation attached.&quot;&lt;br /&gt;&lt;br /&gt;Check it the conference here:&lt;br /&gt;&lt;a href=&quot;http://www.hastac.org/informationyear/conference&quot;&gt;http://www.hastac.org/informationyear/conference&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-117657476911734844?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/qwaq-and-croquet-at-hastac.html</link><guid>ea6558c9be98ce9c8e4aa0fa81955f41</guid></item>
<item><title type="text">Croquet SDK 1.0 Released</title><description type="html">Nonprofit Croquet Consortium Releases Open-Source Software Tool Kit to Promote Collaborative 3-D Virtual Environments&lt;br /&gt;&lt;br /&gt;DURHAM, N.C.  March 27, 2007  A nonprofit consortium of academic and corporate partners announced Tuesday the release of a free software tool kit for developers to use in creating 3-D &quot;virtual environments.&quot;&lt;br /&gt;&lt;br /&gt;&quot;Were seeking to enable the creation of a rich series of interconnected Croquet worlds where people can engage in productive collaborative interactions in support of learning and commerce -- worlds that can be created, maintained and continually modified without the constraints of proprietary computer code,&quot; said Julian Lombardi, assistant vice president of Dukes Office of Information Technology.&lt;br /&gt;&lt;br /&gt;The Croquet Consortiums new &quot;3-D Virtual Environments Software Developers Kit&quot; (Croquet SDK 1.0) will promote collaboration among far-flung research teams working on everything from cancer cells to hurricanes, as well as active learning among students and their instructors. These networked 3-D teams from research, education and industry will be able to work together across a variety of computer platforms and devices, from laptops to cell phones.&lt;br /&gt;&lt;br /&gt;&quot;This will change the way people think about software and computation, from todays device-oriented perspective to a perspective of computation as a persistent, pervasive service,&quot; said Patrick Scaglia, vice president of research and development at HP Labs.&lt;br /&gt;&lt;br /&gt;Croquet 3-D virtual environments can support live discussion among worldwide collaborators who come together in &quot;real time&quot; within a 3-D virtual space. They may view, manipulate and revise documents, dynamic visualizations or large amounts of data from sources such as laboratories or supercomputing centers.&lt;br /&gt;&lt;br /&gt;Added Greg Nuyens, chief executive officer of Qwaq Inc., &quot;We have found Croquet to be a compelling platform technology for developing very large scale, richly featured and interlinked virtual environments. With the release of the Croquet SDK, we are excited about the new possibilities for using Croquet in our products and see benefits for developers everywhere.&quot;&lt;br /&gt;&lt;br /&gt;For example, public health officials and epidemiologists across a country could use the Croquet environment to track the spread of an infectious disease by sharing a dynamically changing display of infection data. Similarly, architects and engineers could collaborate on a building design, or chemists and biologists could prototype different chemical compositions for a new drug.&lt;br /&gt;&lt;br /&gt;The kit provides developers with a flexible tool to create virtual spaces with built-in networked telephony and a &quot;late-binding object-oriented&quot; programming language that allows multiple users to jointly create, animate or modify 3-D objects and dynamic simulations. Developers can also import and share resources, such as 2-D web applications or multimedia content, from their own systems. Working together across multiple locations, they can change simulations while they are running and work together to create new applications -- all in real time.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-117500970884614377?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/03/croquet-sdk-10-released.html</link><guid>3a86242c6a7daf26b4eaada62ea879db</guid></item>
<item><title type="text">3D Worlds and Interoperability</title><description type="html">I attended a working lunch this week at Harvard to discuss 3D interoperability. It was an interesting discussion. I think the biggest problem was simply the definition of interoperability. For some people at the conference, it meant as little as reconstructing someone elses content in another 3D environment, or maybe being able to somehow copy 3D data sets from one place to another. Others viewed it as being able to reuse and dress-up your personal avatar for shopping or for role-playing. &lt;br /&gt;&lt;br /&gt;We even discussed the possibility of hooking Croquet up to Second Life via Croquet portals. This should be relatively straightforward to do - it would require a compound application of some sort, but since Croquet is already designed to hand off rendering to the adjacent Island (Croquet Islands and Second Life Islands are different kinds of things) when rendering through a portal, handing it to the Second Life client would not be much different. Coming back the other way might require a bit more finesse, as we would have to add some portal support to SL, and would have to call into an image based system. We have been doing something similar recently, so it is quite possible. &lt;br /&gt;&lt;br /&gt;I think David Reed (one of my fellow Croquet architects) really nailed what 3D interoperability should be. When we share 3D objects, we also need to share their behaviors. In most ways, the visual representation of an object is its least interesting aspect. What it can do, and how it interacts with the users and the worlds around it, however is REALLY interesting and very valuable. &lt;br /&gt;&lt;br /&gt;This is also really hard to do. Everyone uses different languages and scripts, and some - like Croquet - use a very different mechanism for enabling behaviors. Croquet has TeaTime and the concept of future replicated messages to manage its behavior. This enables a peer-to-peer approach to designing interactions, which otherwise would be near impossible. The only other solution is what everyone else has to do, which is maintain a central server and replicate the results of the computations.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-117657451578871804?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/3d-worlds-and-interoperability.html</link><guid>56b2ec2329025b35907f8ced91cc4910</guid></item>
<item><title type="text">Internet2 Conference</title><description type="html">I am in Arlington, VA to be part of a panel on Virtual Worlds (Wednesday at 1:15pm). I intend to do a live demo of Qwaq Forums. I think that is a lot more interesting than a PowerPoint presentation. I have always tried to do demos to set the context of my talks, because I think being able to show people what I am doing and interested has a bigger impact than just talking about it. It does get a bit too exciting sometimes - Internet access is not always what it should be. One presumes that a conference about Internet2 will have a reasonable connection though.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-6619756757489816910?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/internet2-conference.html</link><guid>6208501ffa68d655eddf5b27156f2fa1</guid></item>
<item><title type="text">Croquet and the Perils of Open Source</title><description type="html">Croquet is Open Source. This has had both a positive impact on the project and in some ways a decidedly negative impact. The positive is the positives that most open source projects enjoy - lots of interest and creativity building around the system, visibility, strong academic relationships - it even helps allay concerns of larger enterprise customers knowing that there will not be a Microsoft-type lock-in with a single vender. &lt;br /&gt;&lt;br /&gt;From the start Croquet was developed completely out in the open. Even the very first, barely useful versions of the system were readily available to download, deconstruct, and criticize. Nothing wrong with this - we invited it, and the project profited from it. The big problem we had to deal with is people were disappointed with how much of the system was or wasn't working. I have heard people say &quot;Yeah, I tried Croquet a few years back, but it.... &quot; (you can fill in the blank with a number of choices). I can understand why people would be irritated. Some critical problems in Croquet took much longer for us to solve than we ever thought they would, we had spent a minimal amount of time on UI, back-end infrastructure, performance, etc... Getting something like Croquet to work at all was a monumental task. We didn't exactly have a model to work from. We were inventing - not reverse engineering.&lt;br /&gt;&lt;br /&gt;Of course, anyone that has ever developed a larger project has seen these kinds of issues. I certainly have dealt with them many times. The big difference was no one saw any of my project's warts except my colleagues and me. And we worked hard to remove, or at least hide them before we unveiled the final polished application. Croquet was different - people have been able to randomly sample the state of the project and critique it based upon that sample. Even today, the Croquet API is not quite a user-centric architecture. It is much more akin to the Linux kernel, looking for a front end to empower the user and a back-end to help users find each other and provide additional services. On the other hand, it is doing almost everything we said it would - and it really works well. We have even started a company &lt;a href=&quot;http://www.qwaq.com&quot;&gt;Qwaq, Inc.&lt;/a&gt; based upon the same open source system that you can download today. We are getting great reviews for our first product Qwaq Forums, even though it is till in beta today.&lt;br /&gt;&lt;br /&gt;What is my point? I have enjoyed this very open development process. I have learned a lot, and made a huge number of new friends and colleagues. Overall, it has been fun in spite of certain comments from people. I do think that next time - if there is one - I will probably hold off releasing a new system until it is a bit more mature and robust. In some ways that is sad - I think people that have stayed with the project from the beginning have learned a lot about how a complex system gets built and how it evolves. Most of this would be missed if you were to jump into a more complete end-user experience. On the other hand, it would probably increase the probability of success. In marketing, you only have one chance to make a first impression. Qwaq Forums is making a GREAT first impression. It would have been nice if Croquet had the same opportunity.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-3868169434744702738?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/croquet-and-perils-of-open-source.html</link><guid>e95ec88229b62f28807076e3c56d900f</guid></item>
<item><title type="text">Julian Lombardi's Blog Has Moved</title><description type="html">I've moved my blog to another address and will no longer post here.  Please go to &lt;a href=&quot;http://julianlombardi.blogspot.com&quot;&gt;julianlombardi.blogspot.com&lt;/a&gt; to see all my posts, both old and new.&lt;br /&gt;&lt;br /&gt;-Julian&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-5196634228264046360?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2009/05/julian-lombardis-blog-has-moved.html</link><guid>cdd31ff93f8d402c4d3be3e60e26433c</guid></item>
<item><title type="text">Another KMZ Import</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_8RhdmQ9Bi6c/SPvBjWFt8JI/AAAAAAAAAXM/c8tda2eEy_Y/s1600-h/seymour.jpg&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;&quot; src=&quot;http://4.bp.blogspot.com/_8RhdmQ9Bi6c/SPvBjWFt8JI/AAAAAAAAAXM/c8tda2eEy_Y/s320/seymour.jpg&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5259009802854330514&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Another test of the new KMZ importer from Aik-Siong Koh.  Note that the textures are mapping nicely onto the relatively complex model!  Soon we will be able to import lots of content from Google's 3D Warehouse into Cobalt.  That will be nice...&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-1046486170180668260?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/10/another-kmz-import.html</link><guid>60ed73117449910c94aa0528511e3b56</guid></item>
<item><title type="text">VNC in Cobalt!</title><description type="html">&lt;a onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot; href=&quot;http://4.bp.blogspot.com/_8RhdmQ9Bi6c/SSgGbL9huqI/AAAAAAAAAYE/2yuIPYvQYU4/s1600-h/VNC1.png&quot;&gt;&lt;img style=&quot;cursor:pointer; cursor:hand;width: 320px; height: 237px;&quot; src=&quot;http://4.bp.blogspot.com/_8RhdmQ9Bi6c/SSgGbL9huqI/AAAAAAAAAYE/2yuIPYvQYU4/s320/VNC1.png&quot; border=&quot;0&quot; alt=&quot;&quot;id=&quot;BLOGGER_PHOTO_ID_5271470427974253218&quot; /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Rajeev Lochan has just been successful in getting VNC to work within a shared Cobalt space! VNC is a graphical desktop sharing system which uses the RFB protocol to remotely control another computer. This is a big breakthrough for our open project.  It means that  a Cobalt-based VNC client can connect to a VNC server on any other operating system. Cobalt users will soon be able to view and interact with remote applications (including full featured web browsers) or even collaboratively access remote desktops within the Cobalt application. Because the VNC protocol can use a lot of bandwidth, we still have some optimization to deal with - but this progress is great to see.  Thank you Rajeev!&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-6494946713862518351?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/11/vnc-in-cobalt.html</link><guid>5d9ef6e1c18fcc959c2b32df53503c23</guid></item>
<item><title type="text">Croquet Simulation Work</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/D51Vx9giJVg&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/D51Vx9giJVg&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;This new video by Willi Griephan of Bremen, Germany shows the operation of two Croquet simulation spaces that he created using the Croquet SDK.  The first is a falling &quot;Domino&quot; simulation that leverages the &lt;a href=&quot;http://www.ode.org/&quot;&gt;Open Dynamics Engine&lt;/a&gt; for its physics.  The second scene depicts swarm behavior in an aquarium simulation where two members of a swarm can pair, and by doing so, spawn new offspring. The Swarm algorithm that Willi used is described &lt;a href=&quot;http://www.red3d.com/cwr/steer/gdc99/&quot;&gt;here&lt;/a&gt; by Craig W. Reynolds.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-8500335901084905670?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/07/croquet-simulation-work.html</link><guid>fb8845b15fea3c89d28031b50d19bcc1</guid></item>
<item><title type="text">Strangely Attractive</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/10h2XhP0u0g&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/10h2XhP0u0g&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Matthew Chadwick has been exploring the creation of GPU-computed chaotic attractors of dynamical systems using the Croquet SDK. The code he is using is based on David Faught's procedural textures code. In this implementation, the cube to the left defines a parameter space for controlling the system.  Matthew says that the same code he is developing could also be used for other things like in-world physics simulations. Matthew will make all of this available for public release once the code is ready.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-2697287613434886120?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/07/strangely-attractive.html</link><guid>92d0d8c674608231ca40737d62502621</guid></item>
<item><title type="text">Immersive Workspaces</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/j5I2ZV2ppeE&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/j5I2ZV2ppeE&amp;color1=0xb1b1b1&amp;color2=0xcfcfcf&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Linden Lab has announced that its now going to be moving into the enterprise 3D collaboration space. It recently announced a new product called &quot;Immersive Workspaces&quot; which is basically an area in Second Life set aside for corporate meetings. That more secure area represents &quot;a completely exclusive and secure experience, with no connectivity to the Second Life mainland.&quot; Their intent is to develop a complete collaboration experience for the enterprise.  I guess that is Linden Lab's attempt to try and ensure that business meetings are not disrupted by griefers or by unwelcome barrages of flying penises.  Looks like the enterprise virtual worlds space is getting a bit more crowded.  It will be interesting to see how this all plays out.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-8561808529628422340?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/10/immersive-workspaces.html</link><guid>1f8dfe1784046d2987159e75f0c4fb39</guid></item>
<item><title type="text">Collaborative CAD in Cobalt!</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/ffUQ24GXFW0&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/ffUQ24GXFW0&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Thanks again to the work of Aik-Siong Koh and his team, Cobalt now makes it possible for users to work in a deeply collaborative CAD environment. This video shows how two Cobalt users on separate computers can work with relatively sophisticated CAD capabilities over a LAN.  This newly-implemented collaborative CAD capability in Cobalt opens up a wide range of possibilities for engineers and others at a distance to develop sophisticated simulations and architectures in Cobalt worlds.  The ability to develop animated content within a full-featured &lt;span style=&quot;font-style:italic;&quot;&gt;virtual world&lt;/span&gt; CAD environment sets Cobalt apart from other virtual world technologies in a very significant way.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-7043953166494247605?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/12/collaborative-cad-in-cobalt.html</link><guid>ae83e015b0c30c82b049764785db3d6f</guid></item>
<item><title type="text">Better Avatars!</title><description type="html">&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/ykriYbq-oyI&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/ykriYbq-oyI&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;Better avatars for Cobalt are almost ready!  Here is a video showing an early test implementation of a motion-cycle enhanced avatar in Cobalt.  Peter Moore has been doing a wonderful job with this and in getting the Ogre3D XML importer to work with models developed in Maya or exported from Blender. That means that we will all soon have at least two art paths for getting avatars and other animated meshes into Cobalt worlds.  It'll also be great to finally retire the stilted Alice and Rabbit avatars.  This particular video also provides a sneak peak at some of the texture and environmental/directional lighting work that I hope to have make its way into the next update of the Cobalt code-base.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8731714-3756795044622089822?l=jlombardi.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://jlombardi.blogspot.com/2008/07/kill-rabbit.html</link><guid>326475864d0db6f460c515e8725438ef</guid></item>
<item><title type="text">The Colony Videos</title><description type="html">I finally got around to posting the videos I made of The Colony. I had to borrow an old Macintosh from David Easter (who also did the ports to the PC and the Amiga) to make these, and I used a video camera to record them. This demonstrates the game, and I talk a bit about the technology behind it and why I designed the game play the way I did. Let me know what you think. I will also be posting some videos of Virtus ICE (Interactive Collaboration Environment). This was where the ideas for what became Croquet and then Qwaq Forums began.&lt;br /&gt;&lt;br /&gt;The Colony videos are in two parts and you can see them here. &lt;br /&gt;&lt;br /&gt;Part 1:&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/i1XENlUUOhA&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/i1XENlUUOhA&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Part 2:&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/3k3qrt76Ddk&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/3k3qrt76Ddk&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-5705215728120992728?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2009/01/colony-videos.html</link><guid>10596ffc2872ec350514fe328baecf3a</guid></item>
<item><title type="text">Croquet Priorities</title><description type="html">Mark McCahill and I have been discussing the top priorities for Croquet moving forward. Here is the list of the top six things that we will be doing for 2008. The main theme is interoperability. This is interoperability at many levels. First, ensuring Qwaq Forums and Open Croquet worlds are interoperable. Looking beyond that is allowing Croquet worlds and avatars to interoperate with other platforms. This will be a large effort, but many of the technical hurdles have already been jumped. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- XML space description: a common space description file format in XML to allow the open source and QWAQ clients to read stored copies of each other's worlds.&lt;br /&gt;&lt;br /&gt;Minimizing the size of objects being replicated is important so that spaces may be saved compactly and new user joining the replicated space can do so quickly.&lt;br /&gt;&lt;br /&gt;In practice this means meshes and textures should be referred to by name in the replicated space, and fetched by each client&lt;br /&gt;independently of joining the space. By fetching these large objects independently of the replicated space, clients can maintain locally cached copies which speeds joining the space. An XML description of the space also simplifies programatically generating space descriptions, and aids in integration with various search engine technologies.&lt;br /&gt;&lt;br /&gt;Moreover, an XML-based space description also allows for the possibility of a croquet browser written in another language or based on a different code base. However, this implies changes to the rendering engine since we would be moving textures/mesh definitions outside the replicated space. QWAQ's forums have shown that this approach has many virtues. Ultimately we might want to use an extended version of Collada - but the first step would be to align the Open source and QWAQ code bases so we can read each other's world definitions.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- robust Jabber client: SSL TLS support ( OpenSSL plugin?)&lt;br /&gt;&lt;br /&gt;This work can happen in the open source arena and is relatively independent of changes to space description formats. The current Jabber client does not support SSL transport level security and needs to - since most Jabber servers require SSL TLS. Supporting an open standard IM/Chat is a key for interoperability with the chat world, and ideally would allow cross world chat with other environments (such as Second Life) should those worlds decide to do the right thing and support a standards based chat protocol for inter world chatting. We also need this work so that we can advertise presence outside Croquet using an open standards-base approach.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- message router/timestamper: optional message router/timestamper as an Apache plugin?&lt;br /&gt;&lt;br /&gt;The microserver is a message router/timestamper for sites that want a standalone message router to augment the croquet client built-in router. We can leverage the support that the apache server codebase has by providing an option to externalize the message router function.&lt;br /&gt;&lt;br /&gt;This also opens the possibility of simplifying access control/authentication integration with existing enterprise AuthN/AuthZ&lt;br /&gt;systems. By creating a microserver that plays in the apache space we can leverage existing Apache web server authentication/access control modules.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- plugin API for extending space definitions: various browsers will extend functionality of spaces by adding new features, we need a definition for how this happens&lt;br /&gt;&lt;br /&gt;We expect that various browsers will extend functionality of spaces by adding new features. We need a standard way to describe these plugins that allows less well endowed clients to at least display a placeholder for content they cannot render and point to how to get the required extension. This is analogous to plugins for web pages.&lt;br /&gt;&lt;br /&gt;Note that these plugins may affect both the replicated space -and- the non-replicated inside-the-helmet user interface of a croquet client.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- scripting for user-defined behaviors: Javascript, Lua, panels, roll-your-own, and all that jazz&lt;br /&gt;&lt;br /&gt;If we have a common XML format for describing spaces we have half of what we need. The other half is a common way of describing user-created behaviors, so a scripting language - like lua or javascript - would allow for actions to be stored along with models and textures. This implies that browsers will all need to support the scripting language.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- avatar definitions: enabling Akbar 'n Jef's Avatar Hut&lt;br /&gt;&lt;br /&gt;Users of social spaces care a lot about their representation in-world&lt;br /&gt;- we need to converge on avatar standards so that each implementation of croquet is not re-inventing this particular wheel. That, and a good babyfur avatar should be a lifetime investment.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-4221152758784253593?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/11/croquet-priorities.html</link><guid>0358bd45cf4e5033bf44049a5ef9da55</guid></item>
<item><title type="text">On/off world</title><description type="html">Brandon Boyer at Boing Boing Offworld was kind enough to post a link to the Colony videos I made. You can see it here:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot; http://www.offworld.com/2009/02/a-look-back-at-the-colony-the.html&quot;&gt;A Look Back At the Colony&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-5125364447466469840?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2009/02/onoff-world.html</link><guid>37422ada233c39cfe03c1235d3bed9f4</guid></item>
<item><title type="text">Interoperability</title><description type="html">I have been spending a large amount of time talking to people about interoperability in virtual worlds. One problem is defining what it means - and why it is important. From what I can tell, the main thing people are looking for is a way to easily traverse from one virtual world to another. It would be great to be able to jump through a portal from Second Life into Qwaq and back. We already support URLs as links between Qwaq spaces. Adding a Second Life island would be a bit tricky, but I think it could be done.&lt;br /&gt;&lt;br /&gt;There is also mention of having one's avatar go along for the ride, but it turns out that this is not that important, and may not even be a good idea. One way to think about it is people already have multiple identities online. I have a work email address, personal email, and a number of random older email addresses that I still get mail from. I don't like mixing them, and I have different expectations for the kind of mail I get from them, and people have different expectations from me depending on whether it is a work or personal email. That doesn't even begin to address the difference in security requirements.&lt;br /&gt;&lt;br /&gt;Avatars are context specific artifacts. My avatar in World of Warcraft makes no sense in my business world. An obfuscated name model like Second Life makes no sense in business either - good business practice is built upon a strong trust relationship. If I don't even know who you are I can't do business with you. &lt;br /&gt;&lt;br /&gt;On the other hand, if you like how your avatar looks in world A, it would be nice to have a similar version in world B. I like having the same name for my email addresses at gmail and at Qwaq, even if my role in each is different.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-6164435346925350312?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2008/03/interoperability.html</link><guid>578f336e35e2fda962ce5affc94cf766</guid></item>
<item><title type="text">Qwaq in WSJ</title><description type="html">We were in the Wall Street Journal - with a picture! Check it out here:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot; http://online.wsj.com/article/SB120719726445485981.html&quot;&gt;Virtual World Gets Another Life&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;It includes an image of the new &quot;Business Avatars&quot; which have not been release yet, but look wonderful.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-24963843539168842?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2008/04/qwaq-in-wsj.html</link><guid>d942ef1750708921225bd21f05a8df49</guid></item>
<item><title type="text">Alan Johnston - BBC</title><description type="html">&lt;a href=&quot;http://news.bbc.co.uk/1/hi/in_depth/world/2007/alan_johnston/default.stm&quot;&gt;&lt;img alt=&quot;Alan Johnston banner&quot; src=&quot;http://www.bbc.co.uk/blogs/theeditors/alan_johnston.gif&quot; width=&quot;150&quot; height=&quot;90&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Click here to show your support for Alan.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-1640368524077084450?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/alan-johnston-bbc.html</link><guid>33e25f9347fad7fc83b8c6c2f6070d22</guid></item>
<item><title type="text">Hydra!</title><description type="html">Andreas Raab wrote:&lt;br /&gt;&lt;br /&gt;In its ongoing commitment to Open Source, Qwaq has decided to release&lt;br /&gt;the first multi-core capable Croquet VM under the MIT license.&lt;br /&gt;&lt;br /&gt;Hydra VM is a virtual machine capable of running multiple Croquet images&lt;br /&gt;side-by-side, therefore being able to effectively utilize multi-core&lt;br /&gt;CPUs. Hydra VM is still in an early phase of development, but given the&lt;br /&gt;(very successful) early results, Qwaq has decided to make it available&lt;br /&gt;to general public in the hope that other people will help Igor to make&lt;br /&gt;further progress in developing Hydra VM.&lt;br /&gt;&lt;br /&gt;The offical release is available here:&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot; http://www.qwaq.com/HydraVM&quot;&gt; http://www.qwaq.com/HydraVM&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;and contains the following files:&lt;br /&gt;&lt;br /&gt;* HydraVM-bin.zip - A prebuilt Windows version of Hydra VM.&lt;br /&gt;* HydraVM-src.zip - The (C) source tree for building Hydra VM.&lt;br /&gt;* HydraVM-pkg.zip - The (Squeak) packages needed to build Hydra VM.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-7324020145469295294?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2008/02/hydra.html</link><guid>886a5884e693750536119bee6f0eac5e</guid></item>
<item><title type="text">More Scripting</title><description type="html">I am sure everyone has their own opinion about scripting inside of Croquet. Here are mine:&lt;br /&gt;&lt;br /&gt;- The scripting we use should be a popular language. Javascript is the obvious choice. Lua gets high marks for coolness, but most people have never even heard of it. It would be great to include any language, but getting the first one to work is a big enough project.&lt;br /&gt;- It needs to work INSIDE of the Island. That is, it should offer the exact same guarantees of determinism that Croquet Islands provide. &lt;br /&gt;- It must utilize the same numerics package that we have added to Squeak/Croquet. (Otherwise the previous will fail.)&lt;br /&gt;- It must be enhanced to support #future messages directly. You MUST NOT loop to simulate in Croquet. Bad bad bad.&lt;br /&gt;- The interface for editing the scripting language must be INSIDE of the Island. In other words - extreme programming on steroids! Scripting is a form of communication. When we came up with the idea for Croquet the intent was not to have a virtual mall and hang out. It is intended to be a high bandwidth communication medium. This includes the ability to dynamically express a simulation as part of the conversation! Hence the expression itself is a part of the communication. The editing is part of the argument between the participants.&lt;br /&gt;&lt;br /&gt;This is probably more important to me than others, but until this is available, it ain't Croquet.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-2642439597194516949?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/10/more-scripting.html</link><guid>1c200bf2da3dc881f242144340c52875</guid></item>
<item><title type="text">Scripting</title><description type="html">I have been spending a great deal of my time lately thinking about scripting issues. Most people are a bit wary of diving into Smalltalk to get things done. Of course, it is really a marvelous scripting language in many ways, but people tend to find it a bit difficult. I think the reason for this is the same reason Lisp is a bit difficult. Both Smalltalk and Lisp have extremely regular syntax structure. In Smalltalk, even the traditional control structures (if/then, while, for) are just normal object messages that look the same as any other object messages. Most other languages have &quot;exceptional&quot; syntax, in that they have a number of reserved key words, and often have specific non-regular syntax to support these &quot;exceptions&quot;. This makes it easier to visually parse, as most developers also tend to format their code around this non-regular syntax. This is especially useful to new programmers, because they can use this as a way to understand the code they are looking at. &lt;br /&gt;&lt;br /&gt;Smalltalk and Lisp programmer usually format their code in a way to hilight the flow of control as well, but since every line of code starts with an actual object followed by a message, even this is still harder to immediately recognize.&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://scratch.mit.edu/&quot;&gt;Scratch&lt;/a&gt; is beautiful visual scripting language developed by the &lt;a href=&quot;http://llk.media.mit.edu/&quot;&gt;Lifelong Kindergarten group&lt;/a&gt; at MIT where they have moved very strongly in the direction of hilighting these very same control structures by using multiple shaped and colored tiles. What is nice about this is it makes it very easy to understand the structure of a program at a glance, and the program itself is simply &quot;assembled&quot; like you might put Lego blocks together. Interestingly, Scratch is built on top of Squeak - a version of Smalltalk.&lt;br /&gt;&lt;br /&gt;We have been looking at a number of scripting languages over the past year, and have even integrated Python directly into Qwaq Forums. We are also looking very closely at Javascript and Lua. In particular, I love Lua, as it really gives me a lot of the capabilities I miss in Smalltalk - functions are first class objects and it has full closure support. This allows for some very interesting capabilities in code. I have been saying that I was thinking about building Wicket in Python in the past, but I believe Lua would be a much better choice.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-2339370972565941567?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/08/scripting.html</link><guid>93ffe3d7823b16ae370ff8fc2a7e81cf</guid></item>
<item><title type="text">Qwaq + Intel = Collaborative Mirimar</title><description type="html">Qwaq and Intel just announced that we will be collaborating to bring Mirimar technologies that were developed at Intel to market. This is exciting for a number of reasons. Mirimar is a beautiful and seamless interface with the users desktop, which will make Qwaq Forums even more of a compelling experience. And of course we get the opportunity to work directly with Intel and in particular with John David Miller, one of the principals behind Mirimar to develop and integrate this technology. JDM is definitely one of us - and we have had a lot of fun working with and learning from him over the last year. It will be fun to roll this product out the door.&lt;br /&gt;&lt;br /&gt;Press release here:&lt;br /&gt;&lt;a href=&quot;http://www.intel.com/pressroom/archive/releases/20070920corp_a.htm&quot;&gt;Intel-Qwaq Press Release&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Official video of Justin Rattner's keynote including a guest appearance by Greg Nuyens. This seems to require IE and a PC:&lt;br /&gt;&lt;a href=&quot;http://www.intel.com/pressroom/kits/events/idffall_2007/webcasts.htm &quot;&gt;Intel Developer Forum Webcasts&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is just the video part - no slides, but seems to work everywhere:&lt;br /&gt;&lt;a href=&quot;http://mfile.akamai.com/28603/wmv/intelstudio.download.akamai.com/10670/idf/fall_2007/070920_JR/mshigh.wmv&quot;&gt;Intel Developer Forum Video&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-4831879421851426847?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/09/qwaq-intel-collaborative-mirimar.html</link><guid>4328c8554c08dbb0d9f92541a9b56f50</guid></item>
<item><title type="text">Bank Teller Machines and 911</title><description type="html">I just had a crazy idea and had to write it down somewhere. Why don't bank teller machines respond to 911? They have a numeric keypad, and their users are also a target for potential victimization. And they are everywhere. They also include video cameras. Knowing that a teller machine was also directly wired to the police might make criminals reconsider violent attacks near them. Of course if your pin number is 911x, there might be some problems, but I suspect these are easily changed. Nothing to do with Qwaq, Inc or Croquet... but so what?&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-6468036815569714453?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/04/bank-teller-machines-and-911.html</link><guid>4ef71de15cfab9ec332e0e372cf7faed</guid></item>
<item><title type="text">My Internet2 Talk ... in Color</title><description type="html">I participated in a panel at the Spring Internet2 members meeting and a video of it is available online. For those of you wanting to get a demo of Qwaq Forums - check it out. Beware, there is about 3-5 minutes of nothing happening at the beginning of the video. Don't give up. I am the first speaker, but it is well worth watching Sandra Kearney at IBM and Robert Gehorsam of Forterra Systems and the excellent questions at the end of our short presentations. &lt;br /&gt;&lt;br /&gt;Go here: &lt;a href=&quot;http://winmedia.internet2.edu/smm07-vod/smm07-primary-8.wmv&quot;&gt;Internet2 VR Panel&lt;/a&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-2247449567930134395?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/05/my-internet2-talk-in-color.html</link><guid>9ee8d02e752b7a82d5155daef0cbf42c</guid></item>
<item><title type="text">The ICE Videos</title><description type="html">ICE stands for Interactive Collaboration Environment. This is the real proto-Croquet architecture I built at Virtus. The ideas were strongly influenced by Apple's OpenDoc architecture and conversations with Alan Kay. There were two versions of this, one with some really neat recursive drag and drop capabilities. This system was collaborative from the start, including voice and video. The &quot;avatars&quot; were flying TVs with video images of the other users on them. The video was from some special cards that are long gone, so I could not show that in this demo. Once again, thanks to David Easter for providing the machine I used to record this demo. David also designed much of the component architecture that we built here. The second video is in some ways even more interesting than the first. We actually made the entire ICE system itself a component which meant that we could drag and drop ICE into a 3D window in the space. Early portals!&lt;br /&gt;&lt;br /&gt;Enjoy it.&lt;br /&gt;&lt;br /&gt;ICE Version 1&lt;br /&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/KFdeVRteiSY&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/KFdeVRteiSY&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;ICE Version 2&lt;br /&gt;&lt;br /&gt;&lt;object width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/fI-uwgHIR4I&amp;hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/fI-uwgHIR4I&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-4695896943291084740?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2009/01/ice-videos.html</link><guid>5642f41a179165e41807f7c75bbc41eb</guid></item>
<item><title type="text">Croquet Road Map</title><description type="html">A draft of the Croquet Road Map is now available here: &lt;br /&gt;Go here: &lt;a href=&quot;http://www.croquetproject.org/index.php/Road_Map&quot;&gt;Croquet Road Map&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;There are three critical items: Island Classes, Two Dimension Infrastructure, and Documentation. These are the essential elements of the next big Croquet release, which I will discuss a bit later. &lt;br /&gt;&lt;br /&gt;The first item probably needs some elaboration. Island Classes are classes that are part of the replicated Island's definition. They can be edited like any other class, but only exist inside of a particular Island. The code can be reused only by copying the classes between Islands. This goes beyond a uni-class framework, turning Islands into complete encapsulated development environments. This may raise more questions than it answers, but it is a critical aspect of what we were after when we created Croquet - the ability to share even complex simulations between users in a protected space.&lt;div class=&quot;blogger-post-footer&quot;&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8378574-27646630162411779?l=croqueteer.blogspot.com'/&gt;&lt;/div&gt;</description><link>http://croqueteer.blogspot.com/2007/05/croquet-road-map.html</link><guid>30a311263dab37127f87ed4dedae5b43</guid></item>
<item><title>When worlds collide</title><link>http://www.wetmachine.com/itf/item/1583</link><description>Interesting juxtaposition between these two from overnight:A Rocketboom syndicated TV-babe declares our virtual worlds as one of three reasons for her to go to California(!) among the far-from-product stuff at Intel Research Day.Appalachian State ...</description><pubDate>Tue, 30 Jun 2009 16:03:38 -0500</pubDate><guid>e9af7270283bce2d34481846c6631daf</guid></item>
<item><title>What's New?</title><link>http://www.wetmachine.com/itf/item/1580</link><description>People are often pretty good at walking into a room they are familiar with, and instantly knowing what has changed. That's pretty useful for 3D operations team rooms.  But what if things have been &amp;#8220;redecorated&amp;#8221; &amp;#8212; moved around for...</description><pubDate>Mon, 29 Jun 2009 00:08:14 -0500</pubDate><guid>dad6e6c98135a803828e75ea2371df84</guid></item>
<item><title>NOW they get it. NOW they don't.</title><link>http://www.wetmachine.com/itf/item/1577</link><description>I find two of Microsoft's current ad campaigns interesting.  One asserts that computer technology is all about connecting people, particularly synchronously (as opposed to asynchronous stuff like email, file sharing, and wikis). If you replaced th...</description><pubDate>Sun, 21 Jun 2009 12:56:10 -0500</pubDate><guid>714b0f8ce145d2437269d0ba6319de3e</guid></item>
<item><title>QRLs are not SLurls  but they play that role on the 'Net.</title><link>http://www.wetmachine.com/itf/item/1569</link><description>We've created ordinary http URLs that teleport you to places in-world in Qwaq Forums, Being programmers, we could not resist the pun of calling them QRLs.  The most common uses today are:meet me here  telling someone where to meet, in IM, ema...</description><pubDate>Sun, 14 Jun 2009 14:58:04 -0500</pubDate><guid>6f052a7856f36d7b24c4314562f40b4d</guid></item>
<item><title>Places, Everyone!</title><link>http://www.wetmachine.com/itf/item/1565</link><description>Related to the URL addressing concepts discussed here, there is the question of how to denote places within a 3D world. I really like having names for these.A typically engineering way to map out locations in a model is with coordinates. There...</description><pubDate>Sun,  7 Jun 2009 22:56:37 -0500</pubDate><guid>d17b1e1979abb0127a6af7cb6ee33be7</guid></item>
<item><title>Being Seen</title><link>http://www.wetmachine.com/itf/item/1558</link><description>I'd been wondering whether anyone on our company's Board of Directors knew who I was.  I know a couple but it turns out most didn't. But just before the last board meeting I ran into a director that I'm sure I had never been introduced to. He said...</description><pubDate>Thu,  4 Jun 2009 15:14:00 -0500</pubDate><guid>ee12eb519f430f3421b538feedd0ab2f</guid></item>
<item><title>3D vs 2D for Legacy Applications</title><link>http://www.wetmachine.com/itf/item/1554</link><description>When Alan Kay's team at Xerox created the overlapping window user interface, they were working for a document company. Everything was organized around documents mimicking paper, sitting in folders except when being operated on by one application o...</description><pubDate>Tue,  2 Jun 2009 21:40:00 -0500</pubDate><guid>abf16e37a9e141bd4912014900402f66</guid></item>
<item><title>Drum Machines</title><link>http://www.wetmachine.com/itf/item/1553</link><description>There weren't any effective drum machines when I was in high school. Except, of course for Neil Peart.Compare Animusic:</description><pubDate>Sun, 31 May 2009 15:47:00 -0500</pubDate><guid>45276089fc0dd100103083ff44b9bccf</guid></item>
<item><title>Being There</title><link>http://www.wetmachine.com/itf/item/1557</link><description>We've all seen the cartoons of people sitting next to each other in silence and texting each other. I just picked up my daughter from a concert where she did exactly that. At work, we meet for a few hours in-world at least twice a week. Usuall...</description><pubDate>Sat, 30 May 2009 14:25:43 -0500</pubDate><guid>1f1b5b33a5ea8ddc9566b1b750411879</guid></item>
<item><title>Goal!</title><link>http://www.wetmachine.com/itf/item/1552</link><description>How do we improve the breed of collaborative programming tools? Should we have spectator programming competitions on the Internet?  (The people who like those things only watch for the crashes!)  I don't think there's a good commercial driver ...</description><pubDate>Fri, 29 May 2009 12:03:00 -0500</pubDate><guid>fa7031766af92ad8be294c75ec693ef5</guid></item>
</channel></rss>