Sunday, April 25, 2010
Sunday, April 25, 2010 5:32:52 PM (GMT Daylight Time, UTC+01:00) (General | Hardware)

I wouldn’t normally post a rant article on my blog – but iTunes – grrrrr. I really wish I wasn’t forced to use iTunes to sync my Outlook Contacts and Calendar with my iPhone 3GS.

For the last few days I’ve been unable to sync my Outlook 2007 Contacts with my iPhone – and it was driving me nuts.

I tried reinstalling iTunes 9.1, tried the Edit –> Preferences –> Devices – Reset Sync History option. I tried checking all my recurring dates in Outlook – since this was reported in the past as a problem.

In the end – the answer was to roll back to iTunes 9.03 – by doing the following.

As per http://support.apple.com/kb/HT1923

Use the Control Panel to uninstall iTunes and related software components in the following order:

  1. iTunes
  2. QuickTime
  3. Apple Software Update
  4. Apple Mobile Device Support
  5. Bonjour
  6. Apple Application Support (iTunes 9 or later)

I then deleted ALL of the Apple and Apple Computer folders in all of the user profiles – under

<UserName>\AppData\Local
<UserName>\AppData\LocalLow
<UserName>\AppData\Roaming

Reboot my Windows 7 PC – and then downloaded a copy of iTunes 9.0.3 from here… http://www.oldapps.com/itunes.php

Installed 9.03 - rebooted again – and presto – it worked.

You’ve wasted nearly a day of my time Apple – which is worth more to me than your phone and your terrible software.



| Comments [2] | | #  
Monday, February 22, 2010
Monday, February 22, 2010 2:43:37 PM (GMT Standard Time, UTC+00:00) (General)

chrome For a while now I’ve been jumping between IE8, Firefox, and Google Chrome. The browser that’s pulling me in – is definitely Chrome. For starters it’s fast. I mean really fast – even after a solid couple of months of use with a large local cache.

Other sticky features include being able to just type my search terms into the address bar – and execute a search (not unique to Chrome of course IE8 and Firefox both do this). And then the little details – like the screen shot shown here. While visiting one of my regular podcasts with Chrome – just clicking on the MP3 file – from what I’m assuming is a progressive download – launched a very nice little audio player. I don’t know why it’s there – or what ‘auto-magical’ stuff happened under the hood – it just worked. I also like the dark theme I found for Chrome and just ‘clicked’ and it was in – nice and dark and less painful to the eye – just like my dev IDE.

There are bigger issues and tectonic industry shifts at work here. I couldn’t write about them all with enough zest or knowledge to be of interest in this short post (like the future of Firefox now that the Mozilla Foundation’s largest funding organisation – Google – has their own browser) – suffice to say that for me at least- Chrome is sticky – and I’m using it more and more.



| Comments [0] | | #  
Monday, November 23, 2009
Monday, November 23, 2009 6:11:56 PM (GMT Standard Time, UTC+00:00) (General)

A project I’ve been working on recently required a search feature. After a quick look around I thought I’d give a hosted solution a try – using Google Site Search.

After almost a full day of banging my head against the wall – here’s what I discovered…

I) The only difference between Site Search and Google Custom Search – is that you pay for Site Search and you get on-demand indexing – so you’re guaranteed (in theory) to have all of the pages in your site indexed.

II) Once you’ve paid for Site Search – the control panel is effectively the Custom Search Engine Search control panel – with the on-demand option present.

III) There are three ‘levels’ of control you have over the results on your site.

Here’s a quick tour of each – assuming you’ve read just enough of the docs (Here’s a link to the Google AJAX Search API) to know that you need to link to the jsapi JavaScript library – load the search api via: google.load('search', '1'); and then declare your OnLoad function .

Note – for all three options it’s a good idea to have the following style sheet at the top of all your test pages – since you get some ‘freebie’ and fast styling as a result.

http://www.google.com/cse/style/look/default.css

 

1) google.search.CustomSearchControl – with just two lines of code – you can have a custom search page up and running (well not quite two lines – but these are the most important two).

