C++
We've been working with C++ since its release in 1986. From C-with-objects to the TR1 extensions, object-oriented, functional and meta-programming, we're experts with all styles of C++.
We've been working with C++ since its release in 1986. From C-with-objects to the TR1 extensions, object-oriented, functional and meta-programming, we're experts with all styles of C++.
The increase in CPU clock-speeds has been stalled for the last few years, and with it per-CPU throughput. To get more work done in the same amount of time it's necessary to throw more processors at the problem. Multi-processor systems have been affordable since 1998, and technologies like HyperThreading and multi-core processors are bringing that power to desktop and laptop. But to exploit these advances software must be multi-threaded.
Communications once meant RS-232, and now it's encrypted data streams over TCP/IP, encapsulated and packaged in myriad ways. Whether you need to control a robotic arm or screen-scrape a legacy system, put a transparent RPC proxy between your systems, or reverse-engineer a data stream, we can help.
A lot of our more recent work has been in realm of library development, creating expressive and powerful foundations on which the real work is built.
We can apply our deep understanding of Mac, Windows and UNIX graphics APIs, file formats and in-memory representations to provide transformational and generational code to meet your needs.
GUI generally means frameworks, and we've worked with and extended them all. QT, GTK, MFC, PowerPlant, the venerable MacApp and TCL, and our own ZooLib. And if you have an in-house system, our broad experience let's us get up to speed quickly.
Although our main strength is C++, we're familiar with other languages, ancient and modern, and use them when appropriate.
Even in a sophisticated high-level system, assembly language or machine code is sometimes needed for its semantics, performance or direct access to hardware features. For x86, PowerPC, 68K, 6502, Z80 and more, we know when and how to make effective use of assembly language and machine code.