Wednesday 28 April 2010

Democracy 2.0

BBC dot.Roy has a must read page on applying the web and game theory to promote people's ability to vote strategically to promote the outcome they really want

Even in a three-way marginal, unless we know something about how our neighbours plan to vote, you could find that voting for your first choice might end up handing victory to the candidate who was third on your list.

But some web evangelists believe they can solve this dilemma by using the net to build communities with the information to act together to change the electoral outcome.

One site, Count My Vote, asks you to name your preferred candidate - with a guarantee of anonymity - and then tells you how other people in your constituency are voting so you can work out whether it's worth voting tactically.


I can really see the issue here. Though I can't vote in the UK I would vote and support in different ways. For example I generally support Labour. But I doubt I would have voted Labour in 2005 or now. In 2005 I lived on the East End of London and I think I would have made a protest vote for Respect. This would have helped reduce Blair's majority but given that the community has a heavy Muslim population it was a democratic outrage that its Labour representative voted for the war in Iraq, despite the promise she showed.

I now live in North London, and I am pretty happy with our Liberal MP. I would probably vote for her because she has directly helped me and my family.

The complexity of voting in a system where few people actually get to vote for the Prime Minister makes systems like this seem great.

For example the outcome I would want would be a hung parliament over a Conservative majority. The Conservatives are virtually non-existent in my area so there is no danger of them winning much of anything. So do I vote Labour, or should I vote Liberal Democrat? I have on one side a general strategic desire to see Labour retain power. Against this I have personal experience of our Liberal MP and I am very content with her. How would I decide if I could vote?

The web might be able to aid people in making these choices. But be warned, efforts to do this in the US in 2000 failed terribly and Bush ended up taking the Presidency and carrying out 8 years of utter disaster.

Sunday 25 April 2010

New user report in SharePoint 2010

Report Date Range Export to Spreadsheet Filter Paging Size

Summary

Yes

Yes

No

No

Number of Page Views

Yes

Yes

No

No

Number of Daily Unique Visitors

Yes

Yes

No

No

Number of Referrers

Yes

Yes

No

No

Top Pages

Yes

Yes

Yes

Yes

Top Visitors

Yes

Yes

Yes

Yes

Top Referrers

Yes

Yes

Yes

Yes

Top Destinations

Yes

Yes

Yes

Yes

Top Browsers

Yes

Yes

Yes

Yes

Number of Queries

Yes

Yes

Yes

No

Number of Collections

Yes

Yes

No

No

Top Site Collection Templates

Yes

Yes

No

No

Customized Reports

Custom

Custom

Custom

Custom



http://technet.microsoft.com/en-us/library/ee663487(office.14).aspx

Friday 9 April 2010

Example of solving complex grouping with SharePoint 2007 Calculated Value Column

Okay let me put the cards on the table: the syntax of calculated value column in SharePoint is a mess.

Recently I had to deal with creating views based on a field called Topic. Topics were grouped in to logical areas. Each area had so many topics under it. Each file in the Document Library would have a Topic from a pre-set list.

I simply wanted to created views that could show all records that had one of a set of topics. Problem in SharePoint is you can only have 10 OR filters in a view!!!! So I had to think creatively.


So what I decided to do was to create a new column on a document library which would assign an Area based on the Topic. Views could then be against this "Area" column rather than having to use filters on Topic.

The logic would be like this.

If Topic 1 or Topic 2 or Topic 3 then Area 1 Else
If Topic 4 or Topic 5 or Topic 6 or Topic 7 then Area 2 Else...


Simple enough to write in say VB or C# but next to impossible to manage in the formula you have to use for calculated values.

SharePoint does provide a CONDITIONAL calculated value that lets you check the value of another column as part of a formal. Its syntax is

=IF(Field=VALUE, True Value, False Value)


If a field is equal to a given value it returns the True Value, else it returns the false value. In the example I was working with I have a column called Topic with a set of pre-defined possible values. So I could write

=IF(Topic="Health Care", "Government", "")


Such a value simple puts the value of "Government" in a column if the Topic column is "Health Care". Not very useful. I extended this using an OR command. An example of using the OR command for a calculated column in SharePoint 2007 is:

=IF(OR(Topic="Health Care", Topic="Education", Topic="Defense"),"Government","")


It is critical you not put any returns or extra spaces in to formula. Yes I said that right.

So now imagine you wanted to create something like the logic above:

