Monday 29 December 2014

Jan Creater of Whatsapp

From Welfare to WhatsApp

Jan ( co-founder whatsapp) , who turns 38 this year, was just a teenager when he emigrated to the U.S. from a small village outside Kiev, Ukraine. Life in rural Kiev, a city that is currently rife with political tension and mass protests, was not easy. Jan's home had no hot water, and his parents refused to use the phone, which was tapped by the government. Once in the U.S., he taught himself computer networking by reading manuals bought from a used bookstore.
In 1997, he met his future WhatsApp cofounder, Brian, who convinced Jan to join Yahoo! even though he was still in college. Jan became an infrastructure engineer at Yahoo! and dropped out of San Jose State University. The two still describe themselves as "two guys who spent combined 20 years doing geeky stuff at Yahoo! Inc. before starting WhatsApp Inc." on the company's About page.
The Forbes piece includes a photo of Jan signing the billion-dollar Facebook deal on the doors of his old welfare office in Mountain View, Calif.—a perfect full-circle summation of his rags-to-riches journey.

whatsapp



A Company With A Unique Vision




WhatsApp had a completely refreshing outlook on messaging between smartphones. Privacy was Jan's priority, first and foremost. The service has remained largely the same since 2009, with just a few more bells and whistles in its latest incarnation.
A user does not have to submit information like his or her name, gender, address, or age—just a phone number. No fancy username is required for WhatsApp; users log in with a 10-digit number. WhatsApp borrowed elements from instant messaging like status updates and "read" receipts (long before iMessage incorporated that feature).
Jan was interested in disrupting the way cell phone carriers nickeled-and-dimed customers for text messaging, which was especially useful for those looking to connect with loved ones overseas. The app quickly built a following in Europe and other international communities. By early 2011, WhatsApp was an App Store superstar, reaching the top 20, and has remained in the top 10 free apps ever since.

story of creater of whatsapp



REJECTED BY FACEBOOK
REJECTED BY TWITTER
CREATED WHATsAPP

Brian Acton ....A Person that is Vice President of Engineering At Yahoo . Left the job then Applied for Facebook Rejected there then started working on world's best messaging app


A FAILURE NOT A DEFEAT

This Amazing pic above tells you everything . The person in the pic is 'BRIAN ACTON' The Creater of WhatsApp ( The Best cross-platform Mobile Messaging App ) .

It is the destiny that a person that applied for job in Facebook is rejected in 2009 and The same person with his team and with an awesome Idea Sold WhatsApp To Facebook for jaw-dropping deal of $19 billion

It clearly states Intelligence can never be stopped . IF you can think then that's all that you need to have .......




So from the pic all is clerified . Yes two months before Rejection from Facebook , Brian Acton The Creater of WhatsApp was Rejected from Twitter . That means Failures and Failures don't mean Defeat .

But the app's success did not come at a small price. Founders Jan Koum and Brian Acton are no strangers to failure, and their incredible journey speaks volumes about the value of tenacity and vision. Today, Jan and Brian's app is now the most valuable messaging platform on the planet

Also Read -
whatsapp -- A Company With A Unique Vision

Jan - Creater of Whatsapp

Don't Forget to Subscribe and Share Us.

Thursday 25 December 2014

Microsoft HTTP/API port 80 is actually used


Microsoft HTTP/API 2.0 Using Port 80,
WAMP - Your port 80 is actually used , change port number in wamp


After Installation of Wamp you may suffer from an Error that says that Your Port 80 is actually used , change port number in wamp
I decided to sit and give a search on this error to finally find and share an optimal solution to this error . This error may come if you have already Installed IIS Server on your windows Computer .
you may see one of these Errors :

 "Microsoft HTTP/API 2.0" Using Port 80

 WAMP - Your port 80 is actually used 

Steps For Optimal Solution to this Error -


1.  Updating/configuring httpd.conf file
2.  Updating/configuring wampmanager.tpl file
3.  Updating/configuring testport.php file
4.  Updating/configuring testportForInstall.php file
5.  Checking http.exe Application

 Updating/configuring httpd.conf file

httpd.conf file is http configuration file for apache server . All apache configuration in wamp are stored in this file . This file contains the information regarding which port and server is to connect for making connection to Server .

As this error states the port 80 is already used so follow the steps below to change the port that apache is using currently

Steps For Change Apache Port Number In WAMP

  • Click on Wamp Icon on quick Launch Bar 
  • In popup Menu click on Apache and then in further menu click on httpd.conf
  • It will open httpd.conf file in your editor like you can use Notepad
  • Now Press Ctrl + f and find for lines given below :


