Tuesday, June 16, 2009

it's been a year

since I last posted here.
Well, I am working with a new set of technologies now. My favorite topic of work these days is enterprise search. Things like the Google Search Appliance (GSA), Google mini, Google Desktop Search, Microsoft Search Server and Microsoft FAST.
You know, search can be a really simple and effective knowledge management tool? In this economy, people are losing jobs and there is so much turnover that things are getting lost.
also, there is more pressure on people to be more productive as employers are trying to get by with less.
This is where enterprise search can really help locate the information spread in variety of sources all around!

Wednesday, May 21, 2008

Merb Sherb for Newbies | Part I

Just when I thought I had gotten a good enough handle on Rails, there comes Merb. Well, lets give it a spin, I thought. People I had spoken to (like my friend Peento at mdialog.com or Jarrod at Organic) seemed to think it was great, better than Rails, lighter than Rails etc etc.
So, I decided to give it a spin. First a couple of things:
  • I wont be able to post everything I did in this post for the very simple reason I am not done
  • I also intend this as a tutorial for newbies, who may be struggling with it (just as I did). Well, call me stupid :-) or slow - your pick. If you like this tutorial, please let me know
So, to start off with, hit the site http://merbivore.com .  This is the home page of the Merb framework. A good starting could have been http://wiki.merbivore.com. But it is kinda well, work in progress. however look at the tutorials link. The best tutorial that has ben kept upto date with the frequent changes in the code base is SLAPP
I indeed spent a lot of time going over old articles and tutorials that did not match the current state of merb.

Installation
Pre-requisites: Have Ruby and gem installed - which hopefully you do. Also, have a database installed. I like MySQL, and that is what is going to be used here.

Step 1: Install merb. You can do that using this command line:
$ sudo gem install merb --include-dependencies
This should install Merb. NOTE: As of writing the tutorial, Merb was on version 0.9.3. Things could change fast in the next major release and this tutorial could be useless (unless I update it). 
Now, there are a couple of steps that you should also perform:
$ sudo gem sources -a http://merbivore.com
What this does is add merbivore.com to the list of place gem looks for when searching for updates to gems. Merb is a fast moving project, with lots of changes going in frequently. So,  you may want to do this frequently as well:
$ sudo gem install merb activerecord merb_activerecord merb_helpers rspec merb_rspec
This will make sure the gems required for Merb are installed. Note that Merb supports three different ORM tools. However, I am familiar with ActiveRecord due to my Rails background, and that is what I am making sure in installed.
At this point, you should have Merb installed. 

Step 2: Creating a Skeleton App
This is really simple and close to how you would do it in rails:
$ merb-gen app Helloworld
So there! merb-gen is a generator which does several useful things. Think of it as rails and script/generate in Rails. Now you should a bunch of directories inside the directory HelloWorld. Take a look, poke around. You will see some differences from Rails. The ones I noticed immediately were around lack of model information. No database.yml, no model directory, or migrations stuff. I didn't know whether to be happy or sad. But that we will discuss in the next part when I take the generated app and try and configure it.

Arch with a Mac(h)| Enterprise Architecture and Mac's

I recently turned independant. Formed my own company called Agiliant Enterprises. I am currently working for a large mining company called Vale Inco in Toronto. I am part of the tenterprise architecture team doing interesting stuff. One of the comments the director of the group had when he saw my Macbook Pro -
You are the first Enterprise Architect I have seen with a Mac.
I took it as a compliment - a personal preference had turned into a differentiator.
However, let me give a you preview of life with a Mac. I have been using MS operating systems for a long long time. I started with DOS 1.1 and followed it closely. However like most windows user, I was frustrated with the stability and virus issues. Since OS X, I noticed the core Unix (Mac OS is based on BSD) underneath the pretty GUI. I have done most of my development work on Unix systems, with Solaris being my favourite Unix flavour. I was hooked. The thought that I could open up terminals and do things like gawk, grep, lexx, yacc, top..... you get the point.
So how do you use the tools that need Win to run? Things like ErWin database modeling, Rational Rose modeling etc? Simple - Use Parallels. It is an amazing piece of software - Viva La Virtualization. It evens runs faster and better than Windows by itself. No more crashing.

For some other things, I needed to get alternatives which also work great. For Visio, I installed ConceptDraw which is a great program. I also use Ms Office products on Mac.
Plus, as a free lancer, I am not tied to corporate standards for email. I us my gmail and yahoo accounts with Mac Mail application. and boy is it amazing....

