Tuesday Sep 03, 2013

Java EE 7 Launch Celebrations in Africa Trip Report

Morocco, Senegal, South Africa, and Uganda were the African four countries on my Make the Future Java EE 7 Global Celebrations tour. The event was organized by JUG AFRICA and Max Bonbhel covered a few other countries as part of this tour.

I was welcomed with a very warm African hospitality in each country. The JUG leaders took extreme care of me through out the stay, starting right from the airport pick up, organizing the events, working on logistics, and a multitude of other things. Remember, the JUG leader is a volunteer role but its the passion for technology and sharing with the community that drives them. And that was truly evident in each of them!

A big shout out to Badr Elhouari (Morocco), Mamadou Ngor Diouf (Senegal), Mark Clark and Richard Kolb (South Africa), and Nsubuga Hassan (Uganda) for being the wonderful hosts!

I had lots of opportunities to engage with African developers from all around the continent. Yes, Africa is a continent with 54 different countries! Typically, locals talk about North, East, West, and South Africa regions. I was fortunate to share some of my Java EE 7 knowledge in all four regions, and in return learned a lot more from them.

The format at each event was mostly similar - provide a code-driven introduction to Java EE 7 and keep it completely interactive. I truly believe that the code should be written such that it speaks for itself. The developer productivity enhancements made in the Java EE platform over the years have certainly made it very much a reality. A typical flow covered the following samples, in a completely interactive manner:
There was barely noticeable to no language barrier in all the countries that I visited. This truly allowed a frank and direct conversation with the developers, as opposed to using a translator.

The trip started with the first event in Casablanca, Morocco (North Africa). Badr took time out of his family vacation to receive me at the airport and ensuring a smooth operation of the event. There were about 50 developers during a week day evening and otherwise a general holiday season.

The interactive session had several existing Java EE developers. Riding a train from Rabat to Casablanca with a few of the JUG members gave a good 1-1 time to interact with them. One of the developers showed me a sample application he has built to prepare for Java certification. One of the common feelings in Morocco at least is that their sub-Saharan bretherens are preferred for any Africa-wide events. However I started my trip with North Africa, so no complaints there ;-)

Something to learn about Morocco ...
  • Sahara Desert is about 900 km from Rabat/Casablanca. Plan for a few days if you are interested in a desert safari
  • Cars are used to travel from/to airport, not camels ;-)
  • Don't miss out on visiting one of the Kasbah, they are very unique and colorful structures
Here are some pictures from that event:

JMaghreb is the biggest Java developer conference in North Africa. I attended their inaugural conference last year and had a really good time giving a Java EE 6 hands-on lab to a packed room. The conference is focused towards a "pragmatic developer", not necessarily using all the bleeding-edge technologies. Badr has already started planning for JMaghreb 2.0 (Nov 7 and 8) and planning to expand the outreach to Southern Europe and other neighborhood countries. Reach out to him if you are interested in speaking at that event, and of course register for this free conference.

The next stop of the trip was at Dakar, Senegal. There were about 30 developers for the Saturday morning event. On the request of JUG leader, I started the event with a slide deck providing a complete overview of the platform. And then showed a bunch of samples afterwards. The Java EE 7 Technical Kit provides a slide deck (with speaker notes) that you can use to talk about Java EE 7 at your local JUG. The attendees were not shy in asking questions and the session continued with code-driven talk afterwards.

 I was fortunate to bump into couple of passionate GlassFish developers who are using it for a local telecom company. Hear all about their passion around Java EE 6, GlassFish, and NetBeans:

Here are some pictures from that event:

Some things to learn about Senegal ...
  • Senegal visa can be obtained at the airport, but be prepared to "grease" the machinery
  • Arrange a pick up at the airport otherwise you'll be overwhelmed with the cabbies
  • Visit Rebirth of Africa monument in Dakar, it is very very inspiring

The next stop of the trip was at Johannesburg, South Africa. Nobody amongst ~100 developers wanted to see any slides and so we jumped straight into the code. I showed lots of code and had lots of interaction.

I also had the opportunity to visit The Wanderers, a cricket stadium known for the second highest one day total of 438 by South Africa. I spent significant part of my day at the office and that's where the event was hosted in the evening as well.

Some things to learn about South Africa ...
  • Johannesburg, with about 4.4 million population, is definitely a premier technology hub in all of Africa
  • Being far South, they sort of feel in a silo and not completely connected from rest of the world. This is in spite of the fact that there is decent Internet connectivity.
  • Startup culture is definitely prominent here - products are serving local needs because of infrastructure costs, otherwise services-based
Here are some pictures from that event:

The last stop of the trip was at Kampala, Uganda. Nsubuga Hassan picked me from the Entebbe airport and we shared a 1.5 hrs taxi ride to the hotel in Kampala. The number of women participants truly surpassed the number of men at the event, and this was truly impressive. Its probably the most number of women I've ever seen at a JUG meetup.

There was even a discussion around starting a new Kampala JUG, so that is definitely promising.

