Category Archives: Uncategorized

Uploading a single changed file with Grunt

grunt-logo

I have embraced the node task runner Grunt recently and because I was grunting a little myself to get it to do what I wanted, I thought I’d share my experience to help others.

What Did I Want to Achieve?

My environment is pretty simple – I have a development LAMP running inside a local virtual machine and I wanted Grunt to upload files to that VM web server as they change. Sounds straight forward, right?

Started Well

I got to grips relatively well with the basics of Grunt and set up a watch (grunt-contrib-watch) task to monitor changes within my local development folder to then trigger things like minification or linting for example and then I wanted to upload the changed file.

There are many different file upload Grunt plugins ranging from rsync (grunt-rsync) to FTP (grunt-ftp-deploy) and I selected the sftp task from the grunt-ssh package. The fact that I chose this over the others is actually not relevant for the core challenge so you can choose whichever you wish.

The problem was that the sftp task (like any other upload related task) took a file pattern input within the config of the gruntfile.js (see example below). This is commonly a pattern like **/*.js for instance and not a specific file.

sftp:{
  upload:{
    options: {
      host: '<%= sshlogininfo.host %>',
      username: '<%= sshlogininfo.username %>',
      password: '<%= sshlogininfo.password %>',
      path:'/remote-path'
    },
    files:{'./':'**/*.js'} 
  }
}

Therefore, when the watch task is triggered, I wanted to ensure that the downstream tasks (the upload in my case) only needs to focus on that specific file and not a large set to be as fast as possible.

Events to the Rescue

My saviour came in the guise of events. The popular watch task emits a watch event, which allows you to do something simple like create a notification or in my case, change the configuration of a downstream Grunt task. It is important to note at this point, that the watch event is not the right place to run further Grunt tasks although you could. The documentation of the watch task does emphasise this but it is worth stressing as you may want to go down that path in a moment of weakness (read: this is exactly what I was thinking at one point). In my case, I needed to use the event listener to change the configuration of the files parameter for the sftp task and I did this with the following simple listener code in my gruntfile.js:

grunt.event.on('watch', function(action, filepath, target) {
  var files = {"./":filepath};
  grunt.config('sftp.upload.files', files);
});

With other upload tasks, it may be changing a src parameter instead but the principle is the same.

There are possibly other ways to crack this nut and I would absolutely welcome feedback and constructive critique on this as it would help me and others learn.

I hope this helps.

I’m a Jack of all Trades and its OK

I thought I’d get back into writing and fulfilling a promise made at an enthusiastic Paul Boag workshop back in April (yes, Paul, I know…) by writing a short post about being a Jack of all Trades and how I feel this is sometimes wrongly devalued within the web industry.

I’ve had many different roles in my career from Junior Developer to Lead System Designer or Solutions Consultant to Community Manager. I’ve not got the typical experience of a “web guy” as I’ve spent the best part of 15 years in large enterprises and have not been one of the cool kids in one of the many fantastic agencies that exist – yes, that is envy. Each role that I’ve held has required a different set of skills at a given point of time meaning that I’ve had to be somewhat of a “Knowledge Chameleon” (I’m bagsying that!) and adapt to my environment. Whether it be knowledge of a proprietary system or understanding of the latest web standard, I’ve always had a “Just In Time (JIT)” education approach – JIT the term itself being learned from my days as a Java developer. Whilst this sounds a little fly by the seat of your pants, I’ve always made it work and made sure that I’ve understood what the experts are doing in a given space to guide my own practices and standards for the benefit of the customer.

So why am I writing this almost-on-the-verge-of-a-rant post? Well, I read all too often that Jack-of-all-Trade types aren’t as valuable as specialists. The most recent netmag contained an interview with the well respected Sarah Parmenter and the advice given once again for those starting out was along the lines of ‘be the best [insert specific skill here] in [insert a geographic area]’. Whilst I have tonnes of respect for Sarah and others who have said similar things in the past and am certainly not looking for a fight, I don’t completely agree.

