Arun Gupta, Miles to go ...

Arun Gupta is a technology enthusiast, a passionate runner, and a community guy who works for Sun Microsystems.
« Previous month (Aug 2007) | Main | Next page of month (Sep 2007) »

http://blogs.sun.com/arungupta/date/20070930 Sunday September 30, 2007

GlassFish Day Milan 2007

The first ever GlassFish Day, as part of Sun Tech Days, wrapped up last week. The event started with around approximately 60 attendees and a good part stayed all the way late in the day. The slides of all the sessions are available here and read a complete coverage of the event here. Ed Ort particularly talked to some of the attendees and captured the dialog as part of his report.

GlassFish is not only a fully open-source, production-quality and Java EE 5 compatible Application Server, it is also a community. And that's why Raffaele from Imola presented on "Imola JBI Binding components" as part of Open ESB story.

There were lot of attendees who came at the GlassFish Booth and were interested in finding out how to get started. Really it's very simple - Download, Use and Let us know. And this one image captures the distinguishing feature set of GlassFish V2:

The pictures below show how the attendees were involved and enjoyed the sessions.

View the complete album here:

See you in Beijing Tech Days!

Technorati: sun suntechdays glassfish conf glassfishday milan

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

ATA Quark Hotels, Milan - Thumbs Down

We stayed at the ATA Quark Hotel (Via Lamepdusa 11/A) for Sun Tech Days, Milan. This hotel completely defied "the first impression lasts for ever" philosophy. We were promptly checked-in at the service desk and were given a really nice room (with a separate office room and a walk-in closet) and that impressed us. But there after it was all down hill. Here are my experiences in the hotel and with it's staff. Other colleagues had similar experience as well:

  • Basic Office Room - The office room was nice and spacious with a separate TV but there was no phone. In fact the only phone in the "suite" was near the bed. And even though the hotel claimed that wireless network is expected to work in the room but they just could not debug why it was not working for me. It worked very well in all the conference rooms though.

  • Non-smiling Staff - We decided to have dinner in the hotel restaurant on the first night of stay. None (really none) of the waiters had any smile on their face. They barely knew any English so we had to show them the number in the menu to place our order. I always feel that a big smile on your face is the first language all humans should know. That certainly was not visible in most of the staff at the hotel, although some knew the English language to be able to communicate. Although I was quite surprised to see a smiling staff member at the reception desk.

  • Mysterious Fitness Center - The first morning I inquired about the fitness center and told it's on the 5th floor. The 5th floor is like a regular floor with directions to other rooms, no mention of Fitness Center at all. On further asking for explicit directions and I was told it's between room # 513 & 514. I thought may be this hotel uses fraction for room numbers but on the 5th there were directions to room 500-515 and 513 was the last room in that segment. There were two rooms right after #513. Initially I was skeptical to swipe my card on those rooms but because of the information received from the front desk I tried to swipe my card to no effect. These rooms were of course locked as well so even the door was not open. I got slightly irritated spending my first 15 minutes in the morning running up & down and dealing with the front desk instead of running on the tread mill but decided to call them again. I was told somebody is coming over right away which happened good 6 minutes later and this person was quite surprised when I approached him. So it seems like he was just wandering through the halls and I happen to approach him. Anyway, upon explaining (forget about apologies) he said let me find out where is the Fitness Center. It seems the hotel staff is not aware of the facilities within. Finally he opened one of the hotel rooms converted in the Fitness Center.

    And it's a true conversion because the room barely had workout machines (of course all the instructions in Italian only) with no workout towels. Anyway, I was glad that the treadmill worked :)

  • Disappearing Shower Towels - Room Service every morning did the expected job but then always took all the shower towels with them. This has never happened with me during all my travels. But anyway we asked for the shower towels for on the first morning and the Room Service came back with just one thin cotton towel. We mentioned that we need towels for all of us and this guy comes back with 2 more cotton towels. These towels become with the first touch of water and in no way can be used effectively after a shower. On further explaining, this guy finally comes back with the real shower towels and a weird frown on his face.

  • Expired Room Key - The hotel room key expired the night before itself and it had to renewed at the Front Desk late in the night. Although this is not very uncommon (never happened with me) but lot of other colleagues were complaining the same issue in this hotel.

  • Shower Tub Wall - This is probably a more Italy thing but both the hotels we stayed at (in Rome and Milan) barely cover the shower stream. In this particular hotel just turning the shower (that had a big shower head) was spilling the water out of the the tub. The bathroom used to be flooded after anybody takes a shower. Strangely there was a glass wall on the other end of the tub where there is no water or nobody could possibly take a shower because of the fixed shower head.

  • City Knowledge - The amount of knowledge the reception desk (there was no Concierge) had about the City was pretty "amazing". They only knew about the nearest Metro station and City Center. Everything else was left for the hotel guests to explore themselves. And they did not have any resources on how to gather further information. I sometimes really wondered the hotel staff was probably from some other city.

  • Taxi Fare - The taxi fare from Malpensa airport to anywhere in the city is fixed at 70 Euros. I asked the front desk about this and was told that it would be approximately 95 Euros (which is typically what the meter would show). Fortunately the taxi driver who dropped us at the airport was a great guy and charged us 70 Euros even though the meter showed 95 Euros. I really wonder how much the hotel staff really know about moving around the city.

