ballot box

Do You Have an Opinion on the SharePoint Community?

Sigh. It’s time for another round of how the SharePoint Community is broken. For those of you, who aren’t aware, please allow me to catch you up quickly. In round one, we had Joel Olsen’s proposal for the SharePoint Knights. Then we had Global 360 trying to define the key influencers in the market with their SharePoint Influencer50. (Which I responded to here.) Now we’ve got Matt Rackley asking Is the SharePoint Community Past Its Prime? This time the spark was a CMS wire post about the community titled The SharePoint Community: What it is, Why It’s Important and Microsoft’s Role. Despite Barb’s slightly liberal use of quotes potentially out of context, the article is a nice feel-good article. It’s about how a group of people grow up – and share in the community. So why does Mark provide a negative spin? In short, I don’t know. I know that he’s posted several other posts with relatively inflamitory titles (or content.) The most recent one I could find prior to the SharePoint Community post is The Real Value of Microsoft Certification in SharePoint??? Knowing Mark (I like to call him Matt just to mess with his head) I suspect that it’s just who he is. He likes to take or share his controvercial point of view and take a read on the market.

Despite the inflamitory nature of the titles (and content) let’s look to see what Mark has to say this time:

  1. These aren’t the good ole days
  2. Speakers aren’t taunted by hecklers
  3. People have egos
  4. Conference burn out
  5. The MVP program is broken.
  6. Microsoft should do more for the community
  7. SharePoint is different.

Let me try to take these points one-by-one. My apologize for potentially grossly misinterpreting his points.

These Aren’t the Good Ole Days

True. It might be good to read The Time Paradox. There’s a view of things (which is neither right or wrong) which says that the best days are behind us. I personally subscribe to the idea that the best days are ahead of us. I see more interesting people in the community every day. I’ve made a point to go help to fill the spots in the market which I felt were challenges to folks. Whether it’s MSSharePointDeveloper.com, the SharePoint Guidance (for developers) or the ECM Implementer’s Course I’ve been working on trying to get content out there that people can use to better themselves. I believe that if we make information easy to understand and available to people that we’ll help encourage the next generation of community participants.

Speakers Aren’t Taunted by Hecklers

Well, I don’t know that I’d go that far. I think I’d say that in general the presenters are respected by the audiences and the speakers respect and care for their audiences. This – in general – will reduce those hecklers. Having just finished my comedy class, I’m really looking forward to having fun with hecklers. Seriously, we’re all professionals here. I think people are genuinely trying to learn. I’ve not seen hecklers at .NET events for a while. I think the phenomenon happens more in the genesis of a tool than in a maturing state.

People Have Egos

Yes, people have egos. Some are larger than they should be. Some are smaller than they should be. I’d say that we’ve collectively done pretty well as a community at keeping people’s egos in check. While I hear complaints that peoples egos are out of control (mainly mine <grin>) for the most part we’re a community and we’re trying to get along together. I can’t say that I’ve seen anyone snub another person because of their ego.

Conference Burn Out

Wow, here I’m in agreement we’re got a problem – but not because of the reasons laid out in Mark’s post. First, we’re in a transitioning market where we historically had a few conferences each year and those conferences drew folks. It used to be we’d have one or two DevConnections conferences, one or two Advisor conferences, and TechEd. That transitioned to two DevConnections conferences, two Best Practices Conferences, two SPTechCon conferences, a Microsoft SharePoint Conference, and TechEd. (Please excuse the fact that I’ve excluded probably a dozen more conferences in the US alone.) During the transition the idea of a SharePoint Saturday sprung up as a free event that would offer a way to gather SharePoint speakers and get a ton of content to folks in a compressed period of time. This is good – and bad. First, it does provide a forum for emerging speakers to participate. With the users group I run, I have 11 speaking slots. That’s what I’ve got for the year. In a single SharePoint Saturday I’ll have 25 slots – twice as many as I have for a year of users group presentations. I can afford to use some emerging talent (even talent I don’t know) in slots for a SharePoint Saturday. (For the record, I didn’t personally speak at the SharePoint Saturday in Indianapolis to make an extra spot available.) Also for the record, we coach speakers for our regular users group meetings. We’ve got a September meeting which will be a brand new speaker.

