Web Development by Koneka http://www.koneka.com Engineering elegant, innovative, and reliable Web apps Thu, 19 Jan 2012 14:54:09 +0000 en hourly 1 http://wordpress.org/?v=3.2.1 On The Road – Koneka Exhibits at IM Days Ottawa http://www.koneka.com/im-days-ottawa-201/ http://www.koneka.com/im-days-ottawa-201/#comments Wed, 23 Nov 2011 14:26:07 +0000 Pierre-Olivier Charlebois http://www.koneka.com/on-the-road-koneka-exhibits-at-im-days-ottawa/ Koneka sponsors IM DAYS in the National Capital Region. We showcase SharePoint customization and SharePoint application lifetime management.]]> Koneka sponsors IM DAYS in the National Capital Region. We showcase SharePoint customization and SharePoint application lifetime management.

IM Days Ottawa

Whether introducing SharePoint to a new organization or extending an existing site, we have improved how clients share ideas and expertise. We specialize in these areas of enterprise document management systems:

  • Project management: business-analysis, concept design & wireframes, development, production roll-out
  • Front-end design: public-facing portals for information and public documents (including e-Commerce functionality)
  • Infrastructure and licensing: provisioning server farms (back-end database server or load-balancing front-end servers) while optimizing your licencing expense for your needs
  • Customization: we develop user-friendly Web parts and create data-access layer that allow integration with your legacy systems

Koneka has deep experience leveraging the list functionality within SharePoint, facilitating quick inclusion of existing data collections, such as employee tables or case management tasks. This has sped the implementation of SharePoint deployments and ensured it always stays in synch with dynamic data stored across the enterprise.

]]>
http://www.koneka.com/im-days-ottawa-201/feed/ 0
Top 5 Practices of Successful Mastermind Groups http://www.koneka.com/top-5-mastermind-group-practices/ http://www.koneka.com/top-5-mastermind-group-practices/#comments Tue, 01 Nov 2011 13:36:09 +0000 Pierre-Olivier Charlebois http://www.koneka.com/?p=823 What is a Mastermind Group?

Karyn Greenstreet gives a good description of a Mastermind Group:

“There is synergy of energy, commitment, and excitement that participants bring to a Mastermind Group. The beauty of Mastermind Groups is that participants raise the bar by challenging each other to create and implement goals, brainstorm ideas, and support each other with total honesty, respect and compassion. Mastermind participants act as catalysts for growth, devil’s advocates and supportive colleagues.”

Here are five practices that have worked well for us since the inception of our group almost a year ago.

5. We meet every month

No one can touch the last Tuesday of each month from 2 to 4 PM on my calendar. The core members of our group have religiously attended all of the meetings. This recurrence has allowed us to build strong bonds, and forces us to follow up promptly on our commitments. Wrought iron is curved when it’s hot; so are the behaviours we wish to enhance. One month span is the perfect timing to keep our self-development efforts at the right heat.

4. We took the time to know each other

We spent the first six hours together discovering each other’s backgrounds, careers, and aspirations. This knowledge has proved itself instrumental at articulating meaningful suggestions to team members’ challenges. A Mastermind group is not a networking session where you need to meet the most people in a shortest amount of time. It’s all about building long term trust and synergy. Take whatever time is necessary to understand were your fellow members are coming from, so they, in turn, appreciate where you want to get.

3. Each of us must bring a new challenge at every meeting

All meetings are more productive when there is an agenda. Our schedule is very simple and never changes:

  1. Report on the actions you took to overcome last’s month challenge,
  2. State and discuss your current challenge,
  3. Brainstorm with the group on approaches to reach your goal,
  4. Become accountable of your progress by committing yourself to execute 2 or 3 actions items synthetizing the suggestions that were made to you.

This approach always keeps the discussion focused, and ensures we never become dry on subjects. The day you don’t have any challenge to solve is the day the group has fulfilled its ultimate goal for you. Give me your secret if that event happens to you!

Some challenge that we have discussed:

  • What should be included in the task list of the COO I want to hire?
  • I want feedback on a TED presentation I am working on.
  • This is a list of all the tasks I did in the past week. Could you help me rating the ones that have low, medium, or high business value?
  • How can I build a self-sustained business that doesn’t need me?
  • What should I consider when writing up my marketing plan?

2. We are accountable for the actions we take to overcome our challenges

We found that brainstorming each other’s challenges was great, but it was lacking an implementation plan. We ended up adding to our process step d) “Commit to action items” and the follow up action a) “Report on your progress”.

One of our members wanted to invest time on his marketing. Without step a) and d), our recommendation ended up being “Consider writing blog articles”. It is a good point, but generic and hard to commit to. He brought the same challenge after the introduction of our “action items”. He ended up with the following tasks: “Write top 10 article titles that would appeal the niche you are after”, and “Verify with your partners if you can use their existing newsletter to broadcast your article(s)”. The follow up report showed measureable progress.

One of our rules is that all the Mastermind tasks should not take more than two hours to execute.

1. The Mastermind Group members!

All the value you get from Mastermind comes from the members of your group. Not only will they give you a brand new viewing angle on your challenges, they will also give you access to their “loose ties” by connecting you with people in their network.

Before introducing the members, I would like to thank Huiping Iler for having significantly contributed to our Ottawa Mastermind group.

Huiping Iler, President of Wintranslation

Wintranslation offers professional translation services in over 70 languages.

Linda Manning, Director at Leadership Mosaic Inc.

Leadership Mosaic offers strategic training and development for inclusive workplaces, using blended learning techniques

Doug Tetzner, Partner at Odgers Berndtson

Doug provides quality executive search services locally and nationally, with an even stronger ability to serve you globally.

