Friday, January 17, 2014

Dr. Abdul Kalam's Letter to Every Indian


Why is the media here so negative? 
Why are we in India so embarrassed to recognize our own strengths, our achievements? 
We are such a great nation. We have so many amazing success stories but we refuse to acknowledge them. Why? 

We are the first in milk production. 
We are number one in Remote sensing satellites.
We are the second largest producer of wheat. 
We are the second largest producer of rice. 

Look at Dr. Sudarshan , he has transferred the tribal village into a self-sustaining, self-driving unit.
There are millions of such achievements but our media is only obsessed in the bad news and failures and disasters. 

I was in Tel Aviv once and I was reading the Israeli newspaper. It was the day after a lot of attacks and bombardments and deaths had taken place. The Hamas had struck. But the front page of the newspaper had the picture of a Jewish gentleman who in five years had transformed his desert into an orchid and a granary. It was this inspiring picture that everyone woke up to. The gory details of killings, bombardments, deaths, were inside in the newspaper, buried among other news.

In India we only read about death, sickness, terrorism, crime..          
Why are we so NEGATIVE?

Another question: Why are we, as a nation so obsessed with foreign things?
We want foreign T.Vs, we want foreign shirts. We want foreign technology. Why this obsession with everything imported.

Do we not realize that self-respect comes with self-reliance?

I was in Hyderabad giving this lecture, when a 14 year old girl asked me for my autograph. I asked her what her goal in life is. She replied: I want to live in a developed India. For her, you and I will have to build this developed India. You must proclaim. India is not an under-developed nation; it is a highly developed nation.

YOU say that our government is inefficient.
YOU say that our laws are too old. 
YOU say that the municipality does not pick up the garbage. 
YOU say that the phones don't work, the railways are a joke.
YOU say the airline is the worst in the world, mails never reach their destination. 
YOU say that our country has been fed to the dogs and is the absolute pits. 
YOU say, say and say.

What do YOU do about it? 

Take a person on his way to Singapore.
Give him a name - 'YOURS'. Give him a face - 'YOURS'.

YOU walk out of the airport and you are at your International best. In Singapore you don't throw cigarette butts on the roads or eat in the stores.

YOU are as proud of their Underground links as they are. You pay $5 (approx. Rs. 60) to drive through Orchard Road (equivalent of Mahim Causeway or Pedder Road) between 5 PM and 8 PM.

YOU come back to the parking lot to punch your parking ticket if you have over stayed in a restaurant or a shopping mall irrespective of your status identity…

In Singapore you don't say anything, DO YOU?

YOU wouldn't dare to eat in public during Ramazan, in Dubai
YOU would not dare to go out without your head covered in Jeddah. 

YOU would not dare to buy an employee of the telephone exchange in London at 10 pounds (Rs.650) a month to, 'see to it that my STD and ISD calls are billed to someone else.'

YOU would not dare to speed beyond 55 mph (88 km/h) in Washington and then tell the traffic cop, 'Jaanta hai main kaun hoon (Do you know who I am?). I am so and so's son. Take your two bucks and get lost.'

YOU wouldn't chuck an empty coconut shell anywhere other than the garbage pail on the beaches in Australia and New Zealand.

Why don't YOU spit Paan on the streets of Tokyo ?
Why don't YOU use examination jockeys or buy fake certificates in Boston ???
We are still talking of the same YOU.

YOU who can respect and conform to a foreign system in other countries but cannot in your own.
YOU who will throw papers and cigarettes on the road the moment you touch Indian ground.





If you can be an involved and appreciative citizen in an alien country, why cannot you be the same here in India? 

In America every dog owner has to clean up after his pet has done the job. Same in Japan.

Will the Indian citizen do that here?' He's right.

We go to the polls to choose a government and after that forfeit all responsibility. We sit back wanting to be pampered and expect the government to do everything for us whilst our contribution is totally negative.

We expect the government to clean up but we are not going to stop chucking garbage all over the place nor are we going to stop to pick a up a stray piece of paper and throw it in the bin.

We expect the railways to provide clean bathrooms but we are not going to learn the proper use of bathrooms. 

We want Indian Airlines and Air India to provide the best of food and toiletries but we are not going to stop pilfering at the least opportunity. This applies even to the staff who is known not to pass on the service to the public. When it comes to burning social issues like those related to women, dowry, girl child! and others, we make loud drawing room protestations and continue to do the reverse at home.

Our excuse?

'It's the whole system which has to change, how will it matter if I alone forego my sons' rights to a dowry.'
So who's going to change the system? 

What does a system consist of? Very conveniently for us it consists of our neighbors, other households, other cities, other communities and the government.

But definitely not me and YOU.

When it comes to us actually making a positive contribution to the system we lock ourselves along with our families into a safe cocoon and look into the distance at countries far away and wait for a Mr.Clean to come along & work miracles for us with a majestic sweep of his hand or we leave the country and run away.

Like lazy cowards hounded by our fears we run to America to bask in their glory and praise their system.


When New York becomes insecure we run to England. When England experiences unemployment, we take the next flight out to the Gulf. When the Gulf is war struck, we demand to be rescued and brought home by the Indian government.

