I am sure that the way I have configured my mail client or tablet’s home screen is different from yours. The reason we love modern-day apps and operating systems is because they let us configure the product to match our specific needs. Configuration is not a new concept – even old radio transformers allowed listeners to tune into the station of their choice without having to open any screws. Configurability isn’t a feature; its a vision. And it doesn’t come free; too much of it will also backfire. There are at least 3 compelling reasons why product managers need to plan configurability around every feature:

1. Customization

No product is designed for a single customer. And it would be rare that 2 customers had similar business processes. To adapt to the difference, without having to create customer-specific code bases, an application needs to be customizable. Gone are the days when customers would 200% of license fees on getting the product customized to match their business needs. In today’s scenario, solution providers need to cover the cost of customiztion through one-time implementation fees.

2. Rapid Implementation

Besides, customers are not looking at multi-year transformation projects with huge budgets. Project managers need to create compelling business cases and promise hard dollar recovery through the proposed solution. Every project is like a turn-key project and a vendor has no chance unless they can promise rapid implementaiton and unlock the RoI in stipulated time. View full article »

I’ve discussed web frameworks before and how they can help in rapid development. In this post, I’m presenting some general guidelines around selecting the best web development framework, based on your requirements, in the the preferred language: Java, Ruby, PHP, Python. The main criterion is evaluating the non-functional requirements it provides out-of-thebox, which can greatly aid rapid development.

What to look at in a framework?

You should know how the design considerations mentioned below are addressed by the frameworks you are evaluating. Depending on the business needs, some might be redundant, but tend to provide a holistic view of the framework’s capability.

  • Scaffolding code: What is the ETD to get a web-form with basic CRUD running?
  • Does it offer the flexibility to choose between convention & configuration?
  • How is input data validation achieved?
  • Is the View layer simplified with a template engine?
  • Does it employ object-oriented design patterns? and demand OOP?
  • Does it follow MVC (Model-View-Controller) pattern? How is routing (URL management) achieved?
  • What ORM tools (object relation mapper) does it support?
  • Does it have built-in support for multi-tenancy?
  • Does it support I18n & L10n out-of-the-box? (Internationalization & Localization)
  • How is Authentication & Authorization managed: inbuilt, using a module or plug-in?
  • Does it allow rapid development/deployment in line with Agile principles?
  • Are there cases of proven success for enterprise class applications?
  • What is the performance benchmark vis-a-vis other frameworks?
  • Is there in-built support/plugins for caching, unit & scenario testing?
  • Is it easy to debug applications, and if possible with in-built support through an IDE?
  • Associated costs & TCO: to build developer & infrastructure expertise, hosting, licensing, support?
  • Does the licensing permit free use for all purposes and the right to modify code as necessary?
  • Does it have a clear product roadmap, sufficient documentation & an active community?

The decision

Don’t get carried away by flashy white-papers, classy developer events or generalized case studies. Your application is going to be different (a reason why you’re building that product in the first place) and while it is good to use guidelines, you need to see what fits your requirement best. Take a weighted approach to evaluating a framework based on the evaluation criteria above and make sure you have enough reason to be convinced.

This post is part of the SaaS Application Development series, extracted from my final dissertation submission at BITS, Pilani that closely looked at rapid-development of SaaS-based applications.

After posting the itinerary for Bali and our experience, I have received a lot of emails with questions – primarily – around the budget, airlines, hotels, car rentals and general tips. I’ve put them as a FAQ below; hope this helps fellow travelers.

What was your budget?

Honestly, we were traveling on budget. We had planned about Rs.70,000 per head and wanted to make the most out of it. We did.

Is there a split?

Approximate split across categories

This is naturally going to differ, but here is an idea.

  • Airfare – 40%
  • Visa & entrance fees – 10%
  • Stay – 15%
  • Local transport – 15%
  • Shopping – 10%
  • Meals – 10%

Good idea for my first overseas vacation?

Absolutely! There is always a first time for everything. Just plan well. Here are 10 great tips for international travel.

Is February a good time?

Most of the forums said Feb wasn’t a great time to be in Bali, but I think that’s more applicable to surfers.

Transit Bangkok or Singapore?

While Bangkok was an option View full article »

Every Product Manager is a ninja when it comes to dealing with functional requirements. But it doesn’t end there in the B2B space. You may not be a technical product manager, but you still need to understand and address some non-functional requirements without which your product isn’t ready to sell – especially if its transactional in nature, holds sensitive data or requires integration with the client’s IT eco-system. By ‘address’, I don’t mean you need to plan these as features or get involved in the R&D – it’s just about getting answers to what has been done in this regard.

What makes non-functional requirements so important?

