Email CMS & Template Parser class

The challenge was to create a mechanism for routinely customising email notifications based on a library of about 20 different draft emails. Also, those draft emails needed to be available to site administrators for editing.

The CI Template Parser Class went a long way to help overcome the challenge in an efficient manner but it was by no means a painless solution. Up to and including CI v.1.7.3 the Template Parser class the only input accepted for parsing was a template file, meaning a View file per email draft. I was not keen on this for a couple of reasons. Having the draft emails stored as files made the CMS aspect messier than I wanted. Also I didn't want to dump a load of email related templates in with the actual site Views.

Then along came CI v.2 which included a broadening of the accepted inputs. Specifically, it now also accepts a string.

Yureka! By storing the various email templates as text within a database table they can be easy retrieved and passed into the Template Parser. Thus making the CMS aspect a lot tidier as we no longer have to consider any file handling for the CRUD functionality as it is all stored within a database.

Thanks EllisLabs for doing the hard work for me, before I even got there. Should anybody reading this be stuck on an older version of CodeIgniter here is the library extension I created, using the CodeIgniter2 Template Parser code, for backwards compatability.

$user = $this->db->where( 'id', 1 )->get( 'user_account' )
$data = array(
'user_email' => $user->name,
'user_password' => $user->password,
'user_profile_link' => site_url( 'user/'.$user->id )

$email = $this->db->where( 'email', 'welcome message' )->get( 'draft_email' )
$message = $this->parser->parse_string( $email->content, $data, TRUE )

Posted in Coding | Tagged , , , , | Leave a comment

Sitting is Killing you

Sitting is Killing You
Via: Medical Billing And Coding

Posted in Online Developments | Tagged | Leave a comment

Landing the project jumbo

Working backwards from the successful landing my focus falls first to those doing the work. It is common knowledge that fatigue will give rise to unforced errors, which only further strain available resources. Every endeavor will present unique challenges, balancing how much of this strain falls on available resources is vital. Not mitigating these problems can quickly lead to burnout, a debilitating condition. Instead the team must be protected such that they can reach the end not exhausted, able to remain focused and in complete control. This way they can be ready to meet any last minute challenges efficiently and still have energy to readily embark on the next phase or project.

To begin to be able to achieve this resource balance on-going feedback  is required. Focusing on the critical attributes of a project will make it possible to check the pulse and make adjustments accordingly. What those critical attributes are can only be determined on a case-by-case basis, informed by experience and guided by the expected goals.

Every commercial flight has very clearly understood goals before it begins:- journey cost, final destination, expected time of arrival, and arriving safely of course. The manner in which these goals are achieved is variable, be it by first or economy class. Either way the core goals remain. Situations arise when those core goals must be altered, for instance forced diversion to a different destination or late departure. Yet procedures are already in place to handle the situation professionally. In the same way problems on projects should be anticipated and when they arise be efficiently handled so customer expectation can be guided towards a mutually satisfactory conclusion. Even if that is not inline with the original core goals.

Finally, having the appropriate apparatus to effectively monitor progress and having established procedures to efficiently manage variance from core goals is not only for massive organisations like airlines. It is available to any organisation willing to invest in consistently documenting, reviewing and ultimately learning from their past actions so as to be better prepared for the future.

In summary, I believe it's clear to say that every soft landing is the cumulative result of every action and resource input previous to that ultimate goal - arriving at the final destination intact and on time. Neither heroics nor additional resources can routinely substitute for closely monitored and finely tuned operational management.

Posted in Project Management | Tagged , , , | Leave a comment

The Fine Gael web connection point

Firstly, a full disclosure is appropriate. I am not a supporter of Fine Gael, nor a believer in Irish politics in general. Like far too many other Irish people I am highly sceptical of any Irish politicians ability to actually affect change. However, my intention is a critique of Fine Gaels initiative in on-line engagement and nothing else, as much as possible.

In recent years Baraka Obama and Tony Blair have famously used on-line initiatives to conduct 'listening exercises' to engage with their electorate. Both were successful, particularly for Mr. Obama, in so far as they reinforced their message, gained support by engaging with people, and extend their reach by empowering others to advocate on their behalf. While FG seem to be aiming to emulate these successes the content of their message and quality of delivery has constantly let them down.

Shortly after it was launched the website was hacked. This was claimed to have been done by members of the infamous Anonymous group, though they later denied their involvement. Embarrassment aside, a more serious aspect of this was that the private details of over 2000 people who had left comments on the site were also compromised. This also highlighted the fact that they were hosting their site outside Ireland. So much for making every effort to support Irish jobs.

Since that fumbled start FG have only gone from bad to worse. 'Geting' further away from a compelling rally call with every press release, most recently the 'Twolicy' has to go down as one of the most absurd footnotes in Irish political PR. From a professional perspective it seems I could rightly pour scorn on the FG campaign effort all the way up to the election.

However the result of a poll on a prominent Irish news site,, sparked a reconsideration in my view. I remain hugely unimpressed with the FG effort yet 45% think it will have a positive effect. In a manner this represents a high proportion of voters. Do those 45% consider the FG effort to be better than nothing, or are they 45% who are not burdened with the critical eye that can see so many flaws in the threadbare, online tapestry FG have hung out?

This gives me pause, bearing in mind that many people really couldn't care less if a website is IE6 compliant or using the sexiest mobile/HTML5/synergy-tastic/iOS/socially integrated widget thingy. Being well informed in online trends and technologies dictates that this shouldn't be the case but knowledge and democratic mob rule don't necessarily go hand in hand. Therein realising that I have lost focus on the real issues.

The clamour surrounding #GE11 only acts as a further distraction to the real issues at hand. Crippling bank debts born of criminally negligent governance, a public sector so grossly costly that any merit it earns is consistently squandered, and a nation so apparently apathetic that all manner of mis-management goes unchecked. Regardless of our current position we are the masters of our destiny, that is a route our social and political system is supposed to affords us. But it must be earned, it must be taken in hand and wielded.

Posted in Online Developments | Tagged , , , | Leave a comment

What is quality?

From the work laid down by Joseph Juran, W.Edwards Deming and Philip Crosby amongst others the commercial world has embraced the importance of quality and actively explored methods for applying it. Whether it is Total Quality Management, Continuous Improvement (Kaizen) or Six Sigma there are tried and tested frameworks for consistent endeavour underpinned by quality.

In reality the concept of quality is nothing new, and not something that required great thinkers to articulate. Rather it was the explosive growth of industrial and corporate production that required the quality question to be reframed in practical terms. Though the same principles apply, the difference between the context established for massive corporations and that required for smaller organisations demands that the quality question be reframed once again. All too often the shortfall is not in awareness of the impact of poor quality but rather in how to go about consistently achieving it.

'Everything can be improved' C. W. Barron

For an organisation operating in a business sector not permeated with regulation or industry standards it can seem unnecessary to divert resources from production to quality processes. In fact the reality is quite the opposite. Quality should be planned in from the very beginning rather than retro fitted. By working a quality aspect into planning expensive rework can be avoided, expensive time line over runs can be averted and better supplier relations or greater client satisfaction can be achieved. All of these make good business sense.

Settings quality targets during the planning process is just one aspect of improving quality. Achieving those targets in the heat of production is another matter entirely. Inevitably the need for adjustment in the original plan will arise during production. Often through these late changes quality targets go astray. This risk can be mitigated by formally establishing quality control and change control mechanisms. By allocating resources to a quality review framework standards can be maintained without compromise or over taxing resources. Through continuous improvement staff will likely become more knowledgeable, gain increased business, earn higher profits and, especially common within software development, avoid costly gold-plating.

Philip Crosby succinctly stating that 'quality is defined as conformance to requirements'

Surely doing exactly this is what every organisation should be focused on. Quality makes good business sense and it also offers a range of fringe benefits. It may seem to be too much to try and achieve quality all in one go. That is no good reason not to immediately start taking action to do things better than before.

Posted in Project Management | Tagged , , , | Leave a comment

#24theweb – Lessons learned


  1. Where is the little tortoise gone?
  2. Programmer = detail specific control freak
  3. For someone in his position I think this is a really interesting perspective. As a WWII General being somewhat authoritarian is to be expected, otherwise I think he is bang on.
Posted in Online Developments | Tagged , , , , | Leave a comment

To the moon in this decade

The above statement made by JFK is the essence of what a project charter should encapsulate. Direct, clear and goal oriented. Essentially an executive summary of the goal that hasn't yet been researched, written and achieved. If this document is well formed it will not only act as the yard stick but also the buy-in ticket. Getting everyone on-board and facing in the same direction from the very start is vitally important to the future of any project.

This is where the Stakeholder Register comes in. The process of identifying everybody who is involved in, can influence or is impacted by a project should be considered a stakeholder. Failure to recognise this will leave the project at risk of complications down the line. This article by Rich Maltzman (PMP) expands on this further.

Project Management Plan

Compiling the Project Management Plan is a major phase within a project managed project. It is the process that brings all the initial research, communication and documentation together.

Establish the total scope of the effort, define and refine objectives, and develop the course of action required to attain those objectives - PMBOK

This will include inputs from as many of the following as appropriate - scope definition, project context review, requirements analysis, budget, schedule, quality assurance, HR plan, communication policy, risk management and procurement plan.

When this document has been completed it is forwarded to the project sponsor to review. They must sign-off on it entirely before the project can move forward, from the initialisation to the Planning/Control & Monitoring/Executing  cycle where the work proper begins.

When the process is completed and the Project Management plan has been completed it is then handed over to the project sponsor. They should then review and approve it, giving the project a unified statement on how to integrate and coordinate all subsidiary plans.

Posted in Project Management | Tagged , , | Leave a comment

Projects versus Operational Processes

By comparing two things it can help us to see differences and in turn help us to understand the individual attribute of each better. Through comparing project based and operational based activity clear differences are apparent.


  • Have a specific start & end date/time.
  • Aimed towards achieving a singular goal.
  • Typically undertaken with transient resources.
  • Staffed by goal oriented people.
  • Best results achieved when effective.


  • On-going, without set completion date/time.
  • It is about achieving consistent, repetitive results.
  • Can rely on a stable supply of resources.
  • Manned by an observation, maintenance & gradual improvement mindset.
  • Primarily about efficiency.
Posted in Project Management | Tagged , , , , , | Leave a comment

Known unknowns & Unknown unknowns

There are known knowns; there are things we know that we know. There are known unknowns; that is to say, there are things that we now know we don’t know. But there are also unknown unknowns; there are things we do not know we don’t know.

At the time I remember laughing out loud in response. Little did I know in time I would be confronted with this style of situation assessment again. The quote itself and the view point expressed within it comes from a system of decision theory deeply rooted in project planning and project management. I am currently reading a course in Project Management and I am endeavouring to write about what I learn as much for myself as anything else.

As with any new undertaking, I start at the beginning. The next post in this series will look at the Fundamentals of Project Management.

Posted in Project Management | Tagged , , | Leave a comment

Combat Website Obesity

1. Advancing technology is giving us increasing capabilities while at the same time it is making us increasingly lazy.
2. With greater availability of fast food we have become gluttonous. Similarly the advent of CSS and Javascript frameworks makes it easy for us to implement fancy formatting and functionality without due consideration of the associated side-effects.
3. As food production is now corporate business the actual quality of what we consume is often not the highest priority of the producer. I don't think it is unfair to compare this with the increasing amount of content on our pages that are served from elsewhere e.g. Google Adwords or Facebook social widgets.

As broadband speeds have generally improved the demands of bandwidth heavy content, integrating social platforms, software frameworks on further compound web pages already over burdened with excessive graphics and complex page structures. As website design has developed sophistication so has the expectation of the web user. As broadband services have improved web designers and developers have become increasingly lazy on the issue of website optimisation.

This not only affects the download speed but impinges on user experience. Worst of all, for web developers,  it gives even more advantage to platform specific apps that tend to be more focused, detracting further from the web as an attractive platform. Never mind how unappealing bloated, media saturated pages are to the rapidly rising numbers of mobile web users.

Taking a lead from this Mens Health article on the subject of sustained weight loss I am going to explore what we can do today to make the web a leaner, more responsive space.

State your weight loss aims and focus
What is the core purpose or aim of your site? It is vital to reach a definitive answer which everyone involved in your site buys into this as any room for disagreement down the line can only result in compromise. Compromise can only result in your weight loss efforts being diminished or halted entirely.

Mental preparation for weight loss
With a clear vision of your priorities prepare yourself for some stubborn bargaining with both yourself and your site support team. New feature requests, new content types, etc. will be be proposed/demanded and it will be up to you to remain focused on your top priority, a lighter and more responsive website.

Keep a food diary to monitor weight loss
There are a wealth of free tools available to help you easily achieve this. The YSlow plug-in for Firefox is a good tool for dissecting the components of your web pages. It gives a clear break-down of a pages components, as well as the nifty Grade overview of a page. All the while giving useful feedback on how you can go about improving it. Your personal trainer, kinda.

You really should have traffic tracking software in place already, most likely something like Google Analytics. Yes it does introduce a page weight all of its own yet I think the benefits it offers out-weight the page burden. Without measured progress and perspective how can any progress be tracked.

Lifestyle and weight loss
There is the old acronym Keep It Simple Stupid (KISS). I think this has huge relevance in this context, though perhaps a small adjustment to the wording would focus that relevance further. Keep It Streamlined Stupid. Also, there is no reason why this shouldn't also apply to the number of categories of content you publish, the number of products you want to sell or variety of information you attempt to remain authoritative over. Remaining focused in this regard can also reap great rewards, least of all is a slightly quieter mind.

KISS - let this be the Occam's razor that keeps us focused on the simplest answer being the best, though conversely the simplest may not be the easiest to implement.  For instance is it better to install a plug-in to make some third-party functionality available or take the slightly longer route of going through the third-party API yourself and implementing only what you need. Thus removing any unnecessary extra code.

Be realistic about weight loss
There are aspects of a modern web page that can't be omitted. We of course need the underlying HTML page. Without at least some CSS our pages will be so unappealing to visitors that most likely there won't be any in no time, so again some is required. The reality is that we must compromise between streamlining pages and delivering something engaging. For me the balancing point rests on requirements rather than trends, common sense over feature fetishism, Getting Real instead of MS Project.

Cut out snacks to maintain weight loss
There is always the temptation to add quick hacks to implement a new feature. Inevitably these hacks are not done as well as they could be if they were well planned. They add bloat to your pages, slow the page delivery and are doubtless non-essential.

Eat a healthy diet to maintain weight loss
Keeping constantly up-to-date with the latest versions of all the software you use. Keep up-to-date on the most effective ways to use that same software. Don't sleep - stay tuned in and actively focused on making and keeping your pages bloat free. Otherwise there is the very real reality of you waking up some day soon and finding your website has joined the expanding bloated hordes. The same way so many of us humans have.

Keep it Streamlined Stupid.

Posted in Online Developments | Tagged , , | Leave a comment