Tuesday, November 23, 2010

Bug in Microsoft Project 2010 – Resource Usage

 

In Microsoft Project 2010, you can create a custom calendar to set your day as something different than the default 8 hours per day.  In this example, I changed the working time to 7.5 hours per day.

image

So far, no problem.  However, look what happens when you view the Resource Usage Tab for the same task:

image

That’s not what I want - I said 7.5 hours per day is the working time!   It should be 7.5 hours per day, not 8 hours for the first 4 days and 5.5 hours for the fifth day.

Monday, November 1, 2010

IT Manager Survey Results So Far…

About 2 months ago, I started a survey on IT Management.  The following are the results so far after about 40 responses.  If you would like to participate in the survey, please feel free to do so by following this link: https://www.surveymonkey.com/s/ITManagerSurveyWeb.

Here are the highlights so far…

image

image

image

image

image

 image

image

Monday, September 20, 2010

The US Customs Rules have not Kept Up with the Realities of Global Knowledge Work

As a global consultant, I travel from time to time to the United States.  When you go through customs, you are questioned to ensure that you are not “working” full-time in the United States without a green card or visa.   

The basic rules for "working" in the United States when you interact with airport customs seem to be as follows:

  • You are not allowed to be a "worker" without a visa or a green card
  • To get either a visa or green card you have to be employable in the US for an extended period of time, e.g. permanently in the case of the green card and at least a year in the case of a visa
  • Getting a NAFTA visa is based on a list of in demand occupations such as teacher, computer programmer or occupational therapist
  • If you do the work in another country they will let you visit your customer in the united states on occasion.  There is no specific rule that is spelled out but in my experience if you go down for a couple days in a month you are ok but if you are going down too often or stay too long the customs officer will start suspecting you are doing "work" in the United States.
  • You are allowed to go into the United States on business if you state that you are in “Sales”, e.g. to close a deal. 

So those are the basic rules, formulated decades ago before the Internet era.  The rules clearly show a very mid 20th century view of "work":

  • "Work" equals hours put in against a job requiring a very specific boxed in role.  The worst thing to tell a customs officer is that you are a "business analyst", "trainer", "strategist", or "consultant".   "Work" equals a job that an average customs officer had heard of, e.g. farmer or secretary.  Try explaining what you do as an "Information architect" and you will be met with suspicion.
  • "Goods" equals tangible imports like lumber, cars, etc.  What if your "good" is a company's online strategy that they just paid you 150k to develop?    What if your “good” is something that you can store on a USB key in your pocket? 
  • "Labor market" is based on the notion that you have to be in the country in order to work.  It misses the point that I can do millions of dollars of knowledge work without any concept of borders. 
  • “Work” means working on premises.  I can work just fine for a US company as long as I work for a Canadian company and ship goods into the United States.  However, if I want to spend 2 weeks deploying the “product” on site, then I’m going to get questioned.

If the goal is to prevent labor from competing with local “workers”, these types of restrictions don’t really provide much support in the digital global knowledge working realm.  Really, the rules basically are a restriction on face to face meetings but place no restriction on me being able to compete first hand with local resources from remote access points.  Instead, they just put a barrier to innovation and physical collaboration as a complement to existing means of digital collaboration.  It means that American companies with offices in other countries (Canada being a great example) need to obtain visas for employees who are jumping across the border for short term stays.

Surely, in the 21st century, we should update this approach and recognize that INCREASING global knowledge workers ability to collaborate across borders is essential to higher productivity, better solutions, and a better economy.   

Given that reality, I would propose a very easy to obtain, very low restriction visa that would enable short term deployments (say 2-4 weeks) across the border.   The governments on both sides could charge a fee and use a Nexus type approach to clearing consultants for the usual security risks.  Once they have the pass, they could go down at any time to deploy solutions, meet with customers, and collaborate with stakeholders with the assumption that 80% of the work would still be done outside the country but that at crucial times there is a requirement for global knowledge workers to collaborate together.  If the United States wants to be the centre of global innovation, it should enable these global workers to actively choose the US as their physical meeting hub for planning sessions, deployments to data centers, training, and collaboration sessions.  This would create a high degree of network effect that would put it at a significant advantage over more restrictive countries such as China, Russia, Middle Eastern countries, etc. 

Zachman Framework Certification No Longer Valid?!

