Developer Product Briefs
Training on Demand
AppDev's KSource Online Learning provides on-demand training for developers.
- By Peter Varhol
Aimed at midsize to large IT organizations, AppDev's KSource Online Learning provides on-demand training for developers -- at home and at their desk.
KSource features online training in Microsoft development tools from experts who are often industry icons and have extensive consulting experience with Microsoft. KSource also features a strong administrative framework for managing and monitoring how employees are using the tool. While the primary delivery method is streaming video, courses include both an e-book that covers the material in the course and the source code from the course demos. Course material can be accessed at any time and viewed by individuals or groups, although the video portion of the course cannot be downloaded to the user's computer to be viewed offline.
The KSource Experience
To take a KSource course, you surf to the KSource Web site using Internet Explorer and log in to download and install the KSource client. You are then presented with the list of the courses made available to you by your site's admin. Each course is divided into several modules (typically five or six). These modules begin with a "talking head" introduction by the course's instructor. After the introduction, the module is broken up into chapters that consist of the instructor's narration over a series of text slides and code demonstrations.
The first time you start a course, you must provide the course's license code (the dialog box remembers the last license code used so, with any luck, you might have to enter the code only once). You can pause, bookmark, and resume the video at any point. Each course comes with a pre-exam that enables you to determine whether you have the necessary background to take a course (there are also post-exams you can take to mark your progress).
I used KSource in a low bandwidth environment and during intermittent interruptions of my Internet access. To deal with these problems, the KSource client buffers large amounts of the incoming stream (which can mean that it can take 30 or 40 seconds for a module to start up). As with any network-based application, poor connections will eventually bring the streaming to a halt but the application is highly resilient. KSource also offers an "Installed Solution" that puts the KSource server at your site. The installed solution was created for companies that don't want to open their firewall to KSource's server, but the installed solution would also work for locations with poor Internet connections.
The administration side of KSource lets admins enroll new users, pick the courses to license, create new administrators to handle groups of students, assign users to courses, and review student progress. Administrators can set the pass mark for any exam and be notified when students finish modules or exams.
[Click on image for larger view.]
|Figure 1. Meet Your Training Needs Online. AppDev's KSource enables administrators to assemble tracks of courses from the KSource library to meet the particular training needs of the organization's developers.
In addition, administrators can set up "tracks" or a series of courses and specify a goal date for when students must finish a track. Some rudimentary tools exist that allow students taking a track to develop a schedule that ensures they won't end up having to cram 10 days of instruction into two (KSource is planning on enhancing the scheduling tools).
New site admins can spend a half hour on the phone with a KSource representative, who will walk them through managing the app. The KSource package includes an Administrator's guide, but I didn't need to use it after my phone briefing. KSource will also do a remote "lunch-and-learn" session for new students, but I found the UI to be intuitive enough for no further instruction necessary.
Companies that are considering KSource have to weigh the trade-offs of a video-based training package compared to other training alternatives. The obvious comparison is to classroom-based, instructor-led courses (like the ones provided by the company I work for). To send an employee to an instructor-led course, companies must let the employee out of the office for a prescribed period of time (typically three to five days) and, in addition to the cost of the course, pay for any travel costs.
KSource, on the other hand, allows developers to cover the course material at the student's convenience and do it either from work or from home. Also, companies that take the KSource approach don't have to wait for the course they want employees to take to appear on some training company's calendar: After a company licenses a course from KSource, employees can access the course immediately.
The cost for using KSource varies from one installation to another, depending on the number of students and courses. For 10 to 150 students with access to three to 60 courses, the cost per student ranges from $400 to $800 for the ability to access all the courses an unlimited number of times.
Not Always the Right Answer
There are disadvantages to the KSource solution compared to classroom training. The primary disadvantage is the inability to ask the instructor a question. However, many participants in classroom-based courses don't interact with the instructor -- many are in the classroom because they can't get the time to train themselves at work.
Developers who prefer to get targeted information from books or the Internet might find the pace of KSource training frustrating. The intent of each course is to provide comprehensive coverage of each topic. It is theoretically possible to skip modules, but in practice most courses will have to be viewed from start to finish. KSource also shouldn't be considered as a resource for getting knowledge to solve a specific problem. The index for the KSource modules, for instance, is more like a book's table of contents, rather than an index that takes you to the three lines of code you need.
The technical content was always excellent, but I found that the quality of the instruction -- while often great and never less than good -- varied from one instructor to another (the instructors are, after all, technical experts and not necessarily professional trainers). Some courses showed excellent instructional design: They began by providing a context for the technology, made effective use of graphics, and then drilled down into the details that a working developer would need. Other courses made little attempt to orient the student to the larger picture, consisted of nothing but text, and were driven by the technology details, rather than developer needs. The better-designed courses would work even for developers at an introductory level; the other courses would require developers with at least some experience and a willingness to take advantage of the included e-book.
The ideal customer for this product is a midsize to large IT organization with groups of people who need training on a complete topic area (such as ADO.NET, Remoting, or ASP.NET AJAX). The ideal student for these courses is someone willing to learn without an instructor and doesn't find book-based learning effective. For the product to be effective, however, organizations still have to commit to giving their employees the time to view the courses. KSource provides organizations with more flexibility in scheduling, but it doesn't absolve the company from allocating training time. If a company simply installs KSource and doesn't manage the training, then only the most disciplined employees will take advantage of the product.
At A Glance
KSouce Online Learning
Price: Varies, depending on the number of students and courses.
Quick Facts: On-demand streaming video training on Microsoft development tools from experts.
Pros: Ease-of-access, ease-of-use, and excellent technical content coupled with a good administration package.
Cons: As with any correspondence program, the courses are only useful if used.
Peter Varhol is the executive editor,
reviews of Redmond magazine and has more than 20 years of experience as a software
developer, software product manager and technology writer. He has graduate degrees
in computer science and mathematics, and has taught both subjects at the university