Wednesday, February 19, 2014

I have an eye for good technology tools ;)

The following are proofs that I've got great eyes for technology tools (A.K.A, I'm not your cheap-ass tech dude!):

1.

Yesterday, we had some folks from Microsoft came around to discuss with my development team (Quickteller team) about Windows Azure Notification Hub. It went so cool that the Quickteller product manager concluded on the spot that we were going to use it and started wondering why we hadn't adopted Windows Azure since.

I felt great!

Having used Windows Azure for Tiketmobile for almost two years now (since 2012), I'm the most experienced Windows Azure developer in my team. But that's not why I felt great. I felt great because, being responsible for the technology decisions on Tiketmobile, I had seen the prospect of Windows Azure and adopted it for our product. Even then, it was against the advice of our supporters, who suggested we go with Rackspace or AWS, because everyone in the hub was using those. Also it came with little local support... in fact, when we first started using it, it wasn't even available for Nigeria yet. I had to figure-out a lot of things, including roping-in PHP to the Cloud Service, from Visual Studio.

I'm glad that that skill of mine won't suddenly get redundant after all... Well, I would have used it during my nightshift anyway!


2.

My CIO shared a professional report with TechQuest yesterday which listed the frameworks that are in-vogue for developing web applications in Java, with their pros and cons, using several metrics. On the top 3 was Play! Framework. Vaadin was first, Grails was second and Play! was third.

Apart from me wondering why the fuck I hadn't heard of Vaadin before yesterday, I also felt great because, when I move to my nightshift (which is every night, after my 9 to 5), I'm mostly hacking off on Play! Framework... with Scala programing language though, not Java.


3.

CIO (of life!) also shared a great article about Reactive Application Development, which argued that it wasn't just hype, but would help applications better handle stress/load. I had earlier tried to bring-up the discussion of reactive programming with some of my colleagues, as a means of better understanding it, being a learner myself. Reception wasn't so great, so I relaxed my learnings to my personal space and when I'm on my nightshift.

I guess this is a little blessing of some sort to talk about how TechQuest could adopt Reactive app development in our methods... even if it's only talk we talk about it. Understandable, old systems might not need to be touched, I mean, why fix something that isn't broken? But new systems could benefit from the new cool ;)

Alternative title of this post:
Why it pays to have a CIO who's in-vogue (A.K.A hippie CIO aiye!)

Tuesday, February 18, 2014

I'm quite the adventurer

Whoever knows me by now, knows that I'm a software engineer, a proud one at that! I love my job, I mean, I love what I do, it's a passion... I sometimes can't imagine how it would be if I wake-up and I don't look forward to writing computer programs.

However, I haven't always been like this.

When I was a kid, in primary school, it used to be drawing that I couldn't imagine letting go of. I have a faint memory of me swearing that I would never stop drawing! Everywhere in Air Force Primary school 1, Ikeja, I was known by my peers. Not just me, my brothers too, all of us: Francis, Anthony & Chima! We defied all caution by my Dad, who would rather have us focus on school, to engage in this...

Well you can see the results in Anthony's Insecta + him being nominated for the future awards last year. Chima is also another person who would take everyone by surprise when he arrives  from his just concluded NYSC, having been second runner-up at the Commonwealth Art Competition in 2007.

As for me, as soon as I got to my senior secondary school, I dropped drawing for sciences and mathematics. I enjoyed advanced mathematics so much, I used to be the best in further mathematics. I loved it so much I added "calculus" to my name, hence "celestocalculus".

But then, after secondary school, I left it for programming.

Last weekend, I actually started learning to play the guitar I bought myself as a new year's present. I'd looked forward to playing a musical instrument for a long time, and this is just it. Now I'm wondering if mastering the guitar would (re)define my next 10 years.

The trend shows that I'm an adventurer in this life. I chase interests and master them, then I move on to the next. However, I love software development so much, I don't look forward to letting go of it anytime soon. I doubt I would, it makes me feel like a creator.

Besides, I  haven't even gotten to my perceived apex of software development: building world-class technology companies... Still I've got my guitar skills to learn.

Saturday, February 15, 2014

We might not be alone

I believe in evolution.

I just saw the video below on my Facebook feed and it re-affirms that belief:

https://www.facebook.com/photo.php?v=10200216167421304&set=vb.1065819989&type=2&theatre

And then I shared it with the caption:

"See this bird using bread as a bait to catch a fish. If the earth survives subsequent stages of evolution & man haven't hunted this bird till it's extinct, they would create tools & be far more advanced!"

While typing it, I began to have a stream of thoughts and imaginations.

  1. What would the earth be like, if in billions of years, this creature evolves to a highly intelligent being?
  2. Where would the human race be by then and how would they be reasoning? How intelligent would we be by then?
  3. What are the chances that we would even still be on this planet? Maybe we would have discovered how to survive at other parts of the galaxy and we would have migrated there, then leave the earth as a desolate land for other evolving species.
  4. What are the chances that there aren't other highly evolved species, who after evolving past a certain level of intelligence and migrated out of this planet to other places in the galaxy, leaving earth as a desolate land for evolving mammals which later became us?
  5. If this is the way it goes, then chances are that these highly intelligent beings won't even be mammals, or maybe they won't look anything like us, but they would be monitoring us over some "purple matter" (like Frank Ocean would put it).
