Category: Open Source

Pharo by Example

Author Andrew P. Black ,Stéphane Ducasse, Oscar Nierstrasz, Damien Pollet ,Damien Cassou, Marcus Denker
Format Online PDF
Price free

Pharo is a modern open-source development environment and language inspired from Smalltalk. Despite being the first purely object-oriented language and environment, Pharo is in many ways still far ahead of its successors in promoting a vision of an environment where everything is an object, and anything can change at run-time.

Pharo by Example, intended for both students and developers, will guide you gently through the Pharo language and environment by means of a series of examples and exercises.

This book is based on the first release of Pharo. Newer book versions have been released since then.

Continue reading

Open Advice

Open Advice
  • Author: Editor Lydia Pintscher and 42 prominent contributors to Open Source projects
  • Format: PDF
  • Price: free

Free Software projects are changing the software landscape in impressive ways with dedicated users and innovative management. Each person contributes something to the movement in their own way and to their abilities and knowledge. This personal commitment and the power of collaboration over the internet is what makes Free Software great and what brought the authors of this book together.

This book is the answer to “What would you have liked to know when you started contributing?”. The authors give insights into the many different talents it takes to make a successful software project, coding of course but also design, translation, marketing and other skills. We are here to give you a head start if you are new. And if you have been contributing for a while already, we are here to give you some insight into other areas and projects.

Chapters include:

  • Ideas and Innovation
  • Code First
  • Everyone Else Might Be Wrong, But Probably Not
  • Out of the Lab, into the Wild
  • Prepare for the Future: Evolution of Teams in FLOSS
  • You’ll Eventually Know Everything They’ve Forgotten
  • University and Community
  • Being Allowed to Do Awesome
  • Love the Unknown
  • Backups to Maintain Sanity
  • The Art of Problem Solving
  • Cross-Project Collaboration
  • Writing Patches
  • Given Enough Eyeballs, Not All Bugs are Shallow
  • Kick, Push
  • Test-Driven Enlightenment
  • Life-Changer Documentation for Novices
  • Good Manners Matter
  • Documentation and My Former Self
  • Stop Worrying and Love the Crowd
  • My Project Taught Me how to Grow Up
  • Learn from Your Users
  • Software that Has the Quality Without A Name
  • Don’t Be Shy
  • Use of Color and Images in Design Practices
  • How Not to Start a Community
  • Hindsight is Almost 20/20
  • Things I’m Happy I Didn’t Know
  • From Beginner to Professional
  • Packaging – Providing a Great Route into Free Software
  • Where Upstream and Downstream Meet
  • Finding Your Feet in a Free Software Promotion Team
  • Big Plans Don’t Work
  • Who are You, What are You Selling, and Why Should I Care?
  • People are Everything
  • Getting People Together
  • We’re Not Crazy . . . We’re Conference Organizers!
  • How to Ask for Money
  • Free Software in Public Administrations
  • Underestimating the Value of a Free Software Business Model
  • Free and Open Source-Based Business Models
  • On being a Lawyer in FOSS
  • Building Bridges

Understanding Open Source and Free Software Licensing

My image
  • Author: Andrew M. St. Laurent
  • Format: PDF
  • Price: free

Licensing is a major part of what open source and free software are all about, but it’s still one of the most complicated areas of law. Understanding Open Source and Free Software Licensing explains your licensing options, how they compare and interoperate, and how license choices affect project possibilities.

If you’re an open source/free software developer, this book is an absolute necessity.

Chapters include:

  • Open Source Licensing, Contract, and Copyright Law
  • The MIT, BSD, Apache, and Academic Free Licenses
  • The GPL, LGPL, and Mozilla Licenses
  • Qt, Artistic, and Creative Commons Licenses
  • Non-Open Source Licenses
  • Legal Impacts of Open Source and Free Software Licensing
  • Software Development Using Open Source and Free Software Licenses

Open Sources: Voices from the Open Source Revolution – First Edition

My image
  • Author: various authors
  • Format: online HTML
  • Price: free

In Open Sources, leaders of Open Source come together in print for the first time to discuss the new vision of the software industry they have created, through essays that explain how the movement works, why it succeeds, and where it is going. A powerful vision from the movement’s spiritual leaders, this book reveals the mysteries of how open development builds better software and how businesses can leverage freely available software for a competitive business advantage.

