Archive for Tips

How to prepare your organisation for the new System

During recent years I have witnessed different systems to be implemented in a wide variety of organisations.

Observing their successes and failures, I can advise on the common pitfalls you can encounter and of ways of preventing them.

 This post is by no means complete, but it should provide you with a quite good understanding of the principles that govern the introduction of a new System.

 First of all - you need to ensure your staff has a sympathy for the new System.

They need to know, that it’s developed for their own good, to make them work more efficiently and have better access to information they need, to reduce communication bottlenecks and ultimately make everyone happy and less stressed. And by the way - to also save money and improve your customer service.

This cannot be achieved by sending out a Memo saying that “the work on new System has began, please be cooperative for the Project Team should they request any information”.

Your staff would perceive that memo as a “organisational restructuring” and won’t be keen to cooperate when they’ll need to.

Instead, try explaining your people what’s going on and that no redundancies will follow successful implementation of the system.

Once you have your staff on your side you can assemble a Project Team which will be responsible for managing the project at your end.

Failing to achieve that won’t make your consultants’ lifes or jobs easier, and will unevitably doom the project.

The Project Team needs to have a full authority to make decisions on behalf of your organisation, therefore it needs to have full access to your company’s resources and knowledge. Trust me, they will need that sooner than you think, and in a bigger extent.

However - don’t worry, they won’t share any sensitive information with your consultants, they only need that to make an educated decision on issues raised by the consultants.

When talking about the Project Team - it needs a leader. And a good one, since this is crucial for the whole enterprise to stand a chance of success. This leader should have a great domain knowledge of your industry, have lots of time to answer consultants’ questions and attend meetings with your consultants.

This is a tricky part, because once you have in your team a person having all these characteristics, you’ll inevitably give them big responsibilities within your own team, so he/she won’t have the full freedom he/she needs to work on the System. So it’s a tricky part, a possible solution to it is appointing another Contact Person in your team, which will handle all the communication with Consultants, and relay information onto the Team Leader.

Anyhow - you need a single Point of Contact for the whole time of the project, otherwise the communication inefficiencies will start to impact the timescale and the cost of the project.

As far as the Project Team is concerned - it also needs to have people from all the divisions/levels of your company in it.

Of course - not the whole company, but if you have 30 people in your Customer Service department, you should appoint one or two of them into the Project Team. The same goes for your Accounting Department, Operations, Marketing etc.

The point of doing that is - their input will be invaluable for you when designing the information workflows and the scope of information being available from the system.

Only customer service rep can tell you if they need to be able to view clients’ recent enquiries or not, and if so - what kind of information they expect to be able to get from your system.

This is crucial, because your system won’t be able to show any information it doesn’t have in it in the first place.

And your field staff, spending whole days doing their duties - they know exactly what they need. And you need to get them into the team for this reason.

Besides - if your staff has the access to early stages of your project they’ll also give you advice on required features. You need that as you go along. Experience shows, that your team won’t be very good at predicting what they’ll need in the future, but once they get a prototype of a system (some forms to play around with, and screens which actually allow them to do something) they’ll get back to the Team Leader asking if this and that screens couldn’t do more things, and that it would help them. This is exactly the sort of behaviour you want to encourage in your team, to make everyone proactive and make the Change happen.

Having achieved that you can be confident, that you’re well prepared for the Project to succeed.


Comments

When you need an IT consultant

It’s predominant in the general business that IT consultants are these geeks you invite when you have a virus, or your printer doesn’t work - or when you need to move your offices and need to configure your network.

This is of course most of us are capable of doing anyway, but this doesn’t define our speciality, it’s merely a support role.

What I believe is - it really pays to put more trust in IT consultants.

Most of us are geeks who like gadgets and new technologies.

We like everything that is cool.

But surprise, surprise! These cool things are not cool because they give weird sounds or change colours - they allow people to do some stuff quicker or more efficiently.

We all know about Mail Merge feature in Word, but I don’t know many clerks who actually use that feature on a daily basis, and most of them would hugely benefit from it, since a large chunk of their jobs is sending the same (or similar) letters/documents to different people.

You can always send these people to trainings and tell them to “get on” with their duties. And they will - eventually, after spending days in trainings and only learning one or two things, they will gain new skills, but if they lack the motivation to keep brushing their skills, this gain will eventually deteroriate.

Everyone of us knows the feeling, that there’s simply too much to do, the Inbox is always full and the day is too short.

But, when we pause to organise our work little better - we free up more time!

This is where IT consultants come to the rescue - they don’t know anything about your daily duties, so you need to explain everything to them as you go. When doing that you will both start to see repetition and common sources of problems you encounter every day.

And in most cases the consultant will offer you a solution to your headaches.

It is really easy to get bogged down in the Todo list for Today and not think about your efficiency, but trust me, optimising your work not only makes you less stressed, it also improves the quality of your work and saves you money!

Of course, with IT consultants you need to be vigilant, they will sometimes try to sell you what they specialise in, not what you need, so always do a Return On Investment forecast before you actually commision any work to them.

Comments

Plugoo - a great way to enrich your users’ experience on your website

Thanks to the courtesy of Brian of Solution Watch I got to know about Plugoo - a great widget for any website which allows your clients to send you IM messages directly, without downloading any software or creating accounts!