var customSearchControl = new google.search.CustomSearchControl('013652945859801643433:fdsfsqjnea4');
customSearchControl.draw('targetDiv');

The parameter to the CustomSearchControl is the CSE id for the custom search engine you’ve created – and calling ‘draw’ will render the completed form and search results area to the page. The CustomSearch control has a built in ‘searcher’ based on the settings from your CSE control panel. CustomSearchControl is however a little difficult to customize. I found it hard to turn off the default ‘search’ form and place the results where I wanted them. You can add additional searchers – like images and video search via:

customSearchControl.addSearcher(new google.search.ImageSearch(), options);

The main point to note here – is that CustomSearchControl is ‘driven’ by the CSE control panel – including filter options, look and feel etc. all based on the search engine unique ID that you’ll also find in the CSE control panel.

This is custom search with training-wheels on.

 

2) google.search.SearchControl – is the next level down in abstraction – and here’s the ‘Hello World’ example from the docs. With SearchControl – you have to add searchers to the control and then you can tell the control to ‘draw’ itself – just like with the CustomSearchControl. However it’s a little easier to customize. For example:

this.control = new google.search.SearchControl();
// set up for CSE result sets
this.control.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET);

// configure search control
var options = new google.search.SearcherOptions();
options.setExpandMode(GSearchControl.EXPAND_MODE_OPEN);
options.setRoot(resultsDiv)

var searcher = new google.search.WebSearch();
searcher.setSiteRestriction("01365294584480dsadad3:ffsfsfseqjnea4");
searcher.setUserDefinedLabel("Search Results");
searcher.setLinkTarget(google.search.Search.LINK_TARGET_SELF);

this.control.addSearcher(searcher, options);

this.control.draw();

Note the options.setRoot(resultsDiv) highlighted line. This does two things – 1) It sends the output of the search to the ‘resultsDiv’ and 2) it turns off the submit form – which means you can now control the input to search – from your own form – placed anywhere on the page as long as you handle the OnSubmit event and call

this.control.execute(‘formInputValue’);

Again if you link to http://www.google.com/cse/style/look/default.css – you’ll get some instant results that look ok.

 

3) google.search.Search – is the lowest level abstraction – the raw searcher class – and although you still get some good stuff here, you will have to take care of rendering the results to the page. In this case you will need to handle the input and output for every class of searcher you use – Web, Local, Image or Video – all of which are derived from google.search.Search. For example…

// Our searcher instance.
var searcher = new google.search.WebSearch();

searcher.setSiteRestriction("013652945859801616623:ecbgsqjnea4");
searcher.setResultSetSize(google.search.Search.LARGE_RESULTSET);
searcher.setUserDefinedLabel("QCC Search Results");
searcher.setLinkTarget(google.search.Search.LINK_TARGET_SELF);
searcher.setSearchCompleteCallback(this, searchComplete, null);

var searchForm = document.getElementById("search");
if (searchForm.q.value) {
    searcher.execute(searchForm.q.value);
}

Here's a link to a complete example of a raw search with output being handled by the developer (which is in another area of the Google docs – the Code Playground).

While there’s more plumbing required here – you’re still off to a good start. Unlike the sample above for raw handling of the results – you can use the .html property of the result object in the results array – which will tie up again nicely with the linked style sheet - and you’ll have a ‘Goggle-like’ – good-to-go search experience in your site. Like this…

function searchComplete() {
    // Check that we got results            
    if (searcher.results && searcher.results.length > 0) {
        // Grab our content div, clear it.
        var resultsDiv = document.getElementById('results');
        resultsDiv.innerHTML = '';
        // Loop through our results, printing them to the page.
        var results = searcher.results;
        for (var i = 0; i < results.length; i++) {
            // For each result write it's title and image to the screen
            var result = results[i];
            resultsDiv.appendChild(result.html);
        }

        // Now add the paging links so the user can see more results.
        addPaginationLinks(searcher);
    }
}