I personally enjoy the fact that I have good appreciation about good design and typographic principles, good knowledge about HTML & CSS & UX best-practices, solid JavaScript knowledge, sound ability with several server side languages along with very good knowledge of enterprise back-end systems like Salesforce and I know what makes a good CMS.

“Big wow” [with rolling eyes] you may think to what may come across as a bit of an Ego-w*nk… and I would tend to agree. The value is not the skills themselves but rather how knowledge across domains allows for a ‘just right’ and appropriate solution to be proposed to a client regardless of the project size. In one project, I may have the luxury to oversee how the proposed solution is executed and brought together using what knowledge I have to liaise and discuss challenges with experts in each discipline. In another, I may be Mr. Hands On and Chief Get Things Done Officer who has to execute against his own plan. This flexibility is something I absolutely love and I feel it provides great value to my clients and gives me an edge over the competition for a given size of customer.

All that said, I am my biggest critic and would be first to recognise where I am weaker in some areas and stronger in others and am very open and honest about handing things over if they can be done better. Whilst I selfishly find closing the knowledge gap exciting because I sense an improvement in those weaker areas with every project I undertake, I do agree in part with the web gurus whose views I’ve taken exception to – focus is important. That focus or speciality level within a discipline however, has a context.

A case in point may be around my weaker design skills. A customer may have a limited budget initially and may need to have a site built out for a specific business need. I could come along and do a good job with the view that if things take off for the customer, there may be budget in the future to get a design rock-star to come in and take things to the next level to help increase conversions or another goal. Therefore, my job would be to future-proof and facilitate this potential future task by creating the site using well structured semantic HTML and well organised CSS (I like the SMACSS approach personally) and decisions within the front and back-end should be made with this context in mind.

This surely has value for customers who may want to spend incrementally, which also fits perfectly with an open and agile approach that many of enjoy as standard nowadays.

Given this, whilst I completely agree that you should use the best tool for the job and use the best person for a given job where the various constraints permit, I also think that the Jack-of-all-Trade types should be given a little more encouragement as it is most often those types of people who get things off the ground and get things done.

I have to admit to an exception here that may in some way contradict what I’m saying in that although I’m a passionate JOAT (brilliant, I’m basgying that too), I do suffer from the Cobbler’s Children Syndrome, which is why I’ve still not ‘got things done’ with my new site to show the projects I’ve worked on since leaving the slow and politics filled corporate world recently so you’ll have to forgive that indiscretion.

Oh well, I’m still a Jack of all Trades for my clients and get things done so I think its OK. 

 

 

 

What do you think? Do you agree or disagree? What is your experience?

Let me know in the comments.

A Belated Thank-you to SolutionExchange Users

opt003_banner-large_500x98

This post is actually a very overdue thank-you to the user community of SolutionExchange.

The Early Days

Since first raising the idea of an online community platform back at the tail end of 2009, I was fortunate enough to be part of an organisation under Jens Rabe that actively supported the idea and that kick-started a very enjoyable and passion filled couple of years as the Community Leader for the SolutionExchange platform.

There are many aspects of the SolutionExchange where I am particularly proud, from the pure open nature of the platform to the way in which the platform was adopted by you the users, all the way through to some little features which we pioneered on the platform within the enterprise context. On top of this, we did it all whilst showcasing our own products.

A special thanks goes to Markus Giesen during those early days of planning as Markus had already spent years building up an engaged community around the blog he started – The Unofficual RedDot CMS Blog. Markus had every right to be skeptical about what I had planned given the previous community attempts ending in failure but we struck up a great relationship and he provided some very valuable early guidance that helped me justify some of the decisions of our approach to my management team.

I learnt a lot in the following couple of years. I learnt and understood quickly about the philosophies of many start-ups: get to the customer as quick as you can and iterate based on what they say and what they do. We did this.

The Launch