Gartner is reporting that after almost 30 years of being the de facto Enterprise Architecture framework for government, aerospace, and other large scale enterprises the Zachman Framework has collapsed as John Zachman is retiring.

At first glance, it appears that John A Zachman is closing up shop and about to retire, having severed his business partnerships, and appearances are that his son, John P Zachman, will take over the IP trademarks and, as alleged by a former business partner Stan Locke, seek to place the Zachman IP within a COTS package.

A second, and more penetrating glance, into the actual lawsuit itself reveals alleged deceptive practices by the defendant, Stan Locke, and claims of serious and reprehensible actions that are alleged to damage the brand of Zachman.

The capitulation by the defendant in a surprising lawsuit, Stan Locke, will not resolve the concerns or Zachman brand ownership concerns as the damage has already occurred.  This, in turn, raises questions about how the Zachman brand will  regain control after relinquishing that control for so long.

What does this mean for Enterprise Architects that have spent their time, energy and significant financial resources getting certified and becoming practitioners in the EA field?  Based on the current state, it is not clear how this will be sorted out.

As of right now, certification programs have been suspended, John Zachman is exiting the business and the entire framework is now surrounded by legal troubles over who controls the brand, the IP, etc.

Wednesday, September 8, 2010

Copying Data from Project 2010 to Word is Actually Worse than 2007

In Project 2007, copying data from Project to Word was quite painful, resulting in some funky formatting that was hard coded to whatever colors, fonts, etc. you had in your project file.  In addition, when you copied dates, the default format was 9/8/2010 12:00pm which unless your plan is VERY time sensitive is not typically want you want to show in a word document.

So in Project 2010, the Microsoft team seems to have fixed some things but broken others in an effort to improve these problems in 2007.

So take this dummy project plan I created:

ScreenHunter_02 Sep. 08 08.57

I want to move this into Word so that I can include it in a Statement of Work, Project Charter, etc.  What I want is this data in a simple table – I don’t need GANTT charts or anything else…just a basic list of tasks and durations.

So now if I copy this into Word, this is what I get:

ScreenHunter_03 Sep. 08 08.58

Not a bad representation of the plan – certainly better than the output in Project 2007.    However, the biggest challenge here is the indenting – Task 1.1, 1.2, etc. are indented using 4 Spaces instead of a TAB, a proper Word paragraph indent, etc.  If you want to change the size of the indent in word, you’re now stuck with doing a search and replace for 4 spaces and either replacing them or converting them to TABs or Word paragraph indents.

In Excel, there is a further problem – date formatting.  In Excel, the same plan looks like this:

ScreenHunter_04 Sep. 08 09.02

Again, not bad and certainly an improvement over MS Project 2007.  However, let’s suppose that you want to change the date format to a simple date without the day in it, e.g. 8-Sept-10.    In order to convert the cell into a proper date, you have delete the "Wed " from the dates for each day of the week.  Then you can format your dates anyway you like in Excel.  In addition, you have the same problem with indents as Word – indents are handled with 4 Spaces instead of real indent marks, making them tough to remove.

So from my perspective, while the formatting is prettier when copying data from MS Project 2010, its actually less useful and harder to convert to something I can manually format and change in Word or Excel myself.  This is ultimately what is needed – if you are copying and pasting into another document, you will want to use the parent documents fonts, indenting, date formatting, etc. and not Project’s default settings.

Sunday, August 1, 2010

Another Apple IPOD Touch OS - A New Set of Weird Bugs

I have now upgraded my IPOD Touch to IOS 4.0 and already I have experienced some odd bugs:

1. The default Wall Paper is a picture of rain hitting a glass window - not really a bug, but my first instinct was to assume that my IPOD had been dumped in water or had been exposed to humidity and it was warning me!

2. The genius mix (which I have blogged about previously as a major source of bugs) seems to at least work, but the genius database makes some odd choices...it put Glenn Miller into my "Classic Rock" mix and Madonna into my "Indie Rock" mix for example.

3. When you upgrade your OS, it backs up your existing media, wipes your OS and then restores your media through a sync. I had 26 images on my IPOD from my vacation and the restored pictures are there but they are now super pixelated low resolution!

Saturday, February 13, 2010

Zachman vs. TOGAF – Enterprise Architecting for Change