Asif Rehman, President of Real Product Marketing

Real Product Marketing offers Strategic and Product Marketing Consulting

Pierre Olivier Charlebois, Founding CEO at Koneka

Koneka engineers intelligent, elegant, and reliable Web applications.

We regularly welcome guests in our group. I mention Dinesh as he has participated in several meetings.

Dinesh Kandanchatha, The Karmic Coach at KarmicCoach.com

Karmic Coach offers on-demand professional coaching for your business or career.

]]>
http://www.koneka.com/top-5-mastermind-group-practices/feed/ 0
ShareThink Partners with Koneka to Release New Product to Replace CAPTCHAs http://www.koneka.com/hive-secure-to-replace-captch/ http://www.koneka.com/hive-secure-to-replace-captch/#comments Mon, 16 May 2011 18:34:01 +0000 Pierre-Olivier Charlebois http://www.koneka.com/?p=775 A small technology start-up has partnered with Koneka to launch a new product that they hope will end the bane of CAPTCHAs forever.]]> A small technology start-up has partnered with Koneka to  launch a new product that they hope will end the bane of CAPTCHAs forever.

CAPTCHAs are those annoying little boxes you seem to find everywhere on the web with the twisty, distorted letters in them that you’re supposed to type in to prove you’re a human. Nobody likes CAPTCHAs, and it turns out that they’re just not very effective at stopping spam.

ShareThink Ltd. of Ottawa, Canada, and it’s partner Koneka have created a new product they call the Human Intelligence Verification Engine, or HIVE for short.  Instead of requiring users to type in letters, a HIVE challenge shows users a collection of assorted objects, and requires users to use their mouse and draw a line to match two things that belong together, or to circle one thing that doesn’t belong.  The resulting test is a sort of mini-game that harks back to the old Sesame Street game where “One of these things is not like the others”.

Example of a HIVE challenge

HIVE challenges are not only a lot easier, (and a lot more fun) than CAPTCHAs – they claim to be far more secure as well.

Considering all the angst about CAPTCHAs recently, it seems surprising that it has taken so long to come up with a solution that seems so simple, and so obvious.

“This is what I like to call a ‘face-palm innovation”, says ShareThink CEO Chris Ivey. “Once you see it, you kind of wonder why no one has done this before.  I personally belive that obvious simplicity is the sign of a good idea, and I hope that users will agree with me.”

Click here to visit HIVE‘s website, or click on the HIVE button below to try out this revolutionary technology.

]]>
http://www.koneka.com/hive-secure-to-replace-captch/feed/ 0
SharePoint 2010 Features and Limitations http://www.koneka.com/sharepoint-2010-features-and-limitations/ http://www.koneka.com/sharepoint-2010-features-and-limitations/#comments Fri, 01 Apr 2011 18:35:22 +0000 Pierre-Olivier Charlebois http://www.koneka.com/sharepoint-2010-features-and-limitations/ SharePoint Server 2010 produce intranet sites intended for enterprise collaboration, file sharing, web databases, social networking and web publishing. Read this article to learn if Sharepoint 2010 is for you.]]> Table of Content

Introduction

With so many different enterprise content management systems being developed these days, it becomes very easy to get lost in a blizzard of new standards and new programming languages. When companies wish to promote communication between their employees, they don’t necessarily want to worry about how all these different packages work together; they just need a powerful solution that works. SharePoint 2010 takes care of all of this, and allows users to focus on the end result they need to achieve. By utilizing the versatile power of lists, SharePoint is able to seamlessly integrate a wide variety of different document and project types, all from the same platform. The number of potential uses of SharePoint is huge; it can be used for everything from hosting Web 2.0 websites to organizing the project schedules of thousands of employees, scattered all around the globe. The following document provides a technical overview of SharePoint, and explains how it can be used to help your company grow.

SharePoint Server works with Microsoft IIS web server to produce sites intended for collaborationfile sharingweb databasessocial networking and web publishing. SharePoint server farms can host web sitesportalsintranetsextranets, web-content management systemssearch engines, wikis, blogs, social networking projects, business intelligence and workflows, all while providing a framework for web application development.

SharePoint fundamental building blocks are Lists. The default lists are: Contacts, Tasks, and Documents.  Although everything can be managed from the browser, contacts and tasks can be seamlessly managed from Outlook and document repositories can be directly accessed from Word.  Users can easily customize lists for their own purposes.  In that case, Excel or Access are the best tools to consume this data.

 

SharePoint 2010 Features

Document Management System (3/5)

SharePoint documents are stored in libraries which are just specialized form of SharePoint lists that are used to store document type data rather than metadata based items. SharePoint document libraries integrate seamlessly in the Office environment. Word, Excel and Visio can browse SharePoint workspaces and will check-in, check-out and add version numbers to documents automatically.

It is also possible to generate a document directly from a template against a list item (i.e. Case or Inquiry). Out of the box, it is possible to assign templates to a document library and generate a new document against a database item by using a workflow action. There are also numerous plugins available and SharePoint uses Word Automation Services if code is ever needed. To see an attendance certificate being created in such a fashion, see here.

Documents can contain any file type. SharePoint natively supports versioning of documents, and our latest 2010 edition also introduces social features such as document tagging and rating. SharePoint 2010 also combines the Groove technology to synchronize folders for offline consultation.

Limitations

SharePoint stores documents directly into SQL Server databases to leverage SQL searching abilities. Other Document Management Systems such as Documentum store them on disk and only keep metadata in the database which has the ability to accommodate more data. As such, if an enterprise main goal is to archive millions of low-activity documents with minimal collaboration, SharePoint might not be the best tool.

