Principales sources technologiques
Mise à jour (last update): 
Voici une liste des techniques que j'utilise effectivement en ce moment. J'utilise moi-même couramment cette page.
Here is a list of techniques that I use currently.
voir + bas Technologies prometteuses

Voir aussi : Projets à surveiller (interesting projects)
Copyright (c) 2001-2004 Jean-Marc Vanel. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation


Pourquoi des liens en rouge ? Cette page est passée régulièrement par mon outil en ligne de commande siteWatcher , qui met en rouge les hyperliens dont la cible a été modifiée depuis le dernier passage de l'outil.

Technologies en évolution

XML

Links

Free XML tools and software, by Lars Marius Garshol.
XSLT Questions and Answers    lots of tricks and recipies for XML transforms
ZVON.ORG Tutorials | References | Tools | HTML with CSS | XML with CSS | XML with XSLT | HTML with graphics | HTML with SVG | PDF - We offer multiple views of our pages to demonstrate the power of XML.

Software

SAXON XSLT processor http://saxon.sourceforge.net/ : 100% Java, efficient, allways synchronized with new W3C specs. And now it has XQuery!
qexo and Galax ( other Xquery implementations )

XML editors

Pollo : an XML editor in Java with a colorful tree view as Russian Dolls, XPath and XML Shema. Shows each tag with a different color; XPath query results are not highlighted, they are only iterated upon using forward and backward arrows
Gendoc/Gendiapo (formerly Merlot)   Opensource Extensible XML Modeling Application 
[not currently active] Xerlin another offspring from the defunkt Merlot; I integrated it in my XML Graph project; see also my proposal of a plug-in Java API for XML editors

XED: An XML document instance editor in Python, with Schema valivdation: http://www.ltg.ed.ac.uk/~ht/xed.html
Jaxe oriented towards non-technical users
Treebeard/Fangorn - An XSLT IDE/editor.
Butterfly XML Editor and IDE

Others

The Schematron : An XML Structure Validation Language using Patterns in Treeshttp://www.ascc.net/xml/resource/schematron/


XSV (XML Schema Validator) is an open source (GPLed) work-in-progress attempt at a conformant schema-aware processorhttp://www.ltg.ed.ac.uk/~ht/xsv-status.html

Apache Jakarta Tomcat , a Servlet+JSP Engine

http://jetty.mortbay.org Another 100% Java HTTP Server and Servlet Container, more ligh-weight than Tomcat. I use it because it is bundled in the eXist distribution. It seems to give more accurate error messages.

eXist a very usable XML - XQuery - XPath - DOM retrievial engine, that indexes text content - I'm a developer in it

The dbXML Core is a native XML database. As such it is a database server intended to manage large numbers of small XML documents. The documents are stored in collections and the server provides the ability to query these collections using XPath. The server is lightweight, modular and suitable for embedding in custom applications or running as a standalone database. The dbXML Core is written in Java and it provides an implementation of the XML:DB XML Database API that makes developing XML database applications easy. Now part of Apache : XIndice

HTML TIDY     a batch way to clean HTML (especially of Microsoft origin) and make it XHTML (an interactive way being Amaya)

Ant is a Java based build tool. In theory it is kind of like make without make's wrinkles.

http://www.w3.org/Amaya / from W3C, a good (X)HTML editor, with MVC design, and SVG and MathML capabilities; converts HTML to XHTML and windows-1252 encoding to iso-8859-1 or utf-8

Cocoon2 est une application Web (Webapp au sens J2EE) qui permet de publier du contenu XML ou autre en s'appuyant sur des chaînes de transformations XSLT; il assure une séparation rigoureuse du contenu (exemple un article de catalogue), de la logique de traitement (e.g. ajouter au caddy), et de la présentation (e.g. la mise en page)

Castor (XML-Java bridge) - Castor is an open source data binding framework for Java[tm]. It's basically the shortest path between Java objects, XML documents, SQL tables and LDAP directories. Castor provides Java to XML binding, Java to SQL/LDAP persistence, and then some more.

