Wednesday, June 27, 2012

Cross-post: ISV Guest Post Series: Linx Powers its Point-of-Sale Systems with Windows Azure

Fernando Chaves, e-Commerce Program Manager at Linx, talks about their LinxWeb Point-of-Sale system that’s now running on Windows Azure. The full post is published on the Windows Azure blog, here.

One of the interesting tidbits in this write-up is around the shift of media content to blob storage and CDN. Traditionally, Linx stored this content in their SQL Server database. This meant that, with every request for content, both the database server and IIS were taxed, handling the retrieval and streaming of content. Once their media was shifted to blob storage:

  • They saw an approx. 75% reduction in database size.
  • They saw significant load taken off their database and web servers, resulting in much faster response times on their servers due to reduced load. With content located in blobs (or CDN), web pages can simply link directly to this content, which completely bypasses IIS and the database server.

This post is one of several in the Windows Azure ISV Guest Post Series. The entire list is here.

Tuesday, June 26, 2012

Speaking at MADExpo: Nose Equal, Starring MongoDB!

The Mid Atlantic Developer Expo (MADExpo) is this week: June 27-29, at the Hampton Roads Convention Center in Hampton, VA. This year, I’m presenting an introduction to the “NoSQL” database craze (kinda sounds like “Nose Equal”). We’ll fire up a quite-popular NoSQL database, MongoDB, and see what this mysterious schema-free, SQL-free database is all about!

If you’re attending the conference, feel free to stop by and learn a bit of MongoDB goodness! My talk is scheduled for two timeslots:

  • Wednesday @ 11am
  • Friday @ 8:30am

Monday, June 25, 2012

Cross-post: Windows Azure and Java: Working with Blob Storage

Persistent Systems just published a blog post about working with the Windows Azure SDK for Java to access blobs. This covers:

  • Working with containers
  • Creating. listing, and deleting blobs
  • Verifying integrity of blobs
  • Working with Shared Access Signatures and permissions
  • Simulating nested directories within containers

The Java SDK blob classes sit atop the Windows Azure Storage REST API.

Thursday, June 14, 2012

Fan mail: wow your so stupid

I’m out in Redmond this week, meeting with our worldwide team as we prepare for the new fiscal year. Each team shares a few key learnings from the year, maybe offers a bit of training. I co-presented a fun talk about Windows Azure and architecting for resiliency.

Afterward, a few of us were talking about how we disseminate these nuggets of wisdom. This led to a discussion around blogging and, eventually, StackOverflow. For those not familiar, StackOverflow is a programming Q&A site. The community is self-managed, and both askers and answerers earn reputation points and badges. It’s a fun place to share knowledge and help others. Anyone can vote a question up or down, and the original question owner may choose to mark your answer as “the” official answer (yielding even more rep points). If interested, you can check out my profile and peruse some of the answers I’ve provided. I’m almost embarrassed to admit how often I go back to my own answers, to remind myself how I solved a problem in the past…

I mentioned how StackOverflow is community-driven. Well, as reputation increases, so do associated privileges. One key privilege is the ability to moderate questions that don’t fit the published Q&A format. For StackOverflow, it’s all about asking programming questions. It’s not a forum to start religious debates (e.g. “Which cloud is better: AWS or Windows Azure?”). These questions can lead to some hostile answers, none of which can really be quantified with terms such as “kicks butt” or “is as worthless as navel lint.” So… as community leaders, we are asked to moderate these off-topic questions, and are able to vote to close a question (along with stated reason).

What about the fan mail?

Ok, on to the meat of this story: Fan mail. I recently voted to close a question, as it was an open-ended request for opinions about which cloud would scale better for a given scenario. I won’t reference the specific question or person, as I don’t feel it’s necessary to call this out.

The person asking the question wanted the Community At Large to provide a very detailed answer on many, many what-if’s of a fictitious app scenario, none of them programming-related.  The question was eventually closed, as 4 other moderators voted as well. And that’s when the original poster tracked me down, via Facebook, and delivered a lovely message to me:

wow your so stupid I ask a in deep question about cloud computing on stack and you close it before I receive any answers.... coming from a azure expert too wow wonderful I was expecting more srsly

Normally, I’d let this one slip by and just ignore it. But… thinking about it, I wanted to share this and offer my thoughts, in no particular order:

  • Stack Overflow is a voluntary participation site. Nobody’s paid, we don’t get ad revenue, and we do what we do because we want to and enjoy doing it. If others benefit from answers I (or others) provide, that’s awesome! If I choose not to answer a particular question? So be it: My choice.
  • If you’re not going to play by the rules, accept the consequences. In this case, there are other forums to post an opinion piece. The original poster could have even blogged about it, tweeted, and asked the world to join in on an opinion-laden debate. Maybe I would have joined in the debate. Maybe not… At least there’s a home for these types of discussions.
  • If you’d like to provide feedback to me, please do! Even in a public comment on my blog. However, if you are going to take this route: I ask that you keep it civil. Name-calling is not going to help.
  • If you still feel compelled to call me stupid, the least you can do is get your grammar, capitalization, punctuation and spelling correct.

Ok, rant over. Thanks for listening!

Wednesday, June 13, 2012

Cross-post: Windows Azure and Java: Working with Queues

Persistent Systems just published a blog post about working with the Windows Azure SDK for Java to access Windows Azure Queues. The basic operations (inserting, retrieving and deleting messages) are covered, as well as dealing with poison messages (messages that remain in the queue after repeated, failed attempts to process).

The Java SDK queue classes sit atop the Windows Azure Storage REST API.

Friday, June 8, 2012

Cross-post: Windows Azure and Java: Working with Table Storage

Persistent Systems just published a blog post about working with the Windows Azure SDK for Java to access Windows Azure Tables. The article covers table creation/deletion, entity insert/query/deletion and entity group transactions.

As with the .NET SDK, the Java SDK Table Storage classes sit atop the Windows Azure Storage REST API.

Monday, June 4, 2012

Speaking at CMAP, June 5

Tuesday, June 5, I’ll be giving a fun talk at CMAP (Central Maryland Association of .NET Professionals): “Windows Azure: All that and a bag of chips!”

Windows Azure is steadily improving, both in features and in developer tooling. In this talk, we'll look at how to get up and running quickly with your first Windows Azure app, whether it's .NET or Java, SQL or NoSQL. We'll dispel some myths and smooth away the startup friction. Even if you already know the basics, I’ll be sure to dig up some useful nuggets for you.

This is a perfect session to attend, prior to the big “Meet Windows Azure” event on June 7, where lots of super-cool new stuff will be talked about!

CMAP details and directions are here. The excitement begins at 6:30pm!