Putting on my speaker hat for a moment, I want to support SharePoint Saturday events. I make an effort to do the events which are drivable from Indy. Chicago and Columbus get proposals from me. I personally make a point of not flying to events. I think that we do need to allow local talent to contribute. While we gave a stipend to the people from out of town who flew into support SharePoint Saturday Indy, I personally think that those events are best with local/regional speakers. (We accepted all serious local speakers first.)

So SharePoint Saturday is good for speakers – but it’s REALLY bad for the conference market. Part of the problem is that we’re making the market too thin. There are too many of conferences in the first place. I’ll speak at 11 national events this year. All of the events are on SharePoint. I do 5 times as much traveling for conferences as I do for clients. That level of diffusion in the market makes it hard for conference organizers to make money. Add to that the amount of free content they’re getting at SharePoint Saturday events and there’s an immense amount of coverage for content. He’re a secret… conferences are a volume game. There are a ton of fixed costs. The variable costs (like food) are not a substantial part of the cost. So when they have a large number of attendees they make good money. When the attendees aren’t where they need to be they lose money. If they lose money too long they go out of business. So while I absolutely support SharePoint Saturday and volunteers making content available to everyone – it does come with a cost.

As for vendors and their willingness to continue to sponsor the events, I have to say as a business owner wanting to market a product there are too few good ways to market for SharePoint. So I don’t anticipate problems there. I know there’s some pressure on the conference organizers because vendors can sponsor a handful (or several) SharePoint Saturday events for the cost of a conference sponsorship – however, the experience isn’t the same. Chris Geier summarized his experience at SharePoint Saturday Indy here. He points out that in Indy we took care of the sponsors – because we want them back when we run the next event – and also he implies that others don’t keep the awareness on the fact that sponsors are required for the events.

The MVP Program is Broken

Sure. It is broken. Of course, it’s broken. How could it possibly not be broken? Look, I’m honored to be a Microsoft MVP for SharePoint. I am in awe of some of my fellow MVPs who have skils with SharePoint I simply don’t have. I joke in the Shepherd’s Guide that I get to play Who Wants to be a Millionare? everyday but I get an infinite number of phone a friend lifelines. Last week I called Matt McDermott to ask about some MySite / Social things – I love that. Here’s the thing. That’s not about being an MVP or not being an MVP. That’s about being a part of the community – and answering Matt’s calls when he has a question.

Building and maintaining the MVP program is an impossible task. It’s always going to be slightly wrong, slightly broken, and slightly askew. Here’s the thing the program has been moving in the direction of greater clarity since its introduction (with the exception of a notable stumble or two). Toby Richards has been driving the program to more solid metrics and fewer “feelings” about MVPs. On one hand I hate this. It’s hard to quantify the value of a touch. If I have a 5,000 readers of my blog and I post something is that more or less valuable than a conference session where I’m speaking to 20 people (because it’s the last session of the conference.) I don’t know. On the other hand, I love that there is that effort to try to make it less subjective and more about how people are contributing. I know that the program is always trying to improve and I respect that.

I’ll say that I don’t believe everyone with an MVP award deserves it. There are some days when I don’t feel like I deserve it. However, the program has to make an attempt to do something – because shutting down the MVP program isn’t a better option. I’ve heard all of the options people have proposed about the program – and honestly, I’ve not heard anything said that would be a better deal than what the community has now. It’s not perfect but it’s got a lot of people who truly care about the community and people who want to make it better.

I would like to say that there’s confusion about what the MVP program is. Being an MVP has no bearing on whether you actually know what you’re doing or not. There’s no certification exam demonstrating a minimum level of knowledge about the product. There’s no oral examination or review board that you have to confront. It’s simply a measure of how you support the community. Is it a bad measure? Maybe. Is it better than any other community program by any other software company – absolutely.

I’ve personally recommended folks for an MVP award who are great community contributors. They pour their heart out to help grow the SharePoint community. They didn’t get the award. I’m disappointed but not in them – and not in the program. The program has to have a cap – some way to control costs. Honestly, I’ve told the MVP program management team that the cap for SharePoint MVPs is too high. I believe that we need to raise the bar. They’ve not taken my input on this matter – but that’s OK.

Let me return to my point above… MVP means nothing, participating in the community means everything. I have numerous friends who I’d recommend BEFORE an MVP because they are participating and they are caring.

