Sapien Blogs

Know the Unknown

Wednesday Oct 17, 2012

HashMap vs ConcurrentHashMap vs Synchronized HashMap vs Hashtable

Discuss the differences between HashMap, ConcurrentHashMap, Synchronized HashMap, and Hashtable

[Read More]

Java Performance: Collections

Java collections offer various general-purpose  data structures. However, it is important to understand which collection can be used under what circumstances and their differences, considering the speed, concurrency, memory footprint, data size, throughput, etc. This article discusses various List, Map and Set collections, their concurrent versions, and libraries for general, scientific and big data sets.
[Read More]

Tuesday Oct 16, 2012

Linked Data, Social Graph and RDF

This digest aggregates various readings on Linked Data and Semantic Web topic and my writings on the same
[Read More]

Monday Oct 15, 2012

Java Performance: Synchronization and Parallel Processing

This article discusses various aspects of synchronization and its effect on scalability and parallel processing. This also suggests some strategies to deal with synchronization in general. [Read More]

Sunday Oct 07, 2012

Cloud Scalability & Performance- Blog Digest

Digest on blogs about performance and scalability and the personalities driving the thoughts

[Read More]

Saturday Oct 06, 2012

No servlet class has been specified for servlet template & metadata-complete

Discuss the metadata-complete=true attribute in servlet 2.5 and its implication on server startup time. See the web.xml configuration where this attribute can cause "No servlet class has been specified for servlet template" error in Tomcat.

[Read More]

Friday Oct 05, 2012

Scalability & Performance

Scalability and performance are conceptually different but often used interchangeably and wrongly. This article looks into the difference of Scalability and Performance and various aspects of the two

[Read More]

Wednesday Oct 03, 2012

Bayes Classifier and Spam Filtering

Bayes classifier is one of the simple and very effective text classifier. In this article I will exaplain the mathematics behind the Naive Bayes Classifier and how that can be used to filter spam messages from a stream of good abd spam messages. It also discusses the some of the practical considerations in using this classifier in real word spam email filtering and some the assumptions and tradeoffs in real implementations

[Read More]

Sunday Sep 30, 2012

Unable to marshall due to missing @XmlRootElement annotation

corelation coefficient and covarience are used to estimate if changes in two variables are related. This artical explains the theory behind correlation coefficient and derives its mathematical formula.

[Read More]

Reusing JDBC PreparedStatement

Is PreparedStatement thread safe? PreparedStatement is known for its precompilation over regular Statement. To make use of this precompilation, it should be possible to reuse PreparedStatement, otherwise, what would be the difference between Statement and PreparedStatement?

[Read More]

Polymorphism and Double Dispatch

In a statically bound language like Java, compile time type-binding may give unexpected results where polymorphism is expected . Double dispatch is used in such cases. Typical example is visitor pattern.This articale explaims the subtle difference in compile time type binding, polymorphism and double dispatch

[Read More]

Correlation Coefficient

Correlation coefficient is one of the proven methods to quickly estimate the covariance of two variables. This article discusses the mathematical derivation of correlation coefficient and some of the practical considerations in computing it.

[Read More]