In the past several years, I have been working with the Zachman Framework for classifying and organizing architecture artefacts.  Zachman is quite popular as a framework in large enterprises such as governments, big banks, utilities, etc. because it is seen as a comprehensive way to manage the architecture process. 

In the past year or so, I have been switching over to TOGAF which is a competing EA framework.  In comparing the two frameworks, I have found it to be fundamentally more useful in my line of work for a simple reason – TOGAF is a process for managing architecture change, while Zachman is a taxonomy for capturing the current  state of an enterprise (exhaustively seems to be the goal).

Roger Session’s wrote a good article comparing various EA frameworks, and I agree with his conclusion – Zachman is really a taxonomy and TOGAF describes processes.

The TOGAF process is described by the Architecture Development Method (ADM) :

The ADM has some interesting features that make it more relevant to evolving enterprises:

  1. The ADM is fundamentally iterative, both within a single cycle and through repeated iterations of the full cycle. 
  2. TOGAF provides a prescription for storing, classifying and managing architecture artefacts and solution building blocks at various levels of detail and maturity, promoting an incremental approach to enterprise architecture.
  3. Along with the ADM, TOGAF prescribes many tools for capturing requirements, defining/designing architectures and implementing governance practices. 
  4. The process is explicitly business and stakeholder focused – there is a recognition that architecture has to have a business purpose and not just be for its own sake.
  5. TOGAF explicitly allows borrowing from other frameworks, adapting and tailoring the framework to suit the needs of the business, etc.  So if you still want to use your Zachman Grid, you can continue to do so.

Zachman, in contrast, is about capturing state in a structured way.  It provides no guidance on HOW to do architecture design, HOW to introduce change or HOW to improve the architectural maturity of an organization.  It simply provides the model for storing architecture artefacts.

Zachman also has no guidance for incorporating processes into an architecture state – there is no spot in the grid for defining change management processes, operations processes (e.g. ITIL), project management processes, etc.  TOGAF in contrast compliments these processes quite nicely:

image

In my work, I am finding TOGAF to be an effective framework for working with stakeholders through strategic planning and architecture work, especially for organizations who are actively transforming themselves.  It allows me to define a process for managing the architecture change in a structured manner through an iterative change cycle.  Stakeholders see a PROCESS that involves them through change and growth in their organization’s maturity. 

Sunday, November 15, 2009

My old URL is now obsolete

Before Yahoo Mail became a big deal, it didn’t have its own URL (its currently mail.yahoo.com).  The URL was www.yahoo.com/r/m1.  This URL hasn’t been promoted or used for about 10 years now but it still worked.  My brain’s automatic typing reflexes simply remember that URL as a habit.

As of this week, it finally died!  Now when I without thinking type www.yahoo.com/r/m1 I get this error message:

image

I guess it will take me a while to remember mail.yahoo.com as a replacement…

Tuesday, July 14, 2009

New Details on SharePoint 2010 from Microsoft

Microsoft has released a new site on SharePoint 2010.

In the site, you will find information on SharePoint 2010 for developers and it professionals.

There are some interesting announcements in video format here that are worth exploring.   In the developer video, they show SharePoint integration into Visual Studio 2010.  There are a few new bits in here:

  • Manifest editing tools in Visual Studio
  • Solution Package Designer in Visual Studio
  • New web part editor for Visual Studio
  • LINQ will now support SharePoint lists. 
  • Developer Dashboard will help by providing diagnostic information when developing web parts in SharePoint.

Wednesday, July 8, 2009

Will Google Chrome OS Be Any Different than LINUX, BEOS, Network Computer, etc.?

It was widely announced that Google will be releasing a new operating system called the Chrome OS that will be initially deployed to NetBooks but will hopefully compete with Windows on the desktop.

Yawn…shades of 1995 when Java OS, Oracle OS, Network Computer etc. tried to do the same thing.

If you want a OS replacement for Windows on your NetBook, you can get it today – its called LINUX!  Acer, Dell, etc. all have Net Books that will come with LINUX today.  And if you want to run Google’s browser, you can download it for free.

Can you even call Chrome OS a new operating system when you’re just repackaging LINUX?  KDE and GNOME aren’t operating systems, so why is Chrome? 

"The operating systems that browsers run on were designed in an era where there was no Web," the blog post said. "So today, we're announcing a new project that's a natural extension of Google Chrome--the Google Chrome Operating System. It's our attempt to rethink what operating systems should be."