If Topic is Health Care or Education or Defense then set value to
Government Else
If Topic is Banking or Investment then set value to Finance Else
If Topic is Retail or Wholesale then set value to Commercial.


You can do this by embedding IF commands in to your argument, but it will quickly produce a really ugly mess which is very hard to even imagine not to say code.

What I did was a bit simpler. In the above example I would create 4 new columns. The first three columns would be of this form

Column1 Calculated Value

=IF(OR(Topic="Health Care",Topic="Education",Topic="Defense"),"Government","")

Column2 Calculated Value

=IF(OR(Topic="Banking",Topic="Investment"),"Finance","")

Column3 Calculated Value

=IF(OR(Topic="Retail",Topic="Wholesale"),"Commercial","")

So I have created 3 columns which are either empty or contain an area depending on the Topic. Now to create the Area I want I just created a fourth column which combined the text of the other 3

Column4 Calculated Value

=Column1&Column2&Column3

This may seem a strange way of doing thing but it avoids the almost impossible to maintain code of embedded logic in SharePoint column formulas. Even though the code is not pretty it is far less ugly than code you would produce the other way. I spent about one hour trying to make a single formula and found I could not manage it, the code was just far too ugly.

Thursday 8 April 2010

BBC - dot.Rory: #debill v #ge2010

BBC - dot.Rory: #debill v #ge2010: "As the controversial bill was completing its passage through the Commons last night, there were thousands of tweets monitoring the debate - and not a little fury when the bill got through, with 189 voting in favour, and 47 against. Here's how they voted."

BBC News - Shadow cyber spy network revealed

BBC News - Shadow cyber spy network revealed: "A 'complex cyber-espionage' network that penetrated various organisations including the Office of the Dalai Lama, has been uncovered by researchers.
The shadow network targeted government, business, and academic computers at the United Nations and the Embassy of Pakistan in the US, among others.
It was used to steal at least 1,500 emails from the Office of the Dalai Lama, the researchers said.
The attacks were thought to originate in the city of Chengdu in China.
Specifically, the researchers, from the Information Warfare Monitor and the Shadowserver Foundation, said they had evidence of 'links between the Shadow network and two individuals living in Chengdu'.
Information Warfare Monitor comprises researchers from Ottawa-based think tank SecDev Group and the University of Toronto's Munk Centre for International Studies."

Wednesday 7 April 2010

BBC News - AOL plans to sell or shut down Bebo

BBC News - AOL plans to sell or shut down Bebo: "Internet company AOL has announced plans to sell or shut down the social networking site Bebo.

The company said it was unable to provide the 'significant investment' Bebo needed to compete with its social networking rivals.

The news comes just two years after AOL bought the site for $850m (£417m at the time). "

Friday 2 April 2010

BBC News - Microsoft founders lead tributes to 'father of the PC'



The "father of the personal computer" who kick-started the careers of Microsoft founders Bill Gates and Paul Allen has died at the age of 68.

Dr Henry Edward Roberts was the inventor of the Altair 8800, a machine that sparked the home computer era.

Gates and Allen contacted Dr Roberts after seeing the machine on the front cover of a magazine and offered to write software for it.

The program was known as Altair-Basic, the foundation of Microsoft's business.


BBC News - Microsoft founders lead tributes to 'father of the PC'

Thursday 1 April 2010

Just viewed Windows 8 demo

I have just had the opportunity to view an early pre-release of Windows 8. Let me tell you, this thing is going to change everything. The UX had been entirely redesigned to look like nothing that has previously been created by Apple and introduces an original unique interface all its own. Its hard to fully describe. The screen radiates a 3D workspace around the new monitor allowing you to work in depth without special glasses, its really amazing. And the items actually slightly resist your hand motion depending on their relative importance. Amazing.

The other amazing feature is new core multiplying. Core multiplying means that Windows 8 can make 2 cores in to 3 cores without loss of performance. Its really amazing. I tested it in a 12 core machine and it gave me 18 usable cores.

Voice recognition is really taking a step forward, actually it is almost like having a conversation with someone at your local taco stand. Sure it does not UNDERSTAND English but it gets the job done. I was able to open a Word document, dictate an entire letter, and save and email all with voice commands.

What is really amazing is Microsoft embracing of Open Source everywhere. The kernel is actually Linux and all of the Windows code is now fully Open Sourced, as is the new versions of Office 2013 that will ship with it and the still pretty secret IE 10.

But the most unique feature is the new boot-up sound file, which does not play music but simply says clearly upon start "April Fools"