Monday, December 28, 2015

OpenMRS Worldwide Summit 2015 Wrapup

    I have been around the OpenMRS Community in one form or another since 2008 when Burke Mamlin and Paul Biondich came by the Java IRC channel on freenode to recruit for Google Summer of Code and I was drawn by the fact that I could write code that saved lives. I went on to do the first two of my three Google Summer of Code stints with OpenMRS. My first Google Summer of Code was under Burke Mamlin and Ben Wolfe; my second was under Mike Seaton and Darius Jazayeri. Recently, I am currently Manager of Identity Systems, and also am a member of the OpenMRS Infrastructure Team and am having a blast.

   Three weeks ago (8-14 Dec) I got to meet all of my Google Summer of Code mentors but Ben Wolfe in person for the first time at the first annual OpenMRS Worldwide Summit in Singapore. This wasn't even the highlight. OpenMRS is a special community, one which I have yet to encounter anything similar. I was lucky enough and eternally grateful for the OpenMRS Inc. Travel Grant Program, which covered my hotel costs partially so that I could attend this amazing event.

   I arrived in Singapore, quite tired a little bit after 10:00 PM SGT on 6 December, and after getting through immigration and customs and grabbed my checked bags; I grabbed the shuttle for $9 SGD, which is reasonably cheap. 

  I spent most of the day following sleeping off jet lag, and then ran to the mall to troubleshoot what wound up being a case of PEBKAC with my simcard; and then met up with Michael Downey and Kaweesi  and grabbed some food and then headed for a preview of Wonder Full, an amazing water and light show which is amazing to see, the group of us from the summit as a whole went to see it on Friday, 11 December. One of the things that made me chuckle was the crosswalks telling me to wait for the green man...I saw that and snapped a photo as I was headed back to meet up with Michael Downey:

  I volunteered and helped out with registration and general event logistics such as set-up and breakdown each day, as well as helping out with registration. On Tuesday morning, I helped bring things to the event venue (Singapore Management University). Tuesday-Wednesday (8 Dec to 9 Dec) was tutorials, either day-long or half-day. Thursday-Saturday ( 8-12 Dec) was main Conference, with both formal talks and unconference sessions(more round-table discussion), my favorite of which was a cause which I feel strongly about is the Women in Technology session, which was an amazing session. Notes from the talk can be found in the link above. Hearing about the strategic goals of OpenMRS, as well as the the talks about the OpenMRS Governance, which was amazing. 

Photo by James Arbaugh, via OpenMRS Talk
   The lightning talks were amazing. I originally was not going to give a talk since I did not prepare slides, but last second I typed up some notes and gave a talk trying to recruit more people to mentor for Google Code-In, and I feel extremely passionate about this program. This year and last were by far my favorite years! It's exhilarating to look at the work of these students and just be amazed. We are fostering young open source developers, some as young as 13! I got so many compliments from people saying they loved my lightning talk. I just wish more people gave talks. The ones who did, hit it out of the park.
CV6R1e3WcAIsxGd.jpg (600×800)
 Photo Credit: Jan Flowers, via Twitter

   The after-hours activities were a chance to bond with the awesome community. There was an Informal Group Dinner at Maxwell Food Centre, The Pre-Summit BBQ at the Labrador Nature Reserve, Powerpoint Karaoke at Thoughtworks(I went with the "this is going to go bad" theme and it worked...), Chinatown Food Crawl. We also took a trip to the Marina Bay Sands for Wonder Full and a light show by Gardens By The Bay, which you can't get enough of. I had a way better seat for it this time! The after-hours activities were closed out by a fun trip to Little India, followed by a group dinner for those who went. Afterward, some of us headed to the Mustafa Centre and then met up with a group that were enjoying the beautiful Clark Quay night-life; we wound up closing out the night at Life of Liquor (LoL). The after-hours events gave the community a chance to bond.

Little India group shot (Photo from Mayank Sharma)

Photo Credit Hong Phuc Dang

Photo Credit Hong Phuc Dang

Photo Credit Hong Phuc Dang

Photo Credit Hong Phuc Dang
    On Wednesday, 9 December, Burke, Paul, Mayank and I took a walk to the Funan Tech Mall to get the prize for the scavenger hunt and grabbed lunch there. It was amazing to spend time with such amazing people. 
Mayank, Paul, Burke, and myself (from left to right) (from Mayank Sharma)

   One of my favorite moments was when we waiting for the light show at Gardens By the Bay, Burke spotted a kid with a Rubik's cube, pulled his out and well this was the end result, it was about as awkward and funny as it looks. Photo Credit to Mayank Sharma though, this picture needs to be included somewhere official, it's an epic battle, the kid forfeited, so I guess Burke wins by default? It's one of those you had to be there to appreciate it, but hopefully this still works somewhat. 

Photo Credit to Mayank Sharma

  It is also amazing that Mayank Sharma, Michael Downey, and myself (whom form 3/4 of the OpenMRS Infrastructure Team) were able to be together. Ryan Yates was missing sadly. Would have been pretty awesome to have all four of us.

Photo from Mayank Sharma

    I would like to thank OpenMRS, Inc for the Travel Grant to attend. I would also like to thank Michael Downey for the Korean BBQ on Sunday (12 Dec). Though one thing I'm sad about: I never got to try the infamous Durian, the only thing which doesn't seem to a carry a fine, nobody seems to know what actually happens...This sign was found in the MRT station.

Monday, March 23, 2015

How to checkout Github Pull Requests locally