Everybody is out to abuse and rape the country. Nobody thinks of feeding the system. Our conscience is mortgaged to money. Dear Indians, The article is highly thought inductive, calls for a great deal of introspection and pricks one's conscience too…. I am echoing J. F. Kennedy's words to his fellow Americans to relate to Indians….. 'ASK WHAT WE CAN DO FOR INDIA AND DO WHAT HAS TO BE DONE TO MAKE INDIA WHAT AMERICA AND OTHER WESTERN COUNTRIES ARE TODAY'. Let’s do what India needs from us.



- Dr. A.P.J. Abdul Kalam.




Saturday, April 6, 2013

The importance of hardware innovation...and open source hardware.


The importance of hardware innovation...and open source hardware.
..[extended re-post of my g+ post]
Why hardware innovation is so important?
Over the internet not too many people discuss about hardware. while discussion of software and lots of other stuffs are ubiquitous.
Now having a pc, laptop or mobile etc.. are part and parcel of millions of people's life. They all are primarily hardware, and the software, starting from os to the cool apps all reside on the top of the very hardware device.
Well, i am not extending to all kind of hardware world,
But i would like to take interest in the day to day basis used hand in hand hardware devices, like laptop, mobile. tablet etc.. that has a huge User base.. and worth take importance.

What do we have till date. lets take example of the laptops, that would be enough for this topic.

Apple is one of the leading quality laptop makers. Its great. Other popular are Dell, HP, Samsung etc..Google has also released Chromebook as a new starter, not available everywhere though. Some Indian names HCL Infosystems, Wipro, Zenith etc are worth mentioning.

It sounds great that there are lots of laptop makers and there should be no problem at all for users, that they have lots of option as per their need, affordability, brand..etc.

So far so good, then why am i extending here onwards. it is because it only happy part of the story.
Now lets look at the pain part of the story.
Ok, great you have a laptop working nice, great feature, great look, great software.. etc
..and then start troubling, feature not working, virus attacked, system crushed and shutdown!!

What now, well i am pretty sure everybody is not a hardware technician. They will reach out to service center or get a technician to repair. But that doesn't ensure your laptop will come out healthy as before. And lots of people doesn't want to place their laptops to service centers' den. It is because they might temper with other untroubled original parts and there people don't trust too much. Apple still have a more trusted support system with APP. but apple is too costly for everyone. But the other pc markets are placed so badly that it is very difficult to get even a small part when required and brands are not compatible with each other.

Here the users fall into prey, they give-up and look for a new one. They give up  for small part, that should have never been so. Imagine your laptop stuck just for the malfunction of its fan, how frustrating. The pc markers are not user friendly at all. And the worst part is hundreds and thousands of laptops go into trash for no valid reason, creating lots of non bio-degradable electronic waste. That is not good to know about.

Google has released Chromebook as new hardware player, but it is not there yet and also not available everywhere. The other pc makers doesn't seem to change their policy as of now.

Hardware is not software you will download, install or uninstall whenever you want.
So how to make an user friendly hardware. The answer is open source hardware.
I was very pleased when i first came to know about Limor Fried, an MIT grad,
who first announced the idea of open source hardware and she provides lots of them as open source and allow to manufacturer everyone.
http://adafruit.com/
http://en.wikipedia.org/wiki/Limor_Fried

Well, it will be good if people start to think of hardware rather seriously. It is more earthly thing. It is not possible make a machine run forever. But its life can be increased much more than it is now. The number of users will be increasing from here onwards. So, longer life hardware will generate less garbage as well.

It is not an unprofitable also, they can't be download and installed. It has to be manufactured and tested. And people always look for original manufacturer. Whoever uses the open source, they have to test it and make a trustworthy name of themselves,e.g there are lots Linux OS, but people seems to like Ubuntu more than others. Lots of people can contribute and add improvement and enchantments. There can be different manufacturer and people wouldn't have to throw away their laptop for a small part.

We need longer life hardware not more electronic waste. Flexible to use is very important and more people will learn more easily about hardware internals.

Ok with software, but not ok with hardware yet.
So, people.. use your valuable head and resource to improve the very familiar laptops.
Make computers people can trust, they are not meant for data centers or server rooms only.

Lets have some flavor of most popular os and see some good and downside of them. It is relevant to discuss about them here, as they are the primary software for the machines.

1) Windows OS:
Normally windows mean the computer to most people, It is most user friendly, almost everything is made possible with mouse click. It is made fantastic and addictive enough. Other than the hardcore developers and server side people, most of them will stick to it. Windows have server version also, but i am not sure about its popularity.
Downside:
There are lots downside, here are commonly known..
Vulnerable to virus attack, there are lots of antivirus available though, ddl errors, most of time it needed to reboot while installing or updating something new. Command line and shell activities are not upto the mark. It has done some revamp of the command line with PowerShell on the newer version of windows.

2) Mac OS:
Mac OS is the built in apple machines. Apple machine are great hardware. It is quite stable, still placed better compared to the other peer hardware. It is a darling of graphic designers, showoff and fancy people..:). It is good for designers, do writing and presentation stuff, mostly the activities on the surface and visible part, single click installed software users like windows.There are unofficial workaround to use boot-camp and make double or triple boot, with windows and Linux along side. May be vmware or oracle virtualbox kind of tools can give more flexibility to use different os as per purpose. And there is not too much known issue of virus attack.
Downside:
Heats up very badly, cost is not so justified, start up anything takes frustratingly longer time than other machines such as windows. It may really burn head of command line geeks even for a simple installation. Although it is Unix based,  it is not as good as Linux, to do command line activities.
3) Linux OS:
Linus torvalds made the original kernel and the gnu provided other software package and accessories,  and together built Linux. That's why its sometimes called GNU/Linux. With times lots of people have built different kind Linux. All are open source distributed. It is just set of different directories rather than different drives on windows, anyone can scan through it, anyone interested can take the source code and tweak it and improve it. It is very secure and preferred for server side use. It is friend of the true geeks and command line freaks.
Downside:
It is not for computer beginners. Although lots desktop feature enhancement on graphics is happening, Its is yet catch up fans. Graphics designers are not big fan of them. Installation and maintenance is not so simple.

