Saturday, December 1, 2012

Tools And Services



An (incomplete) list of tools and services that I use, and love to use.

Category = Security ( Windows )
* Microsoft Security Essentials = Microsoft’s free real-time antivirus solution which taps into Microsoft’s threat libraries to detect / prevent attacks.
* SuperAntispyware = A good solution which has helped me on atleast three instances.
* MBAM - Malware Bytes’ Anti Malware = Another solution like  SuperAntiSpyware. I typically use these programs in parallel.

Category = Storage / Backup
* DropBox - the best Sync solution I have come across. DropBox just works.
* Adrive - excellent for storing large amounts of Data. Provides 50 GB of free storage space. 

Category = Developer
* Eclipse IDE - extremely customizable and has a plug-in for almost anything that you can imagine ! Some of the typical use-case scenarios are: For pure Java development, GWT development, BIRT Report development, Android development, Syclo development etc. 
* MS VWD - Microsoft’s free tool set for Web Development.
* Fiddler2 - a tool for capturing HTTP Request/Response Headers, indispensable for web service and/or HTTP development. Other similar products: Firebug extension for Firefox does this ( and much more ). Similarly, Wireshark/Ethereal can be used deep analysis of port traffic. 

Category = Browser
* Google Chrome - the best/quickest browser I have come across. Has a very rapid update cycle which is good from a security perspective. Also comes with a wide array of extensions which can be used to extend the browser functionality. One of my favorite extensions is theSecure Sites extension. This extension attempts to establish a secure connection ( HTTPS, instead HTTP ) with every site that you visit which allows for safer browsing. Also, it was excellent Javascript debugging tools and Firebug Lite as well. 

[ This list will be expanded in due course of time ]

What makes Smartphone ( and development on the same ) so important ?


A few reasons off the top of my head.

1. Mobiles are getting extremely powerful, and more people are looking at ways to replace laptops with them, and / or augment the existing use cases for laptops. The diversity of uses to which mobiles have already been applied are frankly mind-boggling: from being used as satellite controllers to being used as supercomputers ( sort of ) to enabling extremely vivd and engaging augmented reality games / apps . The future holds tremendous possibilities. 

2. As per some studies, more people will access the internet using devices with a form-factor much smaller than traditional computing platforms.

3. App Stores are extremely lucrative, provided you can make a good app. There are literally millions of people who can access the distribution channels, hence can be targeted. Another fact is that App Stores are indexed extremely rapidly by search engines ( Google at a minimum ), leading to decent ‘search’-ability ( not necessarily visibility though ) even without excessive marketing. More marketing muscle behind a solid app is always welcome, but the point is that even without the same, you can hope to write a decently popular app.

4. Several of the companies, today, are yet coming to grips with the upcoming future and need a consistent mobile strategy. Due to the upcoming trend of ‘mobilization’,  they will need people with skills to ‘take them mobile’.

5. The advertising of future will be 1. highly personalized, and 2. hyper-local, which is again commoditized / democratized due to the mobile technology, since mobiles are always with you AND can also capture your location information ( i.e. if you allow them to), enabling permitted apps to provide you with localized, hyper-contextual info ( and ads. ). Advertising is about context, and location is an excellent signal for determining relevance and context….

TRIRIGA Application Platform versus TRIRIGA Applications


For a significant period of time, I had a confusion between the TRIRIGA Application Platform, and TRIRIGA Applications. In addition to my own confusion, I also found that several other people whom I met, were equally confused about the same. The difference between the two is that the Application Platform represents the underlying technology like the Data Modeler, Workflow Builder, GUI Builder.

TRIRIGA Applications, on the other hand refer to the objects created using the Application Platform, like the Workflows themselves, the created Business Objects, GUIs, Queries etc. As a rough rule, all the ‘builders’ form a part of the TRIRIGA Application Platform, while the rest of the elements can be considered to be Applications themselves, which have been created to address specific business needs, like the Real Estate Application, Project Management Application. Also, the TRIRIGA Applications version, by definition, refer to the out of the Box Applications provided.

In certain cases, like the WPM Applications, the difference between the Platform, and the Application is blurred.

A short collection of Tech Blogs and Feeds that I like to visit / read



triDeveloper - Open-Source Extensions and Applications for the TRIRIGA Platform→


Interesting group for Tririga Developers, created by Eric Glass of Serco. It is refreshing to find a group like this, in the vast vacuum of open discussion forums on TRIRIGA despite the decent sized user base.

“This project provides open-source extensions, applications, and useful utilities for the TRIRIGA Application Platform. In addition to providing useful functionality in its own right, the open nature of the various subprojects can be valuable tools for learning how to develop integrations with the TRIRIGA platform.”

Business Process Mix


In general I have come to a realization that every organization needs to have an optimal ‘business process mix’. Firstly, what is a business process ? A business process can be defined as a sequence of elemental steps, which are required to ‘get a task done’. In terms of computer science, a business process is essentially an algorithm, i.e. a well defined sequence of steps which is required to transform an input to a desirable output. 

I believe for that for the ‘de-risking’ of day to day operations of an organization, having well documented business processes is essential. This helps in making the organization less dependent on a particular individual / resource for it’s day to day operations. This helps in increasing employee / management confidence in running a sustainable organization. A sustainable organization is one which is ‘fault-tolerant’, i.e. which has built-in redundancy. This means that the absence of a resource will not overly affect the core operations of the system / organization. A sustainable organization always tries to make itself redundant. It clearly identifies the core-strengths and functions performed by it’s resources, and tries to duplicate / cross-pollinate these functions all throughout the organization.
It seems to me that smaller organizations have a much higher need for documenting business processes, than larger organizations. This is because smaller organizations, by definition, have fewer resources and hence the responsibilities per resource increase. This increase in responsibilities leads to higher risk, per individual resource. This increase calls for a more aggressive business process documentation approach in smaller organizations, than in larger organizations. On the other hand, I have heard that it can take forever to get anything done in larger organizations, due to the highly structured processes. This can also be called as the ‘meeting for a meeting to organize another meeting’ syndrome. In such cases it would seem that it is important for someone at the top ( or the bottom, or at any layer in the hierarchy ), to be able to see through all the layers of management from top-to-bottom, and devise newer / more streamlined business processes. 

Thank You Google - for Google Docs

I just love Google Docs. The primary driving factor, which initially prompted me to use Google Docs was the easy collaboration feature, which has improved over time. Also, it seems to gel well with other Google products as well, which is an added advantage. I have started a flight training course, and after every flight I perform a self-debrief, on what my thoughts were. I began documenting the same via a spreadsheet. Within my ‘paper’ notes, I had drawn a simple line illustration of the pre-flight inspections. I imagined it would not be an easy task to obtain the same in a spreadsheet, out-of-the-box, i.e. without using another tool to do the same. However, I just thought of checking if I can do the same in Google Docs. Imagine my surprise when I discovered, that I can indeed do it, right within Google Docs, without any external program, and with Edit History being accessible as well ! Just wanted to say thanks to Google for making Google Docs.