#Listen 12.34.56.78:80
Listen 0.0.0.0:80
Listen [::0]:80

ServerName localhost:8080
  • Now Replace these lines with given below :

#Listen 12.34.56.78:8484
Listen 0.0.0.0:84
Listen [::0]:84

ServerName localhost:8484
  • Now it's done . Press Ctrl +s  to save all changes and close the httpd.conf file
  • Now again click on wamp icon in Quick Launch Bar and click On Restart All Services 

Updating/configuring wampmanager.tpl file

1. In order to find wampmanager.tpl file you need to go to following location .Like we have installed wamp in C drive then your wampmanager.tpl file location will be c:\wamp\wampmanager.tpl
2. Now open wampmanager.tpl file and press ctrl + f and find for 'testPort84' without quotes
3. Then replace -
testPort80 with atestPort84
4. Press ctrl + s to save changes and Close the File .

Updating/configuring testport.php file

Now we need to make changes to testport.php file . This file tests for whether the port 80 is available to install the apache service to that port . 

This file checks the socket port 80 for installation of apache service . use the simple steps below to configure testport.php file 

1. I will give you simple way to configure it Just open the file testport.php . File location will be available at C:\wamp\scripts\testport.php . Just open the file and replace all the test with text given below -

<?php
$fp = @fsockopen("127.0.0.1", 84, $errno, $errstr, 1);
   $out = "GET / HTTP/1.1\r\n";
   $out .= "Host: 127.0.0.1\r\n";
   $out .= "Connection: Close\r\n\r\n";
if ($fp)
{
    echo  'Your port 84 is actually used by :';
   fwrite($fp, $out);
   while (!feof($fp)) 
   {
        $line = fgets($fp, 128);
        if (ereg('Server: ',$line))
        {
           
            echo $line;
            $gotInfo = 1;
        }  
        }
    fclose($fp);
    if ($gotInfo != 1)
        echo 'Information not available (might be Skype).';
}
else
{
    echo 'Your port 84 is not actually used.';
}
echo 'Press Enter to exit...';
trim(fgets(STDIN));
?> 

 Updating/configuring testportForInstall.php file

Now we need to make changes to testportForInstall.php file . This file tests for whether the port 80 is available to install the apache service to that port . 

This file checks the socket port 80 for installation of apache service . use the simple steps below to configure testportForInstall.php file 

1. I will give you simple way to configure it Just open the file testport.php . File location will be available at C:\wamp\scripts\testportForInstall.php . Just open the file and replace all the test with text given below -

<?php
$fp = @fsockopen("127.0.0.1", 84, $errno, $errstr, 1);
   $out = "GET / HTTP/1.1\r\n";
   $out .= "Host: 127.0.0.1\r\n";
   $out .= "Connection: Close\r\n\r\n";
if ($fp)
{
           echo  'Your port 84 is actually used by :

';
   fwrite($fp, $out);
   while (!feof($fp)) 
   {
        $line = fgets($fp, 128);
        if (ereg('Server: ',$line))
        {
            echo $line;
            $gotInfo = 1;
        }
    
    }
    fclose($fp);
    if ($gotInfo != 1)
        echo 'Information not available (might be Skype).';
    echo '
Cannot install the Apache service, please stop this application and try again.

Press Enter to exit...';
trim(fgets(STDIN));
}
else
{
    echo 'Your port 84 is available, Install will proceed.';
    echo '

Press Enter to continue...';
    trim(fgets(STDIN));
}
?> 

Checking http.exe Application

you can find httpd.exe file at location - C:\wamp\bin\apache\apache2.4.9\bin\httpd.exe , if C is installed at C drive .

Double click on file it will open for a slight small amout of time and show you any error in first line if exist otherwise everything will be fine . If error exist then try to ensure you have done previous steps completely . As these are the final possible steps that may solve this problem


Tuesday 23 December 2014

Pass Data between Activity in Android


Hello Friends ,

Today I got one message from a person to tell him how to pass data between android activities So, I am going to give a simple way for how we can transfer data or how we can pass data across activities in android . In android we use activity for  each layout code .

I am using Mono Android for this article but that will similar functions in Dalvik android that is used with java based android applications .

