December 31, 2016

2016 in Numbers

At the end of each year or at the start of the new year, I have traditionally published year-ender blog posts to look back on the past twelve months of my life. As I reflect on how 2016 has been for me, I was reminded that not much happened this year. There were some gains but there were more losses. It would be hard for me to enumerate the top things that happened or to summarize the highlights for the year so I would just list down some of the relevant numbers.

3 runs (two 16k runs and a 10k run)
1 Chrome Extension (Android Gradle Extension)

0 new Android Apps published (though I'm stil working on at least two apps)
2 Android Study Jams facilitated in 2 Schools
1 Android App Development Competition Judged (STI App and Running 2016)
8 Android Workshops
9 Android Talks

1 local event attended (PWA Roadshow Manila)
1 international event attended (Google I/O 2016)
4 new local places (Palawan, Bohol, Dipolog, Dapitan) visited for the first time
5: Fifth US State (Washington) when we visited Seattle

I am praying 2017 will be a lot better than 2016. I'll do my best to do more stuff and accomplish more.


December 23, 2016

Seattle Weekend

Last weekend, Celine and I went to Seattle for a quick trip in the area.

We took an early morning Greyhound bus from Vancouver. At the US Customs and Border Protection, we alighted the bus with our stuff and went for the usual inspection before going back to the bus to continue our travel. We arrived in Seattle at around ten in the morning and went straight to Best Western Plus Pioneer Square Hotel. The room was already available so we rested for a while before starting our tours.

Our first stop was at the nearby Ivar's Seafood Bar where we had chowder and fish and chips. We became curious of the Ye Olde Curiosity Shop so we went inside and had a look.



We walked towards the Pike Public Market Center. There were a lot of stores there. We bought some food and souvenirs like keychains and magnets. We also went to the Pike Place Starbucks, their first store.



The next day, we woke up early and walked to St. James Cathedral for Sunday Mass. After mass, we took the monorail to Seattle Center and went up the Space Needle. Celine wanted to go to Bill & Melinda Gates Foundation Visitor Center but it was closed that day. We instead went to Pacific Science Center. There was a Sherlock Holmes Exhibition there.



That night, we rode a bus to Westfield Southcenter to go to Jollibee for dinner.



The third day was our last day there. We walked around to nearby places before leaving. Some of the places we visited include Waterfall Garden Park and Klondike Gold Rush National Historical Park. We had lunch at Uwajimaya Deli and cookies at Cow Chips before going back to hotel and the bus terminal.

It was a very short trip and we were only able to visit some places (and others were closed). Hopefully, we could be back soon. More pictures of our trip are available in this album.


December 1, 2016

Zamboanga Peninsula Weekend

Last weekend, we went to Zamboanga Peninsula for GDG DevFest ZamPen 2016. The event was held at Dapitan City Cultural and Sports Center on November 25-26. We were there for the DevFest on the second day. We also visited some nearby places in Dipolog and Dapitan.

Dipolog


Our Lady of the Most Holy Rosary Cathedral

Dapitan


Gloria de Dapitan


Fantasyland, Gloria de Dapitan


St. James Parish


Rizal Shrine


Punto De Disembargo De Rizal En Dapitan

More photos are available in this album.


July 20, 2016

PHostpaid

A few days ago, I published an update to PHostpaid, a utility app for postpaid mobile phone services in the Philippines (Globe, Smart, Sun Cellular).



PHostpaid is one of the first Android apps that I have developed. I started developing it back in 2011. That time, I just bought a Nexus S, and had a new Globe postpaid plan. Nexus devices do not (yet) have a SIM tookit and Globe does not have an app for it. To check my balance and unbilled charges, I have to always text some keywords to a number. It was annoying for me so I decided to build a simple app for myself. I was also thinking of an actual app to build that time.

A few days after developing and using the app for personal use, I decided to publish the app on Google Play Store. Before publishing, I wanted to add the other mobile operators in the Philippines (Smart, Sun) offering postpaid mobile services. I had to do extensive research (including asking existing subscribers from these telcos) to be able to update the app.

I was never that good in choosing titles for my articles so I was not sure how to name the new app. The name I chose was just "Postpaid" and I just changed the first letter P to PH (for Philippines ).

In the next few months, I had published a few updates to the app. The last update I had was in the third quarter of 2014. I decided to update the app now with the Material Design toolbar and handling Marshmallow permissions.

If you want to try the PHostpaid app, download it now on Google Play Store.


July 6, 2016

Firebase for Android Developers

At Google I/O 2016, Google announced that Firebase is expanding to become a unified app platform for Android, iOS and mobile web development. Firebase includes features and integrations designed to help you develop high-quality apps, grow your user base, and earn more money.

Firebase features work independently and you can choose the features that you need. At the heart of Firebase is Firebase Analytics, a free and unlimited analytics solution for mobile apps.



Develop

  • Cloud Messaging: Google Cloud Messaging (GCM) is now Firebase Cloud Messaging (FCM). FCM is a cross-platform messaging solution that lets you reliably send and receive messages to Android, iOS, or the Web at no cost.
  • Authentication: Firebase Authentication provided backend services to authenticate users via Google, Facebook, Twittter, and Github sign-in, email and password, and even custom auth system.
  • Realtime Database: Firebase Realtime Database is a NoSQL cloud database that syncs data across connected clients in realtime, even when your app becomes offline.
  • Storage: Firebase Storage, powered by Google Cloud Storage, provides easy, secure, and scalable uploads and downloads of images, audio files, videos, and other user-generated contents. It also gracefully handles poor network conditions.
  • Hosting:Firebase Hosting allows developers to quickly deploy web apps and static content to a secure content delivery network.
  • Remote Config: Firebase Remote Config is a cloud service that allows you to customize the look and feel of your app without downloading updates, via instantly-updatable parameters.
  • Test Lab:Cloud Test Lab is now Firebase Test Lab for Android. It is a platform where you can automate testing of your app on real devices hosted in Google data centers.
  • Crash Reporting: Firebase Crash Reporting gives you prioritized, actionable reports to help you diagnose and fix problems in your published apps.

Grow

  • Notifications: Firebase Notifications is a free service that enables targeted user notifications for Android and iOS devices without writing a line of code.
  • App Indexing: Firebase App Indexing, formerly Google App Indexing, brings new and existing users to your app from Google search.
  • Dynamic Links: Firebase Dynamic Links are smart URLs that work the way you want them to. They can link to different content depending on the platform they are opened and even persist across app installs.
  • Invites: Firebase Invites is a cross-platform solution for easily sending referral codes or content via personalized SMS or email invitations to their network.
  • AdWords: AdWords Google's advertising platform for user acquisition and engagement, is now integrated with Firebase.

Earn

  • Admob: Firebase is integrated with AdMob, Google's mobile advertising platform that allows you to monetize mobile apps with targeted, in-app ads.

Android Setup

Firebase runs on Google Play Services (9.2+) and is available for Android 2.3 and higher. To add Firebase in your Android project:
  1. Go to the Firebase Console. Create a new project or open an existing one. You can also Import Google Project if you already have one for your app.
  2. Click Add Firebase to your Android app and provide your app's package name (required) and signing certificate (optional).
  3. Download the google-services.json file and copy it to your project's module folder (app).
  4. Add classpath 'com.google.gms:google-services:3.0.0' in your project's build.gradle file.
  5. Add apply plugin: 'com.google.gms.google-services' at the bottom of your module folder's build.gradle file. Add the dependencies for the Firebase SDKs you want to use.

The Firebase SDK dependencies are in the com.google.firebase:firebase-x:9.2.0 format where x can be core (Analytics), database (Realtime Database), storage (Storage), crash (Crash Reporting), auth (Authentication), messaging (Cloud Messaging/Notifications), config (Remote Config), invites (Invites/Dynamic Links), ads (Admob). For Firebase App Indexing, the dependency is com.google.android.gms:play-services-appindexing:9.2.0



What's Next?

Try the Firebase Android Codelab and read the Firebase Docs to learn more about the new Firebase.


June 25, 2016

Canada Trip

After attending Google I/O 2016, I went to Canada for a weeks of vacation. Celine and I went to Centennial Beach, Vancouver Aquarium, Stanley Park, VanDusen Botanical Garden, White Rock Beach and Pier, Capilano Suspension Bridge Park, Sun Yat-Sen Park and Dr. Sun Yat-Sen Classical Chinese Garden, TELUS World of Science, and International Summer Night Market.

Centennial Beach

Celine's family celebrated Victoria Day at Centennial Beach and Boundary Bay Regional Park in Delta, BC.

Vancouver Aquarium, Stanley Park

We went to Vancouver Aquarium. It was great to visit there before we watch Pixar's Finding Dory. Aside from seeing fishes, beluga, whale, and other marine animals, we got to touch live stingrays in the Discover Rays Touch Pool.



After visiting the Vancouver Aquarium, we walked around at Stanley Park.

VanDusen Botanical Garden

Celine and I also went to VanDusen Botanical Garden, a 22-hectare garden in the center of Vancouver. It contains 7,500 unique species and varieties of plants arranged in 50 distinct living collections.



White Rock Beach and Pier

Psych is a TV series that Celine and her family loved. Most of it was shot in White Rock, BC. We went to White Rock Beach and Pier to check out the place. I still haven't watched any episodes yet when we went there but I did start watching after.


White Rock Museum and Archives, the Psych office

Capilano Suspension Bridge Park

Celine and her siblings have been to Capilano Suspension Bridge Park and she highly recommend that we go there. The Capilano Suspension Bridge is a simple suspension bridge crossing the Capilano River in the District of North Vancouver.

We took the free shuttle service from Downtown to Capilano. We joined the guided tour of Story Centre and Kiapilano Totem Poles before crossing the suspension bridge. On the other side of the bridge, we walked in the Rainforest Exhibit, Treetops Adventure, and the Nature's Edge Boardwalk. After crossing back the bridge, we walked in the Cliffwalk.



Sun Yat-Sen Park and Dr. Sun Yat-Sen Classical Chinese Garden

Celine and I went to Chinatown to visit the Sun Yat-Sen Park and Dr. Sun Yat-Sen Classical Chinese Garden. Sun Yat-Sen Park is a free public park. On the opposite side of the pond is the Dr. Sun Yat-Sen Classical Chinese Garden.



TELUS World of Science

We went to TELUS World of Science. We watched the movie D-Day Normandy 1944 in Omnimax Theatre first. Afterwards, we looked around and tried the various science exhibits. We also tried the Top Secret spy game.

International Summer Night Market

We went to the nearby International Summer Night Market. Celine and I had takoyaki and okonomiyaki. We also tried Chimney for dessert.




June 8, 2016

ConstraintLayout

One of the Android announcements at Google I/O 2016 was Android Studio 2.2 Preview, which includes the New Layout Editor and Constraint Layout.

ConstraintLayout is a new powerful and flexible Android layout that allows developers to create complex UIs without nesting multiple layouts. It is available in the Android Support Library and compatible with Android 2.3 (Gingerbread) and up. Using the new layout editor, which was built specially for ConstraintLayout will make it easier for developers to build Android UI.

Constraints describe how a view will be positioned relative to other elements in the layout file (another view, layout edge, or invisible guideline). The different types of constraints you can use are side connection with the layout, side connection with a view, side alignment with a view, baseline alignment with a view).

