Skip to main content

Experiments with Alfresco

Why Alfresco, not any other?
I personally find Alfresco has many features already built in that can be used for office automation and collaboration along with content management. Having said that I dont think, Alfresco user interface is one of the greatest to use. However, UI is good enough to carry on the work. I feel, as far the enterprises are concerned, getting the relevant business functionality assumes greater importance.

I am listing some of the features, I find it useful for organization.
- Built in content model, role, aspects, rules are good enough to implement workable solutions
- Well built document management system extended to manage records as well
- Alfresco share, a web application for collaboration is good enough for the kind of collaborations we normally perform in organizations
- Google like search
- Ability to use Google docs as repository (simple enablement in configuration)
- Ability to create access controlled repository
- Ability to expose repository as network drives via FTP, CIFS
- Ability to expose repository via WebDAV
- Ability to interact with Alfresco repository via Microsoft office and Open office editors (via plug-ins)
- Ability to extend the content model to define custom content type
- Ability to define custom role
- Ability to define custom aspects
- Ability to filter content based on aspects
- Ability to apply rules on content during ingestion and other events
- Ability to define simple ad-hoc tasks
- Ability to define complex workflows using rules and spaces
- Ability to incorporate JBPM advanced workflows into Alfresco
- Ability to customize look and feel (themes, changing logo, layouts)
- Ability to extract metadata from the document, scanned documents, TIFF images
- With Spring Surf as development platform, it is possilbe to create web applications and incorporate into Alfresco
- Ability to integrate Alfresco with LDAP server and AD server
- Ability to integrate with CAS
- Ability to integrate with Liferay portal server and Drupal CMS
- Ability to notify over e-mail
- Other stuffs like blog, discussion forum, calendar, dashboards

I started experiments with Alfresco 3.4 community edition and I was not happy with the documentation details. The details were not matching the latest version. I was surprised to find the configuration approaches and even file names were different. This added to the difficulty in finding the information and customizing some of them. This could be because, I am using community edition and expect good support for enterprise edition. My take is, we need to propose enterprise edition, if we are proposing the solutions to the prospects, else we need to make the pain points clear to them.

I did some basic look and feel customization like changing the logo, and defining custom style sheets. These acts appeared fairly simple and straighforward. But, if we need good amount of customization of layout organization, we need to have developers who specialize in YUI, object oriented java script and freemarker templates.

I will talk about other stuffs I did with Alfresco, in the next post ...

Comments

Popular posts from this blog

GCP: GAE - Memcache best practices

Memcache is a distributed in-memory data cache in front of or in place of robust persistent storage for some tasks. GAE includes a memory cache service for this purpose. Best practices for using memcache: 1. Handling memcache API failures gracefully; Do not expose errors to the end users 2. Use batching capability of the API when possible 3. Distribute load across your memcache keyspace Use sharding and aggregating for improving performance efficiency. Use TTL (expiration policy) to make sure the memcache does not fill-up indefinitely Use getIdentifiable() and putIfUntouched() for managing the values that may get affected by concurrent updates Use batching (getMulti ("comments", "commented_by") ) to fetch related values together instead of one by one Use graceful error handling

Innate and Non-innate learning

I am reading a book called 'What did you ask at school today?' by Kamala V Mukunda. Would like to share some learning. The book is intended for teachers as primary audience, nevertheless, good for any adult to gain deeper understanding on learning process. She talks about brain structure, innate and non-innate learning aspects and talks about synergy needed between the two in the first two chapters. Firstly, innate learning is something that would not need explicit training. For example, kids learning the language. They wont feel strained or stressed during this kind of learning, just because they enjoy the process, where as non-innate learning focuses more on class room learning. It is accepted that learning through playful means will have more impact on kids than the impact through the structured learning. A physcologist, David Geary puts it this way - while learning through playful means has more impact, children should be encouraged to learn the skills through structure...

Essential GCP services for a new age application

Identity and resource management IAM  Identity aware proxy Resource Manager Stackdriver Monitoring Stackdriver Monitoring: Infrastructure and application monitoring Stackdriver Logging: Centralized logging Stackdriver Error Reporting: Application error reporting Stackdriver Trace: Application performance insights (latency) Stackdriver Debugger: Live production debugging Development management Cloud Deployment Manager: Templated Infrastructure deployment Cloud Console: Web based management console Cloud shell: Browser based terminal/CLI Development tools Cloud SDK: CLI for GCP Container registry: Private container registry Container builder: Build/Package container artifacts Cloud source repository: Hosted private git repository Database services Cloud SQL: Managed MySQL and PostgreSQL Cloud BigTable: HBase compatible non-relational DB Cloud Datastore: Horizontally scalable non-relational (ACID) Cloud Spanner: Horizontally scalable relation...