Chapters include:

  • A Brief History of Hackerdom – Eric S. Raymond
  • Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable – Marshall Kirk McKusick
  • The Internet Engineering Task Force – Scott Bradner
  • The GNU Operating System and the Free Software Movement – Richard Stallman
  • Future of Cygnus Solutions: An Entrepreneur’s Account – Michael Tiemann
  • Software Engineering – Paul Vixie
  • The Linux Edge – Linus Torvalds
  • Giving It Away: How Red Hat Software Stumbled Across a New Economic Model and Helped Improve an Industry – Robert Young
  • Diligence, Patience, and Humility – Larry Wall
  • Open Source as a Business Strategy – Brian Behlendorf
  • The Open Source Definition – Bruce Perens
  • Hardware, Software, and Infoware – Tim O’Reilly
  • Freeing the Source: The Story of Mozilla – Jim Hamerly and Tom Paquin with Susan Walton
  • The Revenge of the Hackers – Eric S. Raymond

Pro Git

  • Author: Scott Chacon
  • Format: online HTML, PDF, EPUB, MOBI
  • Price: free

Git is the version control system developed by Linus Torvalds for Linux kernel development. It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.
This book is for all open source developers: you are bound to encounter it somewhere in the course of your working life. Proprietary software developers will appreciate Git’s enormous scalability, since it is used for the Linux project, which comprises thousands of developers and testers.
Chapters include:

  • About Version Control
  • A Short History of Git
  • Git Basics
  • Installing Git
  • First-Time Git Setup
  • Getting Help
  • Getting a Git Repository
  • Recording Changes to the Repository
  • Viewing the Commit History
  • Undoing Things
  • Working with Remotes
  • Tagging
  • Tips and Tricks
  • What a Branch Is
  • Basic Branching and Merging
  • Branch Management
  • Branching Workflows
  • Remote Branches
  • Rebasing
  • The Protocols
  • Getting Git on a Server
  • Generating Your SSH Public Key
  • Setting Up the Server
  • Public Access
  • GitWeb
  • Gitosis
  • Gitolite
  • Git Daemon
  • Hosted Git
  • Distributed Workflows
  • Contributing to a Project
  • Maintaining a Project
  • Revision Selection
  • Interactive Staging
  • Stashing
  • Rewriting History
  • Debugging with Git
  • Submodules
  • Subtree Merging
  • Git Configuration
  • Git Attributes
  • Git Hooks
  • An Example Git-Enforced Policy
  • Git and Subversion
  • Migrating to Git
  • Plumbing and Porcelain
  • Git Objects
  • Git References
  • Packfiles
  • The Refspec
  • Transfer Protocols
  • Maintenance and Data Recovery

Read: Pro Git


Firefox Add-ons Developer Guide

My image
  • Author: Hideyuki Emura, Hiroshi “Piro” Shimoda, Taiga Gomibuchi, Taro Matsuzawa, Yutaka Kachi
  • Format: online HTML wiki-book
  • Price: free

This guide is based on an earlier tutorial written and printed for an Add-ons conference organized in Japan, back in June 2007. It has been updated for the Firefox 3.5 release.

The document will guide and assist add-ons developers eager to develop their own Firefox add-ons. It is targeted to all types of users, from the experienced developer who needs a little push in the right direction, to the beginner looking to get his hands dirty, but not sure where to begin.

It is an ongoing wiki-book work in progress and subject to change, as needed and revised.

Chapters include:

  • Introduction to extensions
  • Technologies used in developing extensions
  • Introduction to XUL: How to build a more intuitive UI
  • Using XPCOM: Implementing advanced processes
  • Let’s build a Firefox extension
  • Firefox extensions and XUL applications
  • Appendix: What you should know about open-source software licenses

Embedded Software Development with eCos

My image
  • Author: Anthony J. Massa
  • Format: PDF
  • Price: free

Build low-cost, royalty-free embedded solutions with eCos, step by step.

The Embedded Configurable Operating System (eCos) gives professionals a low-cost, royalty-free embedded software development solution that works in highly constrained hardware environments, while scaling smoothly to larger products.