And that's it. There is documentation available for all of this – but it’s in various locations. The first examples you will see if you come to search via the CSE control panel – will be the CustomSearchControl. The hard part was the ‘orientation’ exercise that I had to go through to understand what the heck I was using, where it fit in the bigger picture of the search API, and how I could create a more customized search experience. The docs are a bit all over the shop in this case – and so it took me nearly a day to write some POC tests and properly understand the relationship between google.search.CustomSearchControl, google.search.SearchControl and good.search.Search.

Hope this post helps to reduce the pain for anyone else that’s new to Google Search and would like to implement a tailored search experience.



| Comments [2] | | #  
Wednesday, November 04, 2009
Wednesday, November 04, 2009 1:15:21 PM (GMT Standard Time, UTC+00:00) (CSS/XHTML | General)

When the desired death of a browser makes it into a full-page editorial of IEEE Spectrum – you know that the issue is finally starting to gain some traction. The tech blogosphere communities have been making plenty of noise about this for a while now. And I’d love someone to do an ‘economic’ impact analysis for IE6 – both in terms of development and security related incidents.

I think the Spectrum article (and the referring blog post from Digg) does a good job of describing the issues – corporate restrictions being high on the list of reasons that prevent a user from upgrading. That said I’d rank Microsoft’s failed Vista strategy which resulted in downgrade options to Windows XP being offered by manufacturers, along with the number of illegal and non-updating XP installations out there as just as large a contribution.

Despite my earlier and naïve attempt to ban IE6 from my site I’ve now successfully bared the browser using IE conditional comments – which is the only reliable way you can detect this version of IE (you can’t sniff for it reliably). I then display the following :-)

your_browser



| Comments [0] | | #  
Saturday, September 26, 2009
Saturday, September 26, 2009 12:28:41 AM (GMT Daylight Time, UTC+01:00) (Enterprise | General)

I’ve been an IEEE and Computer Society member for a couple of years now. Trying to keep up with the IEEE publications along with my RSS Reader and tech news has been a challenge – so I’m sure I’ve missed some good stuff along the way.

However, an article in the September 2009 edition of ‘Computer’ caught my eye: “Formal Versus Agile: Survival of the Fittest” by Sue Black, Paul P. Boca, Jonathan P. Bowan, Jason Gorman and Mike Hinchey.

It’s a great article with good history and an insightful assessment of the current ‘methodologies’ landscape. Unfortunately the article is only available to subscribers of ‘Computer’ at the moment. I hope it will be published more widely in the near future since I think it has a wide appeal.

The author’s comparison of RAD and Agile was particularly interesting – and the following statement about Agile practises is worth quoting…

Most teams purporting to be doing agile software development are not applying the level of technical rigor necessary to succeed at it. Most ‘agile’ teams have actually only adopted Scrum’s project-management practise and have failed to effectively adopt ‘the hard disciplines’ like test-driven development, refactoring, pair programming, simple design (writing the simplest code possible to satisfy the customer’s requirements), and continuous integration.

Their description of the major misconception that ‘Agile = Fast’ was also insightful (when it should be about being responsive to ‘change’).

A great read if you can get hold of it.



| Comments [1] | | #  
Tuesday, September 01, 2009
Tuesday, September 01, 2009 11:09:39 PM (GMT Daylight Time, UTC+01:00) (C# | General | Visual Studio | WPF)

I’m pretty sure that anyone who actually likes to ‘make stuff’ and has been a programmer at least once in their life – has got a short list of pet projects that he/she has started – and maybe even finished :-)

Here are a few of my ‘pets’.

CodeDom class generator for VS2005/2008

addin-screenshot_01This was an early attempt of mine at writing a Visual Studio Add-in - designed to create a class from a database query, table or stored procedure. There’s a ton of stuff like this out there – but I wanted something that generated the class from the DataTable – SchemaTable of an IReader – so that a class could be generated from any query or shape for use with DTOs, reporting, or a simple domain model. You can choose from C#, VB or C++ to generate the class as well as a number of styles of classes – from a built-in IReader constructor, attribute based mapper, or plain old CLR object (POCO). There also doesn’t have to be any data in the result set for this to work since the SchemaTable will be returned regardless.

 addin-screenshot_02

