Top Menu

Custom Search

Sunday, November 16, 2014

Managing JAVA


Installing default JRE/JDK

This is the recommended and easiest option. This will install OpenJDK 6 on Ubuntu 12.04 and earlier and on 12.10+ it will install OpenJDK 7.
Installing Java with apt-get is easy. First, update the package index:
sudo apt-get update
Then, check if Java is not already installed:
java -version
If it returns "The program java can be found in the following packages", Java hasn't been installed yet, so execute the following command:
sudo apt-get install default-jre
This will install the Java Runtime Environment (JRE). If you instead need the Java Development Kit (JDK), which is usually needed to compile Java applications (for example Apache AntApache MavenEclipseand IntelliJ IDEA execute the following command:
sudo apt-get install default-jdk
That is everything that is needed to install Java.
All other steps are optional and must only be executed when needed.

Installing OpenJDK 7 (optional)

To install OpenJDK 7, execute the following command:
sudo apt-get install openjdk-7-jre 
This will install the Java Runtime Environment (JRE). If you instead need the Java Development Kit (JDK), execute the following command:
sudo apt-get install openjdk-7-jdk

Installing Oracle JDK (optional)

The Oracle JDK is the official JDK; however, it is no longer provided by Oracle as a default installation for Ubuntu.
You can still install it using apt-get. To install any version, first execute the following commands:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
Then, depending on the version you want to install, execute one of the following commands:

Oracle JDK 6

This is an old version but still in use.
sudo apt-get install oracle-java6-installer

Oracle JDK 7

This is the latest stable version.
sudo apt-get install oracle-java7-installer

Oracle JDK 8

This is a developer preview, the general release is scheduled for March 2014. This external article about Java 8 may help you to understand what it's all about.
sudo apt-get install oracle-java8-installer

Managing Java (optional)

When there are multiple Java installations on your Droplet, the Java version to use as default can be chosen. To do this, execute the following command:
sudo update-alternatives --config java
It will usually return something like this if you have 2 installations (if you have more, it will of course return more):
There are 2 choices for the alternative java (providing /usr/bin/java).

Selection    Path                                            Priority   Status
* 0            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      manual mode

Press enter to keep the current choice[*], or type selection number:
You can now choose the number to use as default. This can also be done for the Java compiler (javac):
sudo update-alternatives --config javac
It is the same selection screen as the previous command and should be used in the same way. This command can be executed for all other commands which have different installations. In Java, this includes but is not limited to: keytooljavadoc and jarsigner.

Setting the "JAVA_HOME" environment variable

To set the JAVA_HOME environment variable, which is needed for some programs, first find out the path of your Java installation:
sudo update-alternatives --config java
It returns something like:
There are 2 choices for the alternative java (providing /usr/bin/java).

Selection    Path                                            Priority   Status
* 0            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      auto mode
  1            /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java   1061      manual mode
  2            /usr/lib/jvm/java-7-oracle/jre/bin/java          1062      manual mode

Press enter to keep the current choice[*], or type selection number:
The path of the installation is for each:
  1. /usr/lib/jvm/java-7-oracle
  2. /usr/lib/jvm/java-6-openjdk-amd64
  3. /usr/lib/jvm/java-7-oracle
Copy the path from your preferred installation and then edit the file /etc/environment:
sudo nano /etc/environment
In this file, add the following line (replacing YOUR_PATH by the just copied path):
That should be enough to set the environment variable. Now reload this file:
source /etc/environment
Test it by executing:
If it returns the just set path, the environment variable has been set successfully. If it doesn't, please make sure you followed all steps correctly.


Friday, November 14, 2014

Crisil on Reducing IT jobs in india

November 10, 2014 1
November 10, 2014
Incremental IT services jobs will halve in four years
For future job aspirants, this will mean fewer opportunities and adding to skillsets
Changing business models of vendors will lead to cherry-picking and more lateral hirings
CRISIL believes incremental recruitment by the information technology (IT) services industry, which
accounted for nearly a quarter of the organised private sector employment in India in fiscal 2014, will
halve by fiscal 2018 despite a 13-15% growth forecast in the industry’s revenues during this period.
This contrasts with the hiring pattern of the last decade, which had mirrored revenue growth in the
industry. The paradigm shift will come as IT services vendors struggle to crank up profitability in a
milieu where global weakness is forcing their clients to optimise costs to hold on to margins. On their
part, vendors responded by rationalising their bench strength, improving utilisation rate and trimming
operational costs.
Equally importantly, this has ramifications for future engineering graduates because it will narrow the
opportunities available in future.
CRISIL believes despite revenue growth, companies will run very tight ships because of which
incremental employment will be curbed. Vendors are gradually adopting just-in-time hiring and
increasing the proportion of fixed-price contracts in their portfolio, which reduces the need to maintain
flab on the bench. Additionally, they are migrating towards higher-value service offerings such as
consulting, investing in intellectual property (IP)-based products and leveraging on the emergence of
social media, mobile, analytics and cloud (SMAC). Says Ramraj Pai, President, Business Head –
Ratings, Large Corporates, CRISIL: “These initiatives will increase revenue per employee
(RPE) at a compounded annual growth rate of 7% between fiscals 2015 and 2018. This, along
with improvement in employee utilisation, will over time delink hiring from revenue growth.
We also foresee a transformation in the recruitment pattern where employers become more
focused and picky, increasingly seeking specific skill sets. This will lead to greater lateral
India’s IT sector, with revenues of $118 billion in the last fiscal, employs 3.1 million people, or around
24% of organised private-sector employment in India. The sector has practically driven growth in
organised private jobs in the country over the past decade. Its initial phase of high revenue growth
between fiscals 2003 and 2007 also saw a substantial growth in recruitments. This was followed by
the global financial crisis between 2008 and 2010 and moderate recovery during fiscals 2011 and
2013. Yet hiring rates mirrored revenue growth. CRISIL believes the sector is now entering a new
phase where this will gradually delink.
Says Anuj Sethi, Director-Ratings, CRISIL: “We believe despite healthy revenue growth of 13-
15% for IT services foreseen in the medium term -- aided by recovery in discretionary
spending by clients -- job additions will gradually shrink by about 50% to 55,000 by fiscal 2018
from 105,000 in fiscal 2014, as companies opt for more-focused, higher-value initiatives.” This
process has already been set in motion, as evidenced in the reduction in employee costs from 69% of
total costs in fiscal 2013 to 64% in the last fiscal.November 10, 2014 2
This Press Release is transmitted to you for the sole purpose of dissemination through your newspaper / magazine / agency. The press
release may be used by you in full or in part without changing the meaning or context thereof but with due credit to CRISIL. However,
CRISIL alone has the sole right of distribution of its Releases for consideration or otherwise through any media including websites, portals
About CRISIL Limited
CRISIL is a global analytical company providing ratings, research, and risk and policy advisory services. We are India's
leading ratings agency. We are also the foremost provider of high-end research to the world's largest banks and leading
About CRISIL Ratings
CRISIL Ratings is India's leading rating agency. We pioneered the concept of credit rating in India in 1987. With a tradition
of independence, analytical rigour and innovation, we have a leadership position. We have rated over 75,000 entities, by
far the largest number in India. We are a full-service rating agency. We rate the entire range of debt instruments: bank
loans, certificates of deposit, commercial paper, non-convertible debentures, bank hybrid capital instruments, asset-backed
securities, mortgage-backed securities, perpetual bonds, and partial guarantees. CRISIL sets the standards in every
aspect of the credit rating business. We have instituted several innovations in India including rating municipal bonds,
partially guaranteed instruments and microfinance institutions. We pioneered a globally unique and affordable rating
service for Small and Medium Enterprises (SMEs).This has significantly expanded the market for ratings and is improving
SMEs' access to affordable finance. We have an active outreach programme with issuers, investors and regulators to
maintain a high level of transparency regarding our rating criteria and to disseminate our analytical insights and knowledge.
CRISIL respects your privacy. We use your contact information, such as your name, address, and email id, to fulfil your request and
service your account and to provide you with additional information from CRISIL and other parts of McGraw Hill Financial you may find of
For further information, or to let us know your preferences with respect to receiving marketing materials, please visit You can view McGraw Hill Financial’s Customer Privacy at
Last updated: August 2014
Disclaimer: CRISIL has taken due care and caution in preparing this Press Release. Information has been obtained by
CRISIL from sources which it considers reliable. However, CRISIL does not guarantee the accuracy, adequacy or
completeness of information on which this Press Release is based and is not responsible for any errors or omissions or for
the results obtained from the use of this Press Release. CRISIL, especially states that it has no financial liability
whatsoever to the subscribers/ users/ transmitters/ distributors of this Press Release.
Media Contacts Analytical Contacts Customer Service Helpdesk
Tanuja Abhinandan
Communications and Brand
CRISIL Limited
Phone: +91 22 3342 1818
Mobile: +91 98 192 48980
Jyoti Parmar
Communications and Brand
CRISIL Limited
Phone: +91 22 3342 1835
Ramraj Pai
President, Business Head – Ratings,
Large Corporates - CRISIL
Phone:+91 22 3342 3036
Anuj Sethi
Director - CRISIL Ratings
Phone:+91 44 6656 3100
Timings: 10.00 am to 7.00 pm
Toll free number: 1800 267 1301
Stay Connected |
Website | Twitter | LinkedIn | YouTube | Facebook

Thursday, August 21, 2014

Install Train and Test Moses Machine Translation Toolkit

Following are few easy steps with my experience with installing moses toolkit

I am doing it for ubuntu 64 bit (linux) system you can make an analogy for other installations.

1) Download the binary moses from here In my case I used this -