To use ConstraintLayout in your Android project, you should update Android Support Repository to version 32 or higher from the SDK manager, add compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha2' in our Gradle dependencies, and Sync Project with Gradle Files.

Create a new layout by right-clicking your res/layout folder. Select New > Layout resource file. Type "android.support.constraint.ConstraintLayout" as the root element (auto-complete also works so you can type the Con... in the root element). The layout editor will then be displayed.


The New Layout Editor

The Design Mode and Blueprint Mode allows you to view the design mode, blueprint mode, or both. The https://medium.com/@jomartigcal/constraintlayout-b89f135bd537 is used for resizing the view by dragging the corners. Side Constraint Handle specifies the location of the view. The Baseline Constraint Handle aligns text fields' baselines. Constraints are visualized as arrows or lines between views or between a view and the edge of the layout. Autoconnect, when on, automatically calculates the constraints for the view you are adding in the layout. Infer constraints creates constraints for all views in a layout. Show No constraints hides the constraints while Clear Constraints delete them.

Check out the codelab at https://codelabs.developers.google.com/codelabs/constraint-layout to try and learn more about ConstraintLayout. You can also watch the Android Layouts: A New World talk at Google I/O.


June 2, 2016

Google I/O 2016: What's New for Android Developers

Google I/O 2016 was held in Shoreline Amphitheatre, Mountain View, California on May 18-20. There were a lot of announcements and new stuff from the event. Here are some of the new things relevant for Android developers:

Android N Developer Preview

Preview 3 of the Android N Developer Preview is already beta-quality. Android N includes Multi-window, Direct Reply from notifications (via RemoteInput API from Android Wear), Bundled notifications, Java 8 support, Doze improvements, JIT Compiler, Vulkan, and more.



Developers can try the preview, the updated SDK, system images, and tools from developer.android.com/preview or via Android Beta. By enrolling devices to Android Beta, they can try pre-release Android versions and automatically receive OTA updates as soon as they are available.

Android N also provides high quality mobile virtual reality (VR) experience. You can use a Nexus 6P with N Preview 2 to setup a Daydream Development kit (as a headset phone). Daydream is Google's new platform for low-latency, immersive, and interactive mobile VR.

Android Studio 2.2 Preview

A big update to Android Studio was announced at I/O. This includes the New Layout Editor and Constraint Layout, Layout Inspector, Firebase Plugin, Expanded Android code analysis, Code Sample Browser, Espresso Test Recorder, APK Analyzer, Merged Manifest Viewer, and Enhanced accessibility. There's also Enhanced Jack compiler with Java 8 support and Expanded C++ support with CMake and NDK-Build.



Android Studio 2.2 is available for download in the Canary Channel.

Android Wear 2.0

The biggest update to Android Wear, Android Wear 2.0, was announced at I/O. Android Wear apps can now be standalone. There are also a number of UI changes: complications, keyboard and handwriting input methods, new notification templates. Android Wear 2.0 also include improved Google Fit platform, support for Android N, and Material Design guidelines.