The ATA Hotels website has disabled right-click, gosh such a cheap trick. So even though you can click on Business, Hotels & Resorts and see the list of hotels available but right-clicking (in order to Copy The Link Location) shows following:
 

If you are planning a travel to Milan, I'd certainly recommend to look for an alternate hotel. At least I'll stay in a different hotel if I happen to visit the city again.

Milan by itself is a great city though. Read my travel tips to Milan here. All my travel tips to Europe are aggregated here.

Technorati: traveltips ataquarkhotel milan

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070929 Saturday September 29, 2007

Travel Tips to Milan

  1. Milan : Milano :: Rome : Roma :: English :: Italiano. In simple terms, Milan and Rome are English names for Milano and Roma in Italian (called as Italiano in Italian). Everybody will understand if you say Milan or Rome but When in Rome, live like Romans and so pretend-like-a-local.
  2. Airports: Milan has two airports - Linate and Malpensa. Linate mostly caters to the domestic traffic and Malpensa to both domestic and international. Malpensa airport is out of Milan and Linate is in the city. Make sure to check which airport is closer to the hotel (especially if you are planning a domestic and international trip out of Milan) and book your flights accordingly.

    The airport in Rome is Leonardo DaVinci and is located in Fiumicino city. But all the locals call it as Fiumicino airport and even all the directions mention Fiumicino.
  3. The taxi fare from Malpensa airport to anywhere in the city is fixed at 70 Euros irrespective of what comes in the taxi meter. The driver who dropped us from airport to the hotel of course did not convey that to us because the meter in his taxi showed 95 Euros and he happily took the money we gave him. The taxi driver who dropped us at airport told us about this so make sure to not pay more than 70 Euros if you going to/from Malpensa.
  4. In all my experience so far, Taxi drivers take only cash. So make sure you know the approximate distance/time/cost from the airport to your hotel and have sufficient cash. All the airports have an ATM machine which is very convenient.
  5. Keep a jacket handy depending upon the city and time of the year. Make sure to check the weather before packing your clothes. In winter times, it's good to carry an Umbrella. We checked the weather online before starting our trip but it turned out to be complete reverse of what we expected.
  6. "Grazie" is "Thanks" and "Ciao" is "Hello" or "Bye" in Italiano.
  7. If you are traveling with kids, it helps to mentally prepare them by sharing the itinerary, giving them an estimate of the flight time, amount of walking/waiting required (especially in Rome which needs lot of walking) for any tourist spots and of course carrying some handy snacks for them if the wait is too long or if the meal is delayed. In Rome, Gelato was easily accessible through out the city and worked as a great incentive for my son :)
  8. Having breakfast included in the hotel package turned out to be a big boon as it gives a good head start for the day. You can always have breakfast in the hotel anyway but it might be more cost effective to be included in the package.
  9. Avoid flights during peak office hours. We spent an extra 45 minutes because our flight arrived at Malpensa airport at 5:30pm and then got stuck in traffic going to the hotel.
  10. Both the hotels in Italy (Melia Roma Aurelia Antica and ATA Quark Hotels) did not have Iron boards for some inexplicable safety reasons. This might be a trend in Italy hotels so make sure to carry clothes that need no ironing, or wear them without iron or use the laundry service to get them iron. The later option requires you to give the clothes a day in advance and pay an exorbitant amount for getting a simple tee-shirt ironed.
  11. Most of the tourist spots in Milan are accessible using public transport. We bought a day pass (for 3 Euros and available from most of the kiosks near Metro stations or Light rails) that is valid in Metro, Tram/Light Rails and other public transport. This keeps you mobile and provides option to move around.
  12. McDonalds are available at most of the places in case you care.
  13. In terms of places to visit, Duomo of course is the main destination in Milan. There is a Fashion Galleria right next to Duomo and a significant part of the day can be spent there. The Last Supper painting has a 2 month wait but you can always talk to one of the local travel agency who typically buy the tickets in advance and can take you inside.

