Sunday May 15, 2011

Bay to Breakers 2011 Completed

Powered by Odwalla Chocolate Peanut Butter bar and its muscle building protein, I completed my first Bay to Breakers ... yeee haw! It took me 0:53:55 to complete the race (distance of 7.46 miles or 12k) and that is a pace of 7:14/mile. My results are below:

The complete results for all the athletes can be viewed here. The race was sold out on Apr 13 with the number of runners capped at 50,000. The fastest runner, not a Kenyan or an Ethiopian but a Moroccan, completed in 34:26 (with a pace of 4:38). And imagine Mutai winning Boston Marathon 2011 with a pace of 4:41 ... for all of that 26.2 miles!

For about 0.25 miles, I was getting a lot of attention and with lots of cameras clicking around me. I realized after a few minutes that there was a naked couple, yep completely naked and truly in the spirit of Bay to Breakers, right behind me ;-) And then I saw several more like that on the way ;-) There was an Elvis Presley, a naked guy all painted in black, a team of snow dogs tied together, cheese hat girl, a fairy, guys wearing tutu, Batman, and a lot more. There was usual tortilla toss at the start line which made a colorful start to the race. I've always enjoyed the cheering crowd of the San Francisco city and this race was no different.

Here is the elevation chart for the race:

and my mile splits:

The "Hayes Hill" is between mile 2 and 3 and drops the pace significantly. More details about the race can be viewed below:

There was a seeded (for elite runners) and sub-seeded division (those who ran it in the earlier years in less than 45 minutes) but there were plenty of walkers or reaaally slow runners in Corral A which basically slowed down the start. Nobody was checking the bibs to ensure the runners are entering the right corral. I think Corral A runners should also be pre-qualified to give a speedy start to the interested runners. The post-race celebrations and the shuttle back to the start line (with an additional charge of $14) were quite far from the finish line. The parking at the Embarcadero Center, with a discounted rate of $10, worked out really well. There were other thugs who were charging $20 instead of the regular $12 weekend rate. Overall, I enjoyed running the race and will probably run it again next year.

Check out before/after pictures:

And that concludes a great running weekend with my wife completing her first 5K as my birthday gift from earlier this year!

Several runners asked me about the Odwalla jersey. I got that being part of Team Odwalla 2011. Follow @odwalla or post a comment on if you are interested too. And you can also buy all Odwalla bars online now at!

Technorati: running baytobreakers b2b sanfrancisco results 12k

Tuesday Feb 15, 2011

JFokus 2011 Day 3 Trip Report - JDuchess, Future Java Developer, Java EE/Cloud, Icebar

JFokus 2011 ended after spending 2600 man hours educating 1100+ developers. (Day 2 and 1 reports)

I gave a talk on "Running your Java EE 6 applications in the Cloud". The talk explained the key benefits of Java EE 6 and then explained how this application can be deployed on Amazon, Joyent, Rightscale, and Azure. The talk also explained how Java EE 7 is going to evolve to become a cloud-enabled platform. The slides are now available:

The minimal presence of women in Java conferences is intriguing. JDuchess are trying to solve that problem by bringing more women in Java and connecting them.

I met three of them earlier today and here are top three ways you can help them:
  • Raise awareness about the program by sharing this with others.
  • Help other women get into Java technology by educating them.
  • Participate/speak at conferences and connect with other women.

Are you a woman reading this blog and work in the Java technology ? Sign up today and help spread the effort and make your voice heard!

I also attended Bruno and Sven's talk on the "The Future Java Developer". They both touched some of the key points on embracing open source, remote working, freedom from hardware/software (ability to deploy in cloud), programming for multiple devices, revised costing model for SaaS/PaaS/IaaS, working in global teams, agile development, speech-to-code, and many others. The specific suggestions were:

  • Deploy applications in the cloud
  • Work with distributed teams from different cultures
  • Create architectures looking for simplicity
  • Think of services
  • Become a polyglot programmer

Their complete slides are available here.

One of my colleagues (Tomas Nilsson) here is getting ready for a marathon. He was kind enough to take me out on a run in sub-zero Stockholm downtown (yes, it was some 16F). I've always felt that running gives a unique perspective to view a city and I was not disappointed today at all, especially Tomas did a great job explaining the key vista points. Now our GPS watches could not find the satellite for the first 20 mins but here is our running map:

Good luck Tomas, you'll do well, happy running!