..and there are other OS such as Solaris, aix etc.

Evolution of virtualization is making tech life much easier. It is becoming easier to use portable OS  using such as oracle virtualbox or vmware workstation. You can run one os on another just like any other software tool, plug and play. If you want windows as primary OS and do some other stuff on Linux, it is much easier now, bit cumbersome though. You can use Linux as primary OS and use windows as virtual OS and vise-versa without creating bootable partition..

So, there.. the differentiator will be the underlying hardware, how stable it is, how high performance it is. The bigger challenge is building high performance and stable hardware.

Morale of the story: The capabilities are there and it can be improved, we don't need super human and super perfection.
All we need is HONESTY.

       
       
   
   

Monday, January 14, 2013

HTML 5 Testing

Hi there..:)

Hello there, html5 is rich with semantic tags..

Oh yeah, most of them just doesn't work yet..:)

I can have multiple header, do you mind ..:)

This is article symantic

yeah i can have caption inside table..
the old boring table remains the same..:) boring starts here..
boring table header1 boring table data1
boring table header2 boring table data2
boring table header3 boring table data3
boring table header4 boring table data4

New Semantic/Structural Elements

HTML5 offers new elements for better structure:

Tag Description
<article> Defines an article
<aside> Defines content aside from the page content
<bdi> Isolates a part of text that might be formatted in a different direction from other text outside it
<command> Defines a command button that a user can invoke
<details> Defines additional details that the user can view or hide
<summary> Defines a visible heading for a <details> element
<figure> Specifies self-contained content, like illustrations, diagrams, photos, code listings, etc.
<figcaption> Defines a caption for a <figure> element
<footer> Defines a footer for a document or section
<header> Defines a header for a document or section
<hgroup> Groups a set of <h1> to <h6> elements when a heading has multiple levels
<mark> Defines marked/highlighted text
<meter> Defines a scalar measurement within a known range (a gauge)
<nav> Defines navigation links
<progress> Represents the progress of a task
<ruby> Defines a ruby annotation (for East Asian typography)
<rt> Defines an explanation/pronunciation of characters (for East Asian typography)
<rp> Defines what to show in browsers that do not support ruby annotations
<section> Defines a section in a document
<time> Defines a date/time
<wbr> Defines a possible line-break


New Media Elements

HTML5 offers new elements for media content:

Tag Description
<audio> Defines sound content
<video> Defines a video or movie
<source> Defines multiple media resources for <video> and <audio>
<embed> Defines a container for an external application or interactive content (a plug-in)
<track> Defines text tracks for <video> and <audio>


The new <canvas> Element

Tag Description
<canvas> Used to draw graphics, on the fly, via scripting (usually JavaScript)


New Form Elements

HTML5 offers new form elements, for more functionality:

Tag Description
<datalist> Specifies a list of pre-defined options for input controls
<keygen> Defines a key-pair generator field (for forms)
<output> Defines the result of a calculation


Removed Elements

The following HTML 4.01 elements are removed from HTML5:

  • <acronym>
  • <applet>
  • <basefont>
  • <big>
  • <center>
  • <dir>
  • <font>
  • <frame>
  • <frameset>
  • <noframes>
  • <strike>
  • <tt>

At first i was happy with html5 release, then soon realized most of its feature are not supported by most browsers, and are still in development..

They say by 2025 html5 will be gain some maturity, but i find it difficult to believe this boring people..

Yeah they are boring

it is canvas section, you are lucky if it is working on your browser..

Your browser does not support canvas. Please upgrade to the latest version of Chrome, Firefox, or Safari.

This is aside, can you see it...

legal | privacy crap..:)

this is new footer semantic tags, your bore ends here..

happy html5..the dark horse of web world !!

Friday, March 2, 2012

Welcome to my small tech world.. my quick self reference.

This is for my own reference and maybe of some use for self learners, i suppose, but it is very arbitrary. I,ll keep as short as possible and will cover only a few topics.

Java is the programming language i started with.

What people say about it, "I am two pages in and i still have no idea what you are saying.. :)".

That's true, Java is a bit lengthy style language, but have patience it is really solid language when you have grabbed.

I came learn about java more than five years ago, a very modest child of James Gosling at Sun Micro-systems now adopted by Oracle corporation,

http://www.oracle.com/technetwork/java/index.html

Now a days a very large number of applications, open source projects build on java.

Java is good for heavyweight service applications to web based applications. Java provides almost all-in-one solution in very elegant and safe way.

Starting point:

First book on java : Java the Complete Reference by Herbert Schildt.

I feel this book is one of the best starting point for beginner to intermediate java programmers.

Online resource for core java programmers is the java site itself. http://docs.oracle.com/javase/tutorial/