he real reason for getting onto Mac - Rails team uses mac. I was hooked... here is a group of serious programmers doling out kick ass software on a Mac. I could too...

A nice side benefit - My documents look awesome impressing almost all clients ...
so Mac it is for a while....

ps: There are still things I dont like about MAc - too locked down.. but I am not complaining just yet...

Sunday, March 26, 2006

I have been trying to get new stuff in Toronto. I cameacross this excellent resource for getting insurance quotes. Unbiased online car insurance quotes are offered by this site. Check it out.

Wednesday, April 06, 2005

Personal Lifestyle Management solutions to urban middle and upper class households

I had written this as a business plan. However, never found time or energy to take it forward. Here it goes though...
================================================================
1. Introduction
We would like to leverage the mobile technology platform to provide “Personal Lifestyle Management” solutions to urban middle and upper class households. The specific product categories we would like to introduce to the market are:
1. Vehicle Security System: The product can be fitted in any vehicle and will allow the owner to remotely control actions of the vehicle. It will also enable the owner to get location information of the vehicle and trigger certain actions. The owner shall be able to perform such actions easily using mobile phone. This product is aimed at the C and D segment of cars.

2. Home Automation System: The product suite will consist of devices that will allow home devices/gadgets to be controlled from a single place, and/or remotely even through a mobile phone. Devices like a/c, lighting, locks, ovens suit themselves to be operated remotely.

2. Target Segment
Before embarking on a detailed study of the business idea and its feasibility, it is important to understand the market segment for the product offerings. Both products are aimed at the urban middle and upper class households with average monthly incomes not less than Rs. 100,000. This segment is increasingly witnessing the following changes:a. Higher degree of mobility and less time available for personal lifestyle management: The households under consideration are being increasingly characterized with a very high degree of local, inter city and inter country travel. Hence, people in this segment are feeling an acute need for being able to manage things on the go. This is clearly borne out by the spectacular increase in the usage of high-end mobile phones and PDAs in the country. However, while the current devices are able to service the information requirements of the customer, the personal lifestyle requirements like switching on washing machine/ AC or remote car security etc as per requirements remain largely unaddressed.b. Rapid increase in number of double income families: The rapid increase in number of families with both family members working has led to a much larger customer base for products in luxury segment enabling niche businesses like the one being proposed to become viable.c. Changing value system and beliefs of customers: The society is witnessing an exponential increase in consumerism in the urban markets. The worth of an individual is being increasingly being determined by his/ her material possessions. In such a scenario, a very high emphasis is being placed by individuals to showcase their wealth in order to gain respect and admiration of society. Our products have a huge potential in providing the customers with immense emotional benefits of state-of-the-art and contemporariness associations with the product.

3. Market Portfolio Gap
Based on the above analysis, we perceive a clear need gap between the current market offerings (e.g. Autocop car security systems/ Timers in electronic gadgets) and the requirements of the customer. The need gap for each of the products can be articulated as under:
1. Vehicle Security Systema. Based on sound and light alarms hence usability over a narrow range of distance.b. Useful only in prevention of theft. The current systems are ineffective in the retrieval operations.
2. House Automation. Specific devices like TiVO and Televisions have the timer options. Most other products (e.g. Ovens, Geysers, ACs) lack any remote management options.b. Remote Security alarms not possible. A point to be noted in case of House Automation is the rise in the housing sector of accommodations with very high end specifications in cities like Gurgaon and Bangalore (with estimated market price in excess of Rs. 10 Million). These houses can easily absorb an incremental cost of the order of Rs 10,000 and can provide a compelling value proposition for remote house security at a nominal expense.

4. Interesting/ Unique aspects of our plan
1. Unique product categories: The product categories we are planning to enter are essentially untapped markets and hence we do not have to contend with competitive threats associated with penetration in existing markets.
2. Potential for deploying High Entry Barriers: The buyer groups for our products are essentially large builders and manufacturers of premium segment cars. We intend to get into long-term contracts with these entities thus ensuring that threat of a competitive entry is eliminated. In addition, by partnering with these customers in the design phase itself, we intend to gain additional insights into customer requirements thus ensuring vastly superior designs with greater ability to meet customer requirements.
3. Assured cash flows and early break even: Since the plan is essentially based on capturing a large market base through contracts, the viability of the business and cash flows are assured at initial stages itself.