We launched a beta quietly back in the spring of 2010 with a simple Solution repository/App store concept but quickly iterated based on feedback to include an aggregated feed of blog posts from the broader community. I was particularly pleased with the effectiveness of this simple feature as it put users in control by telling them that they can blog externally of the platform, contribute their blog URL in their SolutionExchange profile, and by simply tagging their posts with the word ‘solex’, they would contribute that specific post to the “Community Feed” feature. At the time, this was big as not many were doing this elsewhere on the web as there was a preference to encourage users to blog within a given platform, which added a small but significant barrier. We discovered that this approach worked very well and what followed was a relatively great success story. Beyond early adopters like Markus Giesen, other partners started to contribute, then some customers, and then many of my colleagues created blogs with WordPress and Blogger and started sharing knowledge this way for the first time, specifically with the intention to share via the SolutionExchange. Kudos should once again be given to you, the user community, for leading the way here but you can now consume great knowledge from within OpenText that is being shared by the likes of  Tim DavisJian Huang, Manuel Schnitger, and Dennis Reil. I cannot emphasise enough how this was a big deal and I thank each and every contributor for making the Community Feed such a success.

Further to this, we introduced the forum into the platform some months later with thanks going to netmedia for their support. This once again has been a tremendous success and I must thank those early contributors of feedback, which meant that we applied tweaks until the user experience was just how we wanted, which in turn affected the adoption. Well over 1000 posts later, the forum is still going strong and is a valuable ‘go to’ resource along with the likes of the RedDot Google Group. This forum along with the open nature of the platform brought with it more and more visits from search, which helped the discovery of the platform by new visitors.

We also made other subtle but significant additions to the site over time. I could name the introduction of Twitter Anywhere to help our users engage and connect with others, the Ideas feature, Group pages, the integration of OTSN, the rating features, or the external authentication proof of concept to name but a few. I could also talk about how significant some of the stats are like the almost 600 strong user base the platform has, which is relatively fantastic for a platform you do not need to sign up to in order to consume content. Although I could, I shall not, as my role has changed.

New Challenge

As of July 2012, SolutionExchange was no longer ‘my baby’. In fact, I had been re-assigned and given different responsibilities a year earlier in July 2011 and felt I had already been too ineffective with my commitments to the community platform. That guilty feeling was however put a little into perspective when I had a telephone call with Uli Weiss not that long back where he stated that he felt the platform was getting better and better. This is quite simply once more down to you, the users, as your time and contributions are what make the platform gain value day by day.

I am now part of the corporate web team at OpenText and have a very grand title as a Web Business Architect. It is very important for me (albeit somewhat overdue) to acknowledge that I have gained this opportunity in part due to the relative success of SolutionExchange and it is for this reason that I pass my thanks on to you in the community. Without your passion, engagement and desire to share in the ways in which you have, it would not have been the success it continues to be and I may not have had the opportunity that I am currently working on fulfilling now to bring some of those valuable concepts learnt during the past few years into the broader OpenText web experience.

Safe Hands

All that said, I’m not leaving a vacant hole. I am very enthused and pleased that Manuel Schnitger has decided to step into my shoes and take on the Community Management role as he is absolutely a perfect fit in my eyes. Manuel has many years worth of experience in various roles and importantly understands the challenges from a community perspective. On top of that, he is always willing to share the knowledge he has (as proven through his blog) and connect others when he is not the right person. Therefore, the community leadership is in good hands and it is pleasing to see the community still progress and build momentum over time.

Simply Thanks

I may not have named everybody who deserves a special mention but hopefully you know who you are. Let me once again thank you all as I look forward to a different challenge where I shall look to apply the lessons I’ve learnt over an enjoyable period in my career that was only made possible with your support.

Regards,

Dan

Doing Good in the Community (and raising Brand Awareness)

“We have become digital crack addicts!”