Microsoft Should Do More for the Community

As a business statement I agree. Microsoft invests millions of dollars in advertising a small fraction of that amount would make a huge difference in the community. However, that being said, I don’t believe the community “deserves” it. I am irked by the sense of entitlement that we (I’ll include myself) sometimes get. Microsoft doesn’t owe us personally or the community anything.

SharePoint is Different

Yes, and no. Both Andrew Connell (comment) and Ruven have very good points. SharePoint isn’t any different than any other technical community. I believe that we’re fundamentally dealing with a community. Communities are the same in .NET, SQL, and SharePoint. If you want to learn quickly and thoroughly, I’d recommend you embrace the community.

Parting Thoughts

From my perspective, there has never been a better time to be a part of the SharePoint community. Never. We’ve got more free and paid resources to learn than we ever had. We have a wonderful set of leaders (MVPs and non-MVPs) who are there to help the community succeed. We’ve got support from Microsoft for giving away conference passes to the Microsoft SharePoint Conference. There are users groups in most of the major markets (and more than a trivial number of the secondary markets). There are more books on SharePoint than there have ever been. I guess I don’t understand all of the negativity about the community.

cats

How This Developer Solves a Puzzle

My wife purchased a puzzle for our family, and her Aunt and Uncle that we’re staying with on vacation to do. The puzzle consists of nine square pieces each of which contain half of an image of a cat on each side. The completed puzzle is a 3×3 grid of the pieces where all of the cats match up. After an hour or so of trying to randomly try pieces and combinations, I decided to come up with a plan that would definitively solve the puzzle. I decided to break the problem down into a set of comparisons the computer could do – and write a program to solve the puzzle.

Before I get to far, yes, I was informed by my wife that this was cheating. However, I’m not sure I agree (feel free to provide your comments if you would like). I don’t agree because puzzle solving should be about using all of your skills to be able to create the solution – not just simple trial and error. If you believe I cheated in finding the answer, that’s OK. If you prefer to think, as I do, that what I did was find an ingenious way to solve the puzzle read on.

Since I’m not an expert in image recognition, I decided the first step was to inventory the pieces and convert the images into something easier to handle. I decided that each cat had a left and a right side of the image. Since there were four different cats I’d number them 1 (Black), 2 (Orange), 3 (Gray), and 4 (Tan). I would then label the left side of the cat as the A (or true) side and the right side of the cat as the B (or false) side. Then I could create a inventory of each piece with it’s numberic identifier for the piece (which I randomly assigned) and the number for the cat image on each side: 3b, 2a, 4b, 1a… With this conversion from physical objects into numbers in hand I was ready to create some classes and structures.

I decided at the most basic I was matching sides so I created a class with the Cat Number and Cat half variables. The cat number had to match and the cat half had to be opposite. Because of this I used a boolean for the cat half. I also created a method for the class called match, which took in another puzle side and returned a simple true-false to indicate whether the sides could be matched together. One key here is that I returned true of there wasn’t a piece on the other edge. I knew there wasn’t a piece because the cat number was zero.

I also needed a puzzle piece to contain the piece’s identifier and the sizes of the piece. I also created a puzzle placement class that considered the orientation of the piece – since pieces could be rotated you didn’t know which side should be up. Finally I created a puzzle solution class to hold attempted solutions. The puzzle solution class had a method to return whether two solutions matched. This was used to prevent solutions from being tried multiple times by the program.

The main code of the program consisted of some lines to initialize variables, followed by a set of nested loops. The outer loop was a solutions loop where I recorded each tested solution. Inside of that I had loops for x and y positioning and inside of that pieces and inside of that orientation. Through these loops I’d test a piece at a time in each orientation to see if I could get it to match on all four sides. One key here was my array of positions was actually five by five and not three by three. Why? I kept a set of empty positions all around the pieces so that I didn’t have to worry about running into array bounds issues. It was wasteful of memory to be sure – but it’s efficient from a coding perspective and given this was quite literally throw away code, it seemd like a reasonable thing.

After working out some of the logic and a few minor logic bugs I ended up with a program that tried 283 solutions before finally settling on and displaying the answer on how to solve the puzzle to me. I should say that the answer was displayed instantaneously – at least to me it was instantaneously. I’m sure there were some number of milliseconds involved but to me they weren’t even measurable. I tested the solution on the real puzzle and it worked.

