Monday, April 28, 2014

The 10 Reasons Why I Blog

I sometimes get asked why I blog. Given I put out at least three blogs a month and each one takes at least a few hours to write it is a fair question. I am, effectively, doing an extra day of work each month. Over the course of almost six years I have put out just shy of 200 blogs, which at a couple of hours each, is the equivalent of working for three months, with little direct income for my trouble. So here are a few reasons why I do it, on the off-chance you are reading this and considering doing the same. My reasons are listed from least important to most important.

1) For the Fame and Fortune

I often get told on LinkedIn, by people looking to link to me, that they are a fan of my blog so, perhaps, my blog has given me some level of fame within a small pocket of the internet. However, this is not the reason I write the blog. I do use Google analytics to monitor blog activity, and know I get about 4,000 visitors per month but I do not know who actually reads my articles. I write on topics I am interested in and, hopefully, this resonates with others.

In terms of making my fortune with a keyboard, I make NO direct income from my blog. Microsoft do not pay me to write it and I have no advertising links. I also consider it very unlikely that anyone will ever make a book or movie and pay me handsomely for the rights for my content.

When comments are added to my articles which contain commercial links, I usually remove them without prejudice. The most I have got out of my blog is a few free books when I have done a book review. I usually call this out, and any other conflicts of interest, as part of the article.

I did, very briefly, add advertising links to my blog but soon realised I had no control over the links served and feared it had the potential to damage my personal brand, so I turned them off.

If you are thinking of writing a blog for freebies and cash, write about hotel rooms, resorts and luxury items, not CRM systems. Of course, if anyone has any expensive Arduino sensors they want me to review, email me for my postal address.

2) To Prop Up My MVP Activity

As a Microsoft CRM MVP, I need to show I am active in the CRM community each year. If you are writing a blog BECAUSE you want to become an MVP or only to maintain your status, you are missing the point. In all honesty, I will be ranting about something on a blog well beyond my tenure as an MVP.

This being said, blogging is very visible and very measurable so, as a community activity, it works well for demonstrating passion and commitment.

3) For My Own Reference

This is more of a side benefit than a core driver for blog writing. On more than one occasion, I have searched for an answer to a question and found the answer in my own blog. The human memory is fallible, the internet is forever. In writing a blog I write it once and the search engines ensure I do not have to go far to recover the information.

4) Good Writing Practice

Regularly writing is the only way I know to improve one’s writing. English is a fickle mistress so most of us need all the practice we can get. Reading good writers of English, like George Orwell, is also useful, but actively writing allows you to find your own voice. I try to write as I speak but, hopefully, slightly more coherently.

If you are planning to write your own blog, read Strunk and White first. My physics professor forced me to read it before writing my honours thesis, many years ago, and it has served me well ever since. While I am sure I regularly violate its doctrines, I know my writing is better for its digestion all those years ago. In my opinion, Strunk and White’s “The Elements of Style” should be compulsory for anyone planning to write in the English language for the consumption of others.

5) Good Material For Presentations

I do quite a few presentations each year online and in the real world, often to audiences up to a few hundred people. If you want me to speak at your event/conference/dinner let me know; I am happy to oblige. I offer a money-back guarantee and no one has asked for a refund yet (of course, I mostly talk for free, especially if it is about CRM, so this is not too surprising).

Often, when approached, there will be a vision for a general theme but not a specific topic. My blogs provide a rich source of potential talks for which I already have a solid foundation of knowledge. Topics are discussed, one usually stands out and, with a script mostly written, all that is left is to create the presentation materials.

6) To Make Me Think Clearly

Writing on a subject forces you to clarify you thoughts, research them and then arrange them in a logical, coherent fashion. A good example of this was my “Is email dead?” blog. The assertion that email was on the way out did not ring true to me. Without a blog, it would have been easy to speculate but go no further. By forcing myself to write an article on it, I researched, found the actual studies on the subject, and then synthesized the information to form my own conclusions (email is not going anywhere and is VITAL in the formation of strong relationships).

7) To Test Out My Ideas

I come up with unique ideas sometimes, like the universal search tool for CRM and the flow model for bugs. I also come up with ideas contrary to contemporary wisdom. My regular blogs on the finances of Salesforce are a good example of this. Ideas are no good unless they are tested. Putting them into the wild on my blog is a great way to test them.

There is risk with putting ideas out into the wild. The main risk being you might be wrong. It is true my spreadsheet manipulation, late at night, has occasionally led me astray. The only advice I can give on this is from my wife, who studied public relations. She says “tell it all and tell it fast, before someone else does”.