Here is my travel album:

All my travel tips to Europe are aggregated here.

Technorati: traveltips milan europe

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070926 Wednesday September 26, 2007

Sun Tech Days Rome 2007

Sun Tech Days Rome 2007 was kick started by Maria Grazia Filippini (Director General, Sun Microsystems Italy) to a room full of approx 300 audience. She was followed by Corrado Sterpetti (Software Practice Manager, Sun Microsystems Italy). Both of them addressed the attendees in the local language. I could not understand any part of the talk (except bongiorno) but the passion was quite visible in their tone. And this is what brings Sun Tech Days back to Italy.

Reggie explained that this is 4th Sun Tech Days in Italy which is exactly the number of times Italy has won FIFA World Cup so far. It was fun when he divided the room in two halves and made them say "World" and "Cup" as he was waving his hand from left to right and wishing for Italy to win the 5th World cup in 2010.

The two main goals of the day set early in the day were:

  • Learn and Immerse in the different technologies presented.

  • Talk to one of the presenters and share with them how they can help you.

If you have attended any of the JavaOne, this is how John Gage sets the tone as well. And truly, this is one of the main objectives of taking Sun Tech Days all over the world. It's all about community and participation.

The first event of the day was a demo shoot out where 5 engineers demonstrated cool technology demonstrations. Here are the technologies that were demonstrated:

Arun Gupta (me) jMaki - Sun Tech Days Event Map
Sang Shin NetBeans Profiler
Leonid Lenyashin DTracelet in Sun Studio 12
Sridhar Reddy SunSPOT
Inyoung Cho Java ME Technologies

Then the day were split into three different tracks - Java, Solaris and Hands-on-Labs.

The first talk in Java Track was presented by Sridhar on "Java EE 5, GlassFish and Their Future". GlassFish is an open-source, production-quality and JavaEE 5 compatible Application Server. GlassFish V2 is now available and has lots of cool features. This one slide captures all of them and Sridhar gave details on all of them. He also gave a preview of what's coming in GlassFish V3. GlassFish V2 Final can be downloaded from here. You can try a Technology Preview build of GlassFish V3 here. If you have any questions about GlassFish, please post them at users@glassfish or GlassFish Forum.

Sridhar's talk was followed by my talk on "Metro and REST" where I explained how Metro is one-stop shop for all Web services needs - from simple Hello World to Secure, Reliable, Transactional and .NET 3.0 Interoperable Web services. The talk built upon Sridhar's demo where he showed how a simple Web service can be built and invoked using NetBeans 6. This talk demonstrated how Reliability and other enterprise features can be simply added by a click of button. It also demonstrated how an Excel 2007 client can invoke a Secure and Reliable endpoint deployed on GlassFish. This talk also provided a brief introduction to Jersey (Reference Implementation for JSR 311) and showed code samples on how it enables to easily and intuitively publishing RESTful endpoints. The slides for my talk are available here.

I had to leave right after my talk to catch the flight to Milan and so that's my summary of Tech Days Rome. I hope you guys had fun and we empowered you to be more productive. Feel free to leave comments if you attended and enjoyed.

GlassFish Day and NetBeans Day starts in Milan at 1pm local time today. The complete agenda is here. Looking forward to see you there.

Here is the album for Tech Days Rome 2007:

Technorati: suntechdays rome glassfish metro webservices jersey netbeans jmaki glassfish

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070924 Monday September 24, 2007

NetBeans Day - Rome 2007

I attended and presented at NetBeans Day Rome earlier today. I sat down to write a detailed report but Dana Nourie (SDN Technical Writer) has already done a superb job summarizing the event. Instead of repeating the content I'd like to share some photos from the event showing how the developers were engaged all through out the day.

The event started with approx 150 people and 75% of the them maintained all the way to the last session that finished at 7:00pm.

The jMaki demos shown at NetBeans Day can be recreated using the following entries:

The complete album is available at:

Technorati: conf suntechdays netbeansday netbeans jmaki

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

Rome to Pisa - A Day Trip

Here is a complete itinerary of our day trip from Rome to Pisa:

8:00 am Courtesy Shuttle from Melia Roma Hotel to Ottaviano Metro Station
8:30 am Arrive at Ottaviano Station (identified by red M in a white square)
8:45 am Metro Train from Ottaviano to Terminal Station (Stazione Termini)
8:55am Arrive at Terminal Station (Metro drops underground, go above the ground, purchase tickets from the counter, check the train number at Departure screens and Wait at the terminal)
9:45am Train departs to Pisa (Inter City Plus)
12:57pm Arrive at Pisa
1:05pm Out of the Station and Start walking towards the Tower of Pisa (Plan for 25 minutes walk, Take Via Francesco Crispi and Via Roma and there is no need to buy a city map :)
1:30pm Arrive at Leaning Tower of Pisa (La Torre). The entrance and climb up the tower is controlled and you can purchase tickets by the time slot.
2:20pm Start walking back to the Station
2:45pm Arrive at the Station (There is McDonalds at the station for a quick lunch or a better variety at Terminal Station)
3:00pm Buy the return tickets (A better option is to buy return tickets from the original destination or from the Station at Pisa before starting out to visit the monuments. This will ensure a confirmed seat because the station stops selling tickets few minutes before the scheduled departure.)
3:45pm Train departs to Rome
7:30pm Arrive at San Pietro Station
7:55pm Walk to Ottaviano Metro Station
8:30pm Bus from Metro Station to Hotel
9:00pm Arrive at the Hotel

The Leaning Tower of Pisa is the main attraction of this city. The streets were pretty deserted (may be because of Sunday) and it almost felt that the majority of people moving around were tourists. You can always spend extra time in the city or at the festive environment around the monuments. This allows you to take the 5:00pm Inter City Plus to reach back Rome around 8:15pm. As always, it's recommended to check the train schedule at Trenitalia.com.

And here is the photo album:

All my travel tips to Europe are aggregated here.

Technorati: traveltips rome pisa

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070923 Sunday September 23, 2007

Travel Tips to Rome

Arrived Rome 4 days ago and seen a good part of the city so far. Based upon our experience, here are some tips for travel to Rome:

  1. There are no "easily accessible" public bathrooms, even in the tourist spots. However consider eating at a restaurant, not a side-street shop, and there is a higher likelihood of finding a bathroom there.
  2. There are free flowing drinking water fountains through out the city. Some of them gives a feeling that the water may not be for drinking but I was told the water is clean and we survived :)
  3. IMHO the side-street shops sell really authentic food as opposed to big restaurants, and it's really cheap. You can NOT miss eating pizzas (which is sold by the weight as opposed to S, M, L or XL) in this city. And they are just fantastic. A Medium size pizza can range from 6-10 Euros.
  4. The best option to roam around the city is taking a City Tour using the numerous available options. Most of them stop at the main destinations and allow to hop-on and hop-off any where in the route. The following questions will help you decide amongst the available options of buses:
    • How many buses in the fleet ? (Typically 35-45)
    • Frequency of buses - how frequently they come ? (Typically 20 minutes)
    • Does it cover all the major spots or at least the ones you want ? (Most of them do)
    • Do they have English language guide ? (All of them generally have)
    • Do they have alternate routes ? This allows you to visit different parts of the city in the same day.
    • Do they have any 2-day tickets available ? This allows you to cover all the venues at an easy pace.
    • Do NOT purchase the City Tour tickets from the hotel as they are easily available from the different bus stops. Roma Cristiana ORP (we took this one) or Bus #110 are two popular ones and have great coverage of the city.
  5. Here are some good spots in Rome that should not be missed (in no particular order):
    • piazza Navona (1/2 day of fun & shopping)
    • San Pietro in Vaticano (approx 2-4 hrs)
    • Fontana di Trevi (2 hours)
    • Vatican Museum (Timings differ on each day so check the schedule and plan for 1-1.5 hour long wait in the queue and a 4 hour trip in the museum, it's definitely worth it)
    • Colosseo and Roman Forum (1/2 day)
    • Pantheon (2 hours)

    Each of these location is covered by all the City Tour buses.

  6. Do NOT miss the variety of ice creams here, known as Gelato in the local language. And you can mix-and-match different flavors in the same cone and really colorful ones. Just look for Gelateria banner on the shop and that's your destination for gelatos. Of course, you can also find Spagetteria, Birreria, Pizzeria, Cafetteria and Trattoria.
  7. If you buy any memorabilia from the side street shops, make sure to haggle. At certain instances we were able to cut the price down by 50%. This may not be true every time though :)
  8. You see a more authentic part of Rome when traveling through the city streets. The stone streets and houses, accordion play by local artists, water fountains, and many other "Roamy" artifacts. Most of the tourist destinations are approachable through the streets so it's recommended to take a city map from the hotel and walk around.
  9. I already talked about walking in the previous point, but remember it's LOT of walking so make sure to carry a really comfortable shoe.
  10. The price of eating in and taking out is different. If you plan to sit in the restaurant then go sit and somebody will come and serve you. Otherwise in self service mode you are expected to go out of the restaurant. We were actually told at one instance to move out of Gelateria.
  11. Tipping is not expected in the restaurants.
  12. Don't forget to charge your camera batteries and carry an extra memory card, Rome is a beautiful city.
  13. Most of the people wait for the "Walk" symbol to cross a major road. At small streets, with no Walk symbol, just cross the street like that. It's hard the first time but then you get used to it. For me, it felt so much like Delhi so no issues in that ;-)

