<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5310157731285125704</id><updated>2012-02-12T13:19:00.185Z</updated><category term='feminism'/><category term='politics'/><title type='text'>Silverlight to Gold</title><subtitle type='html'>Playing with Silverlight</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-2003232601217355364</id><published>2007-12-18T11:17:00.001Z</published><updated>2007-12-18T11:17:46.755Z</updated><title type='text'>May be maturing</title><content type='html'>&lt;p&gt;I'm at a pre-Christmas party and a friend of mine (30s) eyeing up the cakes suddenly says "Oh. I think I might have matured a bit." At this point I'm totally bemused so I ask and she says that a year ago she would have wanted to try a little bit of all the cakes, but now there's just one she really wants.&lt;/p&gt; &lt;p&gt;All the projects I've been on recently are really immature with 20 odd features and a tight deadline. The sites I actually like typically have one central feature done well. &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.marcmywords.org/post/A-Change-in-Perspective.aspx" target="_blank"&gt;Marc has it right on pie shops&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Gordon Ramsay has a show where he takes apart restaurant businesses and helps them get back to profitability. One of the first things he always does is to shrink the menu so that the kitchen is turning out 5 excellent dishes rather than 20 bad ones.&lt;/p&gt; &lt;p&gt;If you go for complex surgery at a hospital would you prefer to be treated by a respected specialist working in your particular condition, or by a generalist with a lower success rate?&lt;/p&gt; &lt;p&gt;Is it time for a maturity model for web services? We could initially plot age and development team capacity vs success and number of features to see where the sweet spots are. I think we already know, but are choosing to be immature.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-2003232601217355364?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/2003232601217355364/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=2003232601217355364' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/2003232601217355364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/2003232601217355364'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/12/may-be-maturing.html' title='May be maturing'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-1744349177252146353</id><published>2007-11-21T01:21:00.001Z</published><updated>2007-11-21T01:21:33.999Z</updated><title type='text'>Abuse of sunlight therapy products</title><content type='html'>&lt;p&gt;It's about 1:20AM. I'm still working hard (OK, fairly hard, given that I'm updating a blog). I don't do this workload very often, but normally when I do I'm sustaining myself chemically through a deliberate excess of caffeine, dried fruit and chocolate. I usually feel awful.&lt;/p&gt; &lt;p&gt;In the last 4 days I haven't had any caffeine, and very little sugar except for some fresh fruit. I feel great. I can go on for a few more hours.&lt;/p&gt; &lt;p&gt;Instead of the usual chemicals I'm abusing a &lt;a href="http://www.lumie.com/shop/products/lights-30-mins-or-more/Brightspark" target="_blank"&gt;light therapy lamp&lt;/a&gt; that I got because I was feeling a continuously run down a few weeks ago. This could be another case where "&lt;a href="http://www.voidspace.org.uk/cyberpunk/gibson_rocketradio.shtml" target="_blank"&gt;the street finds new uses&lt;/a&gt;" for things. Light therapy products should be the new caffeine for the&amp;nbsp; stressed IT crowd: All the downsides of not sleeping, but without the downsides of excess caffeine and sugar.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-1744349177252146353?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/1744349177252146353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=1744349177252146353' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/1744349177252146353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/1744349177252146353'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/11/abuse-of-sunlight-therapy-products.html' title='Abuse of sunlight therapy products'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-6595007561682513614</id><published>2007-11-20T08:49:00.001Z</published><updated>2007-11-20T08:49:06.146Z</updated><title type='text'>VS2008 no good yet for Silverlight 1.1 ... yet</title><content type='html'>&lt;p&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/19/visual-studio-2008-and-net-3-5-released.aspx" target="_blank"&gt;VS 2008 has been released&lt;/a&gt; but does not yet have support for SIlverlight 1.1 &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Two popular add-ins to Visual Studio are not yet available to download for the final VS 2008 release.&amp;nbsp; These are the Silverlight 1.1 Tools Alpha for Visual Studio and the Web Deployment Project add-in for Visual Studio.&amp;nbsp; Our hope is to post updates to both of them to work with the final VS 2008 release in the next two weeks.&amp;nbsp; If you are doing Silverlight 1.1 development using VS 2008 Beta2 you'll want to stick with with VS 2008 Beta2 until this updated Silverlight Tools Add-In is available. &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;so I'll be sticking with the beta for a little while longer though.&lt;/p&gt; &lt;p&gt;Last time the Silverlight 1.1 tools update was out very promptly though. That makes me wonder if maybe there will be a little more to it this time. Perhaps a re-release of the framework with the long anticipated controls ... please.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-6595007561682513614?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/6595007561682513614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=6595007561682513614' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/6595007561682513614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/6595007561682513614'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/11/vs2008-no-good-yet-for-silverlight-11.html' title='VS2008 no good yet for Silverlight 1.1 ... yet'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-8571630123171577678</id><published>2007-11-10T16:06:00.001Z</published><updated>2007-11-10T16:06:44.951Z</updated><title type='text'>How do I know I've done something new?</title><content type='html'>&lt;p&gt;One thing that the original SHL Direct got right (in design at least, there may have been implementation issues found after I left the company) was defence against SQL Injection attacks and Cross Site Scripting. During this project in 1997 I identified issues that could occur with maliciously formed input data and verified every system input with a view to stopping users with evil intention from modifying or seeing the database content (SQL Injection), or being able to display malicious content into the trusted site used by the customer support staff (XSS).&lt;/p&gt; &lt;p&gt;The generalised SQL Injection vulnerability was &lt;a href="http://www.phrack.org/issues.html?issue=54&amp;amp;id=8#article" target="_blank"&gt;first publicly identified in 1998&lt;/a&gt; in Phrack by RFP. The Cross Site Scripting vulnerability &lt;a href="http://www.webmonkey.com/webmonkey/00/18/index3a.html" target="_blank"&gt;was being discussed in 2000&lt;/a&gt; by Steve Champion, I'm unclear on whether it was publicly identified before this.&lt;/p&gt; &lt;p&gt;RFP and Steve Champion should still be identified as the original sources of these techniques: They published; I didn't.&lt;/p&gt; &lt;p&gt;In retrospect I had maybe learnt something genuinely new, and there's the problem I'm interested in at the moment. Computer Science / Software Engineering are incredibly broad fields and small discoveries are being made all the time. If you publish everything you do, how can we pick the signal out from the noise? If you don't publish enough someone else will &lt;strong&gt;&lt;em&gt;rightfully&lt;/em&gt;&lt;/strong&gt; get credit for your original thought having made their own independent discovery.&lt;/p&gt; &lt;p&gt;There's been a similar problem in parallel processing for several years which was solved recently. Several issues in parallel processing are easily fixed with transactions, an idea from the database camp. The real problem? Probably that parallel processing researchers didn't know the database researchers had a solution, and the database researchers didn't realise the parallel processing researchers had a problem.&lt;/p&gt; &lt;p&gt;The questions I'm thinking about:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;How can someone tell if something is something is really new and identify the correct scope of people to broadcast to?&lt;/li&gt; &lt;li&gt;How can someone tell what problems are out there that are worth thinking about?&lt;/li&gt;&lt;/ol&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-8571630123171577678?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/8571630123171577678/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=8571630123171577678' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/8571630123171577678'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/8571630123171577678'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/11/how-do-i-know-i-done-something-new.html' title='How do I know I&amp;#39;ve done something new?'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-6231532456971658622</id><published>2007-11-08T17:31:00.001Z</published><updated>2007-11-08T18:52:53.042Z</updated><title type='text'>My first Internet app</title><content type='html'>&lt;p&gt;... launched in October 1997 and today would have been a bit over 10 years old. Unfortunately my old employer has recently (within the last 3 months) replaced the site with a &lt;a href="http://wwww.shldirect.com/"&gt;new version&lt;/a&gt;. On the plus side I think that means there wouldn't be too many negative side effects from discussing its construction.&lt;/p&gt;&lt;p&gt;Most of the technology used in the original SHL Direct is now well past its sell by date: The platform was Windows NT 4.0 with the IIS option pack (back when IIS was a separate add on from a CD). The database back end was SQL 6.5. An ASP tier managed user navigation around the main site, whilst the on line psychometric test ran in a java applet. &lt;/p&gt;&lt;p&gt;Whilst the technology platform is out of date, the software architecture, and the decision process that led to it is still cutting edge. This was one of the first modern RIA's. I think it belongs in a museum.&lt;/p&gt;&lt;p&gt;Windows was selected because the maintenance team had more experience with windows and I believed this would reduce maintenance costs. IIS was selected because we didn't know if people would be dealing with the web server software very much, so having a UI for the software would also reduce costs. RDBMS chosen over the usual file database the company used for scalability with multiple users, then SQL 6.5 because it was cheapest to licence across live and development environments.&lt;/p&gt;&lt;p&gt;Active Server Pages was an incredible blessing at the time. My previous projects had included a web UI built from IDC/HTX pages, and trial projects using compiled, object oriented technologies which tended to have compile-link cycles that required shutting down the web server. It was the best decision we could have made at the time.&lt;/p&gt;&lt;p&gt;Flash had no scripting capabilities at this time and couldn't do the job. Java was in over 90% of browsers on our test site and had the capabilities we needed. MS and Sun weren't fighting.&lt;/p&gt;&lt;p&gt;The user navigated the site, where we disabled session variables relying on custom tracking code embedded in the URL and stored in the database for scalability and session persistence across shutdowns. This would now be seen as more vulnerable to session hijacking. My first major mistake,even if nobody exploited it.&lt;/p&gt;&lt;p&gt;After authenticating and getting authorization to access to the test, the user would go to a page which loaded a java applet. Once loaded this made a request back to the server for the test data which was returned in an SGML format, consciously breaking with the convention of CSV to enable hierarchical data and reduce confusion between back end and front end development. Today we'd talk about the ASP page that returns the data as a service and we'd probably choose XML or JSON for the response instead. The ideas are similar. Using a service for the test data gave us the capability to have a CMS to define the question data, and to extend in future for randomly generated tests and adaptive tests.&lt;/p&gt;&lt;p&gt;Finally the applet posted results to another page/service (with retries just in case) before redirecting to a results page where calculation of score was performed server side.&lt;/p&gt;&lt;p&gt;For 10 years SHL Direct has been my 'perfect project'. Something technically advanced for its time, stable, good, always on, always reminding me that I can lead a software project and have a blast. Now its gone.&lt;/p&gt;&lt;p&gt;In those 10 years my own career has mostly risen, but definitely meandered through the rises and falls in the software industry and drifted into management. A lot of the time its been work - not fun at all.&lt;/p&gt;&lt;p&gt;Last year my employer sent me to work with Microsoft in the MTC to create some demo's to use as proof of concepts in the sales process for both companies. If you ever get the chance to do something like this, just say yes. Today I'm freelance. I'm working on RIA's again, and helping people with capacity planning. &lt;/p&gt;I'm as happy now as when I was working on SHL Direct. I credit one &lt;a href="http://www.microsoft.com/"&gt;company&lt;/a&gt; and &lt;a href="http://www.microsoft.com/mtc/locations/thamesvalley.mspx"&gt;team&lt;/a&gt;, and &lt;a href="http://marcmywords.org/" target="_blank"&gt;one person in particular&lt;/a&gt; with turning my career back around by reminding me that developing software is fun. So thanks Marc for hosting the time in the MTC, thanks Anders, Grant, Katrina and Tony for working with me on SHL Direct. Lets all hope I don't get so lost in the next 10 years.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-6231532456971658622?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/6231532456971658622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=6231532456971658622' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/6231532456971658622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/6231532456971658622'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/11/my-first-internet-app.html' title='My first Internet app'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-840375017370146803</id><published>2007-10-08T09:48:00.001+01:00</published><updated>2007-10-08T09:48:53.588+01:00</updated><title type='text'>Silverlight Controls from XamlReader?</title><content type='html'>&lt;p&gt;So far with silverlight controls I've found used the existing template which creates a constructor&lt;/p&gt; &lt;p&gt;System.IO.Stream s = this.GetType().Assembly.GetManifestResourceStream("MyNamespace.MyControl.xaml");&lt;br&gt;this.InitializeFromXaml(new System.IO.StreamReader(s).ReadToEnd());  &lt;p&gt;The problem with this is that if there's a problem with the xaml loaded from the stream the error message is very nondescript, but I've just found that  &lt;p&gt;XamlReader.Load(new System.IO.StreamReader(s).ReadToEnd(), true);  &lt;p&gt;will give&amp;nbsp;line, character and error message which is much more friendly so I'm giving serious thought to converting all my controls now ...&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-840375017370146803?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/840375017370146803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=840375017370146803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/840375017370146803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/840375017370146803'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/10/silverlight-controls-from-xamlreader.html' title='Silverlight Controls from XamlReader?'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-4542265091052519490</id><published>2007-10-01T20:15:00.001+01:00</published><updated>2007-10-01T20:15:16.124+01:00</updated><title type='text'>Strange Boxes</title><content type='html'>&lt;p&gt;The new Microsoft boxes are now my favorite software boxes.&lt;/p&gt; &lt;p&gt;About a month ago I still felt pretty bad toward them. OK they were pretty but they were pretty bad to use. There's some really bad cues on the box. At the rear edge there's what looks like tabs to pull the back away. Pull on them though and everything locks into place and the box won't open. Instead you have to pull on a little tab on top of the box.&lt;/p&gt; &lt;p&gt;Having worked through the training with the Expression tools and put the DVD away each time, the box now works really well for me.&lt;/p&gt; &lt;p&gt;It makes me wonder though - what will it take to move people to 'unusual' look and feel in silverlight apps and other places.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-4542265091052519490?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/4542265091052519490/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=4542265091052519490' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/4542265091052519490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/4542265091052519490'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/10/strange-boxes.html' title='Strange Boxes'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-4603313536026260886</id><published>2007-08-15T13:38:00.001+01:00</published><updated>2007-08-15T13:38:39.771+01:00</updated><title type='text'>Focus on silverlight control libraries</title><content type='html'>&lt;p&gt;I hope I'm proven wrong on this. There are already several silverlight control libraries which are going to fill the gaps in Silverlight 1.1 alpha very nicely. With .net controls, even controls in VB6 you could mix and match controls from multiple vendors very easily.&lt;/p&gt; &lt;p&gt;I'm starting to wonder if it will be that easy with silverlight.&lt;/p&gt; &lt;p&gt;One feature in all the libraries I've looked at so far is that they all have their own Control base class, and one of the major features this implements is focus.&lt;/p&gt; &lt;p&gt;So I want to know - will the focus from the infragistics controls play nicely with the controls Microsoft will ship later, and with the Component One controls, and the telerik controls&amp;nbsp;or are we going to have to face a choice of control vendor?&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-4603313536026260886?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/4603313536026260886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=4603313536026260886' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/4603313536026260886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/4603313536026260886'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/08/focus-on-silverlight-control-libraries.html' title='Focus on silverlight control libraries'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-478852687706518340</id><published>2007-08-03T20:26:00.001+01:00</published><updated>2007-08-03T20:26:33.857+01:00</updated><title type='text'>SIlverlight Forms Choices</title><content type='html'>&lt;p&gt;I've been working on an RIA for&amp;nbsp;a customer using Silverlight 1.1 alpha and been struggling for a little while on getting forms, specifically text entry, to work well.&lt;/p&gt; &lt;p&gt;Right now the choices seem to break down as &lt;/p&gt; &lt;ol&gt; &lt;li&gt;Wait till the beta&lt;/li&gt; &lt;li&gt;Buy into one of the control framework's: Dave Relyea's, the Netika controls etc.&lt;/li&gt; &lt;li&gt;Float HTML over the silverlight surface.&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;Waiting till the beta isn't on the cards. &lt;/p&gt; &lt;p&gt;There's some obvious downsides for using HTML controls: you can't apply silverlight transformations if you want them to work with the silverlight content, the silverlight content can't really be scaled or rotated. Finally, when I tested I found that there is no z-index interaction - the html control is either on top of the whole silverlight content, or behind it.&lt;/p&gt; &lt;p&gt;So I went to the control frameworks. First downside here is that you generally have to use the layout framework as well - an advantage if you're starting out - but unfortunately a downside if you have an existing application. Then comes the real crunch: There's next to no support for international text at the moment. This is&amp;nbsp;because currently silverlight only supports key codes - there is no character support.&lt;/p&gt; &lt;p&gt;I'd not realised before how much effort goes into supporting international keyboards and&amp;nbsp;making this available as an operating system service transparent to application developers. Look up the &lt;a href="http://en.wikipedia.org/wiki/Keyboard_layout"&gt;wikipedia page on keyboard layouts&lt;/a&gt;. In addition to the layout differences, several international keyboards use chording to compose characters such as ÀÁÂÄĒĔ and local users know and expect these to work.&lt;/p&gt; &lt;p&gt;So finally I have a deep appreciation for how well the html text control works. It supports international characters. Text overflow works. Clipboard entry works. Somehow, interacting with them, they feel different to anything I've seen implemented in Silverlight.&lt;/p&gt; &lt;p&gt;If I have to bend the silverlight app to be able to host the HTML text control, then, for European customers its worth it.&lt;/p&gt; &lt;p&gt;To make the interaction work, there's really two steps.&lt;/p&gt; &lt;p&gt;1) Attach an event handler to pick up the submit that is raised automatically when&amp;nbsp;the user uses return within an input control&lt;/p&gt; &lt;p&gt;HtmlPage.Document.GetElementByID("MyForm").AttachEvent("onsubmit", (EventHandler&amp;lt;HtmlEventArgs&amp;gt;)HtmlSubmitEvent);&lt;/p&gt; &lt;p&gt;2) Pick out the html form values you want and handle as needed&lt;/p&gt; &lt;p&gt;HtmlPage.Document.GetElementByID("MyFormElement").GetAttribute("value");&lt;/p&gt; &lt;p&gt;3) You might want to move the element with the Silverlight control around with any translates you do, do this with CSS properties:&lt;/p&gt; &lt;p&gt;HtmlPage.Document.GetElementByID("MyFormElement").SetStyleAttribute("left", myElementLeft);&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-478852687706518340?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/478852687706518340/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=478852687706518340' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/478852687706518340'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/478852687706518340'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/08/silverlight-forms-choices.html' title='SIlverlight Forms Choices'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5310157731285125704.post-2320925502276897172</id><published>2007-07-28T20:56:00.000+01:00</published><updated>2007-07-28T22:01:46.020+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='politics'/><category scheme='http://www.blogger.com/atom/ns#' term='feminism'/><title type='text'>Technolgy as social driver</title><content type='html'>Just been looking at a program on the typewriter. I was never so struck by the notion that technolgy drives social change in unpredictable ways.&lt;br /&gt;&lt;br /&gt;The basic path here seems to be Typewriter drives industrial office training  (in the form of Pitman shorthand and typing courses). Pitman makes the interesting decision to sell the courses to anyone who will turn up: sells first to men, then to boys and finally to women (purely a commercial decision of course). Availability of lower paid women for office jobs drives a change in how the office workforce is built up, from all men to mainly women at the lower levels (the start of the typing pool). This drives a different form of social interaction between women, taking a few moments after work with coworkers to consider relative payscales with identically qualified male office workers rather than within the home. This is a significant factor in the start of the suffragette movement, the start of modern feminism, one of the most significant social changes in the last century.&lt;br /&gt;&lt;br /&gt;A tenuous thread I know, but could feminism have happened without the typewriter?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5310157731285125704-2320925502276897172?l=ag2au.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://ag2au.blogspot.com/feeds/2320925502276897172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5310157731285125704&amp;postID=2320925502276897172' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/2320925502276897172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5310157731285125704/posts/default/2320925502276897172'/><link rel='alternate' type='text/html' href='http://ag2au.blogspot.com/2007/07/technolgy-as-social-driver.html' title='Technolgy as social driver'/><author><name>John</name><uri>http://www.blogger.com/profile/12534361670006745306</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
