Saturday, September 12, 2015

Data Proliferation – Cause, Effect and Control



Data Proliferation refers to a massive amount of structured and unstructured data that is growing day by day and introduces challenges before business and government bodies for storing and managing this data. The issue refers to both physical (paper files) and logical data storage (Primary and secondary storage). The challenges may include additional storage space, network speed, hardware cost, data access speed etc.  An average computer user have much more memory for his storage need, however when it comes to businesses, governments and other entities collecting massive data on a daily basis, the problem of data proliferation may manifest. Data proliferation has been documented as a problem for the U.S. military since August 1971, in particular regarding the excessive documentation submitted during the acquisition of major weapon systems. Efforts to mitigate data proliferation and the problems associated with it are ongoing. Let us see what industry statistics says about massive amount of data produced on routine basis.

  • Approx. 72% of all internet users are active on social media sites with a majority of these users on Facebook spending 12-16 minutes each day.
  • Over 2.7 billion likes are clicked each day which is the easiest thing to do on Facebook.
  • 300 million images are uploaded every day that constitutes about 75% of posts; adding more than 500 terabytes of data on Facebook.
  • Amazon sales more than 200 million products every year throuout the world.
  • A single product on Amazon contain a lot of additional artefacts apart from the basic information like product images, associated reviews, alternate products, up sale and cross sale product information etc. This includes both structured and unstructured data and requires a massive data storage space.
  • A single query on google has to travel more than 1500 miles to fetch the information and return back it to the user from a data centre taking an average time of 0.2 seconds.
  • Approx. half a million tickets are booked everyday on IRCTC (Indian Railways Tickets booking site). The site serves more than 0.10 Million concurrent connections where users book their train tickets.
  • 790 out of approx. 900 Million mobile subscribers in India are active connections as on March, 2014. A huge amount of data is stored on servers for data related to customers, calls, SMS etc.
  • Global smartphone audience has surpassed 1.5 billion mark. These Smartphones are very resource hungry and require further storage needs to download, use and execute various applications like Facebook, WhatsApp, twitter etc. in some cases.

Apart from the above stats, there is massive data in government organisations that is sensitive and cannot be shared on internet; however it is assumed to be in petabytes. So it is evident from the above facts that we have a lot of data lying on servers adding to proliferation and the driving factors for this huge data may include but not limited to a good internet speed, affordability of cost per GB and more and more resource hungry devices and applications. This huge data comes with a lot of implications if continued to generate at this speed. Some of the major impacts may include:

  • More storage space for computers require more cooling which in turn result in additional need of water, energy and space which is negatively impacting the environment.
  • Although the results are faster, there is an increase in time spent on searching the relevant material on search engines. This is because of a huge amount of data that a web crawler has to look for to get the desired outcome. This eventually increase search cycle time.
  • The cost of storage per Gigabyte is drastically coming down for 3 decades from thousands of dollars to merely some cents per Gigabyte; however cost spent on infrastructure, software, associated maintenance, floor space along with IT staff to keep the scalability and performance of the systems is increasing multi fold.
  • More expansion of data footprints means more security threats. All this data stored on company networks requires additional tools, applications and expert staff to enforce security measurements on this data. Any small glitch in the security may prove to be a big compromise with the credibility of the company’s goodwill and may impact the business. 

Analysis on obsession of data shows that popularity of rich media on internet, getting free space on cloud, e-commerce sites and social networking are some of the driving factors that cause massive storage of structured and unstructured data on internet. Unstructured data includes excel sheets, presentations, PDF and word documents, pictures, videos and audio files. On the other side, high usage of registration activities on websites, new entrants in the e-Commerce space leads to structured data. Corporates and government authorities need to define strict policies for data retention. A better information management system is a backbone for any organization that helps them to draft various policies, take effective business decisions and take timely action to name a few. So let us see how we can minimize the adverse impacts of data proliferation.


As an individual 

  • Store only relevant data on secondary storage media. There are instances when people keep collecting a lot of raw data while preparing a final document; however this raw data is also copied which might not be needed while performing a system backup. Remove duplicate data. In absence of time, most of people tend to simply copy data to secondary storage by making new folders which is not an ideal way, instead storing the data in the same folders by overwriting or using some good version control tool if it is really needed to keep control on the data.
  • Use backup utilities which are an effective way of reducing waste data in the form of redundant files. Whenever needed, use incremental backup instead of simply creating copies of the same file prefixed or suffixed with date. This will make sure that only the changed contents are replicated in the destination folder.
  • Limit upload of pictures and videos on internet especially on social media sites. Market is flooded with high resolution digital cameras and smart phones targeted for people who are obsessed with taking snaps. These cameras and phone produce a considerable size of photo sometimes as big as 3-4 MBs. And also, all these pictures are not worth keeping. By keeping all these unwanted pictures, we are moving towards Data Proliferation.
  • Use designated tools to get backup of your smart phones so that you can keep track of your contacts, emails or media. These tools are very efficient and help taking incremental backups of all the data on your phone.
  • Avoid backing up all the forwarded pictures and movies received on Facebook, WhatsApp, viber, telegram etc. These forwards are neither useful nor solve any purpose for many years to come.

