Contenu connexe Similaire à The 25 Most Promising Open Source Projects (20) The 25 Most Promising Open Source Projects1. www.af83.com
af83 France The 25 most promising Open
Source projects of 2010
15 rue poissonnière, 75002 Paris
+33 1 42 72 33 32
contact@af83.com
af83 USA
1436 A Howard St. Bruno Michel
CA 94103 San Francisco
United States
WebWorkersCamp, La Cantine, 07/03/2010
2. Introduction
Bruno Michel
Lead Developer R&D at af83
As Lead Developer R&D at af83, a significant part of Bruno's work
is to test, create and contribute to cutting edge Web technologies,
which allows him to anticipate the most promising open source
projects. He is also the maintainer of numerous Web-centric
projects based on Ruby.
Active Member of the French Ruby Association, Bruno is also one
of the webmasters of LinuxFr.org.
http://github.com/nono
http://twitter.com/brmichel
http://blog.menfin.info/
Copyright © 2010 af83 All Rights Reserved 2
3. Redis
Key-value Store
Project sponsored by VMWare
Description
Redis is an improved key-value store which
complements DBMS for operations that
require higher levels of performance. Redis is
similar to Memcached, but brings a lot of
improvements allowing Redis to act as the
database.
http://code.google.com/p/redis/
Advantages
Not only memory based, Redis allows the
cache to be saved on disk
Ability to replace the database on several
operations
PubSub mechanism for messaging
Copyright © 2010 af83 All Rights Reserved 3
4. MongoDB
Document Database
Provided by 10gen Inc.
Description
MongoDB is a document-oriented database
that emphasizes scalability, replication,
sharding and advanced operations.
Advantages
Simple
http://www.mongodb.org/ Fast
Very scalable
Ability to displace MySQL for most Web
applications
Copyright © 2010 af83 All Rights Reserved 4
5. Riak
Distributed key/value data store
Provided by Basho Technologies Inc.
Description
Riak is a key-value store that is similar to
CouchDB, due to the use of MapReduce, but
provides better scalability.
Advantages
Very easy to scale
https://wiki.basho.com/display/RIAK/Riak Adding servers requires very minimal
operations with zero impact both on the
server and client side
Copyright © 2010 af83 All Rights Reserved 5
6. Cassandra
Distributed Database
Developed by Facebook and now handled by
the Apache Foundation
Description
Cassandra is a distributed database
designed for very large data stores and
scalability. Cassandra is close in design to
Bigtable (Google) and Dynamo (Amazon).
http://cassandra.apache.org/ Advantages
Very scalable
Combined with Hadoop, Cassandra allows
optimized data processing base on the
location of processes and data
Copyright © 2010 af83 All Rights Reserved 6
7. Neo4J
Graph database
Developed by Neo Technology
Description
Neo4J is a graph oriented database that is
designed to store data that relates to
networks. This type of database is especially
useful to store information about individuals,
products, buyers, transactions and the links
between them.
http://neo4j.org/
Advantages
A whole new way of representing data
Very useful to build recommendation
engines
Copyright © 2010 af83 All Rights Reserved 7
8. Resque
Redis-based Web-centric workqueue
service
Github project initiated by Chris Wanstrath
Description
Web application workloads are sometimes so
high that answering users immediately is not
possible. Web-centric workqueue like Resque
allows for queuing operations while still giving
feedback to the user.
http://github.com/defunkt/resque
Advantages
Based on Redis
Lots of plugins available for visualization,
statistics, prioritizing and scheduling
Copyright © 2010 af83 All Rights Reserved 8
9. Beanstalkd
Workqueue service
Provided by Keith Rarick
Description
Beanstalkd is a web-centric workqueue
whose design is inspired by Memcached:
based on C, simple and high performance.
Beanstalkd has clients for most programming
languages.
http://kr.github.com/beanstalkd/ Advantages
Fast
Simple
Interoperable
Copyright © 2010 af83 All Rights Reserved 9
10. Puppet
Configuration Management System
Provided by Puppet Labs
Description
Puppet allows for managing the configuration
of a variety of Unix systems receipts that
describe system configurations (users,
services, detailed configuration). Puppet is
based on client-server architecture, using a
REST API.
http://www.puppetlabs.com/
Advantages
Easy configuration management of
numerous servers and clients
Cross-platform: puppet receipts are able to
work on all Linux, *BSD and MacosX
Copyright © 2010 af83 All Rights Reserved 10
11. Chef
Configuration Management System
Provided by Opscode Inc.
Description
Chef is another Configuration Management
System, based on Ruby.
Advantages
Cross-platform: puppet receipts are able to
work on all Linux, *BSD, Solaris and MacosX
http://www.opscode.com/chef ● Provides more control over the receipts,
especially due to the availability of metadata
Copyright © 2010 af83 All Rights Reserved 11
12. Vagrant
Environment builder for Virtualbox
Provided by Mitchell Hashimoto and John
Bender
Description
Vagrant automatically builds a Virtualbox-
based environment and then installs Puppet
or Chef on each for automatic configuration.
Advantages
http://vagrantup.com/ Very useful for automatically deploying
standardized development environments
Allows for faster deployment of virtualbox
environments
Copyright © 2010 af83 All Rights Reserved 12
13. EventMachine
Event-processing library for Ruby
Github project
Description
Event-oriented extension for Ruby. Allows for
the development of event-processing
applications based on Ruby.
Advantages
Good fit for scalable, performance oriented
http://rubyeventmachine.com/ applications
Allows the development of realtime web
applications with Ruby
Copyright © 2010 af83 All Rights Reserved 13
14. ErrorNot
Error management service
Provided by af83
Description
ErrorNot is designed to improve error and
exception management. ErrorNot does not
send e-mails when exceptions occurs but
rather builds an history of exceptions that
developers are able to share.
http://github.com/errornot/ErrorNot Advantages
Better error and exception management
Provides a full history on errors and
exceptions
Copyright © 2010 af83 All Rights Reserved 14
15. Lamson
Python SMTP Framework
Provided by the Lamson Project / Zed Shaw
Description
Lamson is an SMTP Framework written in
Python. Lamson includes specific libraries for
mail services designed to enable the
development of highly specialized mail-based
services.
http://lamsonproject.org/ Advantages
SMTP Framework
MVC
Supports the use of databases for mail
services
Supports the creation of complex mail
services
Copyright © 2010 af83 All Rights Reserved 15
16. Processing.js
Open visualization language
Originally developed by Ben Fry and Casey
Reas, ported to Javascript by John Resig
Description
Port of the Processing library on Javascript,
which creates graphs and animations.
Advantages
Uses Javascript to draw and manipulate
http://processingjs.org/ images based on HTML5's Canvas
Allows for the creation of images,
animations and interactions without Flash or
Java applets
Copyright © 2010 af83 All Rights Reserved 16
17. Strophe.js
Libraries designed to build Browser-
based XMPP clients
Provided by StanzIQ
Description
HTTP is half duplex while XMPP is full
duplex, which means that HTTP clients like
Web browsers can not act natively as XMPP
clients. Strophe.js solves the problem by
allowing XMPP connections on Web
browsers, using a pool of connections
http://code.stanziq.com/strophe/ between the browser and a proxy using
ejabberd.
Advantages
Very useful to leverage Presence and
Instant Messaging on Web applications
Copyright © 2010 af83 All Rights Reserved 17
18. Jasmine
Javascript testing framework
Provided by Pivotal Labs
Description
Jasmine is a testing framework that allows
unit testing on Javascript applications.
Advantages
Works both on the client and server-side
Easy to maintain due to a very clean code
http://github.com/pivotal/jasmine base
Compliant with the Behavior Driven
Development (BDD) model for testing: tests
scripts are meant to be understandable
Copyright © 2010 af83 All Rights Reserved 18
19. http-console
HTTP Read-eval-print-loop
Provided by Alexis Sellier / Cloudhead.io
Description
http-console is command-line interface for
http services.
Advantages
Very good fit for debugging HTTP services,
Very useful to debug complex REST APIs
http://github.com/cloudhead/http-console
Copyright © 2010 af83 All Rights Reserved 19
20. Dislocate
Distributed service locator
Provided by Paul Querna
Description
Dislocate aims to enable the discovery of
new services on a network with high
performance location of these services by
clients.
Advantages
http://github.com/pquerna/ndislocate Based on node.JS
Reduces the need of maintaining
monitoring, DNS, and load balancers
Copyright © 2010 af83 All Rights Reserved 20
21. Humming Bird
Real time Web traffic visualization tool
Provided by Michael Nutt and Benny Wong
Description
Humming Bird is a realtime Web traffic
visualizer based on Node.JS and MongoDB.
The use of Node.JS allows for very high
update rates.
Advantages
http://mnutt.github.com/hummingbird/ Pretty!
Updates data 20 times per second
Built on Node.JS and MongoDB
Focusing on specific pages or function is
possible
Copyright © 2010 af83 All Rights Reserved 21
22. Realie
Real-time collaborative code editor
Provided by Lakshan Perera
Description
Realie allows for collaborative code edition
and note taking.
Advantages
Similar to Etherpad
Based on Node.JS
http://github.com/laktek/realie
Copyright © 2010 af83 All Rights Reserved 22
23. Sass
CSS3 Processor
Provided by Hampton Catlin, Nathan
Weizenbaum, Chris Eppstein and
contributors
Description
Sass extends CSS with variables, functions
and classes and is based on Ruby. Sass
code is compiled to process CSS.
http://sass-lang.com/ Advantages
Makes CSS development more like
programming
Allows very sophisticated, cross-browsers
uses of CSS like playing on brightness,
contrast and color processing based on rules
Copyright © 2010 af83 All Rights Reserved 23
24. Less.js
CSS optimizer
Provided by Alexis Sellier / Cloudhead.io
Description
Less.js is a CSS optimizer that is close to
Sass but has a different approach to syntax.
Advantages
Brings variables to CSS
Fully compatible with CSS3
http://github.com/cloudhead/less.js
Copyright © 2010 af83 All Rights Reserved 24
25. ShakaCSS
Bookmark-based grid management
system
Provided by Maxim Benadon / af83
Description
ShakaCSS provides a set of tools to ease the
development and debug of CSS stylesheets:
a guide for photoshop style, a grid, resizable
and draggable rule.
http://shakacss.af83.com/ Advantages
Very efficient
One click installation using a bookmarklet
Store variables in a cookies allowing the
navigation from one page to another while
keeping the markers
Copyright © 2010 af83 All Rights Reserved 25
26. bcat
Concatenator for Web browsers
Provided by Ryan Tomayko
Description
Is a concatenator printing data to web
browsers outputs.
Advantages
Very useful for developers
http://rtomayko.github.com/bcat/
Copyright © 2010 af83 All Rights Reserved 26
27. Showoff
Online presentation tool
Developped by Scott Chacon
Description
Showoff is an online presentation tool written
in Ruby.
Advantages
Applies stylesheets and Javascript controls
to presentations
http://github.com/adamlogic/showoff Slides are written with markdown
Copyright © 2010 af83 All Rights Reserved 27
28. www.af83.com
af83 France
15 rue poissonnière, 75002 Paris
+33 1 42 72 33 32
contact@af83.com
af83 USA
1436 A Howard St.
CA 94103 San Francisco
United States