Today's post centers around a need I had not too long ago. While checking student's work during Google Code-In (GCI) I needed to check their branches out locally to run it. Turns out to be easier than you think:

The first is allows me to do: gco <branch>

The second file resides in .git/config -- in my case I set it up so that origin is my local working branch and upstream is the branch I forked from. If I do gco pr/1, then it will pull from upstream and checkout the working branch.

Pretty nifty eh? Don't forget to switch back to master, or whatever your main working branch is before merging or making changes!

If you prefer a more linear history, you can cherrypick commits, but still switch to master first.

Saturday, March 16, 2013

Google Summer of Code Information Session at held at CUNY Hunter College

On Wednesday 13 March 2013 Sumana Harihareswara of The Wikimedia Foundation, Daniel Packer (2011 alumnus), and yours truly (three time alumnus and mentor for the past 2 years) ran an information session organized by yours truly to provide prospective students with information about Google Summer of Code.

Students received a fun and informative presentation on Google Summer of Code basics including mentoring organizations, application and program timeline, project structure, and all the awesome benefits of Google Summer of Code.

As promised students received swag provided by the Google Open Source Participation Office (including cool shirts, stickers, pens and notebooks). Fresh pizza and cold, refreshing soda was enjoyed by all.

Sumana, Daniel and I fielded questions from the approximately 30 students in attendance (all of whom showed strong interest in the program). The interests of those in attendance was broad and ranged from bioinformatics to computer vision and just about anything in between.

A trail of links was followed from the Google Summer of Code site to the mentoring organization site, and then to mentors themselves, with a discussion on how to approach particular mentors and projects. Students also enjoyed sending a greeting to the #gsoc IRC channel and receiving replies and cheers from others in the channel. All in all it was a fantastic meeting which promised to result in some excited Google Summer of Code applicants.

All in all, I was very pleased with the outcome. Everybody seemed to have a great time.

I would like to thank my professor Stewart Weiss (for his assistance in getting us a room at Hunter College) and the Computer Science department for the pizza and soda! Specific thanks go to Joseph Driscoll, assistant to the department chair whom without his help this would not have happened.

Daniel Packer (2011 Google Summer of Code alumnus) contributed in part to this write-up.

Wednesday, June 8, 2011

Google NYC Office tour finally happens!

After three years of attempting to organize a Google NYC office visit -- we finally had that happen! The above picture is the Google NYC Reception area.

I must say that the Google NYC office is amazing! There are many places to eat and take breaks scattered throughout their office spaces on many floors -- one of which is Lego themed! They have the usual conference rooms, a computer museum -- with the usual vintage systems placed around. Did I mention the view from one of their kitchens is absolutely breath-taking? Well, it is -- just look for yourself!

I enjoyed the tour very much -- and I am sure that my fellow Google Summer of Code students did as well! For me, Google Summer of Code has been largely social -- meetups are a big component of this program in my opinion -- sure we have to produce code -- but why not have some fun mingling with students who were fortunate enough to get selected in this very selective program? This was a very successful meetup indeed.

Friday, September 3, 2010

Google Summer of Code 2010: Code merged!

Been a bit since an update, most of my updates were sent to the mailing list.

My code has been since merged into sahana eden trunk.

The code in its current state is very buggy and has issues, but most issues were fixed prior to being pushed to trunk. Those issues are mentioned in the user guidelines. It needs to be updated to reflect current issues, those that have been fixed and those that are still outstanding.

Development will continue in my branch and once I feel the feature is complete and stable, it will be merged to trunk.

Monday, May 31, 2010

Weekly GSoC Survey Tool meeting summary

The weekly meeting was held in the #sahana-eden IRC channel on Present were: Mark, Gavin, Michael, and of course whatever spectators:

What was discussed:

  • We removed some of the question types from the functional specification to simplify things
  • Discussed how michael did the ADPC _next stuff and how it can be applied to this project
  • Gavin suggested localization -- a suggested implementation is specified -- this is a "Nice to Have" as it's outside the scope of this project for GSOC.
  • Will discuss on the mailing list how best to generically support "wizard" like uis within S3 elegantly.

What's on the agenda for the next couple weeks (this week will be scarce):

  • Noodle over ways to generically support "wizards" in S3 elegantly
  • Implement the "Template" stage (page 1 of the wizard) [first milestone as per my project plan timeline]

Resources relevant to this meeting for the purpose of this summary:

  1. The functional spec
  2. The project plan timeline
  3. Meeting log [meeting ends at 0109 as per the timestamp in the logs]

Monday, April 26, 2010

Accepted to Google Summer of Code 2010: HAT TRICK!!

I have been accepted to Google Summer of Code 2010 for the third year running! This summer I will be working with Sahana Eden.

The Sahana Free and Open Source Disaster Management System was conceived during the 2004 Sri Lanka tsunami. The system was developed to help manage the disaster and was deployed by the Sri Lankan government's Center of National Operations (CNO), which included the Center of Humanitarian Agencies (CHA). A second round of funding was provided by the Swedish International Development Agency (SIDA). The project has now grown to become globally recognized, with deployments in many other disasters such as the Asian Quake in Pakistan (2005), Southern Leyte Mudslide Disaster in Philippines (2006) and the Jogjarkata Earthquake in Indonesia (2006).

The project is now being ported to Python as an experimental fork a replacement for Sahana Agasti so that the software can be extended. Sahana Agasti is written in PHP.

I will be working with Sahana Eden to create a tool to create, enter, and manage surveys. This should be a lot of fun!