5. Market Size Estimates
1. Vehicle Security System: Based on market research by Murad Ali Baig, a leading auto analyst, the total number of cars in the C and D segment sold in India annually is around 75000. If we are able to capture 10% of the market share in this segment owing to the tie up with car manufacturers, we are looking at a volume of 7.5 K cars annually. At Rs. 10,000 per car, this can amount to an annual sales turnover of Rs. 75 Million. In addition, we may want to take into account sales potential in B segment cars (annual sales of 140,000 units), even a small percentage of which can greatly enhance our overall turnover.
2. House Automation System: Though no comparable products exist in the market, a research study conducted recently placed the number of households with annual income of Rs. 20 Lakhs and above in the 50,000 to 100,000 range. Taking a conservative estimate of 50,000 such households and an adoption rate of 5% in the segment, we estimate 2500 households to try our product giving us an estimated sales turnover of Rs. 25 Million for the product. Additionally, if we include even a fraction of the demand emanating from the Rs. 10 L to Rs 20 L segment, we can expect a healthy revenue stream from this line of business.

Tuesday, April 05, 2005

Unified Access

I wrote this in summer of 2001. It is another of those which I could never find time for. It is interesting to note that even now, not a lot of progress has been made. Pervasive computing was introduced in the past couple years as a hot topic. A lot of research is going on, but not everything has made way into production just yet...
Any ways, have fun reading this...

Introduction
The web is here to stay. The information super highway is slowly becoming all pervasive in our lives. However the mechanisms used to access the highway have related remained primitive. This is because the focus uptil now was on getting stuff onto the web. It was more of proving that the web is a very powerful medium. This aim has been achieved. Now it is time to better the things peripheral to the actual web so as to make the entire usage experience more satisfying.
Current Situation
At this point in time, the mechanisms for interacting with the web are pretty limited. They are limited to using the mouse and keyboard for navigating through the web. The display mechanism is primarily through a monitor like interface. With advancement of technology, these interface mechnims will change.
The Future
In my opinion, the future will be dominated by smoother man machine interfaces and pervasive computing. No longer will people be able to distinguish if they are communicating with a person or a machine. One of the important technologies that may be used to achieve this aim will be Speech recognition. Another important thing will be context recognition.
Web browsing shall be no exception to this. The way peope interact with the information on the web shall also be influenced. Thus, the way web sites are constructed and organized shall undergo a lot of change. In addition to this, media used to access the web sall also undergo changes. Where te PC was the only interface to the web, now all sort of devices shall become web aware. Soon, we might see neclaces that beep on receiving email!!! Taking a more practicall view, all communication mechanisms may be used to access the information superhighway, including the telephone (voice browsing), wireless devices (voice browsing, data enabled phones), kiosks, car GPS sysems and other undreamt of devices.

Monday, April 04, 2005

Doing Laundry!

So I have been thinking baout this - why should people be forced to buy a washer and a dryer seperately? The whole frikkin' cabinet is occupied? Why dont more manufacturers make more of combined washer and dryers? I think it is quite simple to retrofit a washer and make it a washer and dryer (and my wife wouldnt nag me about moving clothes from the washer to the dryer)
Here is what one needs:
1. A few switches and a timer dial
2. A humidity detector (I have a circuit for an expensive one around 5$)
3. A heater with a fan
4. Odds and ends like wires, rubber tubing etc

Open the washer, splice the water feed pipe and make it a dual input single output. One input is water, other input comes from the heater fan. Put a switch to toggle between 'Wash' and 'Dry' mode. In the water output, connect a humidity detector. As soon as humidity goes below 90%, add some electronics to switch off the dryer. You can also add a timer to switch off the dryer.
This would work very well with the front loading washing machines.

Saturday, April 02, 2005

Welcome to Open Source Ideas

Welcome Friends!
We are now familiar with the Open Source 'Revolution', if I may call it that. It has taken the software world by surprise, in many ways, and demonstrated the powerof collective intellect and intent.
As I was musing on it one day, I thought about what about ideas were open sourced, just like piece of code? Many people have ideas, but not necessarily time or resources or skills to execute them...
So here is a home for people who want to open source their ideas. Though the forum is free form, I would lke people to focus a little more on software and technology fields, than other things.
This ofcourse would raise the question of Intellectual Property RIghts questions. My take on that is ideas should be released with a license equivalent to the LGPL. See http://www.gnu.org for more on GPL, and LGPL.