On a parallel thought train, I imagined that dinosaurs were the most intelligent beings of the times when they reigned supreme. Maybe they didn't build computers, but they found a way to subdue the other occupants of this planet. However, they didn't understand or try to figure-out how the elements of this planet works, hence they were wiped away by natural processes.

The seed has been planted and the thought process is still executing.

Sunday, November 24, 2013

Slave to Passion...not!

I've got this innate belief that most of the things in life are tools: social skills, oratory, quietness, etc. These are tools which makes it easy to navigate through the crests and troughs of life. Heck, life itself might just be a tool for one to achieve greatness and leave their footprint on the sand of time. Maybe.

This idea started to take root in my mind when in 2009, I read an article in the Oracle Magazine which described programming languages as tools and showed how pointless it is to be religiously attached to any language. After reading, I made it a conscious decision to learn as much programming languages as possible and apply as needed, in the most appropriate scenario. I'm still growing in that quest.

Then comes passion...

I am a very passionate person, it's one of may major strength. I like to believe that logic is the major drive behind most of my actions. However, most time, I've discovered that I don't yet know myself as much as I think, and that where there is a choice between passion and logic, passion usually takes front seat. Many times the result is good, other times it's just messy.

After the events of July this year, one of my personal diagnosis is to try to use everything as a tool, as much as possible. Everything, including passion. Just like I'm doing with programming languages. But old habits die hard and a tool in the hands of a learner does some damages first before it's eventually perfected.

The ugly head of my over-flowing passion showed up again on Friday, now I've got some query to answer to when I get to work on Monday. At times like this, I have to just remind myself to...

Thursday, October 31, 2013

Core engineering shizniz is coming to Connect

Yesterday, I offered to blog about engineering at the yet-to-be-opened "Engineering" segment on the InterSwitch Connect website.

As weird as it sounds, I must confess that I find it quite difficult to blog about core software engineering things. Even though I consume a lot of engineering content online + I try my best to use best engineering practices everytime, that shii just doesn't wanna flow in my blogging. However, I intend to force it! I'll take cue from the engineering blogs of Facebook (which I've been consuming since 2009), twitter, etc.

Expect an expose on the stuffs going-on behind the hood in The Switch; how we put in our best to ensure that your transactions are safe and secure and how we apply best practices, from coding to testing to [automated] deployment -- using CI tools, like Jenkins. Those nitty-gritty things that take place, from the people who make them happen.

I look forward to it and hope it's gonna be a fun ride...

P.S.

Happy birthday to my awesomely creative brother Anthony. Your is a place among the greatest!

Sunday, October 6, 2013

How I give my best in what I do

I've been thinking about my method of work, my style and demeanour. I wonder deeply why I do what I do, how I do it and this occurred to me:

To give your best in what you do, you have to be proud of it. What shows that you are proud of what you do? The major indication that you are proud of what you do is when you are never ashamed/afraid of talking a lot about it, of showing it off... I mean, you won't be dating a smoking hot & sexy girl and not show her off! Even the Bible says:
Neither do people light a lamp and put it under a bowl. Instead they put it on its stand, and it gives light to everyone in the house. -- Matthew 5:15
That's the way I work. When I make a decision about something, I immerse myself totally into it. It shows in my daily activities, my tweets, my blog post, etc. I don't just do my job, take my money and leave, I immerse myself. Some of the people I admire also act likewise, most notably 2Pac.

The downside of this is that if whatever it is fails, you feel the pain much deeper, and maybe for longer.

That's how I roll!

Saturday, October 5, 2013

Another access into the Beast

Yesterday made it two weeks since I join InterSwitch TechQuest, and I have really surprised myself at the rate in which I blended in. I won't give myself credits though, rather I'd say the guys there are just fun to be around, especially the crazy in-house web designer Senator Wale Abba.

I successfully completed my first sprint yesterday, showing my demo to the Director pushing for the product and the product manager in-charge of the product. Both seemed impressed. I created a PHP/MySQL website demoing the prowess of our yet-to-be released Single Sign-On (SSO) and third-party app authorization systems. The website was for a hypothetical coffee shop, Blue Cups, and the product manager is going to use the demo to entice a major player in the online e-commerce space to sign-up for these systems.

I felt the fulfilment of contributing to the bottom-line. However, not much people would get to use Blue Cups -- not as much number as I'll love a large number of people to use something I've created. But my next task would solve that!

Demoing to the director, he made some suggestions as improvements & consolidation in application flow that should be incorporated into the use-cases. After looking through his suggestions, the architecture I designed contained patterns that could (and should) be abstracted into an SDK. By happenstance (or not), a web SDK was supposedly in the works... Then that became my next sprint. I am to merge my new concept to the prior proposals for the web SDK, and build it.

I've been thinking around the implementation details, and the reality of this task just dawned on me. I believe the web SDK would be one of the major entry point into the beast which crunches most online payment transactions that happen in Nigeria. This single realization gives me some chills and compels me to put in a lot of responsibility into the authoring of this tool.

My colleagues at TechQuest put in loads of work in making this beast function at its best capacity, this tool must do justice to their work!