Here is the travel album so far:

The Sun Tech Days in Rome start later today. Read all about them here.

All my travel tips to Europe are aggregated here.

Technorati: traveltips rome conf suntechdays

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070920 Thursday September 20, 2007

GlassFish, Metro, Jersey and jMaki @ Rome and Milan Sun Tech Days

Sun Tech Days are coming to Rome (Sep 24-25) and Milan (Sep 26-28).

This is FREE event organized by Sun Microsystems. Basically Tech Days are scaled down versions of Java One packed into a suitcase and brought right to where the developers are as described by Renita Stafford, Program Manager of Sun Tech Days.

The agenda for both the venues is very comprehensive with technical sessions, hands-on-labs, community participation, and complete days focused on a product such as GlassFish Day, NetBeans Day and Open Solaris Day. I'll be giving several presentations on Metro, Jersey and jMaki.

Rome Sep 24 2:10-3:00pm Technologies for Creating Web 2.0 Rich Internet Applications
Rome Sep 25 11:00am-12:00pm Metro and REST : Web Services with JAX-WS, WSIT, JAX-RS and More
Milan Sep 26 6:20pm-7:10pm Metro Web services
Milan Sep 27 2:10pm-3:00pm Metro and REST : Web Services with JAX-WS, WSIT, JAX-RS and More

See you there! You can also find me and some other members of GlassFish team at the GlassFish booth in Milan.

Ed Ort will also be covering the Milan Tech Days so look forward to some good coverage from there.

Technorati: sun suntechdays metro glassfish netbeans jmaki conf

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070919 Wednesday September 19, 2007

Rails Conf Europe 2007 - Day 3

Day 3 started with reminders about RubyConf 2007 and upcoming Euruko. Marcel and Koz (from Rails core team) gave the keynote talking about the best practices for Rails (theRailsWay.com). Here are some of the tips they explained:

  • If a controller has more than 6 or 7 actions, and each action > 6-7 lines then there is something wrong. More details here.
  • Associations proxies are very handy, more details here.
  • Use named callbacks to improve maintainability and readability of the code. This also help improve clarity of thoughts. The value of expressive interfaces is important as the size of applications grow bigger. More details here.
  • Use with_scope to subset a model's collection - More details here.

The Sun booth was swamped today as well, just like yesterday. There were some great interactions and I do plan to follow up on them.

I missed the "Meet the JRuby team" BoF yesterday night. But I was very excited to know that Ola Bini made a statement in the bof that amongst all the free and fee-based Application Servers, GlassFish is the best. GlassFish V2 was released earlier this week and read all about it's capabilities here.

Craig and Nick's talk on Rails Hydra was SRO with even all the floor space occupied and was attended by DHH. Brian mesmerized the audience with NetBeans Ruby magic in his talk. There were lots of users who came by the booth afterwards and were very happy with the NetBeans Ruby support. All the presentations will be available here.

 

Andrea won the SunFire T-1000 Server, Congratulations! And Sharat gave out 5 copies of RESTful Web services books as well.

And the food of course was quite a blast, the desserts were completely outstanding!

We'll see you at another conference now.

Here are some useful entries (with numerous pointers on screencasts, blogs, tips & extensive feature sets) to get you started with JRuby on Rails, NetBeans IDE, GlassFish and jMaki:

The updated picture album is available at:

Technorati: conf railsconf railsconfeurope glassfish netbeans jmaki rubyonrails

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

I shoot you, You shoot me