xsmiles, a LGPL browser with xhtml basic + css, best xforms implementation yet, multiple namespace mixing, xml events, smil animation,

[LimSee2]

standalone XPath support: Jaxen can query a DOM (or JDOM) object

XPE

XPath Explorer (XPE) : a useful Java GUI for XML files or URL's


Xerces2 Java Parser    also XML Schema validator, and DOM events implementation

XMLdbGUI    XMLdbGUI is a Swing-based Java application that allows the user to browse and modify databases conforming to the XML:DB API specification.

Ces 2 programmes analysent la différence comme la commande diff d'Unix
diffxml : en java, il marche bien. Il sort un fichier fait à partir du premier avec des balises ajoutées aux bons endroits indiquent les différences:
En Python, pas testé: xmldiff

Languages, tools and frameworks

  •  Eclipse is an an open extensible IDE similar to Netbeans; I am currently using eclipse only - list of eclipse plugins
  • BlueJ logo BlueJ is an integrated Java environment specifically designed for introductory teaching; shows simple class diadrams from source - alas not open-source - une approche totalement originale pour apprendre Java, http://BlueJ.org un environnement d'apprentissage de Java fait par plusieurs enseignants, et de préférence le livre en Français de Barnes et Kölling qui va avec.
  • Source-Navigator is a source code analysis tool. With it, you can edit your source code, display relationships between classes and functions and members, and display call trees. It is "sans-pareil" for navigating quickly around large volumes of code. Source-Navigator works with the Insight GUI interface for GDB. Source-Navigator supports C, C++, Java, Tcl, [incr Tcl], FORTRAN and COBOL, and provides an SDK so that you can write your own parsers.

  • JikesTMis a Java compiler.Jikes has five advantages over the Sun provided javac compiler: High performance, better error messages, Open source, Strictly Java compatible, Dependency analysishttp://oss.software.ibm.com/developerworks/opensource/jikes/
  • JFluid - The JFluid project from Sun provides technology for Java application profiling (it can also be used for monitoring and debugging)
  • JavaML: An XML Markup Language for Java Source Code; there is an option of the Jikes compiler to produce this JavaML from plain Java source, and an XSLT stylesheet for the reverse transform.

  • JADE - J.A.D.E. Java(TM) Addition to Default Environment; http://dautelle.com/jade/ (Java framework providing units and error computations, i. e. interval computations)
  • JBoss is an Open Source, standards-compliant, application server implemented in 100% Pure Java and distributed for free. I didn't want to buy the documentation, so I had to  struggle a bit to have the JBoss.3.0TemplateAndExamples/template sample working; it is 100% command line, using Ant; I wrote a small HOWTO to tell the exact procedure to run the sample.
  • ObjectWeb, a concurrent of JBoss among open source J2EE frameworks; also the newborn Geronimo of apache.org
  • alma - A software workshop for modeling and analysing. It has an IDE with UML functionalities, but it is especially valuable to translate between OO languages
  • Poseidon, commercial but free version, based on (and enhances) ArgoUML
  • Umbrello UML Object Modeller for Linux (KDE)
  • Unimodeler 1.2 Aug-02 Linux - supports all 9 UML diagrams, GTK (Gnome) based, postscript printing
  • Java ==> UML in batch : JUG - Java UML Generator
  • Doxygen : ( my Doxyfile file ) it generates Javadoc-like Web pages, with nice clickable diagrams for inheritance and class-valued properties; contrary to all UML editors that I know, the graph layout is automatically done, which is nice to grasp quickly a new piece of software.
  • Xref-Java2Html A Java documentation tool.
  • Grasp a Java editor with nice graphical signs around loops and other language constructs
  • PMD scans Java source code and looks for potential problems. It works with Rule Sets in XML: Basic, Naming, Unused Code, Design, Import Statements, JUnit Tests, Strings, Braces, Code Size and produces reports in XML or HTML. The latest developpement, CDP ( find Copied and pasted code) shows all the chunks of duplicated code of length superior to a given size,  with their locations.; see also an article about CPD here : http://www.onjava.com/pub/a/onjava/2003/03/12/pmd_cpd.html -
    PMD (http://pmd.sourceforge.net/) je le recommande car il permet de tester le code par rapport à des règles. Les règles en XML sont configurables. En plus il a la fonctionalité unique de lister tous les bouts de code qui ont été copiés-collés.
  • Echidna - A free multiprocess system in Java - allows to have a JVM constantly in the background, so that you don't have to wait 2 seconds everytime for the loading of a new Virtual Machine (this is what Sun should have done for a long time). It has a generalized  and dynamical CLASSPATH but alas it doesn't accept jars in classpath.
  • JUnit is a simple framework to write repeatable tests. It is an architecture for unit testing frameworks. It has been designed by Erich Gamma, one of the famous Gang of Four.
  • L'outil que j'utilise pour tester en batch une IHM Java, sans avoir à cliquer c'est Abbot (http://abbot.sourceforge.net/). on peut enregistrer une séquence  d'actions utilisateur, la rejouer, et même spécifier des assertions.
  • kompare, a very beautiful graphic file comparer; it took me a long time to realize that I allready had it with RedHat 8.0 !
  • JDepend . JDepend traverses Java class file directories and generates dependency relations and design quality metrics for each Java package. ...

  A tester



Miscellaneous

The Cygwin tools are ports of the popular GNU development tools and utilities for Windows 95, 98, and NT. They function by using the Cygwin library which provides a UNIX-like API on top of the Win32 API. More info... http://sources.redhat.com/cygwin/

Comprehensive Perl Archive Network (CPAN) http://www.cpan.org/

Concurrent Versions System http://cvshome.org/docs/
jCVS A Java Based CVS Client http://www.jcvs.org/

csv2html: convert from CSV (comma-separated value) format, output by a spreadsheet, to HTML http://phma.hn.org/Software/csv2html.html

The Apache Software Foundation http://www.apache.org/

Ozone Database Project is a open initiative for the creation of an open source , Java based, object-oriented database management system. http://www.ozone-db.org/

Dia is a program for creating diagrams of all kinds. The current version can do UML class diagrams, Entity-Relationship modeling, network diagrams, and much more.  It can currently export to postscript, SVG and load/save in an xml format. http://www.lysator.liu.se/~alla/dia/

http://www.openoffice .org/
I have currently no Excel and Powerpoint on my machine; Open Office (ex Star Office) does it pretty well and reads their files. Its file format is a ZIP file with text in XML plus images and Dublin Core metadata, which is the right thing to do today.

gtk-gnutella, "The" Graphical Gnutella Client for Unix; on Windows I use Gnucleus, but the underlying OS is so fragile...

Winmerge A nice Windows GUI around existing diff / merge Unix tools .

Mozilla is an open-source web browser, designed for standards compliance, performance and portability. 101 things that the Mozilla browser can do that IE cannot. "Using the Mozilla JavaScript interface to XSL Transformations" http://www.mozilla.org/projects/xslt/js-interface.html


NMap ("Network Mapper") is an open source utility for network exploration or security auditing, whith nice GUI font-end. 

: a free audio editor. You can record sounds, play sounds, import and export WAV, AIFF, OGG and MP3 files, and more. Use it to edit your sounds using Cut, Copy and Paste (with unlimited Undo), mix tracks together, or apply effects to your recordings.

FreeTTS 1.2beta - A speech synthesizer written entirely in the Java TM programming language.

gLabels - A label and business card program - here is my own card in gLabels XML .

CheckInstall keeps track of all files installed by a "make install" or equivalent, creates a Slackware, RPM, or Debian package with those files, and adds it to the installed packages database, allowing for easy package removal or distribution.

key MDB Tools

The MDB Tools project is a effort to document the MDB file format used in Microsoft's Access database package, and to provide a set of tools and applications to make that data available on other platforms.

Protégé - Protégé is an ontology editor and a knowledge-base editor.

Protégé is also an open-source, Java tool that provides an extensible architecture for the creation of customized knowledge-based applications.

In a few years, Protégé has become a fantastic toolbox with tens of plugins, much like eclipse in its domain.

Technologies stables

vim - Vi IMproved, a programmers text editor - http://www.vim.org
 - I did an XQuery syntax for vim

Explore2fs is a Windows program, which allows read support for Linux filesystems (Second Extended File System or ext2), and works under NT4, Win95, Win98, WinME, Win2000, and WinXP. Write support is still included, but is not recommended for use. http://freshmeat.net/projects/explore2fs/

Maxima for Symbolic Computation A sophisticated computer algebra system released under the GPL

jscl-meditor - java symbolic computing library and mathematical editor

WordNet® is an online lexical reference system whose design is inspired by current psycholinguistic theories of human lexical memory. English nouns, verbs, adjectives and adverbs are organized into synonym sets, each representing one underlying lexical concept. Different relations link the synonym sets. - I use WordNet for my WWBKB project

The GIMP is the GNU Image Manipulation Program. It is a freely distributed piece of software suitable for such tasks as photo retouching, image composition and image authoring.

link-grammar     The Link Grammar Parser is a syntactic parser of English, based on link grammar, an original theory of English syntax. Given a sentence, the system assigns to it a syntactic structure, which consists of a set of labeled links connecting pairs of words.

JGraph, a Java 2 library for graph editors, an active project with many diverse applications, a good documentation. I use it in my XML Graph project;
Graphviz - open source graph drawing software.


Technologies prometteuses

... mais que je n'utilise pas (encore) couramment :
Promising Technologies, but that I don't (yet) use frequently.

Meta Grammar tools (frmg) from the ATOLL team of the INRIA.fr - Software -- Demos

WebWork, a MVC framework for Web or GUI applications - an article in javaworld: Art of Java Web development: WebWork

JavaServer Faces , a Java Sun technology, simplifies building user interfaces for JavaServer applications, enabling JavaServer Faces UI components to be rendered to various client devices.

Meta-CVS 0.12 (Development)
Subversion - the probable successor of CVS

   is another editor for Java and other languages

Web services, e-commerce, etc

XML Resource Directory Description Language (RDDL)
ebXML Welcome
Web Service Definition Language (WSDL)
XML Resource Directory Description Language (RDDL)
Universal Description, Discovery, and Integration (UDDI)
 

XML


Knowledge representation, etc

TopicMaps.Org Home Page
The DARPA Agent Markup Language Homepage
OIL

Algorithms and Numerics

libwayne
Abstract Data Types & Algorithms in C

MacAnova     A Program for Statistical Analysis and Matrix Algebra

Miscellaneous

http://www.wincvs.org/

Festival download US mirror at CMU    a free software Text To Speech (TTS)

  package gnu.regexp - Regular Expressions for Java
  a repository of JavaCC grammars

<>OpenEJB -- Open Source EJB Container

http://java.sun.com/j2ee/ 

a Java implementation of Smalltalk's Model View Controler ...

Lucene is a high-performance, full-featured text search engine written entirely in Java.

EASEA EAsy Specification of Evolutionary Algorithms

GNU Solfege An eartraining program for GNOME.

Bioinformatics

  Programs for Interactive Identification
  Desirable Attributes for Interactive Identification Programs
  Digital Taxonomy - Software

GNU

  GNU Image Finding Tool
  GRASS GIS  is a Geographical Information System (GIS)
  Perl Object Development System
  TWiki is a mature, full featured web based collaboration system
  FTP Client
  HTTPClient
  Unified Development Environment (UDE)
  xml2class
  Rememberance Agents
  VRweb
  ID Utils
  JACAL
  Sweater

Games

GNU Go is a free program that plays the game of Go.

http://www.gnu.org/software/gnugo/gnugo.html

CGoban ("Complete Goban") 1 provides a large set of go-related services for Unix and X11.