Good question! If your product touches any of the 3 aspects mentioned above, the client’s decision to buy the product is incomplete without involvement of the IT team. You might have the CXO’s approval, but even if a single IT executive deems your product unfit for the IT security standards the client is committed to – the sale is likely to fold. You need to make a compelling offer, not just to the functional decision makers, but also to these non-functional evaluators whose buying is equally important. And there is a fair reason to it. Imagine, if you’ve worked hard to keep a floor clean, and someone wants to walk in with their own shoes – no matter how clean they claim to be, would you let them in? IT doesn’t want to risk their network either. I really don’t see this coming in the way of B2C sales – a LinkedIn premium membership or even Online Banking for that matter.

What needs to be taken care of?

Here at at-least 7 areas for which you will need clear answers.

  1. Software requirements: With SaaS, customers have fallen in love with apps that railed on web browsers. But IT remains unsatisfied with the ‘my app runs in a browser’ response. They need to understand whether it runs ‘best’ on a particular browser or a specific version. As a product manager, you need to know the share of each browser version and build support accordingly. Dependency on components (e.g. FLASH) can cause the deal to hit a road-block.
  2. Data Security: Customers always question the security of their data while using hosted services. And this becomes all the more critical when you’re selling a multi-tenant application. If you’re able to help them get over the SaaS phobia, the next questions could be around data security & access control, data center certifications, third-party quality assurance reports, etc. Apart from this, customers solicit information about user authentication and authorization capabilities, user management from the application console and integration with existing user management solutions like LDAP. Don’t be surprised if a client demands a sandbox for a hands-on verification.
  3. Flexible application stack: Customers may explicitly specify software requirements such as the use of specific database engines or application servers. In some cases, they are even willing to pick the tab for additional license fees to ensure View full article »

Bali – Vacations Notes & Experience

Bali had for long been on our minds as a honeymoon destination and we finally managed to work out a decent itinerary after much planning.

Vacation Notes

Day 1: Arrival & Water sports

Villa on Legian St

We landed at 00:00 and we a bit worried about getting to the Guest Villas in Kuta. But from the moment we touched down, Bali seemed very friendly and safe. It was only until we realized that our villa was a 4 min walk to the bustling Legian street which had everything upto Indian restaurants. Since water sports are subject to weather conditions, I had managed to check the tide schedule and confirmed it was a good day. Our driver drove us – free of cost – to his preferred vendor where we bargained our to the possible extent! Scuba diving & Jet Ski were really worth it. On the way back, we exchanged currency at the bank which had a pretty reasonable rate. I suggest don’t fall prey to the shady money exchanger shops that showcase a rate they don’t offer. Evening was for us to relax.

Day 2: Packed & headed north

Singaraja Beach

Singaraja Beach

Considering places of our interest were all around the island, and travelling to the north takes a good 3-4 hours, we checked-out without our luggage in the car. We intentionally skipped the early morning Mt Ubud tour, and instead caught a glimpse of it en route. A lot of temples, cat-pooh-chino tasting sessions and local food happened on the way. We booked a villa at the Mumbul Guest House in Lovina.

Day 3: No dolphin tour, headed back

Black sand beach

Black sand beach

We had booked a Dolphin tour early morning. At 5:00am, the boat captain informed us of bad weather and scared the s#!t out of us. We went back to bed. Post breakfast, we started off with the black sand beaches of Lovina beach View full article »

Bali – 4N/5D trip itinerary

Planning a trip there was quite a experience as I’ve already detailed here. But after much research, we finally had a plan for Bali and I want to share the detailed itinerary so you don’t have to go through the drill. We were traveling on budget – not the usual honeymoon splurge – so using the services of an agent was not going to help. I still checked with a couple and on hearing my budget (more on this here), they said I should look at another place as the airfares itself very quite expensive for Bali. But I was determined to work something out.

Day 1:Water sports

  • Marine sport activities at Tanjung Benoa

Day 2: Head North (East route)

Coffee tasting

Coffee tasting

  • Goa Gajah Temple
  • Ubud art village (drive-by)
  • Monkey Forest (skip)
  • Coffee plantation & tasting
  • Tegalalang rice terrace (drive-by)
  • Kintamani: View of Mt.Batur & Batur lake
  • Singaraja beach (sunset)

Day 3: Back to Kuta (West route)

  • Pura Taman Ayun temple

    Pura Taman Ayun temple

    Dolphin tour (missed due to bad weather)

  • Gitgit Water Fall View full article »

In the last 2 posts, I detailed the market needs, and the itinerary planner user story. Continuing with more features around maintaining content, creating a transactional marketplace for revenue generation, and finally some integration ideas to piggy-back on the success of others.

Content

  • Search public itineraries based on destination
  • System should suggest ‘hot’ holiday options – not in a salesy way – but genuine, recent itineraries that are verified for feasibility, cost estimate, etc.
  • Suggestions/searches should be based searches based on demographic information: age, gender, marital status, profession, origin city
  • Rate, review itineraries
  • Maintain places with linked information: map, entrance fees, best-time-of-day, visit duration
  • Maintain cities, categories, modes of transport, currencies, exchange rates
  • When creating my itinerary, similar itineraries from other users should be suggested – verified, promoted, voted itineraries on top