2) Install that with following command in the relevant directory
 sudo dpkg -i

This install moses and all other relevant tools like GIZA and Language Modeler (IRSTLM) in "/opt" directory. You can copy that to wherever you want or leave it as it is there.

3)  Now goto /moses folder in /opt and move all contents of /giza++-v1.0.7 to a new folder /tools in /moses. You can avoid this, but then need to make some changes in training script below, so don't avoid it for the sake of introduction.

4) Creating Language Model: Your environment is set up. Now create a language model using target language corpus using following shell script. You are in your workdirectory say - YF

/opt/moses/irstlm-5.70.04/bin/ \
   < YF/monolingualFilepath.hin \
   > LMV1.fl

export IRSTLM=/opt/moses/irstlm-5.70.04; 

/opt/moses/irstlm-5.70.04/bin/ \
   -i LMV1.fl                  \
   -t ./tmp  -p -s improved-kneser-ney -o LMV2.fl

/opt/moses/irstlm-5.70.04/bin/compile-lm  \
   --text=yes \
   LMV2.fl.gz \

/opt/moses/bin/build_binary \
   MYLM.lm \

I you don't want to worry much about what is happening, name your monolingual input data file for LM creation as - monolingualFilepath.hin and put in the directory where this script will be run i.e. YF. And if you understand what's it. Please go ahead and do as as you want the files to be named.

