Monday, March 20, 2006

Java Rules The Enterprise

Java has rocked the world of Enterprise Software Development. Almost all major Enterprise Software is being developed using Java based technologies, at least when it comes to the server side development. BEA, SAP, IBM, Oracle ... and the list goes on.

But what difference does it make to an end user? The end user who uses the system at the end of the day to make Account Entries or manage inventory does not care and does not know the difference between whether he is using a system developed using Java or PHP or C++, especially with the new fast CPUs. What does make a difference is whether the software is well designed and whether all different operations of the company are well-integrated or not.

SAP has been providing a robust, integrated software solution to enterprises to manage their everyday tasks. Their R3 software integrates financial functions, inventory management, accounts, sales and distribution. It also allows additions to the system with customized programming. They have the most mature software in the enterprise software market. Even they jumped on the Java bandwagon.

So why is it that companies are moving to Java based technologies? Why has PHP not been able to penetrate into the enterprise as well? And what was wrong with the old way of doing things with C and C++?

To understand this you first have to understand the requirements of an enterprise, exactly why does it need such over-priced software.

I will continue this in another post ...

Automated Computer Inventory

Recently I came across an open-source project that automatically creates and maintains a very detailed inventory of ALL the computers on your network. The project is called OCS Inventory. Its website states that it "... is an application designed to help a network or system administrator keep track of the computer configuration and software installed on the network..." Actually its does much more than that.

It allows the admin to retrieve any registry key from the client computer, a highly detailed list of hardware installed (even details of the attached devices like monitors), a web interface to search the inventory etc.

There have been some problems that I have been trying to tackle for a long time on my 100 PC network. Number 1 on the list was to disable all USBs so that our propriety data could not be copied onto USB flash disks and carried out of the office by employees; or employees do not bring in and execute software on their PCs (associated problems are with virus contaminated software) which might cause havoc on my network. Using the inventory I was able to clearly identify which PCs on the network had their USBs still active. I also found 2 PCs on my network using ancient 10 MBps network cards.

It has helped me map out an upgrade plan for both software and hardware. I would recommend any network admin to give it a try. Setup is very simple, the server runs on Windows, Linux, Mac OS, UNIX etc.