I ended up having about an hour in the code – and I’m certain that solving the puzzle by hand would have taken much longer than this given the complexity of the problem so I was happy with my puzzle solution.

Clearly you can’t use this technique to solving every puzzle. The typical jigsaw puzzle doesn’t lend itself quite as nicely to this sort of problem – but it was a fun exercise to convert a real world puzzle into an algorithmic one that the computer could solve.

The completed puzzle looks like this:

If you want to look at the code it’s available here.

forge

How Easy Is It To Own An Electric Vehicle?

You’d have to know my father a bit to really understand his fascination with electricity and figuring out better ways to reduce his dependence on others. He’s quite interested in the idea of putting a windmill for electric power generation up on the farm – if he could only talk my step-mother into it. Because of this it wasn’t really that much of a stretch for me to hear him say that he had purchased a fully electric vehicle – in parts. Another trait of his is to make things work. For fun – take a look at this:

This is a custom built rig for picking up and moving a barn that someone offered him for free, if he would move it. This is us taking it through a ditch and not completely understanding how much the frame of the semi-trailer would flex. We made it and the barn is comfortably sitting on the farm now, however, it did make for an interesting time. The rig by the way required a hydraulic pack, some actuators, and some bridge beam steel that he was able to purchase. It’s one of the examples that I use to explain how he will find a way to do things if he’s motivated enough.

Back to the electric car saga. He got a converted S10 pickup – so more technically he got an electric truck. It was originally converted for the department of Energy by the Solectria Corporation. His particular unit spent some time at the Tennessee Valley Authority (TVA). Of course, that makes sense given that they have large amounts of hydroelectric power production capabilities. The truck is one of 61 that were converted to better understand how electric vehicles might be used. It’s driven by a pair of three-phase industrial electric motors. It doesn’t have the same sort of acceleration as a gas powered vehicle but it does accelerate well and for his purposes it’s pretty good.

When he got it the truck wasn’t in that great of shape. There were no batteries – and it takes 36 of them – so installing them was a chore. This was particularly interesting because the exact wiring configuration wasn’t well known. There were provided photos so we did manage to put things together correctly – after some interesting moments trying to figure out why current was flowing when we didn’t expect it to be. We ended up realizing that one of the controllers for the motor was blown – some really nice char marks along the entire inside of the converter. However, my father persevered and managed to find folks who helped him restore the vehicle to like-new. It’s quite a capable little car to drive around.

However, that’s where the real fun began. He lives in Illinois which has a set of laws on the book which should have allowed him to get the truck plated with as an electric vehicle. Well, let’s just say there aren’t a lot of people doing this so it took some effort to get everyone to realize that they had to allow this to happen. One of those things that is supposed to happen to encourage electric vehicles but doesn’t happen because not enough of the activity is going on.

The next problem is the one that’s prompting me to write this blog post. He can’t find insurance for the vehicle as a daily driver. Because the car is “special” it’s processed by insurance companies like a collector’s car. That’s actually pretty accurate since there’s little reason to have the truck if you’re not really interested in electric vehicles. However, the problem is that no one wants to allow the vehicle to be driven daily – because collector car policies don’t allow that.

The truck – if considered a regular S10 – would be worth about $3,000. The vehicle is really worth over $20,000 because it’s “special.” The only way to have a defined value of the vehicle is a collector car policy. So now we’re stuck. If you drive it every day – and if you’ve got an electric car you want to –you can’t insure it. If you insure it with a regular policy you risk that it will be totaled for $3,000.

With gasoline prices on the rise folks are looking at electric vehicles again – but if you’re not buying some production version you may find it difficult to get insurance.

I’d love your thoughts as comments on this blog post – or better yet – if you know of an insurance company that will write a policy for it, I’d love to hear that via email.

forge

The Public Debut of Super Pig

At the SharePoint Conference 2009 they were handing out flying pigs – including their capes. So my son and I developed a short story board, recruited a neighborhood friend and put together a little short movie staring Super Pig (the flying pig given away at the SharePoint Conference.) Take a look for yourself: https://www.thorprojects.com/wp-content/uploads/2015/07/SuperPig.wmv

I’ve had this put together for a while – since everyone I’ve shown it to likes it so much I had to share it with the world.

