Posted in Articles
on April 14th, 2015
Since my financial awakening, I found myself invested in multiple mutual fund and UITF products from different vendors. If you are like me, checking the performance of your investments takes a substantial part of your morning routine.
Tracking the performance of my funds was a fairly straightforward activity back when I was only invested in BPI’s family of funds (ALFM, Odyssey, etc). I only needed to log-in to my BPI Express Online account to check on the performance of my investments. It took me at most 2 minutes and I was done.
Then I got savvy and decided to diversify by buying shares from different investors. The 2-minute daily activity suddenly became a 30 minute chore. I found myself logging into 4 different websites (and it does not help that I forgot my passwords sometimes!) one after another to check on the performance of my various investments. Different websites, different layouts, different ways of visualizing my fund’s performance. It was, to say the least, a frustrating experience.
A year and a half ago, I became interested in learning how to develop mobile apps. I always believed that the best way to learn a new technology is to start a project using that technology. So I decided to create an Android application that lists the NAVPs of all the funds that I’m invested in. This was my first attempt:
Things started to get crazy at work around that time. I got promoted to a new role as a Software Architect and I had to lead the architecture and design efforts of a new product from the ground up. After a year, management asked me to relocate to the United States and work on a big project as a UX Designer. I needed some time to adjust to my new life and work environment and my little mobile project needed to take a back seat.
A year and a half later, things settled down. Working as a UX Designer meant that I’m no longer technically allowed to work on code. My day is filled with meetings and 4-hour long whiteboard design sessions. It’s a different kind of fun; a different way to create. But deep inside me, there is that yearning to create something with my own hands. A yearning to write code again. That’s when I decided to finish my little mobile project.
With renewed passion and newly acquired UX Design skills, I set upon my goal to create the first ever mobile app that tracks the performance of ALL mutual fund and UITF products in the Philippines. Unlike my first attempt, this one not only needed to be fast but it has to be beautiful too. The experience needed to be straightforward and the UI has to be pretty. I had to prove to myself that the time I spent learning about UX was worth it.
As is standard practice in the field of UX Design, I started the conceptualization and design process by sketching the desired user experience:
The design goal is to make it easy to add new investments and make it straightforward to see the daily performance of your investments. There are also performance and resource consumption considerations that I had to take into account. It took me 3 months of design and development efforts before the product was ready to be shipped.
Five days ago, I shipped my first ever mobile app to the Google Play store. I named the product Imbestor (a rough Filipino translation of investor) and it is the most beautiful, straight-forward, mutual fund and UITF performance tracking app in the market today.
Continue reading “Imbestor: The first and only mobile app that tracks the performance of all Philippine mutual funds and UITF products” »
Posted in Personal
on December 31st, 2010
Never in a bazillion year would 2009 Ian have anticipated what 2010 Ian was about to do in 2010.
2010 was all about firsts. It was a year full of new experiences. Of changes. It was a year that I found new friends (yes, not a typo). It was a year that I truly lived. Although 2010 was blissful for my personal life, 2009 Ian would be entirely happy with my career (more on that later).
Continue reading “2010 Was All About CHANGES or My 2010 Year-End Special Blog Post” »
Posted in Articles
on September 26th, 2010
It is not exactly news that programmers love to quit their job. It is an industry-wide obsession. The annual turnover rate for the High-Tech industry in 2008 is a little bit above 20% (2 out of 10 employees quit every year). A typical programmer on a typical software company stays for about 23 months on average. For an employer, these figures are scary – especially if you employ skilled workers such as programmers and software developers. High turnover rates of skilled professionals can pose as a risk to the business or organization, due to the human capital (such as skills, training, and knowledge) lost.
Having been a newbie software developer (and I’m still fairly “new”), I did not understood why software developers in our company are quitting. Having been a fresh graduate, I was, then, still amazed by the fact that there are people out there in the real world that will pay me real world money just to write code – a hobby that I will do for free. I was puzzled. We are working in an environment that fosters creativity and innovation, a company that strictly subscribes to the “programmers’ bill of rights”, and a company that scores high in the Joel Test (11/12). Those, plus the fact that we can surf Facebook anytime and drink all the brewed coffee in the pantry, made me believe that this is the best company to work for locally; it made me believe that anyone leaving our company is insane.
Just a few months after starting my job (I had my internship there for 6 months), one of the bestest programmer I know (he’s actually a “software architect”, but hates being called one), my mentor when I was still an intern, filed his letter of resignation. This guy is one of the most passionate programmer I know. He gets it. Paul Graham classifies him as a hacker and he actually worked for Microsoft (in Redmond, not the local whatever-they-are-doing-there branch).
For some, asking people why they quit their job is taboo; I actually enjoy having those type of conversation. Gives me insight. So I asked the fallen hacker, “Why did you quit?”. He pointed to the picture of his new born baby (his desktop wallpaper) and said with an enthusiastic smile “He is my new priority”. He then explained to me, in a fashion that I would understand, why working overseas means “better opportunity” for his family. Being a bit unconvinced with his explanation, I asked him “Is that all? Better opportunity?” and he replied back with a playful smile, “In my new job, I will be able to code again. I will no longer be a ‘Word Programmer’”. He has always joked about being a Word Programmer – programming in Microsoft Word using narrative texts (use cases, scenarios, etc) and UML diagrams; programming by story telling. He was indeed a hacker.
Having spent a year and a half on this job, I can say that I now have a vague idea on why programmers (or I.T people, in general) quit. Even though I’m only a year-and-half year old in corporate servitude, I had been handled by four managers and had been transferred to four teams and that gave me great insights on the crucial dynamics that affects employee turnovers. In my year-and-half stay, I have seen three managers, a project manager, two architects, four senior developers and a handful of intermediate developers go. Just a few months ago, four of my teammates left. The statistics above is a little off; it is more than 20%.
Continue reading “On the High Turnover Rate of Software Developers or How to Retain your Best Software Developers and Programmers” »
Posted in Articles, Personal
on August 2nd, 2010
Just a few words before I start: I am not here to offer you insurances, investment “opportunities” or some form of “networking” – No, I am not an evil sales agent and I don’t have much time on my hands to play around with “networking”. I am also no financial expert (so take all the information here with a grain of salt). I almost flunked my high school Accounting course and I still don’t have an idea how to make a Balance Sheet that will be deemed acceptable by any sane CPA.
Caution aside, I am here to share with you some basic financial concepts that I have recently learned. It is also my goal to make you realize that your personal finance is YOUR OWN BUSINESS. As much as we hate to accept it, we must acknowledge that we are slaves of the global financial system. In this capitalistic world, your very survival on this money-driven economy may lie in your understanding of this few, basic financial concepts.
Continue reading “Fighting Inflation with Investment or Why I Decided to Invest or My Financial Enlightenment” »
Posted in Articles
on May 9th, 2010
I am very disappointed with myself for not being able to register as a voter for the upcoming 2010 Philippine National Election. I am disappointed not because I will not be able to fulfill my duty as a citizen of this country. This feeling of disappointment comes from the knowledge that I missed out on what would probably be the most important election in Philippines’ modern history. So for those of you who are registered: Don’t be lazy, wake-up early and be part of this momentous event.
This post will contain my thoughts with regards to the Philippine election… Specifically my thoughts on “Voting as a right and how it affects the current political climate of the Philippines”, “the importance of the automated election and what it signifies” and “what will Gibo’s or Gordon’s victory signify”. Before you start reading, let me remind you that I am in no-way an expert on the topics and legalities of the Philippine election. These are just my idle thoughts; thoughts that were mostly conceived while I’m taking a dump or while stuck at a bus in EDSA.
Continue reading “On the importance of the automated 2010 Philippine National Election” »
Posted in Articles, Personal
on April 4th, 2010
Recently, there have been a lot of hate towards the KPOP fandom in the Philippines and KPOP itself. There are a couple of Facebook fan pages that are dedicated solely in hating KPOP. While searching for the term “KPOP Jologs” on Google, I found out that there’s a discussion thread in MYX’s Facebook fan page entitled “KPOP IS JUST FOR JOLOGS JOLOGS!!!!” (Ironically, the group was created by Westlife fans ) Honestly, I wasn’t THAT surprised by this turn of events… I have somehow anticipated that this would happen sooner or later given the raging popularity of KPOP in the Philippines. Just last year, I posted an article expressing my disagreement to the soon-to-be KPOP craze with the anticipation that KPOP will soon be “jologs”. Nonetheless, I do feel the need to defend the Fandom by debunking the common attacks against KPOP and its fans.
Why the hate?
I felt the need to post this blog because “arguing” on the MYX discussion board is pointless. The entire discussion is a huge flamebait wherein each reply contain at least 1 Ad Hominem and 2 curses. I have posted a very long, three-paragraph rational argument and my reply was followed with a post that reads “Putangina mo”. So yeah, I wish your eyes good luck if you wish to read that discussion board.
So okay, let’s start discussing the most common “attacks” to the KPOP fandom and KPOP. I will continually update this post when “new” attacks surface.
Continue reading “In defense of KPOP: Is KPOP Jologs?” »
Posted in Articles
on March 21st, 2010
In my previous post, I have illustrated and explained the “science” of online shopping and at the same time, revealed my addiction to fascination with cute Korean earmuffs and my tiring search for a local store that sells Mix-style headphones. Let me break it out to you as early as now: As of press time, there are no local shops/stores/establishments in the Philippines that sells authentic Mix-style headphones. There are a lot of Pinoy Netizens in Multiply or Sulit that sells these babies but be warned: MOST of them are cheap, fake imitations (But hey, if you’re a cheap, wannabe poser, that just might work for you)! Of course, there are some that sells authentic ones but they are just pre-ordering them online (probably from YesAsia) anyway, so to avoid the additional overhead charge and to be sure that you are getting your money’s worth, why don’t you just buy one for yourself?
Authentic Mix-style Headphones are <3
Before thinking of buying these online, make sure that you have the necessary stuff like Paypal first! For more information on how to start shopping online, click click!
So if these headphones are not available locally and there is a danger of getting fake ones when buying from Netizens, where can one buy authentic Mix-style headphones? Where else?! From YesAsia of course! The leading Internet source for Asian entertainment products.
YesAsia is the leading Internet source for Asian entertainment products
Posted in Articles
on March 7th, 2010
As a self-proposed geek and a professional software developer, it is hard for me to admit that I was totally clueless about online shopping for the longest time. Early last year, I got hit by the Hallyu wave and got addicted to all things Korean. KPOP, Korean hairstyle, Korean girls and Earmuffs!
Isn't she cute with those earmuffs?
At first, I thought “Can I wear earmuffs? I mean, those are for girls only right?” and then I found this:
Even KPOP Boybands wear cute earmuffs!
I was ready to get my own pair of those cute earmuffs but then I realized that THERE IS NO FREAKIN WINTER IN THE PHILIPPINES! Unfortunately, continental drift wasn’t on our side when it decided to the place Philippines near the freakin equator. So until the next Polar Shift, I’ve agreed to settle on a compromise: Headphones. So the search was on for my KPOP inspired headphones. I am glad to have watched the S.E.O.U.L music video by SNSD and Superjunior where I saw the SuJu guy wearing a very cute headphone:
I am not really a big fan of Super Junior. But I am the biggest SNSD fan in the Philippines (Self-Proposed). So when I saw SNSD wearing Mixstyle headphones, I just have to get one for myself!
Yoona, Sooyoung and Hyoyeon loves their Mixstlyle!
So I tirelessly searched for a shop (online or not) that sells Mixstyle headphones in the Philippines. My search was fruitless. There are a lot of people selling Mixstyles on Multiply but a lot of them are fake! I saw a dude selling Mixstyles for only 1,500 PHP but how is that possible when Mixstyles retails for about 4,000 Yen (or about 2,000 PHP) in Japan (these are Japanese headphones, afterall)? My friend, Carlos, even told me that Mixstyles are available at Trinoma for only 500 PHP! Since I don’t really want to use cheap, fake ripoffs, I was glad to know that Mixstyles can be bought online for a reasonable price (around 50 USD). But there was a dilemma, I have never bought anything online! But fortunately, I found out that its so easy to buy stuff online! Read on and be amazed on how easy it is!
(For more of my experience with Yesasia, click here!)
Continue reading “How to buy stuff online if you’re from the Philippines or My First Online Shopping Experience” »
Posted in Articles
on January 24th, 2010
Larry Wall haz dem
Larry Wall, the creator of the infamous Perl programming language, has once said that the greatest virtues of a good programmer are Laziness, Impatience and Hubris. To not mislead the lazy “computer science” students, allow me to define each virtues:
- Laziness — The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful, and document what you wrote so you don’t have to answer so many questions about it. Hence, the first great virtue of a programmer. See also impatience and hubris.
- Impatience – The anger you feel when the computer is being lazy. This makes you write programs that don’t just react to your needs, but actually anticipate them. Or at least pretend to. Hence, the second great virtue of a programmer. See also laziness and hubris.
- Hubris – Excessive pride. Also the quality that makes you write (and maintain) programs that other people won’t want to say bad things about. Hence, the third great virtue of a programmer. See also laziness and impatience.
A few days ago, a tester at our company filled a track that contained multiple attachments (Screenshots, Error Logs, etc) to assist the developers on their investigation. As we are using Microsoft’s Team Foundation System for source control and bug tracking, the most obvious way to get these attachments is through TFS Web Access; Frankly speaking, this is the only “official” way to access the track (bug report) on our company.
The TFS Web Access homepage UI
I don’t know if its a lack of feature or what, but there is no way in TFS Web Access to download multiple attachments at once. Additionally, when downloading attachments that contains a space on their filename, TFS Web Access will automatically concatenate the filename and that will remove the file’s extension (EG: Screenshot of the bug.jpg will be renamed to Screenshot)… You still need to manually rename the file with the proper extension to open it. And because I’m lazy, I don’t want to log-in to TFS Web Access, type in the track ID, click on the attachments tab, click on the file(s) I want to download, browse for the location where to save the file, create a new folder for the track, click save, minimize my browser, open the download location and (unzip the attachment, it its zipped, which normally is) to just view a single screenshot.
Since I am a big believer of Wall’s three virtues, I created a tool that will automate those boring and repetitive tasks for me (and allow me to download *all* attachments from a work item + workaround the “spacing” bug). The tool is called WIF or Work Item Fetcher and it is currently in Closed-Limited Beta.
At first, I thought about parsing the web pages to download the attachments using HTML Sanitizers and Regular Expressions but then I remembered that only Chuck Norris can parse HTML using regular expressions! So I searched the web and found out about the TFS SDK! Go .NET! Go Laziness! Okay, enough chit-chat, the rest of the post will be dedicated to discussing how to use the TFS API to download attachments from TFS.
Continue reading “Laziness, Impatience and Hubris or How to download Work Item attachments programatically using TFS SDK” »