As an organisation

  • Use file systems that use effective metadata structures/tags so that a fast and relevant search result can be obtained. To a large extent this is already available with most of file systems available; users just need to use these metadata tags extensively. 
  • Educate Employees on various negative impacts of data proliferation so that a self-motivated environment is created to control the data.
  • Implement an effective Information lifecycle management so that the information should be kept for certain period else discarded. 
  • Define and implement data retention policies for effective governance across departments in an organization so that the data footprints can be reduced. This will help organisations to keep track of their storage needs.
  • Use network drives if more than one users are working on the same data or the data that needs to be shared between users. This will help to retain a single source of truth and help reducing data proliferation.
  • Define and implement data archiving policy. Data that is used very infrequently must be compressed before archiving. 
  • Integrate applications to minimize rekeying, manual errors and minimize query cycle time wherever possible.  


Conclusion
Let’s consider the above points and contribute to a better environment, an improved data in hand, quick and relevant search results and enhanced secondary storage space utilization. By implementing the above suggestions, we can help in various ways to disregard low or no value information at an early stage and keep only the relevant and high value information in long term secondary storage which is really quick and cheap to access. Delphix and Actifio are the tools among others that provide DaaS services helping control on data proliferation. 

References:
http://www.searchenginejournal.com/growth-social-media-2-0-infographic/77055/  
http://export-x.com/2013/12/many-products-amazon-sell/ 
http://expandedramblings.com/index.php/by-the-numbers-17-amazing-facebook-stats/  
http://gizmodo.com/5937143/what-facebook-deals-with-everyday-27-billion-likes-300-million-photos-uploaded-and-500-terabytes-of-data   
http://www.mkomo.com/cost-per-gigabyte 
http://www.treehugger.com/clean-technology/crazy-e-waste-statistics-explored-in-infographic.html   
http://www.emarketer.com/Article/Smartphone-Users-Worldwide-Will-Total-175-Billion-2014/1010536 
http://www.jeffbullas.com/2012/05/23/35-mind-numbing-youtube-facts-figures-and-statistics-infographic/   
http://storageioblog.com/data-footprint-reduction-part-1-life-beyond-dedupe-and-changing-data-lifecycles/

Wednesday, November 27, 2013

Bitcoin

Introduction
Emerged in 2009, Bitcoin is a digital cash (Electronic Payment System) that uses peer to peer technology with no central authority or financial institutions for issuing, regulating or managing its transactions. Satoshi Nakamoto is said to be the one who introduced bitcoins concept, however since 2010 there is not any traces of him. Now the whole bitcoins network is decentralized and no-one owns this network and this is controlled by the bitcoin users throughout the world. These Bitcoins need to be purchased using standard currency at Bitcoin exchanges and then you can use these Bitcoins to purchase anything similar to what can be bought using cash/plastic money in shops or online. Mt. Gox is a major exchange to buy Bitcoins, though there are many other exchanges also). Once you purchase the bitcoins, you can use these bitcoins in any part of the world where these are accepted by the merchandise. There are also a finite number of bitcoins in the world, with a limit of 21million bitcoins set.
 
This technology is open source and its design is available to everyone on http://bitcoin.org.
 
How it works
 
This section explains how to activate, purchase and use bitcoins:
  
  • Download a bitcoin wallet from http://bitcoin.org.
  • Purchase some bitcoins. From any exchange or receive it from any of other person who have bitcoins.
  • Use these bitcoins to purchase items where these bitcoins are acceptable such as Namecheap or WordPress to name a few.
Bitcoin wallets come in three variants based on your usage patterns mainly: 
  • Software Wallets – This is targeted for Laptops and Desktops.
  • Mobiles Wallets (targeted for Smart Phones)
  • Web Wallet (targeted for roaming users)
Users download a software meant for their desktop or mobile phone. This can be treated as a Bitcoin wallet. Now the bitcoins can be purchased and stored in this wallet. In the backend, the bitcoin network shares a public ledger “Block Chain” that contains all the processed transactions. These transactions are protected by digital signatures.  
   
Bitcoin Mining
 
It is the process of spending computing power to process transactions, secure the network, and keep everyone in the system synchronized together in a decentralized environment. All the operators are located geographically at different locations across the globe. Mining is also a temporary mechanism responsible for issuing new bitcoins. Anyone can process transactions using the computing power of specialized hardware and earn a reward in bitcoins for this service.
 
For new transactions to be confirmed, they need to be included in a block along with a mathematical proof of work. Such proofs are very hard to generate because there is no way to create them other than by trying billions of calculations per second. This requires miners to perform these calculations before their blocks are accepted by the network and before they are rewarded. As more people start to mine, the difficulty of finding valid blocks is automatically increased by the network to ensure that the average time to find a block remains equal to 10 minutes.
 
Bitcoin miners are neither able to cheat by increasing their own reward nor process fraudulent transactions that could corrupt the Bitcoin network because all Bitcoin nodes would reject any block that contains invalid data as per the rules of the Bitcoin protocol. Consequently, the network remains secure even if not all Bitcoin miners can be trusted.
 
Security
 
Bitcoin use strong protocol and crypto algorithm and since its inception, there has not been any threats reported so far. Some security flaws were identified at times and addressed accordingly. On the other side, as Bitcoins are just a digital representation of cash, there are couple of vulnerabilities associated with this. For example if you lost your cash or accidently damage your cash, the same can happen to your bitcoins. These are stored in the form of private keys in your wallet files, these files can be deleted, stolen or get corrupted by the file-system errors.
   
