Friday, June 28, 2013

SVN Commands

For my own reference :)
  • svn co svnLocation
  • svn add  dirLocation
  • svn commit dirLocation
  • svn status
  • svn info
  • svn log
  • svn log --stop-on-copy
  • svn diff -r 125:HEAD --summarize
  • svn mkdir -m "Create Dir"  svnLocation
  • svn delete svnLocation
  • svn revert -R dirLocation
  • svn copy svnLocationTrunk svnLocationBranch -m "Creating a new branch."
  • svn merge -r 5:10 svnLocationTrunk --non-interactive

Simplest JAX-WS in Eclipse

1. Create a new java project in Eclipse

2. Create package structure com.mycompany.wsServer

3. Create following class in it.
package com.mycompany.wsServer;
import javax.jws.WebService;

public class SimpleWebService {
    public String getGreeting() {
        return "Hello ";

4. Create ant build file
<project default="wsgen">
 <target name="wsgen" >
   <exec executable="wsgen">    
    <arg line="-cp ./bin -keep -s ./src -d ./bin com.mycompany.wsServer.SimpleWebService"/>    

5. Run the Ant build.xml file. Generated code is found under the new package called com.mycompany.wsServer.jaxws

6. Create following class to run the web service
package com.mycompany.wsServer;

public class RunService {
     public static void main(String[] args) {
        System.out.println("Web Service started.");
        Endpoint.publish("http://localhost:8080/wsServerExample", new SimpleWebService());

7. Run the class. Web service will start. View the wsdl on

Monday, June 24, 2013

How to Own Your Own Library

I had always been  a greedy, greedy bookworm!

Books were basically the only form of entertainment I had as a child (TV antenna was broken most of the time :/ ) . I thought one day I'd own one of those grand book libraries that you see in English movies set in the previous century, with glass paneled, ceiling high cupboards covering up the walls and huge leather bound volumes filling them up. But when I grew up and found a job, in other words when that "one day" became now, I realized it's not going to happen. Only a small book cupboard would fit in my tiny rented house and my not-so-grand budget.

From a different paradigm, I was a software developer and was not very happy about my developer know-how. After endless arguments, brainstorms and discussions with my own self, I decided that books had to be the answer. Internet let me know that the subject area which had most number of books written ever is actually this area. I bought a few books, but then realized there were just too many to choose from.

After a while, with so many hours spent browsing the web, I discovered it.


And most importantly, they can be FREE!

Treasure hunt for ebooks started like that and now I'm a proud owner of a virtual library with more than 5000 books, all in PDF format. My childhood dream became true without spending anything at all.

Here are some tips on finding ebooks online for free .

1. Use Amazon. Being the world's largest bookstore, amazon offers a wealth of information about what books are written on any topic. There are reviews, ratings etc and gives us a very good idea of what books we need to find.

2. Best Book lists Apart from amazon, there are many more web based sources, like blogs for example, that lists best books written about a certain subject area.

3. Learn Googling.
It's an art. There are some great and easy ways to efficiently use Google. After figuring out the book you need from the previous steps, you can Google it. Type
bookname filetype:pdf
and it will give only search results to pdf links. More popular the book, more chance for it to be found. There are more options in Google Advanced Search.
Play around with Google, changing words like title, author, publisher etc.

4. File repositories.
Once you find a link to a book, check if that link leads to a file repository that contain more books. I found huge on-line collections like this, which were not secured to restrict access.

5. Torrent
Not only movies, book collections are also shared on torrent.

Please note that it's much easier to find computer technology related books online for obvious reasons :)

Thursday, June 20, 2013

Fuse ESB 123

Download Fuse ESB from 

Create a Web Services (WS) Project
mkdir get-started
cd get-started
mvn archetype:generate -DarchetypeGroupId=org.apache.servicemix.tooling -DarchetypeArtifactId=servicemix-cxf-code-first-osgi-bundle -DgroupId=org.fusesource.example -DartifactId=cxf-basic -Dversion=1.0-SNAPSHOT
Create project
cd cxf-basic/
mvn install
Build project
cd ESBInstallDir/bin
Start Fuse ESB
karaf@root> install mvn:org.fusesource.example/cxf-basic/1.0-SNAPSHOT Install the WS as an OSGi bundle
karaf@root> start 229 Start the WS with bundle id returned from previous step.
karaf@root> list Check if the bundle has started
cd get-started/cxf-basic
mvn -Pclient
Run the WS client

Tuesday, June 18, 2013

Great Software Quotes

“There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.”
- C.A.R. Hoare (British computer scientist, winner of the 1980 Turing Award)

“Measuring programming progress by lines of code is like measuring aircraft building progress by weight.”
- Bill Gates (co-founder of Microsoft)

“Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.”
- Martin Golding

“When debugging, novices insert corrective code; experts remove defective code.”
- Richard Pattis

“Computer science education cannot make anybody an expert programmer any more than studying brushes and pigment can make somebody an expert painter.”
- Eric S. Raymond (American programmer, open source software advocate, author of “The Cathedral and the Bazaar”)

“Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.”
- Rich Cook

“Good code is its own best documentation. As you’re about to add a comment, ask yourself, ‘How can I improve the code so that this comment isn’t needed?’”
- Steve McConnell (author of many software engineering books including “Code Complete”)

“One of my most productive days was throwing away 1000 lines of code.”
- Ken Thompson (computer scientist, early developer of UNIX OS)

“Before software can be reusable it first has to be usable.”
- Ralph Johnson (computer scientist)


Monday, June 17, 2013

Power of Words

This is a collection of hand picked speeches that are great lessons in public speaking. Inspiring!

AePona in a Nutshell



1997: Aldiscon, an Ireland-based pioneer of text messaging and the first company to market with a commercial SMSC platform, was sold to Logica and Apion was founded, which thrived in the Mobile Internet / WAP Gateway market

1999: Apion was sold to Openwave.

2002: Aepona was founded to capitalize on the nascent market for Telecoms Value Added Services(VAS), launching the world’s first Application Gateway platform based on the emerging Parlay standards.

2007: Aepona acquired the Swedish Application Server vendor Appium, strengthening the company’s product portfolio and customer base.

2009: Aepona acquired Valista, a leading provider of Payments and Settlement solutions based in Ireland, bringing valuable revenue management and product merchandizing capabilities to the company.

2013: Aepona was acquired by Intel Corporation.

What does AePona do?

Aepona is an industry leader in API exposure and monetization platforms for service providers around the world.

As of 2013, 300+ based in Belfast, Dublin, Sri Lanka and the United States.

Aepona Sri Lanka
Aepona Sri Lanka Development Center is Java centric with significant expertise in Telco application development. It performs three key product engineering functions – R&D, Professional Services and Solutions Support.

Aepona and Intel
While globally recognised as a chip business, Intel also has a very large software business, which if it were a stand alone company would be one of the largest in the world.

AePona is now part of the Network Products and Service divisions within Intel, reporting into the Software & Services Group(SSG). 

Monday, June 10, 2013

Don’t just have an MBA – Be an MBA

Fifteenth June 2013 is a special day. It's the day that we celebrate two years of hard and intensive work, life turning experiences and endless learnings; the day that we are officially crowned as PIM MBAs.

People ask me all the time why I did a MBA if I'm not planning to move to the PM track. I always fight the urge to answer back "why not do a MBA?" There are so many reasons to be an MBA, and it's difficult to pin point to a single reason or a list of reasons for that matter. MBA is the key for me to be the professional that I'm today. Post-MBA me and pre-MBA me are miles apart in so many aspects.

I was a mere software developer. I had a job where I had to stare at the computer screen 95% of the time. The limited time I got to interact with anyone or do anything else was considered a waste of time.

I was feeling like a frog in a well, I was a techie and simply was ignorant to the outside world.

People in suites; who "managed", who directed, and who marketed were as familiar to me as aliens from Mars. They were a species that basically had nothing more in common with me than two eyes and a nose in-between. Mandarin made more sense than accounts and business strategy.

I had the gut feeling that I was capable of something more. What can be lying outside my happy little well; I wondered! What would be the best way to widen my horizons? How could I ever understand why my project manager behaved the way he did! Is this the right way to do things, can there be other ways?

I sought my answers from the right place.


It had been hell of a ride for me. The two years gave me 20 years worth of experience. New worlds opened up in the 3 hours we spent in the class. Little by little lot of things made sense. I was not at a loss when people spoke in debits and credits. I understood how my company is run and what the guys in suits do. I, who had shyed away from talking to my manager simply because I just didn't know how, ranked top in negotiation class.

I've learned to appreciate the different skills and different ideas of different people. I've experienced first hand the fresh perspective you get to a problem from a lawyer or from a banker.

I stepped out of PIM as a transformed person, ready to face challenges with a confident smile.

PIM gave me the courage to quit my job and give myself free time to prepare for what I wanted to do, instead of just doing what I was told to do. Thanks to that bold decision I'm having my dream job and enjoying every minute of it. I apply my MBA learnings every day and see the results.

I've already forgotten the theories I learned and I may never look at the huge text books that were given; they are nothing compared to what PIM has given me, it is not tangible and it cannot be expressed with a few words. The best I can say is that PIM gave a me a new ME, a new self with a wider horizons, a huge dose of confidence and completely different view points and perspectives.

I still develop software. But I'm not a mere software developer.

I'm an MBA.