5) The above step creates new files move all new files to a new folder and name it /lm. Your language model is ready of which you will be using the MyLM.lm.bin.hin version.

Check you built binarized LM for Hindi i.e. MyLM.lm.bin.hin with:

echo "यह हिंदी वाक्य है  क्या ?" | /opt/moses/bin/query MyLm.lm.bin.hi 

It gives some numbers per word and that means you are done with LM creation.

6) Training the English to Hindi SMT system: Keep your bi-lingual training corpus in a folder called /corpus inside /YF and name files traincorpus.hin and traincorpus.eng. And then run the following script to train a English to Hindi translation system.

/opt/moses/scripts/training/train-model.perl \
    -cores 4 \
    -root-dir /YF \
    -corpus YF/corpus/traincorpus -f eng -e hin \
    -alignment grow-diag-final-and \
    -reordering msd-bidirectional-fe \
    -lm 0:3:YF/lm/MyLm.lm.bin.hi:8 \
    -external-bin-dir /opt/moses/tools >& YF/trainingLog.out

 7) It will take some time depending on the training data size. Once it creates the moses.ini, we can say that the training is done. Now you can try the trained system by executing following command -

/opt/moses/bin/moses -f YF/model/moses.ini 

It will ask for the English sentence and will output the Hindi. 
And we are DONE!