Within my role as Community Manager for the OpenText Web Site Management (WSM) product, I’m close to celebrating a great milestone – 500 registered users.  This is a truly great milestone as the platform is open, meaning you don’t need to register to read the content and use the platform. You do however need to register if you would like to contribute to the aggregated feed of external blog posts – called “Community Feed”, contribute to the “Tweet Exchange” Twitter feed, or post to the Forum or Ideas feature. The fact that a vast majority of registered users do not provide their details to contribute to the Community Feed or Tweet Exchange is not necessarily surprising but a significant number also have not posted to the Forum as well, which begs the question why register?

I mention this as it could be inferred as another piece of positive qualitative data – perhaps people simply register to ‘belong’ and affiliate themselves with the community even if they are not participating pro-actively straight away. This qualitative feedback is a great compliment to its sibling, quantitative data a.k.a. metrics.

In some cases it even feels like such qualitative feedback has greater value and context. For instance, the open approach to the community platform was endorsed by some praise provided by a prospect (now a customer) who saw that open, honest, and sometimes critical discussion was ongoing in the platform’s forum. This sounds like it should have been a risk as the dreaded variant of the word criticism was used. What turned it into something positive however, was the fact that this prospect could openly see that there was activity in such discussions, and that any such criticism was used constructively and that the engaged members of the community pulled together on many occasions to share experiences or knowledge around a given point of criticism. Internal OpenText employees along with Partners and Customers have jointly played a role here. This subject of openness and transparency is perhaps a subject for another day.

What does particularly interest me in this space, is how digital marketeers and businesses with online assets in general, have become obsessed with metrics. We have become digital crack addicts!

In many cases this is completely understandable as there can often be a very tangible and clearly measurable route from visitor to lead to opportunity to closed deal within a traditional marketing focused website. But what about community platforms?

How does a conversation between peers in a community platform or a blog post by a customer sharing best-practice knowledge tangibly influence that bottom line? Let’s face it, it is that same ROI challenge around “Social Media” that has been floating around for a few years now and we all know there are no magic rules that provide the answer as the context is all so important.

As I tend to be someone who sees the application of repeatable patterns in everything I do, from Software Development code idioms to Marketing Strategies, I thought that there is sure to be a parallel to this challenge and indeed there is – in the traditional marketing world.

The Traditional Approach

This realisation came to me as I recently visited my home town in the UK and noticed that as I drove to see a friend, a local roundabout that had perfectly trimmed grass and beautiful flower beds also had a sponsor — the local Sports Centre.

This really got me thinking as it made me think about why the Sports Centre decided to invest in this way and because of my (digital) crack addiction, I thought how can they measure the return on that investment?

It is not exactly like the UK’s Health and Safety department would allow the placement of an all so trendy QR code on the sponsorship sign situated in the middle of a roundabout on a busy junction — although that wouldn’t surprise me nowadays as I have seen a few on the back of lorries!. I can see the future: “Is this van driven safely? No, then take a picture with your mobile device whilst driving and let us know!” — I digress.

Maybe the Sports Centre simply wanted to raise a positive profile within the community where many of its clients or potential clients pass through. After all, it was a beautifully kept roundabout that many a competitive gardener would be proud of and perhaps it is that association with something well kept and maintained which inferred a well run Sports Centre.

Why Invest?

Whilst looking for an image to accompany this post, I found the image above, which was a stroke of luck. The sponsors on this road sign happen to be CDS, a long-term well-respected Partner of OpenText based in Leeds, UK and one that I’ve had the pleasure of working with on a number of occasions. Given this coincidence, I decided to reach out to Mike Collier who is CDS’ Technical Director to ask directly about this investment. Here is what he said:

“The advertising on the road sign was all about raising brand awareness and coincided with a branding refresh we undertook a few years ago. This was also coupled with advertising on the back of a bus!

The location of the sign and the bus advertising was significant as it was on one of the main routes travelled by business people, into Leeds. The bus advertising was on a route which circled Leeds and in particular the town centre and the main train station.