SharePoint is regarded as falling short of other dedicated Enterprise Content Management platforms. It has a lot of features but is sometimes described as “Jack of all trades and master of none (or little)”.

Roles & Responsibilities

SharePoint integrates natively with Active Directory. It is also possible to use custom ASP.NET membership providers or Kerberos authentification if required.

Permissions can be set for groups or users on almost any SharePoint resources. From a single document to the administration of a Site Collection, every item can overload their inherited permissions.

Figure 7 Permission Management from the Web Interface

 

Infrastructure & Licensing (3/5)

SharePoint benefits from a highly consistent structure because it:

  • runs on Windows Server,
  • uses Active Directory for authentication,
  • is built on the .NET framework and SQL Server
  • can be controlled with the Microsoft Operations Manager.

This highly integrated approach takes advantage of Microsoft’s skills and infrastructure and lowers integration costs.

The ‘farm’ infrastructure is highly scalable in SharePoint. The term ‘farm’ is used to describe a collection of one or more SharePoint servers and one or more SQL servers that come together to provide a set of basic SharePoint services controlled by a single Configuration Database in SQL. Adding a redundant database server or load-balancing front-end servers is incredibly simple.

To get a price estimate on a typical SharePoint Farm, we have run a test scenario on the Bamboo’s Price Calculator with the following parameters:

  • 1000 employees with Enterprise CALs
  • 2 Web Front End Servers
  • 2 SQL Servers
  • 1 FAST Search Server


Limitations

An organization would need to buy a wide range of both server and development licenses (SQL, Windows, SharePoint, Visual Studio) in order to setup a full-fledged SharePoint farm. SharePoint 2010 is 64-bit only which may require heavy infrastructure investment.

 

Service-Oriented Approach (5/5)

SharePoint has been entirely built around the service-oriented paradigm. Using the SharePoint SDK, it is straightforward to build a third-party application that consumes SharePoint data.

Code required to enumerate case titles from a remote SharePoint site

var site = new SPSite(“http://sharepoint-site/”);

var web = site.OpenWeb();

var inquiries = web.Lists["Inquiry"].GetItems(new
string[] {“Title”, “Contact Type”});

All Office applications all already configure to consume SharePoint Services seamlessly. Users can indeed manage a SharePoint contact list from Outlook or Check-In, Edit, Check-Out documents from Word. List can always be edited with Excel and Access.

Figure 2 Synchronize contact lists with Outlook and Excel

Figure 3 Edit document in Word

Sharepoint can be used with Office 2000, 2003, 2007 or 2010. However, the integration is not as seamless with older versions. It can also be localized very easily by installing any language pack. The .NET resource files are required for Webpart content.

Development Tools (5 / 5)

SharePoint benefits from some of the best development tools on the market. There are three main ways to customize SharePoint sites:

Web

Any user with appropriate permissions can perform a myriad of modifications to a SharePoint site right from his browser. Among others, he can create lists and libraries, customize simple workflows, edit page layouts, add web parts, edit permissions, and much more. Most users will never need to leave their browser.

Figure 4 Web view

SharePoint Designer

Designers and technical users can install a free version of SharePoint Designer to perform all of the above actions as well as other operations which are not allowed through the web interface. For instance, the edition of complex WWF workflows and the configuration of External Content Types are only allowed through the installed program.

Figure 5 SharePoint Designer

Visual Studio

Finally, developers can leverage Visual Studio along with SharePoint SDK to create fully customized web parts, workflows, content types, etc. Visual Studio is a fantastic tool to build complex workflows and tailored web parts which are going to be assembled into sites using SharePoint Designer. Web pages and workflows built using Visual Studio can communicate to external databases and services and have access to any SharePoint resource.

Figure 6 Customized workflows with Visual Studio 2010

Limitations

SharePoint is entirely based on the .NET framework and requires software development skills in order to be fully exploited. If an organization has very few .NET experts and relies mostly on Oracle or IBM and has favoured Java applications, a Microsoft only solution may not make sense.

Development using Visual Studio requires SharePoint Server to be installed on the development machine.

Companies adopting SharePoint will need to invest in training. As mentions IT Business Edge in their article: SharePoint: Pros and Cons: You cannot overestimate the need for SharePoint training among your own staff.”

 

Site Collections (4 / 5)

A farm is configured with two Web applications by default: the central administration application and a single, normal SharePoint site, of which there are many types.

Application administrators then create site collections that act as administrative units that allows for common security permissions, list templates, content types, and workflows to be shared by multiple sites.

 

Figure 9 Levels of the SharePoint Hierarchy
(taken from Pentalogic SharePoint blog)

The collection can in turn hold sites using one of the provided templates as a starting point. Default templates include “Document Workspace”, “Meeting Workplace”, “Contact Web Database” and “Search Center”. Administrators can create their own template so that site administrators can sprout pre-configured instances.

For larger enterprises with many regional offices, SharePoint allows multi-farm deployments that communicate with a central installation through a WAN (as described here)

Figure 1 Site Architecture and Object Model Overview as shown in Microsoft MSDN

Hence, SharePoint is perfect for big enterprise which have a need for many team sites which may share common functionalities.

Limitations

Servers of a given farm should be in the same geographic location as the servers interact with each other frequently. Doing so will reduce potential latency issues.

Conclusion

SharePoint is an enterprise grade content management system which provides all the necessary tools to implement customized workflows. To those who are proficient with Microsoft’s products, SharePoint should be considered as a serious candidate for large-scale deployment. Licensing fees may seem high, but relying on the proven framework of SharePoint will economize time significantly.

]]>
http://www.koneka.com/sharepoint-2010-features-and-limitations/feed/ 0
Using Moodle as your Learning Management System (LMS) http://www.koneka.com/moodle-leaning-management-system/ http://www.koneka.com/moodle-leaning-management-system/#comments Wed, 20 Oct 2010 00:01:57 +0000 Pierre-Olivier Charlebois http://www.koneka.com/?p=579 Koneka's response to a Request for Information for a "Web Based Learning Management Solution for Staff Development"]]> Koneka responded to a Request for Information for a “Web Based Learning Management Solution for Staff Development”.  We developed our expertise in Learning Management System (LMS) while working on Edilex Learning Center.

