Google Native Client: ActiveX for the other browsers

Today, Google announced Native Client, “a technology that aims to give web developers access to the full power of the client’s CPU while maintaining the browser neutrality, OS portability and safety that people expect from web applications.” Basically it’s a browser plugin that hosts a sandbox for native x86 code. So instead of writing a web page, you’d write a normal application and execute it in the browser.

I admit that I’ve only scanned the documentation and research paper so perhaps I’m missing the details, but Native Client seems entirely unnecessary for a bunch of reasons:

  • There are lots of ways to accomplish this already – Java, ActiveX, Flash/Flex, Silverlight 2, Alchemy, etc. Why do we need another one? Will it be very different or better? Heck even ClickOnce seems better than this.
  • What’s the point of running native code inside a sandbox inside a browser? Unless the sandbox is super efficient and our browsers improve by an order of magnitude, it would seem to me that the benefits of native code would be erased.
  • Similarly, with the performance of Javascript/HTML/CSS in browsers consistently improving, why write native code at all? Web apps are becoming very fast.
  • I don’t really want to install yet another plugin. The classic “chicken and egg” plugin problem will be in effect here (users won’t install the plugin without great apps and developers won’t create great apps if no one has the plugin).

This project feels a lot like Google is reinventing the wheel. Or at the very least, throwing something else out there to see if it sticks. I hope developers think about this before jumping in. A bunch of the comments on Google’s post suggest that will happen, such as this one:

Um, isn’t this called desktop software?

That kinda says it all, I think!

When you get right down to it, Native Client is just ActiveX for browsers other than Internet Explorer. Sorry Google, but that doesn’t sound very appealing to me.

How do you define mainstream?

Lately I’ve been thinking about the word “mainstream” and what it means. Princeton’s WordNet defines mainstream as “the prevailing current of thought” while Merriam-Webster defines mainstream as “a prevailing current or direction of activity or influence”. I think many people have a different definition however, something more akin to the one at UrbanDictionary:

Mainstream is what’s the new trend. When one "style" gets old, a new one is reborn; a mainstream person is someone who jumps from trend to trend so that they fit in with the rest of the crowd.

That definition has 514 positive votes and only 51 negative votes. There are a few others there too, but that one is the most popular. The definition at Wiktionary is similar.

Two recent articles got me thinking about this. On October 27th, the Wall Street Journal said that Twitter is going mainstream:

When the service first appeared a couple of years ago, its appeal seemed largely limited to narcissists who wanted to let everybody know what they were doing in real time. But, like blogs and social-networking sites, Twitter is starting to cross into the mainstream, as a wide range of people find interesting uses for the brief notes.

Is the WSJ right? Has Twitter crossed into the mainstream? I think that depends on which definition you use. Based on the one in the dictionary, I’d say they’re wrong.

The second article was from The Economist. They say blogging is mainstream now too:

Blogging has entered the mainstream, which—as with every new medium in history—looks to its pioneers suspiciously like death.

Hold on a sec – blogging has only just entered the mainstream? If that’s true, how can Twitter possibly be considered mainstream? Seems the “mainstream” media have different definitions for the word too!

Maybe everyone has a different definition for the word? I think it all depends on what your litmus test is. For instance:

  • Has Twitter been mentioned on TV and in the newspaper? Yes, it’s mainstream.
  • Does anyone make money using Twitter? Yes, it’s mainstream.
  • Do my parents use Twitter regularly? No, it’s not mainstream.
  • Do all of my friends use Twitter? No, it’s not mainstream.
  • Will a random person on the street know what Twitter is? No, it’s not mainstream.

I think that’s pretty close to what my litmus test is. Replace “Twitter” with “Google” or “Facebook” and all of the answers are yes.

What’s your test? How do you define mainstream?

Revisiting iGoogle

igoogle Like most people who spend a lot of time online, I sign up for new services all the time. Some of them I end up liking quite a bit and using regularly (such as Twitter, obviously) while others I just forget about. Until recently, iGoogle was firmly in the latter category.