The event was hosted by Hivecolab which provides community-owned work environment for young tech entrepreneurs in Kampala. Had a good chat with program director Barbara who is also also leading Women in Technology Uganda. Listen to an interesting conversation with Barbara on promoting technology amongst women in Uganda.

Some things to learn about Uganda ...
  • English is the official language of the country, and has about 40+ other local dialects
  • People are extremely soft-spoken and very welcoming every where
  • Lot of tech innovation happening in Uganda - Mobile Monday Kampala, @The Hub, Fin Africa, and others
  • Local government encourages women to study at the university

I enjoyed riding the different local means of transport - boda boda and the van. The visit to the local arts and craft market in any part of world not only promotes local artisans but also gives you the opportunity to buy authentic goods.

Here are some pictures from that event:

All the Java EE 7 samples are available at github.com/arun-gupta/javaee7-samples. Feel free to clone the repository or send a pull request if you want to contribute new Java EE 7 samples. A recording of some of the samples can be seen in the videos recorded at an earlier conference:

Even though the local JUG leaders were my hosts in each country but the real force behind all of this was Lamine Ba and Max Bonbhel. I had numerous emails exchanges on dates, cities, hotels, and everything else and they were all dealt very promptly and in a professional manner. Max and Lamine - you are the agents of change in Africa and are truly helping African developers be visible at the global front, thanks for your efforts!

I truly enjoyed my short stay in different countries and would love to come back again!

Here is the complete album from the trip:

If you want to learn more about African developers, or contribute then there is an excellent panel "BOF3469: Java Trends in Africa" at JavaOne San Francisco (Sep 22-26).

Register and see ya there!

Monday Aug 19, 2013

Java EE 7 in Africa

As part of Make the Future Java EE 7 Global Celebration, several of us (Reza Rahman, Bruno Borges, and David Delabassee) are traveling around the world and speaking at different events. My latest travelenture takes me to different parts of Africa, literally in all different directions.

When ? Where ?
Rabat, Morocco
Dakar, Senegal
Johannesburg, South Africa
Kampala, Uganda

I plan to show tons of Java EE 7 code samples, meet local developers, learn from them, hopefully run with some of the finest runners in the world, and other fun things!

Where will I see you ?

Tuesday Sep 06, 2011

Travel Tips to Brazzaville, Congo and JCertif Speakers