In terms of where the ideas for my blogs come from, they come from various sources such as talks over drinks, projects I am working on and working with the product itself. The important thing is to capture the idea straight away, otherwise it is lost. When I first started the blog I was very concerned I would be unable to come up with things to write about each week. I started a Word document with blog topics in it. When I think of a new topic, I immediately add it to the document. I have never been short of a topic idea and the Word document is now five pages long and full of topics to write about in the future.

8) Content Marketing

Writing content that is of interest to others, allows me to promote that content and advertise myself and the company I work for (Oakton). Microsoft syndicates my blog (the only condition being I put out at least three blogs per month) and I promote it through all free channels available to me (Facebook, Twitter, LinkedIn groups).

While the leads this generates do not keep me in full time work, it does generate leads and connections which would be lost to me otherwise. This kind of marketing establishes a rapport even before a conversation has started and, while limited in the volumes of traffic it generates, the quality of the traffic is very good.

9) Brand Management

Reading my blog gives the reader a very clear picture of my interests, thoughts and strengths as a consultant. It is very clear that I am a functional consultant/CRM architect who works with Dynamics CRM and that I come up with creative, codeless solutions to problems that arise with the product.

My blog also establishes me as an authority. I am known amongst the other CRM MVPs as ‘the person who keeps an eye on Salesforce’ because of my articles on them. When meeting Microsoft’s Dynamics CRM product team a few years ago, one of them commented “you’re the guy that wrote the infocom game in CRM, right?” I nodded and smiled. That one article meant I immediately stood out to that developer and I was instantly recognised, hopefully for the right reasons.

Being conscious that my blog is an expression of my brand also keeps it focussed. It is rare for me to deviate away from CRM-related topics and, unlike my Facebook wall, things rarely get too personal or political. My blog is there to express my ideas and thoughts about CRM and to communicate my position to others. Any blog topic which does not support this goal is normally filtered out.

Blogs with their focussed, dynamic content, are the darlings of the search engines. Therefore a blog is a great way to ensure that when that person who just received your business card types your name into a search engine, they get relevant (hopefully intelligent) information associated to your name and not, for example, a physics paper you co-wrote over ten years ago.

10) Because I Enjoy It

If you do not enjoy writing a blog, do not do it. You have limited time on this planet, so fill your life with things you enjoy. I enjoy writing a lot. I enjoy it for all the reasons above and for the feedback I get from readers. I genuinely get a buzz when a reader tells me an article was useful or helped them out in some way. Even the feedback that someone took the time to read one of my articles puts a smile on my face.

While I do consider my blog writing as part of my work and it does take time (I started this blog post over six hours ago), the notion that I am making a difference and helping out others is the main reason I do it. If you are also motivated by such things perhaps blog writing is for you as well.

Sunday, April 13, 2014

Treating Bug Management Like a Flow Problem

At the moment I am managing the bugs for a project. I am responsible for triaging the bugs, allocating them to the right resource and generally making sure they get attended to.

One interesting aspect of this process is trying to predict when the bugs will be completed. The issue reminds me of the flow problems I used to work on in my physics days.

A Simple Bug Model

In this project, all bugs are in one of three states:

  • Active: The bug is not fixed
  • Resolved: The bug has been fixed and is ready for testing
  • Closed: The bug has been tested and found to be fixed

The client creates active bugs, the consultant resolves bugs and the client closes bugs.

The Physics of Bugs

The problem reminds me of a flow problem with sinks and sources. In this case our source is the inflow of new bugs and our sink is the bucket of closed bugs. The resolved state is like a leaky bucket with bugs flowing in from the active state and flowing out through a hole to the closed state.

image

The Maths of Flow Systems

Flow systems have rules of conservation. For us the rules are:

  • New bugs can only enter into the Active bucket
  • Bugs cannot be destroyed
  • All bugs eventually end up in the Closed bucket

Source and Sink Rates

Here are some mocked up data to see how we can apply our model to the bugs.

Date Active Resolved Closed Total
2014/03/17 25 11 6 42
2014/03/18 23 15 7 45
2014/03/20 21 18 7 46
2014/04/02 24 20 14 58
2014/04/04 22 25 16 63
2014/04/07 20 27 16 63
2014/04/09 11 34 20 65
2014/04/10 10 38 21 69

The data, in itself, is hard to gain insight from but the rates are a little more telling.

