A great deal of FTT's business lies in delivering bespoke training to small groups to address very specific needs. Outlined below are just a few examples of the types of courses that FTT have tailored and delivered to meet our clients often unique needs.

In many instances new courseware material and relevant examples were developed and blended in with existing material to provide a seamless course.

We hope that these examples highlight the varied skills and support that FTT consultants and their associates can offer to Embedded and Systems Developers.

Case Study 1

For example, we recently tailored a course for a customer who was planning to jump from existing solutions based on 8 bit and 16 bit microcontrollers to an embedded Linux solution framework.

Incidentally, this seems to be a growing trend within the many companies we communicate with.

This particular customer had programmers who had experience of assembler on small embedded systems but very little experience of Linux, Posix API or of C programming. They were in the process of implementing various devices and associated device drivers (DDS)and also planned to use Qt4 (from Trolltech) for developing GUIs.

For this client FTT tailored a 10 day highly intensive kernel and device driver programming course which, in this instance will be delivered as two 5-day courses comprising of 5 days of Posix API + DDS and 5 days of training on the necessary C++ to develop with Qt4.

Case Study 2

Cheap and powerful embedded systems with DSP processing capabilities are becoming readily available (dsPIC), as a result we find that many companies need to upgrade the C programming skills of their developers to exploit the power of these new processors. The engineers also need to be able to understand DSP C programming techniques and to be able to design, implement and apply DSP filters, DSP algorithms in API's etc. when developing applications

One of our defence customers faced exactly these issues. They did not know much about DSP and how to develop applications for this architecture.

FTT tailored a 5-day course for one project focused on the DSPIC Architecture and C programming (and assembler) and another 5-day course concentrating on the DSP filter design and implementation. In addition, support on ad hoc networking (distributed Smart Sensors) TINY was also included as part of the course offering.

Case Study 3

Another of our defence customers had experienced programmers who had extensive experience of developing C/C++ applications for part of a battlefield communications system in a Windows world using Microsoft's Visual Studio IDE, but they needed to demonstrate to their prospective customers that it would run on Linux. They needed to demonstrate a working Enterprise Service Bus demonstrator, which would involve both Microsoft Windows and Linux/Unix systems playing together:

- they needed to be able to do similar C/C++ things in a Linux/Unix environment
- the demonstrator had to demonstrate all "those good ESB things" and be able to take in information and data from various sources ( including a variety of relational databases such as Oracle / Sybase / Micrososoft SQL Server, and other data feeds ) and display all of this information, on demand, in a meaningful and easy to navigate way.

FTT developed a training program and tailored courses aimed at experienced Win32 API programmers that demonstrated how to take Win32 API programming patterns and implement them under Linux/Unix in such a way that the Linux and Windows systems can interoperate and interwork via an ESB architecture.

Time was of the essence, so the first thing we did was to get the programmers up to speed in "the mysteries" of developing advanced applications in a Unix / Linux environment. So far in this case we have delivered a 3-day intensive Adavanced Systems Administration and Bash Programming course. FTT have also designed follow on courses covering C++, JAVA, XML and CORBA for SOA development.

Case Study 4

A major stationery retailer was deploying a new stores delivery management system. The company was an IBM / Mainframe oriented company and the new system was running on a Unix platform, using an Oracle Database and application software containing embedded SQL developed using Pro*C.

The technical support team needed a rapid and intensive introduction to a mix of - Unix, C, Oracle and Pro*C so that they could intelligently track down problems in the application code in the live system.

FTT were able to develop and deliver a 5 day course covering Unix, Oracle, C and Pro*C.

Case Study 5

For a major Norwegian Telecomm company, FTT prepared and delivered a 2 day seminar to an audience that included Norwegian civil servants who had a need to understand data privacy and data protection issues connected with data warehousing and data mining.

Case Study 6

A flight operations and services company had programmers who had experience of C/C++ in a Microsoft environment but required training in a case tool and UML2.0 with advanced C++ topics, Patterns, STL etc. and more advanced MFC with STL. These delegates had touched on UML but some had not used it in anger.

