04/08/2008

Microsoft Vista to be open-sourced

Category fun microsoft vista

Full source code ...

/*
       GNOT General Public License!
   (c) 1995-2007 Microsoft Corporation

*/


#include “dos.h”
#include "win95.h"
#include “win98.h"
#include “sco_unix.h"


class WindowsVista extends WindowsXP implements Nothing
{}

int
totalNewFeatures = 3;
int
totalWorkingNewFeatures = 0;
float
numberOfBugs = 345889E+O8;
boolean readyForRelease = FALSE;

void
main {
    while (!CRASHED) {

    if (first_time_install) {
        if ((installedRAM <
2GB) ||
        (processorSpeed <
4GHz))
        {
            MessageBox(
"Hardware incompatibility error.");
            GetKeyPress();
            BSOD();
        }
    }
    Make10GBswapfile():
    SearchAndDestroy(FIREFOX|OPENOFFICEORG|ANYTHING_GOOGLE);
    AddRandomDriver();
    MessageBox(
"Driver incompatibility error.");
    GetKeyPress();
    BSOD();
     }

     //printf("Welcome to Windows 2000");
     //printf(Welcome to Windows XP");

     printf (
“Welcome to Windows Vista”);

     if (still_not_crashed){

      CheckUserLicense();
       DoubleCheckUserLicense();
      TripleCheckUserLicense();
       RelayUserDetailsToRedmond();

      DisplayFancyGraphics();
      FlickerLED(hard_drive);
      RunWindowsXP();
      return LotsMoreMoney,
   }
}


