Author Archive: George Fkiaras

February 14, 2011

The Black Cat

"Dogma." "Religion." What comes to mind when you hear these words? In the real world, you might think of Christianity, Islam, or Judaism. In the political world, you might think of Communism vs. Freedom. Closer to home, you might think of "red state" and "blue state."

Computers are deterministic, logical machines, yet they too have all the trappings of the world's major religions and dogmas. The desktop world is dominated by Microsoft and Apple to use the religion metaphor. All computing worlds could be broken down into "proprietary" and "open source" if we are talking about dogma.

Relevant to this discussion, the web development world has three major religions in those two dogmas: Microsoft's ASP.NET, the PHP world, and the Java world. My platform of choice has always been ASP.NET.

I am pretty solid in my reasons for preferring it over all others, and also pretty clear about the accidental reasons I found myself in this camp. Much how someone born into a particular religion is likely to freely adopt it at some point, I too ended up adopting ASP.NET for reasons that were nothing more than accidental.

I consider myself a 'citizen of the world' in more ways than one, and the opportunity to work at SoftLayer was an opportunity I couldn't turn down. I had to check my biases at the door, open my mind, and see how this side of the aisle does business. (And as if to remind me that a dogmatic shift has occurred in my professional life, Fox News continues to greet me every morning at the top of the stairs.)

To admit just some of my biases: How on earth did you build an enterprise-grade portal with a weakly typed language that doesn't require something as basic as a compiler? More importantly: Why? How does one work with such a thing? Some of you still use VI?? Seriously?

Fast forward about six months — just enough to say I am "proficient" in PHP and to have an exposure to the database side of things. The journey and rants are long and technical, but it should come as no surprise that I still prefer the Microsoft ecosystem over one based on PHP. I find it easier to work with, faster, and less error-prone than the alternative. The language is more structured, the tooling is better, and the framework better established and developer-oriented.

Humor me with this for a moment.

Assume for the sake of argument that my belief is correct — that Microsoft's offerings are indeed better than PHP's on every metric a developer can measure. If this is true, one might reasonably conclude that SoftLayer erred in its choice of development platform. Even though I will be the first to evangelize the virtues of the Microsoft ecosystem, I'll also be the first to say that this conclusion is wrong.

The conclusion is wrong because in asking the "Why?" in "Why SoftLayer chose the platform it did," I approached the question from the perspective of what's best for the developer. The question should have instead been phrased as: "What does SoftLayer's choice of platform say about our core values?"

It isn't exactly open source. Place the source code on any laptop, and you'll get the modern-day equivalent of summary execution: You will be fired.

It isn't developer convenience. It isn't needed. From what I've seen here, the developers have used their tools in a more extensive and architecturally correct way than I have in my time in the ASP.NET ecosystem.

The elusive answer can be summed up in one word: Independence. Fierce independence if you're into using superlatives.

While the Microsoft ecosystem may be the easiest on developers, it comes at price. Microsoft's ultimate responsibility is to the thousands of people that use its tools, so it has to steer its platforms in a way that fit the disparate needs of the many developers who rely on them. In relying on its own software, built on open-source offerings, SoftLayer can steer its platform in a way that benefits SoftLayer ... It has only its own needs to consider.

The soundness of this reality — and indeed, the necessity of being fully independent when one's core offering is the basic infrastructure that runs people's businesses should be obvious.

Very often we become overprotective of our dogmas, and fear that which we do not fully understand. To that end, I try to remember the words of an unlikely capitalist: "It doesn't matter if a cat is black or white, so long as it catches mice."


September 14, 2010

iPad: The Revolution

The iPad

"A magical, revolutionary product at an incredible price" says Apple.

"It's shiny!! I want one!" half my brain says in awe.

"It's over $600! The economy sucks! When's the last time you bought yourself some decent clothes? Haven't you wanted a road bike for a while? How's that savings account of yours holding up anyway? Doesn't matter, it should be double that. And while you're at it, you should spend less on food too." So protests the other half of my brain, a side that sounds curiously like my mother.

There was going to be no impulse buying here. If I were to get one, I would need a solid justification for it. So the justification became this: I'm a web applications developer, and the iPad has the potential to influence what I do for a living. What this influence will be is not altogether clear, but I will have a much better idea of what it will be owning an iPad rather than not. So the decision was made: a shiny, 3G, 16GB iPad to call my own.

Whether the iPad is "revolutionary" will be decided only after the revolution has occurred and its effects discussed, debated, and understood. But the potential for bringing about one is very much there. The iPad is also as much a product of a revolution rather than the instigator of one: the shift to ubiquitous internet access and cloud computing.

The Revolution the iPad Could Bring About

Computers were once only attached to keyboards, where people entered memorized commands. The mouse and graphical user interface were revolutionary in their day, allowing people to interact with computers who otherwise couldn't or wouldn't do so. Just as importantly, the mouse and GUI allowed the creation of software that would not exist elegantly in a world with just keyboards. One notable piece of software made possible by the GUI & mouse was the web browser.

Much like the mouse before it, the multitouch screen presents a major evolution of the computer-user interface. Unlike the combination of the mouse and keyboard however, it is a complimentary evolution. Multitouch screens will not replace the mouse and keyboard, but compliment them in many areas.

Suppose you have a button on a screen. In the past, pressing that button required "aiming" a cursor with a mouse attached to your computer, or (more recently), a trackpad. In many cases, the button on the screen might be "mapped" to a key or combination of keys. But the multitouch screen bypasses all this. If there's a button on a screen that says it does something, all you have to do is press it with your finger.

Trivial you might say? I would say "subtle," with powerful implications:

The precision of a dedicated mouse and keyboard is no longer required for many tasks that once depended on these devices. Since the iPad is a portable device, being tethered to a traditional computer or laptop is similarly no longer required. Much like the mouse and GUI before it, new applications that were not practical for mouse-based systems will now be written and many of course have been. Few people could have predicted that the web browser and its impact on society would be one of the many advances the mouse-based GUI would bring about, and it is entirely possible that such ground-breaking applications will one day be written for the iPad, or a device similar to it.

The Revolution That Made the iPad Possible

AT&T's coverage map shows the majority of the United States covered by their 3G or EDGE networks, and competing carriers show similar coverage. Whereas "cellphone coverage" once meant being able to make voice calls and send texts, "cellphone coverage" today is synonymous with internet access. The internet is everywhere, and it is all around us.

Imagine a device like the iPad in a world without ubiquitous internet, without wifi even. Would that iPad have a disk drive? It could have the greatest, most revolutionary interface in the world. But there'd be no argument that the device's utility would be much more limited, to the point where the device might appeal only to technical people.

The iPad is one of the first mass produced, practical cloud computing devices, and its success is in part owed to the many advances made before it. Companies like SoftLayer helped bring about cloud computing solutions to developers such as myself where such services would otherwise be inaccessible or prohibitively expensive.

So when I look at my iPad, I no longer just see a shiny new thing. The sticker shock has been more than offset by what the iPad represents: striking innovation and an attitude toward the economy all of us would do well to adopt: Don't complain, put your brain to work, and create something new.

Yet the iPad is not an isolated device either. Years of infrastructure investment and innovation by many companies brought us to the point where consumers and developers alike can leverage the power of the cloud. "Revolutionary" is a bold claim on Apple's part, but in the context of what the state of technology was even a few years ago, the term "magical" isn't far off at all.


Subscribe to Author Archive: %