Thursday, April 19, 2012

Tunes 2.0 - Nextgen Call Answering

This idea of custom network message was thought through in 2007. A network based solution to the users for communicating their status to the caller.

Immense discussions were done on it - we even tried to meet a few potential VAS customers if they would be willing to invest in it.:-( Finally we ended up patenting it with the India patents office.

(Ideas was coined alongwith my colleague Gautam Kachru)

.. The PPT says it all ..

Secured Conditional Text


Adobe FrameMaker, Adobe Robohelp and Microsoft Word are some of the commercial tools
that use Conditional text feature in some form or the other. Conditional Text is one of the advanced feature of desktop publishing tools used mostly for Single Sourcing of a document. This feature is highly used in industry all over the world from writing Specifications to
Documentation of a product. Using this feature, different versions of a document can be maintained.

conditional text: text that may have alternate renderings, based on what the conditional text
is referenceing ... see http://www.livelinx.com/contentmanagement/conditionaltext.
html

As of now, we may show/hide conditional text created by any user in a document. There is no security implemented with the show/hide of the text.
Creating security at user level, based on Conditions tag can be useful for a document, as all users cannot edit/view other users text in the document. There are cases where Administrator of document wants to ensure certain part of document to be hidden from users, meanwhile allowing other users to have permissions of their respective sections.

The intent is to implement permission based conditional text so that the creator of conditional tag may define the view/edit permissions associated with it for other users.

Goal: It provides the document with "secure" conditional text such that a text within the document can
be hidden from other users and shown only if the specific user has permissions over it.

Example:
There is a shared file XYZ Now the owner of XYZ is Superuser. He creates a textA with view permissions to A, and textB with view permissions to B. Now when the file XYZ is opened by B he may not be able to see the text created for A. 

Now A can create an attribute over textC for which he gives permissions to B, then B can also view this text. It can be extended to edit permissions as well. If Superuser gives edit permissions for textA to A,
he may change the textA attributes as well.'

(this was coined along with my colleague: Ankur Prakash)

Tuesday, April 17, 2012

Network based Mobile Alarm

This need was much sought for when I had missed to get-off on a station or my sleep was spoiled in the anxiety of missing the station :-)

This idea of a network based alarm was penned down in 2007. It is very much possible via smartphones with enabled GPS. I wish this was possible for a non-smartphone user as well i.e. tightly integrated solution by the network provider itself. 

For an operation 'Network Alarm', the provider needs to allow-

1. Browsing for the destination networks. Say one starts by train from Agra to New Delhi.  One should be allowed to browse and select the destinations. For setting the alarm one chooses New Delhi. In our case, one should select "New Delhi -> Railway Station" as the network alarm setting from the starting point itself. (as the train reaches New Delhi railway station area the alarm should ring) .

2. Triggering an Alarm. As the network changes, a check is performed with in the mobile phone software. If the (current network == destination network) is true then the alarm is raised.

Several apps are already there for the smart phone users .. just google "gps based alarm".


Monday, April 16, 2012

Custom Group Search


[This could be fulfilled easily by regular expressions inbuilt in browser but unfortunately the browsers I use do not have regex]

There are times when we wish to search for multiple words at one go & thus we end up searching multiple times in a webpage, if we are looking for all occurrences of specific but different words. Had there been a provision of grouping all those desired words or considering them as one, it would have saved much time by showing occurrences of all those words at one go.

E.g. - I ended up getting a webpage (In an effort to search for dealers of an item) - To look for the most nearest dealers I had to search the page repeatedly for nearby area each time.

If multiple search was possible in a webpage: - I would have mapped (grouped) all the nearby areas to a single word. - And then searched for that grouped-word - And possibly that group could be sent to the cloud storage so that it could be used in my other apps/devices

- Ease of use - Time Saving - Possible use under the Cloud - User Custom search built over time