I am not sure that we generated any real measurable business from it but it did raise awareness of the brand with a number of our existing customers commenting on it in a good way.

We did have a an unexpected piece of good fortune when the bus crashed! (no injuries thankfully) and it was featured on Look North – the local news channel!”

I found this feedback from Mike very interesting as it helps re-enforce the question I’m trying to raise in this post.

The Question

Community platforms such as the Solution Exchange are platforms that in the first instance, are there to help serve the community better. Whether that is the aggregation of related articles on a shared context or the sharing and dissemination of best-practice knowledge, the focus is on generating genuine value for end users to help them get their job done without a hidden agenda of lead generation.

Given this thread of thought, is lead generation a feasible goal for such a community of tech savvy users, who often are abstracted a level or two away from key decision makers? You could track activity at an Account/Company level instead of individual but my feel is that such tracking could come at the cost of user trust — a commodity that is hard to establish but so easy to lose.

What this boils down to, is something very simple — should such community platforms where the intention is to do something good for end users be a Brand Awareness initiative or a Lead Generation/Customer Acquisition initiative?

This question depends on many factors and in particular the context as many “social” communities can certainly facilitate nurturing prospects to a conversion goal. A retail brand using Facebook to promote to potential customers presents a contrasting context to that of an multi-product/service enterprise providing value to an existing customer base in an open and transparent way.

Conclusion – Lay off the (digital) crack!

For me, as the Community Manager for Solution Exchange, my focus is on generating genuine value for Users (Customers, Partners, along with internal staff). It is therefore unbelievably clear to me that I am undertaking a Brand Awareness initiative primarily. Yes, lead generation through referrals and soft promotions is and will be possible but it should not take centre stage.

So maybe it is time for us to lay off the digital crack as it clouds our decision making. Balanced use of quantitative and qualitative data is what is needed here to make educated business decisions. This may not be appropriate in every “community” initiative but one that makes a whole lot of sense to me.

What do you think?

An Open MVC Approach to OT WSM (RedDot) Delivery Server Functionality

This topic has been on my mind for some time now and inspired by a chat with Dennis Reil, I thought I would get something written down with the view to harvesting some of the views out there in the community.

The main context for this post is the enablement of Social Media features within an OT WSM project but the pattern described can be equally applied to other forms of integration through the use of the OT WSM Delivery Server.

I’ve long desired a way in which editors can be better empowered within the constraints of what the site builder/developer has allowed them to do with regards to features like commenting and tagging etc.  It turns out that the flexibility within the Management Server product provides us this very possibility.

With version 10 of the product, came the possibility for a SmartEdit user to drag and drop templates into containers from the panels available from within the SmartEdit view.  This was initially focused on the scenario where a SmartEdit user can build up the various content parts of a page but I’d question why can this not allow the same user to enable some functional elements with a page also?  Even without the drag and drop, the point of enabling that business user was something that I was interested in looking into.

Therefore, before I detail my proposed strawman, I think it is worthwhile to detail some of the guiding principles of the idea that has helped me shape this:

All Content in Management Server

This for me is a no-brainer and something that I often pass off as “best-practice”.  What I mean here is that everything as much as possible should live in the Management Server.  This means the content that is normally typically unique to Delivery Server should be within Management Server (e.g. XSLT and XML files) and published into Delivery Server.  More specifically still, those XML and XSLT files are set up as Content Classes and instantiated within the project tree structure. This provides the following benefits:

  • Keeps all assets together in a single repository
  • Allows the utilisation of version control within the Content Classes of this content
  • Allows for the possibility to parametrise elements within the templates through placeholders
  • Allows for the ability to permeate the setting of certain placeholder values through to SmartEdit users
  • A single project that can be published to have all set up within Delivery Server (although Delivery Server project and system config needs to be managed directly within Delivery Server)

Utilise the Existing Skillsets of Site Administrators and Developers

This is another important one for me to ensure that those wishing to adopt new features don’t suffer from that fear of learning another skill by facilitating the rollout of these features through the existing knowledge they already have.