iGoogle launched in May 2005, according to Wikipedia. I’m not sure when I signed up, but it likely wasn’t long after that. As you probably know, iGoogle features gadgets that you can drag around the page. Each gadget has a specific purpose – for example, a weather gadget or a calendar gadget.

Three things prompted me to give iGoogle another shot. Many of my coworkers use iGoogle as their homepage, and I kept noticing it during LiveMeetings and such. The second thing was Sharon talking about her favorite iGoogle theme (she calls it “so cute!”). And finally, Google launched an update today:

Google’s startpage, iGoogle, is spreading its wings. Today it is rolling out a new design that shifts tabs to a column on the left so that more Google gadgets and sources of content can be accommodated. But the biggest change is the ability for content partners and developers to expand each gadget to take up nearly the whole page.

Since I only used the old version a couple of times, I can’t really say whether or not the new release is a step forward or backward. I can say that I like it though! The only hiccup at the moment is that dragging gadgets around using Opera 9.6 doesn’t seem to work properly.

I’m giving iGoogle a real chance this time, and I’ve made it my homepage. Any amazing gadgets I should add? All the ones I have right now are fairly mainstream, such as the Google Calendar gadget or the Weather gadget.

Microsoft Tech Days Canada 2008

microsoft tech days If you’re a Canadian developer using Microsoft technologies, you’ve undoubtedly heard about the upcoming Tech Days training conferences taking place in 7 different cities across the country. Tech Days is Microsoft Canada’s first attempt to move beyond the marketing tour-style events they usually do and into something more substantial. This is immediately obvious from the price – these are not free events. Some cities are one-day events, and cost $249.99 (or $129.99 before October 15th). Others are two-day events, and cost $499.99 (or $249.99 before October 15th).

What do you get for your money? Your choice of sessions from five tracks, plus a fairly impressive learning kit worth about $1000. Quite honestly the learning kit alone is almost worth the price of admission – you get a full copy of Visual Studio 2008 Professional, a full copy of Expression Web 2, the complete TechEd 2008 DVD Set, and a 6-month subscription to TechNet Plus. Do the math…$249.99 isn’t bad at all.

What about the sessions? I’m going to be honest, my first impression is they aren’t much different than the marketing tour. Here are a few examples:

  • Building Killer Line-of-Business Applications with WPF
  • Goin’ Up to the Data in the Sky: ADO.NET Data Services for Web Developers
  • Mastering Your Samurai Skills of Silverlight
  • Beyond Relational SQL Server 2008: Managing Unstructured and Semi-Structured Data

Notice anything? WPF, ADO.NET Data Services, Silverlight, SQL Server 2008 – these are all the latest and greatest from Microsoft. I wonder how many developers are using these things right now. I know I’m not. How much will developers be able to take back to their jobs? Especially considering each session is just an hour and a half?

There are some sessions that aren’t so focused on the new stuff, and the IT Professional sessions seem even less marketing-like. There are also some sessions that are likely to have a much bigger impact even if they are focused on beta bits, such as the one on ASP.NET MVC. Still, I’m left wondering where the WCF sessions are, or even sessions on Workflow! What about something from Patterns & Practices? And if Microsoft really wanted to make it interesting, why not a session or two on some commonly used open source technologies like NHibernate or SubSonic or something?

David Crow wrote about this today too, and he says the website is a bit misleading. You should definitely read his post on the event. David points out that the primary innovation here is that 90% of the content is being delivered by non-Microsoft employees:

Once you scroll past the usual suspects, you’ll find a group of Microsoft friendly people from other companies. Consultancies. Big corporations. Smaller companies. Client side. It includes MVPs like Colin Bowern, Mark Arteaga, Laurent Duveau, and Barry Gervin. And others like Robert Burke and Ken Cox. Sure lots of these speakers are MVPs, it means that they are “exceptional technical community leaders”. They are experts. They write books. They blog. They consult. They build things in the real world.

He makes a good point – but simply having non-Microsoft speakers doesn’t guarantee quality, of course. It remains to be seen how effective this format is.