It’s excellent, integrates perfectly with Jabber/MSN/Yahoo Messenger and allows instant bidirectional communication between you and your clients!

It’s now being tested on our websites ;)


Comments

Offline advertising for business software

Just a quick note with a conclusion - it doesn’t work when done on a low budget.

When you have a 1/4 of a page with your article published in a magazine targeted to “businesses” in general, chances are you will be contacted by about 0 people, given an audience of tens of thousands.

This wasn’t a very costly lesson though, as I say, I did it on budget ;-)


Comments

Adwords tip

I’ve found Today that limiting your Adwords “region” to your postcode + area in some radius doesn’t exactly work the way you think - Google seems to have hard time accurately mapping the IP addresses to physical locations, my region was “ME15 8LJ + 150 miles” and my ad was almost not showing anywhere - after changing that to England the results are dramatically different, one of my campaigns suddenly has <b>100 times</b> more impressions, and the other one - <b>30 times</b>.

I don’t think it’s because the South East England being scarcely populated ;-)

So - if you want to reach anyone with your ads - aim for the whole country, otherwise you’ll miss out on your neighbours.

Another interesting thing seems to be that the ads are reacting to “keywords” and “phrases”, but when one inputs your “keyword” and appends the query with other words - the Adword doesn’t seem to show - I’m not sure if that’s appropriate, but that’s the way it seems to work.

I’ll post my further findings when I gather more experience with that system.

And by the way - Google doesn’t have any problems charging my account for clicks, one thing less to worry about :-)

Comments

Learning from my own mistakes

I was looking for a hosting provider for yourclients.co.uk and I decided to go with UK based namesco.co.uk.

Everything was fine for the first 10 minutes - they do both PHP4 and PHP5, and MySQL5.

Sounds good, doesn’t it?

After signing up for the account and receiving my details I run phpinfo(); and it states: PHP4.4.1

What?

Where’s my PHP5?

After a quick email to support@ I received an answer that to run PHP5 scripts the files need to have .php5 extensions.

That’s obviously rubbish and I need to find another host…

Or do I?

My system will run off the main index.php acting as a PageController, so effectively no other files will be “ran”.

What I should be able to do is to rename my index.php to index.php5 and… That’s it!

I hope that works, but I don’t see a reason it shouldn’t, after all when the file is executed it already knows which version of the interpreter to use.

So - 1:0 for me, my system will work even on not-optimal hosting configurations :-D

Comments

When excessive complexity is not excessive

I had an interesting assignment recently, having received a multi-dimensional PHP array (about 4 levels deep) and was supposed to enable editing it - so what might seem obvious is starting like:

I decided to come up with an Object model for it looking like:

And I also created some other classes, representing the sub-nodes of the original data.

But what is most important in that kind of approach:

  • When the original structure changes - I only need to modify the getters/setters in my Object Model!
  • The code is clean and readable, as $element->getName() is much easier to comprehend than $array[”elements”][0][”element”],
  • The rest of your code doesn’t care about the data structure,
  • The OO flexibility allows you to abstract the “data” handling to be compatible with other data sources, e.g. XML files or relational databases,
  • You avoid “offset errors”, when you try to do calculations on a node which comes from different level of the array than you expect it to,
  • No repetition - you define only once “what comes from where”, later on you just user your definitions,

Of course the above sample also needs proper “usage” abstraction, which basically means objects are used according to the business rules, not the “byte manipulation”, e.g.

setFrom($data);
$MainNode->getName();
$Addresses = $MainNode->getAllAddresses();
foreach ($Addresses as $address) {
$address->sendNotification();
}
// and we continue in this matter
?>

The key point of that is to make your code readable - when your method names are obvious you don’t really need many comments in the code - it all seems self-explanatory.

Of corse you should still document any unexpected behaviour and quick hacks - but it’s better not to introduce them in the first place.


Comments

Hardest part of the SEO

After launching my new websites the first thing to do is to get the search engines actually know and respect them - I’ve done everything I can, set up the meta tags, used appropriate keywords in header tags and inbound links, linked from all the relevant sites, added the sites to the online directories of all sorts - but the biggest problem of the whole operation is - it takes enormously long time to actually see the results.

This is very discouraging, what can be more frustrating than a finished website which noone uses?

I think it was a great idea to actually register the domain names few months before starting work on these websites, so their names could propagate throughout the Internet and accustom search engines with these URLs.


Comments

Zend Studio debugger advice

Whenver you’ll find yourself in a situation where you click the ‘debug’ button in your browser (on the Zend Toolbar) and nothing happens - here’s where you should look:
In zend.ini there’s a line:
zend_debugger.allow_hosts=127.0.0.1/32

Just change this to your IP address and everything should work fine.

I found out about this by reviewing the Apache error log for that domain.

Comments

Drawbacks of Open Source

I recently re-investigated the PEAR LiveUser package - it wasn’t suitable for “grab and use” a year ago - and I was surprised to see that the changelog for this package is 4 years long! Come on, guys! What’s taking you so long?

At least there’s now installation instructions for it :-)

But really, sometimes it’s quicker to re-invent the wheel and have your custom authentication system done i two days and reuse it - getting accustomed with LiveUser’s documentation and API would take a comparable amount of time - and bugs you’ll find will be yours bugs, not the ones in highly complex code written by an alien team of people.


Comments

« Previous entries ·