These are slides from a talk I gave to the Java Colombo meetup group in Sri Lanka in 2013.
I talked about how key to success is taking the opportunities that show up in front of you - jumping in head first and then figuring your way forward.
Steve Job's quote applies: You can only connect the dots looking backwards.
3. Opportunity 1: SLNet
• Timeframe: 1988 (or so)
• No Web!
– No Gopher, WAIS etc.
• War going on in Sri Lanka
• No US newspapers carried any info about stuff
• Yeah, we used to write “Air Mail” letters
– E.g.: My grandmother died in 1985 a few months after
I first went to the US .. I found out 2 weeks later by
letter. Called home for the first time that day (at like
$3/minute)
4. Nimal
• Nimal Ratnayake
– Then graduate student at RPI (I think)
– Now professor in Univ of Peradeniya
– Runs a big part of LEARN
• Nimal
– Had a short-wave radio (expensive stuff)
– Used to listen to BBC News and type it up, format
it with “nroff” and email it to his friends (who had
email)
5. SLNet
• Nimal and his friends form SLNet
– Physical ones like Gihan Dias
– Virtual ones like Prasad Dharmasena
• SLNet is a mailing list to distribute news about Sri
Lanka
• Initial news was Nimal’s news transcripts
• Later Kavan Ratnatunge (Astrophysics dude) used a
FORTRAN program to format news downloaded from
Compuserv and send to the list
– Compuserv had a news agency reports for subscribers to
read
– No, we didn’t ask for permission!
6. SLNet
• Side note: Kavan never liked “Sri” in Sri Lanka
– His program used to strip it out and all news said
“Lanka”
• Later I volunteered to help re-write that
program using “expect”
– Extension of Tcl to do text processing
– http://en.wikipedia.org/wiki/Expect
– Became much more stable
– Put it in cron so it ran at a fixed time
7. SLNet
• Those days sending 100 emails was a lot
• SLNet was growing – had 3500 at peak (early 90s)
• Multiple relays – sites that received mail and
distributed to about 100 others
• 1989 I was a grad student at Purdue
– Asked Purdue admins whether they’d help the Sri
Lankan community by running a mail relay
– Yes (Dan Trinkle; most amazing system admin I’ve ever
known)
– I became an SLNet relay operator
9. Opportunity 2: Email to Sri Lanka
• Around 1989/90 Prof. Abhaya Induruwa (head
at Univ of Moratuwa then), Gihan Dias (grad
student in UC Davis) registered the .lk domain
name
• Started setting up email via UUCP
– Unix-to-Unix Copy
• Mail would be received by a mail gateway and
then delivered via UUCP to a server in LK (in
MRT)
10. UUPC
• Pre-Linux days!
• Unix on *86 machines not very good
• Other machines very expensive
• Someone ported UUCP to DOS: UUPC
• Gihan hacked UUPC to make it a bit better
• 1990 summer Clement Adams (then sysadmin in MRT)
needed some help to configure sendmail for local mail
delivery
– When Gihan asked for volunteers – I volunteered to help!
– I didn’t know sendmail much at all .. But I was visiting Sri Lanka
that summer
– I learned some sendmail before coming from Dan Trinkle
11. Purdue email gateway
• Dan Trinkle agreed to allowing *.lk mail to be
routed thru Purdue
• I had a computer at home
– Olivetti Portable Computer
• I registered that as lanka.laf.in.us
– All mail to Sri Lanka was being routed thru Purdue and
then delivered via UUCP to lanka.laf.in.us
• I used to call Sri Lanka each day on a 2400 baud
modem to deliver and pick up email
– Monthly phone bill went up to $600
– LAcNet (Lanka Academic Network) formed
13. Lanka.laf.in.us
• 8Mhz processor?
• 512K memory
• 10MB hard disk
• 360K floppy
• Bought used for $500 with dot-matrix printer
• Came with Word Perfect
• (Bought so my sister could type assignments)
14. Result
• Volunteering as postmaster introduced me to
tons of people
– I used to have to read their email and re-route
when it failed (which is very easy with UUCP)
– Ucbvax!purdue!lanka!vks@cmb.ac.lk
• Lots of people I don’t even know got to know
my name because I used to sort mail out for
them
15. Opportunity 3: Java
• 1993 Java was just getting out
• No one in Purdue knew Java
• I downloaded, read the spec did a bunch of
stuff and gave talks on Java
• Became the Java guy
• Ended up teaching Java courses professionally
from 1994 as a paid instructor
– Nortel, AT&T and a bunch of companies
16. Java
• Friend working in IBM Research asked me to
teach Java to their group
• Ended up getting job in IBM Research
18. Opportunity 4: XML
• 1997 September I was taking a flight to Boston
from Westchester County Airport
• Picked up Business Week magazine from
manager’s office to read in the 1hr flight
• Had a 3”, 1-column story about XML
Transformations spec submitted to W3C
– Written by James, Jonathan and others!
• Came back and read about it (Alta Vista – pre-
Google)
• Fit perfectly with what I was doing .. GML based
transformations to create UIs
19. XML
• Asked around IBM and not many people knew
how to spell XML
• November that year Bob Schloss, then IBM’s XML
god, gave a talk about XML stuff
– Asked him after about XML transformations
– “Do you want to represent IBM in the new XSL
Working Group?”
• Became IBM’s rep in Feb 1998
• Did BML (pre-cursor to Spring .. Same stuff )
and a bunch of other XML things
20. XML
• Wrote BSF (now Apache BSF)
• Integrated XSLT to JSPs using that
• Contributed code to WebSphere
– Paul Fremantle wrote redbook on that and
contacted me to debug something
– Co-founder WSO2
• Wrote code for Apache Xalan
– 1998 first code contrib to Apache
21. Result
• When everyone’s blind being color blind is no
barrier to becoming the expert
• Paul: Co-Founder WSO2
– No Paul, no WSO2
• James: Seed funded WSO2
– No James, no WSO2
22. Opportunity 5: Web Services
• 1999 Nov Microsoft releases SOAP 0.9
• IBM call to figure out response
– My manager calls and tells me there’s some new SOAP
thing and there’s a call
– I read the spec while on the call
– I’m the expert .. Get appointed to create a response
• Invented SCUM (Never released)
– IBM ended up joining SOAP early next year
• I did technical work on the spec (someone else’s name went
on it though)
23. Web Services
• Wrote IBM SOAP in 1 month
– Had implementation ready before spec was
published
– Got open source approval and released 3 days
after spec was announced
– Microsoft was shocked
– Donated to Apache to form Apache SOAP in
May/June
24. Web Services
• Ended up as part of 4-person IBM team
defining and standardizing all WS-* specs
• Implemented all of them .. simply wrote code
faster than others could think
• WSIF, JROM, …
26. Opportunity 5: Open source in LK
• 2001 returned to Sri Lanka
• People were advocating using open source but
not creating it
• Started Lanka Software Foundation
– With Jivaka Weeratunge
• Started with Axis/C++ project
– No money when started
– Damitha, now lead in WSO2 Stratos 2.0 was one
of the first developers to join
27. LSF
• Apache Sandesha, Neethi, Kandula, Axis2
• Lots of Sri Lankans wrote code for Apache
projects
• Sri Lanka is (was?) largest ASF contributor
after US
• Many members too
28. Result
• Sri Lanka has a strong open source
development culture and reputation
• Its up to all of us to use it to create major
economic value
– (one of the motivations for starting WSO2)
29. Opportunity 6: Sahana
• Tsunami
• Volunteers write code to help immediately
• Turns out world has no disaster management
software
• LSF gets funding for Sahana
30. Sahana
• #1 globally known brand for disaster
management software
• Now a foundation of its own: Sahana Software
Foundation
32. Opportunity 7: Middleware
• 2001 its clear to me middleware for SOA is not
done optimally
• “Colombo project” started
• 2004 IBM says no thanks
• 2005 I started WSO2 (with Paul & Dims)
35. You can't connect the dots looking forward you
can only connect them looking backwards. So
you have to trust that the dots will somehow connect
in your future. You have to trust in something: your gut,
destiny, life, karma, whatever. Because believing that
the dots will connect down the road will give you the
confidence to follow your heart, even when it leads you
off the well worn path.