In this start-to-finish guide to eCos solution building, Anthony Massa covers eCos architecture, installation, configuration, coding, deployment, and the entire eCos open source development system. Additional open source tools are included to configure a complete embedded software development environment.

Massa’s code examples and application case study illuminate techniques for building virtually any embedded system, from the simplest device to complex Internet-enabled wireless systems.

Chapters include:

  • An Introduction to the eCos World
  • The Hardware Abstraction Layer
  • Exceptions and Interrupts
  • Virtual Vectors
  • The Kernel
  • Threads and Synchronization Mechanisms
  • Other eCos Architecture Components
  • Additional Functionality and Third-Party Contributions
  • The RedBoot ROM Monitor
  • The Host Development Platform
  • The eCos Toolset
  • An Example Application Using eCos
  • Porting eCos
  • Supported Processors and Evaluation Platforms
  • eCos License
  • Cygwin Tools Upgrade Procedure
  • Building the GNU Cross-Development Tools
Download the source document
Download the figures

The Linux Development Platform

My image
  • Author: Rafeeq Ur Rehman, Christopher Paul
  • Format: archived PDF
  • Price: free

Tools for high-efficiency Linux development in enterprise environments.

Linux developers have access to an extraordinary array of GNU and open source tools. Now, two leading Linux developers show how to choose the best tools for your specific needs, and integrate them into a complete development environment that maximizes your effectiveness in any project, no matter how large or complex.

Chapters include:

  • Introduction to Software Development
  • Working With Editors
  • Compilers and Assemblers
  • Using GNU make
  • Working with GNU Debugger
  • Introduction to CVS
  • Miscellaneous Tools
  • Cross-Platform and Embedded Systems Development
  • Platform Independent Development with Java
  • Typical Hardware Requirements for a Linux Development Workstation
Download the source document
Download the figures

Apache Jakarta Commons: Reusable Java Components

My image
  • Author: Will Iverson
  • Format: PDF
  • Price: free

Using the Apache Jakarta Commons reusable Java components, you can leverage the work of the global open-source community to solve common programming problems reliably, quickly, and inexpensively.

But, to use the Commons libraries effectively, you need far more guidance than the official documentation offers. In Apache Jakarta Commons: Reusable Java Components, Will Iverson covers what Java developers need to know to take full advantage of Jakarta Commons—starting right now.

Iverson begins with a definitive overview of the Commons project: goals, installation, and getting started with Commons components. Next, he presents example-rich chapters on the twelve most useful Commons packages, covering topics ranging from HTTP FileUpload to database connectivity. Iverson provides detailed code samples for every component he describes. After you’ve mastered the core Jakarta Commons packages, you’ll constantly rely on this book’s handy seventy-five page quick-reference.

Whether you’re building code for front-end Web applications, client-side software, or back-end servers, learning Jakarta Commons will make you far more efficient. Apache Jakarta Commons is the fastest way to master and get results with Commons.

Chapters include:

  • Overview
  • FileUpload
  • HttpClient
  • Net
  • Pool
  • DBCP (Database Connection Pool)
  • BeanUtils
  • JXPath
  • Logging
  • Lang
  • Collections
  • Codec
  • CLI (Command-Line Interface)
  • Other Projects
  • Lang Reference
Download source code examples

Rapid Application Development with Mozilla

My image
  • Author: Nigel McFarlane
  • Format: archived PDF
  • Price: free

A concise guide for any programmer who wants to learn the versatility and compatibility of Mozilla, an open source toolset with over a thousand objects and components.

An additional feature of this book is the NoteTaker Web browser add-on, a sample Mozilla application that is developed throughout the book.

This book is the perfect addition to the library of any user-interface software engineer, cross-platform developer, or any programmer looking to discover the benefits of rapid application development.

Chapters include:

  • Fundamental Concepts
  • XUL Layout
  • Static Content
  • First Widgets and Themes
  • Scripting
  • Events
  • Forms and Menus
  • Navigation
  • Commands
  • Windows and Panes
  • RDF
  • Overlays and Chrome
  • Listboxes and Trees
  • Templates
  • XBL Bindings
  • XPCOM Objects
  • Deployment
Download source code examples