Microsoft is proud to be a sponsor of the upcoming StartAtlanta event this weekend. We are excited that the event has the potential to create new companies with new ideas. As a Developer Evangelist local to Atlanta, I work with a wide range of communities here, and the startup community is no exception.
Microsoft has been supporting startups for a while now. Through our BizSpark program, we provide startup companies with software, support and visibility for no cost. There are several BizSpark startups around the Atlanta area, and they’re in the process of forming a meetup to network and share best practices about being in the program. By the way, if you’re a freelance web designer or a student, check out the WebsiteSpark program and the DreamSpark programs!
I’ll be attending the event’s kickoff on Friday night, so if you want to get instant access to BizSpark, I’ll be able to provide that to you.
Now I also know that most people who show up for the weekend will have a background in something other than Microsoft technologies. That’s great! You’ve got skills to bring ideas to fruition quickly in whatever language or platform you’re most familiar with. If that’s the case, why talk to me? Well, there are a lot of Microsoft technologies and services that are very interoperable and frankly, very cool!
What I want to do with this post is whet your appetite about technologies from Microsoft you might not know we offer, so you can incorporate them into building the next big thing.
To be clear, the purpose of this post is not to convince you (necessarily) to drop the technologies you have skills in and arbitrarily replace them something new. Instead, I realize that when you’re focused on a specific language or technology, you don’t have time to explore some of the cool things happening in other camps, or you think they can’t help you. I run into lots of people in the user groups in Atlanta like the PHP group, the Drupal group, AWDG and others, and I always enjoy sharing what Microsoft’s done that they haven’t heard of. Many times I find people are interested in what we’re doing, they just didn’t encounter it on their own or see how it could relate to their work until we chatted about it. I also enjoy hearing what they’re working on or learning about.
So here are some things that Microsoft has created or been involved with that I think have value to participants in Start Atlanta.
You might see something in the list below that prompts you to think “Wow, I didn’t know that was out there, I bet I could use that to…” and fill in the rest. Some of these things could allow you to build an eye popping new experience, provide information in a way never considered, or build a powerful emotionally compelling offering for your customers. I can give you more information on anything here, and help brainstorm how to use it in your project. In fact, if you incorporate some of these things, you might have opportunities to be featured at conferences, in magazine articles, on websites, or in videos. That’s great exposure for your fledgling company!
Feel free to contact me before, during, or after the event if you want more information about these technologies, and thanks for reading with an open mind!
Silverlight is Microsoft’s platform for delivering rich Internet applications and premium media experiences. The runtime is supported on many browsers, and on both Windows and Mac. It’s very quick to develop for, and has excellent tooling not only in Visual Studio but also in Eclipse (yes, even on the Mac). But the killer design tool for Silverlight is Expression Blend, which provides an amazing prototyping/design environment known as SketchFlow. Given how quickly startups need to get from design discussions to a running site/application, this would be an immensely valuable tool. jQuery is really powerful (and we have nice support for that), HTML 5 has a lot of promise, and we have tools and support for that coming, but pragmatically nothing can provide a richer experience today over the web than an RIA. (Did I lose any zealots with that one? <grin>)
Silverlight also provides some cool capabilities like DeepZoom (check out the Hard Rock Café memorabilia site, and be sure to click the links on the left of that page to see how the images really work) and SmoothStreaming (experience it here) that could be real differentiators for a company. You can also configure your Silverlight apps to run out-of-browser, making them feel more like true apps and strengthening your customer connection and branding. Don’t forget that Silverlight is independent of server technologies too, so you could have a Silverlight app embedded in a WordPress site hosted on Apache on Linux serving to Firefox running on a Mac. Whew!
Silverlight is also one of the programming models for developing for Windows Phone. Given the growing interest from developers and consumers in the platform, it makes sense to consider building for it in addition to the other major platforms. Also since the space is quite the greenfield, it’s easy to get noticed (and featured). Also it’s very easy to learn to develop for.
Microsoft has made a lot of progress in the web development/design space. In addition to the traditional ASP.NET development you may have heard of, we now have ASP.NET MVC for quickly producing sites optimized for SEO with super-clean URLs, standards based HTML, and replaceable Model and View engines (nHibernate or nHAML, anyone?).
Microsoft also just introduced WebMatrix, which is getting rave reviews for ease of creating not just .NET sites but PHP, WordPress, Drupal and more. With super easy customizations and helpers, you’ve never added a Facebook Like button as easily as this: @Facebook.LikeButton(). Using online packages, like ones from our Web Application Gallery (which includes many open source frameworks) and NuGet, as well as publishing are super simple too. Here’s a great summary of WebMatrix.
With IE9 just around the corner, there are also some great opportunities for providing a unique experience for those users (that won’t break the experience on other browsers or platforms) such as hardware acceleration and integration with Windows 7 to offer pinned sites, jump lists, notifications and more. Here’s a great opportunity to get visibility by being featured as a site that implements those capabilities on Windows.
If you’re implementing a service layer, think about Microsoft’s WCF stack. It lets you create a SOAP as well as REST type API, and can also be used to implement an Odata feed (see below). The services it provides can be easily consumed by a web client or by server side applications. Add on top of that our RIA services and you can have an awesome n-tier application up and running in no time.
If you’re publishing or consuming data, consider evaluating the Open Data Protocol, also known as Odata. It’s an open web protocol for querying and updating data that provides a way to unlock your data and free it from silos that exist in applications today. You can produce Odata feeds with any web programming language, and consume it too. And many data sources already provide data in a queryable Odata format, including Windows Azure DataMarket (see below). Because you can compose your queries on the fly, or map inbound queries to your data store, you don’t have to explicitly write all the functions and operations of a service layer yourself.
Another opportunity for startups is adding value to existing portal, database, business intelligence or CRM Solutions. Just ask the startups Izenda and CoreMotives! Lots of ways there to build something on top of SharePoint, CRM and SQL Server.
Windows Azure is Microsoft’s cloud offering, but like the other things I mentioned above, it’s not solely for Microsoft languages – we support (and provide education for) lots of other stuff like PHP, Drupal 7 Java, and more. Another benefit of Windows Azure is you can be up and running a lot faster than with other providers, because you’re working at a higher level than pure virtual machines. No need to configure a virtual server as if it were a full machine, having to manage things like services, security, patches and networking – not to mention load balancers, DNS, secure tunnels and the like. It’s all abstracted and taken care of so you can focus on your running application. You can have web roles that serve your pages (or services) and worker roles that do background processing, and the cost model scales up or down easily with your need for capacity based on demand. So if your startup is hot and you get Slashdotted, you’ll be able to handle it easily with predicable cost!
Windows Azure offers two kinds of data storage. One is pure HTTP based and supports tables of simple data, BLOB storage, and queues. The other data storage is SQL Azure, the only true relational store in the cloud. So you can pick the one that you have the skills for, or makes sense for your business needs.
Don’t forget you could use Azure services as the backend for any application – web, desktop, phone, etc.
Windows Azure DataMarket is a cloud based service aggregator that lets you discover, subscribe to, consume, and publish commercial & public domain data. There are so many great data providers and streams (including the Open Government Data Initiative) that you might even get an idea for a startup just by browsing those and brainstorming what kind of mashup you could create!
Just for fun, consider the social networking offerings from Microsoft, including Messenger Connect (which taps into Facebook), or maybe write a game for Windows Phone, PC and Xbox 360 using the XNA framework and Xbox Live.
If you’ve made it all the way through this post, I hope that somewhere along the way you found something intriguing, relevant and/or inspiring. See you at Start Atlanta!