Huh?  Windows Vista, Windows XP, Mac OS, and LINUX were all designed with the web in mind. 

COREL had the same vision in mind when they created COREL LINUX.  They had WordPerfect, CorelDraw, etc. (even at the time much more sophisticated applications than Google Spreadsheet is today) and they couldn’t sell any more office licenses because Microsoft had a lock on the desktop and was killing them in the office market.  So they made a big splash (and almost killed the company) investing heavily in desktop LINUX, the supposedly Windows killer. 

BE Operating System was an entirely new OS developed in 1991.  Unlike the Chrome OS or Corel, it wasn’t a rehash of LINUX with a new set of apps thrown on top of it.  It was an entirely brand new operating system from the kernel upwards.  It had the same ambitious target – replace Windows with a better operating system.  It had a niche following originally as a replacement to the Apple Operating System (since the BE OS initially only ran on Power PC Chips and not Intel) and then as a Windows replacement.   The company could not gain enough market share and eventually was bought out by Palm.

BeOS_Desktop

The same reasons why these operating systems didn’t survive will cause major challenges for Google.  I found this table from Microsoft to challenge the proposition of the Network Computer:

  PC Network Computer
Operating System Windows Proprietary / Incompatible
Mobile Support Excellent None
Applications > 100,000 Limited / Incompatible
Development Tools Choice Limited to Java
Device Support Thousands Proprietary / Incompatible
Device Model Windows None / Incompatible
Manufacturers 2,500 Few
Networking Choice Requires high speed net
Availability Now Limited
Printer Support Thousands None
Scalability Excellent Poor

With using LINUX, Google can solve some of these issues (scalability for example).  But even OS X for example has less third party support than Windows and far less partners and applications and it is fairly mature.  Google will have none of these advantages.

Sunday, July 5, 2009

Challenges with Sharing Excel Workbooks in SharePoint

In Excel 2007 (and 2003), you can share a workbook.  This allows users to simultaneously update the same file:

ZA100986151033

This feature is used in many enterprises for collaboration, especially in departments such as Finance or Planning where there are lots of shared figures, budgets, plans, etc.

There are some interesting features that allow for some rich collaboration scenarios simply within a single Excel file:

  • Each time that you save the shared workbook, you are prompted with the changes that other users have saved since the last time that you saved the shared workbook. If you want to keep the shared workbook open to monitor progress, Excel can update you with the changes automatically, at timed intervals that you specify, with or without saving the workbook yourself.
  • When you save changes to a shared workbook, another person who is editing the workbook might have saved changes to the same cells. In this case, the changes conflict, and you are prompted with a conflict resolution dialog box so that you can choose which changes to keep

When moving to SharePoint as a document management platform, this feature is no longer supported:

More than one user cannot simultaneously make changes to a shared workbook that is stored on a Windows SharePoint Services 3.0 site. If you want to store your workbook on a Windows SharePoint Services 3.0 site, you should do so only after the collaboration effort through sharing is complete.

Document libraries by design only allow one person to edit a document at the same time.  In addition, they support check-in and out to provide locks on documents during the editing process.  When a user grabs a file for editing from SharePoint, they edit a file on their local machine and then when done it is saved back to the central document repository. 

Excel Services allows for running of Excel files within the SharePoint server, but only in read only fashion.  Excel Services is great for read only dashboards, charts and graphs but isn’t a collaboration service.

For more information on the different options for Excel collaboration, see Microsoft’s article on the subject.

Sunday, June 28, 2009

Bad Search Synonyms

I was on TheServerSide.NET which is one of the leading Microsoft .NET community sites and typed in “SharePoint”.  The result I got was this:

ScreenHunter_01 Jun. 28 09.11

I thought that was kind of amusing, so I tried a few other Microsoft product names:

ScreenHunter_02 Jun. 28 09.12

ScreenHunter_03 Jun. 28 09.12

ScreenHunter_04 Jun. 28 09.14

Wednesday, June 17, 2009

What We Know About SharePoint 2010

Based on the various blog posts and articles, here is what we know from the publically available information on SharePoint 2010:

This is just a preliminary list – Microsoft will be publishing more information when the public beta is released this summer.   Stay tuned as more details about the next release comes out.

Friday, June 12, 2009

How to Use Microsoft Project: Fixed Cost

