I just discovered a new command that I did not know: ac. It gives the connect times of users. This may prove useful.
Thursday, 10 June 2010
Vendor Lock-In
Here is an interesting blog entry on vendor lock-in.
It lists three types of vendor lock-ins each based on some component of the application: platform, data or tools.
Postgresql Info Website
I just discovered this postgresql info website: http://www.postgresonline.com/. I guess I will learn quite a lot from this website.
I learnt that the new version of postgres is nearly out, since the version beta 2 is out. It should not be long before the 9.0 comes out.
It might also be good to follow: http://www.planetpostgresql.org/.
Thursday, 20 May 2010
Quo Vadis with Software Patent
After I read this news, I had to sit: German High court ruled in favor of software patents.. Unfortunately, this is not an April joke. However, the strange thing is that it does seem like there is already a patent for the technology provided, and that even if it should be obvious that the technology described in the patent existed already at the time of the patent submission.
Privacy on Facebook
Thanks to a friend, I heard about the site: http://www.reclaimprivacy.org. It contains certain useful information on privacy settings onf Facebook. For instance, there is an interesting page on the privacy on facebook (hosted by the New York Times).
In order to check your own privacy on Facebook, you can follow the instructions on the website:
This website provides an independent and open tool for scanning your Facebook privacy settings. The source code and its development will always remain open and transparent.
Note: we are still working on privacy scans for your photos and status updates. The tool does not check these yet, so stay tuned for updates!
- 1. Drag this link to your web browser bookmarks bar: Scan for Privacy
- 2. Go to your Facebook privacy settings and then click that bookmark once you are on Facebook.
- 3. You will see a series of privacy scans that inspect your privacy settings and warn you about settings that might be unexpectedly public.
- 4. Follow us on Facebook to hear about the latest updates.
Monday, 10 May 2010
New Advances in Neural Networks
There is a great google talk about recent advances in pattern recognition in Neural Network. It is given by Goeff Hinton. The title of the talk is Recent Developments in Deep Learning.
Thursday, 6 May 2010
AXIOM - an Apache Stax Parser
I will have to take a look at Axiom which provides a Stax implementation to access XML info sets. It was developed for Axis 2. But it can be used independantly.
Apache Tika - Content and Metadata Extraction in Java
Apache Tika is an useful tool to extract text and metadata from a number of formats.
For example, you have a document pdf, doc,... on the web from which you wish to extract some part. Then you can use tika to extract some part. For this you can use tika:
curl http:urltodoc/.../document.pdf | java -jar tika-app/target/tika-app-0.7.jar --textproduces the text of the document. Other options exist to return an html, an xhtml or only the metadata of the document.
Maven Integration
As for other maven projects, you can specify the dependency in the pom. Note however, that depending on your needs, you might want to specify one of these ( mostly quoted from this page):
- tika-core/target/tika-core-0.7.jar Tika core library. Contains the core interfaces and classes of Tika, but none of the parser implementations. Depends only on Java 5.
- tika-parsers/target/tika-parsers-0.7.jar Tika parsers. Collection of classes that implement the Tika Parser interface based on various external parser libraries.
- tika-app/target/tika-app-0.7.jar Tika application. Combines the above libraries and all the external parser libraries into a single runnable jar with a GUI and a command line interface.
- tika-bundle/target/tika-bundle-0.7.jar Tika bundle. An OSGi bundle that includes everything you need to use all Tika functionality in an OSGi environment.
<dependency>If you want to use Tika to parse documents (instead of simply detecting document types, etc.), you'll want to depend on tika-parsers instead:
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
<version>0.7</version>
</dependency>
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-parsers</artifactId>
<version>0.7</version>
</dependency>
Wednesday, 5 May 2010
IBM FileNet P8 Platform
Disclaimer: This entry is not complete and will be probably be finished later, since some information needs to be checked. The goal is to have a short summary of the documentation I found.
The IBM FileNet P8 Platform is a platform providing enterprise content management. Documentation can be found on the IBM website at this place. A FileNet P8 System Overview can be found there. The source of most of the information for this entry comes from this document.
- content management
- business objects
- Lifecycles
- Properties
- Events and subscription
- classification
- entry templates
- publishing
- content storage
- content caching
- import and export
- search
- versioning
- process management
- extern application integration
- form management
- record Management (Email management)
- system management
- application development and deployment
- scalability
- high availability
- disaster recovery
- accessability
- security
- internationalization (i18n)
FileNet uses XML and Java2 Platform, Enterprise Edition (J2EE), as well as mainly the following protocols: Lightweight Direct Access Protocol (LDAP), Hypertext Transport Protocol (HTTP), and SOAP.
Content Management
Business Objects
Lifecycles
Properties
Events and subscription
The platform provides an event framework so as to push to subscribers the given event of the system.
Classification
The FileNet platform provides the infrastructure for different kind of classification of the resources. This classification can either be performed manually but also automatically using specific tools.
Entry Templates
Entry templates provides means of creating objects in a more uniform manner.
Publishing
The platform also provides means of publishing the content stored.
Content Storage
Content Caching
Import and Export
Search
Versioning
The FileNet application provides the tools to perform a versioning of the resource stored in the system.
Process Management
Extern Application Integration
The platform can be integrated in other existing applications such as: Microsoft Office and SAP R/3 and Sharepoint.
Form Management
The documentation of FileNet says that the application provides powerful form creation and management tools.
Record Management (Email management)
System management
Application Development and Deployment
Scalability
One interesting aspect of the FileNet P8 Platform is that it seems to be designed considering scalability issues and techniques. It provides for diverse components horizontal scalability solutions (like computer farms) or vertically (i.e multiple instances of an application can be run in parallel.
Accessability
Accessability is an issuse for enterprise software in order to make sure that every one can use the software. The software is tested according to the Section 508 Compliance based on Electronic and Information Technology Accessibility Standards, published by the U.S. Access Board on December 21, 2000, at 36 CFR Part 1194.. This includes for example key traversal and access.
Architecture
The preceding picture shows the architecture of FileNet, it is taken from the document cited earlier. In addition to this overall picture it should be noted that FileNet provides both a Java and .Net API, although the java API seems to be the one providing the most functionality.
Content Engine
The content engine is the component taking care of the management of the content. It provides all the necessary functionalities, for example secure access, caching, indexing (also full text), search, classification, versioning, life cycles....
The access is either provides through a Java or .Net API or using the Content Engine Web Services. A particular mode when using Java is to use the EJB Means of transport.
Process Engine
The process engine provides a number of components.
- Process Analyzer (which is a OLAP component)
- Process Simulator to test scenarios
- Business Process Framework
Application Engine
Workspace XT - The Graphical Interface
Rendition Engine
Rendition Engine can be used to convert documents to various formats, for example the usual Office formats (Word, Excel, PowerPoint) as well as to PDF or HTML. Multiple Rendition Engines can also be used in order to scale the document conversion process.
Administrative Components
The platform provides a number of adminstrative components: the dashboard, the system usage reporter, the system monitor
Tuesday, 4 May 2010
UIMA - Unstructured Information Management Architecture
Disclaimer: This entry is not complete and will be finished later, since some information needs to be checked.
The UIMA (Unstructured Information Management Architecture) is a project which was first created by IBM, but which is now one of the top-level project of the Apache Software Foundation. It provides an architecture to annotate a unstructured information with the help of a set of annotators and analysis engines which can be combined and aggregated.
In the following sections, I will introduce the main elements which allow the understanding of the UIMA infrastructure.
CAS - Common Analysis Structure
The main structure in the UIMA architecture is the CAS (aka. Common Analysis Structure). Note that I had some difficulties finding what it means, but I finally found it in the glossary, which should be read at first because I even in the overview there was no explanation as to what a CAS is.
A CAS is the structure manipulated by the annotators and annotation engines.
Analysis Engines
The UIMA architecture provides the idea of analysis engines which take a CAS View (i.e some annotation structure representing a view of the data) and return a .
Annotators
The glossary of the UIMA documentation defines annotators as:
A software component that implements the UIMA annotator interface. Annotators are implemented to produce and record annotations over regions of an artifact (e.g., text document, audio, and video).They represent the starting point for the analysis engine.
Indexing
One of the main interest of the UIMA architecture is that it provides a standard interface to define the indexing of the CAS and their views. However, I still need to clear things up here.
PEAR
A PEAR is an archive file packaging the code, descriptor files and other resources required to install and run a UIMA component in another environments. The UIMA SDK provides tools to create such PEAR. Note that the PEAR acronym is not defined in the documentation either.