I’d be remiss if I didn’t comment on the cities in which Tech Days is happening. Developers in Toronto, Montreal, Ottawa, Winnipeg, Calgary, Halifax, and Vancouver don’t have to go anywhere. Everyone else needs to get to one of those cities to attend. I don’t know how Microsoft Canada came up with that list, but I’m once again disappointed to find that Edmonton is missing. We’ve got an amazing developer community here, one of the most successful user groups in the country, and yet we’re passed over for Calgary. That sucks. I know it’s expensive to get everywhere, but why not force the Calgarians to come up to Edmonton for once?

I encourage you to check out the Tech Days website for yourself. Read the session abstracts and figure out which ones would be useful. If you want to attend, you’ve got until October 15th to get the early bird price. Finally, check out John’s funny post on the Canadian Developer blog. You’ll laugh!

Pingdom Website Monitoring

pingdom logo Pingdom is a service that monitors your websites and/or servers and can let you know when something goes wrong. Despite your best efforts, something will go wrong, so it’s important to know right away when it does so that you can take action. That’s exactly what Pingdom helps you do.

I should have written this a long time ago – I’m a very happy Pingdom customer! I’ve used dozens of different monitoring tools and services over the years, and without a doubt, Pingdom is my favorite. I first got an account in August 2007, when I took advantage of a free offer for Mashable readers (if I remember correctly). I didn’t use it right away, but when I did, I was impressed. So much so that I bought Pingdom Basic account ($9.95/mo or $119.40/year).

The two Pingdom terms you need to know are checks and notifications. A check is basically a website, mail server, or DNS server (there are HTTP/HTTPS, Ping, TCP, UDP, DNS, and POP3/IMAP/SMTP checks). A notification is an email address or cell phone number (for SMS). Pingdom Basic gives you 5 checks, unlimited email notifications, and 20 SMS notifications. Additionally, you get included uptime reports.

The best thing about Pingdom is that it’s fast and reliable. I receive notifications generally within about a minute of something going down. That’s much faster than anything else I’ve tried. I feel confident relying on Pingdom to let me know if something is wrong with my servers.

Another thing I love about Pingdom is their blog, called Royal Pingdom. They occasionally post about Pingdom-related things, but more often than not they post about the industry in general. They obviously put some time and effort into it though, because their posts are original, in-depth, and very interesting. For instance, earlier this week they posted about 12 great iPhone applications for sysadmins and webmasters. It’s the kind of thing that keeps me subscribed.

If you’re looking for a website monitoring solution, I’d strongly recommend Pingdom.

Amazon Web Services: Still getting better

aws logo I often think back to 2006 when Dickson and I were in the midst of the VenturePrize business plan competition. It was around that time that Amazon.com launched their first web service, the Simple Storage Service (S3). It had a huge impact on our business, and we’ve been extremely happy customers ever since.

Over the last couple of years, Amazon has introduced a number of additional web services, the most well-known of which might be the Elastic Compute Cloud (EC2). You can think of it like an on-demand computer in the cloud. I had a quick look at it when it launched, but being a Windows shop, we really didn’t have time to invest the extra effort necessary to get it running. Now, Amazon has announced that EC2 will support Windows:

Starting later this Fall, Amazon Elastic Compute Cloud (Amazon EC2) will offer the ability to run Microsoft Windows Server or Microsoft SQL Server. Our goal is to support any and all of the programming models, operating systems and database servers that you need for building applications on our cloud computing platform. The ability to run a Windows environment within Amazon EC2 has been one of our most requested features, and we are excited to be able to provide this capability. We are currently operating a private beta of Amazon EC2 running Windows Server and SQL Server.

Very cool news for Windows developers. It should put some extra pressure on Microsoft too – though apparently they are getting ready to launch something. Watch for more news on that at PDC.

Another interesting new service that Amazon is introducing is a Content Delivery Service:

This new service will provide you a high performance method of distributing content to end users, giving your customers low latency and high data transfer rates when they access your objects. The initial release will help developers and businesses who need to deliver popular, publicly readable content over HTTP connections.

It will run atop S3, so anything that currently exists there can easily be added to the new content delivery network. This is very cool, and will finally bring world-class CDN infrastructure to small businesses. I wish they had introduced this two years ago!