One of my colleagues ran into a major Project usability problem when he started filling in the cost column manually.  He actually did it by right clicking on a cell in the cost column and selecting “fill down” which he thought might like in excel just copy the formula.  In Project, this copies values and overrides the calculations normally done, e.g. cost = rate * number of hours.

Here is what Project assumes when you type in a cost into the Cost Column:

1. Normally, the cost column is calculated based on the rate (in this example $100 / hr) * the number of hours.

ScreenHunter_01 Jun. 12 08.03

2. If I type in a number into the cost column, I can replace the calculated cost with a new cost – in this case, I have specified it to be $1200.

ScreenHunter_02 Jun. 12 08.05

3. Project takes the cost I typed in and calculates the DIFFERENCE between takes the original calculated cost and what I typed in as a FIXED cost, e.g. in this case $400.  If you insert the Fixed Cost Column, you will see this value.

ScreenHunter_03 Jun. 12 08.08

4. If you do not understand what Project has done, it becomes really confusing as to how to get rid of the fixed cost.  Simply changing the duration or hours doesn’t remove the cost.  For example, if I change the duration to 2 days it doesn’t recalculate the cost to be $1600 – it keeps the $400 in fixed cost and makes the total cost $2000.

ScreenHunter_04 Jun. 12 08.09

5. If you have added a fixed cost my mistake, the simple way to fix the problem is to set the fix cost to $0.00 manually.  This resets to the default behaviour and now your cost is calculated normally.  See below – now that I have changed the fixed cost to $0 I can easily change the duration and the cost is calculated correctly.

ScreenHunter_05 Jun. 12 08.11  

I have been using Microsoft Project for ages and didn’t know this behaviour existed.   I found this problem because one of my colleagues was not an experience Project user and started filling in values like in Excel.  However, this is nothing in Project that warns you or points you to the solution – it took me digging through help and google to figure it out.

If you are new to Project, keep this simple lesson learned in mind – do not manually change the cost column.  Let Project always calculate it for you.  If you have a specific fixed cost for a task, then insert the Fixed Cost column and type it in there.  This will avoid a lot of confusion.

Thursday, June 11, 2009

Yet Another Facebook Bug

I have posted previously on bugs in Facebook, and I ran into another one just this morning.

Facebook has a friend suggestion feature that lists people who you might know based on how close they are to your existing friends.  It’s a great way to find people but I found a bug in it.  It presents you a list of potential friends and for each one there is a little X that you can click to take the person off the list (e.g. it was a bad suggestion and you don’t know them).  Here is the bug: if Facebook runs out of further suggestion, only the text disappears and the picture stays behind.  ScreenHunter_01 Jun. 11 08.20

If you go back to the home and come back in, the whole lists resets and the problem goes away.

Sunday, June 7, 2009

SharePoint vs. Confluence Comparison

I was at a client site this week and they currently have Confluence and are moving to SharePoint 2007 and wanted to understand the differences between the two products.  I have personally implemented both products in different environments and like both of them.  Each as its strengths and weaknesses.

Here is a side by side comparison:

  Confluence SharePoint 2007
Company

Made by Atlassian in Australia.   In my experience, Atlassian has wicked customer service, a great support network, etc.