Search in general works by searching the single word or phrase in the whole document. With this idea we are in essence: - Mapping multiple words to a single-grouped-word - When single-grouped-word is searched then all those words mapped to it are searched It is a corollary to a SQL query where multiple words are searched with the OR clause. for e.g. I wish to search for occurences of similar places like: Noida, Delhi, Gurgaon, Faridabad in a single search. I create a grouping of those words 'NCR'. So, NCR = Noida OR Delhi OR Gurgaon OR Faridabad or NCR = Noida || Delhi || Gurgaon || Faridabad And when NCR is searched it highlights the words: Noida, Delhi, Gurgaon, Faridabad where ever they occur in the document. This custom (group) search could be stored as a browser preference or a personal cloud setting that could be used in other apps/devices as well.

Rearrangable Keyboard



With the advent of soft keyboard on the touch screen, there should exist a mechanism to rearrange the keys as per convenience or usage or need.

Customization has paved its way in almost anything so why should the heavily used thing like keyboard stay behind? If given an option it would be nice to experiment by rearranging the keys of the keyboard for better efficiency. Say, I am a left-handed user, and there are a set of keys that are used more than others. It would be easier for me to group that set towards the left or as per my convenience. The same stands true for the specially-abled (with 1 hand or otherwise) to regroup the keys as per convenience.

I had noticed several times people using fingers of single hand to type on device. It looks very funny to see their fingers moving from one end of keyboard to another to enter a single sentence.

Now since the handheld devices have soft keyboards it seems a possibility to have re-arrangable keyboards where keys can be arranged on the basis of: 1. Usage of Keys (most used keys grouped together) 2. Customized arrangement (user drags the desired keys to his preferred placement position)


ADV:
It offers:
1. Choice to users to create a keyboard of their choice.
2. Opens up numerous possibilities for the specially-abled as well.

WORKING:

1. While the soft keyboard is visible, each key when pressed for long may become eligible for dragging to the desired place.
2. As it is dragged, the internal remapping also occurs of the moved keys.
3. Once the user is done, the changed key board becomes his default keyboard.
4. It can also be programmed to keep stock of the number of times each key is being used.

Additional Options: 1. The stored keyboard could be exported to cloud so that the user may use the same keyboard on other devices too. 2. Reset option 3. Automatic arrangement - usage-based or alphabetical or others.

Preserving sequence of operations performed in a document/graphic for later usage


When we create an object (a drawing made of various components) - it is difficult to remember the sequence in which the drawing was drawn. Infact, if it a tabular format sequence (like Sudoko) where the sequence is important it is difficult to show the sequence of operations to a user who opens the document later.

I was in a class where the Professor had described the method to solve a problem by Linear Programming (Simplex method) [Simplex involves a table to be filled up with data]. I had copied notes from the board but when I went home it took me long to imagine the sequence in which it was solved. I wish if there was a method that could indicate the sequence in which the notes were written. Could not find a prior solution for the same.

The concept of the idea is denoting the sequence of operations (be it text or image or handwritten notes) to the user (for later use). It would insert superscript numeric numbers so as to denote the sequence. When a document or image is reopened later a user may easily recall the sequence in which he had typed or drawn the object. This idea if implemented could help in: Understanding the sequence of operations while drawing or writing where the order of sequence matters.

DETAILED DESCRIPTION:

Usage of superscript numeral text to denote the sequence. That text would be conditional (can be made toggled between show/hide) http://en.wikipedia.org/wiki/Conditional_text For Text: -Implementation of this idea for text should be easy via adding "numeral superscript" to the text. -The numeral superscript would be something like a "n+" operator which auto increments by 1. -At logical breaks, the n+ could be added as a superscript to the text when the tracking of order sequence is ON. -The n+ could be a part of a conditional text that could be hidden or displayed when required. For Graphics: -Implementation of this idea for graphics too could be implemented via "numeral superscript" to the graphic-part. -The numeral superscript would be something like a "n+" operator which auto increments by 1. -At logical breaks, the n+ could be added as a superscript to the graphic-part when the tracking of order sequence is ON. -The n+ could be a part of a conditional text that could be hidden or displayed when required.