Those are both very important improvements to AWS. Amazon is raising the bar, again. When will Microsoft, Google, and others answer?

Also – I just noticed recently that Amazon has redesigned the AWS website. It looks fantastic, in my opinion, and is much easier to navigate. Keep the positive improvements coming!

Offline access is more important than ever

offline folder Even though we still don’t have “wireless everywhere” (as I like to say), access to the Internet is indeed becoming more pervasive. Until the world is blanketed in wireless however, there will always be a place for offline applications. Sometimes you need to get some work done, with or without an Internet connection. Unreliable access or no access at all might have been the driving force behind offline applications in the past, but now there’s a new reason: cloud computing.

The term “cloud computing” is a bit like Web 2.0 in that it is used as a blanket term, but essentially it means accessing applications and services via the Internet (“in the cloud”) without worrying about the infrastructure that supports them. One of the best examples is GMail, Google’s email service that lets you manage your messages in any browser. It’s also a good example of why offline, synchronizing applications are so important – GMail went down completely yesterday:

Gmail is having a systemwide outage affecting multiple countries, and a whole bunch of its 100 million users are screaming about it on Twitter. Around 20 million people visit Gmail each day, according to Comscore, and they’re all seeing the same message. The first outages were reported at about 2 pm PST, 44 minutes ago.

One of the things that makes cloud computing different than services in the past is that more and more businesses rely on things like GMail to operate. When it goes down, so does a significant part of their business.

There’s a transition underway. Businesses are realizing that it doesn’t make sense to operate their own data centers and services when Google, Microsoft, and others can do it far more efficiently. But don’t let those names fool you, as GigaOm points out:

If an outage of this magnitude can strike Google, the company with a fearsome infrastructure, I wonder who — if any — can plan for the worst.

It’s extremely difficult to maintain 24×7 operations, even for a company like Google. The only reasonable thing to do is assume that service will go down at some point, and to plan accordingly.

For that reason, I think offline access and synchronization are two things that developers will need to focus on in the future. Like the other big challenge facing developers, multi-core computing, improved technologies and toolsets will be needed. Vendors are working on it, Google with Gears and Microsoft with the Sync Framework, but there’s still a lot of work to be done.

Cloud computing is great, and I’m excited about the opportunities that it provides. We have to realize that it’s only part of the equation, however. Offline access and synchronization are more important than ever.

Pros and cons of telecommuting

telecommuting The company I work for, Questionmark, is a big believer in telecommuting. As a result, I work from home usually two days a week. We were talking about it in the office this week, and this article in the New York Times made me think about it again recently:

Gasoline has become the new workplace perk, as employers scramble to help workers cut its use and cost. A dollar a gallon ago, things like telecommuting, shortened workweeks and Internet subsidies were ways of saving time and providing workers with a little more balance in their lives. Now they have become ways to save money and to keep workers from, well, walking.

Saving money on gas is definitely a good thing about telecommuting. Not everything about it is positive though. Here are some pros and cons for me.

Pros:

  • I save money on gas, likely extend the life of my vehicle, and get to avoid traffic headaches.
  • Rolling out of bed and turning on the computer is great. No need to rush around and get ready! This also helps with really early morning meetings.
  • If I need to run a quick errand, it’s easy to do so.
  • Often there are less distractions, and I can really focus on something.

Cons:

  • It’s really easy to eat too much. With the kitchen a few steps away, I find myself snacking more than I would in the office.
  • No air conditioning in my apartment…when it’s 30 degrees outside, the A/C in the office is definitely nice.
  • Sometimes to solve a problem you simply need to talk to someone else in person.
  • Technology isn’t perfect, and sometimes the VOIP phones fail or for whatever reason I can’t connect to something I need.

You can read more about telecommuting at Wikipedia.

Another popular trend is the shortened work week, where you work four ten hour days instead of five. That would definitely save money on the commute too, but again would have pros and cons.

Seems to me that the standard 9 to 5, five day work week is becoming a bit antiquated. At the very least, more and more organizations are comfortable experimenting with alternate schedules and ways of working.

Just use OpenDNS