Made by Microsoft.  SharePoint is one of Microsoft’s most successful products and Microsoft has made a major commitment to the product.  Support in my experience is standard product support but doesn’t have the tender love and care you get from Atlassian staff.
Consulting Support Limited, but in some markets quite good.  Look for open-source experts as Atlassian has strong ties to the open source community.  The software itself is Java based. Huge consulting market from small shops to major consulting companies such as Accenture.  One of the major pluses of the platform is the talent pool to help implement and configure it.
Price Free if you are a non-profit company and you ask them nicely.  Server license is available ranging from $800-12000 depending on number of users. Pricing starts at about $5000 but for intranet cost is per named user at about $75-94 a user.  200 users would cost about $20,000 vs. about $4,000 for confluence.
Search Good with confluence content and Microsoft documents.  No federated search model included.  Did you mean feature allows for synonym searches. Enterprise level search engine with relevance ranking, synonyms, large scale searches (up to 500,000 documents easily and up to 50 million in theory), and federation model.  Out of the box search can index other web sites, file servers, etc. and plugins through third party products can index other systems such as OpenText, Oracle, SAP, etc.
Look and feel customization If you’re changing the logo or basic colours you’re fine.  If you want to create a whole new interface, you will find it a challenge.  Confluence uses SiteMesh templates which are a set of XML/HTML files that need to be customized directly.   In my direct experience (and I have done lots of HTML editing), wading through the library of templates is not a trivial undertaking. SharePoint supports customization at multiple levels through separation of layout, look and feel, and master pages.  SharePoint Designer is provided as a GUI based tool for creating new themes as well.  Template system is significantly simpler than Confluence in my experience to customize.
WIKI Stronger than SharePoint in supporting WIKI mark-up.  Rich text editor is not bad but not as strong as SharePoint. WIKI template provided as a site template.  WIKI mark-up is limited to embedding links in text, but rich text editor make WIKI mark-up less needed in most cases. 
Security LDAP based.  Authorization model is 100% stored in Confluence, so groups need to managed within the product.  Single Sign On is not provided. SharePoint is Active Directory based by default.    Single Sign On is provided with Windows using Internet Explorer – users already logged into Windows are automatically logged into SharePoint.  Groups in SharePoint can map to Active Directory groups which makes management somewhat easier than Confluence.
Web Parts Confluence supports a plugin model and there are some available.  Product availability is small in comparison to the third party web part market for SharePoint. Long list of web parts are supplied out of the box for SharePoint.  Massive third party market for Web Parts including integration with major vendors such Oracle, SAP, OpenText, etc.  Web Parts can be easily built in .NET if custom parts are required.
Document Management Version control, linking and embeddable.  However, there is no check-in/out, content types, workflow, etc.  Much stronger in SharePoint including features such as check-in/out, content types, meta-data, integration with Office 2007, workflow, authorization models, etc. that are typical of an enterprise document management system.
Integration with Office No support. Very strong integration as long as you’re on Office 2007.
Other Features Blogs, discussion forums, etc. are provided. Too many features to name, but SharePoint is an enterprise portal with dozens of additional features including: reporting integration, dashboards, dozens of web parts, workflow, forms server,  etc.  See this link for a complete list of features.

Comparing the two products is a bit of an apples to orange comparison because the markets for each are quite different.  Confluence is primarily a collaboration tool for small to medium size enterprises.  SharePoint is an enterprise portal that includes collaboration but also dozens of other portal features.  

In my direct experience, SharePoint is more user friendly for end-users – creating pages, changing content, managing documents seems to be more intuitive than in Confluence.  If you’re a power WIKI user then its less of an issue but I handed it to an HR department and found they struggled with it.  SharePoint requires a lot of pre-configuration to get it right but if its set up right I find the adoption tends to be easier.

If you really want a strong WIKI collaboration tool and don’t have much money then Confluence is a very good product.  The support you will get from Atlassian is awesome and they are constantly improving it.  However, if you’re looking at enterprise collaboration, document management, search, etc. then in my experience you may be looking at an upgrade to SharePoint in the long run as your user base becomes more sophisticated.

Friday, May 22, 2009

White House Data Feeds are Baby Steps

The White House announced to great fan fare that it would be releasing data feeds of its public information collected by hundreds of agencies within the US government.  They have launched the first iteration of this service.

ScreenHunter_02 May. 22 09.10

My interest in this feed is to use this data to build mash-ups, visualization applications, and web applications that use this data.  There are many such applications that use existing data feeds such as Amazon data, Google Maps data, Microsoft Live data, etc. in interesting ways.   Amazon in particular has had an XML based REST API available for years (in fact Amazon sells a book on how to use it)  For example, Frucall provides a mobile comparison application that uses a variety of publically available APIs to compare products across retailers and present them to your mobile device. 

So with hundreds of data feeds, imagine the visualization, comparison, calculation and searching applications that could be built on US government data.  As well, imagine then directing these applications to mobile devices, XBOX 360, IPhones, Blackberries, etc.  in formats that work ideally for those platforms.

Unfortunately, based on what has been launched, this vision is not really feasible.  Here is what I can see from what is currently available:

  • There are only about 50 data feeds.  Given the number of US agencies, this is a very small sample of the data available.
  • The site provides data in a variety of formats such as XML, CSV, KML (google earth) and ESRI (GIS data).  The feed that would be useful for apps is the XML feed, as explained by their own site (“Better suited for consumption by automated applications capable of handling raw XML files”).  There are only 8 feeds in XML format available.
  • The data is not a feed, they are files in most cases. If you click on the links, you get either a zip file containing some XML data or a site with some links to XML files.
  • In some cases, the XML files are RSS feeds.  While this might be great if you want content, the “data” is really just unstructured content.
  • There are no APIs, no REST and each feed has a completely different format.  There is zero consistency even for things like unique identifiers, delivery format, or XML structure.  There are also generally no available XML schemas – you just get raw XML.
  • Its not clear how data is published in a timely fashion.  In most cases, you get a directory of files but there is no information on how often they are published.