The other half of the picture below is here.

The pictures were taken during a beer bust hosted by Joyent during Rails Conf Europe 2007 at Lindenbrau Brewery in Berlin, Germany.

Any guess who's the guy behind the camera ?

Technorati: railsconf railsconfeurope photos lindenbrau shootme

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070918 Tuesday September 18, 2007

Rails Conf Europe 2007 - Day 2

Day 2 started with regular announcements and keynote by DHH. The demographic distribution of approximately 750 attendees was shown in the filler slides right before the keynote:

Germany 29% Sweden 3%
UK 17% Spain 3%
United States 11% Norway 3%
Denmark 7% Italy 2%
Netherlands 5% France 2%

The technical sessions and BoFs started today and the exhibit hall was opened as well. Sun booth was swamped and we showed "NetBeans Tooling for Ruby on Rails", "Rails and Software as a Service" and "Rails powered by jMaki and GlassFish".

The demo showed at "Rails powered by jMaki and GlassFish" is available here. And here are some other pointers mentioned in the booth:

GlassFish is an open-source, production-quality and Java EE 5 compatible Application Server. Here are some of the key benefits of GlassFish for Rails developers:

  • GlassFish allows existing Java EE applications and RoR apps in one container.
  • GlassFish provides high availability and clustering support integrated in the app server.
  • GlassFish provides database connection pooling that allows to reuse database connections.
  • Applications can be re-deployed on GlassFish without any need to re-start the server.
  • The development and deployment environment is exactly the same.

There are few others and they will be consolidated in an article later.

Both of Sun's talks today were well attended:

The lunch was quite a treat:

Here are some useful entries (with numerous pointers on screencasts, blogs, tips & extensive feature sets) to get you started with JRuby on Rails, NetBeans IDE, GlassFish and jMaki:

The updated picture album is available at:

Use the tag "railsconfeurope" to ensure your blog/photos are aggregated appropriately.

Technorati: conf railsconf railsconfeurope glassfish netbeans jmaki rubyonrails

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070917 Monday September 17, 2007

Rails Conf Europe 2007 - Day 1

Arrived in Berlin 2 days ago for Rails Conf Europe. Sun Microsystems is a diamond sponsor and you can meet me at the "Rails powered by jMaki and GlassFish" booth in the Exhibit Hall. You can read about overall Sun's presence here.

I realized in the morning that my Full Conference pass did not account for any of the tutorials. And all of them were completely sold out with approx 750 attendees flooding all the rooms. So there was no chance to even sneak in :( I decided to spend the time taking the city tour and visiting other places. Here are some tips for travelers to Europe (Berlin in particular):

  1. Before you start on the trip, it's a good idea to inform your Credit Card company and ATM provider about your upcoming trip. This will ensure that they do not unnecessarily block your card suspecting a fraudulent usage.
  2. The taxi driver was very excited knowing that we came from California. The reason for his excitement was Arnold Schwarzenegger - that a former European national became "Mr Masculine", then a movie super star and now the Governor of California :) I'll probably carry a cutting of Arnold from a local newspaper in my next visit.
  3. So far in my 2-days experience, European shopkeepers prefer (read "accept only") cash as opposed to the US where credit card is accepted everywhere, even in Kinko's for a one-pager :) So make sure to carry sufficient cash with you. Nobody has agreed to accept the credit card so far (Taxi Driver, City Tour, Grocery and even good restaurants).
  4. Some ATM machines in the US can accommodate a pin number greater than 4 digit numbers. ATM machines in Europe cannot handle that and my banker specifically confirmed that with me. It's recommended to reduce your pin number to 4 digits.
  5. How to convert $$ to Euros ? There are multiple ways but the best bet is to use the ATM machine at the airport. They provide a good conversion rate, most reliable and easily accessible. Check with your ATM card provider if they charge any fees for the international usage. For example, Wells Fargo charges $5 flat fee for international usage of their ATM card. Bank of America is a good alternative as it does not charge any transaction fees if you use any Deutsche Bank machine (which is prevalent) and of course BoA by itself is a much bigger network.
  6. Bathrooms/Restrooms are called as "Water Closet", typically marked with "WC", and that was a new learning for me right at the airport.
  7. The Berlin City runs "Berlin City Tour" hop-on-hop-off buses starting at 10:30am at an interval of 30 minutes and the last leaving at 4pm. In an approx 2 hour tour (without any hop off) they cover 11 touristy spots in the city. The weather was beautiful and we enjoyed the ride as the first thing in Berlin. The guide particularly made it interesting by sharing stories around the spots.
  8. The communication with locals is bit of an issue. Most of the people in public dealing can understand English somewhat but the likelihood of asking somebody on the roadside for directions and not able to communicate is very high. Be prepared to ask more than once and it'll work.
  9. Everybody in this city (Berlin) seems to smoke - quite a few actively and rest of them passively. Public smoking is quite prevalent and that was quite a change from back home.
  10. I did not find any water fountains in public places, not even outside the bathrooms. So carry your own water bottle.

