Musings

How I choose to Work

I’ve worked with customers who cover different fields of industry, and range in size from one-person operations to listed companies since 1999. For customers large or small, I offer the same customer orientated approach.

Most people choose to work for a company.

I choose to work with a customer and walk away when the time is right or it’s no longer the right environment.

I’m not getting paid a salary, I’m getting paid for the service (hopefully good in their eyes) of improving processes and solving their problems.

This is why OT & Appraisals are a foreign concept to me since I don’t generally care about them. I also find the concept of “my boss” strange which might make it odd to work with me for some people. Technically you are my customer whom I don’t always think is right 😉

This approach has a great positive benefit of finding better customers to work with over the past 14 years.

The downside? Some customers are better than others and it can get hard to walk away when you make new friends and get into new areas of responsibility. My current customer is a 2.5 year long project that I originally thought would be 4-5 years long so it’s definitely tough to leave.

For those asking me when is my last day at iProperty, it happened already for me on 1st May but I just so happen to have a 3 months notice period. I guess you’ll know when the day is when I stop posting stuff on Yammer.

It’s kinda nice to have only ONE project to focus on now. The odd thing is I find myself holding back on comments on most things now coz “stepping on people’s toes” isn’t so nice when you are leaving and can’t repair the damage if the person is actually ok out of work context.

My next customer is going to be in an industry which is foreign to me (for now) but the concepts are not. E-commerce, Logistics, Analytics & Subscription Service, it’s going to be a great place to practice what I believe in and teach me the important parts about running such a business.

I’m also finally starting up company #4 at the same time (4th time the charm?).
3 companies and many _what not to do_ lessons should (I hope) make this an interesting challenge at the same time.

My goal at 25 year mark (just 10+ years to go) is to create a few more companies, meet new friends, find a few more great customers and hopefully teach some folks along the way some of the stuff I’ve learnt.

Standard
Development, Hardware, Musings

Always good to learn new things (even with PHP)

2012-09-12 Singapore PHP User Group Meetup

Magento
http://alanstorm.com/
http://inchoo.net/
http://www.aschroder.com/
http://blog.magepsycho.com/

Hardware hacking (RaspberryPi) with PHP
hardware-hacking-with-php-via-raspberry-pi
GPIO Libraries
https://github.com/WiringPi/WiringPi-PHP
https://github.com/pickley/PHP-GPIO
https://github.com/uzyn/raspi-gpio-demo.php

Restler for PHP Restful api
http://www.facebook.com/Luracast
Behat (BDD for php)
http://blog.phpdeveloper.org/?p=456

Facebook groups

sghypertextpreprocessors
raspberrypisingapore

 

Standard
Apple, Musings

thank you Steve Jobs for Apple 

Recollecting my thoughts over the past few days since the news.

Steve Jobs (1955 – 2011)

On Oct 5th, I remember waiting up (as I’ve done for a few years now) for Apple’s “Let’s talk iPhone” event. There had been rumours that Steve Jobs might be there and I hoped to “catch” it on the live blogging. After about an hour and a half, I learnt about the new iPhone 4 S and went to sleep. In the morning on the way to work, I was still undecided about getting the phone and after watching the video of the new phone on the iPad, I had pretty much made up my mind. Oct 28th for Singapore!

The day went by pretty uneventfully. There was meetings and even chatted a bit about the new phone with a few colleagues, there’s considerably fewer Apple fans in my current workplace compared to previous but it’s still fun to talk about something new from Apple with people who care.

On Oct 6th, it was another typical day, reading news on the iPad on the cab to work. Opened up Tweetdeck and a feeling of dread came over me as I learnt the news about an hour after it had broke on the net. I headed straight up to the office, checked Apple’s website to be sure and there was the man himself and a tribute to his work. We had truly lost a visionary and creative genius.

Remembering Steve Jobs

I’m not a Apple user from Day 1. As a kid, I’ve seen the Mac in use and never really got into it. MS-Dos, Windows were the windows into the PC world. I got into programming on DOS /Windows,Unix (HP-UX) and discovered Linux soon after. Apple didn’t really enter my life till quite late when I got my first iPod Nano. It changed my life from then on with a simple concept of being a work of art serving music.

When the iPhone got released, most people were still using candy bar phones from Ericsson or Nokia. It was not until the iPhone 3GS that I experienced queuing up for the first time for an Apple device. Unboxing it was a change that now has seen me not purchase any Microsoft product since 2009. When I look back at how Microsoft squandered their lead especially in Smartphones, it’s amazing how Steve Jobs created a new product category that has dominated smartphone usage.

For the past year or so, I’ve been toggling between Windows 7 and Mac OS X. Even as a long time computer user, I definitely have come to see how his vision has changed how computing should be and how product development should be done. I am truly saddened by the loss of a visionary and someone who has innovated and touched everyone with his dedication.

