WARNING! Starting on July 30th, 2015, we have started to rebuild from scratch the whole website of the Free Technology Academy, to make it much easier to maintain and use than it was before. We haven't finished yet! Apart from looks and layout, which may change several times before settling down, it IS very likely that there are broken links here and there, or URLs that will stop work in a few days. Please be patient and if you spot any problem, let us know (contact@ftacademy.org)

Software Development

Introduction

This module is designed for IT specialists and developers that are starting their way in the free software development universe. Free Software is developed with specific collaboration techniques and tools that engage and enable world-wide communities. Professionals need to handle different programming techniques, languages and develop specific workgroup skills.

The programming languages used in this module are C, C++ or Java.

Learning Outcomes

Competences

  • Designing and coding applications using free software tools and resources
  • Developing software systems for the UNIX and GNU/Linux platforms
  • Setting up software localisation projects
  • Developing graphical applications in the GNOME environment
  • Using revision control systems
  • Working in groups, including virtual communities
  • Software packaging and documentation

Knowledge

  • Programming languages C, C++ and Java
  • Principles of structured programming and object-oriented design using UML
  • Standards for data exchange using XML
  • Software engineering concepts and methods

ACM Computing Classification System

  • D.1.4 (Sequential Programming)
  • D.1.5 (Object-Oriented Programming)
  • D.2.2 (Design Tools and Techniques)
  • D.2.3 (Coding Tools and Techniques)
  • D.3.3 (Language Constructs and Features)
  • D.4.9 (Systems Programs and Utilities)

Teaching Staff

See the FTA tutors page.

Academic Requirements

The module can be followed with little programming experience in C, C++ or Java. The last two are not even an essential requirement.

It's also possible for learners without programming experience to follow the course, but in such cases the learning process will be slower and more time dedication will be required from the the learner.

Enrolment

If you want to enroll into this course, please follow the instructions in the main Courses page.

Materials

Book cover

This material is part of the module: "Software Development".

  • Authors: J. Pérez López and L. Ribas i Xirgo
  • Coordinators: Jordi Mas Hernández and David Megías Jiménez

User login