The request was:

[CLIENT] is investigating upgrading its Learning Management Solution for its employees. The Human Resources and the Information Technology Services departments of [CLIENT] are seeking information about modern web based Learning Management Solutions and information on vendors who have experience in implementing such solutions.
Some of the features desired in the web based learning management solution include:

  • The system should recognize the following types of users: staff, administrators, instructors and management.
  • Ability for staff/users to view all the course offerings using multiple views (calendar, SERP pages, Filters)
  • Ability for staff to register for any course that has availability, if the course is full the user should be able to optionally add themselves on a wait list
  • Ability for the administrator to create public and private courses with standard course attributes (title, description, dates, times, cost, public or private, list of students …). All public courses are viewable on the calendar to all users. Private courses are only viewable to users that are assigned to the course/event.
  • Ability for the administrator to identify mandatory pre-requisites that the user has to confirm prior to registering, and if courses require mgmt approval before confirmation.
  • Ability for staff to request to enter in informal learning into the system with all course regular attributes
  • Ability for staff management to see their staff’s development list
  • Ability for staff to see all the courses they have completed or are registered or waiting for.
  • Ability for an instructor to log in, view the class list, add students and confirm who completed the course
  • Ability for the solution to automatically generate certificates with unique ids upon course completion.
  • Ability to associate courses to programs
  • Ability for the software to notify the course administrator when the course is full or user defined days if it is undersubscribed.
  • Automated notifications on all key transactions
  • Active Directory Aware (ability to integrated into active directory for authentication)
  • Rich set of Reports and Customized Reporting Functionality
  • AODA Compliant Web Solution
  • Ability to Externally Host (if data and backup data resides in Canada) or Local Hosting
  • Role Based Security
  • Integration into HR System of Records to pull employee information and upload completed courses.

We can help you adapt Moodle to your needs.
Contact us for a free quote.

1.     Why Moodle

We have converged towards Moodle because the vanilla installation addresses most of [CLIENT] requirements.  The framework is well maintained and many high-profile education facilities use it.   The source code being readily available, [CLIENT] will be able to adapt the application along the way without being tied to a sole-source provider.

2.     Requirements Review

A.     The system should recognize the following types of users: staff, administrators, instructors and management & Role Based Security

An administrator can modify, add and remove roles from the Administration > Users > Permissions > Define roles menu-item.  In  [CLIENT] case, we would setup the following roles:

Roles Accesses
Administrators Unlimited.  Administrators are in charge of configuring the system, appearance, security permissions, roles, available reports and so forth.
Management Management has access to all courses and approve the enrolment of the staff.  They can consult reports to view attendance statistics and supervise staff s development.
Instructors Same as “Teachers” in default Moodle system. Instructors can create courses and define the content as publicly published to staff members such as the overview and requirements.  They are also in charge of managing the learning material, the evaluations, confirm the “attendance” flag and moderate the forum when available.
Staff Staff can view the available courses, enrol, post questions, download certificate and consult the learning material of all the courses they attended.

Assigning Roles in Moodle

B.     Ability for staff/users to view all the course offerings using multiple views (calendar, SERP pages, Filters)

The default view is an enumeration of all the public courses.  There is a search box which looks for matching word in the title, description and course content.  Additional filters may require a modification to the source code.

From our experience with previous Learning Management System, a fair amount of custom development is usually required to achieve an ergonomic and tailored course navigation mechanism.

C.     Ability for staff to register for any course that has availability, if the course is full the user should be able to optionally add themselves on a wait list

This maximum attendance feature does not exist by default in Moodle, so it will require custom development in order to add it to the course settings.  When set, the course view would display the attendance (ie: 20 / 30) and, when registration queues are enabled, would allow the staff member to register.  The members of a queue are warned by email when either the course registration is closed or when they have been admitted to it.

D.    Ability for the administrator to create public and private courses with standard course attributes (title, description, dates, times, cost, public or private, list of students …). All public courses are viewable on the calendar to all users. Private courses are only viewable to users that are assigned to the course/event.

In the course creation options, administrator can specify if the course enrolment is on (public) or off (private).  If course is private, only the instructor, manager or an administrator can enrol the staff member.  On the course creation screen, administrator can also specify the course ID, title, description and other general configurations.  We easily could add some custom fields such as “cost”.

By experience, time management is a little more complex.  Generally, we suggest decoupling generic courses from individual sessions such that we can set multiple sessions for the same course.  In that case, staff members register to a session  using the calendar, but the course material and forums are shared between all students which have followed the course, regardless of the session (ie: autumn vs spring).

Editing Course Settings in Moodle

Calendar view

In Moodle, there are 4 types of calendar events: Global, Course, Group and User.  Global events are shown to all users, so public seminars would appear to all users.  Private sessions would only appear on the user calendar of an authenticated staff member who has registered to it.  It would also be easy to filter the view depending on requirements.  For instance, only history teachers would view a particular course on their calendar.

Calendar View in Moodle

E.     Ability for the administrator to identify mandatory pre-requisites that the user has to confirm prior to registering, and if courses require mgmt approval before confirmation.