For us, we will look at the average flows over time. Firstly, the source and the sink rates.

  • Average Bug Creation Rate = (69-42)/24 = 1.125 bugs/day (source rate)
  • Average Close Rate = (21-6)/24 = 0.625 bugs/day (sink rate)

Here I have taken the difference in days, but you can also use ‘working days’ if this suits better.

This immediately tells us that bugs are being created faster than they are being closed. Therefore, if things remain the same, the bugs will never be finished. Let us revisit this a bit later.

Resolution Rate

All Active bugs must go to either Resolved or Closed so, with this information we can calculate the rate at which bugs are leaving the Active bucket i.e. the rate of Resolution

Rate of Leaving the Active Bucket = (59-17)/24 = 1.75 bugs/day

So we now have the

  • Rate of Bug Creation (1.125 bugs/day)
  • Rate of Resolution (1.75 bugs/day)
  • Rate of Closure (0.625 bugs/day)

What the Rates Tell Us

In the bug-fixing stage of a project, there is always pressure to get bugs closed. Often project payments are contingent on critical bugs being closed. Go-live dates put pressure on client and consultant alike to get the bug-fixing job finished.

Firstly, as we noted before, the Rate of Bug Creation is greater than the Rate of Closure. Bugs are flowing into the system faster than they are ending up in the Closed bucket. This means, if things continue as they are, there will always be Active and Resolved bugs in the system and they will continue to grow.

However, the Rate of Resolution is larger than the Rate of Bug Creation so the consultants are actioning the Active bugs but they are staying in the Resolved bucket with only a trickle into the Closed bucket. The consultants are doing what they can but the client is dragging the chain on closure. This is excellent information for a project manager to know, who may be negotiating the situation with the client or having to report to their bosses on why the project is getting delayed.

Conclusions

The model employed here is quite a simple one. For example, if the client does not accept a Resolution, the bug will return to Active, but it provides a foundation for analysing bugs through rates of change and gaining insights which otherwise may not be apparent. Other extensions of this model may be rates of change of the flow. For example, it is reasonable to expect the rate of bug creation to taper to zero as testers run out of things to test, that is, the rate of bug creation will decelerate over time. This can be calculated and fed into the model for greater accuracy.

See how you go and, if like above, you find out that there is more to the picture than too many bugs and not enough action, your team will thank you for it. Good luck.

Tuesday, April 1, 2014

Case Study: Pet CRM – Valuable Community Service vs Big Brother

 

A recent project I worked on has received a bit of controversial press so I thought I would write about it from my perspective and the benefits it is seeking to provide.

As part of a joint venture between the soon-to-be-merged local councils of Mosman and North Sydney, a new, innovative program is being initiated for pet owners. Essentially, as well as micro-chipping, in compliance with the NSW Companion Animals Act, animal owners will also be required to add a ‘pet cam’ to the collar of their animals. All dogs and cats are already required to have a collar with contact information on, so the new requirement is not onerous.

The councils will provide the ‘eyenimal’ day/night vision cameras with the cost being covered by the usual council registration fees. The council recoups the reduced revenue through the flow-on benefits of the system (see below).

image

Behind The Scenes

The councils are working directly with Microsoft to deliver the infrastructure for the system.

image

The Pet Reconnaissance And Note Keeping System starts with the camera. For PC owners, a .Net app, downloadable from the council’s web site, will activate when the camera is plugged in via a USB port, charging the device and uploading the captured footage to Microsoft Azure storage automatically. For Apple and Android owners, there will be apps in the respective stores coming in the next six months or so.

It will be the pet owner’s responsibility to regularly charge the device, during which time it is expected the pet is confined to the house e.g. while the animal is sleeping. Strict fines will be imposed for animals caught ‘in the wild’ without their pet-cam attached.

From the Azure storage, the councils will access the videos via Dynamics CRM, also allowing additional data to be associated to the videos e.g. owner details, other pets in residence, connections with other pets. Using the marketing functionality of Dynamics CRM, councils will be able to target residents for things like neutering campaigns, tick awareness or advertisement for council-run pet-related activities, based on the information they gather.

The case management module of Dynamics CRM will be used for capture pet-related complaints and enquiries. For example, a resident may wish to complain about dog mess being left in the street by an owner. This complaint will be managed (pet-aged) through CRM and, with the footage, the perpetrator found and the owners fined. A similar system has been set up in the UK with immediate benefit.

Through a SharePoint Online portal (with the working title of SharePoint Pet-Owners Online Footage), pet owners will also be able to access their videos and see where their furry loved ones have gone. Social links will also be available, allowing owners to share footage on sites such as YouTube, Facebook and Twitter.