The Add-in also adds an ‘Open Folder’ option to the context menu of all solutions, projects, folders, etc. in Solution Explorer. This feature exists as of VS 2008 – but I wanted it at the top of the context menu – not at the bottom.

You can download the Add-in here at - FiftyEightBitsAddin.zip Just unzip and place the contents of the zip file into any one of the Add-in locations for VS2008.

 

PreCode Code Snippet Plugin for WLW

This is an open source project hosted at Codeplex – a plugin for Windows Live Writer that helps to format code snippets before pasting them into a blog post (or elsewhere). It was written for the excellent SyntaxHighlther from Alex Gorbatchev. It’s a WPF app – and also includes a standalone desktop version for pasting formatted code into any app (ideal for Stack Overflow). Please don’t look at this as a reference WPF app though – it’s more than just a little ‘hacky’. The app that follows is my ‘better’ WPF effort. Visit http://www.codeplex.com/precode for more details, the source code and the installer.

 precode_screenshot

 

Gallery Builder – Desktop and Web

If you follow the Photos link above – you’ll see the results of this application. Yet another gallery builder app – however I’ve spent a bit of time on this one – choosing a specific architecture that I think represents a good balance between desktop and web server processing for small to medium size collections of photos. I’ll be hosting a Wiki soon with docs and the full download including the HttpModule that is used display galleries online (along with a sample app and extensibility features). The module can be integrated into any site and includes full Atom and Rss syndication support, nested galleries, as well as good caching/304 response support.

 0.9.8.1000

A pre-release version of the desktop application can be downloaded from the link below (although it’s not a whole lot of good without the web component). Hand rolling a complete set of control templates for a custom theme in WPF was a great way to get to know the inside of WPF.

NOTE: If there are no other WPF apps on your machine – and this application is the first WPF application you start – the ‘cold’ loading time for a WPF app is very long. Subsequent application loading times are what you’d expect.

GalleryBuilder_0.9.9.1000.zip

 

Yet another Task Management App - DotNetTime

dnt_screenshot

Yet another task/project list manager; only I actually use this one. This is an ASP.Net Model View Presenter application (and hopefully my last Webforms app). I use this to track my own time working on projects or just to ‘monitor’ my own time in general. Implementing multi-language support was a good learning exercise – and until recently this had been my ‘workbench’ throw anything at it hobby app. Now that charting controls are available free from Microsoft – I’ll be adding some charts to the reporting page. Feel free to register and have a play – it’s very basic – but it does what I need. Be gentle too if you’re into web hackery– this was built before my formal introduction to the world of application security and so I wouldn’t be surprised at all if there were XSS or CSRF vulnerabilities (although there shouldn’t be any SQL injection weaknesses – he says).

http://www.58bits.com/dnt



| Comments [0] | | #  
Wednesday, July 08, 2009
Wednesday, July 08, 2009 7:09:39 PM (GMT Daylight Time, UTC+01:00) (General)

fsharpI recently watched Luca Bolognese’s presentation at last years PDC on F#. A really great presentation.

I’ve also been listening to Steve Vinoski’s podcasts on the The Functional Web.

There’s definitely stuff up in this area now. Coming from a non-comp-sci background – and only ever having written statically typed and imperative code (sad I know) – I’m curious to see where this will all lead. Haskell , Erlang, and Scala are all on the rise. CouchDB (backed I think by Lucene for search) and even Yaws (yet another web server) – are just two of several significant projects written in Erlang.

I think it was Martin Fowler who said that the best way to be a better programmer – is to learn another language, and F# is now on my list of things to do.

Technorati Tags: ,,,


| Comments [0] | | #  
Wednesday, July 08, 2009 4:47:00 PM (GMT Daylight Time, UTC+01:00) (General | Hardware)

What will those crazy folks at Apple think of next?

AGB_9599



| Comments [2] | | #  
Tuesday, June 02, 2009
Tuesday, June 02, 2009 4:51:41 PM (GMT Daylight Time, UTC+01:00) (General)

AGB_8209A little experimenting with Microsoft’s new search engine Bing - and I’m sold.

Even TechCrunch thinks it’s a hit.

