8/13/2010

Coder at Work: Norlan Mumar

(Note: This was originally posted in Wakulu blog. I made this post when I was still part of the team.) 
NORLAN MUMAR
Programmer, Caresharing
Norlan just came back from Singapore when he joined Caresharing. He is one of Caresharing's Programming League Heroes by being the 4th developer in the team. Wakulu's lead programmer who has been in different computing eras -- from the floppy disk to the all-in-the-cloud technology, from Cobol to OOP programming, but when it comes to operating systems, he has always had MAC OS X in the heart.
With his university stint and diverse programming experience, it is natural for him to get Wakulu Coaching application to the next level. He is the all-in-1 guy in the team -- from the user interface to the information architecture to the system design.
On his free time (if there is free), he slays dragon and monsters in DOTA, and builds beautiful mobile applications for iPhone.
Q: Can you take us back to that point in your life when you decided to be a programmer?

Norlan:
I never dreamed of becoming a programmer. Back then I always wanted to become a computer engineer (more on hardware), but a relative of mine told me that getting a computer engineering course is a bit expensive. So I opted enrolling in computer science since it's the only course that's affordable and at the same time more or less related with computer engineering.
Q: What about programming do you enjoy?
Norlan: Problem solving and the satisfaction you get when you manage to solve a problem simply.
Q: Now on Wakulu, you came in at the later part of the product development. Did it make your job easier, or not any better?
Norlan: I already had a good idea of what the interns were developing around that time, and they were using Rails for the app which I already have a lot of experience with, so joining in the product development was a bit easier for me.
Q: What exactly is your role in Wakulu?  Are there unexpected roles you need to do in Wakulu (designing, business model/plan, etc)?
Norlan: Code janitor :-). Yep, leading a team.
Q: Which part of the role was a struggle for you at the start?
Norlan: Managing a team, until now I'm still struggling.
Q: What's your typical day working on Wakulu?
Norlan:
50% Designing
30% Coding
19% Planning
1%   Dota (and answering this question ;-))
Q: What was the hardest decision you made for Wakulu?
Norlan: Rewriting Wakulu from scratch -- it wouldn't be hard if I'm  the only one writing the code but if other people are involved you might hurt somebody's feelings in the process :).
Q: Having been a long time programmer, was coming up with the system design for the product easier? What are the new things you have to implement in Wakulu?
Norlan: I think experience really helps when you design new product, but I can't say it's easier because each product has it's own set of requirements and it's own challenges. There might be some areas that they tend to be similar with an existing product that you are working but most of the time they are different. There's nothing new with what I implement in Wakulu, and the part wherein a coach can collaborate with a member to achieve a goal, is similar to what we did in Hotchalk (I was a freelancer before I joined Caresharing), if you substitute coach -> teacher and member -> student the idea is quite similar.
Q: Can you point to a particular past programming or non-programming experience that helps you in creating Wakulu?
Norlan: I think the experience I gained working in Rameses helped a lot. Back then our head programmer always reminded us that if we ever create an app, make sure that it is beautiful in the inside (code) as it is on the outside (UI). This is one of the reasons why I opted to stop working with the existing Wakulu code and rethought the app. It did not pass the "Rameses" way of creating apps. I do hope the next version will.
Q: If writers have writer's block, do programmers also have coder's block? How do you deal with coder's block?
Norlan: Yep, programmers do have coder's block, it will start to happen when you are working on a project for months without shipping it. What I normally do is relax and look for inspiration. It might come from a very good UI design or a clever algo implementation. I always admire the guys at madebysofa, culturedcode and panic. Just by visiting their site actually motivates me to start coding inorder to reach their "level". So far, it's very effective.
Q: In developing a product -- from scratch to shipping, what is the easiest part? the hardest part?
Norlan: Easiest - starting the project. Hardest - actually shipping it.
Q: How do you decide that it is the right or not the right time to ship out the product?
Norlan: When my wife can actually use it without asking me for help.
Q: Any surprising moments, at the top of your head, that you had with Wakulu?
Norlan: That there are people actually interested in the product :-)
Q: Given your experience with Wakulu, if you are to advise people who want to develop their own product from scratch, what would your advices be?
Norlan:
  • A solid idea that you and your team believe in. It's important to be on the same page.
  • Everything is temporary until you actually ship the product and people started using your app.
  • Don't be afraid to throw away your code if you are not happy with the outcome. It's not a waste of effort, the experience you gain from it is valuable on your next design.
  • Build the bare minimum of the app. You still don't know if your app is worth using so why implement all the features?
  • Test early.
  • Have fun.
For more non-programming tidbits of a programmer, you can check Norlan's blog site. What makes him smile...

No comments:

Post a Comment