Here are simple Steps How to Pass data between Activities in Android Using Csharp -

  1. Open Visual Studio . Click on File --> New Project -->
  2. Now choose Mono For Android and click on Android Application . Now Simple Android application will be created
  3. This project will create a single activity named MainActivity (MainActivity.cs), which contains a button.
  4. Add a second New activity class named Activity2 to the project. by right click on Solution Name and click on New then click on Android Activity leave the name as default and click on Ok  This class must inherit from Android.App.Activity .
  5. right click on layout folder inside Resource folder then click new and choose Android Layout give it a name and leave as default and click ok .
  6. In the button.Click handler in MainActivity.cs , create an intent for Activity2 , and add data to the intent by calling PutExtra and this data given in Put Extra will be transfered to Activity2 . Add the Code Below for that :-
 button.Click += delegate {
               // button.Text = string.Format("{0} clicks!", count++);
                var activity2 = new Intent(this, typeof(Activity2));
                activity2.PutExtra("MyData", "Data from Activity1");
                StartActivity(activity2);
            };
      
      7. Now Open you layout.xm file in Resource --> layout folder ( layout folder under resource folder ) . Add code below to it for Adding button under <linearlayout> tag :-

        <Button
        android:id="@+id/MyButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/Hello" />    string text = Intent.GetStringExtra

    8. Now add code below to Newly added Activity - activity2.cs under Activiy.Oncreate Method :-
            ("MyData") ?? "Data not available";
            string text1 = Intent.GetStringExtra("MyData");
            Button button = FindViewById<Button>(Resource.Id.MyButton);
            button.Text = text;

       9. Now Run the app by pressing F5 and see the output in emulator as below -
Pass Data between Activity in android 
10. Now click on button saying "Hello World,Click Me!" Now you will see New Avtivity Activity2 as below that contain the text that we have passed from activity Activity1

Pass Data between Activity in android 


Thursday 18 December 2014

Import dbf database in sqlserver



Steps For Importing Dbf database into Sql Server

There is no appropriate way or direct way to do that but nothing is impossible so there is workaround that can be done to perform this task . Here is the steps :-

  • First we have to convert the .dbf format data into .csv format data
  • Then depending on table structure Create the Table in database one by one 
  • Then using import bulk options of sql server that accept the data in csv format we can easily insert data in sql server

Convert DBF to CSV

DBF Converter allows you convert a single dbf file or folder with dbf files to csv format from GUI or command line.
1. Select the dbf file or foder with dbf files for batch conversion.
2. Select the output csv file or folder for csv files for batch conversion.

Download Software 
dbf to csv conversion


3. Preview, select options for sorting, filtering data (if necessary)
You can also select/unselect columns, set order for columns.
common options for dbf to csv conversion

4. Select options for csv format:columns delimiter, rows delimiter (if necessary), and click "Finish"

CSV file format options


Import CSV File Into SQL Server Using Bulk Insert


 CSV stands for Comma Separated Values, sometimes also called Comma Delimited Values.

Steps For Importing CSV in Sql server 

  • Create The table whose data we are going to import into database

USE TestData
GO
CREATE TABLE
CSVTest
(ID INT,
FirstName VARCHAR(40),
LastName VARCHAR(40),
BirthDate SMALLDATETIME)
GO


where TestData is database name and CSVTest is table name
  • I assume your .Csv file lies in c:\csvtest.txt and it contains data like this

    1,James,Smith,19750101
    2,Meggie,Smith,19790122
    3,Robert,Smith,20071101
    4,Alex,Smith,20040202




  • Then Run the following script in the query windows of sql server . Make sure your paths given are correct to .csv file

    Code


    BULK
    INSERT
    CSVTest
    FROM 'c:\csvtest.txt'
    WITH
    (
    FIELDTERMINATOR = ',',
    ROWTERMINATOR = '\n'
    )
    GO
    --Check the content of the table.
    SELECT *
    FROM CSVTest
    GO
    --Drop the table to clean up database.
    DROP TABLE CSVTest
    GO

    Snapshot








Saturday 13 December 2014

using git making pull request and troubleshoot errors

Today I am going to share some most simple and easy steps how to use git . 

How we can get a git repository data on our Personal computer 
How to make changes to these files and then how to propose that merging of files to repository from where you have downloaded it 
How to deal or remove some every basic errors that came during this process

So lets start --
  • First of all go to link of directory or as we say repository on github like i am doing this for a MonoWeb Repository on link below
                             https://github.com/mono/webiste
Ths repository is repository of official website of Mono https://www.mono-project.com/ 

  • First of the the thing you must have is gitbash . You can Download and setup gitbash from  here :-
1.  Download Git for Windows here:
I downloaded Git-1.7.6-preview20110708.exe. It contains the  full installer for official Git 1.7.6
2.  Follow the instructions here exactly as it says.
3.  Be sure to select these options:
- Use Git Bash only
- Checkout Windows-style, commit Unix-style line ending

After Succesfully instaling git . You will having gitbash application we will be using it in our futher article 

