Random people Random location Random misc

Designing Libray APIs: How to Make Users Love Your Library.

One of the foundation strengths of the Linux and FLOSS platform is
the huge array of libraries for tasks as varied as secure socket communication,
encoding and decoding images, audio and video, graphical user interfaces,
database access and mathematical/scientific data processing.

Any developer who has used more that three or four libraries in their programming career would have noticed that the utility and ease of use of FLOSS libraries varies immensely.

This talk will attempt to cover a broad range of practical and theoretical aspects
of how to design library APIs that are simple, logical, useful and easy to use. The intention is to be language agnostic and will cover :

- C libraries because C is so prevalent and easy to interface to.
- Libraries written in Object Oriented languages like C++, Java and Python.
- Libraries written in high level languages like Python and Ocaml.
- Issues involved in wrapping low level C libraries in high level languages
like Python and Ocaml.
- Error detection, handling and client program notification from low level
to high level languages.

Project: This is talk is not about any particular project, but I am the main author of libsndfile and libsamplerate. 


Erik de Castro Lopo

Erik de Castro Lopo graduated from the University of Newcastle in 1992 with a B.Eng (hons) in Computer Engineering. He used various unices at university and found Linux in 1995. He released libsndfile, his first open source/free software project in 1999, his second libsamplerate in 2002 and has contributed bug fixes, patches and code to numerous FOSS projects since. He is currently employed as a Senior Design Engineer for bCODE Pty Ltd, a small venture capital funded startup based in Sydney as part of a small team working on their Ubuntu Linux based embedded systems.

Erik de Castro Lopo

Erik de Castro Lopo graduated from the University of Newcastle in 1992 with a B.Eng (hons) in Computer Engineering. He used various unices at university and found Linux in 1995. He released libsndfile, his first open source/free software project in 1999, his second libsamplerate in 2002 and has contributed bug fixes, patches and code to numerous FOSS projects since. He is currently employed as a Senior Design Engineer for bCODE Pty Ltd, a small venture capital funded startup based in Sydney as part of a small team working on their Ubuntu Linux based embedded systems.

© 2007 MEL8OURNE LCA2008 and Linux Australia | Linux is a registered trademark of Linus Torvalds | Site map | Valid XHTML 1.0

rja