warning! Unless you frequent tech publications on the web, you’re probably not aware that a critical flaw in many DNS system implementations was found recently (DNS is what translates http://www.google.com into an IP address – learn more at Wikipedia). On July 7th, news of the design flaw that researcher Dan Kaminsky discovered started to spread. The next day, many vendors (including Microsoft, which hosted the press conference) participated in a coordinated release of patches. A few days ago the first exploit code started to appear, making it even more critical that DNS systems are patched soon.

As of today, many major ISPs are not patched and remain vulnerable. You can see if your ISP is vulnerable by visiting Kaminsky’s site and clicking the “Check My DNS” button on the right side.

Or, you can just switch your DNS servers to OpenDNS and be done with it. I came across OpenDNS on the day it launched two years ago, and have used them on some machines ever since. Turns out that OpenDNS is one of the few that were unaffected by this flaw:

I’m very proud to announce that we are one of the only DNS vendor / service providers that was not vulnerable when this issue was first discovered by Dan. During Dan’s testing he confirmed (and we later confirmed) that our DNS implementation is not susceptible to the attack that was discovered. In other words, if you used OpenDNS then you were already protected long before this attack was even discovered.

Switching your DNS settings to OpenDNS is really simple and takes about two minutes. To get started, just visit http://www.opendns.com/start and follow the instructions. Or if you know what you’re doing, then the nameservers you want are 208.67.222.222 and 208.67.220.220.

As always, make sure you have installed all of the latest patches for your computer (that would be Automatic Updates for Windows users).

I want some of whatever Union Square Ventures is smoking!

meetup I cannot recall when exactly I happened upon Meetup.com, but it seems like a long time ago. I thought it was a neat idea and signed up. I never got much use out of it though, as there weren’t many other users in the Edmonton area. I forgot about it for the most part. Eventually I checked the site out again when they announced that it was no longer free to organize a meetup. It’s been on my radar since then, but I still don’t pay it much attention.

Today they announced that they have accepted funding from Union Square Ventures:

So why take an investment? Because the world needs more Meetups — and more powerful Meetups.  We’re at-risk of living in front of screens, endlessly Twittering and not forming powerful local community groups. There’s endless possibilities to make Meetup  better able to help people self-organize powerful local groups! With a shaky economy, it’s best to secure and strengthen Meetup for the future with an investor.

I feel obligated to point out that “endlessly Twittering” can in fact lead to worthwhile and enjoyable face-to-face meetings with others, both individually and with a large group such as the EdmontonTweetup.

The justification for the deal makes sense from Meetup’s point-of-view. Frankly, I’m surprised they haven’t taken funding until now. The justification from USV made me do a double take though:

Organizing people online to make a difference offline has been the central mission of Meetup since the beginning. The team there has always understood that there was a difference between collective intelligence and collective action.

So we are thrilled to be an investor in a company that has been organized since its inception around the key insight that we believe will drive the next several years of innovation on the web – the need to solve real problems in the real world for real people.

I’m confused. A company that charges $19 a month in exchange for a glorified mailing list is going to “drive the next several years of innovation on the web”? I don’t think so.

I agree with the argument that Tim O’Reilly, John Battelle, and indeed USV themselves are making about harnessing collective intelligence on the web and using it to make a difference in the real world. I get that.

What I don’t get is how Meetup is supposed to help us accomplish that, nor how they are supposed to drive innovation on the web while doing it? Last time I checked, we didn’t need Meetup to organize the EdmontonTweetup, or DemoCamp, or BarCamp, or Northern Voice, or smaller meetings for drinks, or coffee, or lunch. I don’t think any of the major fundraising initiatives (such as the CIBC Run for the Cure) use Meetup, though all of them certainly use the web.

Granted, there are certain niches that Meetup is very successful in. As Brad points out, the company “organizes over 2300 moms Meetup groups in 1100 cities in 11 countries.”

Still, I’m confused. Meetup is taking the money basically to stay afloat during a shaky period in the economy, and hopefully to grow. USV is giving them money to make a difference in the real world and drive innovation on the web. Something doesn’t add up.

Either Brad and Fred know something the rest of us don’t, or they’re smoking something really good.