Some security features have quickly developed by bitcoin such as wallet encryption, offline wallets, hardware wallets, and multi-signature transactions. There is other concern about changing the bitcoin protocol, however this is not true. All the bitcoin clients need to use the same protocol and with a valid signature. This ensure there is not any double spending of the same bitcoin by the same user, not to generate the bitcoins out of thin air, spend other’s bitcoins or corrupt the entire network. 
 
This is the biggest distributed computing project in the world and till date this has not been hacked.
 
Challenges
 
Every new technology come with lot of challenges, Bitcoin is not exception, this also has it’s own challenges: 
  • In principal, there is not any possibility to change the Bitcoin protocol, however a majority of miners could arbitrarily choose to block or reverse recent transactions. Because Bitcoin only works correctly with a complete consensus between all users, changing the protocol can be very difficult and requires an overwhelming majority of users to adopt the changes in such a way that remaining users have nearly no choice but to follow. Practically this is really very difficult to achieve as no-one want to mess with their money.
  • A transaction fee is based on the transaction rather on the amount. This means if you need to transfer a big bitcoin amount, the charges will be comparatively less. On the other hand if you need to have many small denomination transfers, this may cost you higher. Looking this aspect, if we target the users who need to make routine transactions, using bitcoins might not be feasible.
  • Too much wait time for a received bitcoin to be used. Bitcoins are received instantly, however it takes approximately 10 minutes before you can spend these bitcoins. The reason for taking this much time is that the transaction needs to be cascaded to public ledger to ensure that these bitcoins are not send to anyone else. Once the transaction is included in 1 block, it will continue to be buried under every block after it to decrease the risk of reverse this transaction.
  • Volatility of bitcoin price. Since its inception, there is a huge variance on the bitcoin prices. It was less than $1 for a Bitcoin when started; now it’s more than $650 for a Bitcoin. These price swings may create a fear of accepting bitcoins as a currency although there are enough true believers in the concept and long-term promise of Bitcoin that it is unlikely to fade from the scene any time soon.
  • Legality, Bitcoins are yet not legalized in many countries. Regulators from various jurisdictions are taking steps to provide individuals and businesses with rules on how to integrate this new technology with the formal, regulated financial system. Till the time I write this blog, there was not any formal legal regulations were available.
  • Illegal Usage, Bitcoin is another form of money (called as virtual money), and money has always been used both for legal and illegal purposes. Recently a website silkroad has been shut down that uses bitcoins to sell drug-and-weapons. This raise a lot of questions; if this technology also gives me the same bad impacts, then what is the purpose of using it? 
  • Cross Country Usage issues. Although it is said that this currency can be used in any part of the world, there are lot many other issues involved if I want to purchase something in one country and what it to shipped to a different country. This is only a single milestone achieved in the overall Supply Chain Management in cross borders.
 
Takeaway
 
I would still like to wait for some more time until this technology is fool proof against all odds and is regulated. 
 
Hope you like this article. Your suggestions are always welcome.
 
Refrences:
 

Thursday, March 21, 2013

Cloud Computing

As the businesses are growing, we need more resources to run the day to day activities. IT is a major part of these resources. Almost 60-70 % of this complex IT infrastructure budget goes towards maintenance. This cost includes infrastructure, manpower, electricity, software cost, hardware cost etc. While the individual IT systems and applications in service are often well considered and expertly implemented, the sheer scale of the ongoing IT investment itself has emerged as the dominant concern. Even when best-of-breed technologies, open standards, market-leading vendors, and modern architectural practices like SOA have been employed pervasively, most enterprises now find themselves with too many platforms, too many technologies, too many domains of expertise, and too many vendors to coordinate and manage.

Cloud Computing is making this infrastructure and services available on-need basis or in other words is "renting" or borrowing online software instead of actually purchasing and installing it on their own computers. It is the same business model as people using Hotmail or Yahoo mail services, except that cloud computing goes much further. Cloud computing is where entire businesses and thousands of employees will run their computer tools as online rented products. All of the processing work and file saving will be done "in the cloud" of the Internet, and the users will plug into that cloud every day to do their computer work. The Cloud will provide everything that includes hard disk, development platform, database, computing power or complete software applications. To access these resources from the cloud vendors, organizations do not need to make any large scale capital expenditures. Organization need to "pay per use" i.e. organization need to pay only as much for the computing infrastructure as they use. The billing model of cloud computing is similar to the electricity payment that we do on the basis of usage.

We can divide the services provided by cloud in three major categories:

  • IaaS (Infrastructure as a Service) - includes service like computer infrastructure, storage, databases, hosting services etc
  • PaaS (Platform as a Service) - cloud includes service like full or partial application development
  • SaaS (Software as a Service) - includes service like a complete turnkey application, such as Enterprise Resource Management etc.

On the basis of usage, all the above services can be provided as:

  • Public - In a public Cloud resources are dynamically provisioned on a fine-grained, self-service basis over the Internet. Amazon’s Elastic Compute Cloud (EC2) is an example of public IaaS service.
  • Private - Compu ting on private networks. This offer the ability to host applications or virtual machines in a company's own set of hosts. These provide the benefits of utility computing – shared hardware costs, the ability to recover from failure, and the ability to scale up or down depending upon demand. This is not a very widely accepted as users still have to buy, build, and manage this cloud and thus do not benefit from lower up-front capital costs and less hands-on, however this is helpful for mission critical services where security is of very high concern.
  • Community/Partner cloud - A community cloud is used where several organizations have similar requirements and seek to share infrastructure so as to realize some of the benefits of cloud computing. With the costs spread over fewer users than a public cloud (but more than a single tenant) this option is more expensive but may offer a higher level of privacy, security and/or policy compliance. Examples of community clouds include Google’s "Gov Cloud".