From his Stanford commencement speech in 2005:

Remembering that I’ll be dead soon is the most important tool I’ve ever encountered to help me make the big choices in life. Because almost everything — all external expectations, all pride, all fear of embarrassment or failure – these things just fall away in the face of death, leaving only what is truly important. Remembering that you are going to die is the best way I know to avoid the trap of thinking you have something to lose. You are already naked. There is no reason not to follow your heart.

Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma — which is living with the results of other people’s thinking. Don’t let the noise of others’ opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.

 

 

Standard
Conference, Development, Musings

Things I learnt at Apps World Asia 2011 (Singapore Suntec Convention)

Had the opportunity to present and also attend session at Apps World Asia 2011. Jotted down a few notes (still trying to summarize the content and will probably take awhile).

Presentations I’ve found interesting (not see rest on Slideshare yet)

Highlights

  • Mobile helps to enable
    • Improved Global Distribution
    • New features, updated content (fast) and adapting to new habits with a new distribution medium
    • Increase revenue with one-click buying (convenience)
    • Lower the barrier to purchase (cost)
    • Flexibility allows experimentation to what works (and what does not)
  • Understanding Local is important in a Global world (Culture)
  • Freemium approach to monetization is becoming very common
    • Give away free (viral) and encourage in-app purchases (long tail)
  • Good Content (Editorial) raises quality and draws repeat readers
  • “It’s about the users”
Standard
Musings

Lesson learnt… DON’T click on short URLs from friends .. use a private browser if you really want to

Saw this message from a friend on twitter this morning.

“haha the look on your face in this pix is priceless! <url removed>”

Looks innocent enough, we were recently at event and I thought photos were published. Click.

Shortly after, Twitter inbox starts flooding with messages.  I was in a “Doh” moment and quickly got pinged by friends who lucky enough didn’t click on the links yet.

“lmao this video of you is funny as hell, im sharing it with everyone <url removed>”

Lesson learnt. DON’T click on short URLs from friends on any communication. It’s something I follow MOST of the time and unfortunately, trust and curiosity got the better of me today.

Somehow the Twitter session I was on got hijacked and the permissions allowed the rogue app to send messages to my contacts. Had this been a more malicious payload, it would have been less “humorous”.

Thanks to Katy for the info:

http://www.seascapewebdesign.com/blog/do-not-click-link-haha-look-your-face-pix-priceless

and Twitter’s help https://support.twitter.com/articles/31796

 

Have you:

  • Noticed unexpected Tweets by your account.
  • Seen unintended DM’s (direct messages) sent from your account.
  • Observed other account behaviors you didn’t make or approve (like following, unfollowing, or blocking).
  • Received a notification from us stating that, “You recently changed the email address associated with your Twitter account” (even though you haven’t changed your email address).

If so, please take the following steps:

1. Change your password

Please change your password immediately from the Passwords Tab in your Account Settings. Please select a strong password you haven’t used before. If you can’t log in to your account, please see thistroubleshooting page.

2. Revoke connections

While logged in, visit the Applications tab in Account SettingsRevoke access for any third-party application that you don’t recognize.

3. Update your new password in your trusted third-party applications

If a trusted external application or widget uses your Twitter password, be sure to update your password in the application.

 

 

Standard
Development, Musings

A snapshot of what I’m interested in via Delicious and bit more on how I work in general

Just a quick post about how I approach projects/tasks/requests/anything in general. Something for me to review when I’m another 10 years older in 2021.

It’s a habit of mine that I call the RTFM first before asking anyone practice. It’s something I see lacking in some people who are developers and usually I stop talking too much to them.

Starting quite early, I generally found reading first, then asking was a better way to generally not be an idiot about asking silly questions too much. Of course, with the internet (was more like BBS via a 9.6kbps modem), it made it a lot easier to search first, then ask (which got lesser and lesser as more info is put online).

Delicious when they launched was a godsend for the tonnes of bookmarks (all lost now in some major hdd erase). Everything is neatly tagged when I remember to do so but generally 5.4k bookmarks gives quite a bit of insight into what I’m interested in.

The first bookmark was from 4th Oct 2005 and titled “Drag & Drop Sortable Lists with JavaScript and CSS“.

As of July 2011, here’s the top 10 tags

The most surprising? Singapore at 294! Never knew I did so much research into the country I’ve been in for way too many years.
The one year spent on EVE online and continued interest in the serious business of Internet spaceships probably tells me I should work on the technical topics more 😉
After I do a bunch of research, it’s time to experiment,hack around till I understand enough to use it in a project. It can take a long time but it’s usually worth it when you consider that a developer should never stop learning and definitely not stick to just ONE language/skill.
Never be afraid to experiment, fail and try again. That’s where the LEARNING comes in.
Standard
Hardware, Musings

