Quick! Explain “Microservices”

Recently Martin Fowler (a well-known co-author of the Agile Manifesto) wrote an in-depth and very lucid explanation of Microservices, along with co-author James Lewis. With new technologies, new fads, and new twists on old terminology popping up every month, it can be hard to weed out just another buzzword from something tangible.

Fowler’s definition is, in short, that Microservices are “an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API.”

So what does that mean? Isn’t any program, ultimately, a bunch of small services working together? Here’s a quick synopsis for the TL;DR types:

  1. Microservice architectures embody small, independently deployable services (usually business functions). Such functions tend to have a small scope, and can sustain themselves. They don’t need a big, monolithic application framework — they are “small services.”
  2. Such services are independently scalable. In other words, you don’t have to invest a huge amount of resource scaling your entire application — instead, you can focus on making only those “important or difficult” services scalable.
  3. They provide explicit (component) interfaces. This means that each small service provides a clean, usable API. This tends to promote excellent encapsulation and also stability across a suite of services.
  4. This same attribute (explicit interfaces) also promotes segmented development. Since each service is, by definition, independent and each offers a stable API, each can be built and maintained on its own.
  5. Change cycles tend to accelerate, again because each service is independent. Since each service stands on its own, a single service can be changed, tested, and redeployed without a monolithic build/test/fix/deploy cycle.
  6. This architecture also tends to lead to robustness. Since each service is independent, networks of services tend to test for, isolate, and handle failure gracefully. In other words, since there is no single monolithic system, trust is low. Services tend to anticipate and handle failure well.

Microservices tend to be very agile-friendly, too — leading to the question, which was first, the microservice or agile (it was probably agile). The point is, since services can be quickly iterated, we can make small changes more easily. And as Martin Fowler points out, we also benefit from great architectural flexibility:

Splitting the monolith’s components out into services we have a choice when building each of them. You want to use Node.js to standup a simple reports page? Go for it. C++ for a particularly gnarly near-real-time component? Fine. You want to swap in a different flavour of database that better suits the read behaviour of one component? We have the technology to rebuild him.

 

For a more in-depth explanation of Microservices, I’d recommend reading Fowler’s article.

6 Tips For Successful Global Expansion

Exporting is an opportunity that many small and medium sized firms should be taking advantage of to expand and grow to their full potential. Yet, fewer firms are exporting than one would expect. For instance, in this 2013 Canadian study, less than 2 per cent of such businesses are exporting. At the same time, recent import and export figures at the United States’ largest port, the Port of Los Angeles, point to considerably lower export volume than in previous decades.

These figures are mirrored in the U.S. by McKinsey’s Global Institute study, which points at a mere 5% of businesses exporting. But there is growth. According to the report, “Global flows are growing and contribute to GDP growth. Flows of goods, services, and finance in 2012 reached $26 trillion, or 36 percent of global GDP — 1.5 times as large relative to GDP as they were in 1990.”

With such a low percentage of firms exporting goods there is huge opportunity abroad — a gap that will likely be filled as the global economy recovers.

The Globe And Mail’s Michelle Little, in a recent article, also points out the high potential for returns by “creating a borderless product, networking to make key contacts abroad and embracing technology to both reduce costs and reach out to potential clients.” According to the Globe article, one firm to take advantage of export opportunities was Imprint Plus, specializing in name badge systems and boasting 35,000 customers in 75 countries. But it wasn’t always so: The firm can attribute much of its success to a strategic shift. When CEO Marla Kott saw the opportunity, she made the decision to refocus the business in a much more international direction.

Other firms, including Foxy Originals and Procurify.com, have realized similarly successful results by leveraging a global strategy.

As Ms. Little writes, “With a whole world outside our Canadian borders, opportunities are there for those willing to embrace technology, create key social networks and see past the headaches of patent infringement and ever-changing regulations.”

And, Imprint Plus’ Ms. Kott provides the following six strategic tips for businesses seeking to expand globally and leverage the potential of an international market:

  1. Innovate and create mighty products or services that are unique.
  2. Do an extensive competitive analysis and don’t stop at the U.S.
  3. Speak to prospective customers.
  4. Be fearless and look at money spent attending trade shows as education funding.
  5. Educate yourself continuously through government programs, trade commissioners, and business intelligence.
  6. Join an international networking organization.

For the complete article, see Three Companies Offer Advice for Successful Global Expansion in The Globe And Mail.

The Changing Global Landscape

Domo and CEO.com recently released an intriguing infographic focused on the shifting landscape around Global Fortune 500 firms around the world. As Josh James of Domo writes:

Domo and CEO.com researched a decade’s worth of data about the Global Fortune 500 to see how the Global F500 landscape has shifted over the past decade. The research showed that even though there’s been quite a bit of change due to globalization and innovation, much has stayed the same. For an interesting look at the data, check out our new infographic. — Josh James, Founder, CEO & Chairman of the Board

The Shifting Global Landscape

The Changing Global Landscape
The Changing Global Landscape — by Domo and CEO.com

There are some intriguing changes worth mentioning in this infographic, but the most interesting change is evident over the past few decades. Over the past 20 years of so we’ve seen the United States’ dominance as “the” #1 World Power erode. Today, America seems to be coming to terms with the idea that it’s going to be duking it out for a spot in the top five.

Many of the financial market gurus I network with believe America’s #1 position as a World Power, at least from a financial perspective, is a lost cause. Taking a look at the inset graphic, their position seems justifiable. China rose from  6th to the 2nd position last year, in terms of countries with the most GF500 firms. With that kind of momentum is there any way the U.S. will hold on to position #1? (Note that this chart is showing only the number of GF500 firms, not economic strength… but it’s still a telling tale).

There are signs that the U.S. is waking up to the Global landscape, and taking action. For example, Domo’s infographic points out that last year marked the end of a decade-long decline in the number of GF500 companies from the United States. A good sign, but it’s still a “bottom of the curve” position.

In the meantime, China and Taiwan are experiencing phenomenal growth: Both countries representation on the GF500 has increased six-fold in the same decade.

Where’s It All Heading?

I believe the United States is at a critical juncture. It has been the number one World Power for a long time. It claims to have outlived almost every other democratic nation (though others may have better claim). But its position is rapidly eroding, and soon the U.S. may be the second, or the third, world power. As Americans start to realize this, they are looking around. We represent less than 5% of the world’s population, and the rest of the world has been watching us for a long time. The question is, how will America react to this changing world dynamic? Will it shift course, and become the global power it can become? Or will China and India overtake the U.S.? Whatever the outcome, the world is now global, and businesses operate on a world-wide scale. It’s a growth time. It’s an exciting time. And Hyrax is ideally positioned to guide, nudge, educate, and participate in that growth.

GitHub For Beginners: Don’t Get Scared, Get Started

GitHub is more than just a programmer’s tool. If you want to collaborate on anything, you should give it a try. Part 1 of a two-part look at getting started with GitHub.

Loren Orsini put together a great introduction to GitHub. It’s a must read (at least, if you are not already a part of the GitHub phenomena). What makes GitHub interesting is the social experiment aspect of sharing code. This is the first creative collaboration that made inventing new software “social:”

Why? Because it’s a social network that has completely changed the way we work. Having started as a developer’s collaborative platform, GitHub is now the largest online storage space of collaborative works that exists in the world. Whether you’re interested in participating in this global mind meld or in researching this massive file dump of human knowledge, you need to be here.

That makes it interesting, as well as practical. On the practical side, it’s an absurdly economical way to manage source code, organize your code development, and make sure your team is “doing the right thing” when it comes to software development.

In search of silver linings

Every enterprise, big or small, knows that cloud computing is going to be part of their business. Small companies use it every time they turn to QuickBooks Online, Google mail, or a hosted Exchange server. Large companies are increasingly being attracted by the promise of zero hardware costs and ease of deployment. Yet there’s still fear about moving into the cloud, mainly because of the changes a business must address in order to embrace virtualization. Change hurts, and it hurts businesses more, at least in the short term — and businesses will always be concerned about the cost of change versus the benefits. In this article, take a look at how companies are coping with the cloud revolution.

How to shift from survival mode to growth mode

Jay Goltz’ article in The New York Times is spot on: “[Einstein] said that the definition of insanity was doing the same thing over and over again and expecting different results. Too often, I think that’s really the definition of small business. Whether it is continuing to hire the wrong people because of a bad hiring protocol, sticking with the same marketing plan even though it isn’t working or thinking we are going to become more profitable by underpricing our competition, many business owners stick to what they have gotten comfortable doing and hope it will start producing better results. Why?”

Is being too wired destroying creativity?

Is being too wired destroying creativity? Research shows that multitasking employees who are constantly bombarded with information are less creative and less focused. The solution may be letting your employees unplug sometimes, according to this recent Economist article. I couldn’t agree more. In fact, look at your work environment. Can your employees take the time to focus on one task without distraction? If not, consider making changes that will let them. You’ll see remarkable increases in efficiency!