What’s more – it comes in four different flavours!

When was the last time you searched and felt refreshed and relaxed too! Not even Google can compete with this one. Google in a bottle? Refreshing Google? Not even close...

Have a Bing today…. :-)

NOTE: Not kidding about the ‘fast’ part. Don’t know what’s up with Google over the past few months – both their regular search page and access to features such as analytics and webmaster tools are crawling. Bing – so far at least – has been super quick.



| Comments [0] | | #  
Wednesday, May 20, 2009
Wednesday, May 20, 2009 3:52:54 AM (GMT Daylight Time, UTC+01:00) (General | Security)

rhulisg_01Whew – well after a tough few months I’ve finally completed the coursework towards my masters degree in Information Security - taught by the Information Security Group (ISG) at Royal Holloway,  (via the University of London External System).

The online syllabus is available from the external system and the ISG also provides an overview of the programme here.

In addition to the syllabus and ISG’s introduction - I thought that a personal summary might be useful for those considering the programme.

As per the syllabus – there are four compulsory modules, two optional modules and a final project. A module is really a course, composed of roughly ten units, and lasts the full academic year – from October to the final exam in May.  Here’s a description of the compulsory modules (accurate as of 2008/09 academic year) along with my two chosen optional modules.

IC01 Security Management

This course addresses the major themes of security management, including people, processes and technology with particular emphasis on the role of policy in helping to shape an organisation’s security management strategy. The ISO 27000 series of standards (ISO 27001 and 27002 in particular) are covered in detail. COBIT, ITIL, ISF SOGP along with the DPA, RIPA, and relevant EU directives are examined. So too is the impact of industry specific regulations such as Sarbanes Oxley, Turnbull, Basel II, and HIPAA. Principles of risk assessment (quantitative/qualitative), compliance, audit, and management including excellent lectures from industry leaders help to round out what is probably the most important message of the course; namely the importance of creating organisational awareness and a culture of information security that includes all aspects of the business (and not just the technology). Some of the material on the course was a little dated but relevant nevertheless.  A ‘must read’ companion to this course is Bruce Schneier’s ‘Secrets and Lies.’

IC02 An Introduction to Cryptography and Security Mechanisms

This was a really great course in cryptography and security mechanisms. Pitched at just the right level for non-maths graduates the course explains the roles of all the major cryptographic primitives, including symmetric key cryptography (block and stream ciphers), hashes, message authentication codes, asymmetric (public) key cryptography and digital signatures. Historical algorithms along with well known algorithms like DES, AES, RSA, Diffie-Hellman and others are explained in detail (including worked examples of RSA modulus, public and private key calculations). The use of these primitives as mechanisms for providing higher level security services like data integrity, data origin authentication, entity authentication (unilateral and mutual authentication protocols) and non-repudiation is also explained in detail. If you can get a copy – you really should ready Stephen Levy’s book ‘Crypto - Secrecy and Privacy in the New Code War’ for a brilliant side-by-side narrative of everything that happened in the crypto world from 1975 onwards. It puts the course into perspective and explains exactly what was happening from the 70s to the 90s in the struggle between governments attempting to regulate crypto, and the commercial interests of the private sector. Simon Singh’s ‘The Code Book’ is also another great companion read.

IC03 Network Security

Also a great course on the fundamentals of network communications security including ISO 7498-2, as well as detailed analysis of network, transport, and application level security protocols (IPSec, SSL/TLS, SSH, Kerberos etc.) Other unit subjects included biometrics, email security, wireless networking, firewalls, GSM/UMTS security and an introduction to intrusion detection systems (IDS). One of the texts for this course is Douglas Comer’s brilliant book - 'Computer Networks and Internets (5th Edition)'.

IC03 Computer Security

A bit like IC02 above – there was some important history in this course in terms of the evolution of computer security, operating systems and formal security models including Bell Lapadula, Biba, Chinese Wall, and Clark-Wilson. For me at least – a real eye opener and it filled in a lot of important gaps – especially in terms of access control and some of the things I’d previously worked on in the areas of authorisation and workflow. Units on security in Pentium architecture, Unix/Linux, IBM z/OS and Windows helped to round off theory with real world and practical examples of applied computer security.