You can try the Android Wear 2.0 Developer Preview at http://g.co/wearpreview.

What's new in Google Play

Android apps that are in open beta but aren't in production yet will soon appear on search results on Google Play and users will be able to opt-in from there. There will also be a new featured section called Google Play Early Access for these apps. Some of the other Google Play announcements include Pre-launch report (summary of issues found on a wide range of devices when alpha/beta testing your app on Firebase Test Lab for Android), Review benchmarks, review topics, Reply to Reviews API, User acquisition data by country and (soon) benchmarks compared to similar apps), and Pricing templates and price rounding.

To get your Android apps or games ready to meet the needs of billions of Android users globally (especially to those in emerging markets), they have released Building for Billions Guidelines and The Building for Billions Playbook.

Two new Play apps have also been announced: Google Play Developer Console App and Playbook by Google Play (in beta), where you can learn about the latest Android features, tips, best practices that will help you develop and launch your app, engage and grow your audience, and earn more revenue on Google Play.

Instant Apps

Instant Apps allow users to run Android apps without installations from search, social media, messaging or other deep links. It is compatible with all Android devices with Google Play services and running Jellybean (4.1) or higher. You can learn more about Instant Apps at http://g.co/instantapps .

Google Play Services 9.0

Google Play Services 9.0 include update to Ads, Nearby API, Player Stats API, and Video Recording API.
  • Ads: new SDK initialization, Native Ads Express
  • Nearby API: BLE beacon scanning without additional permissions, opt-in dialog connection for Nearby Messages
  • Player Stats API: Predictive Analytics
  • Video Recording API: add and share video recording