The evening was enjoyable as well in the world's first permanent ice bar, appropriately called as Icebar Stockholm. No matter what the temperature is outside, the inside temperature is always maintained at -5C year around. The entire interior including the glasses are made from clear ice from a local river. You have to wear a cape to protect yourself from the cold temperature and also to protect the interiors. You've to make a reservation as the attendance is restricted but this is a must stop if you are visiting Stockholm.

Here are some pictures from Day 3:

And the complete album is now available at:

Thank you Mattias for running a wonderful show and providing an opportunity to participate in my very first JFokus and now looking forward to participate in JFokus 2012!

And after being out for 8 days ... so ready to go home now :-)

Technorati: conf jfokus javaee6 glassfish cloud sweden stockholm

Sunday Dec 05, 2010

Running at Mercuripe Beach, Fortaleza, Brazil

This is a picture of the beautiful Mercuripe beach of Fortaleza around 6:15pm yesterday. The tiny little camera is not able to capture the depth and colors accurately and the actual view was much more breath taking. I had the opportunity, and just could not miss, to run on this beach. The beach was definitely crowded for a saturday evening in Brazilian summer and there were lots of strollers, runners and roller bladers on the sidewalk.

This is my third run in this week by the Atlantic ocean, only this one is about 3500 miles south of the two earlier ones :-)

The running stats can be seen by clicking on the link below:

Did I say I love my Garmin Forerunner 305 for accurately recording the timing, pace, maps and other attributes ? However I don't understand how come there was an elevation gain of 81 ft and a loss of 87 even though I started and stopped at the same point :-)

Tecnorati: conf running mercuripe beach fortaleza garmin forerunner

Saturday Dec 04, 2010

Rich Web Experience 2010 Trip Report

The Rich Web Experience 2010 concluded earlier this week in Fort Lauderdale. In a typical No Fluff Just Stuff fashion, it was truly a rich experience starting from the location (hotel, city, and weather), food, content, speakers, 90-minute sessions, schwag, and many other items. There were about 350 attendees with topics ranging from HTML5, CSS3, NodeJS, GWT, iPad / iPhone / Android development, Grails, Git, Hudson, and pretty much all over the landscape. I gave three sessions on:
  1. Java EE 6 = Less Code + More Power
  2. Java EE 6 Toolshow
  3. Using Contexts and Dependency Injection in the Java EE 6 Ecosystem
The first session explained the three themes of Java EE 6 (light-weight, extensibility, and ease-of-use), explained newly introduced and updated specifications in the platform, and finally the modular, hybrid OSGi/Java EE host, embeddable, extensible, and high-availability nature of GlassFish. The attendance was light but audience was interactive.

The second session was a no-slides session and used NetBeans and Eclipse to demonstrate the following Java EE 6 features:
  1. @WebServlet
  2. @Stateless, No-interface view, EJB 3.1 in a WAR
  3. Embeddable EJB (unit test)
  4. @Schedule
  5. @PersistenceUnit in @WebServlet, @PersistenceContext in @Stateless
  6. Facelets templating
  7. CDI stereotypes @Model, @Qualifier
  8. RESTful Web services from Entity classes
The code build during the talk can be downloaded here.

The third session on CDI was a revision of my JavaOne session with a lot more context and code samples added. The talk explained CDI key concepts like type-safe dependency injection, Qualifiers, Stereotypes, Producer/Disposer, Alternative, Interceptor, Decorators, Scopes, CDI tooling, and other topics.

The slides for both the sessions are now available:

On a personal front, I totally enjoyed coming from a 40 degrees weather in San Jose to 70 degrees in Ft Lauderdale and that too with hotel right on the beach. I had couple of great runs by the Atlantic Ocean and a good walk along the beach.