OPT5 Secure Electronic Commerce and Other Applications

I’d assumed (which turned out to be partially correct) that this course would be close to my comfort zone given my background in Web and e-commerce development. The course was ok – but I think could be structured better. It’s a pretty large subject (especially the ‘other applications’). The course’s primary objective is to link security specific methodologies to the traditional software development lifecycle as well as emphasise the different security approaches that might be required depending on the context of the application. Information flow analysis, threat modelling and application level risk assessment are covered in the opening units. The TETRA system is used as an initial case study, followed by units on Web application security, Web services security and an excellent unit on identity management. The final units introduce smart cards and the EMV standard. Lots of help from IC02 in this module as secure protocols are described in several units.

OPT12 Smart Cards/Tokens Security and Applications

This course was new to the distance learning programme this year (although taught at the ISG for several years). The accompanying text – ‘Smart Cards, Tokens, Security and Applications’ edited by two RHUL faculty members, Keith Mayes and Konstantinos Markantonakis – is a tour de force on all things in the smart card world. I’ll never look at my ‘chip and pin’ credit card the same way again. A really great course, benefiting hugely from being fresh and up-to-date. Topics included smart card production, smart card development, smart card for mobile communications (GMS/UMTS), banking and finance (EMV), RFID and contactless smart cards, smart cards in video broadcasting (DVB), an introduction to trusted platform modules (TCG/TPM), the Common Criteria (ISO 15408) for evaluation assurance, ID cards, e-passports and a fascinating unit on smart card attacks and countermeasures from Jacques Fournier at Gemalto.

In Summary

Looking back on the last two years, there were times when I wasn’t entirely sure how it was all going to fit together. With the benefit of hindsight I can clearly see the aims of the programme, and how the ISG has attempted to strike a balance between history, fundamentals, and applied techniques in information security.

The ISG has also put a lot of work into creating the distance learning version of this degree. They’ve experimented with multimedia and an online format which for the most part works well (although I still lean towards printed material and my trusty highlighter). Some of the material however (in particular a couple of the lectures in IC01) is starting to show its age and could do with a refresh – or at the least with a yearly update to the introduction for each module.

The course has totally changed the way I view the ‘information age’,  information security, and privacy (having now taken the ‘red pill’). I’m extremely glad I enrolled and looking forward to putting what I’ve learned into practise on future projects. Also looking forward to taking my time and working on my final project at a more relaxed pace over the next year or so.

To be continued…



| Comments [1] | | #  
Sunday, May 10, 2009
Sunday, May 10, 2009 5:59:20 AM (GMT Daylight Time, UTC+01:00) (General | Security)

Speechless really. I’m not often lost for words – but this presentation by Patrick Dixon of Siemens leaves me speechless. Thanks to RFIDs on the Brain from Boing Boing (and Douglas Rushkoff via ‘Joe’).



| Comments [0] | | #  
Monday, February 23, 2009
Monday, February 23, 2009 9:21:00 PM (GMT Standard Time, UTC+00:00) (General)

Update: 30th March

More evidence that my previous hosting co., was in technical meltdown. Look at the Google bot stats below… and see if you can spot when Google and my old hosting co., hit an all time low – and how fast the new hosting company is now serving up pages (click for a larger version).

googleactivity

Original Post

There’s a kind of magical number symmetry to the image below. I recall reading somewhere that trust grows slowly on a smooth curve over time, whereas loss of trust occurs in sharp step-changes down – three in this case.

My web hosting company proved too much to bear last week and after over six years with them, I pulled the plug and switched to a competitor’s service. I hadn’t actually realised how bad the service had become until I switched.

failed_01



| Comments [0] | | #  
Monday, February 23, 2009 7:28:14 AM (GMT Standard Time, UTC+00:00) (Books | General)

study_01 Been quiet here on both blogs and in the photography department – right is the reason why. Did you know that ROM packs better than EEPROM, and EEPROM packs better than RAM? Or that the Vpp contact on smartcards is no longer used because it could be exploited via simple power analysis – preventing PIN entry attempts from being written to EEPROM? No? Well neither did I. :-)

