Skills

Development Techniques

We at Sight GmbH develop our projects using the notion of Extreme Programming. Extreme Programming helps to keep development short and costs low by not specifying the project into full detail at the beginning. Only those parts which are instantly needed are specified and implemented. This is faster at the expense of needing more communication and refactoring.

Design

If your application needs a GUI we use fast prototyping techniques to quickly build a system for you. You can then test it to see if it complies with your needs. This prototype is then considered as an integral part of the specification. This technique was intensely used for the data exchange device, the cash register and the binocular project (see history).

We use UML to model the applications or systems we develop.

Cognitive Science

We believe that the new age of cognitive science is dawning. Where ever appropriate we will propose to use cognitive science techniques to solve your tasks. Cognitive science can help make systems more robust and adaptive to new situations. The person counting device uses fuzzy sets and neuronal nets to process the input data from its sensors. This is a typical application where no other technique works this well.

Languages

We use and are comfortable with C/C++, Perl, Python and PHP. We didn't use Java much lately as it was not very suited for embedded systems. This may change in the future as memory and performance do not pose such tight limits anymore. In earlier projects we used Pascal for the online system, Modula II for CEREC, C for the data exchange device, TMIS for the bord computer, the cash register and the person counting system and C++ for the binoculars. TMIS was an object oriented language which we developed ourselves to obtain OO-capabilities for an embedded 8-bit system.

Hardware

Although we at Sight GmbH do not design hardware anymore, we still have a very good knowledge of it. We can help you in deciding what should be done in software and what in hardware or when to use a DSP. We designed the hardware for the data exchange device, the bord computer, the cash register, the person counting device and the ink jet printer (see history).

Image Processing

Another of our skills is to process images in various ways. One of the big challenges in the CEREC system (see history) for instance was to extract the edges of the cavities from the pictures taken of the teeth.

Data Bases

In the past we have worked a lot with SQL data bases and have built up quite some experience in this field. The portfolio management system consisted of several huge Oracle databases distributed over different servers. The databases handled millions of transactions most of them with many constraints and triggers every day.

We are also used to store changing parameters and texts into XML files and reading these files into the applications when they are invoked. This was used in the binocular project.

Localisation

All our designs take into account that the resulting systems will be delivered to and run all over the world. This is why we consequently use UTF-16 strings and store all texts into an XML file for easy translation by a lesser qualified personnel. The binocular project used this technique the first time.