hop

Hop to It

Marcy Kellar has been trying to convince SharePoint folks to jump for joy – or just because they’re intoxicated. So when Andrew Connell came up to do the SharePoint Users Group of Indiana (SPIN) she convinced a few of us to have our pictures taken. Despite not having anything alcoholic to drink, I decided to be a good sport and jump.

forge

Good Customer Service – An Example

I’ve already spoken once about bad customer service — the worst I’ve ever seen. However, good customer service is so hard to find I’ve not had an opportunity to talk about it. I alluded to some good customer service in that article, but while finishing Groundswell, I realized that institutionalizing good customer service isn’t as easy as it might appear — or is it. Lilly Tomlin did a Saturday Night Live skit some time ago (Season 2, Episode 1) where she said in part “We don’t care. We don’t have to. We’re the Phone Company.” Honestly, I feel like a lot of companies have this attitude. Whether they’re the phone company or not.

So lately, I’ve been having some conversations with AT&T’s U-Verse service. I was having some problems with my phone lines after switching to their voice over IP phone service from Vonage. (Honestly, Vonage’s service was good, I just wanted fewer devices in my environment — fewer things for the wife to have to worry about when I travel.)

The thing that’s startling is nearly every customer service or technical service person I spoke to asked me the same question “How can I provide you with excellent service today?” Wow. I guess it is easy to institutionalize good customer service. Put in the script a question that the agent must ask for which there is no escape from providing good service. How hard would it be for someone to treat you poorly after they’ve asked how they can provide excellent service?

Similarly, I have a gentleman who is cleaning my office for me. Every time I talk to him, after we get through the hellos he asks “How can I serve you today?” Wow. For him, it’s not lip service. He actually does care. While I’m not personally the most observant when it comes to leaning in my office, I appreciate his attention to service.

Apparently, it’s simple to get good customer service. Oh, as a sidebar to this story, the AT&T U-Verse thing that I was calling for wasn’t their problem. It turns out I have a cordless phone that’s going out. The last agent that I spoke with took the time to help me troubleshoot the problem step-by-step. It helps that I have a Butt Set and a completely modular wiring closet in my house. However, that’s not the point — she was more concerned with helping identify and resolve the problem than getting me off the phone. She called the lines for me so we could see if they were ringing correctly. It was truly great customer service.

I’m not saying that AT&T U-Verse service has been perfect. The first technician they sent did more harm than good trying to diagnose the problem the first time he showed up. (It took me a day to realize what he had done.) They claimed to have resolved a cross-talk issue which, well, they didn’t. However, I can deal with technicians who are in front of me. Knowing that they really do care about customer service is a big deal.

On an less happy note, I’m preparing a blog post about my experience with HP — and the two desktop machines that have died on me in the last two weeks. Their situation has been a disaster. I’ll provide all the details when the situation has been resolved. I’m hoping at the end of the day I at least feel neutral about the situation.

forge

Attitude for Weddings

I had the distinct pleasure of participating in the wedding of my eldest brother a few weeks ago. He’s now married to a great woman. She’s been able to help him bring his life into focus and as I said in a toast for them — they bring out the best in one another. I honestly can’t think of a better compliment for a couple in love — that they bring out the best in each other.

Their wedding was beautiful. While I’m not a huge fan of Catholicism, I do appreciate the value of a wedding before Christ and in front of friends. Their reception was at the Edgar County, IL airport — the same airport my brother operates an aircraft out of. They and the wedding party traveled from the church to the airport in a series of old cars including “The General Lee” — a car that my brother has been restoring and enhancing for a few years now.

I certainly can’t find fault in anything about the wedding itself, even with the rain that kept us inside the hangar and effectively eliminated the private air show they were going to do. I did, however, make an observation about how peoples’ attitudes about weddings differ from one person to the next.

When I got married I was quite direct (perhaps too direct) with the guests at our rehearsal dinner. I told them that their responsibility was to help to ensure that Shelley (my wife) and I had the best day possible. They were encouraged to address minor family issues themselves. In fact, I was quite clear that only Shelley, the minister, and I couldn’t be kicked out — everyone else was expendable. Perhaps I was a bit heavy handed in that respect. The trick, was that I was clear in that I expected everyone to help us have the best day possible.