Tuesday, July 22, 2014

जोडीने रुतलेल्या पायांचे

जोडीने रुतलेल्या पायांचे
ठसे अजूनही तसेच आहेत

कधीची भिजली नाहीये ही जमीन
तू गेल्यापासून
इथली रानं ही तशीच आहेत

तू ये आणि बिलग
म्हणजे पाऊस पडेल आणि माती ओली होईल
अंकुर फुटायला लागतील आणि छाती ओली होईल.

Tuesday, July 1, 2014

पावसाळा 'येऊन' गेल्यावर भेटेल

तु म्हणाली होतीस
पावसाळा 'येऊन' गेल्यावर भेटेल
मी वाट बघतोय
पावसाळा जाण्याची
पण त्या आधी तो येण्याची!

Backup your orkut profile

Go to the link:

Am I going to be made redundant? - Keeping your job!

There are times when every business is going through a restructure. Some companies seem to do this every few years, some every year, and some seem to be undergoing one eternal restructure!
Have you ever noticed that some people are restructure proof? Fear does not grip their body at the mention of that word. They never leave. They never get demoted. They are important to the company.
This reminds me of a story. Please excuse me; we are a training company, so there is always a story.
A big corporation hired several cannibals. "You are all part of our team now," said the HR manager during the welcome briefing. "You get all the usual benefits and you can go to the cafeteria for something to eat, but please don't eat any of the other employees."
The cannibals promised they would not.
A few weeks later, the cannibals' boss remarked, "You're all working very hard, and I'm satisfied with you. However, one of our secretaries has disappeared. Do any of you know what happened to her?" The cannibals all shook their heads, "No," they said.
After the boss left, the leader of the cannibals said to the others angrily, "Right, which one of you idiots ate the secretary?" A hand rose hesitantly in admission. "You fool!" said the leader. "For weeks, we've been eating managers and no one noticed anything, but noooooo, you had to go and eat someone important!"
Are you someone important to your company? Would they miss you if you were no longer there?
When most people hear that dreaded word ‘restructure,' fear fills their mind and the thought arises: “Am I going to be made redundant?” This is generally followed by a blubbering cry of, “Who will hire me? I have a mortgage to pay, car payments, and I need money to wash the dog!”
How can we make sure that we are someone important? What can we do to be in the best position to remain in the company? How can we be one of those people that are indispensable?
In my preparation for writing this blog, I decided to get some wisdom from people I respect. I asked some of our best clients — senior managers who work for global companies. These people have walked the walk; they have been bulletproof when it comes to restructure.
These are their 5 Keys to Becoming Indispensable at Work:
1. Hold the mindset that change provides opportunity.
There is an ancient wisdom etched into Chinese vocabulary. The Chinese ideogram for crisis consists of two separate characters. One means danger; the other means opportunity. The proper translation is that a crisis is a dangerous opportunity. When confronted with a crisis, you need to recognise both the danger and the opportunity. Often the danger is more readily apparent, while the opportunity can be deftly concealed. The thing to keep in mind is to look for the opportunity as well as the danger. Crisis holds the potential for both.
In studying hundreds of famous people, whether politicians, sportspeople, business people, or spiritual leaders, I have found that crisis comes to every person in some way. Those who rise in the midst of crisis and see it as an opportunity to change and grow become greater and more powerful. They reach heights that they would never have attained had they never experienced that crisis. As masterful innovator Walt Disney put it, “You may not realise it when it happens, but a kick in the teeth might be the best thing in the world for you.”
When change is imminent, hold the mindset that change provides opportunity, remain positive, and don’t dwell on the danger but dwell on the opportunity.
2. Do not overfocus on the next job position but rather on the skills to be developed.
I think that most people today are aware that the company does not have the same amount of loyalty to you that they used to a few years ago. There was a time the company would have a track for your life. You could go and meet with your manager and they could tell you where you are going and when you will get there.
Today, you are your manager and you need to plan out your own career path to your dream job. Therefore, it is important that you are not focused on the job position, but rather on the skills required.
I like to say it like this: “You have to do the job before you get the title.” In other words, if you want to be the CIO, then you need to develop the hard and soft skills required for a CIO; you need the education of a CIO, you need to start dressing like a CIO, acting like a CIO, speaking like a CIO, and then one day, when you have had the right amount of experience, someone is going to say, “I think Jessica would make a great CIO!”
3. Building relationships with key decision makers.
It’s not only what you know but whom you know. I have seen people scoot all the way up the ladder of a company through being connected closely with key decision makers.
Think of football coaches: they build their team and work with players for years, and then they get headhunted to another club as head coach, and what is the first thing they do? They try to get their key players to move to the new club, as well. They are like a positive cliché. Where one goes, they all go. Some coaches and key players move together all the way through their playing life.
Why? Because just as the players think that the coach has made them succeed, the coach thinks that the players have helped him or her succeed. They are a powerful team, and they feel powerful together. Sir Edmund Hillary needed Tenzing Norgay to climb Everest. We all need to find an “internal coach” whom we can work with and who would support us to climb our Everest.
4. Exhibit the ability to get ‘stuff’ done.
How do you build these key relationships? You build them by working on projects with key stakeholders, complimenting their skills, and making them look good.
As one senior manager put it to me, “Over the years, I’ve had the opportunity to work for some great ‘blue sky’ leaders, but they couldn’t project-manage their way out of a lunch bag. While I’ve probably not been the best at brainstorming new and creative ideas, in many situations I’ve been able to take their ‘kernel’ of an idea, pour some fertiliser on it, and make it grow and flourish into a great program and actually implement it.”
In projects, there are two key parts--the front end and the back end, people and tasks, marketing and operations, talkers and doers. If the key stakeholder is a talker, then you need to be a doer. If you are the key doer to the key stakeholder, then you ain't going nowhere fast! They need you to keep making their projects succeed.
5. Treat everyone with genuine respect.
It’s not just about managing well, but also about how you treat your peers, team members, and vendors alike. You never know who you may be working for or with some day, so treat everyone as you’d want to be treated and keep confidences when someone confides in you and wants some advice. As one senior manager in a global I.T. company put it to me, “I believe in creating good karma with those you interact with.”
Along with the other things I have mentioned, this will stand you in good stead with decision makers and bring you allies and supporters in the organisation. When business takes a turn for the worse and they’re considering who to cut, you often won’t make the list if you have built those relationships and have shown the ability to deliver with quality over and over again.