Online resource for enterprise java programmers is the java site itself. http://docs.oracle.com/javaee/6/tutorial/doc/

Alright, if you are lazy and find yourself boring reading books, there ways for lazy people also.

There are lots video tutorial and trainings on YouTube and other online portals. Those are posted by highly knowledgeable and genuinely enthusiastic people who believe knowledge must be free and share to increase its sphere. Open source doesn't mean its free of cost, it is open to learn, use and contribute to make it even better.

In fact videos are more powerful than text anytime.

For movie lover people like me, it is the best way to learn with enjoyment :). Of course need to write code along-with the video.

There are lots good tutorials out there and many people will mention many other sources, i am mentioning a few of those i am aware of. Links may be removed by the admins, anyway there many others available, just need to spend a few minutes.

Here is a series for java beginners and intermediate by Bucky!

beginners videos: 1-87 starting with, [URL] http://bit.ly/ioqwX
intermediate videos: 1-27 starting point, [URL] http://bit.ly/iisQFN
Here is another very good series for beginners, http://www.caveofprogramming.com/category/java-video/

Java has extremely vast area of usage and so numerous open source projects build for different purpose.

As per our requirement we can employ different resources and frameworks to accomplish different task.
As per java developer a very strong core java is the first requirement, rest are build on this knowledge.

Core java is loosely comprised of programming basics and control structures, OOP or PIE, Collections Framework, Generics, Threads, Reflection, Annotation, Sockets, Swing, JDBC etc.

There are lots specialized books and online resources available for all of these
For example, a finest multithreading tutorial : http://www.caveofprogramming.com/category/java-video-tutorials-advanced/java-multithreading/

Java frameworks : Frameworks are readily usable software package that solves lots common and tedious problems.

There are lots of frameworks available, before using frameworks, first need to understand core technologies, that's for all programming language.

Most popular are spring, hibernate, struts, wicket etc.

To understand spring, need to understand the basic principle of dependency injection and what aspect means.
To understand struts, need to understand servlet, jsp, filter.. so on and so forth.
there are lots of books,forums, blogs and online materials available.

For spring, hibernate and struts2, here are two Indian brains teaching in tandem.
http://javabrains.koushik.org/ and another one ..http://java9s.com/
spring struts hibernate integration for older versions j2ee, struts 1.x, [URL] http://bit.ly/dtI3B1


Design a application:

Design Patterns are outcome lots of experience and long lasting rigorous work and observation, pattern of specific behavior. observation of success and failure.

Understand the patterns, and there is no single pattern that can be used to build a complex system. It is combination of many of them. We can also create pattern as per your own experience and observation.

Most famous book on design pattern, Gang Of Four- "Design Patterns"- Elements of Reusable Object-Oriented Software.
web resource, http://www.javacamp.org/designPattern/

Architecting an application:

Need to know the ground report, pros and cons before laying out a project. Lots of parameter matters, system requirement, suitable programming language, suitable framework. Understanding the point of failure. Load balance of real time running. programmatic and manual testing.
Need to know security, transactional, soa aspects.
A time span can be determined if all parameters are analyzed..and so as the cost of project.

PHP: [http://www.php.net/] Created by, Rasmus Lerdorf.

"Hey i saw you earlier somewhere".. yep that's true, its syntax are very similar to c and c++. in fact written in c.

If you are thinking about building a robust web application, this is a right choice.
PHP still dominates web application development worldwide.
But people who are building highly secure and safe systems, like banking and financial will not rely much on it.

Some popular php frameworks:

1)CodeIgniter, mysql apache web server
CodeIgniter is PHP based light weight MVC framework.
http://codeigniter.com/
http://codeigniter.com/wiki/Category:Help::Tutorials

2)Zend framework:
Very extensive and powerful PHP MVC framework.
Use screen-casts, learn zend from scratch, http://www.zendcasts.com/index/
While discussing PHP MySQL always comes into mentions, well they evoluted together. Apache web server commonly used web server for PHP web applications.
There are other frameworks also, cakephp, yii etc.