These steps will also give Solution to error that came during pull or pushing data to git or cloning data from git . follow these simple steps will be answer for that .

Errors like 


not a valid object name 'master'


First go to the website or file on github like i goto github.com/mono/webite and on the top there will something written Fork click on it then website will be forked to your github account like my repository is forked to  https://github.com/bhallaheemanshu/webiste

Step 1first create a directory say website



Step 2
get inside the directory using change directory command as show in image below 

Then clone the directory using following command with url from where you want to clone the data 


Step 3
now again website you are cloned will be cloned inside your website directory get inside it and fire the command to add upstream



Step 4
Now fetch the brancher available using fetch upstream command


Step 5 
Now Make some change to your files all the editing or insertion or new thing yo want to create

Step 6
Now pusht the repository you edited on your personal computer to the online repository to propose the changes
 

Step 7
Now all changes that i want to do are done and saved on my files that i have forked here at github.com/bhallaheemanshu/website

So to do them also on github.com/mono/website Login to your account and go to website repository or website original community like i am going to or goto link like i am going to github.com/mono/website  then click on pull requests then click on create pull request 
Then it choose your branch there and then it will show automatically what changes you are propsing then write the title and some summery and click on create . Now your request for proposing changes to online repository will be done












Setting Up Path Variable windows


Setting Up Path Variables For Ruby 

Setting Up Path Variables For Python

Path variables are must need to setup whenever you are installing some developement platforms like android , java , Python , Ruby .

Today i have some task related to installation of Ruby and using the jekyll for some configuration a website so I decided to taste the task

Here is the Installation procedure for installing Python , Installing Ruby and setting up jekyll

Setting Up Jekyll , Python , Ruby

To set up your path variables you follow these steps


  1. Right on mycomputer 
  2. click on properties 
  3. click on Advanced settings
  4. Click on Environment Variables
  5. Now Search for Path System variable
  6. and hit enter on it
  7. Now in value field fill values for python and ruby installation at end of values already filled

C:\ruby\bin;C:\Python27;C:\Python27\Scripts;


These values will be filled according to where you have installed Ruby and python

Installing Python and Easy_install


Today i am going to touch the Python . I am having some task regarding configuration of a website so for that i have to use Python . I have never used it . But as a Programmer Saying - 

The More Time We have Spent on First programming language More Fastly we can do other 

Today i am going to test this saying

So Lets get started with the work --

Install Python

  • First of all Go to http://www.python.org/download/
  • Download appropriate version of Python windows installer, e.g. Python 2.7.6 Windows Installer.I prefer to install python 2 as currently python 3 is creating some problem .

