- Apache Tez is an extensible framework for building high performance batch and interactive data processing applications, coordinated by YARN in Apache Hadoop. Tez improves the MapReduce paradigm by dramatically improving its speed, while maintaining MapReduce's ability to scale to petabytes of data. As member of Hortonworks my contributions are in the development of TEZ user interface.
- Hidden shadows is the latest game from Zynga in the hidden objects genre. The game is a sequel to Hidden Chronicles. The game is a supernatural crime thriller in which you play the role of Michael Alder, an young executive, to solve the mysteries behind murders in Gracetown. My team had build three key features of the game, and is also working on numerous other modules. We are also in charge of solving all UI related technical blockers.
- Starling UI is an extension for starting framework with better UI components. It was started as my personal project, and now it's an inseparable part of our latest game, Hidden Shadows. The extension includes view-port, lossless-text-field, masked display container, rounded-progress- bars, scroll-panes, image-loader, tiling-systems, layering-composite etc.
- Frigil was our entry for the 2012 Hackathon. The game was envisioned and implemented by my artist friend and me in less than a week. The game says the story of Frigil, the frog; who is on a saga to be the next king. Reaching the yellow leaf completes each level, but take care to stay away from the foes and also ensure to collect the goodies for better score.
- As part of the YoVille team my contributions went in creating game features. Some of the key features were Yo UI Revamp, Multi Player Actions, Chat Next Gen and Yo Avenues bold beat. For UI Revamp, Player Actions and Chat I was awarded the opportunity to drive the team. Technically my major contributions went in creating a communication framework for the new in-game chat and in creating the base tech for multi-player interactions.
- A highly flexible axonometric game engine built on my patented technology. The engine is capable of handling any tile size in all camera angles and width to height ratios. It's achieved by using my new geometric equations, the same are on final patenting process under U.S patent application serial no: 13/745,103. The engine helped in envisioning CraftIso pitch and Greyhound demo.
- LinkPad provides a highly interactive interface for creating flow charts on a browser. It was made purely on HTML5 canvas; a VML based canvas alternative named s-canvas was also created for compatibility with the then IE versions. It's used by ROC-FM for the graphical representation and management of process workflows.
- A library mothering various UI widgets, components and utilities. After working with YUI and ExtJS, my intention was to create a pure JS based library that is better modularized with each class in a separate file, and at the same time more flexible by dynamically loading the required scripts when required. Click here to see demo of one of the component.
- Bridge is a lightweight RPC framework for "client to client" and "server to client" communication. The client side was completely done in vanilla JS and the server side in Ruby. It used an open connection instead of a polling approach to get data from the server at real time. Arguments were JSON encoded and the API was flexible enough to handle both scoped and global function calls. IWT stands for Inter Window Tunnel, and helps to communicate between multiple windows/tabs open in a browser from the same domain. It helps bridge to maintain a single open connection and serve all windows opened under a domain.
- Our team development and support the best fraud management system for mobile NOCs. Worked on all modules, from the heavy weight C++ server to ROR thin client and Java thick client. My key contributions were in the development of an advanced querying framework, a data steam manager, a multi file up-loader and few file translators.
- As part of the college main project, we created a virtual baby named NEO. He was programmed to reacts to our expressions, emotions and actions. A webcam and microphone acted as NEO's sensory inputs, the monitor and pare of speakers acted as outputs. Using motion detection NEO's eyes would follow moving objects, he would express happiness while listening to soothing sound and would get emotional with noises. Coupled with face recognition and gesture recognition we expanded NEO's capabilities. The main technical innovation we made in this project was a grammatical parser based on the nine emotions of natyasastra. This enabled the system to learn and evolve based on activities happening around. Also one main aim was to enable to the system to learn sounds and associate it with gestures.
- SCube was our college mini project. The name represents SSS and stands for Synchronous Sashay Simulator. The aim was to provide an efficient, versatile and generalized platform to ascertain the shortest path or the simplest path connecting two places on a map. Our system uses a method totally different from the conventional graph based approach, and provides better results in real world scenarios. It works in two phases. The creation/pre-procession phase in which an intermediate file called the map file is created from a black and white image of the map. Black represents obstacles and white represents traversable area. Non-traversable white patches on the map are removed through a process called lagoon erasing, and then edge detection is performed to get the data required for the intermediate file. Once the map file is create it can be used any number of times for finding path between two points. To find a path, shortest routes over the intersecting edges are taken and smoothened out using our RDH algorithm.
- Language Lab is one of my pocket money projects. The products were released under my company MyFactor, in a joint venture with another marketing firm. Language Lab provides various means for student teacher interaction and facilitated online material broadcasting, language learning and knowledge assessment. It was installed in various Indian colleges.
- Sozer stands for school organizer. It's the biggest product from MyFactory. The product helped in complete management of a school, it provided everything from managing time-table to the ledger sheet sheets. The product was installed at some schools in my state.
- Turech is a numerically controlled construction toy, and was created for college project presentations. At the heart, the system was a set of DC motors controlled using parallel port through an optocoupler-relay array. At the software side, the program was equipped to manage signals send to the data port. It can translate keyboard inputs, record and replay the signal patterns.
- ARMADA stands for Artificial Recognition and Manipulation of Alphabetic Datum. It's the C++ implementation of my handwriting recognition algorithm, MAI-II. Back in 2002-03, when Microsoft's tablet PCs were the hot cakes of the tech world, what attracted me most, were the stylus and the magical recognition of characters written with it. Those made me start a mission to create a system that could recognize handwritten characters in any language. After multiple iterations of various algorithms and prototypes, I accomplished my goal; ARMADA core 2 was created. The software can learn the way you write a character, memorize it and use at a later instance to recognize the same. The best part is that it can learn any language.
- P2Tester or picture to text converter a tool to convert an image into a monochrome plain text equivalent. The resultant text file can be opened in any normal text editor. The system uses a set of 16 different characters; each character occupies a different screen space. When a mosaic of characters is made, with each pixel replaced with a character of relative intensity, the illusion of an image is created.
- Perspective 3D Engine is my C++ implementation of the perspective projection in engineering graphics. Using the tool one can easily design a 3D wireframe; view perspective projection of the same, and alter the projection parameters. The project was initially started as an educational tool to learn the effect of various parameters on the projection of an object. Later the core of the project was used as a 3D engine in some other programs. It helped in animating objects in all three space dimensions.
- As a programmer, my key aim back in those days was to explore beyond the boundaries of conventional programming. As I'm more inclined towards graphics, one key objective was to directly control graphics card for better performance, color and resolution. Hence project SVEGA was started. SVEGA provided TC++ APIs for drawing basic shapes and displaying BMP images in SVGA. 256-colored SVGA was a major achievement above the 16-colored VGA provided by graphics header file.
- Swing is my attempt to leverage the sound card for music. It enabled playing uncompressed single-track wave files in TC++, and was a major achievement way beyond the frequency based sound tones supported by the language. The library also supported amplitude based graphical visualization of currently played music.
- Tumac stands for The Unlimited Machine. It's programmed to calculate Gregorian calendar for any year you can enter in a fraction of a second. This feat is achieved by computing the required calculations while entering the year. The key innovation is a new math to do basic operations from left to right than the known right to left approach.
- My relationship with computers started back in 2002, and Turbo C++ 3.0 was the first language that I had my hands on. Beyond the basics, what attracted me most was the graphics header file that gave pixel level control of everything that was happening on the computer screen. These screen shots are from some programs I wrote for learning.