Friday, June 6, 2014

Hindi/Marathi - Devanagari characters and their uses frequencies

Character -Use Frequency- % Use frequency
256675 6.4440754424
200819 5.0417562531
196683 4.9379179517
 े 178697 4.4863619337
 ् 145168 3.6445837882
125064 3.1398533209
124261 3.1196932251
 ी 122363 3.0720420897
114875 2.884048569
112860 2.8334600348
 ि 111272 2.7935917508
 ं 109402 2.7466435826
101555 2.5496370179
 ो 87486 2.1964210934
82563 2.0728243918
76621 1.9236447043
69420 1.7428565977
58501 1.4687244861
 ै 57906 1.4537864325
57749 1.4498447949
51867 1.3021714658
46947 1.178650082
46739 1.1734280398
44371 1.1139770973
 ु 38982 0.9786810126
31487 0.7905117501  
29446 0.7392704606
28289 0.7102228507
 ू 23857 0.5989531814
23764 0.596618326
23033 0.5782658602
21582 0.5418370944
21063 0.5288070947
18110 0.4546691585
17347 0.4355133016
16911 0.4245670977
 ँ 16500 0.4142485431
15676 0.3935612219
14101 0.3540193155
12879 0.3233398174
11804 0.2963508971
11470 0.2879655024
11322 0.2842498185
10503 0.2636880272
8720 0.2189240785
7938 0.1992912082
6350 0.1594229242
 ौ 5632 0.141396836
4622 0.116039804
 ृ 4536 0.1138806904