Python: [http://python.org/] Created by, Guido van Rossum

"This is plagiarism you cant just import essay..", very fantastic and quick language, no mess around, straight point to point.
Python is very good for those who do scientific research, quickly run program and analyze data etc.
Python looks very simple but extremely powerful language.
Python tutorial series [URL] http://bit.ly/zdjJQ1
There a few python frameworks, django is a good one, https://www.djangoproject.com/
django training : http://bit.ly/q6XU1b

I am also interested in ruby on rails, the screencasts are, http://railscasts.com
There other very popular languages and framework like asp dot net, perl etc.
Lots of tutorials available on http://net.tutsplus.com/

Shell Scripting:

"I don't have permission to read this..".

An important companion for system level command line geeks, most back-end process can be manipulated and maintained by using shell scripts.
http://www.freeos.com/guides/lsst/

SQL and PL/SQL:

"Listen up databases, tables, stored procedure, views.. i, ll not spare any of you, did you get that."
create, retrieve, update , delete [crud], is one of the most basically needed in many systems.
sql and pl/sql is language to perform these operations.
There is not much real value of any application if it has no persistence capability.

HTML/JavaScript/CSS:

"HTML is flower pot."

This are like food shelter and cloth for web, the visible part of most of www, and people forget to mention them..as you never care existence of air you breath.

Ajax and JavaScript frameworks:

Web 2.0 comes up with Ajax, web interact, web dynamism.
jQuery, Prototype, Script aculo us, YUI, Dojo.. etc.
jquery is the one i use, here is a tutorials series: [URL] http://bit.ly/nfivvZ

IDE:

eclipse, netsbeans, sts, dreamweaver(licence), myeclipse (license)
IDEs are one of the most important part of projects.
Save time, decrease error, increase productivity, increase maintainability.

Other knowledge exchange and debugging sources:

http://stackoverflow.com/
http://www.experts-exchange.com/

It is not necessary to know all of them right away. One has to be master of at least one programming language. But it is better to know more than one. Any technology
stream is extremely dynamic and adaptability is very important. If one programming language and related frameworks are mastered, it is relative easy to learn other
language and framework. Basic programming philosophy remains the same.

Should keep eyes open and be ready to adapt to changing dynamism. Using other language and frameworks, from localized or premise to cloud based platforms etc.

"Twitter was initially built on Ruby on Rails now migrated to another programming language called Scala."

There are lots of emerging technologies around, people create new language and build new framework to meet own purpose.

Like Nosql..MapReduce(hadoop)..HBase.. cloud..git-hub..cloud foundry.. etc.

Real life applications are much complicated lots of practice and integrity required.
Works exist because problems exist.

Some real world work (Professional):

There is actually don't have much real value of above discussions, if they are not applied in real world. i am mentioning a few of them.
And of course most of finest works are accomplished under some kind of stressful situations. There is no so shortcut for excellence. Lots of practice and lots of learn from mistakes required. If you are not making mistake you are not learning. Its very important to be a good team player and also be an independent performer.

Using java.

1) Reporting with Jasper Report with java. [http://jasperforge.org/projects/jasperreports]
- open source reporting tool, design a template manually or programatically design and populate in different format pdf, xls, csv etc.

2) Adobe Livecycle Pdf engine. design pdf form template, pdf server, driven by java application. [http://www.adobe.com/products/livecycle/]
- Adobe license server, highly secure pdf creator and can handle extremely large volume, but high license cost, banks prefers this kind of system.

3) SMS sending application, SMPP protocol and SMSC implementation (using logica open source). [http://opensmpp.logica.com/]
- Built sms sending application from scratch, can be customized to send sms in regional languages (unicode).

4) Admin portal using java/jee web technologies like, jsp and servlet. client side validation with spry ajax framework.
[http://www.oracle.com/technetwork/articles/javase/servlets-jsp-140445.html] [http://labs.adobe.com/technologies/spry/]
- a front end portal is required to manage, maintain application from front, used by administrator and marketing people.
- create content, view report, analyze performance and error.

5) Web services (JAXWS). Custom web service, DIT web service. [https://incometaxindiaefiling.gov.in/]
- Communication protocol mainly between application to application, can be build and customized using open sources, jaxws, axis, jaxrs
- DIT services application, application you can file income tax return in one click, no paperwork required, server is build by HP located at DIT in new delhi.
- Wrote a client application, details description are available on DIT user manual on DIT web site.

6) admin portal maintenance using java open source framework, spring , struts and hibernate.[http://www.springsource.org/][http://struts.apache.org/2.2.1/index.html] [http://www.hibernate.org/]
- working on newer versions they are better more flexible and extensible (struts2, spring3, hibernate3).
- all commonly required features are readily available, many design patterns are readily implemented for you. just learn to understand how to use them,
they are of great value.

6) PayPal payment gateway integration (express checkout and recurring). [https://www.paypal.com/]
- need to understand how paypal money transfer portal works, read paypal api documentation and other online forums.
- wrote application to that's, pluggable to any online portal, especially online shopping, very good for international business model.
- the buyer has is very happy, transaction fee is deducted from seller only :).
- good for personal money management, casual seller (without company), business purpose (with company name).

7) General purpose, xls and csv data file processing. [http://www.andykhan.com/jexcelapi/tutorial.html]
- java very good for general purpose usage, eg. xls processing, csv, xml, text and many more, there are lots

Using PHP:

1) sms application, custom operation portal development and maintenance using CodeIniter. [http://codeigniter.com/] [http://jquery.com/]
- codeigniter is a good framework to work with to create medium size web application, zend is better for big size web application.
- jquery core, ajax and ui features beautiful complement ui dynamism and usability.
- mysql is the best friend of php, in fact mysql evolved with php, earlier written for own blog portal now widely popular.

2) admin portal development for promotional sms application using CodeIgniter.[http://codeigniter.com/] [http://jquery.com/]
- while keeping back end heavy service application is written in java, codeigniter is the best way build web portal.
- classic example of java back end and php front end.
2) PayPal payment gateway integration (express check out and recurring, php version).[https://www.paypal.com/]
- paypal api avaiable in php, all discussed earlier are applicable here also.
3) sms pipes, send intranational and international smses. [http://nexmo.com/] [http://www.twilio.com/] [http://www.smsgupshup.com/] etc.
- as php is globally very popular, all of sms pipe apis are available in php.

Using Apex: salesforce crm

1) salesforce, trigger and scheduling on standard and custom object. [http://www.salesforce.com] [http://wiki.developerforce.com/page/Apex]
- salesforce is great cloud platform to start small scale business.
- apex, salesfoce programming language, is quite like java, there are lots application available on salesforce.
- new application, trigger, batch and scheduling can be done on salesforce.

Using Python:
1) Automated email sending application. [http://docs.python.org/library/email]
- email systems should be written as separate module, python is good choice.
2) Mail server interaction and processing. [http://docs.python.org/library/email.parser.html]
- pythons email apis are very rich. very good to build a robust interaction and processing of email servers like google, yahoo etc.
3) preliminary usage of django web framework. [https://www.djangoproject.com/]
- django is web framework build with python, very good choice for mobile based web platforms.
4) General purpose, text data file, csv file processing.
- python is usable for general purpose like text, csv and other flat data file processing