There are two types of pre-requisite: enforced and unenforced.  Enforced pre-requisite are ones that the system can check by itself, such has verifying if the user has followed the first part of the course or if he belongs to a certain category of staff.  Unenforced pre-requisite will be shown to staff member in the registration process who will need to confirm compliance before proceeding to the next step.  Managers will have the necessary tools to assess compliance and confirm the student’s registration.

This feature will require custom development.

F.      Ability for staff to request to enter in informal learning into the system with all course regular attributes

Moodle has several modules which allow students to share useful information.  Amongst other, the instructor can activate a forum, a Wiki or a FAQ module which can then be used by staff members to post their requests / comments.

G.     Ability for staff management to see their staff’s development list

Reports from the attendance module will give all the necessary information to the staff management to assess their staff’s progress.  As this is an important feature, we suggest the development of a custom view which will convey the information without having the staff managers generate custom reports from drop-down lists.

H.    Ability for staff to see all the courses they have completed or are registered or waiting for.

The MyCourse page contains all the courses a staff member has registered to along with their current status:

-          Course registration’s pending (awaiting manager’s approval)

-          Registered (approved, staff member has access to learning material)

-          Completed (certificate available)

I.       Ability for an instructor to log in, view the class list, add students and confirm who completed the course

Instructor can always consult the students list of all his courses and has the ability to send them messages, unenrol them and, if required, evaluate their examinations.

Enrolling is very simple. The instructor logs into his account and assigns the role of “student” to the staff of his choice.

Assigning Roles in Moodle