Android Apps on Chromebooks

Chromebooks will soon support the Google Play Store and Android apps. You can update your app so that it will be available on Chromebooks. You can read more about how to optimize your Android apps here.

Videos and Codelabs

Videos of Android-related sessions are already in YouTube. You can check this Playlist for these videos. There are also various codelabs for Android, Android Auto, Android TV, Android Wear, and more.




June 1, 2016

Google I/O 2016 Extended Roadshow



Google I/O is Google's annual developer conference, where they share the latest products and technologies. Google I/O 2016 was held in Shoreline Amphitheatre, Mountain View, California on May 18-20. GDG Philippines will be bringing the I/O experience to different cities with Google I/O 2016 Extended Roadshow, a series of talks and workshops to help professional and student developers deep dive in the new technologies announced during Google I/O 2016.

The schedule for the I/O 2016 Extended Roadshow is: June 25 (Subic), July 2 (Manila), July 9-10 (Cavite), July 16 (Laguna), July 23 (Bulacan), July 29 (Palawan). There will be talks in the morning and hands-on workshops in the afternoon.



Event details are still being finalized. For updates, add GDG Philippines in your Google+ circles and check the events website at ioextended.gdgph.org


May 28, 2016

Google I/O 2016

Google I/O is Google's annual developer conference, where they share the latest products and technologies. Google I/O 2016 was held in Shoreline Amphitheatre, Mountain View, California on May 18-20 and I was fortunate to attend it in person.



More than 7, 000 developers attended the event. Here is a video showing the highlights of the event.



This year's I/O was different from past year's I/O as the venue is an open area. There has been a lot of complaints here and there but personally, I was still able to enjoy the experience. I have attended several sessions and learned a lot of new and interesting stuff. It was also great to meet friends you haven't seen in a while and meet new friends.

If you are unable to attend I/O in person, you can watch all the session videos in this playlist from Google Developers. You can also try the codelabs at https://codelabs.developers.google.com/io2016.



GDG Philippines will also be bringing the I/O experience to different cities through the Google I/O 2016 Extended Roadshow, a series of talks and workshops to help professional and student developers deep dive in the new technologies announced during Google I/O 2016.


May 21, 2016

Korea Transit Tour

I had a quite long layover (around 12 hours!) at South Korea before my flight to SFO. I arrived at around five in the morning at Incheon International Airport and decided to join a Transit Tour. These transit tours are for people with long layovers. Tours are free and don't require you to have a Korean VISA.

The transit tours range from an hour to 5 hours. I chose the 2-hour Incheon Temple tour because I have already visited some of the other destinations in the other tours. Also, I still want to explore the airport after the tour and before my boarding time.

The Incheon Temple tour includes visit to Heungryunsa Temple and Memorial Hall for Incheon Landing Operation. I chose the 9-11 morning tour so I can have lunch and airport tour afterwards.


Memorial Hall for Incheon Landing Operation

More photos are available in this Google Photos album. Joining the Transit Tour has been a great experience. If you have a long stopover in South Korea, I highly recommend you try one of their tours.


April 21, 2016

Android Emulator + HAXM

Have you tried creating an Android emulator and you've been prompted that it cannot launch because it requires hardware acceleration? When using an x86 system image for an Android Virtual Device (AVD), you should install HAXM (Hardware Accelerated Execution Manager). HAXM is a hardware-assisted virtualization engine (hypervisor) that uses Intel Virtualization Technology to speed up Android app emulation on a host machine.