So while its great to see the information being public, the US government has a long way to go before they have a useful API that could be used for application development purposes.  Given that Googgle. Expedia, Amazon, etc. have had these APIs for many years, its a lot of fanfare and not a lot delivered for this service debut – dumping a bunch of files onto a directory was a victory in 1999, not in 2009.

Wednesday, May 13, 2009

Billboard Gone Bad

image

I was downtown the other day and snapped this with my cell phone camera.  Apparently, this bill board needs Windows Activation!

Tuesday, May 12, 2009

SharePoint is not a Database!

As users of SharePoint start using lists they start taking advantage of a very intuitive and highly configurable information management tool.  Users who have been using Excel or Access in the past start seeing SharePoint as a kind of rapid application development platform for building structured data applications.  However, this is where SharePoint’s list architecture breaks down because simply:

SharePoint is not a database!

Part of the problem is that business users designing lists are not familiar with basic database concepts - they just want to store their information.  Part of the problem is false advertising by consultants and/or Microsoft that SharePoint is a miracle platform that can do anything - it does some things well but replacing your SQL server or even Access database isn't one of them.  The other problem is there is no really good way for surfacing bi-directionally data from a database into SharePoint – the business data catalogue works only in read only mode and does not allow for updates back to the underlying data store.

Here are a list of some features that a database has that SharePoint does not support - the moment you need these features you will need a real database.

  • Primary And foreign keys: one of the most basic concepts in a database is the enforcement of a unique identifier (either system generated or user supplied) that can identify a record and link across table in parent child relationships.
  • Transactions: if two changes are required to go together and the second change fails you want the first change to be undone (rolled back).
  • SQL language: complex queries can me written in code using a standard language.  Queries can be saved and repurposed.
  • Stored procedures: database programmers can write complex routines that can be called as reusable code blocks. 
  • Indexing and query optimization: used to improve performance, indexing allows the database designer to pre-index specific fields that are frequently used in queries to improve performance.  In addition, most databases have optimization engines that based on what you are trying to fetch will optimize how the data is retrieved.
  • Large data and binary fields: most modern databases allow you to store large binary files such as video files, large volumes of text, images, etc. in the database.  SharePoint can be made to store large files as documents but you only get one per record and a generic binary object. 
  • Access outside of SharePoint: lists are accessible outside of SharePoint but only through XML or programming interfaces.  Lists are not great data stores to be used for line of business applications written independently of SharePoint because the integration is relatively poor in comparison to running a SQL query on a database.
  • Cascading deletes: if a parent record is deleted, its children should also be deleted.  In most databases, this can be configured to happen automatically or else reject the delete of the parent until the children are deleted first.  This eliminates the risk of orphan child records.

These features are considered basic in databases – they have been around for decades and even the most primitive databases such as Access or FileMaker Pro have most of these features. 

Lists are great for flat, changing content especially when attached to unstructured documents.  At least in the current version, lists are not substitutes for databases and shouldn’t be considered so.  If you need a database, then you are better off building a proper database and using SharePoint as a front-end for surfacing that data through reports, dashboards, etc. or as a host for data entry components such as InfoPath forms or custom build web parts.      

Tuesday, May 5, 2009

Hotspot Shield and Hulu No Longer Work Together

Sites like Pandora and Hulu block IP addresses not originating from the United States.  The solution for the past 6 months or so has been to use Hotspot Shield which proxies your IP address behind an US address.

As of today, this no longer works.  When you load up a video, you get the following:

ScreenHunter_01 May. 05 22.07

Pandora still works thankfully…

NOTE: There seems to be a solution to this problem – thanks to the comment below!  If you clean out your browser cache and then reconnect to hotspot shield it seems to work.  I suspect this is a temporary solution until Hulu starts blocking this new batch of servers.

When is the old world media going to get that the Internet is global and find a solution for all this rights territory nonsense?