Databases:
1) Oracle 10g/express, mysql, mssql.
- Relational database system is most commonly used data storage.
- Data persisting is the most valuable process, we need data storage of some sort.
- sometime have to write extremely complex query or procedure to get desired results.

Shell scripting:
1) shell scripting. application maintenance and auto-run.
- they are not visible from outside, they play very important role in management, maintenance at console level activities.

Application and Web servers/containers:

1) Apache tomcat, Apache web server, Jboss, IBM Websphere, Weblogic.
- all web application need a container or server to host them.
- project setup and configuration on app servers, deployment, maintenance are part and parcel of software world.
- Most big organizations uses Websphere or weblogic to host and maintain large number of application using clustering ,security and optimization features.

Last but not the least, Platforms:

1) Windows, linux, linode cloud servers, salesforce cloud crm.
- There will always be systems either it is local, premise or cloud. need to know them well.
- understand the basics of hardware, networking etc.
- clouds relatively newer platforms, they need lots of studies, needs lots play around, lots of coding and usage of them.

That's all for today. i,ll discuss some other topic some other day. :).

Saturday, February 4, 2012

YOU CAN MAKE A HUGE DIFFERENCE TO THE INDIAN ECONOMY...

YOU CAN MAKE A HUGE DIFFERENCE TO THE INDIAN ECONOMY BY FOLLOWING FEW SIMPLE STEPS:-

Please spare a couple of minutes here for the sake of India.

I got this article from one of my friends, but it's true. I can see this in day to day life.

Here's a small example:-

Before 12 months 1 US $ = IND Rs 39
After 12 months, now 1 $ = IND Rs 50

Do you think US Economy is booming? No, but Indian Economy is Going Down.

Our economy is in your hands....

INDIAN economy is in a crisis. Our country like many other ASIAN countries, is undergoing a severe economic crunch. Many INDIAN industries are closing down. The INDIAN economy is in a crisis and if we do not take proper steps to control those, we will be in a critical situation.


More than 30,000 crore rupees of foreign exchange are being siphoned out of our country on products such as cosmetics, snacks, tea, beverages, etc... which are grown, produced and consumed here.


A cold drink that costs only 70 / 80 paisa to produce, is sold for Rs.9 and a major chunk of profits from these are sent abroad. This is a serious drain on INDIAN economy.


We have nothing against Multinational companies, but to protect our own interests we request everybody to use INDIAN products only atleast for the next two years. With the rise in petrol prices, if we do not do this, the Rupee will devalue further and we will end up paying much more for the same products in the near future.


What you can do about it?

1. Buy only products manufactured by WHOLLY INDIAN COMPANIES.
2. ENROLL as many people as possible for this cause.....


Each individual should become a leader for this awareness. This is the only way to save our country from severe economic crisis. You don't need to give-up your lifestyle. You just need to choose an alternate product.

All categories of products are available from WHOLLY INDIAN COMPANIES.

LIST OF PRODUCTS

COLD DRINKS:-

DRINK LEMON JUICE, FRESH FRUIT JUICES, CHILLED LASSI (SWEET OR SOUR), BUTTER MILK, COCONUT WATER, JAL JEERA, ENERJEE, and MASALA MILK...

INSTEAD OF COCA COLA, PEPSI, LIMCA, MIRINDA, SPRITE

BATHING SOAP:-
USE CINTHOL & OTHER GODREJ BRANDS, SANTOOR, WIPRO SHIKAKAI, MYSORE SANDAL, MARGO, NEEM, EVITA, MEDIMIX, GANGA , NIRMA BATH & CHANDRIKA

INSTEAD OF LUX, LIFEBUOY, REXONA, LIRIL, DOVE, PEARS, HAMAM, LESANCY, CAMAY, PALMOLIVE


TOOTH PASTE:-
USE NEEM, BABOOL, PROMISE, VICO VAJRADANTI, PRUDENT, DABUR RED & OTHER DABUR PRODUCTS, MISWAK

INSTEAD OF COLGATE, CLOSE UP, PEPSODENT, CIBACA, FORHANS, MENTADENT.


TOOTH BRUSH: -
USE PRUDENT, AJANTA , PROMISE

INSTEAD OF COLGATE, CLOSE UP, PEPSODENT, FORHANS, ORAL-B

SHAVING CREAM:-
USE GODREJ, EMAMI

INSTEAD OF PALMOLIVE, OLD SPICE, GILLETE


BLADE:-
USE SUPERMAX, TOPAZ, LAZER, ASHOKA

INSTEAD OF SEVEN-O -CLOCK, 365, GILLETTE


TALCUM POWDER:-
USE SANTOOR, GOKUL, CINTHOL, WIPRO BABY POWDER, BOROPLUS