Man I’ll be glad when this is over. Only three months to go and I get my life back. That said I’ve packed more into my cerebral EEPROM in the last six months than I have in the last six years. The Web security and identity management stuff has been particularly good. Not 100% sure yet – but might like to do something in the area of identify management and privacy for my final project.

Watch this space…



| Comments [0] | | #  
Saturday, January 24, 2009
Saturday, January 24, 2009 1:22:46 AM (GMT Standard Time, UTC+00:00) (General | Hardware)

confusion A little under a year ago I bought a Lenovo ThinkPad T61p. I love it. It's a great notebook; solid design, easy to update, a great support site. However when I'm occasionally asked for advice on notebooks and whether I would recommend Lenovo - I sort of say yes but then come unstuck. The reason? It took me several days - and I mean literally several days to work out the various configurations that were available for the ThinkPad T61 range. I'd like to recommend Lenovo notebooks - but I can't just point to a model and say "this one".

A few minutes ago I came across this post on Crunch Gear - Apple’s secret sauce: A simple product line. Great post, and I agree that Apple has got it right by having a simple product line. Too many choices and confusion results. Apple learned this lesson the hard way when back in the mid 90s they had more flavours of Power Macs than Baskin Robins has ice cream - and it was confusing. I don't think computer manufactures are in the flavour business and a simple product line - small, medium and large, would make it easier for consumers to shop, and even easier for others to recommend.



| Comments [0] | | #  
Tuesday, December 09, 2008
Tuesday, December 09, 2008 1:04:47 PM (GMT Standard Time, UTC+00:00) (General)

435px-Billy_Graham_bw_photo,_April_11,_1966 Televangelism in IT - does this work?

I like a good show as much as anyone - but two presentations I came across recently left me.. er.. well - confused I guess.

While looking for content on the topic of identity management (CardSpace along with identity selectors that have been implemented on other platforms) I came across this... a 2007 Friday BrainShare session at Novell. The opening act is impressive.

A couple of days ago I watched most of A Lap around "Oslo" at PDC2008. Douglas Purdy is electric.

Both of these presentations have a few things in common. There's a charismatic host, a series of well rehearsed presentations, plenty of visual queues and powerful message delivery with a corresponding level of applause. I guess it works since I won't easily forget the opening moments of the Novell presentation. (Neither of course can compete with Stephen Jobs who is probably the archbishop of holy product presentations.)

There was some good stuff in both of these talks- and webcasts, podcasts, videocasts etc. are an amazing way to get a veritable firehose of information into your frontal lobe fast. I've learned a ton from good ones.  But sigh... I just don't feel moved the by the evangelical style adopted by the presentations above - in fact until I can get past the style of presentation I have a little trouble concentrating on the message.

I love watching the TED talks - and I love watching presentations that are well rehearsed, well informed - fluid and even humorous. But, if you ask me, the big show we're gonna change your life style of televangelism in IT - looks just a little out of place.

Ah well - to each their own... :-)



| Comments [0] | | #  
Tuesday, September 02, 2008
Tuesday, September 02, 2008 6:58:33 AM (GMT Daylight Time, UTC+01:00) (General)
Monday, June 23, 2008
Monday, June 23, 2008 9:58:33 AM (GMT Daylight Time, UTC+01:00) (General)

Hong Kong airport is now officially my favorite airport in the world. The Airport Express train in and out of town is a breeze. The food court in departures is large and comfortable.

And best of all free airport-wide WiFi that really works. Bangkok and London could to take a page from HK's book of good service. With an airport like this - going to the airport is fun - you can shop, get some work done, relax and then be on your way.

Just me and my ThinkPad T61p after a great weekend in Hong Kong.

IMG_2135



| Comments [0] | | #  
Tuesday, May 20, 2008
Tuesday, May 20, 2008 4:06:41 PM (GMT Daylight Time, UTC+01:00) (General | Security)

Well that's two out of six exams over with - and the end of the silent period on my blog. Successfully sat 'Information Security Management' and 'Introduction to Cryptography' over the past two days.

