Book Review: The Elements of Computing Systems

I do not fear computers. I fear the lack of them. – Isaac Asimov Introduction Computer programming is a passionate hobby for me from my school days. But I ended up taking a degree in electrical engineering. Almost everything I know about computing is self learnt. This is true for a lot of programmers out […]

October 2, 2016 | Posted in Programming | No Comments »

How to Improve Your Programming Skills

Talk is cheap. Show me the code – Linus Torvalds Introduction I have been programming professionally for over 16 years. My first language was Java 1.1 and these days I work primarily with Java 7 or Java 8. One of the interesting side effects of a being a programmer is that you are learning new […]

October 17, 2015 | Posted in Programming | 2 Comments »

Small basic language tutorial – programming is fun!

Introduction It was probably in 1989 that I got a chance to work with computers. Our school had one of those machines (don’t remember what it was!) which came with pre-installed BASIC interpreter. Two things stand out in my mind – it had a color display and I could program games in it! From the […]

July 28, 2011 | Posted in Programming | 1 Comment »

Configuring Apache in front of JBoss Application Server Using mod_jk

Introduction Apache HTTP server is a highly reliable and proven open source/free web server. It is under development for over 15 years and is used extensively to host web sites. Since Apache is very popular and the source code is available, security experts are always looking for any vulnerability. This makes it one of the […]

April 19, 2011 | Posted in Programming | 5 Comments »

How to write a software requirements specification (SRS) document?

Introduction Software Requirement Specification (SRS) document usually contains a software vendor’s understanding of a customer’s software requirements. This document ensures that the software vendor and the customer are in agreement as to the features required in the software system being built. SRS is created after the initial requirement elicitation phase in which Software vendor interacts […]

April 7, 2011 | Posted in Programming | 9 Comments »

Using Subversion on Mac OS X for version control

Introduction For any type of software product development, version control is essential. This is true even when there is only one software developer working on the project (as in many of the iPhone/Android projects). Having a version control has the following advantages, An efficient incremental backup – A version control system only stores changes between […]

April 2, 2011 | Posted in Programming | 1 Comment »

JBoss application server production settings and performance tuning

Introduction JBoss AS is a Java application server widely used for Web application development, testing and production deployment. The community edition of JBoss is free and open source and is ideal for development and testing. The commercial edition known as JBoss enterprise application platform is the ideal choice for production hosting. However in many intranet […]

October 28, 2010 | Posted in Programming | 3 Comments »

Web application security guidelines and checklist

From the diagram above, it appears that the e-business application is very secure with all the layering and firewalls. But in reality, this is just one aspect of security, specifically network security. If the application itself is vulnerable, the above structure doesn’t give any security to the system. I will explain this with a metaphor. […]

March 25, 2009 | Posted in Programming | No Comments »

Top 10 Web application usability guidelines & checklist

Introduction If you are a Web designer or Web application developer, it is very important to be familiar with Web usability guidelines. Most people put a lot effort in the visual design & code improvements but tend to ignore the usability factor of the Web application. Which is funny since easy implementation of simple usability […]

March 15, 2009 | Posted in Programming | 1 Comment »

J2EE Web Application Performance – Concepts & Overview

Introduction Over the last 7+ years I have worked on over a dozen J2EE based Web applications. The most common and recurring problem across all these projects was the "performance problem". Some of these Web applications once put in production system or in UAT (User Acceptance Testing) displayed poor performance. This caused last minute panic […]

August 25, 2008 | Posted in Programming | No Comments »