And here is Berlin in pictures

Thanks to Joyent for hosting the beer bust. That's all for today! See you tomorrow at the booth :)

All my travel tips to Europe are aggregated here.

Technorati: conf railsconf railsconfeurope glassfish netbeans jmaki traveltips europe

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

Screencast #Web8: jMaki on Rails for Dummies - 2nd edition

The support for Rails in NetBeans IDE has improved considerably in the past few days. Greg and Ludo have been working on ramping up the jMaki NetBeans module as well. This screencast is an update to #web2 and shows how the development experience for creating a jMaki-enabled Rails application is drastically simplified.

The screencast shows how a jMaki-wrapped Yahoo and Dojo DataTable widget can be used to pull data from MySQL database using ActiveRecord in a Rails application. The screencast also shows how multiple widgets on a RHTML View can talk to each other using simple tags.

Enjoy it here!

Technorati: screencast jmaki netbeans rubyonrails mysql

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070914 Friday September 14, 2007

Announcing GlassFish Gem for Rails

Jerome has been working on GlassFish gem for Rails. Read the interesting discussion on dev@glassfish. This blog announces a technology preview of this gem and describes the steps to try it out.

  1. Download GlassFish Gem from here.

  2. If you already have JRuby on Rails configured, then skip this step. Otherwise you need to install JRuby on Rails.
    1. Download and Unzip JRuby 1.0.1 from here (lets say JRUBY_HOME).
    2. In JRUBY_HOME\bin directory, install Rails plugin using the following command:

      jruby -S gem install rails -y --no-rdoc --no-ri

      The output of the command looks like:

      Bulk updating Gem source index for: http://gems.rubyforge.org
      Successfully installed rails-1.2.3
      Successfully installed activesupport-1.4.2
      Successfully installed activerecord-1.15.3
      Successfully installed actionpack-1.13.3
      Successfully installed actionmailer-1.3.3
      Successfully installed actionwebservice-1.2.3

  3. Some platform specific changes listed below are required due to bugs in JRuby 1.0.1.
    1. Only on Windows
      1. Edit "JRUBY_HOME\bin\_jrubyvars.bat" and replace

        for /r "%JRUBY_HOME%\lib" %%i in (*.jar) do @call "%~dp0_jrubysetcp" %%i

        with

        for %%i in ("%JRUBY_HOME%\lib"\*.jar) do @call "%~dp0_jrubysetcp" %%i

        This change is required because "/r" switch causes the entire tree of the directory to be parsed instead of just including the JARs in JRUBY_HOME/lib directory. More details here. This is filed as bug #1347.
      2. The value of CLASSPATH environment variable increases exponentially with each execution of the gem. Then you start seeing the following error in your command shell:

        The input line is too long.
        :gotCP
        was unexpected at this time.


        This is a filed as bug #1350. A workaround is to start a new shell when you start seeing the error.
    2. Only on Macintosh: "JRUBY_HOME\bin\glassfish_rails" script executable permissions need to be set explicitly. This is filed as bug #1348.

  4. Install the GlassFish gem using the command:

    c:\Downloads>\jruby-1.0.1\bin\gem install glassfish-gem-10.0-SNAPSHOT.gem

    The output of the command looks like:

    Successfully installed GlassFish, version 10.0.0

    Notice, you need to invoke this command from the directory where the gem was downloaded.

  5. Create a new rails app using the following command:

    %JRUBY_HOME%\bin\jruby -S rails hello

    The output of the command looks like:

    create
    create app/controllers
    create app/helpers
    create app/models
    create app/views/layouts
    create config/environments
    create components
    create db
    create doc
    create lib
    create lib/tasks
    create log
    create public/images
    create public/javascripts
    create public/stylesheets
    create script/performance
    create script/process
    create test/fixtures
    create test/functional
    create test/integration
    create test/mocks/development
    create test/mocks/test
    create test/unit
    create vendor
    create vendor/plugins
    create tmp/sessions
    create tmp/sockets
    create tmp/cache
    create tmp/pids
    create Rakefile
    create README
    create app/controllers/application.rb
    create app/helpers/application_helper.rb
    create test/test_helper.rb
    create config/database.yml
    create config/routes.rb
    create public/.htaccess
    create config/boot.rb
    create config/environment.rb
    create config/environments/production.rb
    create config/environments/development.rb
    create config/environments/test.rb
    create script/about
    create script/breakpointer
    create script/console
    create script/destroy
    create script/generate
    create script/performance/benchmarker
    create script/performance/profiler
    create script/process/reaper
    create script/process/spawner
    create script/process/inspector
    create script/runner
    create script/server
    create script/plugin
    create public/dispatch.rb
    create public/dispatch.cgi
    create public/dispatch.fcgi
    create public/404.html
    create public/500.html
    create public/index.html
    create public/favicon.ico
    create public/robots.txt
    create public/images/rails.png
    create public/javascripts/prototype.js
    create public/javascripts/effects.js
    create public/javascripts/dragdrop.js
    create public/javascripts/controls.js
    create public/javascripts/application.js
    create doc/README_FOR_APP
    create log/server.log
    create log/production.log
    create log/development.log
    create log/test.log

  6. Start GlassFish for this newly created app using the following command:

    %JRUBY_HOME%\bin\jruby -S glassfish_rails hello

    You need to invoke the command from outside the application directory instead of the natural way (script\server start). This will be fixed in the future builds. The output of the command looks like:

    Sep 13, 2007 1:32:42 PM com.sun.enterprise.v3.services.impl.GrizzlyAdapter postConstruct
    INFO: Listening on port 8080
    Sep 13, 2007 1:32:42 PM com.sun.enterprise.v3.services.impl.DeploymentService postConstruct
    INFO: Supported containers : jruby,web,php,phobos
    Sep 13, 2007 1:32:43 PM com.sun.grizzly.standalone.StaticResourcesAdapter <init>
    INFO: New Servicing page from: C:\workarea\samples\rails\hello\public
    C:/jruby-1.0.1/lib/ruby/gems/1.8/gems/actionmailer-1.3.3/lib/action_mail
    er.rb:49 warning: already initialized constant MAX_LINE_LEN
    Sep 13, 2007 1:32:51 PM com.sun.enterprise.v3.server.AppServerStartup run
    INFO: Glassfish v3 started in 8996 ms

  7. Now you can view the default GlassFish web page at "http://localhost:8080".