Both manageable papers, and the first two of six in what has turned out to be a really excellent programme. Check out the Information Security Group at RHUL for the gory details, or the syllabus posted at the London External Programme - MSc in Information Security.

Now that I have my life back... (at least for the summer), watch this space for a re-designed blog and new photo gallery over the coming weeks.



| Comments [0] | | #  
Monday, July 02, 2007
Monday, July 02, 2007 5:15:59 AM (GMT Daylight Time, UTC+01:00) (General)

It's enough to be trying hard to keep up with all there is to read and do these days. The last thing I want in the middle of an engaging and important read - is to be thwarted by an Adobe update. I still love Photoshop, and I'd love to love Adobe as well - but their automatic software updating process is a nightmare. I've had several bad experiences in the past and yet another today...

I was about half way through reading a PDF document - when I noticed the insidious little updater icon appear in my system tray. I ONLY have the 8.0 PDF reader installed and I foolishly thought - surely just updating my reader won't be a problem. Ouch.

First I needed to close my article. Ok - my fault for not finishing it first - but I thought I'd be right back. The updater claimed it was 0% complete when I had just received a message saying that my updates were downloaded and ready for installation. The UI and notifications we so bad that I thought I was done - and so I reopened my PDF. Something died and I got an Adobe application ending error. Then the installer came back to life and I got a new Adobe Reader icon on my desktop and a message telling me to restart my PC. WTF? I'm just updating the Adobe reader right? Not reinstalling the OS! I'm now completely out of the flow of the PDF I was reading and swearing at Adobe as I restart my PC.

On restart I notice for the first time that scrolling an eleven page document in Adobe Reader is incredibly slow and unresponsive - it's not keeping up with the mouse and this is a top spec box (5.4 on the WEI).

Adobe - what have you done? And where are you going?



| Comments [0] | | #  
Tuesday, June 12, 2007
Tuesday, June 12, 2007 4:32:29 AM (GMT Daylight Time, UTC+01:00) (General)

From one of the net's most generous and pioneering bloggers - a great cause...



| Comments [0] | | #  
Saturday, December 09, 2006
Saturday, December 09, 2006 11:38:04 PM (GMT Standard Time, UTC+00:00) (General)

cruft /kruhft/ [back-formation from {crufty}] 1. n. An unpleasant substance. The dust that gathers under your bed is cruft; the TMRC Dictionary correctly noted that attacking it with a broom only produces more. 2. n. The results of shoddy construction. 3. vt. [from `hand cruft', pun on `hand craft'] To write assembler code for something normally (and better) done by a compiler (see {hand-hacking}). 4. n. Excess; superfluous junk; used esp. of redundant or superseded code. 5. [University of Wisconsin] n. Cruft is to hackers as gaggle is to geese; that is, at UW one properly says "a cruft of hackers". This term is one of the oldest in the jargon and no one is sure of its etymology, but it is suggestive that there is a Cruft Hall at Harvard University which is part of the old physics building; it's said to have been the physics department's radar lab during WWII. To this day (early 1993) the windows appear to be full of random techno-junk. MIT or Lincoln Labs people may well have coined the term as a knock on the competition.

http://www.techfak.uni-bielefeld.de/~joern/jargon/cruft.HTML


| Comments [0] | | #  
Wednesday, December 29, 2004
Wednesday, December 29, 2004 4:16:20 PM (GMT Standard Time, UTC+00:00) (General)

Waiting to board before flying back to Bangkok from Singapore. WiFi promotion here at the airport meant downloading and installing Firefox 1.0. WiFi is wonderful.



| Comments [0] | | #  
Saturday, December 25, 2004
Saturday, December 25, 2004 4:14:53 PM (GMT Standard Time, UTC+00:00) (General)

Having finally joined the online community of bloggers what better way to start than to wish you all a very Merry Christmas and a Happy New Year.

 

Tony



| Comments [0] | | #  

search

categories

on this page

ads

archive

Total Posts: 97
This Year: 3
This Month: 0
This Week: 0
Comments: 92