Install

  • For Python Installation Set the installation directory (e.g. C:\Python27) to PATH. (How to? See Troubleshooting #1)
  • Verify Python installation

python --version


Example output:

  • If your installation is done properly then it will show message as below .

Python 2.7.6


Install ‘Easy Install’


python “C:\ez_setup.py”


  • Add ‘Python Scripts’ directory (e.g. C:\Python27\Scripts) to PATH.

Install Pygments


  • Verify easy_install is installed properly

easy_install --version

  • Example output:

setuptools 3.1


Install Pygments using “easy_install”


easy_install Pygments

Installing jekyll on windows

Install Ruby

while installation of ruby you may suffer from some errors like

bundle-command-not-found-windows-x64

Following the steps below carefully will be answer to these errors

  • Go to http://rubyinstaller.org/downloads/
  • In RubyInstallers section, click a version to download.
  • For example, Ruby 2.0.0-p451 (x64) is the Windows installer for Ruby 2.0.0 x64 on 64-bit machines. These are installers that i am going to use.
  • Complete the installtion by going through installer that you have downloaded
  • At time of installing Keep the default directory  to C:\Ruby200-x64 if possible, please note installer advises that 'Please avoid any folder name that contains spaces (e.g. My Ruby).'
  • Markt he checkbox saying "Add Ruby executables to your PATH" , so PATH will be updated automatically to avoid headaches.
  • Open up a command prompt window by pressing ctrl + r from your keyword and type in cmd and hit enter this will open command prompt and type in the following command, to see if Ruby has been install correctly or not.

Ruby installtion Setting Up jekyll
Ruby Installation - Installing jekyll
                              

ruby -v                                                                              



Example output:
If ruby is installed correctly it will give you output as -

ruby 2.0.0p451 (2014-02-24) [x64-mingw32]


Install DevKit



  • The DevKit is a toolkit that makes it easy to build and use native C/C++ extensions for Ruby on Windows. 
  • Now first Go to http://rubyinstaller.org/downloads/ again.
  • Download “DEVELOPMENT KIT” installer that matches the Windows architecture and the Ruby version just installed. For instance, DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe is for 64-bit Windows with Ruby 2.0.0 x64. These are versions that i am using

  • Here is a list about how to choose the correct DevKit version:
  1. Ruby 1.8.6 to 1.9.3: DevKit tdm-32-4.5.2
  2. Ruby 2.0.0: DevKit mingw64-32-4.7.2
  3. Ruby 2.0.0 x64: DevKit mingw64-64-4.7.2
  • Run the installer and extract it to a folder, e.g. C:\DevKit.
  • Initialize and create config.yml file. Type in the following commands in command Prompt window:


cd “C:\DevKit”
ruby dk.rb init
notepad config.yml



  • In opened notepad window, add a new line - C:\Ruby200-x64 at the end, SAVEand close.



  • Back to the Command Prompt, review (optional) and install.


ruby dk.rb review

ruby dk.rb install


Install Jekyll



  • Verify that gem has been installed properly


gem -v


Example output:

2.0.14
Install Jekyll gem
gem install jekyll


Install Python

Here is link on my blog about its installation or you can follow steps below
Installing Python and Easy_install
  • First of all Go to http://www.python.org/download/
  • Download appropriate version of Python windows installer, e.g. Python 2.7.6 Windows Installer.I prefer to install python 2 as currently python 3 is creating some problem .


Install

  • For Python Installation Set the installation directory (e.g. C:\Python27) to PATH. (How to? See Troubleshooting #1)
  • verify Python installation

python --version


Example output:

  • If your installation is done properly then it will show message as below .

Python 2.7.6


Install ‘Easy Install’

  • Visit https://pypi.python.org/pypi/setuptools#installation-instructions for detailed installation instructions.
  • For Windows 7 machines, download ez_setup.py and SAVE it, for example, to C:\. Then run it using Python in a command prompt window:

python “C:\ez_setup.py”


  • Add ‘Python Scripts’ directory (e.g. C:\Python27\Scripts) to PATH.

Install Pygments

  • Verify easy_install is installed properly

easy_install --version

  • Example output:

Install Pygments using “easy_install”


easy_install Pygments


Start Jekyll



  • Following the commands on official Jekyll Quick-start guide, a new Jekyll blog should be created and can be browsed at localhost:4000.

jekyll new myblog
cd myblog
jekyll serve


  • Now Everything is done Everytime you want to Start you already built website or new website with jekyll you just start your command prompt navigate to your website's root directory like

cd mywebsite



  • Then type in :-  'jekyll serve' and that's it yout server will be started in few seconds and after that you can navigate to your browser with url as -

http://localhost:4000/

Setting Up Path Variables For Python and Ruby




Saturday 6 December 2014

Mind Blowing Interesting facts about Google


Google Timer

You can set a timer on Google (and get an alarm to sound when time is up) by Googling any amount of time followed by "timer."

 

 Google Sky

Google sky lets you explore the far reaches of the universe using images from NASA satellite, the Sloan Digital Sky Survey, and the Hubble Telescope.


  • Google Grams


    Google nGrams is a fun tool that lets you search for words in 5.2 million books published between 1500 and 2008 so you can see how much it's been used over time.

    Spell Huge Numbers

    Intimidated by huge numbers? Google will help you figure out how to pronounce that 12-string number if you type "=english" after it.
     
    Add +anything To email
     You can add "+anything" when typing your email address and it will still work. This can be good for filtering emails (for example, you could set up a folder for all emails sent to "youremail+datingsite@gmail.com").


    • Google SmartyPins
      Google recently released a fun new Maps game called SmartyPins that gives you geographic trivia.



      Google Getting Married

      Getting married? Google will help you plan your wedding, announce the news, locate a venue, fill in the plans, make a website, and more.


      Google Translate

      There's a "Manual" feature in Google Translate that lets you draw characters or symbols.

      Google Fonts
      Find a gorgeous font that you can use for free (Google Fonts).

      Google Art ProjectGet your culture on by using Google Art Project to check out super high-res photos of artwork from the world's greatest museums.


      Google Reverse ( ulta-pulta google )



      • Google when spelled backwards becomes 'elgooG', But the interesting fact is we can also use http://www.elgoog.im for our searches.
      • 'elgooG' is the mirror image of Google search engine; not only is all of its content a reversal of Google, the search terms must also be written in reverse order to yield the desired results.
      • Though created for fun purpose, it found practical use in the People's Republic of China after the domestic banning of Google, as it circumvented the government firewalls.


      Google Currency Converter

      Google currency converter is very smart: