Trainings

We will provide any training that you request if it fits in our core skills. The following list is to be taken as an example of what we can do. Other specialized subjects can be given.

Introduction to Linux
This course will introduce its audience to Linux, from installation to daily maintenance, including

  • Main distributions and their differences; Free Software licences (GPL, LGPL, BSD,…)
  • Installation: operating system, additional pre-packaged softwares, other softwares
  • Main environments (Gnome, KDE), basic operations,…
  • Basic security concepts: users, groups, ‘rwx’ flags,…
  • Basic Apache configuration
  • Basic MySQL configuration
  • Basic scripting
  • and any other subject of interrest

The goal is to provide the basic concepts, to allow you to find your way, and discover more by yourself, without being lost a whole new system.

    Introduction to web languages
    If you want to create an application which relies on the web for data exchanges, and are ready to decide how to implement it, an introduction to the various techniques and languages used for such applications is a must. This is what this course offers you.

    • HTML is the Hyper Text Markup Language, which is used to present information on the web. It’s the standard language understood by all web browsers.
    • Java as a powerfull tool, but with some entry barrier which might be not justified for smaller projects.
    • Perl as an easy and popular language also usable for web projects, due to its nice integrability with web servers, and ease of development (being a scripting language).
    • PHP as a scripting language, gaining a strong momentum in low-cost web hosting providers.
    • C, C++ as CGI for their incomparable speeds.
    • XML as a data exchange format, XSL as a reformatting language, SOAP and web services.
    Java initiation
    This module gives an overview of the fields of Java programming:

    • Introduction to object oriented (OO) programming, and its implications on the architecture and development process. Organisation for collaborative work. Best practice rules.
    • Objects and classes, methods, access restriction on classes and methods, static methods vs. object methods.
    • Development environment setup.
    • Java beans, read/write properties, usage patterns.
    • Web techniques: HTTP request/response architecture, JSP and servlets, web.xml file, WAR files.
    • GUI in Java: Java applications vs. Java applets, AWT and Swing, simple GUI programmation.
    Server side Java
    A more detailled look at the server-side techniques in Java

    • Server-side vs. client-side projects, project architecture for modularization and extensability.
    • JSP and servlets: advanced API: sessions, content-type, mapping, filters, secure access.
    • Logging and debugging in Java projects.
    • Database access (JDBC), connection pooling, error reporting.
    • Sockets and server for speciliazed protocols, SSL connections.
    • XML and Java: DOM (Document Object Model) access, SAX (Simple API for XML), JDOM, XML and JSP.
    • Introduction to RPC (Remote Procedure Call), RMI (Remote Method Invocation), XML-RPC, SOAP (Simple Object Access Protocol).
    Advanced concepts in Java
    Insights into some more advanced concepts in Java, which might not be required for day-to-day programmation, but which might offer an easyier path to implement some specialized needs.

    • Class initialisation vs. object initialisation, static blocks, potential pitfalls.
    • Fail-safe patterns for robust application programming.
    • Application configuration.
    • Reflection, or the ability for Java code to discover things programaatically about Java code.
    • Persistence APIs: serialization, serialization to XML, JDO