(PS If I knew the originator of this, I would credit him ... but I don't, so thank you whoever you are)

04/01/2008

"a chap called Nathan, a bit down on his luck at the moment ..."

Category humour marketing

An idea for Ed to use perhaps? Although I believe it only works on one special day of the year ...

03/29/2008

Narcissism

Category lotusnotes
Captured from Facebook yesterday:

Lotus Notes heart Lotus Notes

And I bet you thought this post was going to be about the narcissistic tendencies of certain members of the Lotus Software blogging community didn't you ...

03/25/2008

I couldn't have put it better myself, so I shan't

Category odf ooxml
For the last week or so there's been a thread running on Ed Brill's blog about the Open Letter from Microsoft concerning the OOXML v ODF debate.

The debate was capped off (unless somebody chooses to re-awaken it) with an excellent post from Douglas Heintzman of IBM. I'm taking the liberty of reproducing that post in full here, so let me state clearly that what follows is a quote (i.e. is not my original work) from Douglas Heintzman of IBM:

Unfortunately I don't think that the debate about what supports what is terribly productive. If we have to I suppose we could talk about support with a lower-case “s” and Support with an upper-case “S”. Microsoft is certainly grossly abusing the facts, and manipulating the debate when it argues that IBM and other companies are Supporting their file format initiative by “supporting” it in various products. Just because you can put an OOXML file into one of our databases or content management systems doesn't mean that we are “Supporting” their format. That is like saying that Microsoft is “Supporting” ODF because I can save all my ODF documents to their file system in Windows on my hard drive. The fact that Microsoft is publicly arguing that there is broad industry “Support” and momentum for their specification using the examples that it does is a gross abuse of the truth.

Let's be clear. IBM believes that the monopolistic domination of the office productivity market has inhibited investment and innovation. We believe that XML based file formats have tremendous potential to improve workflow, activities, and team collaboration. We believe that a modern XML based file format will allow customers to perform business analytics, generate automated semantic information, improved searchability, and make the information contained in documents much more socially and process aware and increase its overall value to the customer. We think that documents will become much more seamlessly integrated into business applications and processes.

At the end of the day we don't care what specification is used or what it is called as long as it has some basic characteristics. It needs to be technically elegant (which includes simplicity of design) and pragmatically implementable (which includes the pragmatic use of existing well defined standards where appropriate). It needs to be truly open and managed in an open, and by extension predictable, way, not controlled by any one company. Ideally it needs to be unencumbered by by the intellectual property of any company. We have communicated this to Microsoft repeatedly for many years and they have been invited repeatedly to participate in the industry's collective efforts to build such a specification.

It is very true that OOXML and ODF have slightly different design points. ODF is a forward looking specification. It endeavors to do as good a job as possible in providing high fidelity access to legacy documents stored in proprietary formats. It endeavors to do an excellent job of being forward looking and having the feature set and pragmatically implemental design to unlock innovation and allow developers and users to leverage document content in ways that were not previously possible. We have a major strategy project underway and have many very promising research projects that are showing tremendous potential. Many other companies are doing the same. OOXML in contrast was designed to provide excellent reverse compatibility with legacy documents but makes many compromises in design to achieve this objective which compromises its usefulness in doing many of the new things we believe are possible. The ODF TC at OASIS has been grappling with these tradeoffs for years.

It is no wonder that Microsoft on the one hand, and IBM and Google and Oracle and Sun and many others on the other hand have chosen to pursue different strategies. Microsoft wants to preserve its monopoly and its massive market insertion power. I certainly don't fault them. But the interests of monopolies are always in tension with the interests of their customers and the market in large, both in terms of reduced freedom of action (lock-in) and the associated monopolistic pricing, and in terms of the potential innovation and improvement in capability that has been forgone.

Of course I recognize that some people just want to write a letter or build a simple presentation, and they don't care what the underlying format is, and they may very well be happy to pay Microsoft's asking price for what I happily admit is excellent software. I also recognize that as a whole we are all paying an awful lot of money for a very mature technology in a market space that, in large, hasn't seen much innovation for a very long time (the talking paper clip notwithstanding). I believe that we are on the cusp of a “Beyond Office” era with much more socially aware and semantically rich information that organizations and individuals can leverage to create value in unprecedented ways. We believe that we need a specification that is technically elegant, pragmatically implemental, and truly open.

It's definitely worth reading the full debate that culminated in the above, here.

03/19/2008

Closing session chez Microsoft

Category microsoft
Interesting final session! Steven Peyton-Jones (sp?)

Talking about Moore's Law, and how chip design is being limited by the new (and essential!) focus on green computing and power requirements reduction.

The main thrust of this talk is on changing the programming model for parallel processing and multithreading using Atomic Transactions, or "Transactional Memory". Coming soon to a Microsoft technology near you!

This will make a huge difference to the ease of writing concurrent programs. "a year or two rather than a year or five"

The other idea is "nested data parallelism". Further away, but more far-reaching.

I can see how the LINQ technology I wrote about earlier is possibly laying some of the groundwork for this kind of innovation. Interestingly, the research work for this is being done using the Haskell functional programming language. Which figures: as I said about LINQ, this is definitely going down functional programming lines anyway.

Very good and interesting speaker, who is wearing possibly the worst jumper in history.

Day over. Time for a beer...

03/19/2008

LINQ

Category microsoft
LINQ is Language Integrated Querying

Language for handling data within the source code stream. Not just SQL, but XML, objects, datasets, plus anything else that a driver can be written for.

This is almost (almost) like introducing some declarative or even functional programming ideas into the Microsoft languages. May take a while to get the head round the implications of all this!

The whole thing is built on 2 Interfaces: IEnumerable and IQueryable, so very extensible. Nice.

Demo now, of using this in both VB and C#. Very powerful.

Good presenter in this session. A welcome change from the undead we've had so far!

VB9 also supports inline XML. Very very useful, and works like a dream with the LINQ stuff. Dynamic parts of the XML use an ASP-like syntax. So easy....

New project item type of LINQ-to-SQL to help generate low-level data access code using the LINQ technology.

Using this approach to access SQL is effectively, however, doing a lot of dynamic SQL. This could well have performance implications, even if the tools do provide nice ways of defining and maintaining tbat dynamic SQL. Hmm. Ah, he's addressing that concern now. So, this can be used to front stored procs, not just raw tables. The advantage is that LINQ will manage the marshalling of data into simple addressable data access objects. Also works very well with table-valued functions.

All in all VERY interesting...

Time for lunch.

03/19/2008

SQL Server 2008 intro

Category microsoft
Moving from a "database" to a "data platform".

Native support for filestreaming, better datetime handling, geospatial datatype.

Over time will add more and more support for unstructured data types.

Adding more offline support via Synchronisation Services (I know no details)

New capabilities for detailed auditing, and building compliance architectures on top of that auditing.

Transparent data encryption: database-level encryption keys. Backups also encrypted. No changes to applications are required - hence the "transparent" bit. Prevents security breaches due to access to live data files or backups thereof. This is NOT enabled by default, but seems fairly straight-forward to set up and use.

Reliability. Backup compression (hooray!) Turned off by default though. Faster than uncompressed. Only works with SQL Server 2008. Improvements to mirroring, including self-repair of damaged database pages using mirrored copy. Good stuff. Log compression to improve mirroring performance.

Scalability. Better parallelism. Dictionary-based compression for denormalised data in Data Warehouses. Improved resource pool management through the Resource Governor: assign database users to different workgroups based on attributes of the connection string, then manage CPU utilisation cut offs based on pools of workgroups. Can change the resource allocations dynamically.
Higher buffer hit rates through data compression. Performance improvements in Analysis Services.


03/19/2008

Swimming with sharks?

Category None
At the Microsoft launch event today for the 2008 server and dev platform products: Windows Server 2008, SQL Server 2008, Visual Studio 2008.

Live-blogging on a Blackberry!

Warm up act is a troop of drummers. Okay-ish, but not particularly talented or original.

Luke-warm applause for the first opening session speaker. The theme word is "heroes". Event sold out, although there do seem to be plenty of empty seats.

Jon Perera on stage now. General Manager, Application Platform. First topic is "Dynamic IT". Basically this seems to be SOA, both at datacentre and application level (SaaS).

Talking about security now. Things like headless Active Directory servers, and read-only Domain Controllers, to reduce attackability. Encryption and Auditing in SQL Server 2008: sounds good - will have to try that out.

Showing a chart of security vulnerabilities to compare Oracle to SQL Server security. Data is the number DECLARED by the vendor though: how reliable can that be?!

Talking Virtualisation now. Claiming to have been doing Virtualisation since NT4 although that's REALLY pushing it to claim that Terminal Services was Virtualisation! Server 2008 includes some virtualisation technology, so I guess that claim is designed to divert attention from the fact that this is V1 technology. "Democratisation" is the Orwellian doublespeak for undercutting the established market leader on price. Nice.

Demo time. Going past too fast to blog it. Infuriatingly patronising presentation style.

Now talking web and developer productivity VS in other words. Demo of VS 2008. Nice combined CSS editing alongside XHTML code. LINQ technology looks useful: basically SQL inline within the source code. Demo of Silverlight. More half-hearted applause.

Head of application architecture from EasyJet is a guest speaker. Showing new EasyJet site developed using Silverlight 2.0 and integrated ASP.NET AJAX controls. Use of the new Geospatial data type in SQL Server 2008. Cool demo, built in 3 weeks (but not without a lot of help from Microsoft themselves)

It's Business Intelligence time. SQL Server 2008 has enhancements in both analysis and data visualisation via an acquisition last year. The BI offering is in the Gartner Magic Quadrant.

Demo. Integration between PerformancePoint, Reporting Services and Virtual Earth. New simpler Report Designer tool for end user reporting. Very easy: nice. New data-mining add-in for Excel: possibly interesting.

Now have people from Cambridge University on stage. Mainly talking about the geospatial data type again, and how that has been used to provide new insights into historical data sets. At last, some intellectual stimulation!

Roadmap. Lots of product refreshes in 2008. New "Essential Business Server" and Small Business Server versions. Talking about moving to "the cloud" although I'm not sure they're using the term in the same way that the rest of the industry would understand it.

Opening session finished.

03/11/2008

A billion dollars is a lot of money

Category unifiedcommunications sametime
Adam Gartenberg has a good page covering IBM's announcement yesterday that is is investing $1B in Unified Communications development. This is definitely major news, and I'm not surprised to see it picked up so quickly in the industry press - Adam has a number of links at the end of the article.

He also points out that the CNET headline "IBM muscles into Microsoft unified communications turf" implies that Unified Communications is a Microsoft invention, and that IBM is trying to jump on the bandwagon. It is sad how many people, including the press who ought to be better informed, assume that if Microsoft is not doing X then nobody else is doing X either, and are happy to ignore any evidence to the contrary. Sloppy journalism. To be fair, though, the article doesn't really reflect that, so the sloppiness is primarily confined to a poorly-chosen attention-grabbing headline. But for the large percentage of CNET readers who never get past the headline, it still leaves a misleading impression, and CNET is doing them (and every software company who isn't Microsoft) a disservice by perpetuating the illusion that software=Microsoft.