Attendance confirmation can be easily added by installing the Attendance module (http://docs.moodle.org/en/Attendance_module)

J.       Ability for the solution to automatically generate certificates with unique ids upon course completion.

The certificates would be based on the existing Certificate module (http://docs.moodle.org/en/Certificate_module).  This module would allow staff to print out a customized certificate.  Management would have access to all certificate ID’s.

Certificates would become available to staff when instructors have confirmed their presence and, if required, could be subject to a last management approval.

K.    Ability to associate courses to programs

Most Learning Management System including Moodle work with parent categories.  Each course must fall within one or more category (or program).  The default course view is usually the enumeration of all the courses belonging to that program.

L.      Automated notifications on all key transactions

Moodle already contains a Notification engine along with enablement settings.   Some custom development may be required to cover all transactions not default to Moodle’s core.

M.   Ability for the software to notify the course administrator when the course is full or user defined days if it is undersubscribed.

Administrators will be able to setup global Notification scheme so that instructors and managers are warned when a course is full and are emailed N working days before deadline if a course has less registration then the preset bottom threshold.

N.    Active Directory Aware (ability to integrated into active directory for authentication)

Moodle already contains a LDAP connector which can be configured to authenticate users against  [CLIENT]’s active directory (http://docs.moodle.org/en/LDAP_authentication).

O.    Rich set of Reports and Customized Reporting Functionality

In the report section, administrators, instructors and management have the ability to build custom reports.

Moreover, each module usually comes with its own reports.  For instance, the Attendance module provides all the necessary reports and filters to assess who has attended a given course, which courses has a given user attended, and so forth.

Reporting in Moodle

P.     AODA Compliant Web Solution

AODA requires following the Web Content Accessibility Guidelines (WCAG).  The default Moodle installation is compliant with Section 508 of the US Rehabilitation Act and WCAG 1.0 Level A, AA and AAA guidelines.  The compliance of the solution should be assessed regularly by running the installation against the WCAG check engine on http://www.contentquality.com.

Here, we would like to point-out that ATutor, another open-source learning content management solution developed at University of Toronto, is explicitly known to comply with AODA.  However, the workload to tailor it to  [CLIENT] e-Learning platform would be greater.

Q.    Ability to Externally Host (if data and backup data resides in Canada) or Local Hosting

The system only needs PHP and MySql, which can be installed on Windows servers or Linux servers.  The most cost effective solution is a LAMP infrastructure (Linux, Apache, MySql and PHP).  There will be no problem hosting the solution externally or internally.  We recommend configuring a daily backup.

R.       Integration into HR System of Records to pull employee information and upload completed courses.

Requires custom development, but there should not be any problem developing the interfaces.

3.     Additional Notes

We suggest the addition of an evaluation mechanism so that staff members can anonymously express their comments regarding a given course (instructor, quality of course material, etc).  This will help to enhance the program over time.

]]>
http://www.koneka.com/moodle-leaning-management-system/feed/ 2
Efficient Time Tracking with Jira Project Management Tools http://www.koneka.com/time-tracking-with-jira-project-management/ http://www.koneka.com/time-tracking-with-jira-project-management/#comments Tue, 27 Jul 2010 16:35:09 +0000 Simon Poissant http://www.koneka.com/?p=204 One important aspect of project management is time management: predicting how long things will take to produce accurate estimations and tracking how long they actually took for billing purposes. Learn how Koneka does it with the help of Jira, Toggl time tracking tool and the Jira Timesheet Report and Portlet Plugin. Together, these three tools have made our life easier, our clients happier and our project management better.]]> One important aspect of project management is time management: predicting how long things will take to produce accurate estimations and tracking how long they actually took for billing purposes.  Accurately guessing the required time to accomplish a task requires a good dose of both skill and experience.  On the other hand, figuring out how much time was spent on a project is mostly a matter of having the right tools and ensuring the people in your business use them.

In this article, we will discuss how JiraToggl and the Jira Timesheet Report and Portlet Plugin have satisfied our needs of a time tracking mechanism highly integrated to our project management platform.

Time Tracking with Jira Issues

Jira - Issue and project tracking

Jira - Issue and project tracking

In our previous article about project management (Comparison of Project Management Software), we reviewed five potential project management software and ended up choosing the excellent Pivotal Tracker.  At the time, we were looking for an affordable hosted project management solution and Jira, not offering such an option, was left out of the review.

Unfortunately, Pivotal Tracker did not (and still doesn’t) offer a good time tracking solution and we quickly realized that we needed this feature to organize our efforts internally and to justify our invoices.  Following the advice of Felix Martineau from TechSolCom, we went back to the comparison board and found out about Atlassian “Get Started for 10$” pricing option.  We urge software startups to evaluate this enterprise grade project management solution.

Jira time tracking process is highly integrated .  When you create an issue, you assign it an estimate of the total time required.  The dashboard shows you how many hours remain before all the issues of a given versions are finished.  At the end of the day, you fill the “work log” for each issue you worked on.  At this point, you either re-estimate the remaining hours, or just consume them from you initial estimation.

Time Tracking with Jira Issues

Now, you have associated accurate time estimates and consumptions to your Jira issues (bugs, features, tasks, and improvements), you can generate a bunch of useful reports.

Jira Time Tracking Reports

As good as it is, we still had two problems with the default time tracking in Jira:

  1. We wanted to give a monthly report to our clients and none of the available reports where in a format we liked
  2. We had to manually calculate the time spent on each issue and it quickly became a nightmare

NB: Time tracking in Jira comes with the default installation but needs to be activated (see the official documentation).

Jira Timesheet Report and Portlet Plugin

Enables additional time tracking

Enables additional time tracking

There is an impressive amount of plugins available for Atlassian’s many tools (find them all at the Plugin Exchange page). To solve our “time reports to clients” problem, we went ahead and installed the Jira Timesheet Report and Portlet Plugin. This simple plugin gave us two new Time Tracking reports: The Pivot Project Report and the User Timesheet Report. The first one gives you a summary of who worked on a project and how much time total they have spent on individual issues for a given period. The second one gives a more detailed view of the work of a single employee, showing you the time spent on issues on a day to day basis for the entire period given.

Using these reports, we now have a solid representation of the work we do each month.  At the end of a period, we export the report in Excel format which we append to our invoices.  Our clients really appreciate the level of details it provides.

Toggl – Tracking Time on a Day to Day Basis

Time tracking that  works.

Time tracking that works.

From our experience, many software developers (including us) suffer from an attention deficit disorder.  We spend 12 minutes on a task, and then toggle to another one.  We found Toggl to be exceptionnaly good at capturing our hourly efforts despite our attention shifts.  All you need to do is create a new task, give it a meaningful name (we use the ID of the Jira issue I’ll be working on) and press the big button to start logging your time. If you create a new task and start working on it, Toggl will automatically stops the tracking of your previous active task and switch to this new one.  At the end of each week, we sync Jira worklogs with Toggl’s timesheet.

We appreciate Toggl for its extreme simplicity. Don’t get us wrong here, it is packed with much more than simple time tracking (to name a few: it can differentiate between billable and non-billable work, assign tasks to different projects and/or clients, share information between multiple users and generate very nice reports) but it is built in a way that let you use only what you need and for us, that is simple time tracking. Regardless of how many features you plan on using, we have noticed an interesting side-effect to logging your work in Toggl: by forcing you to define what you will be working on next (the task name) and by accurately tracking the time you spend on it, this little application is great at helping people focus on their current task.

For comparison sake, we had tried Klok prior to Toggl but we felt it was too complicated for our needs and lacked the small form factor and easy interface of its competitor. Also, while writing this article, we’ve stumbled upon another Jira plugin that seems to be doing something similar to Toggl but with a stronger integration into Jira (Aide de Worklog (time tracking)). We have yet to test it but if you have please give us some feedback in the comment section of the article.

Summary

For the past months, Koneka has been successfully keeping track of the time spent on our different projects in Jira with the help of the Toggl time tracking tool and the Jira Timesheet Report and Portlet Plugin. Together, these three tools have made our life easier, our clients happier and our project management better.

]]>
http://www.koneka.com/time-tracking-with-jira-project-management/feed/ 6
Comparison of Project Management Software http://www.koneka.com/comparison-of-project-management-software/ http://www.koneka.com/comparison-of-project-management-software/#comments Fri, 29 Jan 2010 19:48:33 +0000 Simon Poissant http://www.koneka.com/?p=148 In prevision of upcoming contracts, we decided to take a step back, compare available Project Management Software and see if we could find one that fits our needs better. This entry is a small wrap up of our observations, thoughts and conclusions on the solutions we have considered.]]> Koneka is very fond of Agile Development and we have been using Pivotal Tracker successfully for over a year now. Pivotal Tracker is an Agile Project Management Software available freely on the web with a solid interface and very strong Agile Development integration.

In prevision of upcomming contracts, we decided to take a step back, compare available Project Management Software and see if we could find one that better fits our needs. This entry is a small wrap up of our observations, thoughts and conclusions on the solutions we have considered.

Testing the Project Management Software

While there is an enormous amount of Project Management Software out there, we could only afford to evaluate a few of them. Considering the current size of the company, we decided to stick with the smaller players in order to reduce the cost. We also tried to focus on hosted solutions to avoid having to deal with server setup and maintenance. For these two reasons, Axosoft OnTime and Atlassian Jira were discarded.

Take note that the Project Management Software are listed in order of preference, starting with the one we preferred.

Pivotal Tracker

Pivotal Tracker - Free Lightweight Agile Project Management & Team Collaboration

Pivotal Tracker - Free Lightweight Agile Project Management & Team Collaboration

Price*: FREE
User Interface: 5/5
Hosted SVN support: NO
SVN Commit linked to Tasks: 2/5
Agile Development features: 5/5
Time Tracking: 0/5
Bug Report from Clients: 0/5
Multiple projects support: 3/5



Pivotal Tracker is missing a some of the “new” features we were looking for. Nevertheless, it has been a strong asset in our software development process, is completely free and it has a great user interface.

It is interesting to note that Pivotal Labs just released the Pivotal Tracker API v3.  This new API allows the use of source control post commit hooks making it possible to link SVN commits to tickets.  The low score in that category comes from the fact that you have to implement it yourself for now.

FogBugz

FogBugz - Bring Your Project Into Focus

FogBugz - Bring Your Project Into Focus

Price*: FREE or 25$/user/mo with 3 or more users
User Interface: 4/5
Hosted SVN support: NO
SVN Commit linked to Tasks: 4/5
Agile Development features: 2/5
Time Tracking: 5/5
Bug Report from Clients: 3/5
Multiple projects support: 4/5



FogBugz turned out to be a strong contestant during our searches. Its smooth interface, strong time tracking features and good support for multiple simultaneous projects through global milestones really shinned. Their “Evidence-Based Scheduling” reports were also an interesting addition.

Agile development integration was minimal with only a poorly integrated Kanban board available through a plugin. The lack of SVN hosting is disappointing considering the price scheme they use but they were nice enough to offer hook scripts that you can add to your own repository for easy integration and they also offer the possibility to enfore this feature through Tortoise SVN.

Code Spaces

Code Spaces - Project Management and Source Code Hosting for Professional Development Teams

Code Spaces - Project Management and Source Code Hosting for Professional Development Teams

Price*: 2.99$/mo
User Interface: 4/5
Hosted SVN support: YES
SVN Commit linked to Tasks: 2/5
Agile Development features: 4/5
Time Tracking: 2/5
Bug Report from Clients: 5/5
Multiple projects support: 3/5



Code Spaces looks great but it was lacking some basic features we came to expect from project management software after reviewing the other options (namely SVN commit cannot link automatically and work items cannot be modified in batch). In addition, Code Spaces offers time tracking features for individual work items but, as far as I know, you don’t have any way to use that information to generate reports or charts.

On the plus side, its card wall was nicely integrated and pleasant to use. It could be improved through the addition of more information on the “cards” (I could use visible information about “Assigned To”, “Work Item Type” and “Work Item Status”) and a velocity system but it was still the second best option we’ve seen after Pivotal Tracker.

I feel it’s also important to mention the Code Spaces “Portal” included with your account that easily allow Clients to submit issues or track projects from a nice customizable web page linked directly to your Code Spaces account.

Unfuddle

Unfuddle - Software Project Management Git and Subversion Hosting

Unfuddle - Software Project Management Git and Subversion Hosting

Price*: 9$/mo (no time tracking) or 49.99$/mo (time tracking)
User Interface: 4/5
Hosted SVN support: YES
SVN Commit linked to Tasks: 5/5
Agile Development features: 0/5
Time Tracking: Did not try
Bug Report from Clients: 4/5
Multiple projects support: Did not try



Unfuddle was the Project Management Solution we spent the less time in. The main reason for that is the complete lack of agile development tools in it. Their trial version also limited the amount of active projects to one (which is why we could not test support for multiple projects) and did not have the time tracking module.

Despite all that, I can say unfuddle seemed to be a strong option for non-agile oriented groups with a well organised and good looking UI, good SVN integration and a versatile User Permissions control (useful to give a limited access to client for example).

Assembla

Assembla - Accelerate your projects with online workspaces
Assembla – Accelerate your projects with online workspaces
Price*: 3$/user/mo + 0.30$/100MB/mo of space used
User Interface: 1/5
Hosted SVN support: YES
SVN Commit linked to Tasks: 4/5
Agile Development features: 2/5
Time Tracking: 4/5
Bug Report from Clients: 3/5
Multiple projects support: 3/5



Assembla was a strong contestant feature-wise and we considered it for a while but in the end I just couldn’t get along with its bland and unintuitive interface. It has an easy to use SVN Commit hook system through special commands integrated in the commit comment (i.e. “close #3″ to close a ticket).

Their Agile Planner suffered from the UI problem and was somewhat unintuitive to me (No backlog?). I’m not even sure we would have used it had we chosen Assembla as our Project Management Software.

Conclusion

Unfortunately, none of the Project Management Solutions we looked at were completely satisfying to us. Like we mentioned earlier, FogBugz ended up being our top contender but the lack of Hosted SVN, poor agile development integration and potentially high price in the long term turned us down.

For now, we feel we are better off sticking with Pivotal Tracker (adding functionalities through their new API v3 if needed). It is our tried and true approach and it has given us great results in the past.

Useful links

Wikipedia Chart comparing popular Project Management Software

Comparison of project management software on Wikipedia

Project Management Software we have heard of but not evaluated

Axosoft OnTime

Atlassian Jira

Microsoft Project

TargetProcess

*price: The values shown here are based on a team of 2 programmers and only a few projects.  Most project management software presented here have many other pricing options depending on the size of your team, the number of projects you want to track and the space you need for your code and documents.
]]>
http://www.koneka.com/comparison-of-project-management-software/feed/ 7
Strategic Partnership with Edilex http://www.koneka.com/strategic-partnership-with-edilex/ http://www.koneka.com/strategic-partnership-with-edilex/#comments Mon, 09 Nov 2009 22:21:44 +0000 Pierre-Olivier Charlebois http://www.koneka.com/?p=115 Koneka is proud to announce it has concluded a strategic partnership with Edilex. We share Edilex’ long-term vision that the standardization of the best legal practices through the development of dedicated technological tools will revolutionized business processes.]]> Koneka is proud to announce it has concluded a strategic partnership with Edilex.