INSTEAD OF PONDS, OLD SPICE, JOHNSON'S BABY POWDER, SHOWER TO SHOWER


MILK POWDER:-
USE INDIANA, AMUL, AMULYA

INSTEAD OF ANIKSPRAY, MILKANA, EVERYDAY MILK, MILKMAID.


SHAMPOO:-
USE LAKME, NIRMA, VELVETTE

INSTEAD OF HALO, ALL CLEAR, NYLE, SUNSILK, HEAD AND SHOULDERS, PANTENE

MOBILE CONNECTIONS:-
USE BSNL, AIRTEL

INSTEAD OF HUTCH

Food Items:-
Eat Vada Pav, Idli, Dosa, Puri, Uppuma

INSTEAD OF KFC, MACDONALD'S, PIZZA HUT, A&W

Every INDIAN product you buy makes a big difference. It saves INDIA. Let us take a firm decision today.


BUY INDIAN TO BE INDIAN - We are not against of foreign products.

WE ARE NOT ANTI-MULTINATIONAL. WE ARE TRYING TO SAVE OUR NATION. EVERY DAY IS A STRUGGLE FOR A REAL FREEDOM. WE ACHIEVED OUR INDEPENDENCE AFTER LOSING MANY LIVES.
THEY DIED PAINFULLY TO ENSURE THAT WE LIVE PEACEFULLY. THE CURRENT TREND IS VERY THREATENING.


MULTINATIONALS CALL IT GLOBALIZATION OF INDIAN ECONOMY. FOR INDIANS LIKE YOU AND ME, IT IS RE-COLONIZATION OF INDIA. THE COLONIST'S LEFT INDIA THEN. BUT THIS TIME, THEY WILL MAKE SURE THEY DON'T MAKE ANY MISTAKES.


WHO WOULD LIKE TO LET A "GOOSE THAT LAYS GOLDEN EGGS" SLIP AWAY?


PLEASE REMEMBER: POLITICAL FREEDOM IS USELESS WITHOUT ECONOMIC INDEPENDENCE


RUSSIA, S.KOREA, MEXICO - THE LIST IS VERY LONG!! LET US LEARN FROM THEIR EXPERIENCE AND FROM OUR HISTORY. LET US DO THE DUTY OF EVERY TRUE INDIAN.


FINALLY, IT'S OBVIOUS THAT YOU CAN'T GIVE UP ALL OF THE ITEMS MENTIONED ABOVE. SO GIVE UP AT LEAST ONE ITEM FOR THE SAKE OF OUR COUNTRY!


"LITTLE DROPS MAKE A GREAT OCEAN."

PLEASE BE AN INDIAN.....

Sunday, September 18, 2011

Cloud Computing – Demystifying SaaS, PaaS and IaaS.

Three Approaches to Cloud Computing: Understanding IaaS, SaaS, and PaaS.

Cloud computing is Internet-based computing, whereby shared servers provide resources, software, and data to computers and other devices on demand, as with the electricity grid. Cloud computing is a natural evolution of the widespread adoption of virtualization, service-oriented architecture and utility computing. Details are abstracted from consumers, who no longer have need for expertise in, or control over, the technology infrastructure “in the cloud” that supports them. Cloud computing describes a new supplement, consumption, and delivery model for IT services based on the Internet, and it typically involves over-the-Internet provision of dynamically scalable and often virtualized resources. It is a byproduct and consequence of the ease-of-access to remote computing sites provided by the Internet. This frequently takes the form of web-based tools or applications that users can access and use through a web browser as if it were a program installed locally on their own computer.


The idea behind any cloud computing proposal is for you to pay only for what you use, scaling up or down according to business needs. Vendors supporting cloud computing can interpret this statement differently, providing varying levels of services to achieve this result. The three approaches to cloud computing are Infrastructure as a Service (IaaS), Software as a Service (SaaS), and Platform as a Service (PaaS).

Infrastructure as a Service

Some vendors provide the infrastructure to build solutions, and you rent the hardware such as servers, load balancers, a firewall, and cables. You then configure these remotely and install your solutions on them. You can scale up by requesting more servers and reconfiguring the load balancer without purchasing more hardware. You can scale down at any time by reconfiguring the infrastructure you rented from the cloud service provider. This vendor approach is called Infrastructure as a Service (IaaS) because a customer can rent the infrastructure without having to forecast and provision for the highest possible demand in advance. In this approach, you are
responsible for correctly configuring the rented infrastructure.

These are the most important points to remember about IaaS:
The lower levels of the stack are managed by the vendor.Very few vendors actually provide an operating system. You are still responsible for managing everything, from the operating system to the applications.The obvious benefit of IaaS is that it frees you from the concerns of provisioning many physical or virtual machines.

Software as a Service

In another approach, you can rent a service offered by the vendor and then configure the service by using the interface provided by the vendor, without having to know what infrastructure the vendor uses to provide that service. This approach is called Software as a Service (SaaS) because you pay to use defined services. For example, Microsoft Exchange Online carries a per-mailbox charge. To configure it, you use a web application supplied by the vendor to request mailboxes, and name and dimension them. You receive a password for that user and nothing else is necessary—users can access their mailboxes immediately.
This proposed interface has little in common with the on-premises version of Microsoft Exchange. In an SaaS model, you do not have control over nor are you responsible for the hardware on which the service is installed. Similarly, you have no control over the operating system that runs the service, nor any control over the software apart from what the web user interface exposes to you. In other words, a vendor provides everything required to run the application, shielding you from all the underlying components.