HAXM can be installed through the Intel site or from the Android SDK Manager. Go to Extras and select Intel x86 Emulator Accelerator (HAXM installer) and download the package. Go to your SDK directory > extras > intel > Hardware_Accelerated_Execution_Manager and run the installer. Follow the on-screen instructions. You might need to enable virtualization in your BIOS setup for HAXM to work.



When running an x86 emulator, you should be able to see something like HAX is working and emulator runs in fast virt mode which means you have successfully installed HAXM. If you encountered something like Intel virtualization technology (VT-x) is not turned on, you should restart your computer and go to the BIOS setup. From there, you should enable Intel virtualization technology. If you still encounter problems, you can try any of the following:
  • Uncheck Hyper-V in Control Panel > Programs > Turn windows features on or off > Programs and Features then restart your computer
  • If you have Avast, uncheck Enable hardware-assisted virtualization and Enable avast self-defense module in Settings > Troubleshooting.
  • Go to My Computer. Right-click it then go to Avanced System Settings > Advanced > Performance > Settings > Data Execution Prevention. Enable DEP for all programs and services



April 11, 2016

Google I/O 2016 Live

Google I/O is Google's annual developer conference, where they share the latest products and technologies. Google I/O 2016 will be held in Mountain View, California on May 18-20. If you are not attending in person, you can get the I/O experience by watching I/O Live at the website or by attending Google I/O Extended events being organized by Google Developer Groups and other communities worldwide.