Adopt an MVC Approach

Why is this important? Well, this well established, tried and tested pattern is there for a reason and you’d be able to search for it easily if you haven’t come across it before.  It nicely separates the responsibilities within the feature “module” and you’ll see how this separates out into different CMS pages or elements in the solution allowing for the constraining of access to the  various parts if need be.

An Open Approach

This one should be obvious and is actually related to the point about skills above.  Encapsulation is a good thing when used right, but when something that can and often needs to be customised is shut away behind what appears to the user as a black box, then that task has just got harder.  Therefore, an open approach of providing access to the various parts if needed is important.

The Provisional Proposal

The essence of this proposal is the creation of a feature module made up of different Management Server components:

  • A Configuration/Controller Content Class
  • A Controller/Model Content Class
  • A number of View Content Classes

It looks like I’ve sat on the fence with the “Controller/Model” part above so I’ll explain the purpose of each of the above Content Classes:

Configuration/Controller Content Class

From a SmartEdit user’s perspective, this is the main Content Class that contains the relevant enabling code/content for the feature.  It is this Content Class that can be dragged into a container on the page for instance.

Within this Content Class, several placeholders can be exposed to the SmartEdit interface allowing control of various feature parameters to a relevant level of user.  For instance, if the feature shows a list of comments and a comment form then a parameter may allow the user to set a “refresh time” for the comments, which translates in the technical world to how long the resultant calls under the covers are cached.

In principle, this Content Class refers to two other Content Class instances (actual CMS pages) – the XML Model and the XSLT defining the View.  In the simplest case, this may just contain a single include DynaMent:

<rde-dm:include content="anc_linkToXML" stylesheet="opt_listOfViews" 
                cachingtime="stf_refreshTime" />

It can be imagined that the option list and the standard field could be exposed through SmartEdit to allow user control.  If the option of the view is not to be given to the user, then an anchor placeholder can be used and a pre-assigned reference to the chosen view instance utilised.

Controller/Model Content Class

OK, so this Content Class is part Controller and part Model and the reason is because it contains the controlling code to invoke a given feature and the resultant XML provides us the model, which is the input to the view.

Typically, it is this Content Class that encapsulate the Delivery Server DynaMent language functionality and with OpenText’s Social Communities product, this will be using the HTTP DynaMent, which I have to say is a refreshing and strong addition to the product.

View Content Class

This is simply the XSLT that transforms the output XML from the feature into your resultant format.  Let’s keep it simple and assume we are generating a HTML result here.  One or more can be created if you wanted to provide different ways of using the model data. Of course, if it is just look and feel changes you’re looking to provide your users control in changing then this may be better implemented in CSS.  The various XSLT Content Classes are if the results are fundamentally used in different ways.  An example that I’ve often used is when a features should return XML or JSON – that’s simply a different XSLT file that is achieving this.

The Value

The value of such an approach is that it enables those with the relevant knowledge to encapsulate examples for others to use.  It therefore empowers business (SmartEdit) users to be able to choose functionality within certain sections of a page – for instance, a user can drag and drop comments or ratings onto an article page.  Finally, it shows an open approach for how such features can be enabled using elements that admins are familiar with – Management Server Content Class templates.

The Next Step: Your ideas!

In the first instance, I would like to understand people’s views on this with the intention to conclude the proposal by making a suggestion to how such a module can be packaged.  I would like to somehow make it possible that an admin can import the module into the Management Server and from there, complete a couple of minor configuration steps and then the module’s feature is available to the business user wherever the admin enables it.

Therefore, leave a comment or join the conversation at http://www.solutionexchange.info/forum.

Why I’m not a Community Manager (although sometimes I say I am)


Whilst away on holiday in Morocco in between a little food poisoning and camel riding, I managed to complete another book that has been on my ‘to read’ list for some time.