How does it work?

When a user accesses any application/service from the cloud, it’s IP Address can be used to establish where the user is located. DNS services can then direct the user to a cluster of servers that are close to the user so the site can be accessed rapidly and in the user's local language. Users do not log in to a server, but they log in to the service they are using by obtaining a Session ID or Cookie. Whatever user sees in the browser usually comes from a cluster of web servers. The web servers run user interface software which collects commands from the user (mouse clicks, key presses, uploads, etc.) and interprets them. Information is then stored on or retrieved from the database servers or file servers and an updated page is displayed to the user. The data across the multiple servers is synchronized around the world for rapid global access.

Benefits of using Cloud Services

Need Based Availability

Users always have a choice to opt the cloud services as the need arise and later on if required, user can any time withdraw the services. It gives users flexibility to do his desired work with a very minimum spending and maximum utilization of the resources.

“Pay-Per-Use” Billing Model

This model is suitable for those type of business where the client want to commence a new business or want to revamp his current IT implementation. Client has to pay only for the required users with a flexibility of addition/deletion of these users any time and he will be charged on the basis of current working user accounts only.

In another similar model, users need to pay only for the services they have opted for i.e. where the vendor is providing number of services and client need to use only some specific set of services. For example in our mobile phones, we are being charged only for the services that we have opted for.

CapEx Saving

This is the most sought after option people look for cloud services. This is where client saves most of his spending. As already depicted, every business need to spend a large chunk of their budget on infrastructure, hardware, software and on support activities for IT to run their business. If they use the cloud services, a major portion of this budgeted amount can be saved and the same can be spend on other business activities giving business a huge CapEX saving.

Location Independent

When using Cloud services, location doesn’t matter. This means business doesn’t come to halt when there are some unforeseen circumstances arise in day to day life that is showstopper to continue business. Cloud services are geographically located on different location so business runs as usual without any impediment.

Zero Touch Automation

Client need not to do a lot of software development, purchase hardware, handling different SLA for s/w, h/w etc. All the services are located at one place so if any changes required, they can be implemented on servers only and no changes are required on client side.

Reduced Time to deployment

Most of the services are ready to use and available on the cloud, you just need to understand your requirement and need to tweak the existing services to make these suitable for your business. If there are any generic changes required on these services, it either doesn’t require any deployment or need a very minor deployment window. It helps in business continuity.

Scalable, Reliable & Sustainable

Scalability is accomplished through load balancing of application instances running separately on a variety of operating systems and connected through Web services. CPU and network bandwidth is allocated and de-allocated on demand. The system's storage capacity goes up and down depending on the number of users, instances, and the amount of data transferred at a given time.

Intelligent load-balancing in today's RAC nodes with faster connection failover gives client a feel of reliability. These cloud services provide a faster response time for enterprise applications that includes intensive database work.

Vendors are providing services for a mix of small, medium-size, and large companies with different options/services. These services start on a low-cost, fixed-priced model and quickly scale capacity. It provides a road map for these services so that these can be scaled across the IaaS, PaaS, and SaaS flavors with proper network capacity to consume all services and make these services sustainable for long.

Desktop feel in a browser

A client need a browser to access all the cloud services. Once the services have been deployed on clouds, users can access their desktop applications in browser itself.

Multiple protocol support including HTTP, SOAP etc

There is a support available for most of the protocols for using these cloud services so it doesn’t matter which product you want to use, just need to be sure that the product you are planning to use support the standard protocols used by your cloud vendor.

Usage of old/outdated hardware at client side.

As most of the processing is done on server side, client can use their old outdated hardware. It saves a lot of spending that is usually done when you want to implement a new technology in today’s world.


Challenges

  • Proprietary APIs and different formats for importing and exporting data. As most of the cloud vendors have their own set of services/tools, it becomes somewhat difficult if we want to change the provider at a later stage.
  • Companies who are far from the location of cloud providers could experience latency, particularly when there is heavy traffic.
  • Resource Utilization – Though all the providers are using state of the art technologies to best utilize their resources, it becomes very challenging to provide the best resource utilization on economical prices.
  • Encryption Algorithm – Many vendors has their own set of encryption algorithms to store the customer data. It sometimes become difficult when changing vendors so a care must be taken while choosing the vendors if they are using their own proprietary encryption algorithms or they are using some industry standard encryption algorithms.
  • High Speed Internet connection is still a major issue in remote locations especially in developing countries.
  • Data Security when it is available on Cloud. Though the provider use high level of encryption, a lot need to be look into for cross county data sharing as the customer do not know where his data is located.
  • Better resiliency of resources is required so as to provide a 100% uptime to the customers.
  • Software Licensing also need to be considered.

Monday, November 14, 2011

Augmented Reality - Beginner's Guide

CodeProject

Augmented Reality is one of the hot topics of today’s technical discussions. This term is coined for virtual reality that describes the duplicate of the natural environment or real objects in a computer system and then generating a combined view for the user that is the combination of the real scene viewed by the user and a virtual scene generated by the computer along with some additional information.