Thursday had 2 hours dedicated for beach activity but I had to leave to catch my flight to Washington DC :( The dinner, lunch, and breakfast as part of the conference was healthy with a good mix of salads + carbs + proteins. The lemon tea + honey allowed me to deliver three 90 minute sessions in one day. And lastly enjoyed catching up with Venkat, Matthew McCullough, Kohsuke, Ben Ellingson and many other friends.

Here are some pictures:

And the complete album:

Next stop as part of No Fluff Just Stuff will be UberConf, Jul 12-16, 2011, mark your dates!

Technorati: conf glassfish javaee6 netbeans eclipse cdi weld rwx2010 richwebexperience florida

Monday Nov 01, 2010

Silicon Valley Marathon 2010 Results - Personal Record!

I ran Dean Karnazes Silicon Valley Marathon 2010 over the weekend and here are the results:

This amounts to an average page of 8:35 min/mile.

A total of 2100 runners registered for the entire event, 652 were marathon finishers (464 males and 188 females) and rest were half-marathoners, 5k runners, and kids races. The marathon male winner completed the course in 2:35:25 and the female winner in 3:12:44. The complete results are available here.

A split of finish times for males and females is given below:

As evident, most of the marathoners finished within the 3:30 - 4:00 hour range. The average finish time was 4:17:03. A complete route of the map is available below (click on the map for an interactive version):

My last long run before the marathon was almost 7 weeks before the race. After that I ran a practice half marathon and all my other runs were single digits. I did log lots of miles but they were on airlines traveling internationally for different conferences so was focusing primarily on cross-training. It helped but lack of long runs showed up in poor performance during the last few miles as evident in the mile splits below:

Guess, I hit the wall at mile 23 :(

Even though this was a PR for me and I improved timings by over 15 minutes from the last full marathon but I did not like the performance during the last few miles. Stronger and faster running with several hill runs are certainly the key and I need to put more emphasis on them!

There were significant differences from other local and much bigger races like Rock-n-Roll and San Francisco Marathon such as one mass start instead of wave starts, relatively less number of spectators, and much smaller expo. But the huge advantage was that the start time was 7am and there is ample free parking in the San Jose downtown on weekends.

Anyway here is the cumulative result of all the marathons so far:

Marathon / Half Marathon Total Time Pace
Silicon Valley Marathon 2010 3:49:17 8:35
San Francisco 1/2 Marathon 2010 1:35:42 7:18
San Jose Rock-n-Roll 2009 1:30:59 6:57
San Francicsco 1/2 Marathon 2009 1:38:21 7:31
Kaiser Permanente San Francicsco 1/2 2009 1:41:30 7:45
Silicon Valley 1/2 2008 1:45:42 8:04
San Francisco 1/2 2008 1:52:44 8:25
San Francisco Full 2007 4:04:33 9:20
Silicon Valley Full 2006 4:06:57 9:25
San Francisco 1/2 2005 1:48:50 8:18

Technorati: running marathon results siliconvalley svmarathon

Wednesday Jul 28, 2010

San Francisco 1/2 Marathon - 2010 Results

I ran San Francisco 1/2 marathon over the weekend and improved my timing from last year by 3 minutes. I guess dance at a pre-wedding ceremony and 4 hours of sleep the night before slowed me down otherwise could've pushed harder. Anyway the results are still encouraging and the bar is higher for the next time!

This makes me among top 1.2 % runners overall, top 2.5% for "Men", and top 2.3% in "M 30-39" category. Here is the overall leader board:

I'm about 20 minutes behind the winner (5:47 pace) and so need to push really hard to close the gap there. Who knows I may win one day, but for now the plan is to close the gap as much as possible. Seems really difficult, but not impossible!

And I almost made it to the women's leader board ;-)

Michael Wardian, a popular American marathoner and ultramarathoner came second in the full marathon. It was a pleasure to see him cruising back on the Golden Gate birdge.

Here are the mile splits:

One thing clearly evident from the splits is that any amount of hill training is less. This is all the more evident by looking at speed / elevation chart:

Click on the image to replay the race.

And finally here is race route:

Here is the cumulative result of all the marathons so far:

Marathon / Half Marathon Total Time Pace
San Francisco 1/2 Marathon 2010 1:35:42 7:18
San Jose Rock-n-Roll 2009 1:30:59 6:57
San Francicsco 1/2 Marathon 2009 1:38:21 7:31
Kaiser Permanente San Francicsco 1/2 2009 1:41:30 7:45
Silicon Valley 1/2 2008 1:45:42 8:04
San Francisco 1/2 2008 1:52:44 8:25
San Francisco Full 2007 4:04:33 9:20
Silicon Valley Full 2006 4:06:57 9:25
San Francisco 1/2 2005 1:48:50 8:18

Technorati: running marathon results runsfm sanfrancisco

Monday Jun 21, 2010

Uber Conf 2010 - Day 4 Report - OSGi/Java EE in GlassFish and Getting Started with Clojure

Uber Conf Day 4 (Day 3, 2, and 1) started with yet another 10 miler with fellow attendees in 1 hr 18 mins and 7:49 pace. It was slightly slower than the day before - guess physical exhaustion was setting in ;-) Here are the mile splits:

Thanks to Andy for showing how to turn on the Auto-Lap feature in Garmin 305 ... really handy!

I gave a talk on how GlassFish provides a great execution environment for deploying OSGi, Java EE, and hybrid applications easily. The slides are given below:

The remainder of the day was spent in Clojure track by Stuart Halloway. Next are some basic notes for getting started with Clojure:

Why Clojure ?

  • Power (hosted on jvm)
  • Robustness (functional)
  • Concurrency (identity, state, time)
  • Abstraction (OO done right)
  • Focus (lisp)

Together, these features add up to simplicity. Simplicity means

  • absence of incidental complexity
  • sufficient to meet your design constraints

Simplicity does not mean

  • Familiarity has nothing to do with simplicity
  • its not superficial, goes to the bone (e.g. only simpler syntax is just a sugar wrapper, look for the supported idioms)
  • does not mean easy, its very hard to be simple

Lot of code in Clojure is not about "set" something, its about invoke a function on it.

How to get started ?

Download the latest stable release or cutting edge build. The Clojure REPL (Read-Evaluate-Print Loop) is the easiest way to run a Clojure program as shown below:

~/tools/clojure/clojure-1.1.0 >java -cp clojure.jar clojure.main
Clojure 1.1.0
user=> (print "Hello World")
Hello Worldnil
user=> \^D


~/tools/clojure/jun7 >java -cp clojure.jar clojure.main
Clojure 1.2.0-master-SNAPSHOT
user=> (print "Hello World")
Hello Worldnil
user=> \^D

Notice, the first fragment shows how to run REPL using the latest stable release and the second fragment shows the same using the cutting edge build. "Ctrl+D" exits the REPL shell. Stuart mentioned that the Clojure community stays on the cutting edge build most of the times.

Alternatively, you can also clone "labrepl" from "" which is an environment for exploring the Clojure language. It also provides complete instructions for getting started with NetBeans/Enclojure, Eclipse/Counterclockwise, Maven, Max/Linux command line, Windows command line, IDEA/La Clojure, and Emacs.

Configuring Clojure in NetBeans using the Enclojure plugin with NetBeans 6.9 gives the following error:

but works easily with NetBeans 6.8. The IDE seem to support REPL, Java/Clojure integration, syntax highlighting, brace/paren/bracket matching, code navigation, debugger and lots of interesting features.

Here is a typical REPL getting started session with NetBeans and Enclojure:

Here are some equivalent syntax with Java:

Semantic Java Clojure
new new Widget("foo") (Widget. "foo")
Access static members Math.PI Math/PI
Access instance members rnd.nextInt() (.nextInt rnd)
Chaining access person.getAddress().getZipCode() (.. person getAddress getZipCode)
  • "defn" is a symbol so no new syntax for adding a method.
  • \^ introduces metadata for the next symbol, "greet" in this case. You can put metadata anywhere.
  • "clojure.core" is the core of Clojure's implementation
  • "javadoc" knows the default JDK javadocs, can make a local copy and/or extend it
  • "show" is Java reflection
  • "dir", "show", "source" are promoted from community version to the bleeding edge build.
  • Source is not always exposed
  • [1 2 3] Call the function 1 with arguments 2 & 3.
  • '(1 2 3) don't evaluate it and print as is, just tick it.
  • Idiomatically Clojure requires less parentheses than Java
  • Every single function in Clojure is Runnable and Callable

  • Java interop is simple, wrapper-free (raw), performant, complete

Compojure is a small, open source Web framework for Clojure based upon Ring (similar to Python's WSGI and Ruby's Rack). Otherwise Clojure apps are deployed as a JAR file.

A subsequent blog will show how to deploy a simple Clojure JAR file and a simple web app using Compojure on GlassFish.

And finally, here are my top-10 reasons (in no particular order) that I'd like to attend UberConf next year:

  1. Long 90 minute sessions
  2. Lots of hands-on workshops
  3. Fun Run as part of the formal agenda
  4. Beautiful location (Westin Westminster) with lots of running trails
  5. Great food (breakfast + lunch + dinner)
  6. Small attendance so intimate discussions with speakers
  7. Great set of speakers
  8. Rarely see session hopping
  9. Pure technology, no product pitching
  10. Swags are nice - bracelet-style USB stick with all the presos, 2 different tee-shirts, fancy folder and some additional goodies for speakers

See ya next year, hopefully!

Check out the complete set of pictures at:

Technorati: conf uberconf denver clojure compojure glassfish netbeans javaee osgi

Thursday Jun 03, 2010

Jazoon 2010 Day 3 - Java EE 6 on Cloud, HTML 5 with JSF 2 and another run on Üetliberg

The Day 3 of Jazoon (Day 1 & 2) started with a great presentation on Gaia satellite and Data Processing by William O'Mullane. Gaia is a European Space Agency space mission that will be launched in Summer of 2012 to compile a catalog of approximately 1 billion stars. Most of their software is Java-based and have been fairly happy with the decision taken 10 years ago. They are very happy with the performance of Java and in certain cases its even 10x faster than C.

I gave a talk on "Running Java EE 6 applications in the Cloud". The talk explained flexibility, light-weight, extensibility, and ease-of-use of Java EE 6. It demonstrated a simple sample development and rapid deployment feature using NetBeans IDE. And then quickly jumped into how this application can be deployed on Amazon EC2, RightScale, Elastra, and Joyent infrastructure. I learned about the Simple Cloud API (Storage only) and Apache libcloud from Doug Tidwell's talk yesterday and so will try them as well.

I gave a tee-shirt from the Bay Area JUG Roundup to Rainer Grau - moderator of the conference and he was kind enough to change it for rest of the day. See his picture below.

The slides from my talk are available below:

More detailed steps to deploy your Java EE 6 application on each cloud management / provider mentioned above will be available in a later blog. Instant feedback via twitter is always much appreciated as shown in the case below:

The Spring 3.0 Themes and Trends talk was quite a dejavu because it was mostly a rehash of what is available in the Java EE 6 today. And I could not understand why would anybody use Spring (instead of Java EE) to use the goodness of the JSF and JPA technologies ?

Roger's talk on "Exploring HTML 5 with JSF 2" was very interesting and had a packed room, small but packed. He showed lots of HTML 5 samples and how Java Server Faces 2 can be used to include new tags like audio / video in a JSF composite component, Web Sockets and even Web Workers with JSF 2. His slides are available at:

Roger & I will work on publishing detailed steps on these demos in the coming days.

Spring Roo was a good one but it seems like that its basically trying to bring Ruby-on-Rails concepts like Dynamic Functions and Scaffold with some usual tooling tricks and heavy code generation to the Java programming language. One more framework, one more convention, one more programming style ... not sure if it fills any gap!

Dan & Aslak presented on Real Java EE Testing with Arquillian and this was mostly a demo-driven talk showing how different Java EE technologies can be easily tested using ShrinkWrap and Arquillian. And the cool thing is that they support deployment to GlassFish Embedded as well.

Here are some pictures from earlier today:

And the day concluded with yet another great run up Üetliberg, just a simple out & back but 1404 ft elevation gain in 4.59 miles. The elevation map is shown below:

More details about the run are given below:

Here are some pictures captured during the run:

It is just beautiful - definitely worth going at least once!

Last but not the least, Roger & I had a great dinner at au gratin - a great restaurant + adjoining bar on the first floor on Bahnhofplatz. They've got great food variety at a great location, reasonably priced (as per the Swiss standards ;-), and an American Football aficionado server by the name David. If you meet him, say our hello to him :-)

And here is the complete photo album:

This was my first Jazoon conference in the beautiful country of Switzerland and I thoroughly enjoyed it. I had some useful conversations and made some good contacts. I'd love to come back here again next year as well!

Next step Über Conf ...

Technorati: conf jazoon zurich javaee glassfish cloud amazon rightscale elastra joyent html5 jsf2 spring

Monday May 31, 2010

On the eve of Jazoon 2010 - Running in Zurich

What do runners do in a new city on the eve of a technology conference they are speaking at ?

Of course, they find a track and run. Especially with a new GPS-enabled running watch :-) Check out the activity uploaded from Garmin Forerunner 305 to The backend of Garmin community website seems like a Java Server Faces application, at least the URL ending in ".faces" indicate so!