4196 0.1053446598
3449 0.0865904985
 ़ 2983 0.0748911154
 ॉ 2898 0.0727571078
2374 0.0596015783
2177 0.0546557017
1901 0.0477264534
1709 0.0429061067
1347 0.0338177447
943 0.0236749319
584 0.0146618878
449 0.0112725816
271 0.0068037185
 ः 226 0.0056739497
134 0.0033642003
28 0.0007029672
28 0.0007029672
24 0.0006025433
22 0.0005523314
17 0.0004268015
 ॅ 12 0.0003012717
 ॄ 11 0.0002761657
8 0.0002008478
7 0.0001757418
7 0.0001757418
6 0.0001506358
4 0.0001004239
3 7.53179169273503E-005
2 5.02119446182336E-005
2 5.02119446182336E-005
2 5.02119446182336E-005
1 0.000025106
1 0.000025106
 ॊ 1 0.000025106
1 0.000025106
1 0.000025106
 ऀ 0 0
0 0
0 0
0 0
0 0
0 0
 ऻ 0 0
 ऺ 0 0
0 0
 ॆ 0 0
 ॎ 0 0
 ॏ 0 0
 ॗ 0 0
 ॖ 0 0
 ॕ 0 0
 ॔ 0 0
 ॓ 0 0
 ॒ 0 0
 ॑ 0 0
0 0
0 0
 ॢ 0 0
 ॣ 0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
ॿ 0 0
0 0
0 0
0 0
0 0

Total: 3041617 76.3627521769
Total Number of Characters: 3983116
Total Number SPACE characters: 941499 (23.637247823%)
Total Number Non Space Unicode characters: 3041617 (76.3627521769%)

Roman/English Character frequencies:
Char Uses freq %uses freq
e 1109679 9.4019327323
t 801072 6.7872105877
a 699276 5.9247277035
o 662934 5.6168142985
h 636070 5.3892047638
n 608327 5.154147761
s 540348 4.5781848157
i 535384 4.5361265321
r 491537 4.1646258147
d 387383 3.2821643986
l 360469 3.0541312308
u 250914 2.1259089787
m 214609 1.8183090621
f 201207 1.7047584745
w 188613 1.5980537961
c 176679 1.4969410732
y 172307 1.4598986043
g 162269 1.3748500445
p 129631 1.0983193717
b 126068 1.0681312845
v 82693 0.7006296627
k 64679 0.5480031678
x 9039 0.0765843726
j 7510 0.0636296756
q 6877 0.0582664819
z 4539 0.0384574032
8630113 73.1200120922

non alphabatical chars: 3172556 (26.879987908%)
Non space english chars: 8630113 (73.120012092)

Saturday, March 29, 2014

तुला चंद्र फार आवडायचा ….

तुला चंद्र फार आवडायचा
नभात एकटाच बसलेला
मला चंद्र फार आवडायचा
गालातल्या गालात हसलेला  

तू बाहेर पहायचीस 
पडणारा पाऊस 

माझ मन त्याला सांगायच 
पड अजून थोडा आत्ताच नको जाऊस

मी फक्त  चहा घ्यायचो 
तू आईसक्रीम खायचीस 

खरं सांगू आज तुला
बिलाची तेंव्हा अगदीच पंचाईत व्हयाची

मी गुलाबाची फुलं अनायचो 
तू डब्ब्या मधे पोहे

सारून गेली वर्षे तरीही
'चव'  लक्षात आहे

कविता तर मी लहानपणापासूनच करायचो
त्यांना लय  मात्र आली तू आल्यावरच.

पारिजातकाचा सडा आजकाल रोज दारात पडतो
वेचून घ्यायला नाहीस तू
म्हणून बिचारा रडतो

तू हसायचीस तेंव्हा ही
तू  रुसायचीस तेंव्हा ही
मिठी हाच उपाय असायचा

नेमका त्याच क्षणी जाऊन
ओठ ओठांवरती बसायचा

                           - प्र. बा. 

Thursday, February 20, 2014

Tuesday, January 7, 2014

Elections are Coming!

Elections are Coming!