Friday, November 21, 2008
 
   
 
Conchango Blogs Minimize
blogs.conchango.com

blogs.conchango.com

  1. SQL Server 2008 - Why I'm not waiting for SP1!

    Whether and when to upgrade to SQL Server 2008? It seems that there is still a school of thought that the release version of a product is not to be trusted and that the best policy is to "wait for SP1". Now this has never made much sense to me, not least because Service Packs can mean quite different things in different products. Sticking with SQL Server 2008 though, I believe there are plenty of reasons to upgrade now and NOT to wait for SP1.

    Firstly, SQL Server 2008 is an extremely high quality and stable product and has already notched up a great many server-years of collective testing, both before release and after. I personally have been developing and testing with it on projects for a year now and it has been the best quality preview version of the product I've ever worked with. SQL Server 2008 RTM is in very much better shape now than SQL Server 2005 was at this point in its life.

    Secondly, it has to be said that the history of SQL Server Service Packs is not an entirely happy one. There have been some very unfortunate problems with SQL SPs. For sure, the SQL Server team will learn from their mistakes but the fact is that an SP is never going to get the level of testing at customer sites that a major release gets. This is natural enough because SPs rarely contain new functionality so it's harder to justify the investment needed to build and test with the beta versions of SPs.

    In terms of quantifiable risk then, installing a 2008 service pack right after release is potentially far more risky than installing SQL Server 2008 RTM right now.

    Thirdly, there are the real returns you could get from upgrading to 2008 even with minimal effort. Upgrading from 2000 to 2005 was and is a big undertaking. Between 2000 and 2005 there is a whole raft of new features, deprecated features, breaking changes - all of which adds up to a lot of regression testing and potential development effort to take advantage of new features. In comparison, the additional effort to move from 2005 to 2008 or from 2000 to 2008  is a far smaller piece of work. Fewer new things will be broken or need re-working. Plus you can take advantage of new features like compression and policy based management with zero change to existing applications.

    Andrew Fryer says that you may have to wait a long time for a SQL 2008 SP. At the UK User Group meeting last night he also had a suggestion. Even if you aren't upgrading your servers yet, at least install and use 2008 Management Studio so that you can take advantage of the new features in the tool!

    Published Fri, 21 Nov 2008 16:31:42 GMT by David.Portas
  2. Scrum Problems With Managing Scope

    IT projects failures are unfortunately not uncommon.   We hear stories of projects that never deliver, projects that are either late or well over cost.  One of the main reasons identified for this is Scope being out of control.

    In waterfall projects all the scope is identified at beginning of the project, when we engage with our customers here the emphasis is on making sure we have all the requirements as it will be expensive to change them further down the process.  Therefore the customer imagines all the things they could possibly want out of this project and typically they throw everything in including the kitchen sink, because they know it will cost them if they think of it later.  The result of this is we build a lot of features that have little value and/or will never be used.

    Also because the customer is often only really engaged at the requirements gathering stage, as the requirements are handed off from one group of specialists to another, defects start to creep in.  See tree attachment for illustration of this idea, the clasic cartoon.

    Worse still what the customer wants by then end of the project has probably changed, their business has moved on.  The end result can be mistrust and blame between the customer and the IT supplier.

    Scope Management in Scrum

    In Scrum we embrace change, we accept it happens and we try to keep the cost of change down by ensuring a constant flow of valuable software to our customers, using good engineering practices which keep the cost of change low and by involving the customer throughout as part of the team.  Yet I still come across Scrum projects that struggle around scope, where the customer perceives they are not getting what they asked for, and that mistrust starts to build up between the customer and supplier.

    Iron Triangle 

     

     

     

     

     

    It is widely accepted that in a software project you can’t fix Cost (people, equipment, etc), Scope (what we are going to build) and Time (when we are going to finish), otherwise it is ultimately Quality that suffers, because we work our team harder, or we ask the team to cut corners, usually both.  Yet our customers want to know what they are going to get for their money and when it is going to be finished.  Unfortunately this is where as an industry we fail, rather than saying ‘I’m sorry that’s not how it works’, we are all too ready to fix all the corners of the iron triangle, even though we are setting ourselves up for failure or at least a good chance that it is perceived as a failure.

    Our customers are so used to getting  their demands accepted by their suppliers that it makes it very difficult to get them to see that they would get a much better product if they didn’t fix scope, cost and time.  I could talk about what to do if you have fixed scope, cost and time, as many Scrum projects end up that way, but I am not going to because I think we all have a duty to try to change that. Whatever approach you take in software development fixing them all will increase the chances of failure.

    In Scrum it is usually Scope that we see as the best variable to be able to adjust.  We know we have a big release at the end of July and we have got a fixed budget, therefore scope is the one left open to us.  Scrum allows us to Inspect and Adapt so we can always make sure we are building the most important features, this works only if the customer (Product Owner) is involved throughout the project and they understand how to maximize their return on investment.

    The Scrum projects that I see struggling with scope are usually those that haven’t got a customer working as part of the team, or they don’t understand how to behave as a Product Owner.  The key is education, education, education and we need to start as early as possible.  When the contracts are being signed make sure we don’t set ourselves up to fail, engage with the client and do everything possible to persuade them that by working together we can achieve the best possible results.  It always amazes me that customers are prepared to hand over all that money and responsibility to the supplier; they wouldn’t do that for any other complex project, so why do they do this in software development? Because they don’t understand it scares them, it is easier for them to hand off all of the risk to the supplier.  It doesn’t have to be this way, make it a collaborative venture, play the game together and share the risk.  Make our contracts more about how we will work together, possible future blog.

    When you have your customer as part of your team, make sure they know what is expected of them.  Education is one of the responsibilities of the ScrumMaster.  The key thing that teams struggle with is their scope not being managed well; make sure the Product Backlog is in a good shape for planning.  In a future blog I will look at Product Backlog farming, the ongoing effort the product owner and team need go through to make sure the backlog is just good enough for Sprint Planning to occur.

    If the Product Owner has an understanding of the teams velocity and has an estimated Product Backlog, they will be in an excellent position to make trade off calls around scope.  I often find that teams don’t have a Product Backlog Burndown, this is a sign that teams don’t know where they are in terms of burning through the work.  We measure ourselves against how much working software we have done, therefore the lack of a Product Backlog Burndown is usually an indicator that we (including the customer) don’t know how much work is left.  A dangerous position to be in and one that could lead to the blame game, when it turns out we are not where people assumed we were.

    Burndown 

     

     

     

     

     

     

     

     

     

     

     

     

    Summary

    ·         Don’t fix scope, cost and time, we need to change the expectations of our customers.

    ·         Involve the customer as part of the team; make things visible to them throughout.

    ·         Educate the customer so they understand what is expected of them, give them training.

     

    Published Fri, 21 Nov 2008 16:05:00 GMT by mark.summers
  3. Angry biker or skilful professional?

    I had a wry smile on the way to work the other day. I was passing a crossing, the lights were changing to green. A motorbike that had been crawling past the cars had reached the front, but people were straggling across. He blipped the throttle a few times. Nice aftermarket pipes – lovely tone, but probably not road legal. Anyway, the stragglers looked across with annoyed expressions and one of them blurted a few rude words. I carried on past the junction smiling.

    It wasn’t that I was enjoying those melodic pipes. Nor was it that I missed my biking days. I had insight into the situation that others may not have. I knew that the biker had slowly controlled the bike past the line of traffic. So that he could make a nice smooth move away from the lights when they turned, he had timed it nicely to be still slowly moving as he reached the front and the lights changed. Trailing the rear brake to keep it nicely controlled so the forks wouldn’t dive from using the front brakes and make him wobble. Proper forward planning and control. What he hadn’t planned for were people crossing as the lights were going green for the traffic. As a result he was nearly at a standstill when he should have been moving away. His throttle blipping was to keep the bike balanced for a little longer so he did not have to put his feet down and for it to end up being a clumsy affair. Blipping the throttle gives the motorbike a little bit of angular momentum which stops the bike toppling over so readily – just enough to let the stragglers to clear the way. You know the trick with the big spinning disk in a briefcase that people struggle to turn? Or the plain spinning top that only falls over when it loses enough of its angular momentum.

    So where the guilty stragglers saw an act of aggression I saw an act of very fine low speed handling and forward planning – hence my smile.

    I saw parallels with consulting and presales. The frustrating scenarios where your skill and experience are misunderstood by clients who sometimes see time, budget and resources as excessive. Sometimes all you need is a bit of time to explain the low speed riding, forward planning and angular momentum so they can see it for the very desirable excellence and not an act of aggression, or in consulting terms: greedy profiteering. Sometimes you don’t get that chance and the client selects a supplier who doesn’t either and you just have to keep walking. Sometimes that is my job – to help my future clients really understand how we couple innovation with the rhythm and quality of manufacturing whilst building their awareness of the risks and complexity where it exists. All of this we do so that we can engage with a complete understanding – eyes wide open. Not just a proposal to win the work. A proposal to work together with understanding and transparency and empowered to succeed.

    Published Fri, 21 Nov 2008 14:52:34 GMT by James.Saull
  4. Can Microsoft Surface handle your drink?

    At the Tesco wine fair the Microsoft Surface table turns from a bar in to a rich immersive experience for the wine enthusiasts to explore content though touch and natural gestures. The punters had their own take on the five Ss in tasting wine.  So as spit became swallow and their hand-eye coordination slowly declined over the day, you waited for the inevitable to happen as the enthusiasts reached out to interact with the digital content with their wine glass sat precariously on the Surface tabletop.

    Microsoft provides instructions on how to clean and care for the Surface tabletop but I couldn't find any documentation about the unit’s ability to cope with sizeable spillage.  What would happen if a pitcher of beer accidentally got knocked over?

    I don’t have an answer from Microsoft but here’s my conclusion...

    Microsoft is targeting customers in the retail, hospitality and entertainment businesses.  Sheraton Hotels and Harrah's Casino have already rolled out Microsoft Surface. They offer social experiences in public situations which expose the table to all manner of drinks – hot or cold, soft or alcoholic – and it’s inevitable that spillages will occur. Would Microsoft target restaurants, hotels and casino’s if they didn’t have confidence that the unit could handle some spillage?  As of yet I’ve not heard of any Surface owners suffering any problems from drink spillages

    The horizontal form factor provides a collaborative experience and enables object recognition by users placing physical objects on the tabletop. It’s one of the unique features of Microsoft Surface and something that lends itself so well to drinking and dining experiences.  If Microsoft is serious about the horizontal form factor then the unit would need to withstand food and drink spillage. And they certainly are serious – Microsoft is currently working on an R&D project (SurfaceWare) that will measure the amount of liquid remaining in your glass by projecting a laser through a glass with an optical prism designed in the base. The bar staff could then be alerted at the perfect time to offer the diner a top-up. More evidence that Microsoft sees Surface being a great device for bars and restaurants, where punters can browse virtual wine cellars and food menu’s, ordering and then dining off the table.

    And why would Microsoft take waterproofing lightly?  Consider what is inside the unit. At the core of the unit is a high-end PC running Vista, five infrared cameras and a rear projector.  Protecting the £8500 unit from liquid spillage is a given.

    And anyway, waterproofing computer devices is nothing new.  We already have waterproof laptops that can withstand coffee or water spills, and even be taken in to the shower! Plasma Product Innovations has developed a chemical that can make any material 100% waterproof. Wired had an interesting article on this waterproof technology.  So we’re not short on waterproof technologies.

     

    We've had several beer spillages on our unit but everything still functions and performs as it should. So until I hear otherwise from other Surface owners out there I will assume that the unit can more than hold its own with drink spillages. 

    Published Fri, 21 Nov 2008 11:03:00 GMT by Richard.Wand
  5. Microsoft UK Agency Event

    On Tuesday 11th November Paul Dawson, Matt Bagwell and myself attended the Microsoft UK Agency Event which was run by the Microsoft UK Agency Team.

    It was held at the Adams Street Members Club and had over 70 attendees from the UK's top agencies.

    Our own Dawson gave a presentation on how Conchango partner with Microsoft and also gave a demo of some of our latest work including the Tesco work that was shown at PDC.

    For a full run down of the night click here to read Matt Pilgrim's blog (Thanks Matt).

    Published Fri, 21 Nov 2008 10:10:00 GMT by Michelle.Flynn
  6. Object Recognition leads the way for Microsoft Surface

    During the Surface workout Isobel demonstrated the magic of Microsoft Surface.  The one feature of Microsoft Surface that Bel didn’t touch on was object recognition.  Yet object recognition is one of the features of Microsoft Surface that really excites me. The five cameras inside the unit can recognise objects placed on the surface based on shapes or special codes such as domino tags.  Recognising an object can trigger a specific digital response.

    The Tesco Wine application recently showcased at the Tesco London and Bristol Wine Club Fair events demonstrates object recognition.  The wine coaster is tagged so the enthusiasts can immerse themselves by having direct control of data such as winemaker’s notes, suggested food pairings, information on the vineyard etc  The table turns from a bar in to a rich immersive experience where the enthusiasts can explore content though touch and natural gestures.

    Bel was more interested in playing with photos of her favourite Cbeebies characters than discovering the vinification process for a New Zealand Syrah so I left her to it.  However, object recognition lends itself so well to child development. Children learn through sight, sound, smell, taste and touch and it’s important to encourage sensory activities.  Sensory play aids sensory development. Without object recognition Microsoft Surface falls short of a full sensory experience. But by blending virtual and real worlds we can create a sensory environment.

     

    Imagine an educational game where Isobel is asked to select a fruit beginning with the letter 'A'.  With previous technologies we would immediately think of a virtual fruit bowl where the user clicks on the correct fruit.  With Microsoft Surface Bel could move or spin the apple using natural gestures but this still isn’t going to stimulate her sense of touch as Surface cannot register textures, temperature etc.

    But what if Bel picked up a ‘real’ apple from a fruit bowl and by placing the apple on the surface the  camera recognises it and unlocks rich educational content such as a video of how apples grow or an animation showing the nutritional value of apples.

    Sensory deprivation is an ailment of the advancement of technology.  Children need a balanced multi-sensory diet yet technology can be guilty of neglecting the senses. This simplistic example illustrates how object recognition can blend the rich digital content with real physical objects to allow technology to enhance a sensory environment.

    Microsoft isn’t the only one developing multi-touch tables.  I am excited about SmartTechs SMART Table as it offers great educational opportunities and SMART technologies are specifically targeting school children and classrooms. This multi-touch table is scheduled for launch in Spring 2009 so it will be interesting to see how it stands up against Microsoft Surface.  The unit is reported to cost around $3,500 less than Microsoft Surface, and will come with a complete suite of educational software.

     

     

     

    From the details I’ve seen on the SMART table it doesn’t appear to offer object recognition but a far cheaper entry price makes it more affordable for cash-strapped schools. I hope SMART Technologies develop object recognition to really unleash the potential and help define a new era of interactive learning centres.

     

     

    Published Thu, 20 Nov 2008 23:56:00 GMT by Richard.Wand
  7. Expression Newsletter Article - A Step-by-Step Introduction to Styling, Templating, and Animating in Expression Blend

    Just a note to say my first part of a six part Silverlight tutorial for Expression Newsletter has just been sent out, you can read the full tutorial here:

    http://expression.microsoft.com/en-us/dd279541.aspx

    - hopefully after this tutorial you will be familiar with the basic concepts of styles, templates and storyboards within Blend and produce a styled control like this:

     

    Next time, we'll add some advanced styling and animations, but this should be a gentle introduction to Blend for noob designers and developers interested in designing for Silveright, WPF and Surface!

    Please let me know how you get on with the tutorial, this is how my colleague Sari approached the tutorial - showing how free you are to be creative in Blend!

      i
    Published Wed, 19 Nov 2008 16:37:00 GMT by felix.corke
  8. Breaking down traditional barriers

    Isobel has just turned 4 and uses a computer mouse to (attempt to) navigate sites such as CBeebies.  She finds the mouse challenging and frustrating.  At such a young age her motor movement abilities are still developing.  Combine the motor skills required with spatial concepts necessary to effectively use the mouse and it’s easy to understand Bel’s frustration when she tries to click the Charlie and Lola thumbnail but instead finds herself watching Finley the Fire Engine. 

    Bel is slowly improving her mouse control but it’s taking time.  While Bel’s thoughts are concentrated on the mastering of the mouse and the precision control required to click the tiny thumbnails or links, her experience of the Cbeebies web site is somewhat reduced.

    Interactions such as drag and drop create more frustrations as Bel struggles to keep the pressure on the mouse button.

    I thought it would be interesting to see how Isobel finds an interface that she can interact with pretty much as she interacts with everyday objects.  So yesterday Bel came to our Conchango studio so I could see how she handles Microsoft Surface.  I didn’t give her any warning that she was about to become a guinea pig for me to see how she would interact with the tabletop using touch and gesture.  Not a mouse in site.

    As Bel stood next to the interactive tabletop I subtly introduced her to the water attract screensaver, being careful not to describe the unit as a computer to see whether the ease of direct digital manipulation would disguise the technology.

    Isobel was immediately captivated by the water simulation that creates ripples when touched.  In no time she was hands-on.  There weren’t the usual oohs and aahs as she played with the water but if you remove the technology from this experience then what is so amazing about it?  To me Microsoft Surface is a complex mix of hardware and software, but to a 4 year old the technology is invisible - it’s not much more than a table that she can do some interesting stuff on.


    I pointed to one of the access points, Bel reached out and tapped it.   Next, I scrolled through the demo applications.  Instinctively Bel reached out and copied my actions scrolling through the application with surprising ease.  Bel did not display any of the hesitancy she normally displays in digital-situations but much more the confidence of a non-digital situation.

    We then spent the next 30 minutes working our way through the photo app, the music app, photo paint, the piano and Identity Mine’s air hockey.

    I preloaded the photo application with photos of family & friends and some of Bel’s favourite TV characters. Isobel instinctively started to explore and manipulate the photos.  She found selecting, moving and orientating the photos very intuitive using natural gestures. She took a little guidance to get a handle on photo resizing but by the time she’d played for 15 minutes she had got to grips with it and could shrink and enlarge the photos with relative ease.


     

    With the surface piano Bel had no problems playing the usual tuneless racket that she has mastered so well on her grandma’s piano. Air Hockey, a game she isn’t familiar with, required no introduction to as she demonstrated her dad’s competitive streak with a spirited performance against Matt.

    Photo paint took a few minutes for Bel to master as her paint strokes caused the canvas to move but soon she got the hang of this as she created her masterpiece.  An amusing observation was how Isobel wiped her painting finger on her trousers each time before she dipped her finger in the virtual paint palette.  This highlights how the direct manipulation and natural gestures of Microsoft Surface can blur the real and virtual world.

     

    The experience was certainly memorable for Bel who listed all her friends at nursery that she is going to tell about Microsoft Surface. Isobel found the whole Surface experience fun and easy to use and the touch and natural gestures overcame the challenges of normal PC operations.   I now have some explaining to do as to why Father Christmas can’t fit a Surface unit on his sleigh.

     

    If you have any ideas of how Microsoft Surface can work for you and generate new revenue streams then please contact us on talktous@conchango.com to arrange for a demo (and a play) of this fantastic technology.

    Published Wed, 19 Nov 2008 15:07:00 GMT by Richard.Wand
  9. The Tesco @ Home story, an exercise in innovation

    It's a few weeks now since I got back from the Microsoft Professional Developers Conference (PDC) in LA. This was a different conference for me. Normally, I would be at a conference to present on topics like Experience Design, Digital Innovation, or some user interface related technology / design topic. And this would be to a mixed audience of business people, designers and developers.

    However, there I was at a conference with 6,000 of the most technical... well, the word they would use to describe themselves is 'geeks', so I'll use the same word! I have to say, 90% of what was going on went completely over my head. As they all dived into their "300" and "400" sessions I took comfort in the Microsoft shop and got some Zune accessories!

    I was there because we had been working with Nick Lansley, Head of Research & Development at Tesco.com. Tesco.com is the world's largest online grocery retailer, and is a significant part of everyday life in the UK and other parts of the world.

    What we had been working on was an innovation project. A project that was aiming to drive additional value for Tesco customers, whilst at the same time as driving Tesco's business. Its working name is Tesco@Home and it lives in your kitchen or close by!

    Here's what we did:Open

    The Day 2 Keynote - Tesco and Conchango are at 1h34mins - high quality WMV

    A more in-depth walk-through on Channel 9 with technical depth from Matthew

    At Conchango, we do a lot of innovation work. In fact, this work is increasing day by day, as many of our customers are realising that simply keeping their heads down, and trying to carry on as usual despite huge changes in the business and consumer environment, they would rather generate new value through innovation. Not only are these new business models that work better in today's climate, but they are driving brand and emotional connectivity to their customers. If we make things memorable and differentiated the customer is likely to repeat their interaction and is likely to tell others (loyalty+experience=advocacy - something I'm now calling "Carbone's Law" after this guy).

    Total Experience Design is what allows us to uncover potential solutions that are outside the 'usual channels'. This is work that is very tightly focused on an insight into users or customers, and aims to drive out through an experience planning process, things that will make a tangible difference not only to a business bottom line and brand perception and differentiation, but also to customers' lives. The nirvanah for these projects is to create functional brand utility. Something that is tightly associated, or even locked into, the brand, but is just quite simply 'useful'.

    This isn't a case of going out and asking customers what they want - although we do this, what we don't do, is just go ahead and do what they ask. As Henry Ford is often famously quoted as saying; "If we had gone and asked people what they wanted, they would have said 'faster horses'". Our job is to understand the feedback that customers give, and derive through insight and careful process, their true needs and motivations - then to create solutions that help them meet those needs. In this way, we can come up with the car, when people thought the best they could get was a fast horse.

    OpenWe ran this process with Tesco, and acknowledged and gained more insight into a variety of needs from customers. Mostly these were around the fact that although they were incredibly loyal to Tesco, the online grocery shopping experience is fundamentally flawed. Not through design, but simply by its nature. An online grocery shop means you have to coordinate your own personal diary and those of the other people in your household, it also means finding 50 or 60 items in a store that holds 30,000 products.

    A lot of initiatives on Tesco.com have been around trying to reduce the headaches that these fundamentals cause customers and they've done an exceptional job at making what at first use might be a 90 minute process down to about 20-25 minutes.

    With this project, we wanted to go further though, and create a tool that would surprise customers.

    Once Total Experience Design drives out the customer touchpoints we believe we can affect, the Experience Planning process sets out a series of Experience Principles. These are things that we know our solution needs to be, or needs to feel like. They are not tangible solutions or designs, but they inform that design and help you know when you've succeeded.

    In the context of this project, these principles, were things like "Surprise Me" - this principle was about getting away from the perception of some that Tesco is trying to take over the world. The result of this principle was that we allowed customers to plug in their own messaging, email and social networks, as well as their own calendars using public services like Windows Live Calendar or Google calendar. All that Tesco do is provide a useful tool to bring them all together in one place. The expectation from customers is that Tesco is trying to own their lives - so we upset this perception and pleasantly surprise them by offering an open tool that allows them to use what they want, and away from any potential 'big brother' fears that Tesco is spying on them.

    The other experience principles drove out things like the ability to create shopping lists as and when you think of things, with minimal interaction or friction. For example, simply waving a barcode at your webcam when you've run out of something without having to write it down, or wait til you 'go shopping' to remember what it was.

    Leaving aside the insight on Tesco customers, and our ongoing insight into technology, social and other trends, that we have been gathering and learning over the last two years, the actual design and build process for this application took about 10 weeks. From idea to working prototype. Not bad.

    The result is an application that is well crafted from a design and user experience perspective, and incredibly well architected technically. It only requires a small amount of re-plumbing work once the relevant API's from Tesco, Microsoft and Google are in place, to make it appropriate for taking out to test in real customer's homes.

    The classic way businesses would have done this was to envision such a project, create a business case, probably then validate that business case using expensive management consultants, and then secure a large amount of money to deliver the whole thing and take it to market. This way of approaching innovation is quite frankly crazy. For every idea that you have that might actually work, you'll throw away 5 or 10. As Bill Buxton says: "Don't be precious about your ideas, just be good at having lots of them".

    So, creating small innovation projects that last no longer than 12 weeks, that have relatively small budgets, and takes them out to test market quickly is exactly the right approach. You have to be prepared to throw a lot away though; but in the long term this is still more cost-effective, as the £3million you saved when you didn't roll out a huge new service that then turns out to be a big white elephant and ultimately gets canned, goes a long way in several 12 week chunks... and then ensures that when you do put a 'bet' on something, that its value to the business and to customers has already been proven in the real world and it's a pretty sure thing.

    The other thing that made this project work, was that it had buy-in and support from the top level of the organisation. When you do things that are potentially business changing, the only way you can drive them through to the general blank looks you get from many of your colleagues is if you can say "The CEO wants this" - in this case, we had that level of support and it helped the project get delivered under-budget and ahead of schedule, as well as hitting all of Tesco's objectives for it.

    Innovation is the way to survive global recession. Those that do it well will profit in a way that is not at the expense of their customers, but in their interests. A clever trick, but one that's been done before many times. This isn't the first downturn we've ever had...

    Finally - back to the Tesco@Home project... An interesting thing about this was that we developed this application to work on the PC's that Tesco customers have in their homes. Consequently, it was designed to work on Windows XP and Windows Vista. So you can imagine our slight recoil of horror when Microsoft told us that they were going to run it on an unreleased brand new operating system: Windows 7. So it was a pleasant surprise when we loaded it up and it all worked! Testament to the engineering effort that's gone into Windows 7 I guess. Oh, and the quality of our engineering too!

    Anyway, I thoroughly enjoyed the whole experience. We had a great team from Conchango and Tesco working on this - and some unbelievable professionalism and support from Microsoft during the latter stages and into PDC itself. Anyone who says that Microsoft "doesn't get it"... well, see for yourself before making your mind up.

    Nick enjoyed it too! You can see how much right here: (Nick Lansley's blog on the topic).

    Thanks all for making this thing happen. Looking forward to getting into your homes soon to help us test it out in real life!

    Published Wed, 19 Nov 2008 12:33:35 GMT by Paul.Dawson
  10. Modifying web.config at runtime for unit test

    Lately I've had the need to use the test framework from within Visual Studio. However, one problem which i came across was trying to change the web.config appSettings and connectionString to reference a local database.

    Below is the solution I have came up with:

    [ClassInitialize()]

            public static void ChangeWebConfigValuesForTest(TestContext testContext)
           {

                // Get the configuration file.
                ExeConfigurationFileMap map = new ExeConfigurationFileMap();
                map.ExeConfigFilename = "c:\\localpath\\web.config";
                Configuration webConfig = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);

                // Change the app setting value
                AppSettingsSection appSettingsSection = (AppSettingsSection)webConfig.GetSection("appSettings");
               appSettingsSection.Settings["valueToChange"].Value = "TestValue"

               // Change connection string setting
               ConnectionStringSettings connectionStringSettings = webConfig.ConnectionStrings.ConnectionStrings["DBConnectionString"];
                connectionStringSettings.ConnectionString = "Data Source=.;Initial Catalog=TestDB;Persist Security Info=True;User ID=testuser;Password=password";

                //Save the config file
                webConfig.Save();

            }

    Published Wed, 19 Nov 2008 08:47:00 GMT by Gordon.Duthie
  11. The elephant in the room

    There's an elephant in the roomThere was lots of talk at Tech-Ed last week  about concurrency and parallel programming.  It’s becoming a real issue because we’re in the middle of a shift in the way Moore’s Law works for us.  Up until around 2002, we were getting a “free lunch” because processors were getting faster and more powerful and our software would just run faster without us having to do anything.  Recently, however, physical limits are being approached which slow down this effect.  Nowadays we increase processing power by adding more and more “cores”.  In order to take advantage of these, our programs must divide their workload into tasks that can be executed in parallel rather than sequentially.

    We’ve got a big problem on our hands, though, because writing concurrent programs is not easy, even for experts, and we, as mere software developers are not trained to do it well.  The closest that a lot of developers get is to manage the synchronisation of access to shared data by multiple threads in a web application.

    64 Core, 2 TB TaskManager This is a real screen shot of Windows Task Manager on a machine with 64 Cores and 2TB Memory.  I wouldn’t be surprised if we have entry level 8-core machines next year.  If we don’t do anything to take advantage of these extra cores, we may as well just have a single core machine.

    There have been thread synchronisation and asynchronous primitives in the .Net framework since the beginning, but using these correctly is notoriously difficult.  Having to work at such a low level means that you typically have to write a huge amount of code to get it working properly.  That code gets in the way of, and detracts from, what the program is really trying to do.

    Not anymore!  There is a whole range of new technologies upon us that are designed to help us write applications that can take advantage of multi-core and many-core platforms.  These include new parallel extensions for both managed and unmanaged code (although I won’t go into the unmanaged extensions), and a new language (F#) for the .Net Framework.

    Parallel FX (PFX)

    The first of these technologies is collectively known as Parallel FX (PFX) and is now on its 3rd CTP drop.  It’s deeply integrated into the .Net Framework 4.0 which is scheduled for release with Visual Studio 2010, and consists of Parallel LINQ (PLINQ) and the Task Parallel Library (TPL).  The latest CTP (including VS2010 and .Net 4.0) was released on 31st October and a VPC image of it can be downloaded here (although it’s 7GB so you may want to check out Brian Keller’s post for a suggestion on how to ease the pain!).

    This is all part of an initiative by Microsoft to allow developers to concentrate more on the “what” of software development than on the “how”.  It means that a developer should be able to declaratively specify what needs to be done and not to worry too much about how that actually happens.  LINQ was a great step in that direction and PLINQ takes it further by letting the framework know that a query can be run in parallel.  Before we talk about PLINQ, though, lets look at the TPL.

    Task Parallel Library (TPL)

    The basic unit of parallel execution in the TPL is the Task which can be constructed around a lambda. The static Parallel.For() and Parallel.ForEach() methods create a Task for each member of the source IEnumerable and distribute execution of these across the machine’s available processors using User Mode Scheduling.  Similarly, Parallel.Invoke() does the same for each of it’s lambda parameters.

    A new TaskManager class allows full control over how the Tasks are constructed, managed and scheduled for execution, with multiple instances sharing a single scheduler in an attempt to throttle over-subscription.

    The TPL helps developers write multi-threaded applications by providing assistance at every level.  For instance, LazyInit<T> helps you to manage the lazy initialisation of (potentially shared) data within your application.

    Additionally, a bunch of thread-safe collections (such as BlockingCollection<T>, ConcurrentDictionary<T>, ConcurrentQueue<T> and ConcurrentStack<T>) help with various parallelisation scenarios including multiple producer and consumer (parallel pipeline) paradigms.

    Finally, there’s an amazing debugger experience with all of this.  You can view (in a fancy WPF tool window) all of your Tasks and the route they take through your application.  Moving around Tasks is no longer a game of Thread hide-and-seek!

    Parallel LINQ (PLINQ)

    Setting up a query for parallel execution is easy – you just wrap the IEnumerable<T> in an IParallelEnumerable<T> by calling the AsParallel() extension method.

    AsParallelExtensionMethod 

    In the latest CTP the overloads of AsParallel() have changed slightly making it even simpler to use.  In the example above I’ve specified a degree of parallelism indicating that I want the query to execute over 2 processors, but you can leave that up to the underlying implementation by not specifying any parameters.

    The ForAll() extension method, shown above, allows you to specify a (thread-safe) lambda that is also executed in parallel – allowing for pipelined parallelism in both the running of the query and the processing of the results.

    Running the example above produces the output below.  Although it’s running on a single proc VPC, you can still see that it’s using 2 threads (hash codes 1 & 3).  What’s interesting is that each item is both selected and enumerated on the same thread – this is really going to help performance by reducing the amount of cross thread traffic.

    AsParallelOuput

    Exception handling in the latest CTP is also slightly different from earlier releases.  Tasks have a Status property which indicates how the task completed (or if it was cancelled) and potentially holds an exception that may have been thrown from the Task’s lambda.  Any unhandled and unobserved exceptions will get marshalled off the thread before garbage collection and are allowed to propagate up the stack.

    Daniel Moth did an excellent presentation on PFX at Tech-Ed which you can watch here.

    F#

    So what about F# then?  Well, it’s a multi-paradigm language that has roots in ML (it’s oCAML compatible if you omit the #light directive).  So it’s very definitely a first-class Functional language – but it also has Type semantics allowing it to integrate fully with the .Net Framework.  If C# is imperative with some functional thrown in, then F# is functional with some imperative thrown in (both languages can exhibit Object Orientation).

    Data and functions are equivalent and can be passed around by value.  This, coupled with immutability by default, means that side-effect free functions can be easily composed together in both synchronous and asynchronous fashion and executed in parallel with impunity.  All-in-all this makes it very powerful for addressing some of the modern concurrent programming problems.  It’s not for every problem that’s for sure – C# is often a better choice – but the fact that it can be called seamlessly from any .Net language makes it easy to write an F# library for some specialised tasks.

    Luke Hoban and Bart de Smet did some great talks at Tech-Ed on parallel programming using F#, and it blew me away how appropriate F# is for problems like these.  I’m really getting into the whole F# thing so I’ll save it for another post next week.

    Published Tue, 18 Nov 2008 18:37:20 GMT by stuart.harris
  12. Are you smarter than a 6th grader? (continued)

    Congratulations to all the winners:

    David Welker

    jabs

    Pedro

    Caligari

    Ula U

    Pedro Miguel

    vera73

    Thank you all for your participation, You are smarter than 6th grader or maybe on the same level :-)... just kidding.

    You all got it right!  Some of you were impatient to get the correct answer so I'm doing this post a bit earlier than I should.

    All of you that are interested in the answer to the problem that I posted yesterday, click on the following link and read comments.

    http://spforsquirrels.blogspot.com/2008/11/are-you-vera73-than-6th-grader.html

    Enjoy

    Published Tue, 18 Nov 2008 13:37:24 GMT by Natalya.Voskresenskaya
  13. ‘Social shopping’ in an economic downturn: Is the cart half empty?

    "Four of the past five months have now seen negative like-for-like annual sales growth and in July every sector except food recorded falls. Frivolous shopping is off the agenda as most customers concentrate on value and durability and there are few signs the slowdown has yet bottomed out." 1

    - Stephen Robertson, Director General of the British Retail Consortium (August, 2008)

    ‘News’ of the retail gloom we’re facing is hardly news anymore. So what does this mean for social shopping – long predicted to be the next wave in retail?

    Is social shopping ‘frivolous’? Or inevitable? Can retailers capitalise on its positives in a time of tightening budgets and cautious investment? If so, how? And how to navigate the field of aggregator sites like Kaboodle, ThisNext, and Osoyou?

    First, let’s define the term, and take a quick look at where social shopping stands this minute. Has anyone got it right yet?

    ‘Social shopping’ isn’t a new idea.
    To many, shopping has always been – and always will be – a highly social activity; social entertainment that’s fuelled by sharing, contemplating and debating with friends.

    In the digital space, social shopping is where online shopping and social networking meet. To date, it’s been primarily targeted at women and the net-savvy ‘Digital Class’ (18-24 years old). But its applications are far wider ranging. When it comes down to it, people everywhere, regardless of age or gender, want – and seek – reassurance about their purchasing decisions.

    Fine. So should every business with an interest in e-commerce have a social shopping strategy in place? Well, if they’re interested in building a stronger brand, acquiring new customers virally, improving conversion rates from web marketing and selling more – the answer is yes.
    Most retailers today are recognising that shopping, online as well as offline, is a discerning process that requires connection; thus, they’re creating richer, more ‘social’ experiences.
    But social shopping is an approach to e-commerce that’s yet to be done right. Most social shopping ventures have so far struggled to account for the overall experience. They’ve failed to move forward with a balanced appreciation of business requirements, brand management and user expectations and needs. The result: sites that offer one, two or even several ‘cool’, interesting or useful tools, but don’t create a unified brand experience that spans online and offline; that integrates the real-world and the virtual.  

    First, let’s take a quick look at the lie of the land.

    Who’s doing what? And is anyone even coming close?


    Individual retailers

    High street retailers are taking online shopping seriously. They’re starting to offer experiences that move beyond simply displaying products in a virtual shop window for customers to select, click and buy. But while various brands are offering interesting functionality, so far the UK high street has been fragmented in terms of delivering on an ‘overall experience’.

    Just a few examples of the kinds of interactions and experiences standalone retailers are creating:

    •    Oli’s ‘LookBook’. With it, users can discover, share and compare products, and put together collections which they can send to a friend or buy.

    •    The Diesel website. It offers a wish list, send to a friend functionality and the ability to embed products in external blogs or websites. It also has a brand blog called ‘The cult’ which serves to strengthen and build cultural significance.

    •    The Yoox Dreambox. It’s one of the more sophisticated brand ‘share and compare’ functionalities. It lets users collect, send to friends and compare and rate items. It also acts as a profile that allows users to make friends with similar interests.

    •    Topshop’s Facebook application (called ‘Topshop fashion Fix’) It’s no surprise Topshop has a presence here. However, the company uploads only about three items a week for users to vote on (with a simple yay or nay). Interesting, yes, but what’s the real reward for the consumer?

    Some retailers are, at least ostensibly, beginning to bring the in-store and online experiences closer together. Last year, Bloomingdale's in Manhattan tested a ’Magic Mirror’ concept for three days. When shoppers stood in front of the mirror wearing tagged clothing, the mirror displayed other sizes or colours in stock, or recommended suitable accessories. Notably, however, no attempt was made to link this experience to the Bloomingdale's online community.

    Leading among fashion retail and social shopping are brands like Urban Outfitters and Anthropologie. The latter is currently conducting a pilot of an offline desktop boutique – a computer application that lets users browse the retailer’s catalogue and post orders through a desktop button.  It’s an attempt to enhance the brand and tailor offerings to individuals.

    But cool tools and interesting applications alone won’t suffice. How does everything link up? Where’s the experiential synergy?

    ‘Aggregators’


    Over the last few years, there’s been a proliferation of social shopping websites that aggregate information about products, prices and deals, and provide a platform where users can communicate about their favourite things. Sites like Kaboodle, ThisNext,, Wists, Osoyou, Shopstyle and StyleHive are spearheading this trend.
    These sites don’t sell directly but rather serve as product sharing and recommendation engines. They allow users to create custom shopping lists and share them with friends, reflecting the general trend towards and proliferation of UGC (User Generated Content) online.

    Aggregator websites can serve to bridge the gap between shops and their consumers, often providing (at least from the customer’s perspective) a more integrated experience than single-store transactional sites. They provide platforms for shoppers to congregate, communicate and validate each other’s decisions. So why are most products that are socially endorsed online still being purchased offline?

    That question aside, there’s no denying the value of these sites, and large and influential ecommerce companies are realising it. Which explains why we’re seeing Microsoft acquiring Jellyfish and Hearst buying Kaboodle.

    At the same time, more recently, larger social networks that attempt to cater for everyone are beginning to see a decline in popularity, with an emergence in the shopping realm of more niche networks such as Etsy and Fashionspace.

    Capitalising on both worlds (the uber-popular and the ultra-specialised), interior design site MyDeco.com aggregates products from 500 partners, including massive players such as Marks & Spencer, John Lewis, and Argos – and niche retailers like ’Canvas R Us’. Users can create a furnished room, publish it for other customers, and buy the decorations and furnishings within a matter of clicks.

    Where do we go from here?

    For retailers right now, it’s time to do some serious soul searching. One of the first questions:  How much do you invest in building a community on your site versus creating a strategy around existing social networking sites and aggregators?

    The answer: it depends, and it involves a lot more questions. Like:
    •    How do your customers feel about your products? How good are you at finding out, and staying up on it?
    •    How transparent are you as a company, and how transparent are you willing to be?
    •    What kind of social shopping profiles do your customers (and your prospects) have? How deep can you dive to find out how they’re participating in social media?
    •    How much do you know about what people are saying about your brand? Not as of last month or last week, but as of this morning? Whether or not you’re participating in the conversation, how and where is your offering (and your competition’s) showing up in conversational media?


    In the next few months, we’ll see a proliferation of new developments based on the power of community, individualisation within these communities, and new technologies: new approaches to personalised recommendations, better interactive chat, higher quality editorial video and improved access to social shopping across multiple channels and technologies, to name but a few.

    How do you know what’s right – for your brand, for your customers, in the current climate? 

    The answer is in experience planning. Innovating smartly, in a way that balances business requirements, brand management and user expectations and needs.

     

    Want to know how?  Zia.Zareem-Slade@conchango.com

    _________________________________________________________________________________________________________________________________________________  
    1 Hall James, “Worst spell in three years for high street sales,” The Telegraph, August 11, 2008,

    Published Tue, 18 Nov 2008 11:55:00 GMT by zia.zareem-slade
  14. ...every little helps! - The story so far...

    I have kept relatively quiet over the last 18months on this - due to the sensitive nature of what we, at Conchango, have been developing for one of the UK's biggest retailer!

    So to help demystify, clear up and also show some of the innovation that Conchango and their retail partner is involved in, thought that now (seeing as they have just launched their Movies & TV areas of their site) that I would share a little insight into what is going on, where they are heading (without giving away too many secrets) , what we are going to do to achieve this and importantly why??

    So quick background to begin with, our client had an “out the box” white label music download service. It began at the time when all retailers that had any music heritage needed to be in the digital game. They continued with this for almost 4 years until they decided that now was the time to do something about this. Either pull out as there was no apparent money in digital media or actually have a go at it and stay in the game, seeing as physical music and entertainment has a limited shelf life - that although may still be a while off - it will demise.

    Bye Bye CDs

    Conchango arrived in May 2007 to start what would become their Digital offering. Their very own digital download service that used Conchango’s DCP, but importantly would mean that they would become masters of their own destiny.

    The first point of the over arching Digital Strategy is to look at initial ambitions of our client, share some real life scenarios and also help shape and show where the industry is heading - anyone who reads my blog will know that I have one or two opinions on this. This was everything from music, film, TV, printed media, devices and innovation in storage and delivery methods..

    What became apparent is that after initial discussions and some market and growth patterns – is that currently making vast fortunes from retailing music at £0.79 is not going to make millions of pounds overnight, from a retailers point of view, not great - the P&L will look slightly lightweight to say the least in the short term. The future market place was shifting daily (as it does today) and our client needed to be sure that not only were they up to speed on these developments – but needed some radical new thinking about sustainable business models within the digital landscape. Speaking with labels and studios at the start was somewhat frustrating as there seemed to be no movement on what was a traditional business model - however the longer we progressed the more flexible and open to new ideas and concepts both the labels and studios were.

    The 30,000ft view is that the “mass” market consumer is where our clients consumer sit (well as you can imagine from being one of the biggest retailers) and fundamentally a late adopter in the digital media landscape. Their customers may well be behind the curve in terms of gadgets, understanding and fear of not having anything tangible to hold, touch or feel. Digital assets are of course digital files that reside “somewhere” and some will have had poor experiences in the past when after spending money on digital content may have had this "lost" or just no longer working - normally after an OS upgrade and failure to back up those pesky DRM licences, as well as some of the early digital music casualties meant that they had a bunch of files that they could do nothing with. This time had to be different!

    WHY???????

    The mission was to demystify the digital landscape, give the consumer the reassuring hand of comfort that our client delivers in bucket loads elsewhere in their business – then help guide them through the minefield of acronyms, digital lingo and anything relating to what in effect is digital.

    To break down the list and in some kind of order, in how they would deliver a digital offering went something like this:

    • DCP: Conchango’s own platform for the future development of their media offering.
    • MP3: Agnostic media format that is used and can be used across all devices. This was of course the trickiest element of the plan as when we started working there was "talk" and only talk of a full MP3 offering. So when the site was launched there was a smattering of MP3 - which of course was slated in the press and media as only having 1million MP3 tracks - I can tell you it was not for the want of asking and attempting to do the MP3 deals - more like the stubbornness of the labels to buck the trend and allow their music out there as unprotected MP3 files.
    • TV & Film: This traditionally used windows media format that had the digital rights management delivered with it. So they were in the same situation as music - however cracking the movie studios is going to take slightly longer and with more technological advances before we start to see Spiderman 4 unprotected (as such)
    • Streamed Media: To give the consumer the streaming experience direct to them without having a 1.5Gb file sitting on their hard drives (a la SKY, Virgin Media) Rental, On demand and Own – as well as portable.

    At this point I could go on and share the other pieces of the picture that make up the next part of the strategy - but this is only the story so far, and I'm not one for letting the cat out of the bag!

    Digital Success

    Suffice to say that I have sat back and read with great interest and dismay the reports and journalists that see our client as another "me-to" play in this area. That they wouldn't really know or understand where the market is heading and how they would take on the mighty Apple. No matter what anyone does in Digital Media we are all held up against Apple (quite rightly though, what a bloody good job they did - whether you like them or their business model or not they certainly cracked it!)  and although this is unfair to everyone (apart from Zune - who rightly deserve a comparison and poor one at that!) it will remain so.

    So what happens now - you will just need to keep your eyes and ears on announcements and press releases on what happens next - and sure that The Madman may well comment again (maybe not in another 18 months)

    Published Tue, 18 Nov 2008 11:30:51 GMT by Derek.Dunlop
  15. Television Revolution....

    ...be it a small and went relatively unnoticed - but change is a coming!!

    I meant to post this as soon as it was announced - but never got round to actually posting it. So what is happening or happened ??

    Take a relatively successful Sony Television programme that had its first 3 Seasons aired in the UK on Sky 1 - the suddenly not come back for a 4th Season (well on Sky 1 at least) the US network continued both Season 4 and planned to air Season 5 - However still no word on who would pick up the next Season if at all (as we know there are some great US shows that start in the UK and then for a number of reasons get dropped!)

    I then had the added insight from my friends at Sony here in the UK - who told me that they have some exciting and innovative news coming for the next season....

    What was that? What was he talking about? Who was going to get the next Season?

    Rescue Me

    Then in October an announcement arrived that the next Season of Rescue Me (great US show about New York Fireman post 9/11 staring Dennis Leary) would be exclusively aired on......iTunes

    Apple TV

    Yes iTunes picked up the show, and released a "Season Pass" for the entire 4th Season for £9.99 (RRP of these Season is £39.99 normally sell for around £15)

    So why so significant and revolutionary?

    To suddenly see Apple in the TV space premiering shows is a big deal - its not just about resale of digital assets - their Apple TV is now becoming a TV station and starting to air new programmes that are not available on any other UK network at this stage. The user also owns the episodes and can at their leisure re-watch when ever they like. They get an email  to let them know that the next episode has downloaded and is available to watch.

    Forget catch-up TV - Apple have (as I said at the start very small steps) stepped into the broadcast arena in the UK - and if successful may well start to exclusively premier more new TV shows that you will only be able to see via iTunes...

    Published Tue, 18 Nov 2008 09:53:55 GMT by Derek.Dunlop
  16. Team Foundation Error: Windows Live Messenger is not running.

    If you have installed the October 2008 TFS Power Tools (http://www.microsoft.com/downloads/details.aspx?FamilyId=FBD14EEA-781F-45A1-8C46-9F6BA2F68BF0&displaylang=en) and you are running the latest Windows Live Messenger Beta (http://download.live.com/messenger), you may come across the following error when opening Team Explorer:

    image 

    Using the trusty Process Monitor to look for evidence of what the power tool is doing, we can see by filtering on devenv.exe that some calls are made to the registry to determine if MSN Messenger is “up and running”.

    image

    Looking in the registry path specified (HKCU\Software\IM Providers\MSN Messenger\UpAndRunning) and watching it whilst WLM Beta is restarted, it seems that this value is sometimes not updated by the Beta version of Windows Live Messenger and the value stays at 0.  This is likely to be some sort of bug with the WLM Beta however it seems to only occur randomly.  Setting the UpAndRunning value to 2 and refreshing Team Explorer resolves the issue.

    Published Tue, 18 Nov 2008 09:43:50 GMT by Stuart.Preston
  17. New Digital Music Innovation...

    ... or a complete rip off with no real value at all?

    That is the question that is posed with the launch of the "revolutionary new way to buy music" Please welcome..... Datz.com

    Datz.com 

    Revolutionary??? Really is it going to deliver me key recommendations? Work out my music taste - however eclectic /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin; mso-bidi-font-family:"Times New Roman"; mso-bidi-theme-font:minor-bidi;} , and deliver me a new and exciting mix of old classics and the hottest new "unsigned" bands??

    No sadly not??

    This, for those that don't know or haven't heard about it is the pay £99.99 per year and lets you download as many tracks as you want from a choice of millions. Sounds good, but how, where, why...?

    Here is the main hitch "Please note — in order to run Datz Music Lounge software you must have the secure USB dongle that is supplied in the retail pack. If you have lost this dongle or need a replacement please contact us..."  I mean WTF???? It hails itself as a DRM free environment and can sync to your iPod - but is also not yet compatible with Macs.

    But hold on a second - looking for a specific album we come across the traditional WMA DRM files - and upon checking the format information we see that the old DRM rules still apply with conviction (you will comply, you will only transfer 5 time, you must register up to 5 devices, no more or you will be taken to court and jailed for 20 years!!)

    Datz WMA

    The UI and experience is not designed to set the world on fire - and a severe lack of any additional rich metadata or actually any other content at all. Less is obviously more!!

    The business model and plan is that Datz.com allows the user unlimited access and as a subscriber get to download MP3s of any song on the site. There are no restrictions, no protections or so they say - however as just highlighted I've seen a few. You get to keep everything you download - so this is not the old traditional subscription / rental service that the DRM expires each month.

    So in essence what else does it do... well not a lot really to be honest - you can have a look if you really know what you're after for tracks, albums and artists via the search box - and then you have the hassle of downloading one track at a time. The catalogue cannot be viewed, browsed or grouped - in context quite messy really - which will of course scare you average Sainsbury customer (that are selling the USB dongles)  If you then move in to the uber sounding "Datz Music Lounge" here you may uncover or surface exactly what you are looking for - but this area really is for the hearty and less time conscious - rather than type, search, see , buy and download...

    So far Datz trumps almost 1.5million tracks - roughly the same amount of tracks that iTunes, Napster, Virgin & HMV had back in 2005. The site has a lot of the traditional POP tracks - but only a selected few - more deeper catalogue (here we go in the "perceived value" or not of the long tail again!!) which means that in the end the site is not really aimed at the mass mark later adopter - but the very same digital music freaks that for them a one-year subscription would indeed be well worth the £99 in probably 2 days of downloading - and when the year is up - will no doubt have cleared the catalogue of all perceived value to them - and in turn that business model has just in one simple business model reinforced that in fact the music industry still has no idea on how to fluctuate and embrace their own long tail!

    Published Tue, 18 Nov 2008 09:28:00 GMT by Derek.Dunlop
  18. Ideas to Recession Proof Your Development Job

    We are bombarded from all sides with news of recession, job losses and economic downturn and it is natural to question our security within the organization and the job or project that we are involved in.  Now is not necessarily the time to panic, but there are some things that developers can do to increase the likelihood that they will be sitting in the same desk over the coming months - you may not be able to influence the bigger picture of the project or organization, but you can make sure that you are adding value and are perceived to be adding value.

    Below are a few tips specifically for developers - other professionals will have to look elsewhere.  I have no authority in this area and if you want official career advice, please speak to someone qualified, like your HR department.  I provide this list from experience of the ups and downs of the IT market and am sure that if you action these items you increase your likelihood of hanging around. 

    1. Understand Who Is Paying for Your Time : These tips apply for a developer working for a consulting house, a permanent employee at a large corporate or an individual contractor - it is just the precise definition of what a 'customer' is that changes.  The customer is the stakeholder that ultimately foots the bill for the time that you spend at work - it could be another organization, a business unit or even an individual.  It is a well known technique in sales to understand who key influencers are and who writes the cheques, so spend a few minutes finding out (more or less) who writes the cheques.
    2. Focus on the Deliverable : While your personal career objectives may involve learning some cool and new technology, customers under budgetary pressure are less inclined to share your enthusiasm.  Pragmatic development may be the order of the day rather than spending time going off and learning a new framework or library.  In some cases it may be required architecturally, but should not be confused with your desire to play with new toys.  You can (and should) play with the new stuff on your own time.
    3. Understand Expectations :  Spending two weeks coding up something only to discover when it is reviewed that there was a misinterpretation cannot simply be blame managed.  When the cash is tight it doesn't matter who is to blame, only that money was wasted on you.  Make sure that you check, with your team leader or PM or user or customer or even all of them to make sure that everyone is clear about what is expected of you.  This may be quite easy in an agile/scrum environment when you get the opportunity every day to make it clear - so take advantage of the daily stand-ups to make sure that everyone knows what you are up to.
    4. Be Productive : It is easy to get into a rut of 'research', blog reading, MSDN browsing and other things that you think are important.  If you are spending time not coding, make sure that there is a real deliverable that it relates to and always try and check off the time that you are spending on the Internet against your deliverables.  You may find out that you gain an hour a day from saving on emails and blog reading.
    5. Record Your Time in Detail : Never mind the official time recording system that you are supposed to use - it is probably only useful for billing purposes.  Find a way to track your own time against deliverables, and it keeps you on your toes - if you record your time in detail it is surprising how difficult it is to get 8 coding hours a day in.  It is only when you record all your interruptions, help browsing and other non coding tasks that you realise how it affects your productivity.  Be prepared at a moments notice to be pulled in to a review of your time from some arbitrary point in the past.
    6. Work With Users : Users are the primary interface to the customer and working with them goes a long way to greasing the wheels of your perceived value.  If the users like you and feel that you are knowledgeable, helpful and approachable then if the axe starts swinging they will be in your corner.  Having users on your side is the best goodwill to have in the bank - besides, ultimately it is your job to keep them happy anyway.
    7. Identify Opportunities : Developers are at the machine-business interface and are the best positioned to identify the effort required to make changes or additions to the system.  There may be a valuable feature, from a business perspective, that would only take you a day or two to implement - but you are never asked because people are afraid to ask.  Become the idea person on the project - spend a day on a weekend slapping together, say, a view of the data integrated into Excel, or a mobile phone view of a transaction.  You will be seen as someone participating in the solution and may find that your project is extended to allow the new ideas to be implemented.  If you work for a consulting type firm, find out who the account manager is and ping off short little emails of potential opportunities - at the very least it gives the account manager an excuse to come on site, which is never a bad thing.
    8. Don't Drag Your Feet : Developers mostly work on project work - that is work that has a definite beginning and end.  If you think about it, your job is to code yourself out of work - you are paid to get things done and move on.  So don't drag your feet or take longer just because it pays the bills - get finished and get going on the next thing.  Customers like this attitude and if there is budget available they will not let 'Mr. Delivery' out the door.
    9. Pick Up a Fashionable Skill : The last thing you want to do is clutch on to your project and stagnate - if the project does end you may find yourself out of sync with the needs in the market.  Find something in your technical niche that interests you, but make sure though that it is something relevant and talked about.  Have a look at the latest conference proceedings from your chosen technology stack and scratch around - get on the CTP of the latest product that they are punting.  You may find that you have the perfect set of skills for which there is a high demand when the product is released (regardless of macro-economic factors)
    10. Make a Noise : Tweet, Blog, edit the company wiki, write a white paper, answer questions on forums, paint some graffitti on a wall - find something and somewhere that you can make a noise about what you do, who you are and what you are passionate about.  You will be surprised at how decisions are made about your career without you even knowing about them, never mind your consultation.  Make sure that you have some control by being part of the conversation.
    11. Add Value :  Remember that we are all temporary employees - we are only employed as long as we are adding value.  Know where you add value and know the person that acknowledges that value - someone who is considered valuable is unlikely to be chased away.

    Any other ideas?  Add some in the comments, this can't be all of them.

    Simon Munro

    Published Mon, 17 Nov 2008 17:43:00 GMT by simon.munro
  19. Do we still need Managed Hosting now that we have the Cloud?

    ...written in the context of when one plans for an Enterprise Scale Hosted Web Application

    The term Cloud Computing is probably mentioned as often as Web 2.0 was (back in the day) and with it comes to the question of whether we need Managed Hosting anymore. I think its fair to say that it's never going to be a clear yes or no answer.

    Managed Cloud Services

    Will there be such a thing? We will start to see this come up in conversation more and more as people either start to develop serious enterprise scale green field projects in the cloud or include it as an extension to existing on premise services such as federation services or CRM.

    Managed Hosting can mean different things to different roles. If you're the head of IT being asked to provide levels  of support for a system or entire enterprise that demand everything from 24/7 support to a meaningful SLA that protects you financially, you'll see Managed Hosting as a good option. If you're the head of a software development project you'll expect Managed Hosting to include a responsive service desk that can either troubleshoot an environment issue or assist in procuring additional services quickly whilst following a process.

    Co-Lo VS Managed Hosting

    Simply speaking, you would typically engage a Co-Lo hosting company to provide you with not much more than Power, Cooling, Networking and Rack space. You would engage a Managed Hosting company to (depending on your budget) do all the Co-Lo things plus the OS, Server Applications, Security, Capacity planning, 24/7 ITIL certified service desk and much more.

    Cloud Computing and Your Responsibility

    I'm assuming that as cloud computing services mature or Managed Cloud Services enter the picture, the levels of support will start to increase and meet your requirements beyond just the hosting aspect, but for the moment you need to remember what you’re getting for a per £ per hour cloud model.

    Built for Operations

    You will need to 'bake in' monitoring to your cloud services application, you will need to select your preferred method of how to notify and report against application health, you may even need to pay an external party to monitor your application (outside in). Essentially you may find that cloud computing services feels a bit like Co-Lo. Another thing to remember is that your internal operations head count could increase with your newly freed cloud services application.

    So, back to the question – Do we still need Managed Hosting?

    For starters, you may want to consider asking yourself the following questions:

    1. Does your hosted application need an external SLA that you can claim against?
    2. Does your hosted application demand outsourced monitoring and a 24/7 application focused ITIL service desk?
    3. Do you have the skills and know how to build hosted applications that will include monitoring, notification, reporting and self healing?

     

    For more information about hosted applications, feel free to contact us: matt.mould@conchango.com

    Published Mon, 17 Nov 2008 17:37:57 GMT by matt.mould
  20. Are you smarter than a 6th grader?

    Try your problem solving skills.

    Here is the problem I was presented with at the SharePoint Connections 2007. For some reason SharePoint folks did not want to hang out with me, so I've found myself in the company of "SQL Geeks" ... SQL is my OTHER favorite thing...

    So here is the thing, one of the SQL gurus tells me the "problem" he had to solve at his job placement interview, he also specifically mentioned that the problem might not have a solution, it is just a way to explore your way of thinking.

    Here it is:

    1. you have 8 balls. all of them are of the same weight, but one.

    2.   you do not know if this one ball is  heavier or lighter then the others

    3.  you have the scale to measure the weight of these balls, but you can measure it only 3 times.

    I'm opening the competition for all of you to tell me the right answer.  Send you ideas in form of comments.

    The reason why I want to post it is that I've given this problem to my 11 year old son, who in turn was trying to get away from dong his extra curriculum activities (like vocabulary enhancement).

    To make the story short he solved this problem in 1 hour!!!!!!

    Hellooooooo, in ONE hour. it took me the whole flight from Orlando to New York  to even overcome the fact that this "problem" might have a solution.

    Try your self out, I'll post the solution next week.

    Published Mon, 17 Nov 2008 16:15:16 GMT by Natalya.Voskresenskaya
  21. My top 10 Tips for Retailers to combat the economic downturn

    My top 10 tips for retailers to combat the economic downturn

    Introduction

    Clearly we are in the grip of an economic storm, and very few if any retailers will escape unscathed. Most retailers normally experience a downturn in a weakening economy. However, as consumers rein in spending, a downturn is usually not distributed equally among all retailers. The extent of the downturn depends on a number of factors, including the geographic location of stores, the product categories being sold, the specific market segments, in addition to the different channels to market the retailer operates and the lifecycle stage of the distance selling channels.

    There is no question that after the peak trading period there will be more casualties in the retail space, and that the next year or so will see more retailers go to the wall. However, you can still survive a tightening economic climate, and by focusing on both short and long-term objectives can come out of the other side in a stronger position.

    So despite the current economic climate, retailers should continue to explore investments in technologies that provide an enhanced customer experience, improved customer service and optimised operational efficiencies in order to improve their competitive position.

    The tips to follow contain both short-term tactical opportunities to improve performance and increase efficiencies as well as medium to longer term strategic choices that will deliver sustainable and incremental growth.