There is no treadmill and bike at the hotel's fitness center so guess will have to run this route again or explore new ones, we'll see.

The Jazoon conference starts tomorrow and read about the presence of Oracle crew. Some fellow conference attendees are planning for a run to Üetliberg, most likely on Tuesday. Drop a comment on this blog if you are interested to run along.

Realized the conference + running gig has been going on for quite some time now ...

Note, this does not include running at the hotels' fitness center :-)

Technorati: conf running zurich jazoon

Tuesday Jan 19, 2010

How to pick a headlamp for night running ? - Petzl, Fenix, Princeton, Black Diamond, ...

In order to be prepared for the upcoming TheRelay 2010, I'm planning to start running in the night. This is my first venture into night running and there are several tips to follow (reflective gear, run against traffic, no dark colors, no headphones, etc). One of the most important one is to wear a headlamp that can show the trail sufficiently ahead and keep you aware of any breaks in the sidewalk, a fallen branch, debris or may be even a loose pet.

As with any product, there are several headlamps available in the market and it's confusing for a first time buyer. There is Moxie, Petzl, Princeton Tec, Petzl, Black Diamond, Fenix and many others. Fortunately has a good variety of them and the beauty is that you can visit your local store and try them on. And as always, the staff is very knowledgeable about the product line and don't suck you into higher end products which may be an overkill for your adventure. And of course, you can compare the products on, read blog reviews, see product reviews from actual customers, read about them at, tweet about it and get suggestions.