Koneka, an Edilex Partner

Koneka has been involved in the development of Edilex’ Website since February 2009 during which we have:

Koneka shares Edilex’ long-term vision that the standardization of the best legal practices through the development of dedicated technological tools will revolutionized business processes.  This partnership seals our intention to join state-of-the-art software development with 25 years of legal structural design.

]]>
http://www.koneka.com/strategic-partnership-with-edilex/feed/ 0
How to Rank Well On Google http://www.koneka.com/how-to-rank-well-on-google/ http://www.koneka.com/how-to-rank-well-on-google/#comments Tue, 27 Oct 2009 18:08:21 +0000 Pierre-Olivier Charlebois http://www.koneka.com/?p=75 Learn how to rank well in Google in 4 simple steps. No technical knowledge required.]]> This short article highlights key search-engine optimization elements without using too much technical lingo.  The discussion has been formatted so that lawyers feel at home.

From word of mouth to the Internet

Traditionally, lawyers have developed their market through networking and word of mouth.  In recent times, more and more have embarked on the Internet fast-paced wagon.  Many have expressed to Koneka their interest in increasing their online presence.  They asked: “How can my Website rank well on Google?”  But before answering that question, let’ see why it’s a good publicity to appear early in search results.

Why should you appear in top 3 results of search engines

Many research document where people click on Google. They conclude that 85% of the visitors will click on one of the first 3 organic results. Google is extremely good at putting meaningful links in there.

Another way to look at is by looking at the eye-pattern heat-map below.  You will notice that people gaze significantly more at the first 3 results.  Their interest is rapidly declining as we go down the list.

In short: you must strive to reach this search podium!

Google Eye Gaze Heat-Map

Google Eye Gaze Heat-Map

Search Engine Optimization for dummies

In this section, I will summarize 4 elements I welcome you to consider when building up your website.  If you work with web design firms, make sure they are aware of those elements, because you may otherwise end-up in the abyss of Google’s result.  It can be frustrating after having spent thousands revamping your Website look.

1. Identify Keywords

Before writing your first line, consider what are the best keywords describing what it is you want to say.  It will be very hard to score well on too many queries, so focus on 20-30 key concepts.  Also, think hard about what differentiate your offer from your competitor. For instance, it will be hard to rank well on “business attorneys”.  By adding distinguishing elements in your keyword list, like geographic locations “business attorneys Ottawa”, you have a better shot at the first 3 spots!

2. Place those keyword appropriately

Without going too much into technical detail, you can hint Google about what are the most important sentences on your page.  Let’s take this blog post as an example.
post_koneka_seo

The top title is very important. This text is used by Google to present your page to searchers.  The keywords you use in there (<title> tag) have more weight than anything else on your page.  The second most significant identifier is your main title (<h1> tag).  Finally, Google makes its mind on the overall keyword distribution, so be careful to spread your top 20 keywords several times throughout the article.

As a side note, be aware that Google won’t see the keywords in rich media files like Flash movies.  Lawyers are incredible scribes, so it would be unfortunate that your content remains hidden to the world.   Again, make sure you web developers restrain themselves from going down the flashy road.

3. Appeal your target audience

If you optimized your site for “business attorneys in Ottawa”, make sure your content is meaningful to people searching those terms.  Google is pretty smart.  It knows how long visitors stay on your Website.  If it finds out that people spent an average of 5 seconds on your page, it will conclude that your content is finally not worthy of ranking well for those terms.  Google Analytics refers to this measure as “bounce rate”.

4. Build incoming links

This is the bread-and-butter of search engine optimization. Each incoming link to your site cast a vote to Google’s PageRank algorithm.  PageRank, by the way, is the technology developed by Google’s founder Larry Page during his studies at Stanford.  The more votes you have, the better your rank.  The higher you rank, the more voting power your Website has.  Furthermore, PageRank analyses the correlation between your Website content and the referring page.  If the Department of Justice of Canada refers to your site “Ottawa’s business attorneys .com”, be assured is will be taken into consideration.  You can always do strategic link exchange with partners in a similar field.

Conclusion

In conclusion, throughout the entire Web design process, always keep in mind that you want to be found by Google’ spiders.  Also, make sure that your Web designer has some basic knowledge of search-engine optimization.  Feel free to contact us to obtain more information!

Interesting links:

A company doing SEO for lawyers: http://www.stemlegal.com/
SEO gurus (for tech savvy): http://www.seomoz.com

]]>
http://www.koneka.com/how-to-rank-well-on-google/feed/ 0
Welcome to Koneka http://www.koneka.com/website-update/ http://www.koneka.com/website-update/#comments Sat, 24 Oct 2009 14:37:19 +0000 Pierre-Olivier Charlebois http://blog.koneka.com/?p=35 Continue reading »]]> I have worked happily without a Web identity for the past 4 years. I am a reserved programmer. But after 2.5 years of software development in the gaming industry and 1.5 at the helm of a single manned start-up, I feel I have some wisdom to share.  After all, I named the company in respect of the Wolof word ku-nekkä which means “everyone”.

This blog will be about the path I chose to unite two passions: software development and business.  Oddly enough, those passions brought me to the legal industry.  I figured that business contracts are, in the end, human-readable code.  Isn’t a contract a series of instructions to be executed by a legal entity?

So, if you are a software developer, legal practitioner or an entrepreneur sharing our interest in business intelligence, stay tuned!

]]>
http://www.koneka.com/website-update/feed/ 0