Unlike Virtual Reality, AR does not create a simulation of the real objects rather AR does add some contextual data to the real objects and present it to the user in such a way that it provides much more meaningful information for these real/natural objects. This can be understood by a very basic example: If you see some item in one of your friends’s cubicle in the office and it looks really beautiful and you want one for yourself also. There are two traditional ways to get the details for this product one is directly asking the person which may not be very comfortable based upon your relationship with that person or I simply take a photo of this sculpture and find it in a nearby shop. In the second way it is very difficult for me to check in each and every shop in my city (The situation becomes worse if the item has not been purchased locally). There is one more way and that is I will simply take a picture of this sculpture and use one application that uses AR and get all the required information like Stores where this item is available, it’s price, availability and reviews etc.

Like the above example there are number of ways this technology can help us as described in next sections of this document.

The AR can be implemented using four basic components: Internet Connection, Camera, GPS and AR Application. 
  • Camera: This will be used to capture the photograph of the object. Usually a 2-3 Megapixels camera should be enough to make a decent AR Workable solution, however it should be noted that a higher megapixels camera may be required depending upon the result that we want. For example if we are creating a solution that require very minute level information of the object especially in medical or defense, we may require a high resolution camera.  
  • GPS: The device should be capable of using GPS. This would be required by the AR Application for using Coordinates and finding the nearest available information on the objects. 
  • Internet Connection: Though the AR Application can use its own internal repository to generate the information on the selected objects (This may be true for some medical and defense research applications), it is required to have an internet connection if we want to make our application generic. Also an internet connection will provide you the latest and updated information.  
  • AR Application: This is the application that we require to make use of all the above components and produce results in desired format. This application will read the images taken by the camera and provide the maximum information from internal repository/internet. The GPS will help to calculate the co-ordinates and accordingly produce the relevant information. 
Every object on this earth has it’s own history and context and internet is a vast source of information that can be used to identify information on these objects. Using AR along-with other technologies like GPS & Internet, we can definitely make a very good use of this technology. Given hereunder are some of the areas/fields where this technology can be used: 
  • Gaming: There are a lot of games that are designed based on Augmented Reality. Top Trumps style card game for PlayStation 3 is an example. This game is AR enabled. Six beloved characters appears in 3D when the AR is activated. Others include a couple of Xbox Games with Kinnect Sensor; Dungeons & Dragons is available for iPhone. These are just examples; there are a lot more games available on internet. Try some goggling and your screen will be flooded with a lot of good results available for your computer, iphone, android based phones etc. 
  • Security: AR has really a very good potential in this sector. We can install some cameras on busy public areas, airports, bus stations etc and track activities of various objects, If an object is placed for a long time, some alarms can be activated to alert the security staff to check if this is a lost baggage or any threat to the public. This way we can save a lot of efforts & money along-with enhanced tracking of unattended objects.  
  • Education: This technology can take education to the next level. When the teacher is delivering a lecture, the words can be captured and associated articles can be fetched from the internet and displayed on screen. The same can be directed to the student’s laptops/tabs. For toddlers some real objects can be provided and AR technology can help to listen to related rhymes, poems stories etc. 
  • Traffic Control: Here this technology can help to track various activities on the highways. If there is an accident on highway, this can be communicated to various channels like ambulance, rescue operation team, highway petroling party for their immediate action. Speed limits can be checked by pointing the device to that vehicle and can be notified accordingly. Traffic can be diverted to different lanes if there is a work going on one lane or alternate routes can be suggested if there is a lot of traffic on that route. 
  • Farming: Water supply can be controlled based on the current weather, crop & soil etc. Once the crop is ready to reap, a notification can be send to the farm owner. There are immense possibilities that cab be done once the crop is ready to sell i.e. notify to the nearest buyer, transport agency etc. 
  • Medical: Doctors can access the data as soon as the patients come to the doctor. AR application can track the basic information from social networking sites also to check their social behavior, personal record etc. Medical equipments can be connected to the intelligent sites/central repositories to provide the latest and updated information about the decease and its latest diagnose available. 
  • Media & Entertainment: Television can control their colors, volumes etc based upon the surroundings. This can be further enhanced to show programs matching with the viewer’s current mood or surrounding activities. Terminator, Iron-Man and Robo-Cop are examples of some of the movies that uses AR technology to recognize various objects and their information. 
  • Aviation: Pilots can be provided with a lot more data while landing on the destination. Furthermore if the weather is not in favor of flight landing, AR application can help the pilot to land properly and safely. Applications can be designed to notify the air staff if someone is not wearing belt or someone has not switch his/her mobile phone off etc 
Apart from the above, AR has a lot to do with other areas like e-governance, social & daily life etc where things can be improved a lot for a better life. The overall idea of the technology is to provide historical and current artifacts to any object and use this information to take decisions.
How this work:

We take an example where the user has a Smartphone having a Layered Browser, Camera, GPS-GPRS Connection along-with one AR application solution. When the user starts this AR application, the camera gets activated and get the current positional coordinates of the user location via GPS and accelerometer, the application server extract the data from content rich remote servers and web services and present this data using the layered browser over the captured picture to provide the user with the desired information. Argon, OpenMAR, GRATF & Goblin XNA are some of the tools that can be used to design various AR capable solutions for handheld devices.
Here are some good references that can help to explore this topic further:

Saturday, June 26, 2010

Your Stars