Platform as a Service

The third approach is Platform as a Service, or PaaS. In this approach, you rent a platform on which you deploy your applications without configuring the infrastructure and without the limitations of the SaaS approach.Platform as a service (PaaS) is the delivery of a computing platform and solution stack as a service. PaaS offerings facilitate deployment of applications without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities, providing all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet.
PaaS offerings may include facilities for application design, application development, testing, deployment and hosting as well as application services such as team collaboration, web service integration and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation and developer community facilitation. These services may be provisioned as an integrated solution over the web.

The key concepts to remember when dealing with PaaS are:
The platform vendor provides and manages everything, from the network connectivity to the runtime.
PaaS offerings reduce the developer burden by supporting the platform runtime and related application services.
Developers can begin creating the business logic for applications almost immediately.
PaaS, compared to traditional hosting solutions, offers the potential for significant productivity increases, because the cloud provider manages all the hardware and operational aspects of the cloud platform.

This definition points out two important aspects of these offerings: the usage of distributed resources (IaaS, SaaS, and PaaS), and the abstraction of the underlying technology from the developers. You already learned about the first aspect. The second aspect is important because you can manage abstracted resources such as distributed storage without having to know much technical detail about how to configure it, secure it, and distribute it.

This is repost from http://answers.oreilly.com/topic/2868-three-approaches-to-cloud-computing-understanding-iaas-saas-and-paas/

Wednesday, August 31, 2011

The 90-10 principle is incredible:

Discover the 90/10 Principle..reduce stress of busy schedule.

It will change your life (at least the way you react to situations).
What is this principle? 10% of life is made up of what happens to you. 90% of life is decided by how you react.
What does this mean? We really have no control over 10% of what happens to us.
We cannot stop the car from breaking down. The plane will be late arriving, which throws our whole schedule off. A driver may cut us off in traffic.
We have no control over this 10%. The other 90% is different. You determine the other 90%.
How? ……….By your reaction.
You cannot control a red light. but you can control your reaction. Don't let people fool you; YOU can control how you react.
Let's use an example.
You are eating breakfast with your family. Your daughter knocks over a cup of coffee onto your business shirt. You have no control over what just happened.
What happens next will be determined by how you react.
You curse.
You harshly scold your daughter for knocking the cup over. She breaks down in tears. After scolding her, you turn to your spouse and criticize her for placing the cup too close to the edge of the table. A short verbal battle follows. You storm upstairs and change your shirt. Back downstairs, you find your daughter has been too busy crying to finish breakfast and get ready for school. She misses the bus.
Your spouse must leave immediately for work. You rush to the car and drive your daughter to school. Because you are late, you drive 40 miles an hour in a 30 mph speed limit.
After a 15-minute delay and throwing $60 traffic fine away, you arrive at school. Your daughter runs into the building without saying goodbye. After arriving at the office 20 minutes late, you find you forgot your briefcase. Your day has started terrible. As it continues, it seems to get worse and worse. You look forward to coming home.
When you arrive home, you find small wedge in your relationship with your spouse and daughter.
Why? …. Because of how you reacted in the morning.
Why did you have a bad day?
A) Did the coffee cause it?
B) Did your daughter cause it?
C) Did the policeman cause it?
D) Did you cause it?
The answer is "D".
You had no control over what happened with the coffee. How you reacted in those 5 seconds is what caused your bad day.
Here is what could have and should have happened.
Coffee splashes over you. Your daughter is about to cry. You gently say, "Its ok honey, you just need to be more careful next time". Grabbing a towel you rush upstairs. After grabbing a new shirt and your briefcase, you come back down in time to look through the window and see your child getting on the bus. She turns and waves. You arrive 5 minutes early and cheerfully greet the staff. Your boss comments on how good the day you are having.
Notice the difference?
Two different scenarios. Both started the same. Both ended different.
Why?
Because of how you REACTED.
You really do not have any control over 10% of what happens. The other 90% was determined by your reaction.
Here are some ways to apply the 90/10 principle. If someone says something negative about you, don't be a sponge. Let the attack roll off like water on glass. You don't have to let the negative comment affect you!
React properly and it will not ruin your day. A wrong reaction could result in losing a friend, being fired, getting stressed out etc.
How do you react if someone cuts you off in traffic? Do you lose your temper? Pound on the steering wheel? A friend of mine had the steering wheel fall off) Do you curse? Does your blood pressure skyrocket? Do you try and bump them?
WHO CARES if you arrive ten seconds later at work? Why let the cars ruin your drive?
Remember the 90/10 principle, and do not worry about it.You are told you lost your job.Why lose sleep and get irritated? It will work out. Use your worrying energy and time into finding another job.The plane is late; it is going to mangle your schedule for the day. Why take outpour frustration on the flight attendant? She has no control over what is going on. Use your time to study, get to know the other passenger. Why get stressed out? It will just make things worse.
Now you know the 90-10 principle. Apply it and you will be amazed at the results. You will lose nothing if you try it. The 90-10 principle is incredible. Very few know and apply this principle.
The result?
Millions of people are suffering from undeserved stress, trials, problems and heartache. We all must understand and apply the 90/10 principle.

It CAN change your life!!!

Enjoy….