Seth Godin’s book – Tribes (http://amzn.to/cX9JpK) – is a worthwhile quick read.  Although I didn’t find the content as valuable as Clay Shirky’s Here Comes Everybody (http://amzn.to/8ZyTXi), motivationally it was great as it really helped me verify some thoughts and ideas that have been lingering around for some time.  The premise is about how groups of people come together all the time due to a common idea and how a drop in transaction costs to form groups or stay connected i.e. through the use of Social Media has facilitated these tasks meaning that the effort of management is not really there anymore.

Instead of ‘Management’, what is needed to give a particular “tribe” direction and guidance is leadership and it is this that I prefer to refer to when I think of my role within the Solution Exchange platform (as well as Jack of all trades – master of none).  This in itself is relatively easy when the tribe is full of talented and gifted individuals and companies who innovate and lead everyday – no this is not some form of cringe worthy kissing ass.  In this case, “leadership” tasks are merely listening tasks.  This of course is a slight simplification but in the most part is true.  Listening is the consumption of audible information.  Observing the industry in which we all work is also a form of inward consumption and one where many input sources are used.  Choosing to implement ideas within the Solution Exchange or simply facilitating the more meaningful discussion for our customers (sometimes one leading to the other) is very valuable and it is this that I shall continue to try and take the lead on.

So, given all this, what am I saying? Maybe a manifesto is required? – I would like to continue and encourage discussion with those in the community, which the Solution Exchange platform is attempting to unify and connect, in order to bring light on examples of how customers are using and can better use Open Text product.  This in turn will help raise the profile of leaders within the community who are already doing great work and have done for years.  I’ve already established some great connections with some colourfully talented people in the last few months and I’d like to start putting some of these people (and companies) on a pedestal.  Lastly, and most  importantly to me, I would like to continue to lead by example and listen to the community to hear how improvements can be made and better connect the right people to take part in these discussions.  These conversations are so valuable as people inherently like to be listened to, especially when they see that someone has taken action as a result.  In my opinion, some of this is already happening and will continue to happen more and more adding value to the community initiative.

One final question; what is your part in this? Simple – contribute, discuss, and engage – please feel free to reach out to me to discuss what you think is right or wrong.

Twitter: DannyBaggs
Solution Exchange Feedback: www.solutionexchange.info/feedback

Thanks for listening!

Danny Baggs
Community Leader

We are the filter

Whilst there is a lot of discussion around the ‘noise’ that social media technologies are creating, with talk of “super-contextualisation” or “information filtering”, a revelation has dawned on me.  Whilst technology will have a very big part to play here in helping to focus content to individuals that is more relevant to them, let us not forget that a lot of this we have already: it’s all about the people baby.

I’ve noticed a big change in my online habits over the last 6 months in that in my quest for relevant information, I’ve moved away from my traditional feed reading tools and concentrated on my Twitter community.  My connections to various people represent different interests of mine.  Some of whom cover one subject, some more than one but all relevant to me in some way.  What I have found through this transitional 6 months is that the stories that I would have historically paid more attention to, tend to permeate through into my Twitter stream though the various hooks into FriendFeed and other Twitter related sharing services.

Someone recently debated with me that this type of behaviour will only funnel things of interest to you and not allow for those tangential subjects to creep in, that will ultimately become more of a standard core interest.  I disagreed as it is my relationship with individuals in the real world that exposes me to new things of interest, from the extremes of taking up flying power kites to gaining greater insight to the enterprise 2.0 culture shift.

I admit, that in my online world, there is an abundance of such initially peripheral subjects that I choose to follow but it is down to my own discipline and focus in choosing what to read further into or not.  Consider it a filtered stream off the roaring river that is Social media.

What do you think?

Fun and Games with IIS7 and Tomcat Connector (Jakarta)

I needed to run Tomcat behind IIS and delegate html page requests as well as xml page requests from IIS 7 through to Tomcat.

As I had done this a number of times with IIS6 and Helicon’s rewrite tool, I thought this would be easy… Oh no.  I was wrong.

Therefore, here are a few things to be aware of:

  • Make sure you have installed the Tomcat Connector OK.  I found this site to be useful here for the Tomcat Connector install on IIS 7: http://www.iisadmin.co.uk/?p=72
  • Install the ‘URL Rewrite’ module within IIS 7.  I didn’t do this myself, not because it was difficult… I just simply didn’t do it and would guess there is enough info on how to do this.
  • Configure all rewrite rules at the server level and not at the individual site level.  This is because there is some issue around chaining an HTTP request through an ISAPI filter like the Tomcat Connector and then the URL rewrite module or vice versa.  I even tried another ISAPI based rewriter like the one from Helicon (http://www.helicontech.com) resulting in the same challenge that the rewrites and redirect (delegation – not to be confused with a 301 type redirect) worked independentlybut not together.
  • The syntax for the rewrite rules is different from Apaches mod_rewrite – e.g:
  1. ^/?.*/(.+.html?)$ would normally handle input urls like /index.htm or /level1/level2/index.htm but this was not liked by the URL Rewrite module in IIS 7.  What worked instead was ([^/]+.html?).
  2. Remember to use {R:1} syntax for getting the back references instead of $1 etc.
  3. Remember to use conditions if you have multiple sites in the same instance utilising the {HTTP_HOST} and {SERVER_PORT} strings.

Let me know if you found this useful or if there are other useful references to add into this.  I personally found it difficult to dig up something similar.

It’s just nice when someone engages…

Recently, during a holiday in Australia, my girlfriend and I were walking down the main street of Bellingen, a sleepy and beautful town in New South Wales, when a burly bearded man in an apron approached us to ask if we were looking to eat on that particular evening.  We weren’t as we had planned to eat back at our rather cosy campervan and were more in the mood for a coffee if anything.  However, I asked what was on the menu and he was excited and passionate to tell us about the menu.  He additionally latched onto our desire to have a coffee and claimed to have the ‘best coffee in town’ but also backed up his words in action by offering the coffees on the house if we didn’t agree that they were great.

He got us with this offer and so he guided us past the competing cafes to his clearly very new business and sat us down.  The lattes came shortly after and they were as good as he suggested but rather than pay up when he came to get the bill, we decided to stay and have a 2 course meal.  His eyes visibly lit up and willingly told us about a couple of the dishes that he had forgot to tell us about beforehand.

The meal was great, made with very fresh ingredients and the whole experience got me thinking about how a simple bit of effort to engage, listen, and action with potential customers led this guy to have two satisfied customers and a reasonable tip on top of the bill.

The concept of Social Media of course is not at all that different…

The owner was engaging with potential customers by conversing on the street corner away from his shop front as that is where the people were passing and presented the greatest opportunity – remember, we weren’t even looking to have a coffee initially.  Not too dissimilar from the way that social media has allowed businesses to engage in conversation away from the corporate website.  Taking active part in conversational hot spots around the web could equally present greater opportunity than simply focusing on the dated strategy of getting visitors to the corporate site.

The conversation with the owner allowed him to listen to what we wanted and make a proposal that was appropriate and personalised to our desire for coffee.  Again, social media presents a tremendous opportunity for companies to listen.  This is very much understated and misunderstood as many see the new set of social tools as a new channel to promote within.  A certain amount of self promotion is ok but it is important to have context and be able to back things up (i.e.  “We have the best coffee in town. If  you don’t agree, you don’t pay”) but to listen is where the value truly is.

In the end, we were so satisfied with the service and the product that it led to a greater income than two coffees (which he put on the house in the end anyhow).  Had we popped by and decided to try a coffee without the effort of the owner’s engagement, would we have stayed for our 2 courses?  Who’s to say, but it is clear that passionate engagenment in this way, comparible to what a social media strategy should be formed of, definitely contributed to us having a pleasant evening that was much better than either of us had expected.