Stars have an important part to role in our life. Fate of our life is very much influenced by these stars. If you want to know:
  • How stars affect your personal & Professional Life?
  • How the planets impact your life?
  • When you will get married and whether your views will match with your partner?
  • How compatible your future partner shall be?
  • When you are going abroad?
  • How much wealth you shall earn?
  • What is your spouse or children future?
  • What are your best carrier options ?
  • Any other Questions?????????????………
Pick up your phone and call Riya Dhall +91 95610 36661 or email your details at vinod.riya@gmail.com to get all the answers.  All you need to have is your:
  • Date of Birth
  • Time of your Birth
  • Place of Birth
and it will cost your as low as Indian Rs. 500/- Only to get your  queries answered along with the remedies.

Saturday, May 16, 2009

Believe in GOD

Yesterday, i got one mail saying “Shirdi Chamatkar...” – The contents of the Email says i need to send this email to 20 more people (excluding the sender :) ). If i don’t send that email, i will face misfortune in next 5-10 days. I don’t know what happened to us. Are we fearing from misfortune or do we have lost faith in GOD ? At least i have a firm believe in ALLMIGHTY, so i decided not to send any mail of such type.

Everyone of us has a firm believe in GOD and we all want to please GOD. Some of us does this only for a fear so that they may not be a part of any misfortune and the others do it only for getting HIS blessings.

Of course, everyone has a right to firm their faith in their own way, however sometimes, we forget the faith and fear overpowers it, then comes different ways that we use to make our believe strong in ALMIGHTY. In the breed of WWW, we use email to force our believe on others as well. We send Emails to draw attention of others. But have we ever think if believing in GOD says us to misuse the valuable EMail/Network resources?

I do believe in GOD, but by sending a 1 MB or 2 MB mail, i will only add my negative contribution to the network. GOD will be very happy and grace you with his blessings when

  • You give some food to a hungry and needy.

  • You shelter someone if he/she is dying with cold/heavy rain.

  • You contribute some money if there is drought/flood somewhere and people need help.

The points mentioned above are only 3 points which i could gather in my mind. But this is not the end, there are immense ways to please GOD. You have a very good resource called internet to explore more or you must have your own ways also. Nothing can stop you exploring new ways. There are tremendous other ways as well, These chain mails will not serve the purpose.

By sending these type of mails, we are only making people fear if they don't do it, they will face misfortune. Think twice and tell me how one can ask others to do a task and punish them if they don't do it. The correct way is,  you let the other person decide if they want to agree with you or not or want to do the same task. (It is not only for this particular task rather every task we do in our life.) 

May be i have hurt someone’s feelings, but i never intended to do so, i just explained whatever i thought. Agree or disagree is someone's personal opinion. I would appreciate if you let me know your views or let me know if i have conveyed a wrong message. 

New kid on the floor

New Addition to my family.

DSC00111

OJAS – My son

Monday, February 02, 2009

Social Networking

A Social Networking is where you can meet people with similar ideas and thoughts and share the same. It is a not a new concept however how we are doing it with using computers and networks is something new. We use Different ways of Social Netwoking like Daily meetings, Phone Calls & Emails, Dedicated Sites, Corporate Oriented etc....

There are a lot of sites that can be used for Social Networking.

http://www.Shtyle.com 
http://www.wayn.com
http://www.orkut.com

Here i present a list of DOs and Don'tS while using social networking on these sites.

  1. Create your profile very carefully and do not provide the details that you don't want to disclose.
  2. Accept the friend request only if you know the person.
  3. Do not provide any fake information as it may harm your personal/professional living.
  4. Do write proper/meaningful comments/replies in other's scrapbook/guestbook as these are visible to all your/his/her friends.
  5. Look at the profiles of people who add you as a friend.
  6. Be respectful to others if you want to be respected.
  7. Check profiles of anyone else, but don't send any friend request/scraps unless and until you know the person very well.
  8. Update your profile regularly.
  9. Be selective and Join only those groups that you find suitable to you or you will get a lot of spams or unwanted scraps/messages/emails.
  10. Be very selective while uploading pictures on these sites. Do not try to put all your digital dirt on these sites.
  11. Always remember that others can see you and your friend list, so be careful while selecting your friends.
  12. Never download any programme or some questionable contents as it may be virus/trojan etc
  13. Never try to create romantic relationships unless that is the site's purpose. Otherwise, no one will take you seriously. People are there to network, not meet their soul mate.
  14. Don't lie about what you know. If you try to fake knowledge, it will show. You want people to respect you, not avoid you at all costs.
  15. Never reply to spammers i.e. those messages/persons that you don't know.
  16. Never discuss social topics that are objectionable.
  17. There may be some office colleagues who would like to be your friends on these social sites. You must be very careful while dealing your personal and professional relations using these sites.

Always remember that the online networking is popular and a great way to meet with others that share you interests. By following the above lists of Dos and Don'ts, you're online networking experience will be successful and fun.

So go ahead and make your friends and happy orkuting!!!!!!........

Don't forget to send a friend request to me @ vinod.dhall@techmahindra.com (This is my profile on orkut as well).

Monday, March 24, 2008

The Falkirk Wheel - The world's first rotating Boat Lift