FTT tailored a 5 day course that provided the delegates with an intensive technical overview of UML (including links to C++ generation and synchronisation) and their Case tool of choice, Use Case Analysis, Multi-tasking, multi-threading and inter-task/thread synchronisation, and C++ idioms and design patterns.

During the course, FTT also provided a snapshot of the model build and solution model (and code where appropriate) for each stage of the course (including the design patterns covered).

As the client was also interested in a control/logging application (in a Microsoft / Visual Studio context) design, FTT provided relevant embedded real-time applications examples in addition to an overview of the following:

* File I/0 using IOStreams
* The Winsock - sockets API
* Named pipes
* Microsoft's implementation of DCE remote procedure calls (used in COM+)
* Microsoft's implementation of COM and COM+

Case Study 7

Engineers at a major European aircraft manufacturer were using Ethernet and TCP/IP for data acquisition purposes with a Microchip TCP/IP stack and Microchip controllers and AJAX based http client on Microsoft Windows. They all had basic experience with Microchip's PIC18f family and the C18 compiler and were proficient in the use of C programming, but wanted a tailored course to include the following:

* Ethernet interface (ENC 28J60, PIC18F67J60)
* CAN Interface
* USB interface
* Zigbee
* Multiple interrupts - initialization and control
* Wireless Applications
* LCD

FTT liaised with their partner Microchip in order to source the appropriate hardware and software and then delivered the required course over a 5-day period.

Case Study 8

An Icelandic company developing Air Traffic Control Systems required a course covering very advanced C++ programming techniques in a Posix environment covering patterns, STL, CORBA (ACE) as well as QT graphics and GUI.

FTT were able to develop and deliver a 5-day course running under Linux to address these requirements.

Case Study 9

A leading IT services and computer manufacturer also had a requirement covering advanced C++ programming techniques in a Posix environment covering various patterns, but in addition, they also wanted to have OO telecomm protocols and design and communication issues tailored in the course.

FTT tailored a 5-day course to address these requirements.

Case Study 10

A content management company needed intensive training to cover PostgreSQL, programming using the PostgreSQL C API, and, PL/pgSQL (equivalent to Oracle's PL/SQL for implementing stored procedures). They also needed a strategy to migrate applications from ORACLE to PostgreSQL.

A 5-day course was developed to address these issues.

Case Study 11

The Dutch Royal Air Force and NATO had a requirement for training in Posix API programming (Advanced C programming techniques) in a Solaris environment together with X Windows programming (Xlib and Motif) for technical officers responsible for air traffic control system software maintenance.

FTT were able to develop and successfully delivered a 10-day course to address these requirements.

Case Study 12

For a leading independent product engineering, testing, consultancy and certification organisation FTT tailored and delivered a 5 day Advanced C programming course using the TASKING development environment for the Infineon C167 Architecture and also covering, the MISRA C programming guidelines and advanced techniques for FSM implementation in C.

Case Study 13

For a world leading company in the design and manufacture of High Voltage Power Supplies who use Microchip based microcontrollers, FTT delivered a 10 days of training as two 5-day courses addressing PIC16, PIC18 and C and assembler programming with emphasis on serial communications and also, Visual Basic programming covering both GUI application development as well as serial communications with the target board for data acquisition and control purposes.

Case Study 14

FTT consultants have provided advanced seminars on data warehousing implementation and design, datamining techniques and data protection issues associated with data warehousing, to various mobile communications and finance organisations.

FTT will on request run advanced datamining courses using general algorithms and neural network techniques and statechart data analysis.

Case Study 15

FTT consultants developed and provided an advanced UML and "object oriented programming in C" course to a major manufacturer of smart card chips.

The company wanted to use UML analysis and design techniques, but, the designs had to be implemented in C. A variety of approaches to achieving this objective were explored during the course.

FTT will on request run advanced courses involving the development of "mini languages" and associated parsers, compilers, and associated virtual machine byte code interpreters.