More seriously, though, this part of the CNET article depresses me:

The focus of its strategy is business, particularly large corporations, where purchases and margins are larger, said Steve Mills, senior vice president of IBM's software group.
and similarly in the InfoWorld article
... IBM is ramping up its investment in products like Lotus Sametime to provide unified communications to the largest business customers, which the company defines as having 1,000 or more employees. This is also the sweet spot for IBM's Lotus Notes collaboration software, the latest version of which includes the Sametime unified communications client.
(See Adam's posting for the links to these articles)

That's a short-term view, in my opinion. The vast majority of software revenue over the coming years will not be in large corporations (which make up only a tiny portion of the total business market) but in small/medium businesses. If this is really their approach then IBM runs the risk of once more (as with Notes) being a big fish in a small pond, with (pardon the mixed metaphors) the Microsoft sharks circling ever-closer as they use the cash generated in the small/medium business market to invest in the product and make it a worthy competitor for larger businesses. This is exactly what has happened with Exchange, and with Microsoft Project, to name but two. They were pretty average products to start with, but Microsoft marketed them to death, competed aggressively on price, and eventually built up enough revenue momentum to invest seriously in the products and turn them into something decent. Exchange has its critics, and I'm one of them (trying to sqeeze a semi-structured email world into a half-baked relational database technology was a bad decision the consequences of which they and their customers are still suffering from), but there's no denying that it has received major investment and has turned into something decent in version 2000 onwards. The same with MS Project: a shoddy bug-written pile of rubbish up to and including Project '98, but since then it's gone from strength to strength, and in the meantime Microsoft were successful in fragmenting the PM tools market and starving their competitors of revenue. It's clever market manipulation, no doubt about it, and it works. Whether its good for you, me, or anybody else other than Microsoft shareholders, is 'open to question'.

But enough about 'them' - back to Lotus. The heart of the problem in the decline of Lotus Notes (apart from the deaded 'W' word of course), was that IBM completely failed to realise that the VAST majority of 'seats' (seats -> licences -> money -> investment -> growth -> market share -> seats -> ...) are in smaller organisations. For every seat in a 1000+ business there are many times more in 50+ businesses. And many 50+ businesses are sufficiently mature, complex and wealthy as to have a need for a top quality collaboration infrastructure. In that market, IBM/Lotus is invisible, and Microsoft IS the market. So, unless some of this $1B goes towards making the Lotus strategy both visible and easily accessible to smaller businesses, IBM is playing the wrong game.

So, having had a go at journalists, IBM strategy, and Microsoft tactics, can I say something positive? Er ... it's stopped raining in London for a bit ... will that do?


03/10/2008

Being lazy

Category humour
My apologies for the lack of posts lately. Whatever the title of this post might say, it wasn't pure sloth ... I've been away 3 times in the last 10 days, including spending the whole of last week working on a customer site, and I'm afraid blogging simply slipped down the agenda. Particularly in comparison to, say, trying to get enough sleep, or attempting to work whilst suffering from the mother of all colds.

Normal service will be resumed shortly. There's been quite a lot happening in the IT world - both inside and outside Lotus circles - in the last couple of weeks.

But, in the meantime, while I grab a few days to get some thoughts together, in the spirit of laziness may I give you this masterpiece from XKCD - possibly the geekiest cartoon since, well, the last really geeky cartoon they published. Which I probably also linked to. Oh dear ...