Today i got a chance to visit a superb art of engineering. The Falkirk Wheel - The millennium link between the historic Forth & Clyde Canal and the Union Canal. It is a marvelous art of engineering which combines both the canals with the fact that the Forth & Clyde Canal lay 35M (115 Ft) below the level of the Union Canal. Prior to this link both the canals were joined using a flight of 11 locks that stepped down across a distance of 1.5 kms., but these steps were dismantled in 1933 and the current solution was implemented. The current Falkirk Wheel connects the two canals by means of lifting two boats down the 35 m drop as quickly as possible. All it takes only 15 minutes to drop the boat from one canal to another without even leaking a single drop of water. A huge of amount of £84.5 Million was spent on this project and was available to public on 24th May 2002. It is the world's first rotating boat lift.

FalKirk Wheel 1 FalKirk Wheel 2

P3240070 - Copy P3240084 - Copy

The places can be reached very easily from Glasgow or Edinburgh and it takes a maximum of 30-40 minutes. Both Glasgow and Edinburgh have International Airports. After reaching to these places you can catch a bus, taxi or Train to reach there. The nearest Railway Station is Falkirk High and have a frequent trains and buses after each 15-20 minutes.

Friday, March 21, 2008

EMail Tips

In the world of eMails, many a times, we receive some emails, which I will simply call as orphans mails. Though the writer has tried his best to convey the message, but the message is not properly conveyed or is misunderstood or even doesn’t belong to the recipient. Even these emails are related to some category but doesn't specify any category information in subject or message body. It is very common to get a lot of mails on daily basis. This becomes very difficult to store these mails appropriately. Here are some points which will enable anyone to manage their mailboxes in an appropriate manner and also help in utilizing the network bandwidth properly etc. Though these tips are most useful for software professionals, I have tried my level best to make these tips as general.

Software Developers only

  1. Mention the Release/Version/Category information in the subject if the mail is related to a Release.
  2. Release specifies the release number if this email is related to a specific release i.e. [1.0.0]
  3. Version specifies the Document Release i.e. Draft 0.A or Issues 1.0 etc.
  4. Category specifies the category of the Document i.e.  UTS/ LLD/ TESTING/ SystemTesting/ PerfTesting/ Internal Review/ External Review/ SignOff/ Request for Approval etc.
  5. Do not provide the network path for External mails as the network path/Local Path may not be available to external community instead use FTP location or a common VSS path.
  6. Upload the files on onsite VSS and provide the VSS path wherever applicable.

General User

  1. Never send an image file using BMP format instead use jpg. (Sometime the diff in storage space if more than 7-8 times)
  2. Do not send attached any file unless and until it is mandatory. Still if required compress the file using any compression utility[Preferably WinZip] before sending.
  3. Try sending the attachments as separate mail instead of sending it with alongwith Invite.
  4. Try not to send attachments after office hours especially on Fridays as people will not access their mails on Saturday or Sunday and due to limited space allocated to mailboxes these mails itself can be bounced or let the other mails bounced if the mailbox is full.
  5. Take care while sending the meeting requests and choose the suitable time if the attendees are on different geographical locations.
  6. Always keep the recipients in TO list from whom you want a response and keep in CC all those who are being informed only.
  7. Use full signature while sending the mails. It should contain your name, Role, Project, Location and contact Details. It will help the recipient to reach you in some urgent cases.
  8. Use your email address in the signature as sometimes the recipient will get your Friendly name and not the email address in the TO/FROM fields.
  9. Use standard fonts (Arial, Verdana, Times New Roman, Courier etc) as you never know which email client is used by the recipient.

Here are some standard formats which can be used for email Subjects which contain maximum information in the subject line. Anything which is not applicable can be removed.

[Version Info][Document/eMail Catagory] Other contents

Samples
[20.0.1][LLD][Internal Review] Low Level Design for Document - Draft 0.A
[20.0.1][UTS][External Review] Unit testing Specification - Draft 0.A
[SignOff] Low Level Design for Document - Draft 0.A
[Request for Approval] Low Level Design for Document - Draft 0.A
[Authorised Issue] Low Level Design for Document - Issue 1.0
[20.0.1][Unit Testing] - Successfully Completed
[20.0.1][Unit Testing] - Issues Found
[20.0.1][System Testing] - Successfully Completed
[20.0.1][Performance Testing] - Issues Found

The above samples are just for informative purpose and can be changed accordingly. Hope we can get a lot of benefit by using these simple tips. Send me if you have some more tips to add.

Monday, April 23, 2007

Utility to get the folder sizes in Windows.........

A Utility to get the folder sizes in Windows - Version 1.0.0

This utility is made to get a list of subfolders in a drive or directory with their sizes. The facility is not provided in windows to determine the size of all the subfolders. This Utility can be useful when we want to delete or move some unwanted folders which are taking a lot of space on our disk. This is a freeware, you can distribute it without making a modification.

How to Use
1. Run this utility.
2. Update the Directory list, change the drive from Drop down List.
3. Change the folder, you wish to check with it's subfolders.
4. Double click on the folder name so that it updates the text box.
5. Press Start button to get a list of folders with their sizes.
6. Press YES if you wish to store the information in a text file in C: Drive.
7. Press No if do not wish to store the data in some file.
8. Export to a File button can also be used to store the information of the grid to a file.
9. End button to end the application.

Note :- Please do not give C: D: E: i.e. any drive, it may take a lot of time depending upon the size of the drive and the folders it contain.

Suggestions are always welcome for improvements.

DownLoad Link
http://www.filecrunch.com/file/~aeo7rk