Marketplace

  • Directly contact agents on public itineraries
  • Agents can view & receive alerts for shared itineraries in their service area
  • Agents can submit bids that be reviewed compared side-by-side with included places/meals & merge itineraries or individual items [versioning]
  • Collaborate/negotiate with agents on a bid, and finally award
  • Allow agents to attach confirmations, visas, etc. – that remain private even when the itinerary is shared

Integration

  • Accommodation: get best prices from top 3 websites for the selected date location
  • Transport: get best prices to the destination, with “flexible dates” option, and suggest best transits worth a stop-over
  • Rentals: for road journeys, suggest available rental options
  • Traffic: use traffic information to estimate journey times between places
  • Fares: get entrance fees and estimated taxi fares
  • City cards: analyze entrance fees and suggest savings from city cards (e.g. iVenture card)

Strengths:

  • Solves a real problem for backpackers
  • Integration & market-place: lot of stickiness for a content + transaction website

Challenges:

  • It might be a while before there is enough content – itineraries
  • Ensuring simple design to handle required interactivity on all browser

Being a product manager is about not being content with what is around. I looked all around the place for a complete vacation planner app and finally created a wish list of what such an app would constitute. Continuing from the previous post on the topic, here is a high-level user story for each of my needs:

Itinerary Planner

  • Start with a destination of my choice and add places to it [content]
  • Each place can be placed on an interactive itinerary map
  • Add category, description, images, comments, expenses (entrance fees, meals), attachments (bookings, etc.), hyperlinks, mark them as optional
  • View ratings [integration]
  • Auto-insert the place on the interactive calendar based on best-time-of-day information [content] and allow me to adjust
  • Plan the journey between places by specifying mode of transport, journey time & estimate cost [content, integration]
  • Add meals to places & journey with preferred joint & cost estimate
  • Validate if too much is planned for a day based on visit duration [content] and highlight optional places from the ‘Going to’ bucket that can be moved to a ‘May be’ bucket
  • When moving places around, system should remind to update the journey between places
  • Total itinerary cost should be constantly updated and displayed in local currency so I can budget; highlight places & journeys without estimates
  • Filter places on the by category, expense
  • Share my itinerary with others on the website; email the web link
  • Collaborate with co-travellers on the itinerary [roadmap]

Travel

  • Print/Email the itinerary with selected elements
  • Allow including embassy information, emergency numbers, weather, etc.
  • Mobile site to rate places, enter actual cost & time, add public & private notes
  • Update current location, upload photos & add notes that loved ones can view on a shared link
  • Mobile app [roadmap], share location on social media [integration]

In Part 2 of this post, we talk about more features ideas and concept’s strengths and challenges.

 

A few months back I was planning my vacation and things weren’t as easy as I thought. I had figured out the destination, booked air tickets, short-listed places to see and hired a car. The challenge however was to set up a local itinerary. I had X places to cover in Y days with optimized routes so we weren’t spending all our time travelling.  This required finding exact locations & distances between them so as to figure how much could be covered in available time. I had nothing at my disposal but Google Maps & notepad.

Based on my own needs, and the way I go about planning my vacation, here are some high-level ‘market needs’:

  • Itinerary Planer: Create, visualize & execute itineraries on interactive maps & calendar
  • Vacation Content: Genuine holiday suggestions, based on demographics, with verified itineraries[
  • Marketplace: Get quotes from interested agents on my itinerary
  • Integration: Link with booking, review, customer engagement & social media platforms
Google map created for my Singapore holiday

Google map created for my Singapore holiday

Am I working on this project? View full article »

10 international air travel tips

Be prepared!

Be prepared!

1. Keep copies of travel docs
Nothing is worse than losing your passport or tickets and getting stranded in foreign land. Always keep a copy of your passport in every piece of baggage. An extra copy of air ticket & visa won’t hurt if you recycle them when you return.

2. Distribute your currency
Don’t put all your eggs in one basket; spread money across your bags and some in your wallet. Use a spare purse or a self-sealing bag to keep the currency of the port you’re leaving that you can move back in when you return.

3. Check local weather
Weather can be a real spoiler. Quite a few parts of Asia & Europe are infamous for random showers. Be prepared. A folding umbrella or a monkey cap – or at least, the right pair of shoes – can really save a day.

4. Know about your consulate
It is essential to know how your country is represented in places you are visiting. It could be an embassy, a consulate or served by the diplomatic mission of another country. Fortunately, I have never had to use this information. But this is the first place and your last resort if shit hits the roof.

5. Download offline maps on your device
Avoid messy paper maps by downloading local road & public transport information on your smartphone, tablet or pad. If Google doesn’t let you, use Maps (-) on Android to save maps offline. And then if you have a local SIM, View full article »

prasadgupte | 1999-2013