Apples invading the home!

So Apple #10 is invading the study (Nano, iPhone 3GS x 2, iPhone 4 x 2, iPad x 2, iPad x 1, MacBook Pro).

Apple MBA Update: Shipment Delivered: Singapore

This time thanks to Decide.com and bit of patience (not something I do well when it comes to gadgets), I’ve made the purchase of a MacBook Air which will come really useful on the work trips. Lighter bag (my rationale) and really nice specs (i7, 256GB SSD!, 4GB RAM, Intel Graphics that doesn’t SUCK too much).

The same day the new Mac Air launched, Lion also got released. Since I was stuck in a hotel room, the 3.9 GB download was out of the question. When I got back, the MacBook Pro 13 (nickname’d Atron) got the upgrade. So far, nothing much has changed other than some rather awkward trackpad gestures… How the heck do I go back and forth in Safari/Chrome now?

Don’t be mistaken though, 10 apples in the house doesn’t mean I’m giving up on Windows. Windows 8 looks really neat and I hope to get it running on the main PC soon enough. For gaming and programming, the triple 24″ workstation still works pretty well. I do wonder how 3 x 27″ Apple Thunderbolt Display’s would look like though 😉

Standard
Musings

Thoughts from WebCamp 七

Finally attended WebCamp KL‘s seventh event . I found out about this after the Red Dot Ruby Conf in April when I got to talking with the KL Rubyists (@Anonymouscow and @bryanritchie).

1st WebCamp KL. Thanks @anonymouscow n @bryanritchie for the invite some time back

Lucky Chin was able to make it for the event else I would prob get lost in KL’s public transport.

We got in a little late and they were just announcing that the first few minutes would be an ice breaker session. The photo probably doesn’t show it too well but there was a LOT of people. Managed to catch up with a few interesting folks (UX, mobile, etc). Definitely not a .Net crowd 😉

The sessions today was a new format for the guys (something I saw after Red Dot Ruby which is a Pencha Kucha presentation format (20×20 : 20 slides , 20 seconds each). It’s for the brave souls who can really cut straight to the point.

  • Chern Shue had a talk on Symbology and specifically on QR codes and his project qnack.com
  • Ruben Tan @roguejs shared more about the benefits of Git Workflow which I enjoyed the most since we’re constantly looking to improve the deployment process. 40 square’s Git workflow.
  • @jerng followed the 20×20 slide format and gave us a rather interesting look at the state of the web and comparing to some interesting real world subjects
  • Wu Han @Ngeow also shared some insights from a recent diving trip and some app ideas. I quite liked the mechanic app.
  • Bazil from lgda.org.my did a quick intro to the gaming industry in Malaysia which I found illuminating (recent drama in EVE online has me digging into gaming industry and thinking more about the parallels to portals)

They also experimented with Slideshow Karaoke .. which you really need to have the guts to stand in front of an audience and have zero idea what slides you need to present and just go with the flow. Awesome effort by the first speaker who had transformed the “art of powerpoint presentation” to “dating”. The Top 20 indian movies and lastly a M$ Enterprise Product slidedesk was pretty ironic considering the crowd.

All in all, a pretty good session. Something regular and not what I’ve seen much in Singapore (for such a large crowd). Looking forward to the next session!

 

 

 

 

Standard
Development, Musings

Challenges of being a remote Scrum Master

It’s not easy when one is a Scrum Master remote from the entire team! I’ve heard a few times now that it’s rare and a real challenge to work with.

So why do I do it?

  1. Business Unit requires a tech guy. There’s no technical folks in the local office!
  2. Dev team requires a tech interface for the business unit.
  3. Someone thinks its necessary and hired me for the job.
  4. I like the challenge!

Challenges faced

  1. A lot of non-verbal cues get lost in communications and sprint planning.
  2. Missing out on building the team culture and practices.
  3. It’s not easy to help solve a problem with external factors via Skype/Phone.

Does Scrum help?

  1. The practices recommended (Daily Scrum, Sprint Retrospectives) aim to shorten the feedback loop for delivery of features (user stories). It’s really useful when your entire team is not in the same country.
  2. Daily Scrum is done via Skype and everyone’s on a common Skype channel throughout the day. This helps simulate being in the same room although there is a fair bit of communication gone missing in virtual setup.
  3. Sprint Planning is planned in such a way that both Product Owner and myself are with the team during this period with the team. This means a LOT of flying but it’s also helpful to reduce conflicts and ideally get better planning.
  4. Measuring metrics like Velocity, Operational Efficiency, Reliability, etc helps to let management have visibility into the team’s performance.
Standard