Mail me on vinod.riya@gmail.com if you are unable to download the software from the above link and i will send you a copy via mail.

Wednesday, February 21, 2007

Absolutely Free!!!!!!!!!!!!!..........WOW

Want to get FREE iPods, Latest Mobiles and much more. Simply click on the below link and win lots of gifts... so HURRY up.........

http://www.xpango.com?ref=90180637

Register on this site and choose the gift u want and that's done...

Friday, December 22, 2006

Why ?

Why do we do aarati?

Towards the end of every ritualistic worship (pooja or bhajan) of the Lord or to welcome an honored guest or saint, we perform the aarati. This is always accompanied by the ringing of the bell and sometimes by singing, playing of musical instruments and clapping.

It is one of the sixteen steps (shodasha upachaara) of the pooja ritual. It is referred to as the lighted lamp in the right hand, which we wave in a clockwise circling movement to light the entire form of the Lord.

Each part is revealed individually and also the entire form of the Lord. As the light is waved we either do mental or loud chanting of prayers or simply behold the beautiful form of the Lord, illumined by the lamp. At the end of the aarati we place our hands over the flame and then gently touch our eyes and the top of the head.

We have seen and participated in this ritual from our childhood. Let us find out why we do the aarati?

Having worshipped the Lord of love - performing abhisheka, decorating the image and offering fruits and delicacies, we see the beauty of the Lord in all His glory. Our minds are focused on each limb of the Lord as the lamp lights it up. It is akin to silent open-eyed meditation on His beauty. The singing, clapping, ringing of the bell etc. denote the joy and auspiciousness, which accompanies the vision of the Lord.

Aarati is often performed with camphor. This holds a telling spiritual significance. Camphor when lit, burns itself out completely without leaving a trace of it. It represents our inherent tendencies (vaasanas). When lit by the fire of knowledge which illumines the Lord (Truth), our vaasanas thereafter burn themselves out completely, not leaving a trace of ego which creates in us a sense of individuality that keeps us separate from the Lord.

Also while camphor burns to reveal the glory of Lord, it emits a pleasant perfume even while it sacrifices itself. In our spiritual progress, even as we serve the guru and society, we should willingly sacrifice ourselves and all we have, to spread the "perfume" of love to all. We often wait a long while to see the illumined Lord but when the aarati is actually performed, our eyes close automatically as if to look within. This is to signify that each of us is a temple of the Lord.

Just as the priest reveals the form of the Lord clearly with the aarati flame, so too the guru reveals to us the divinity within each of us with the help of the "flame" of knowledge (or the light of spiritual knowledge). At the end of the aarati, we place our hands over the flame and then touch our eyes and the top of the head. It means - may the light that illuminated the Lord light up my vision; may my vision be divine and my thoughts noble and beautiful.

The philosophical meaning of aarati extends further. The sun, moon, stars, lightning and fire are the natural sources of light. The Lord is the source of this wonderous phenomenon of the universe. It is due to Him alone that all else exist and shine. As we light up the Lord with the flame of the aarati, we turn our attention to the very source of all light, which symbolizes knowledge and life.

Also the sun is the presiding deity of the intellect, the moon, that of the mind, and fire, that of speech. The Lord is the supreme consciousness that illuminates all of them. Without Him, the intellect cannot think, nor can the mind feel nor the tongue speaks. The Lord is beyond the mind, intellect and speech. How can this finite equipment illuminate the Lord? Therefore, as we perform the aarati we chant;

Na tatra suryo bhaati na chandra taarakam
Nemaa vidyuto bhaanti kutoyamagnib
Tameva bhaantam anubhaati sarvam
Tasya bhasa sarvam idam vibhaati

He is there where the sun does not shine,
Nor the moon, stars and lightning.
then what to talk of this small flame (in my hand),
Everything (in the universe) shines only after the Lord,
And by His light alone are we all illumined.

Sunday, December 17, 2006

Blessed with a Daughter

I am very pleased to announce that i am blessed with a little angel on 4th Nov, 2006. My baby and Wife are fine. Her name is SANVI (it is an another name of GODDESS Luxmi). Here is her photograph.

Friday, December 08, 2006

My Favourite Poem एक बूँद

एक बूँद ज्यों निकल कर बादलों की गोद से
थी अभी एक बूँद कुछ आगे बढ़ी
सोचने फिर-फिर यही जी में लगी,
आह ! क्यों घर छोड़कर मैं यों कढ़ी ?

देव मेरे भाग्य में क्या है बदा,
मैं बचूँगी या मिलूँगी धूल में ?
या जलूँगी फिर अंगारे पर किसी,
चू पडूँगी या कमल के फूल में ?

बह गयी उस काल एक ऐसी हवा
वह समुन्दर ओर आई अनमनी
एक सुन्दर सीप का मुँह था खुला
वह उसी में जा पड़ी मोती बनी ।

लोग यों ही हैं झिझकते, सोचते
जबकि उनको छोड़ना पड़ता है घर
किन्तु घर का छोड़ना अक्सर उन्हें
बूँद लौं कुछ और ही देता है कर ।

Monday, October 30, 2006

Just Started

Well, I have been considering having my own blog for a long while but never got around to create an account and start indulging. I guess the idea of having to express your thoughts and sharing it to the world wasn't exactly comforting, but let's give it a try. Will be back soon with a lot about my life.