This is my core operating mode for other people’s weddings. No matter who’s getting married, no matter what’s going on, I’m keenly focused on making the day as special as possible for the bride and the groom. That means being as selfless as possible. It means asking what they need. It means just being present in the same space as them — while giving them space. It can mean ignoring my own desires or needs. It can also mean putting things in place so that when they’re ready it’s available.

My wife used to work as a wedding photographers assistant many years ago. In that work she carried a “wedding emergency kit” — a kit that had all of the essentials that you might need should someone forget something, tear a dress, or have a problem. The kit includes duct tape (which apparently has held together more than a few wedding dresses) as well as pins, hose, etc. My wife put together for her new sister in law a kit — so that their day could be the best possible.

I’m not going to presume to tell you how to approach the weddings you attend — however, I can tell you that there is absolutely magic when enough people adopt this attitude. Problems like flowers that get broken are fixed. A lack of drinks is transformed into a plethora of options. Missing items just seem to appear. I invite you to see if you can make this kind of magic happen at the next wedding that you attend.

forge

Let it be known, Patrick Tisseghem lived life to the fullest

By now, the SharePoint professionals who follow any of the major blogs will have undoubtedly discovered the tragic news that the SharePoint community has lost a great man. Patrick Tisseghem passed away on September 3, 2008 due to a heart attack and failure.

After struggling with the loss today I wanted to share first my deepest condolences to his family. His wife and daughters seemed to be frequently in tow at conferences and were clearly a source of deep joy for Patrick. I know that his drive was in part based on the desire to make a better life and a better world for his family.

Certainly, 39 years on this earth wasn’t enough. However, Patrick used every moment he was given. Whether it was writing, speaking, or otherwise supporting and mentoring developers, he was always trying to support, encourage, and nurture his students, colleagues, and friends. He was always giving and sharing.

Patrick was truly alive that is more than most can say. I can think of no greater compliment to pay him than that he lived life to the fullest.

forge

Indianapolis: Mito What?

The following is an excerpt from a message that a buddy of mine sent…

I am coordinating a fund raising walk for my daughter.

www.umdf.org/indianawalk
Indiana Mito What? Walk and Family Fun Day on October 4th, 2008 Forest Park, Noblesville, IN

As you many of you know my 7 year old daughter Abigail suffers from a disease called Mitochondrial Disease. There is no cure. This is the first inaugural walk that I am coordinating to raise awareness and funds for a cure. I am asking for your support. You can register and join my team, sponsor my team or just make a donation. I would love to see you and your family be able to make it out to Forest Park on this day. There will be some things for the kids to do there and a couple of Indie bands playing.

What do you have to do as a team? Get other team members to join and collect donations/pledges. This walk is not for just Abigail, but it’s for all of those affected by this disease. Pledges can be collect via www.umdf.org/indianawalk or the ol’ pledge form. All of the monies will go to United Mitochondrial Disease Foundation towards research for a cure.

I don’t really ask for money unless it’s for a good cause. Please register or sponsor (www.umdf.org/sponsorgoerges) today!  I hope to see you all at Forest Park on October 4th.

John and his family are great people. Obviously if you’re not in the greater Indianapolis area you can’t join in the park, but if you can find out more and sponsor the event — if you’re touched by the story, the disease, or the passion for trying to make good out of bad.

forge

My Name is Jerry

During the course of my career I’ve run across a handful of truly amazing people. That’s one of the definite perks of being a consultant, you meet lots of people so statistically speaking at some point you’re going to find some really awesome people. One of those people for me is Rodger Smith. Rodger is perhaps the most creative guy that anyone will ever meet. Picking out his brilliance is as easy or as difficult as looking at the desktop on his Mac. The first time I saw it I was instantly in awe and confused at the same time. There was an insanely organized set of post it notes on his desktop. This was amazing because on the one hand we have unstructured information at its finest. Post it notes — how many of them do you lose in a year? I think I’m single handedly responsible for killing a forest with the ones I’ve lost. On the other hand, there’s an order and a symmetry to how they’re setup. It’s order woven through the chaos.

Why do I bring this up? Well, I got a note from Rodger today about an independent film he’s producing. The film is My Name is Jerry. I won’t pretend understand it other than what you can read for yourself — however, I can tell you that if Rodger’s involved it’s worth checking out. (So go there now.)