Archives For Thoughts


What’s this all about?

In the old days, R&D was about features, marketing was about promoting products to prospective decision makers, sales were about getting big deals, and service was about implementing and fixing things. Today, it’s all about growing end-user consumption and selling microtransactions to consumers.

The risk is on us, and our reward only happens if our end-users are successful.

Success doesn’t magically happen… Product marketing must design for it, development must build for it, services must contribute heavily to consumption research, marketing must translate the findings into offers, offer management technology must deliver it, services must access it during every service transaction…

In short, consumption is everything. If end-users underutilize our software, chances are that at some point the company we code for, won’t be able to pay for our services. We are all responsible for crafting successful software. From developers to sellers, everyone is liable to provide feedback, insights and value to the end-users. This is a team effort and can be supported through practices like DevOps, Business Intelligence and Artificial Intelligence. This requires communication and collaboration. It’s time to forget about silos and to move from a one-time sale to a pay-per-use model. Continue Reading…


Doing Something
Is Better Than Doing Nothing at All

There are times where uncertainty is high, the process is not suitable and the risk of missed deadlines looms on the horizon.

This is when we find ourselves in a sort of no man’s land, where everyone is terrified to make the call. At this point it’s important to note that inaction is a collective decision that we must all live with for the remainder of the project. More often than not, doing nothing puts your team on edge and produces an extraordinary amount of avoidable stress. Continue Reading…


How do you Update Your Wetware?

I’m passionate about technology, but sometimes I need a wetware update. A reminder that technology needs people to change the world.

Wetware is a term drawn from the computer-related idea of hardware or software, but applied to biological life forms. Here the prefix “wet” is a reference to the water found in living creatures. Wetware is used to describe the elements equivalent to hardware and software found in a person, namely the central nervous system (CNS) and the human mind. The term wetware finds use both in works of fiction and in scholarly publications.

Communicating effectively doesn’t come easily. Surprisingly, the skills required to be heard include paying attention to others. Listening with intent and genuine interest has a greater effect than one can imagine.

As a technology enthusiast, and as a dreamer, it’s important that I remember that I need to communicate to succeed. Ideas grow and mature to fruition through collaboration and care.

Curiosity drives me to update my wetware through various activities. For one, I am an active participant in my local and worldwide community where I learn about technology. By interacting with others, I learn from their experiences and expand my understanding. I listen to podcasts and comment on blog posts. I ask and answer questions on social networks like Stackoverflow and I participate in forums.

Human interaction is at the center of my personal growth and this fact has driven me to two wonderful books. The first book that I had the pleasure of discovering is “Speaking as a Leader“. This book is rich with advice about how to move others with your vision. Using the right approach and the right tools makes a world of difference. The second book is time-tested and has captured the interest of millions. “How to Win Friends and Influence People” is a book that conveys principles through stories about people who have left their mark on history.

Both books complement each other really well. And both are rich with a wealth of wisdom that begs for a second read.

How do you update your wetware?


What fuels your development efforts?

I recently came to the aggravating conclusion that coffee just doesn’t do it for me. Coffee gives me a quick boost and the crash that follows is impressive!

The day after a coffee boost usually results in me being more tired. Hence the start of a vicious cycle. Coffee to start me up and hide the fact that I’m getting very tired.

This realization got me thinking about other tricks that we use as developers to fuel our development efforts.

Some of us are heavy energy drink users, some drink tea and others binge on sugar. Let’s not forget other substances like alcohol that can stimulate creativity or slow us down enough to concentrate on what we’re doing.

Throughout my career I’ve tried a couple of these and I’m curious to hear about your personal experiences. Continue Reading…


We were a team that finally worked as a team! Identifying and removing blocking issues from the work in progress (WIP) became everyone’s focus. Our communication improved and knowledge was shared. This resulted in more contributions from everyone on the team.

Continue Reading...

Patterns like the Materialized View are essential to Cloud Computing and Scalability. The Patterns & Practices team describes this pattern as generating pre-populated views over data in one or more data stores when the data is formatted in a way that does not favor the required query operations. This pattern can help improve application performance by supporting efficient querying of data.

Continue Reading...

seismic-events-earthquakes Following some uptime issues with my Continuous Service, I have decided that it was time to give it some extra attention. In the upcoming weeks I will write about my lessons learned around building and running a low-cost Continuous Service on Windows Azure. This Day on #WindowsAzure is a personal attempt at capturing a snapshot of the daily community interest in and around Windows Azure.

Being a Windows Azure MVP, I’m quite interested in keeping up with the latest features and announcements made by Microsoft, but I must admit that it’s not an easy task. This is why I turned to the community for some help. I decided to subscribe to Twitter Streams for any tweet that contained a link and that had the words Windows Azure. Using the number of times that a link is shared, I started seeing trends and interests. I also decided to start tracking trending Windows Azure resources to in order to identify topics that generate interest the in community.

As I redesign This Day on #WindowsAzure, I will publish regular updates and try to get the service back online as soon as possible.

At this time, the service uses WACEL to interface with Windows Azure Storage in an attempt at generating the lowest cost of operation possible. The upcoming effort will also concentrate on the same goal. I will explore alternatives to help me work with large amounts of data.

I’m also pondering about hosting the solution on GitHub, but I have yet to figure out how to protect my application’s secrets from the repository.

Interested in my adventure? Feel free to share any insights or feedback as I will start the overhaul very soon.

The Original Design

This Day on WindowsAzure V1 

Lessons Learned


piratesBrownfield projects are living organisms and should be treated as such. There’s no use getting mad about what was done. What is, needed to be. What needed to be, was.

Software by nature isn’t flawless, we need to accept this and move on to the real challenges at hand. How can we maintain the delicate balance of the production software while we solidify it?

Find the smallest modification from which it would benefit the most.

Just for fun, lets imagine replacing an entire bridge without interrupting traffic. Sure, its a challenge, but we can get it done by taking a step back and devising a strategy. In reality, the bridge doesn’t need to be replaced all at once. We can replace it piece by piece with little interruptions. Eventually, the new bridge will be in place.

Continue Reading…


temporary

What’s your first impression when you look at this elevator control panel? To be honest, I find it confusing. What was the rush? I mean they could have waited for the new control panel buttons or the new software update to change everything at once. Who knows how long this patch will stay in place because it’s deemed to be “good enough”…

Personally, I see this all the time. Think about your projects, past and present, do any of them feel like this elevator control panel? It happens to all of us at some point. Typically, it happens when we’re rushed and think that temporarily commenting out a piece of code isn’t going to hurt anyone.

Continue Reading…

My Reading List for 2014

January 2, 2014 — 2 Comments

book worm Every year I hunt for new books to read. 2013 was a wild year where I didn’t really have a plan in place and my reading was all over the place. Wanting to get organized in 2014 is all about not missing out.

Last year I read some great books about SQL Server, Windows Azure and methodology, this year I want to focus on catching up some more on those key books that greatly affected our industry. Are there any books that shouldn’t be on my list? What’s missing from the list?

I probably won’t get to read everything on my list, but with your help I can try to pick the best ones to read this year and continue working down the list next year.

2013 was a slow year for reading, because my focus was mostly geared towards sharing what I had learnt about Windows Azure through my blog. This year is going to be different, I will try to balance my efforts between writing and catching up on the past.

Continue Reading…