Council Benefits

Obviously, there is the ability to better monitor regulation compliance e.g. cleaning up dog mess, but there are a multitude of other benefits expect to flow from the project.

Improved Residence Resource Usage

Through the pet cams, the councils will be able to review residence resource usage. Mosman residents have one of the largest carbon footprints in the world and, it is believed through reviewing residence HVAC usage via the pet-cams, targeted marketing campaigns can be employed to improve residents’ ecological impact.

Neighbourhood Watch

About one quarter of Australian households have a cat which makes for a lot of eyes and ears on the streets of the lower north shore of Sydney. Like the extensive use of CCTV cameras in London, the day/night cameras will provide 24-7 footage of the mean streets of North Sydney and Mosman.

Native Animal Census and Preservation

Cats on night-time explorations often explore bushland wildlife officers struggle to access. As well as monitoring native kills and fining owners, the night cameras will provide invaluable information on the native populations in the council areas.

Many of Australia’s native animals are nocturnal meaning native census counts are often done via traps. The pet-cam provides an alternative which leaves the native animals undisturbed.

The ‘Mosman latte quoll’, a localised variant of the Eastern Quoll, named after its coffee-coloured fur, has not had a confirmed sighting in the area for a number of decades but anecdotal sightings still occur in the Sydney Harbour National Park’ and it is hoped the pet-cams will finally provide the evidence needed to confirm ‘lattes’ are thriving in the Mosman area.

Pet Owner Benefits

As well as the benefit of seeing where their loved ones go each day, it is envisioned the new scheme will provide other benefits to the community.

Animal Paternity

With many of the lower north shore’s animals being expensive pure breeds, unplanned offspring can be a significant source of revenue, if heritage can be established. The pet-cams provide a way to begin the process of establishing paternity. Combined with the planned facial-recognition social innovations to be rolled out later (see below), this could prove to be a significant win for female cat owners in the area.

Home Surveillance

For housebound pets, through the pet-cam, owners can see what has been happening at home, providing security and comfort.

Concerns Raised

A number of civil rights groups have written articles to local papers, such as the Mosman Daily and North Shore Times, complaining about the new technology, suggesting the benefits of the system are vastly outweighed by the privacy costs. Obviously the councils disagree and see little difference between this system and CCTV surveillance systems, often employed in public areas.

There have also been questions raised about whether this is a ‘revenue-raising’ activity for the councils but, again, while improved infringement management will be a likely result of the system, this will mainly offset the cost of the program and the councils do not believe there will be a significant revenue increase overall.

Innovations to Come

The initial pet-cam rollout is the beginning of a larger pet management project for the councils. Innovations are being rolled out, as part of the project, over the next few years.

Pet Social Networking and Facial Recognition

The pet-cams offer an insight into the social worlds of our pets like never before; we can see who our pets associate with while away from home. While animal facial recognition technology is still in its infancy, once this becomes more mainstream, the plan is to link it into the system to make identifying social interactions simpler. Animals will be identified, with contact information made available via the pet owner’s portal.

While human facial recognition is available in the system as part of the initial rollout, linking to photo identification databases held by the councils, this information, for privacy reasons, will not be made available via the pet owner’s portal.

Direct Wireless Transmission and Solar/Kinetic Recharging

The next generation of the units is already being planned and one possible inclusion is wireless data transmission. This will free up the on-board storage and allow real-time access to pet movements. USB docking will still be needed for charging, although solar recharging/kinetic recharging (recharging via the motion of the animal) is being investigated.

Pet Communication and GPS

Two other possible inclusions are a mobile SIM and GPS. This provides the ability for owners to track the location of their pet and to communicate with them. While conversation is, of course, not possible, if the owner feels the pet is in an undesirable location (or if they will soon be home from work and want to greet their furry companion), they can initiate a call to the animal and coax it home. Similarly, like GPS child tracking devices, an invisible boundary can be established for the device and, if the animal goes outside of this boundary (or to a forbidden location) an SMS can be automatically sent to the owner, notifying them of the violation. In this way, the GPS technology also allows effective enforcement of the council’s “leash free zones”.

Conclusions

While the project is unlikely to save lives on a daily basis, I enjoyed the project because it is great seeing local government employing technology for the benefit of its residents. I see the potential benefits of the scheme and trust the councils not to misuse the information they will gather.

For an FAQ on the project and further information, the councils have set up a temporary landing page here which covers the main goals of the project and their vision for it.

Have a great April Fools Day.