GDG Philippines is organizing I/O Extended Manila Live-viewing Party which will be in Globe Corporate Showroom, Valero Telepark, No. 111 Valero Street, Makati City. (Map: http://bit.ly/Map-ValeroTelepark) on May 18-19 (08:00 PM of May 18 to 05:00 AM of May 19).

Take the awesome opportunity to connect with other local talented developers and watch the keynote and other sessions live. We'll also have a short program before the keynote (more details to be announced soon). If you are interested to join this event, add GDG Philippines in your Google+ circles for updates about this event and our other events. Registration will be opened soon!

You can also check updates about I/O at the widget below:




April 7, 2016

Android Gradle Extension

Have you tried browsing the Android reference pages and tried to use classes only to find out you would need to add some lines to your Gradle dependencies? Sometimes, I do; that's why I developed a Chrome Extension for this.

Android Gradle Extension is a Google Chrome extension that adds Gradle dependency to use for Android API class reference pages. Users can then copy the Gradle dependency text and use it in their codes. There is also a button to copy the text to the clipboard automatically.

Android Gradle Extension

Android Gradle Extension works on class references at developer.android.com. In the future, I'll add reference pages for Google APIs for Android. If you are an Android developer, this Chrome Extension might be useful to you. You can download it now on Chrome Web Store. There might still be some bugs though in the extension. If you find one, please let me know so I can fix it.


March 28, 2016

Android N Developer Preview

Three weeks ago, Google released the first developer preview of Android N. In the past years, they announce the developer previews during Google I/O but this time they did it earlier.



Developers can now download Preview 1, the updated SDK, system images, and tools from developer.android.com/preview. Google has also announced Android Beta. By enrolling devices to Android Beta, they can try pre-release Android versions and automatically receive OTA updates as soon as they are available.

Some of the new features of Android N includes Multi-window, Direct Reply from notifications (via RemoteInput API from Android Wear), Bundled notifications, Java 8 support, Doze improvements, and more! Check out the video below for a summary of what's new:


March 14, 2016

Android for Beginners Study Jams



Google Developers Groups Study Jams is a free series of global, community-run, in-person study groups. Last year's Study Jams focused on the Android Fundamentals Udacity Course. Check out the video summary below:



The second Study Jams series is presented in partnership with Udacity and will follow their Android Beginners curriculum. GDG Philippines is partnering with schools/collleges/universities for the Study Jams. I am facilitating an Android for Beginners Study Jams in Cavite State University (CvSU)-Bacoor for March-April. On April, there is also a tentative Study Jams in Caloocan.

Here are some photos from our first Study Jams session in CvSU-Bacoor last week:




March 12, 2016

Yakult 10-Miler Run 2016

I ran 16k in the 27th Yakult 10-Miler Run at Cultural Center of the Philippines Complex on March 6. This was my first run in a Yakult 10-Miler Run, which is the longest running 10-mile run in the country.



The registration was only 500 pesos for the 16k. It should have been a red flag for me but I have joined free runs before which were good enough.

The route were not good and I'd say dangerous. There were a lot of people and some vehicles on the road and there weren't many race marshalls.

There were also a lot of runners not wearing the official singlets. Some were obviously not part of the run as they don't even have the bibs. In the early part of the run, a runner bumped into a vendor selling something with a light. These non-runners were so visible but there are nobody implenting any rules.

Based from Runtastic, I finished 15.99 km in 2:19:30. Joining this run is the worst decision I have made this year. Hopefully, my next runs will be better. This is now my second 16k and third run for 2016. I'm still hoping I can run more this year.


March 6, 2016

STI App & Running 2016

STI invited me to be a judge in the National Finals of their App & Running Android App Development Competition. The other judges are Gerald Cayabyab from TIP and Jose Bartolome from TechnoTrek.



There were nine teams in App and Running. The participants who came from Malaybalay, Zamboanga,Angeles, Lucena, Caloocan, Marikina, Rosario, San Jose, and Ormoc are the regional cluster champions.


The participants

The teams were given 20 hours to develop a faculty consultation application. We chose as winners the teams from Rosario (first place), Ormoc (second place), and Zamboanga (third place).


March 5, 2016

Bohol Trip

I was again invited to be a judge in the National Finals of the STI's App & Running Android App Development Competition. This year, the venue is in Bohol.

We arrived in Tagbilaran Airport on the morning of March 2. I found out that the competition will be in STI College Bohol in Panglao. It was around 21k (around 30-minute travel) from the airport.

We went to the campus to drop off some things for the competition and went straight to Hennan Resort Alona Beach were we will be staying. Our rooms are not yet available so we had lunch first at the Coral Cafe.We were able to checkin around 2:00 PM. We're supposed to go to back to the campus by 4 but we were told late we can have the day off.

I decided to visit a few places in Tagbilaran in less than 2 hours because I need to get back at around six in the evening. I talked to a habal-habal driver outside so he could tour me to a few places in the city and bring me back.

Our first stop was in the Blood Compact Shrine. The blood compact between Sikatuna and Legaspi in 1565 was the first international treaty between Spaniards and Filipinos. Before going to our next stop, I bought Kalamay and a few keychains.


Blood Compact Shrine

Baclayon Church (Church of Our Lady of Immaculate Conception) was our next stop. It has been declared as a National Cultural Treasure by the National Museum. The church was closed because it is still under repair due to the 2013 earthquake damages. There was an ongoing mass at that time in a covered area (which is the temporary church) when we arrived there. I just took some photos and prayed before leaving.


Baclayon Church still being repaired

The last stop was Bohol Python and Wildlife Park. This was the home of the biggest and longest snake in captivity, Prony. There were other snakes there too. I just took a few pictures.


The biggest and longest snake in captivity

In the evening, we had dinner with STI organizers and the other judges at Trudi's Place Restaurant.

This was my first time to visit Bohol. More photos of my trip is available here. Hopefully I can be back to visit the Chocolate Hills and other places.


February 27, 2016

Ozamiz Android Workshops

I was invited to the 7th ICT Youth Convention in La Salle University (LSU) Ozamiz. This time, I had two whole-day workshops. The convention was composed of three days (February 22-24). The first day was mostly talks while the other two were workshops.

I arrived early in the morning of February 23. My first workshop is an Android App Development Workshop. Instead of the usual letting the participants work on the workshop materials after the intro talk, I demonstrated how to code one by one and ask them to do the same on their machines.

On my second day, I facilitated an Android Game Development Workshop using Love 2D and Lua. We then exported their games to installable APKs after the activities.

Here are some photos of the event:




February 20, 2016

UMAK Android Workshop

I was invited to University of Makati to talk about Android apps development on the afternoon of February 18. It was supposed to be an Android Workshop but due to certain factors, I just talked about the basics and did some live demos. Here is the slides I used in my talk:



Here are some photos during the event:




This event officially starts my Android talks, workshops, and events for the year. Looking forward to learning more and sharing more.


February 9, 2016

Condura Skyway Marathon 2016


(Photo from conduramarathon.com)


I ran 10k in Condura Skyway Marathon 2016 last weekend. The official results for my run are 01:25:24 (Chip Time) and 01:30:53 (Gun Time). Runtastic says that I ran 10.14 km in 1:26:48.

The run was okay until it started to rain. There were also too many runners in the Skway, especially during the last 3k where the traffic was heavy it is hard to walk. There were also a lot of people who stop in the middle of the road to take selfies and pictures. Some runners also throw paper cups on the road even if the trash bins are just a few steps away from them.

This was my third 10k in Condura Skyway Marathon. Next year, I am hoping I can run in the 21k category.


January 16, 2016

7-Eleven Run 2016

After my 16k run last year at 7-Eleven Run 1500 (which was my last run in 2015), I decided to run at 7-Eleven Run 2016 (which is my first run for 2016).


Photo from run711.com


Like Run 1500, the venue is at Skyway and Filinvest City, and the categories are 500m, 3k, 5k, 10k, 16k, 21k, and 42k. Runtastic says I ran 16.08 km in 2:22:04. The official results are 2:22:29 (Gun Time) and 2:21:39 (Chip Time).

The race was better compared to last year's. The route was okay and the hydration was great. There were Gatorade, Powerade, Pocari Sweat, water, and more. Every finisher has a medal and a loot bag. There are also sponsor booths where you can line up for food and other freebies.

Over-all, the run was okay except for the following:
  • What I like in 7-Eleven Runs is that you can register online and just pay in one of their thousand stores. My experience in claiming the race kit wasn't as good as the registration though. It took more than a week after the supposed claim date that I was able to get mine.
  • There were a lot of people not wearing the official singlet and there were even some not wearing the right color for the category.
  • "Runners" who are slow (or those who are walking at the moment) who occupies the middle of the road should be asked to move to the side to give way to "faster" runners. In some runs I joined, they specifically tell this before the gun start.
  • There were a lot of paper and plastic cup in the trash. They should have given a bottle of drinks per runner instead. There would be no need for filling up the cups which will just go straight to trash (or along the road for some runners) and there won't be a need for a lot of hydration stations. Fortunately, there were some that just gave bottles instead of filling up cups.
  • It is very annoying that the person in front of you would suddenly stop and take selfies or pictures (and some with that selfie stick) of the Skyway without due respect to runners who are behind them. It should be banned in runs like this.
  • At the last 4km stretch of the route, almost all runners run on one side of the road while the other is almost empty. There were almost no space to jog or run because a lot of people are just walking in groups and occupies almost the length of the road.



January 14, 2016

Ubiquity Dev Summit

Ubiquity Dev Summit was held in San Francisco on January 11-12, 2016. It is a gathering for developers to learn and connect with the Google engineers behind Ubiquitous Computing and IoT covering Brillo, Weave, Android Wear, Beacons, Google Cast, Android TV, and Android Auto.



The codelabs are available at https://codelabs.developers.google.com/ubiquity.To access the Brillo/Weave code labs, you must have an invite. You can request yours at https://services.google.com/fb/forms/brilloweaveinviteform/. The event has been live streamed and the videos are now available in thisYouTube playlist.