This verifies the basic installation of the GlassFish gem. Lets add a simple controller to our application.

  1. Add a controller to the application by changing to the directory "hello" and giving the command:

    jruby script\generate controller say hello

    The output of the command looks like:

    exists app/controllers/
    exists app/helpers/
    create app/views/say
    exists test/functional/
    create app/controllers/say_controller.rb
    create test/functional/say_controller_test.rb
    create app/helpers/say_helper.rb
    create app/views/say/hello.rhtml

  2. In hello\app\views\say directory, edit "hello.rhtml" such that it looks like:

    <h1>Say#hello</h1>
    <p>Find me in app/views/say/hello.rhtml</p>
    <%= @hello_string %>
  3. In hello\app\controllers directory, edit "say_controller.rb" such that it looks like:

    class SayController < ApplicationController
      def hello
        @hello_string = "Hello from Controller!"
      end
    end

  4. The page is now accessible at "http://localhost:8080/hello/say/hello".

This is hosted using GlassFish. Of course, the same application can be deployed on WEBrick by giving the command:

jruby script\server webrick start

Try your applications on GlasFish gem and let us know by leaving a comment on this blog or sending an email to users@glassfish or posting to GlassFish forum.

You can also download GlassFish V3 standalone builds from here. The instructions to deploy a Rails application on GlassFish V3 are available here and on V2 here.

Technorati: jruby ruby rubyonrails glassfish jrubyonglassfish gem v3

del.icio.us | furl | simpy | slashdot | technorati | digg |
|

http://blogs.sun.com/arungupta/date/20070913 Thursday September 13, 2007

Dilbert: Web 2.0 or 1.0 ?

Technorati: dilbert web2.0

del.icio.us | furl | simpy | slashdot | technorati | digg |
|
« Previous month (Aug 2007) | Main | Next page of month (Sep 2007) »

Valid HTML! Valid CSS!

This is a personal weblog, I do not speak for my employer.