Here are some travel tips to Brazzaville, Congo based upon my inaugural visit to Africa:

  1. 8 hours ahead of PT during summer, the currency is Central African (XAF), 1 USD = ~460 XAF, the market conversion is ~450 XAF), Altitude is 560 ft.
  2. The prominent language in Brazzaville is French and most of the local people (taxi, restaurant, airport) and even the conference attendees speak (mostly) broken to (very little) no English. So either learn or brush up your French lessons. I heavily used Google Translate for the basic communication or reading menus.
  3. Make sure to carry your yellow fever certificate for the Congo immigration. It does not matter whether you had your passport stamped with the visa, you should still carry it. Based upon other speakers' experience, carry a complete packet that is submitted to the visa office. If you don't carry then you be ready to shell out some extra $$$ for the immigration.
  4. Congolese and French cuisines are the most prominent in Brazzaville. The city has lots of Lebanese immigrants and so you'll find a good variety of middle-eastern cuisine as well. Other than that there is Continental, Chinese, Moroccan, and Pizza places as well. Make sure to try the local chicken sandwich and fried bananas combo. I've been eating snack items my wife packed for me. Anyway my tongue starts craving for Indian food after sometime so the samosas are very handy ;-)
  5. Do not hop in a taxi that has somebody other than the driver.
  6. No credit cards anywhere except hotels, all transactions are in cash otherwise.
  7. The Olympic Palace Hotel is marked as the best hotel in the town and offers free wifi but does not have a fitness center :( The breakfast buffet is pretty minimal but my supplementary food is helping there. Running outside even for 1.2 miles made me feel very dry so did some plyometrics and abs. The hotel front desk can exchange the currency which is super handy.
  8. The only English channel in the hotel is CNN which gets repetitive pretty soon. However audio streaming worked pretty seamless so could listen to some favorite music at least.
  9. There are no malls in Congo, just local shops. If you shop there then bargain heavily. Cut down the quoted price by 60-70% and eventually you might settle for 50% of the quoted.
  10. All the boys have a similar hair style - either short hair or clean shaven. Girls on the other hand have very beautiful and elaborate hair styles. Check out some nice hair dos captured at the conference and else where.
Most importantly, people are very nice and friendly and always willing to help.

Read more about Brazzaville here.

Now some tips specifically for the JCertif conference speakers, mostly in order to have you better prepared ...

  1. The conference started 1 - 2.5 hrs late on each day I attended. And some sessions towards the tail end were cancelled because the agenda was running late.
  2. There may not be Internet access for the hands-on lab so be prepared to run your lab in a complete off-line mode.
  3. The audience is very interactive (using a translator) and ask a bunch of questions. This is always the exciting part.
  4. About 30% are using Java in their daily life and about 10% know/use Maven. So tone down your presentations accordingly. Try to teach the basic concepts first and skip any advanced ones in order to make the attendees feel excited and accomplished. As always, ask your attendees what would make them happy and then be willing to change the course accordingly.
  5. The download speed in the hotel (the best one in the city) was 15-25 Kbps. The typical speed is much lower and so if somebody asks "where can I download xxx software" then your answer "its' on our website" will loose the audience. With that bandwidth, downloading JDK, NetBeans or even GlassFish with a mere size of 32 MB takes lot of time. Come prepared with media (CD or DVD) of all the software pre-loaded and share. I personally copied these bundles for several folks from my laptop.
  6. Text based documents for hands-on lab instructions are better received because of the low bandwidth. Similarly streaming videos (for screencasts) is not a viable option.
  7. Carry a jacket as the rooms could get cold sometimes where as the outside weather is more pleasant.
  8. The typical attendee laptop configuration is Windows XP or Windows 7 with 1 or 2 GB RAM. So make sure you know the requirements of your software and plan accordingly.
  9. The presentation laptops were placed in back of the room so either the speaker could stand on the stage facing the audience and use a presentation remote to change the slides or stay with the laptop facing audiences' back and show demos, or use a combination of the two techniques. This was a particularly a new experience as I've never seen this in any other conference and had to get used to it. In the first case, you are looking back at the main screen to view your slides.
  10. The attendees are always interested in taking pictures with the speakers.
  11. Free goodies, whether they are books, t-shirts, stickers, or USB sticks are always a hit.

I'll be on my way to home by the time this blog goes live. Thank you Africa for hosting and treating me nicely!

Sunday Sep 04, 2011

JCertif 2011 - OSGi-enabled Java EE Apps in GlassFish and Closing!

Read trip reports from Day 1 and 2.

Even though the conference originally had OSGi-enabled Java EE hands-on lab planned but we decided to change that to a technical session instead because of the limited Internet connectivity and audience awareness of Java. Here are the slides presented:

If you are interested in the intended hands-on lab then look at screencast #38 (using Eclipse) or screencast #32 (using NetBeans) that provide complete detailed instructions on how to create OSGi-enabled Java EE Apps and deploy them in GlassFish.

Do you know that GlassFish 3.1.1 now offer commercial support for OSGi/Java EE applications ?

I also attended a great talk by Michael Heinrichs on the Java FX 2.0 features (the only other talk at the conference in English :). Read more about the JavaFX roadmap or get started with this beginner article.

The evening was mostly the closing note and give away of goodies which is always an exciting time.

Here are some pictures from the trip so far:

And finally the evolving album at:

Max tells me that there is a TV interview and some fun activity scheduled for tomorrow and then finally heading back home!

Saturday Sep 03, 2011

JCertif 2011 - The State of Java under Oracle, GlassFish 3.1, and Stickers

JCertif 2011 was kicked off this morning by Max Bonbhel - the fearless president of JUG-AFRICA, an umbrella JUG for the entire continent of Africa, and the founder of Congo JUG. There were about 200+ attendees in the room. With a single track, the speakers had attention of all the attendees. I gave a keynote on "The State of Java under Oracle" and a technical session on "GlassFish 3.1: Deploying your Java EE 6 Applications".

The conference is well organized and the event staff is very knowledgeable and willing to help. Its amazing to know how Max knows each and every detail and going an extra mile to make the speakers and attendees feel welcome. The keynote was well received and the audience was extremely interactive after the presentation, which is the fun part anyway. And I experienced a similar level of interaction after the GlassFish session as well. I also shared brand new GlassFish stickers with the audience and it turned out to quite a hit (check the pictures below and in the album).

The slides from the keynote are available:

And the slides from the GlassFish session are available below:

Here are some pictures from the trip so far:

And the evolving album at:

Now looking for my last session on OSGi-enabled Java EE Applications using GlassFish tomorrow. You can check out Oracle @ JCertif 2011 for the complete list of sessions delivered by Oracle!


Wednesday Aug 17, 2011

Oracle at JCertif 2011

The continent of Africa has a special place in my heart primarily because of some of the excellent runners it has produced over the years. Living in the United States one can only aspire to be like them :-)

However I'm excited to share that I'll be making my first visit to this continent and speaking at JCertif 2011 - the biggest Java community event in Central Africa.


Here are the different speaking sessions:

Sep 2 Java EE 6 Hands-on Workshop
Sep 3, 10:30am The state of Java with Oracle (a year later)
Sep 3, 3:30pm Deploying your Java EE 6 Applications on GlassFish 3.1
Sep 4, 1:30pm OSGi/Java EE: Architecture and Programming
Sep 4, 3:30pm Java FX 2.0

Here are some more links:

And I'm definitely interested in running together so let me know if you would like to join :-)

I'll be there, will you ?


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