Some of the criteria to keep in mind while making your pick for a headlamp:

  1. Lightweight - It should be lightweight as it'll be strapped to your head all the time you are running. Any extra weight to your head will be a bothering soon.
  2. Good grip - The lamp should fit nicely on your head and not bounce up & down otherwise it'll be a pain very soon. Personally, I'd hate to run with holding headlamp in my hands instead.
  3. Brightness - 35-50 lumens is bright enough for night running as it gives you 9-19 seconds of visibility depending upon your pace from (7 - 10 min/mile). See a more detailed table below.
  4. Cost - The headlamps vary from $10 - $500. As with other products, invest wisely depending upon whether this is a one-time gig or you plan to continue this longer term. There are reasonable ones available close to $50.
And then there are several other factors like what kind and how many batteries are required (adds up to total weight), how long before it runs out, Halogen / LED, does it support multiple intensities, waterproof, and rechargeable unit.

Here is a comparison of the short listed headlamps on the features mentioned above:
Features / Models Fenix 7 Petzl Tikka XP 2 Petzl Tikka Plus 2
Weight (with batteries) ?? 3.1 ounces (88 gms) 2.9 oz (82 gms)
Lumens 7 - 225 60 50
Batteries 4 AA 3 AAA 3 AAA
Running time 2.5 - 210 hrs 80-160 hrs 55 - 140 hrs
Range (meters) 120m 17-60m 35m
Intensity 5 (Strobe, SOS, Warning) 2 (Flood/Spot) 2 (Flood only)
Waterproof IPX-8 IPX-4 IPX-4
LED Cree XR-E Q5 1 high-output LED / red LED 1 high-output LED / red LED
Cost 64.95 54.95 33.99
Where to buy ? Amazon Amazon Amazon

After reading forums (here, here, here), product reviews (1, 2), 6 5\* reviews @ Amazon, talking to friends, tweeting (1, 2, 3, 4) and getting a strong recommendation from the local REI store, I have decided to purchase Petzl Tikka Plus 2.

Black Diamond Sprinter got good reviews on but there is no point paying additional $40 for the rechargeable unit. I'd rather buy a recharger separately and use it elsewhere as well. Fenix HP10 is similar to Fenix 7, slightly more expensive and no noticeable difference. It's not worth paying extra money for the lumens that are not required.

Read more about IP waterproof ratings. Basically, IPX-4 provide protection against splashing water and IPX-8 provide protection against continuous immersion beyond 1m.

Here is a table that provides the visibility (in seconds) for a 35m or 50m range headlamp:

Now Amazon has tight restrictions on the usage of pre-paid credit cards and so the payment cannot be split between two of them. All merchants allow such arrangement at least in their physical shop but I guess this is one disadvantage of online shopping.

What headlamp do you use for night running ?

Technorati: running night headlamp petzl fenix therelay gear


profile image
Arun Gupta is a technology enthusiast, a passionate runner, author, and a community guy who works for Oracle Corp.

Java EE 7 Samples

Stay Connected


« July 2016