Shared posts

06 May 04:45

Changes in the Microsoft MVP Program - MVPs for Open Source Contributions

by Scott Hanselman

Image by "tetue" and used under Creative Commons http://flic.kr/p/eYrTT4Before I went to work for Microsoft a few years back, I was given the "MVP" award for ASP.NET. I didn't go out and seek this award, it just happened. The MVP awards are backward-looking in that they look at the work that you've done in the previous year, not what you're going to do.

The idea behind these awards has been to give some recognition to folks that have volunteered their time to write books, create documentation, run user groups, and generally spread the word as advocates for the development platform.

However, it's long been my opinion that these awards are too narrow in scope. It's great that you're blogging or speaking on a developer topic, but what if you don't speak at all and instead put that energy into a great .NET open source framework? Fortunately others within the big house share my thinking and we're changing the MVP program to actively recognize open source.

Here's a quote directly from an internal email/memo. It's got a little corporate-speak, but it's rather frank and to the point. What you need to know is that this email was sent to all of the Microsoft subsidiaries (the "field") to make sure they are on track and get what we're trying to do here. I've bolded and trimmed it a little but you get the idea:

Currently there is a class of developer influencers whose contributions are not yet fully recognized by the Microsoft MVP Program. These influencers run, manage, or commit to large and highly influential open source projects. However since they do not participate in what is considered as more traditional ways such as speech engagement, books, online forums or user groups, they are not usually considered as potential MVPs. Often these developers have technical community followings but may not necessarily be "on message.". As a result, there is a belief amongst some influencers that Microsoft does not support Open Source software.

As we move forward, we will change the MVP guidelines to recognize open source activities with the same weight as other community activities. We need to send a clear message that a healthy .NET ecosystem, including open source impact, is good for all stakeholders. It is time for the MVP Award to recognize open source activities to promote further growth and support of the technical communities.

When I started pushing this idea, I thought we'd make a new "Open Source MVP." I pushed that for a while but realized quickly that it would create an island of OSS MVPs, and no one group would claim them. Better to push OSS throughout the whole program so everyone shares a home. Instead, we changed the idea and designed that Open Source contributions should be as valuable (or more so) as any other contribution, and you could become an MVP solely based on open source and nothing else.

If you make the next great "Foo Framework for ASP.NET" then you'd be an ASP.NET MVP and get the benefits of any other MVP, including an MSDN subscription that you could use to support your project. There's no expectation to speak or blog or do anything other than be awesome and keep working on your project.

Here it is in corporate speak (from that memo):

Today we already include open source activities in our review process as part of a MVP’s contributions. The shift now is that a candidate can be reviewed and awarded solely on contributions in open source projects, if the contributions are significant, without having other activities such as speeches, online forum supports, books, blogs, etc.

We'll be looking at open source for the next MVP "cycle." We can't bring in every little project, as much as I'd like to, but if you've got a successful and growing project, or if you know someone who is doing amazing stuff in open source, make sure that your local Microsoft community person nominates them!

* Image by "tetue" and used under Creative Commons

Related Links


Sponsor: Big thanks to Red Gate for sponsoring the blog feed this week. Check out the Free Starter Edition of their release management tool! Deploy your SQL Server databases, .NET apps and services in a single, repeatable process with Red Gate’s Deployment Manager. Get started now with the free Starter Edition.



© 2014 Scott Hanselman. All rights reserved.
     
22 Apr 01:20

Coffee Beats Wireless

by Dan Adams-Jacobson

Some people just can't function without their coffee. Jane had the rare distinction, in JD's opinion, of being a person who functioned pretty poorly even with her coffee—and she always seemed to have a mug in hand. Today was no different: she had her signature travel mug halfway to her mouth when she caught sight of JD approaching her cube with a replacement keyboard. Her eyes narrowed when she caught site of the cord wrapped haphazardly around the big black rectangle.

"I am not using a wired keyboard!"

JD closed his eyes and sighed. This had seemed like such a nice little database-analyst position when he'd landed it in his third year. An eternal optimist, JD wasn't concerned about whether he could handle the workload in addition to his schoolwork. And he even managed to stay bright-eyed when he learned that, with only four IT staff for a regional office managing several states, he would be doing as much reformatting of hard drives as rebuilding of indexes. But the sound of Jane slurping her java as he attempting to troubleshoot her never-ending string of helpdesk tickets regarding her wireless keyboard was starting to wear a small, steady crack in his foundation.

Back when "wireless" was nowhere near as ubiquitous a descriptor as it is today, keyboards without cords were an expensive novelty. As a top sales representative and careful observer of desktop feng shui, Jane managed to finagle one from some obscure overseas supplier, becoming the small office's number-one creator of helpdesk tickets within days of the purchase. If JD could have replicated her constant dropped-key issues even once, he could have made the argument that they couldn't afford to support her specialized hardware. But since the problem had always evaporated by the time he arrived at Jane's cubicle, JD would just close the ticket and try to focus on database analysis. All would be well for one to three days, when a new ticket would appear in the queue with a subject like My keybord stops typin somtimes and JD would trudge across the office to let his fingers dance a futile dance.

"I thought if I took your keyboard back to my desk for a while, I could finally get to the bottom of this," JD said, offering the replacement with trembling hands. He'd brought fresh pairs of batteries for both the keyboard and its receiver as a backup, but they never made the "issues" go away. This was, JD reckoned, his last hope. If he couldn't figure out what was wrong with Jane's keyboard, maybe he could just let her get used to the wired one. Maybe, in time, she would forget about her inexplicably unreliable toy, and JD could finally finish the schema redesign he'd been working on since he'd started the job.

Jane slammed her mug on the desk, its contents sloshing over the rim, and whirled on JD. "I can't use a wired keyboard! I won't!"

That settled that, then. Jane continued to rant, and JD was wondering if he could hit himself with the rejected replacement hard enough to earn a reprieve when his eyes lit on the mug. The big metal mug, sitting on the desk directly between the keyboard and, shoved as far off to the side as it could possibly be while still in range, its boxy receiver. The flaky, short-range radio receiver... The big metal cylinder... Jane always seemed to be drinking coffee...

The wired keyboard dropped from JD's fingers, forgotten, as he stepped towards the desk. Jane paused in her rant, unsure of his intentions. He gestured to her beloved keyboard, exhorting her to type. Sure enough, the cursor left a senseless trail of missed letters in its wake. He plucked the mug off the desk and Jane flinched, but he begged her to continue typing. The next few sentences were flawless. He placed the mug back on the desk, and, behold, keypresses began disappearing once more. A smile grew on JD's face. After simply moving the keyboard receiver next to Jane's monitor, he returned to his desk, optimistic that he had solved her issues once and for all. She hadn't even thanked him, but he didn't care.

The next morning, JD was refactoring the database schema for what he hoped would be the last time when his phone rang. It was Jane. "I thought you said you fixed it!"

"I... I thought I did."

"Well, it's messin' up again!"

JD couldn't help noting she was even dropping letters from her speech now. He didn't bother to bring the keyboard this time. Jane was at her desk, sipping from The Great Attenuator, her keyboard receiver returned to its inauspicious corner.

"Jane," JD asked, trying to keep the exasperation out of his voice, "may I ask why you moved your receiver?"

She dropped the mug into its hallowed place with a thump. "It's too ugly to be next to the monitor! I want it over there, where I don't have to see it."

"But the reception's a lot better if—"

"I won't look at the damn thing all day! I can't!"

"Okay. Then I don't suppose you'd consider keeping your coffee mug on the other side of your desk?"

"THIS IS WHERE IT GOES! Why can't you fix my keyboard?!"

JD smiled, and said he'd have to get back to her. On the walk back to his desk he felt optimism returning. He was sure that, after he resigned from this job, he could find a new major that didn't involve keyboards.

[Advertisement] BuildMaster 4.0 is here! Check out the brand-new UI and see how you can deploy directly from TeamCity (and other CI) to your own servers, the cloud, and more.
11 Mar 20:45

The Out of Office Outage

by Remy Porter

The ICSP compliance application was a dull piece of software. Instead of managing Active Directory with one of the many off-the-shelf packages, this was built in-house, and helped the sysadmins manage user accounts, permissions and access. Despite the fact that this application had no right to exist, it did, and it was tied into so many IT business processes that ICSP was marked a “critical” application.

Kelly spent too much time with her hands deep in the entrails of this ugly creature. Since she “owned” it, she was the recipient of a panicked email: “ICSP is down! What did you do?” She had changed a few things is code, recently, but nothing had been released to test, let alone production. Quickly, she skimmed the email chain.

At the bottom was an exchange between end users; Kelly didn’t recognize their names. That bubbled up to the Service Desk, which saw ICSP and escalated it to IT Security Services, the team which used the application. There was a pile of confusion there, as the team had no idea what the issue was, so they escalated it up to their manager, than up again, until it finally reached Mr. Dorn, the Chief Security Officer. Finally, that raised the issue up high enough that it could drop back down the software development side of the org-chart- it rolled down through her management chain and landed on her desk, a big smelly pile of nothing she wanted to deal with.

At no point in the email chain did anyone discuss error messages, or symptoms beyond, “I saw a message that said ICSP is down.” As Kelly turned to check what was actually happening in production, her boss appeared at her cube. “Hey, did you see about ICSP?”

“Yes, I’m…”

“I’ll need you to jump right on that.”

“Yes, I’m…”

“It’s super high-visibility, and we need to keep Mr. Dorn happy.”

“Yes, I’m…”

“Try reaching out to someone from ITSS to see if they can help.”

“Well, I don’t even know what’s wrong…”

Her boss continued to blather, and Kelly did her best to tune him out. It didn’t take long to confirm that ICSP was up and running happily. She emailed the original reporting user, asking for a screenshot of the message. They replied with an Excel spreadsheet attachment, which contained a pasted “print screen” of their entire desktop.

The outage message wasn’t from ICSP, nor was it on anything to do with IT Security Services- it was on the Global Financial Services SharePoint page. They were responsible for finance and things like Sarbanes-Oxley compliance, but they weren’t users of the ICSP application. Even so, in bright red letters, they warned the users:

Do NOT use ICSP. The site is currently undergoing maintenance. Contact Janine with any questions.

Kelly emailed Janine, but got an “out of office” message in reply. Beside the error message was a link labeled “ICSP Application”. Kelly clicked it, expecting to see the hideous, retina-scarring awfulness of her ICSP app. Instead, she saw a slightly less hideous interface to a completely different application. The only thing it had in common with her ICSP was the title. “ICSP” stood at the top of the screen in the best formatting an unstyled <H1> had to offer. The URL, however, called it “soxonline”. Also, the application was quite clearly up.

Kelly knew nothing about this new ICSP application, aside from its name, and it certainly wasn’t her responsibility, but the still-growing email chain of panicked and confused management had started reciting the politician’s syllogism. Knowing it was probably a mistake, Kelly took the initiative and poked around in the code for the other ICSP application.

This other application was a document management tool, so that various groups could fill out an “ICSP document” to meet SOX compliance. Her ICSP application was actually so named because it was IT Security’s attempt to meet the requirements they set out in their ICSP document. The document application was globally accessible, which let Kelly confirm that this other application was still up, too. She explained the confusion in an email, saying, “I’m not sure why the error message is there, but the application is working.”

“Well,” Mr. Dorn replied, “that doesn’t solve anything. Why is that error message there? I’m CCing this to the Performance and Resolution team, so they can take a look.”

The email chain exploded again, as an entirely new IT team swarmed to the problem. P&R spun up new instances of their monitoring tools on both ICSP servers. Their managers, wanting to make sure that everyone knew they were taking this issue seriously, started blasting out half-hourly updates, and then started assigning action items to Operations. Operations kicked it over to the SharePoint team, where the issue sat and died; there wasn’t a SharePoint team, just a few operations folks that were tagged as knowing something about SharePoint.

Kelly’s inbox continued to explode, so she reached over to kill her email client. Her fingers were hovering over ALT+F4 when one fresh email appeared, from Janine- the user mentioned in the error message.

I’m out of the office for the next six weeks, and I didn’t want anyone to use ICSP when I was gone. The easiest way to do that was to update the SharePoint site and tell people the application was undergoing maintenance.
Thanks,
Janine

Kelly forwarded that to the panic-chain of emails, and closed her mail client for the day.
Image from “Star Trek: The Next Generation”

[Advertisement] BuildMaster 4.1 has arrived! Check out the new Script Repository feature and see how you can deploy builds from TFS (and other CI) to your own servers, the cloud, and more.
11 Mar 19:38

Empowering the next generation of developers with DreamSpark

by Susan Ibach

DreamSpark-2_bLDreamSpark is a program that provides students and educators with access to free software and store accounts so they can learn and explore the world of programming.

In this blog I’ll talk about the DreamSpark program and how it helps us enable the next generation of developers. I will cover

  • Why does it matter?
  • How does DreamSpark help?
  • Who can get DreamSpark?
  • If I know a student, teacher, instructor, or professor interested in DreamSpark what should I do?
  • What is DreamSpark Premium?
  • Is Azure included in DreamSpark?

Why does it matter?

The job market is tough for today’s youth. Having the right skills to find a good job is more important than ever. Technical fields such as Computer Science and Engineering continue to be some of the best opportunities for students to find well paid employment when they graduate. That doesn’t necessarily mean every student who graduates from Computer Science is guaranteed a high paying job! Students still have to find ways to stand out from the pack, to strengthen their skills for the real world.

How does DreamSpark help?


DreamSpark gives students access to tools like Visual Studio and SQL Server at no charge. With DreamSpark, students can learn to work with and build solutions with professional tools, the same tools they may well encounter in the workforce.  DreamSpark also gives students free accounts to the Windows marketplace so they can publish Windows Store or Windows Phone apps at no charge. Putting a URL to a published app on your resume is a great way to stand out in a market where many companies are still struggling to determine their own mobile strategies.

SQLServerLogo VisualStudioLogo

Who can get DreamSpark?

Any student in Canada can get access to DreamSpark. Usually a school will subscribe to DreamSpark to provide their students with access. Although this program is more popular in universities and colleges, it is not limited to higher education. A high school, middle school, or even an elementary school (though it is a little unusual for a 10 year old to be coding C#, it’s not unheard of) can get access to DreamSpark as well. There are actually agreements in place with a number of school boards in Canada and most universities and colleges have subscriptions as well.

If I know a student, teacher, instructor, or professor who would be interested in DreamSpark what should I do?

The first thing to do would be to have them check out the website www.dreamspark.com where you can

What is DreamSpark Premium?

I’m glad you asked, if you visit the website you may hear about DreamSpark Premium. This is (as the name suggests) a premium version of DreamSpark. Basically it’s a version that gives you access to even more software (such as Windows 8, Microsoft Project, Visio, SharePoint Server).

Windows_logo

BUT! Not everyone can get DreamSpark Premium. DreamSpark premium is reserved for what we call STEMD programs. The idea behind this is pretty straightforward, if a university or college program is teaching programming courses we give them access to more software so that what they teach isn’t limited by the software license costs. Typically Computer Science, Software Engineering, Game Design, Web design programs are the programs that are entitled to DreamSpark Premium. Generally speaking high schools are not eligible for DreamSpark Premium, unless they are specifically a technical high school that offers a specific technical diploma. The fact the high school teaches two or three programming courses will not be sufficient to qualify for DreamSpark Premium, but they can still get tools like Visual Studio through DreamSpark Standard.

Is Azure included in DreamSpark?

Again, I am glad you asked. The answer is no. BUT remember one of the reasons we have this offering is so that courses can be taught using our technologies. Although DreamSpark does not include Azure benefits, professors and instructors who want students to try out any Azure features in their classes can request 6 month credit-card free Azure passes through the Azure Education Grants. We have a number of colleges and universities in Canada using this benefit already!

DreamSpark is a great benefit, but it seems like every year I meet a student or teacher who doesn’t know about the program, so please help us spread the word and let’s enable the next generation of developers to do great things with technology!

    11 Mar 19:38

    What is Windows Azure?

    by Alexandre Brisebois (Canadian MVP)

    I know, I know. You are probably thinking that this question has been answered so many time. It has, yet it remains one of the toughest questions I have to answer on a regular basis.

    The reason behind this level of difficulty boils down to trying to pack all that is Windows Azure into a brief meaningful statement. When I try to answer this question, I get lost in its vast awesomeness! Unfortunately, in order to help me target my answers, I usually answer this question by a question like “What does your system do?” or “Can tell me about what got you interested in Windows Azure?”

    Obviously, these aren’t the answers you are looking for. But it’s hard for me to shape an appropriate answer without knowing the angle you’re coming from. Are you a curious developer or a business owner looking for an opportunity?

    Not too long ago, I mentored at the Montreal Startup Weekend and I was fascinated by the diversity of ideas that were buzzing around. Each team had different skill sets and many were interested in learning more about Windows Azure. It got me thinking about how I could describe Windows Azure in a generic way, which would enable further discussions targeted at the team’s goals. As I previously mentioned, Windows Azure is an enabler that’s composed of a vast collection of services. Conversations easily get sidetracked because of all the options and we lose lots of precious time exploring them. Windows Azure Application Building Blocks

    So I came up with this answer, “Windows Azure is an ecosystem of services that can be leveraged to build reliable solutions. What are you working on?” It’s generic enough to allow me to assess what angle you’re coming from and we can concentrate our conversation around your project.

    From a business stand point, Windows Azure can potentially save lots of headaches and resources. It’s a platform that allows us to host software and focus our energy on the core business. For example, by using the built-in auto scaling features of Windows Azure Web Sites, the Web Site can handle traffic spikes generated by sudden interest in the advertised services. Windows Azure will automatically scale the Web Site to handle the unexpected load, then it will scale back to reduce the overall costs of operation. This ability is crucial for businesses because it means that Web Sites remain available for potential customers and we only pay for the resources that were consumed during the traffic spike. Traditionally, we have to overprovision all year round so that we can handle these scenarios. Windows Azure allows us to pay for the minimum resources required for our software to be available and responsive at all times.

    Offload IT costs and responsibilities to Windows Azure and build value for your customers.

    From a developer stand point, Windows Azure is a candy store! It allows us to create databases at the click of a button, it scales storage to our needs and provides us with tooling that supports us throughout our development efforts. In the interest of time, I would love to point out the official Windows Azure documentation. It does an amazing job at surfacing services and options that are available to developers. Keep in mind that new services surface regularly and being familiar with the services allows us to offload a lot of work and support to the Windows Azure platform. For example, we can schedule daily backups for our Windows Azure SQL Databases. Setting this up saves time that we can put towards developing that new feature that we’ve been dying to get our hands on.

    Stop getting called in at all hours of the night because a server didn’t reboot properly. Let Windows Azure worry about the infrastructure while we concentrate on delivering value.

    Windows Azure is an ecosystem of services & possibilities

    IaaS PaaS SaaS

    How’s That

    So what do you think? Does the above explain Windows Azure simply and succinctly? If it was you who was asking me the question, and I answered you as such, would you feel more confident in what Windows Azure can do for you? Let’s converse in the Canadian Developer Connection group on LinkedIn and flush it out further.

    11 Mar 19:37

    Adding SQL Server Express 2012 Advanced Services to Existing Development Environment

    by MVP Award Program

    Editor’s note: The following post was written by Visual C# MVP Ming Man Chan

    Adding SQL Server Express 2012 Advanced Services to Existing Development Environment

    This article consists of three subsections:

    • Get the SQL Express 2012 Advanced Services installation file
    • Install SQL Express 2012 Advanced Services
    • Configure SQL Express 2012 Advanced Services

    To setup a good complicated development environment in a laptop or a desktop is not an easy task for many developers.

    Let’s assume that I have a laptop with Windows 8.1 and Microsoft Office 2013 installed. I believe this is the configuration most of the end users have. Now, for a .NET developer using C# or VB.NET they will very likely do the following if their application requires connection to Microsoft SQL database.

    1. Install Visual Studio 2013.

    2. Download SQL Express 2012 from the Internet.

    Over a period of time you might want to use reporting services to do the reports for your application. This is the time you need to look SQL Server Express 2012 Reporting Services.

    Get the SQL Express 2012 Advanced Services installation file

    You will not be able find the download easily if you start search SQL Server Express 2012 Reporting Services or SQL Server Express 2012 Reporting Server in Bing other search engine. The reason is in SQL Server Express Edition they do not call it SQL Server Express 2012 Reporting Services but rather the Reporting Services is in SQL Server Express 2012 Advanced Services.

    Please do not get the wrong perception that you can use SQL Server Analysis Service (SSAS) and SQL Server Integration Service (SSIS) with SQL Server Express 2012 Advanced Services. SQL Server Express 2012 Advanced Services comes with SQL Server Reporting Server only but allows you to develop SSAS and SSIS solution if you have a remote server that is running SQL Server Analysis Service and SQL Server Integration Service. For more information:

    To download SQL Server Express Advanced Services go to http://www.microsoft.com/en-my/download/details.aspx?id=35579

    More of the PCs or Servers today should be 64 bit. Download the file SQLEXPRADV_x64_ENU.exe if your Operating System is 64 bit or SQLEXPRADV_x32_ENU.exe if your Operating System is 32 bit. Please bear in mind that 64 bit machine can still install 32 bit Operating System.

     

    For details editions comparison see: http://msdn.microsoft.com/en-us/library/cc645993.aspx

     

    Install SQL Express 2012 Advanced Services

    1. Double click on SQLEXPRADV_x64_ENU.exe.

    2. Click New SQL Server stand-alone installation or add features to an existing installation.

     

    If you physical computer or virtual computer without connecting to the Internet then you will get the error SQL Server Setup could not search for updates through the Windows Update service.

    3. You can ignore the error and Click Next >.

    From my experience, if you are installing SQL Server Engine and you ignore the update error then you will crash the SQL Server installation. Somehow this is fine with Express 2012 Advanced Services.

     

     

    4. Click Select All to select all the features.

    5. Click Next >.

     

     

    6. Select Add features to an existing instance of SQL Server 2012.

    7. Click Next >.

     

    5. Set the Startup Type Automatic if you are not familiar with how to start a Windows Services manually.

    As mentioned above, there is no SSAS and SSIS that you can install.

    6. Click Next >.

     

    7. You can only see an option available, Install only. Click Next >.

     

     

    The Express 2012 Advanced Services is now fully installed.

     

    Configure SQL Express 2012 Advanced Services

    To configure SQL Server Reporting Services run Reporting Services Configuration Manager.

    1. When Reporting Services Configuration Manager started then connect to your SSRS. Click Connect.

     

     

    You will see the configuration page. Configure the SSRS from the top to bottom is advisable.

    2. Click on Service Account.

     

     

    You can leave it with the default account ReportServer$EXPRESS.

    3. Click on Web Service URL.

     

    4. To use the Web Service URL. Click Apply.

     

     

     

     

     

     

     

     

    The Virtual Directory for Web Service will now be created.

    5. Click on Database.

     

    6. There is no Create Database. Click Change Database.

     

     

    7. Select Create a new report server database.

    8. Click Next.

     

     

    9. You can change the database server or keep the default database server. Click Next.

     

     

     

    10. You can keep the default database name ReportServer or change to the database name that you want to use. Click Next.

     

     

     

    11. Use the default Authentication Type. Click Next.

     

     

    12. Once you verify all the setting then click Next.

     

     

     

    You will now see the Database configuration portion done.

    13. Click Finish.

     

    To configure Report Manager URL.

    14. Click on Report Manager URL.

    15. Click Apply.

     

    Up to here your report server will be working fine. The rest of the configuration is optional.

     

     

     

     

    About the author

    Ming Man is Microsoft MVP since year 2006. He is a software development manager for a multinational company. With 25 years of experience in the IT field, he has developed system using Clipper, COBOL, VB5, VB6, VB.NET, Java and C #. He has been using Visual Studio (.NET) since the Beta back in year 2000.  He and the team have developed many projects using .NET platform such as SCM, and HR based applications. He is familiar with the N-Tier design of business application and is also an expert with database experience in MS SQL, Oracle and AS 400.  Additionally you can read Ming’s Channingham’s blog

    About MVP Monday

    The MVP Monday Series is created by Melissa Travers. In this series we work to provide readers with a guest post from an MVP every Monday. Melissa is a Community Program Manager, formerly known as MVP Lead, for Messaging and Collaboration (Exchange, Lync, Office 365 and SharePoint) and Microsoft Dynamics in the US. She began her career at Microsoft as an Exchange Support Engineer and has been working with the technical community in some capacity for almost a decade. In her spare time she enjoys going to the gym, shopping for handbags, watching period and fantasy dramas, and spending time with her children and miniature Dachshund. Melissa lives in North Carolina and works out of the Microsoft Charlotte office.

    11 Mar 19:37

    Xbox MVPs

    by MVP Award Program

    Xbox MVPs from around the globe met with product team members on the Microsoft Campus last week to discuss all things Xbox.  We caught up with Xbox MVPs Zach Wigal, Kelli Dunlap and Dario Zgrablic.

    (Please visit the site to view this video)

    11 Mar 19:21

    When is it stealing?

    by Scott Hanselman

    Image by Duncan Hill, used under Creative Commons from http://flic.kr/p/7YkGurAnything you put on the internet is gonna get stolen. It's preferable if it gets shared or linked to but often it gets copied and copied again.

    RSS is magical but it makes it even easier to programmatically syndicate (copy) content. Search around and you'll likely find complete copies of your entire blog mirrored in other countries'.

    There's so many websites (now "media empires") that have taken aggregation to the extreme, giving it the more palatable name "content curation." Now, to be clear, I respect the work involved in curation. Sites like http://dumbesttweets.com require work and attribute creators. But taking a post, copying unique content, even paraphrasing, and then including a small link just isn't kind. Forget about the legality of it, remembering IANAL, but it's just poor netiquette to not to ask permission before using non-Creative Commons content.

    Every week or two I get an email from some large aggregation site that says "We'd love to reprint your post...it'll get you more readers." The few times I've done this they've gotten 50,000 views and I've gotten 300 referral views. Likely because the "originally appeared on Hanselman.com" link a the bottom is in 4 point font.

    Sites like ViralNova and BuzzFeed are effectively reblogging and embedding machines powered by linkbait copyrighters. "What happened next will shock you."

    Even if you make a piece of software, someone may just wrap/embed your installer with their own installer and build a whole business around it.

    Narrating your blog posts

    Today It was pointed out to me that a nearly 7 year old (and not very good) blog post of mine had be narrated - effectively turned into a podcast - by a startup called Umano. BTW, it's more than a little ironic that my post wasn't even mine. It's an excerpt - published with permission - of my friend Patrick Cauldwell's larger post.

    I've used the Umano developer tools and embedded the narrated version here.

    First, let me just say that this is essentially a great idea. It's the opposite of transcribing a podcast. It's creating podcasts from existing content using professional narrators, not just text to speech. This could be great for not just the visually impaired but also for anyone who wants to catch up on blogs while commuting.

    UPDATE! Umano has narrated THIS blog post! Have a listen! http://umano.me/c/AExmo

    Where did the Content come from?

    Here's a screenshot of the post on Umano's site. You can see my name "Hanselman" is there, but it's not a link. The headline is a link, but you'd never know until you hovered over it. There's really no easy way to tell where, when, and how this content came about. I think that Umano could easily redesign this site to put the content owner front and center.

    image

    Podcasts and audio snippets from blog posts? Great idea, except I wrote the script for this podcast. If I wrote the script and they did the narration, then this must be a partnership, right?

    However, if we look at Umano's own Terms of Use:

    SoThree claims no ownership or control over any of the content you post to the Service ("Your User Content"). You or a third party licensor, as appropriate, retain all copyright, patent, and trademark rights to any of the content you post on or through the Service. You are responsible for protecting those rights.

    Ok, they don't own the content.

    By posting Your User Content on or through the Service, you grant SoThree a universal, non-exclusive, royalty-free license to reproduce, adapt, distribute and publish such content through the Service and for the purpose of promoting SoThree and its services.

    I'm pretty sure I haven't granted them a universal license to my content as I didn't submit this link. On their home page they say that "you tell us what articles should be voiced." The community submits links, sometimes to content they are a fan of, but don't own, then Umano narrates it.

    You may not aggregate, copy, or duplicate any SoThree Content.

    Wait, but I can't copy their content? Their content that was generated from my content.

    Does this mean I can get a book from the library and narrate it? Turn it into a podcast?

    @umanoapp @shanselman I'm fairly sure audio-book creators get permission from the original authors.

    — Rory Becker (@RoryBecker) February 26, 2014

    I am told by Umano's twitter account that I'm the first person to object to their content being copied without permission.

    @shanselman the feedback we have been getting from bloggers is they appreciate the distribution + value add. You are actually the first :)

    — Umano (@umanoapp) February 26, 2014

    I certainly don't think Umano is are malicious. Umano is perhaps naive, if they think can narrate blogs without someone speaking up. That said, their narrators are top notch and their site and app are both attractive and usable. Frankly, I'd be happy if they narrated my whole blog (or at least the good stuff and not the lousy decade-old stuff) and made a podcast feed of my blog like their competitor Castify. But I'd like Umano to do it with me.

    Sites like this should ask creators first and their business model should be based on partnerships with content creators, not assumptions. Stitcher has the right idea. I've submitted my content to them and entered into a partnership. They didn't just suck my podcasts in and make a radio station.

    Even a single email from Umano like "hey, we would love to narrate your blog, click here and sign this little form" would have be sufficient. 

    Narrate first, ask questions later? Michael Dunbar nails it with this tweet:

    @shanselman @umanoapp call me typically English, but the whole thing could have been avoided with manners.

    — Michael Dunbar (@mikkeldunby) February 26, 2014

    This is an easily solved problem, and it's not just a problem with Umano. This applies to all businesses and startups that rely on content created by others. I think it's important to honor attribution. This isn't about money or even copyright, although those things do apply. Rather, this is about netiquette. When you're building a business model, build it around partnerships and transparency, not assumptions around fair use and copyright. Aask first.

    What are your thoughts, Dear Reader?

    (If they narrate this one, I'll update the post and complete the circle. ;) )

    Related Links



    © 2014 Scott Hanselman. All rights reserved.
         
    11 Mar 19:17

    IT Infrastructure is just as sexy as applications

    by Keith Townsend
    EMC logo

    sonic_bouquetI’ve watched more than my fair share of home renovation television shows. I can’t remember one episode in which the host exclaims, “Look at the details of the threads of this ionized pipe!” But I have seen episodes where a project was completely derailed because of substandard plumbing. Infrastructure is the plumbing of information technology. I’ve heard it said that infrastructure is tactical versus strategic. I might have even been that person.

    There’s truth in that statement. I’ve often commented that the application and app developer are kings of enterprise IT. After all, applications are the user’s interface into the world of information. Applications are basically the kitchen and bathrooms of technology.

    However, just as really great, high quality homes are built with great plumping, really great applications are built on exceptional infrastructure. You need look no further than the poster children of Web 2.0, Facebook and Google. Both companies have made major investments in infrastructure. It’s more than plumbing for these organizations. It can even be argued that they are strategic in nature. We wouldn’t have the virtually unlimited photo sharing services of either provider if not for distributed storage on generic hardware. The cost of traditional SAN storage would be prohibitive.

    The lesson that traditional enterprises can learn from these organizations is that infrastructure can be strategic and non-traditional solutions are viable options. There’s plenty of excitement around infrastructure technologies these days. Software based SAN controllers such as EMC’s ScaleIO and VMware’s vSAN make for exciting times in the evolution of storage technology. Software defined-networking is also begging for a new look at the most basic of enterprise plumbing.

    So, let’s hear it for the infrastructure engineers, the plumbers of the IT world. You guys are bringing sexy back into plumbing!


    11 Mar 19:14

    VMware Certification Expiration

    by Adam Eckerle
    EMC logo

    VMW-LGO-CERTIFIED-PRO-4-5-K_resizedOn March 10th, 2014 VMware Certification (@VMwareEducation) announces some major changes to the certification program. Before I share my thoughts, here is what’s changing:

    • VCP-level certifications will expire 2 years from the data the certification was achieved
    • There is no course requirement in order to renew your VCP certification
    • Any VCP-level or higher exam will renew your VCP

    Currently, VCP certification holders are not required to recertify their skills — this is very uncommon in the IT industry, where professionals are routinely expected to periodically update and validate their technical capabilities to distinguish themselves in the market. To ensure that all VCP holders maintain their proficiency, VMware is instituting a global recertification policy. Although VMware has multiple levels of certifications, at this time, they are implementing this policy change for VCP only. All areas of proficiency, including Datacenter Virtualization, Cloud, and End User Computing, will adhere to this new policy.

    So, what this means is that VMware has made some, in my opinion, positive changes.  Yes, you need to re-cert, but I think that is on par with other industry certifications and adds value to the program.  Yes, your VCP 1/2/3/4 could drop off if you haven’t re-certed with anything newer so I understand some of you will be frustrated by this. But looking at the bigger picture I feel this is a positive change.

    I also think it is important to point out that I think it encourages individuals to not only keep their skills up to date but also to branch out. If your VCP-DCV is going to expire why not take a look at sitting the VCP-DT or Cloud, or IaaS exams?  If you don’t use the Horizon products or vCloud Suite as part of your job that can be difficult.  But if there is any community that has published the necessary resources for someone to pick up and study a new technology it is the virtualization community (vCommunity). Or, if you really don’t want to pick up on something new then go for a VCAP exam which also grants your recertification.

    Again, I like this change. I’m not threatened that the world will not know I’m a VCP4.  When we lost our VCAP numbers I really wasn’t saddened by that either.  If I were a VCDX and lost my number then I might be upset but that’s a whole different ballgame.  I’m not saying we all need to be happy about this but I think we should be. I feel it maintains the value of the certification program as more and more people are becoming VMware-certified.

    To learn more and to access the fairly comprehensive FAQ head to http://www.vmware.com/go/recertification

    UPDATE: Also take a look at Christian Mohn’s (@h0bbel) post over at vNinja.net, especially the comments. There are questions but I don’t agree with some of the outrage people have with this change.  Don’t forget, if you VCP-DCV is going to expire you can renew it with a VCP-DT or VCP-IaaS exam.

    11 Mar 18:59

    Open Discussion: Feature Comparison Across Server-side Caching Solutions

    by mjb

    Vaughn Stewart inspired me with his post on the all-flash array market. He outlined different solutions with a technical eye and discussed products out in the open.

    To cut to the punchline, You can see the live spreadsheet here [UPDATED March 11th].

    server-side-caching-side-by-side-03-11-14

    We’re at a time of excitement for server-side caching and I see the need within the community needs a similar feature-centric comparison in this market as well.

    So let’s start with the core tenant of server-side caching: each solution decouples storage capacity from storage performance by offload requests from the storage tier.

    Storage is odd in that way. It’s both our capacity for applications — how much stuff we can store — and, often, the performance bottleneck for those same applications.

    odd-couple-capacity-performance-server-side-caching

    Server-side caching is the simple idea of caching content closer to the application. It’s byproduct is two-fold:

    1. Relieve unnecessary requests sent to the overtaxed storage system, providing headroom and longevity

    2. Accelerate applications by responding to requests more quickly (less latency) and more consistently (with less variability in latencies over time)

    Said another way, I see two key elements to every SSC value proposition.

    Headroom: Focused on forecasting how much workload you can afford to add to an existing system.

    Acceleration: Focused on the benefit server-side caching has on a given workload or set of workloads.

    odd-couple-capacity-performance-server-side-caching-decoupled

    So what are your options as a consumer?

    Conversations like these always run the risk talking marketing positions instead of facts. To avoid this outcome, I’ve had the good fortune of connecting with great minds in our industry who have kept me focused. Thanks are due to Jon Kohler, Josh CoenTim Antonowicz, and Chris Wahl.

    Here is what I found through public resources and connecting with peers. Note that question marks are boxes I could not find answer to online.

    You can see the live spreadsheet, which I’ll be updating along with this post, here.

    There are some interesting observations to make:

    1. Most solutions require and then utilize flash hardware to build a cache
    2. There is not a great of information made public about how SSC solutions install or uninstall
    3. Only Infinio and PernixData offer deduplicated cache
    4. Only Infinio and Proximal Data offer globally distributed cache

    But back to Vaughn for a moment. He begins his post with:

    “The performance capabilities and datacenter/environmental benefits of All-Flash Arrays are widely understood.”

    Now here is where our efforts greatly differ.

    There’s still a significant portion of those who could benefit from server-side caching that are unfamiliar with the offering. Amongst these early observers, even fewer are familiar with vendor options.

    Is it like server SAN? Does it compete with converged infrastructure? It’s a “no” in both cases, but I’m going to focus on getting into the granularity of these questions over the coming posts.

    If there is one fact I want everyone to know by the end of this post, it’s that server-side caching solutions complement each other. Each of these products offer longevity of storage systems investment and even improvement to other SSC solutions.

    tier-all-the-things

    There is a great deal more efficiency to gain by offloading I/O further up the stack. My brilliant colleague, Peter Smith, often notes how there are tiers of disks in arrays and L1-L3 caches on CPUs, yet nothing similar across layers in the data center.

    The ultimate goal is to move as much cache as possible as close to the application as possible without breaking the bank.

    That’s where each offering may differ — cost, scalability, compatibility, ease of use.

    With that, I hope this post starts a dialogue between those whom can benefit from SSC and those whom offer solutions.

    If you see any inaccurate or missing details here, please comment below!

    24 Feb 00:55

    My IT predictions for 2014

    by Jonas Rosland
    EMC logo

    Disclaimer: These are my predictions, not those of my employer. And yeah, I might be a bit late to the 2014 predictions, still wanted to share though.

    During 2013, a lot changed on the playing field of IT. Software-Defined Everything started popping up everywhere, and Software-Defined Networking was all of a sudden in two camps with VMware and Cisco on each side. Seeing as they are great partners to each other I believe they will support each others strategy in the long run and continue to develop their own infrastructure (software/hardware) and partner flora. Choice and open competition usually means a better product for the end-user, and I think this is the case here as well.

    So in 2014 we’ll see these strategies take more form than before, but I don’t think it’ll stop there. I also saw 2013 as the year-before-the-boom of automation. Everyone talks about it, many have products for it, and they’re now ready for the mass market. No longer needing to rely on old handwritten scripts to do new application deployments and maintenance on the one’s you already have, we’ll see a workforce in IT delivering an even better service to their organisation. With automation, we can lower the human error percentage (there will still be a percentage) and make things faster and more consistent. And go home at 5PM, spend time with our families and friends, maybe have a glass of your preferred beverage at the local pub. All in all a win-win for everyone, IMHO.

    While this is happening, and IT departments are changing in the ways of Software-Defined infrastructure and automation, I see this as one of their first steps towards a long-term partnership with service providers. As IT departments are realising that their own infrastructure isn’t that far from an SPs, and technologies for connectivity have advanced beyond just a regular VPN, there can be massive savings to be had. Instead of maintaining their own infrastructure, cooling systems, reserve power, diesel generators, datacenter facilities etc, I think many IT departments will move portions of their current flora of applications out to an SP. And then spend the savings on educating their personell to be even more efficient and responsive to the real business needs. Once again, a win-win.

    And while they’re at it, I hope they look into other alternatives for their applications as well, making sure that they don’t maintain a legacy app just because none knows of any other options. There are many great options for a lot of legacy software that can be easily used, both on-prem and online at Software-as-a-Service vendors. And those vendors are experts at that specific software, not needing you to be an expert in setting it up, configuring it, securing it etc, meaning parts of the internal IT department can become something else than SharePoint Workflow experts (for example) which will benefit both the IT organisation and the business. Win-win.

    So yes, I am predicting general broad strokes in where the industry is headed. Technology-wise we all know there will be marvellous inventions and solutions, and I can’t wait to get my hands on them and try them out, but I am not the right person to predict those. Perhaps you are? Do you agree or disagree with my predictions? Please leave a comment.


    19 Feb 00:27

    A Primer on Data Backup for Small- to Medium-Sized Companies (Video)

    by Roblimo
    This is a conversation with Jeff Whitehead and Lou Montulli, respectively Vice President of Technical Operations/CTO and Chief Scientist for Zetta.net, a company that specializes in online backup and disaster recovery service. Also, while this interview was arranged without his help, in the interest of full disclosure we'd like to tell you that Zetta's CEO is Ali Jenab, who used to be CEO of Slashdot's parent company. But this discussion isn't about Ali or Zetta.net, but about data backup, and what methods are best and most cost-effective for companies ranging from home-based businesses up to enterprise operations with thousands of employees. Among other things, we discussed the importance of multiple-site storage for important data, a factor that was drilled in to us yesterday by an article titled Another Iron Mountain Fire Points Up Shortcomings of Physical Storage by long-time tech journalist Sharon Fisher. And never forget: You don't know how effective your backup and data storage arrangements are until you try to retrieve your data -- and if you don't try to retrieve data until you need it, and things don't work, you are in big trouble. (Don't see the video? Here's a link.)

    Share on Google+

    Read more of this story at Slashdot.








    19 Feb 00:05

    How to check for last SQL Server backup

    by Tim Radney

    As a database professional, I get asked to review the health of database environments very often. When I perform these reviews, one of the many checks I perform is reviewing backup history and making sure that the backup plans in place meet the requirements and service level agreements for the business. I have found a number of backup strategies implemented using full, differential and transaction log backups in some fashion.

    In more cases then I would like to share, I have found business critical databases that are not being backed up properly. This could be in the worst case having no backups or a backup strategy that does not meet the recoverability requirement of the business.

    When doing an initial check I gather many details about the environment. Regarding backups, I capture things such as recovery model, last full backup, last differential, and the last two transaction log backups. Having this information will allow me to determine what the backup strategy is and point out any recover-ability gaps.

    Some examples I have found are 1) no backup’s period, 2) full backup from months ago and daily differentials. In this case the full had been purged from the system, 3) Full backup of user database in Full recovery mode with no transaction log backups, 4) Proper use of weekly full, daily differential, and schedule transaction log backups – however the schedule was set to hourly and the customer expected they would have no more than 15 minutes of data loss.  I am happy to report that I do find proper backup routines that meet the customers’ service level agreement too.

    The code I like to use for this check is below.

    SELECT
      DISTINCT
            a.Name AS DatabaseName ,
            CONVERT(SYSNAME, DATABASEPROPERTYEX(a.name, 'Recovery')) RecoveryModel ,
            COALESCE(( SELECT   CONVERT(VARCHAR(12), MAX(backup_finish_date), 101)
                       FROM     msdb.dbo.backupset
                       WHERE    database_name = a.name
                                AND type = 'd'
                                AND is_copy_only = '0'
                     ), 'No Full') AS 'Full' ,
            COALESCE(( SELECT   CONVERT(VARCHAR(12), MAX(backup_finish_date), 101)
                       FROM     msdb.dbo.backupset
                       WHERE    database_name = a.name
                                AND type = 'i'
                                AND is_copy_only = '0'
                     ), 'No Diff') AS 'Diff' ,
            COALESCE(( SELECT   CONVERT(VARCHAR(20), MAX(backup_finish_date), 120)
                       FROM     msdb.dbo.backupset
                       WHERE    database_name = a.name
                                AND type = 'l'
                     ), 'No Log') AS 'LastLog' ,
            COALESCE(( SELECT   CONVERT(VARCHAR(20), backup_finish_date, 120)
                       FROM     ( SELECT    ROW_NUMBER() OVER ( ORDER BY backup_finish_date DESC ) AS 'rownum' ,
                                            backup_finish_date
                                  FROM      msdb.dbo.backupset
                                  WHERE     database_name = a.name
                                            AND type = 'l'
                                ) withrownum
                       WHERE    rownum = 2
                     ), 'No Log') AS 'LastLog2'
    FROM    sys.databases a
            LEFT OUTER JOIN msdb.dbo.backupset b ON b.database_name = a.name
    WHERE   a.name <> 'tempdb'
            AND a.state_desc = 'online'
    GROUP BY a.Name ,
            a.compatibility_level
    ORDER BY a.name

    Ensuring that you have backups is crucial to any check of a SQL Server instance. In addition to ensuring that backups are being created, validation of those backups is just as important. Backups are only valid if you can restore them.

    When I have the opportunity to share my experiences of backup and recovery with people I always like to share about how to backup the tail end of a transaction log and how to attach a transaction log from one database to another in order to backup the tail end of the log. I have created a couple of videos on how to accomplish this that you can view using this like http://www.timradney.com/taillogrestore

    Share

    18 Feb 23:12

    Have IT Your Way.

    by Brian Carpenter
    EMC logo

     Have IT Your Way.

    While I’m not a personal fan of Burger King, they have one thing right with their slogan:  “Have it Your Way”.

    The consumerization of IT is more than complete.  And those companies that have already embraced it as such need infrastructure options that allow them to serve their customers needs appropriately.

     

    2014 is the year of… Platforms.  Specifically, choice in diverse platforms.  No matter what way you want to build your application, there’s a platform that will allow you to do it.

    wpid ScaleIOBezel Have IT Your Way.Today at VMware Partner Exchange Conference (@VMwarePEX), a combined effort between unexpected fellows was announced:  The Super VDI 200 is a Converged Architecture co-developed by LSI, SuperMicro, Mellanox, and EMC’s ScaleIO Software Defined Storage platform.  Check out the early press peek here.  Clearly it’s marketed for VDI / EUC – the TCO darling of the performance and scale world – but it could be used for any number of similar reference architectures.  Dev / Test platforms, render farms, OpenStack, and a number of others instantly come to mind.

    Each Super VDI 200 comprised of the following (Although, it’s all configurable if you want):

    • Dual Intel Xeon E5-2680
    • 384GB Memory
    • (2) 3.2TB LSI PCI-E Flash
    • (7) SAS HDD and (1) Intel 3700 100GB SSD
    • Intel Dual Port SFP+ 10GB & Intel Dual Port 1GB Ethernet
    • Dual Mellanox 40GB
    • IPMI
    • Redundant Platinum Level Power

    Here’s a video that gives a bit more insight into the architecture and how it all pulls together as one combined architecture to meet your needs.

    And, if you want to get a bit more in the weeds, head over to VMware for a bit more heavy reading:

    Reference Architectures (Think outside the Horizon View box!)
    Reference Architecture White Paper (SuperMicro + LSI Warp Drive + ScaleIO + Mellanox)
    Solutions Brief (with Specific Performance Test Results)

    Also, a big thanks to Dave Nicholson who was an integral part of teaching this to the EMCElect as well as working on the Converged Architecture.  He’s the most intriguing man in SDS!

    wpid IMG 25204 Have IT Your Way.wpid IMG 25192 Have IT Your Way.

     

    18 Feb 23:10

    VMware – Creating a 32bit DSN on a 64bit Windows machine (1010401)

    by dan
    VMware

    I know I’ve covered this somewhere before – but this is just a reminder post for my own reference. When I was building my lab on vSphere 5.1 I had to configure a 32-bit DSN for VMware Update Manager- this link provides details on how to do it. I believe this is no longer necessary with 5.5. Again, not very exciting, but useful to know how to do it. Also, statements like “You can install the Update Manager server only on 64bit machines. However, Update Manager is a 32bit application and requires a 32bit DSN” still blow my mind.

    18 Feb 23:06

    EMC – Using naviseccli to report on a LUN’s FAST status

    by dan
    EMC

    Ever wondered what tier a LUN was sitting on in a FAST VP pool? Wonder no more, naviseccli is here to help.

    C:\>naviseccli -user username -scope 0 -password password -h 1.1.1.1 lun -list -l 24 -userCap -consumedCap -tieringPolicy -initialTier -tiers
    LOGICAL UNIT NUMBER 24
    Name: LUN_0024
    User Capacity (Blocks): 4294967296
    User Capacity (GBs): 2048.000
    Consumed Capacity (Blocks): 4379120640
    Consumed Capacity (GBs): 2088.127
    Tiering Policy: Auto Tier
    Initial Tier: Optimize Pool
    Tier Distribution:
    FC: 93.87%
    SATA: 6.13%

    Also, you can see this information via Unisphere. Those of you who are challenged at the thought of typing something won’t be left out.

     

    lun1

    lun2

     

     

     

    18 Feb 23:05

    VDI is dying so what now?

    by Keith Townsend
    EMC logo

    TombstoneAs the saying goes, “Two things are certain in life. We pay taxes, and we die.” One of my more nerve striking posts and point of views is on the death of virtual desktop infrastructure VDI. I understand the tension. People have banked their careers and in some cases their entire business model on VDI. To say that their investment and sacrifice is just a short term investment is a very charged statement.

    My LinkedIn Profile

    I guess I should clarify my prediction a bit. VDI is dying; it’s not dead. VDI isn’t the long term vision of any major vendor for end user computing. Citrix is the king of VDI and has looked to diversify into server virtualization, cloud computing and other data center technologies such as load balancers. It’s ironic until recently one of my main personal use cases for VDI was VMware’s own vSphere Client on my Macbook. VMware has been pushing their vSphere Web Client as the default interface to manage their virtualization platform.

    I think this points to the future of end user computing. Vendors will gradually web enable their applications or come up with completely different application models that make the local desktop OS irrelevant. But this is a long time away. As readers on my last post pointed out, there are still organizations relying on applications designed to run on Windows 2000 and IE 6. These organizations will need a bridge to their future computing platform, and this is where VDI fits in nicely.

    Tipping Point

    Token Ring MAU

    Token Ring MAU

    However, there is a tipping point. There will be a point where most organizations will no longer rely on legacy desktop applications. There may be a need for some VDI, but the majority of end-user facing applications will be platform agnostic. Some people guess this will take 10 years or more. I don’t know. Technology has a tendency of going through evolutionary change quickly. There was a short period of time where I’d wire a desktop with both Ethernet and Token Ring to support direct connectivity to mainframe applications. The thought process was the mainframe would never go away. This was true the mainframe didn’t go away. But companies like Novell figured a way to proxy the connection to the mainframe and eliminate the expense of a second network.

    VDI as it is today is a painful end user experience. An end user that purchases a Chromebook, iPad, or Macbook is not looking for a Windows experience. If they wanted a Windows experience, then the Surface would be a really hot selling device. My bet is that before this 10 year period is up, the industry will crack this nut. We’ll look at VDI as it is today and wonder why we ever thought that even the bridge period would have been presenting Windows running in a DC via remote control.

    DaaS – A better option? 

    So where do we invest our time and resources if VDI isn’t the long term solution?  As both an infrastructure professional and an end user, I get the appeal of VDI.  It’s an “easy” solution to a difficult problem.  It feels like the right solution to a very practical problem.  But, this is where the engineer needs to meet the business and know how to advise the business in making the best investment.  I believe short term that VDI is a necessary evil.  I don’t see a practical way around it.  However, if I were in a position of needing VDI, I’d seriously consider DaaS as a solution if it fits my use case.

    Solutions like VMware’s Desktone can offer the best of both world’s.  VMware takes the headache of managing the infrastructure while offering the advantages of an on-prim solution.  I’m sure AWS isn’t too far away from offering an appealing solution as well.  It helps control your exit (and you should have an exit plan for DaaS) from VDI.  In theory, it gives the organization an elastic VDI bridge.  When the industry figures out a VDI alternative you can ease back on the VDI infrastructure, reclaiming some of the opex associated with VDI.  This should make the transition palatable from an economic and organizational perspective.

    So, what are your thoughts? Is VDI that long term proxy or is it Token Ring?

    Follow me on Twitter @virtualizedgeek


    18 Feb 23:03

    Data-intensive Applications in the Cloud Computing World

    by MarkSouza

    Building data-intensive applications in emerging cloud computing environments is fundamentally different and more exciting.  The levels of scale, reliability, and performance are as challenging as anything we have previously seen.  Databases are still prevalent in design, but new patterns and storage options need to be considered, as well.

    To provide a little context, I have developed and supported database software for over 30 years.  I started with IMS/DLI and CICS/VSAM, then quickly moved to DB2 while it was still in beta (System R).  I became a pretty hard core RDBMS expert with 11 years of DB2 experience and over 20 years of Microsoft SQL Server experience.  I have been involved with some of the largest RDBMS projects in the world. (Example: a reliable, large-scale application in Europe that is available 24/7 and is designed to process up to 500,000 batch requests/sec, which equates to greater than 4 million SQL statements/sec.)  Before the emerging era of cloud computing, my database thinking was all about scale-up computing with transaction latency measured in a few microseconds and IOPS measured in many GBs/sec.

    For the past 18 months, my team has worked with customers to build applications on the Windows Azure platform.  We’ve learned a lot about scale-out distributed computing—composing applications and solutions using different sets of services and resources while exploiting cloud platform fundamentals such as scalability, availability, and manageability.  We’ve learned that developing data-intensive applications to a set of online services is very different than writing traditional client/server applications; for some specifics, see my previous post on “Designing Great Cloud Applications”.

    In the remainder of this post, I take a high-level look at the role of databases in cloud-based applications.

    The design pattern and use of a database for a cloud-based application is different and, generally, expanded.  You still have the need to store the persisted database transactions of the traditional RDBMS application.  And, due to the use of distributed computing resources in a cloud-based application with higher standards for reliability, performance, and manageability, you also need extensive telemetry data captured about the entire application—if you want to build a great cloud application.

    When we first started working with customers writing cloud-based data-intensive applications, most would use a relational database like Windows Azure SQL Database for all data storage, including telemetry data.  This could be expected because developers often use the tool(s) they are most familiar with, TSQL provides a quick and well-known interface to get data in and out of the database, and relational databases generally take care of threading and concurrency for developers.  At the time, the default thinking was that most data belongs in a traditional relational database where data is always stateful and carries atomic transactional properties.  However, in the distributed cloud computing environment, scale will likely come from the implementation of stateless as well as stateful data properties.  The new paradigm shifts us away from the use of a traditional RDBMS for all data.

    An Example

    Let me show you an example of a cloud application where multiple data stores are used.  The architecture is for an online gaming experience.  This application is designed to manage several thousand concurrent users and can scale out at several points, as needed.  After the diagram, I will explain the different functions of the application, the type of data store used for each function, and why that particular type of data store is used for that function.  As I describe each function, I will refer to a number in the diagram as a reference.

     

    Function: Login and Initialize Profile — Looking at the bottom of the diagram, you see three users; let’s start there.  These users log in and their sessions are assigned to a Windows Azure web role (#1).  The web role hosts them while they are active on the system.  The first step is to authenticate them and bring their profiles into Windows Azure Cache (#5).  Their profiles are stored in Windows Azure SQL Database (#2).  Complex queries retrieve profile data from the SQL Database by joining data (game history, scores, activity, etc.) from multiple relational tables to store in the Cache.  A relational database is best suited for this type of persistent storage and complex query activity.  The user profile also needs to be updated when information changes, so the same types of complex transactions are required to update the information back into the SQL Database.  This is a good example of where a traditional relational database is best utilized as your data store.

    Function: Play Games and Perform Online Activities — After the users are logged in and their profiles are in Cache, they can start the gaming experience.  As you might expect, the gaming experience will be all in Cache (#5).  The Cache is a high performance data store and is the obvious place to store active game data.  Because Cache is non-durable, leaderboard, profile, and friend information is pushed out to other data stores for persistence.

    Function: Documenting and Updating Activities — All active game activity is recorded while the users are playing, and this activity needs to be durable during play while constantly making changes to it.  Activity data is stored in a Queue (#4).  This is a durable Queue, so unlike the Cache, activity data is not lost if an outage takes place.  Data stored in the Queue is processed by “activity processors” (hosted as Windows Azure worker roles) that process the data, carry-out application logic, and persist results and history.

    Function:  Activity History — For each user, all activity is stored and kept as history.  Activity history is persisted on a periodic basis from the active Queue (#4) to a NoSQL store (#3).  This NoSQL store rests in a table, using Windows Azure Table service.  The table is used because the data is mostly write-only, with a requirement to easily grow in place with little need for complex query activity against it.  So, the Table service is the best store for this type of data activity.

    Function: Friend Interaction and Leaderboard — While users are playing, they can communicate and interact with friends (other users) in the system.  They also might want to keep tabs of the leaderboard.  Friend and leaderboard data changes often but not constantly, so this data is best stored in an Azure SQL Database (#7).  The relational database is updated often, and the “cache tasks” role continuously pulls the latest information and ensures the active cache (#5) is always updated with the latest leaderboard and friend information through a query to the SQL Database.  

    Function: Data Warehouse — All user profile data and activity data is stored in a data warehouse (#6) for reporting purposes.  Unstructured data from the Azure Table service is stored in Hadoop (Windows Azure HDInsight), and structured data is stored in a relational data warehouse (Azure SQL Database).  

    Summary

    In summary, you can see that this single application uses five different data storage options:  Windows Azure Cache, Azure SQL Database, Azure Queue service, Azure Table service, and Azure HDInsight (Hadoop).  Each type of store was chosen because it represents the best option for the transactional needs of the operation being executed:

    • Windows Azure Cache is used for performance (non-durable).
    • Azure SQL Database is used for strong transactional consistency and for complex query needs.
    • Azure Queue service is used for performance with heavy activity (durable).
    • Azure Table service (NoSQL) is used for heavy inserts (write-only) and the need to grow easily and quickly.
    • Azure HDInsight (Hadoop) is used for reporting against unstructured data.

    If this was an on-premise application, you could have used multiple data stores, too, but the overhead of procurement, installation, and configuration of all of these sources adds time and money to your solution.  As the diagram below suggests, with only a couple of clicks in the Windows Azure portal, you can have any of these data sources installed, configured, and up and running.

    My world has changed.  I am no longer just a relational database developer.  The Windows Azure platform and Microsoft cloud services make it easy to use the best data store for whatever task I am trying to accomplish—and, in many cases, this means using several different types of data stores. For more information about our data platform vision and the future of data-intensive applications on the Windows Azure platform, see Quentin Clark’s blog, “What Drives Microsoft’s Data Platform Vision?

    Mark Souza
    General Manager
    Windows Azure Customer Advisory Team

    18 Feb 22:24

    Your 60-Hour Work Week Is Not a Badge of Honor

    by Soulskill
    An anonymous reader writes "We've all had to deal with long, tough work weeks, whether it's coming in on the weekend to meet a project deadline, pulling all-nighters to resolve a crisis, or the steady accretion of overtime in a death march. It's fairly common in the tech sector for employees to hold these tough weeks up as points of pride; something good they achieved or survived. But Jeff Archibald writes that this is the wrong way to think of it. 'If you're working 60 hours a week, something has broken down organizationally. You are doing two people's jobs. You aren't telling your boss you're overworked (or maybe he/she doesn't care). You are probably a pinch point, a bottleneck. You are far less productive. You are frantically swimming against the current, just trying to keep your head above water. ... We need to stop being proud of overworking ourselves.'"

    Share on Google+

    Read more of this story at Slashdot.








    18 Feb 22:15

    Whatever Happened To the IPv4 Address Crisis?

    by samzenpus
    alphadogg writes "In February 2011, the global Internet Assigned Numbers Authority (IANA) allocated the last blocks of IPv4 address space to the five regional Internet registries. At the time, experts warned that within months all available IPv4 addresses in the world would be distributed to ISPs. Soon after that, unless everyone upgraded to IPv6, the world would be facing a crisis that would hamper Internet connectivity for everyone. That crisis would be exacerbated by the skyrocketing demand for IP addresses due to a variety of factors: the Internet of Things (refrigerators needing their own IP address); wearables (watches and glasses demanding connectivity); BYOD (the explosion of mobile devices allowed to connect to the corporate network); and the increase in smartphone use in developing countries. So, here we are three years later and the American Registry for Internet Numbers is still doling out IPv4 addresses in the United States and Canada. Whatever happened to the IPv4 address crisis?"

    Share on Google+

    Read more of this story at Slashdot.








    18 Feb 22:11

    What the Hell America?

    What the Hell America?
    Americans are enthusiastic about the promise of science but lack basic knowledge of it, with one in four unaware that the Earth revolves around the Sun, said a poll out Friday.

    The survey included more than 2,200 people in the United States and was conducted by the National Science Foundation.

    Ten questions about physical and biological science were on the quiz, and the average score -- 6.5 correct -- was barely a passing grade.

    Submitted by: Unknown

    18 Feb 21:58

    We the People Response: Reaffirming the White House's Commitment to Net Neutrality

    by Gene Sperling and Todd Park

    Ed. note: Earlier today, the White House issued its response to a We the People petition on net neutrality. You can read it below, or see the response here.

    Thank you to everyone who has signed on to this petition in support of a free and open Internet. Since his days as a United States Senator, President Obama has embraced the principle of net neutrality. As the President recently noted, his campaign for the White House was empowered by an open Internet; it allowed millions of supporters to interact with the President and each other in unprecedented fashion. That experience helped give rise to the creation of this very platform -- the We The People website -- where Americans can express their opinions on any topic and receive a response from the White House. Rights of free speech, and the free flow of information, are central to our society and economy -- and the principle of net neutrality gives every American an equal and meaningful opportunity to participate in both. Indeed, an open Internet is an engine for freedom around the world.

    Preserving an open Internet is vital not to just to the free flow of information, but also to promoting innovation and economic productivity. Because of its openness, the Internet has allowed entrepreneurs -- with just a small amount of seed money or a modest grant -- to take their innovative ideas from the garage or the dorm room to every corner of the Earth, building companies, creating jobs, improving vital services, and fostering even more innovation along the way.

    Absent net neutrality, the Internet could turn into a high-priced private toll road that would be inaccessible to the next generation of visionaries. The resulting decline in the development of advanced online apps and services would dampen demand for broadband and ultimately discourage investment in broadband infrastructure. An open Internet removes barriers to investment worldwide.

    A wide spectrum of stakeholders and policymakers recognize the importance of these principles. In the wake of last month's court decision, it was encouraging to hear major broadband providers assert their commitment to an open Internet.

    It was also encouraging to see Federal Communications Commission Chairman Tom Wheeler, whom the President appointed to that post last year, reaffirm his commitment to a free and open Internet and pledge to use the authority granted by Congress to maintain a free and open Internet. The White House strongly supports the FCC and Chairman Wheeler in this effort.

    The petition asked that the President direct the FCC to reclassify Internet service providers as "common carriers" which, if upheld, would give the FCC a distinct set of regulatory tools to promote net neutrality. The FCC is an independent agency. Chairman Wheeler has publicly pledged to use the full authority granted by Congress to maintain a robust, free and open Internet -- a principle that this White House vigorously supports.

    18 Feb 21:54

    How is a Salary is Determined?

    by Chris Shaw

    Years ago I found myself in a very sticky situation. The worst part; I understood why, but I still didn’t think it was right.

    I was managing a small DBA group that had a total of 6 headcount. I was fortunate that I didn’t have a lot of turnover and honestly I was surprised because the company provided a less then optimal working environment. I had a position come open and I started the process of hiring a new DBA. After a number of interviews it was obvious there were a large number of candidates looking for work at that time. The person that I ended up extending an offer to, and employed was someone who in my mind is an ideal candidate, we will call him Bob. He didn’t disappoint at all.

    A year later I was in the same situation, however when I started the interview process this time I determined there were very few candidates that I could draw from. I ended up finding someone who at the time I thought would be a good fit for the team we will call him John. I made the offer and John accepted. In the long run I don’t think the position was a good match for John but that is a different story for a different time. Now this is where things get a little crazy. Bob was hired at one rate let’s say $20.00 an hour, and John was hired at $25.00 an hour. Both of them were going for the same job description and received the same benefits yet the Salary was quite different.

    The company I was working for didn’t let me determine the salary of an employee. The way it was determined was that I given a range of what I could afford in my department budget and I was often instructed to try to stay in the middle of that range. When I hired Bob the range was $15.00 to $22.00, yet when I hired John the range was $25.00 to $30.00 an hour. Here is where the questions started, and today many years later I have had the opportunity to discuss this in an interview format with different HR directors, the information posted here comes from 3 different interviews. None of the individuals wanted to be identified however I can tell you that:

    • One is from the government agency with near 200 employees
    • One is from a non-profit with near 500 employees
    • One is from a for profit company with well over 5000 employees

    What surprised me the most is that no matter how different the hiring organizations are the answers are really not different in how they determine what salaries are offered to potential employees. I wanted to focus on three questions in particular; I have listed them here with a summary on how they were answered:

    1. How do companies determine a salary range when they are trying to fill open head count?

      The general answer here is a company makes a determination if they are going to pay at market rates often a decision is made to pay slightly higher or slightly lower than market. Once that decision is made they research the market and then determine the spread, the average is determined and then adjustments are made. When researching for the market variables such as cost of living allowances are taken into consideration (It costs more to live in Southern California then it does in Colorado). For example in Feb of 2014 a salary range for Colorado Springs, Colorado is shown below.


      The Median or average is $95k a year (National average was $107k) for a Data Architect 3 or a senior level data architect as explained in the description. Companies then make adjustments based on if they want to pay slightly above or below this average, as you can see 50% of the salaries fall between $83k and $107k. This chart was supplied by Salary.com. Other sources used to determine Salaries include:

    • Indeed.com
    • PayScale
    • Career Journal.com
    • JobStart.com

    End result, I was not too surprised at what the decision makers were telling me. Granted I did find the 50% range from $83k to $107k a lot wider than I had anticipated.

    1. How does a non-profit organization such as a government organization or a religious organization determine a salary range?

      Now here is where I was surprised. To be honest I am not sure that my research had enough input points to be considered a set of valuable statistics. The answers I received pointed to using the same methodology as for-profit organizations. My experience when looking at these non-profits does not reflect that. My own opinion derived from discussions with people who are employed at non-profits or interviews with non-profits is they generally pay about 70% to 80% of average. Reflecting back to one specific discussion on salary while I was being interviewed for a position, a local religious non-profit explained the away the delta by discussing the benefits in the nature of the work itself (much could be debated on this).

    2. How much does a job title impact the salary range?

      One note about the question with titles, and this one may just be me and my experience. I have always argued that a title should reflect your job description accurately. At one point in my career I was told titles mean nothing, and my title would not be adjusted. I have found this is often a problem for a number of reasons. Many companies have a max salary for a job title, for example if you had a title of a Jr. DBA your ceiling or salary cap would be lower if you were a mid-level DBA. From a general view that makes a bit of since, if you were a Jr DBA before you can move to the next salary bracket you should display the skills of a more seasoned professional. This argument doesn’t hold much water in many situations. When I asked the questions to the panel the answer I received was very clear and uniformed. Title does matter, not only does that title matter but the tasks associated with it matter.

    Remember Bob and John? In my situation Bob the employee that was making less money than the new hire found out that John was making more money than he was. I have to admit that was one of the hardest days at that role in the company. I had to have a discussion with Bob and explain the market had changed and that the amount of money other people were making was no reflection on him. As much as I understand why the fact remained that if I was Bob, and found out that someone who was just hired was making more than what I was all depending on the market when I was hired I would be a little sore as well.

    I tried to do the right thing and bring Bob up to the level that John was making, even a little more. The end result was the damage was done.

     

     

     


    18 Feb 21:47

    How do we know if mobile apps are secure?

    by Scott Hanselman

    You know how we're always telling out non-technical non-gender-specific spouses and parents to be safe and careful online? You know how we teach non-technical friends about the little lock in the browser and making sure that their bank's little lock turned green?

    HTTPS & SSL doesn't mean "trust this." It means "this is private." You may be having a private conversation with Satan.

    — Scott Hanselman (@shanselman) April 4, 2012

    Well, we know that HTTPS and SSL don't imply trust, they imply (some) privacy. But we have some cues, at least, and after many years while a good trustable UI isn't there, at least web browsers TRY to expose information for technical security decisions. Plus, bad guys can't spell.

    image

    But what about mobile apps?

    I download a new 99 cent app and perhaps it wants a name and password. What standard UI is there to assure me that the transmission is secure? Do I just assume?

    What about my big reliable secure bank? Their banking app is secure, right? If they use SSL, that's cool, right? Well, are they sure who they are talking too?

    OActive Labs researcher Ariel Sanchez tested 40 mobile banking apps from the "top 60 most influential banks in the world."

    40% of the audited apps did not validate the authenticity of SSL certificates presented. This makes them susceptible to man-in-the-middle (MiTM) attacks.

    Many of the apps (90%) contained several non-SSL links throughout the application. This allows an attacker to intercept the traffic and inject arbitrary JavaScript/HTML code in an attempt to create a fake login prompt or similar scam.

    If I use an app to log into another service, what assurance is there that they aren't storing my password in cleartext? 

    It is easy to make mistakes such as storing user data (passwords/usernames) incorrectly on the device, in the vast majority of cases credentials get stored either unencrypted or have been encoded using methods such as base64 encoding (or others) and are rather trivial to reverse,” says Andy Swift, mobile security researcher from penetration testing firm Hut3.

    I mean, if Starbucks developers can't get it right (they stored your password in the clear, on your device) then how can some random Jane or Joe Developer? What about cleartext transmission?

    "This mistake extends to sending data too, if developers rely on the device too much it becomes quite easy to forget altogether about the transmission of the data. Such data can be easily extracted and may include authentication tokens, raw authentication data or personal data. At the end of the day if not investigated, the end user has no idea what data the application is accessing and sending to a server somewhere." - Andy Swift

    I think that it's time for operating systems and SDKs to start imposing much more stringent best practices. Perhaps we really do need to move to an HTTPS Everywhere Internet as the Electronic Frontier Foundation suggests.

    Transmission security doesn't mean that bad actors and malware can't find their way into App Stores, however. Researchers have been able to develop, submit, and have approved bad apps in the iOS App Store. I'm sure other stores have the same problems.

    The NSA has a 37 page guide on how to secure your (iOS5) mobile device if you're an NSA employee, and it mostly consists of two things: Check "secure or SSL" for everything and disable everything else.

    What do you think? Should App Stores put locks or certification badges on "secure apps" or apps that have passed a special review? Should a mobile OS impose a sandbox and reject outgoing non-SSL traffic for a certain class of apps? Is it too hard to code up SSL validation checks? '

    Whose problem is this? I'm pretty sure it's not my Dad's.


    Sponsor: Big thanks to Red Gate for sponsoring the blog feed this week! Easy release management: Deploy your SQL Server databases in a single, repeatable process with Red Gate’s Deployment Manager. There’s a free Starter edition, so get started now!



    © 2014 Scott Hanselman. All rights reserved.
         
    16 Feb 05:55

    Making Big Data Work for Everyone

    by Quentin Clark

    This has been a really exciting week for the Microsoft data platform. On Monday, we announced the general availability of Power BI for Office 365. This morning, we announced that support for Hadoop 2.2 clusters is now in preview for Windows Azure HDInsight—our cloud-based Hadoop service. And, I just presented at Strata, one of our industry’s premier big data events, where I talked about making data work for everyone.

    A few weeks ago, I shared some thoughts about the changing nature of data in the modern business enterprise, leading to the conclusion that there is a “new value” of data. At Microsoft, we have a bold vision of bringing big data to a billion people. That’s how we think of big data: a billion people are more informed and have a better perspective of the world around them. 

    When I say, “bringing big data to a billion people,” I’m talking about changing the way people live and work through data. And, I am talking about everyone, not just data scientists and experts. Big data is valuable for people in all walks of life. It’s certainly valuable for the enterprise; people in businesses and organizations of all types clearly need the power of big data to drive faster decisions and insights. But it’s also valuable for consumers, citizens and people of all generations, whether they are seeking answers and insights for some other aspect of their lives or just satisfying their own curiosity.

    Let me share a personal example of “satisfying curiosity.” A week ago, my boys and I were talking about the World Cup and how it’s being hosted in Brazil and how the Winter Olympics are being hosted in Russia. Somehow, this dialog led to us wondering about the populations of countries by continent. I was able to produce the view below in just a couple of minutes using some of our business intelligence tools, Power BI for Office 365 and Excel. I opened Excel, did a Power Query search on country population, found the data I wanted and then added that data to a worksheet. I then searched on countries by continent, found the data and added that to another worksheet. I inserted both worksheets into Power View, linked them together, dragged the right data columns into the Power View canvas, made the continents a slicer (a type of filter), and voila!, I had the information my boys were curious about. 

    This little story illuminates the art of what’s possible when disparate data sources are quickly and easily brought together for analysis and visualization. Our family had a better, more informed dialog over lunch because of the power of structured information that is accessible in a friction-free way. Now just imagine what the professionals in finance and engineering I work with every day are doing – Power BI has changed how I run my business and organization day-to-day.

    At Microsoft, we are striving to put the power of data insights into the hands of the people who are closest to real-world challenges. We want subject matter experts to analyze and visualize data and explore solutions as easily as they can create a spreadsheet. Think of all the different kinds of people that could benefit from this: How would farmers change their planting and animal-husbandry practices? How might law enforcement practices change? How will city planners create better experiences for all citizens of their communities?

    Our view is that it takes the combined effect of three elements to bring big data to a billion people: robust tools that everyday people can use, easy access to all kinds of data sets, and a complete data platform.

    Today, with the latest additions and updates to our data platform, we are another step closer to our vision. As I mentioned at the outset, on Monday, we announced the general availability of Power BI for Office 365, which brings together Microsoft’s strengths in cloud computing, productivity software, and business intelligence to enable people to easily find, analyze and visualize data in Excel, discover valuable insights, and share and collaborate on those insights from anywhere with Office 365. More than that, it does so in a turnkey way, empowering users while giving IT the ability to help manage and maximize the work. In addition, we are making available a preview of Windows Azure HDInsight with support for Hadoop 2.2. Windows Azure HDInsight combines the best of open source and flexibility of cloud deployment with the security and manageability required to accelerate the adoption of Hadoop in the enterprise. With this new version, we’ve updated HDInsight to take advantage of some key capabilities in the latest version of Hadoop.

    It’s a really exciting time in the data industry. We are at the tipping point of bringing bring big data to a billion people. It’s happening now: doctors, farmers, lawyers, teachers and marketing teams are incorporating big data into their daily decision-making and fundamentally reinventing the way they do business.   

    Quentin Clark
    Corporate Vice President
    Data Platform Group

    16 Feb 05:54

    New York .Net and SQL Server User Groups – We’re back!!

    Date & Time: Tuesday, February 25, 2014 – 6:30-9pm

    Evening theme/title: SQL Server – Are you talking to me?

    Groups/Target Audience: SQL Server and .NET User Groups, anyone that works with SQL Server that wants to talk techie on Tuesday evening

    Cost: FREE (but, you must register; link at the end of this post)

    Presenters: Kimberly L. Tripp & Jonathan Kehayias, SQLskills.com

    Abstract: Our title seems strange but it runs across multiple themes. First we’ll take a look at Service Broker in SQL Server and how it can extend service oriented architectures into the data tier with asynchronous message processing. As for the other theme, database developers, DBAs, architects – don’t always talk to each other. In this evening session, we’ll cover a mix of really interesting topics that help bridge the gap across these disciplines. Reading plans and understanding plans with Plan Explorer (both the free and the Pro versions will be discussed) – this is something everyone should be able to do. And, we’ll raffle off a PE Pro Edition (thanks SQL Sentry) in addition to talking about the FREE Plan Explorer. Then, we’ll dive into statement execution methods and plan cache. Different coding strategies on our servers can have a profound effect on both cache and performance. But, how can you write more effective code that takes less caching and has better plans? Some of this content comes from a newly released Pluralsight course titled: SQL Server – Optimizing Ad Hoc Statement Performance and for those of you that attend – Pluralsight will give you a monthly trial. And, we’ll also raffle off two Annual Plus subscriptions (thanks Pluralsight)!

    How can we all just get along? Come to this fast-paced, demo-packed session led by industry-experts Kimberly L. Tripp and Jonathan Kehayias of SQLskills. And, after the presentation, Kimberly, Jonathan, and Paul Randal (also of SQLskills) will hang out for an open Q&A on almost-anything-SQL. We’ll post a list of topics and open up the floor!

    Sponsors:

    Rough Agenda:

    • 6:30pm – Pizza (thanks Pluralsight & SQL Sentry), networking, settling in
    • 7:00pm
      • Service Broker (~15 mins) – Jonathan Kehayias
      • SQL Sentry’s Plan Explorer (~15 mins) – Jonathan Kehayias
      • Statement Execution (~15 mins) – Kimberly L. Tripp
      • Plan Cache (~15 mins) – Kimberly L. Tripp
    • 8:15pm – Raffles (must be present to win)
      • SQL Sentry Plan Explorer Pro License
      • Pluralsight Annual Plus Subscriptions
      • $100 off (per day) for an Immersion Event of your choice (maximum value $500 for a 5-day event)
      • Everyone – 30-day trial subscription to Pluralsight
    • 8:30pm – Open Q&A (all 3 of us)

    Location:

    Microsoft
    11 Times Square (west 41st street and 8th avenue)
    New York, NY 10036

    Check-in with security in the lobby and then you’ll proceed to the 9th floor. Our meeting will be held in the Music Box/Winter Garden MPR.

    And a final, big thanks to our evening hosts!

    Microsoft contact: Jesus Aguilar, http://www.giventocode.com/
    SQL Server User Group contact:
    Joe Lax, http://nycsqlusergroup.com/
    .NET User Group Contact: Andrew Brust, http://www.nycdotnetdev.com/

    Want to join us – register here (cost: free):

    https://clicktoattend.microsoft.com/en-us/Pages/EventDetails.aspx?EventId=179143

    The post New York .Net and SQL Server User Groups – We’re back!! appeared first on Kimberly L. Tripp.

    16 Feb 05:53

    SQL Server 2014 Incremental Statistics

    by Benjamin Nevarez
    Benjamin Nevarez (@BenjaminNevarez) takes a close look at the new incremental statistics feature in SQL Server 2014.
    16 Feb 05:52

    Skewed Data - Poor Cardinality Estimates... and Plans Gone Bad

    by Sergio Govoni
    The session Skewed Data, Poor Cardinality Estimates, and Plans Gone Bad by Kimberly Tripp (@KimberlyLTripp) has been published on channel SQLPASS TV.
     
     
    Abstract
     
    When data distribution is heavily skewed, cardinality estimation (how many rows the query optimizer expects each operator to process) can be wildly incorrect, resulting in poor quality query plans and degraded performance. You've probably seen the advice to update all statistics if a query plan looks wrong – but is that the right advice? In many cases, no! These are "sledgehammer" approaches, and while they might solve some problems (usually parameter sniffing problems), they don't solve the actual problem. In this session, you'll learn a generalized yet tailored-to-the-table way to solve query plan quality problems for very large tables (VLTs). Topics will include creating, using, and updating filtered statistics; using forced parameterization and templatized plan guides; and understanding stored procedures and how they can leverage filtered statistics.
     
    Enjoy!
    16 Feb 05:52

    Romancing the Data….

    by Karen Lopez

    image

    Today is Valentine’s Day in many parts of the the world.  That means either you are looking forward to a happy day full of fun and a night full of …fun… or you are are planning on catching up with Frank Underwood on Netflix.  Both sound great to me.

    Last year I wrote about 5 Naughty and Nice Ways to Love Your Data.  This year I’m going to focus on ways you can romance your data for a stronger, more lasting relationship.  So I’m assuming in the past you’ve followed my advice and have long since left the honeymoon phase of your data coffee dates.  But where are you now?  Are you starting to feel like maybe you need some more passion with your bits and bytes?  I’m here to help.

    1.  Tell your data you love it.  Often. 

    Heck, even show it you love it. Maybe one of the reasons your data has let itself go is that you haven’t told it how much you love it. Do you even remember the things you used to say to woo your data when you first met?  Do you have actively managed data models: conceptual, logical, and physical?  Do you give your database objects great names?  Do you keep good metadata about this data?  Do you follow data model-driven development? If you did all these in your early years of your relationship, are you still doing all that now? Are you doing all this in a modern way, not just the way you did it in 1980? Do you just talk a good game, but fail when it comes to actively showing it love?

    Some day, when I’m awfully low,
    When the query is slow,
    I will feel a glow just charting  you
    And the way you look tonight.

    You’re lovely, with your axes so true
    And your bars so blue
    There is nothing for me but to report you,
    And the way you look tonight.

    With each crow’s foot your normalization grows,
    Tearing my pages apart
    And that CHAR that wraps your text,
    Touches my foolish heart.

    Yes you’re lovely, never, ever refactor
    Keep that structured charm.
    Won’t you never change it?
    ‘Cause I love you
    Just the way you look tonight.

    Data FTW Candy Heart.

    2. Stop with the games. 

    We’ve all seen it in personal relationships.  One person makes everything a game.  Do you store your data in one format, say ZIPCodes as INTEGERS, but have to pad out all those missing leading zeros every time you have to deal with North Eastern United States postal codes?  Stop doing that. Do you pretend that doing something faster is always better than doing it good enough?  Forget perfect. Good enough.  Do you tell management you have data models but all you really do is reverse engineer them?   It’s all games.

    Daylight, alright
    I don’t know, I don’t know if numbers are REAL
    Been a LONG night and something ain’t right
    You won’t SHOWPLAN, you won’t SHOWPLAN how you feel

    No DATETIME ever seems right
    To talk about the reasons why CAST and I fight
    It’s DATETIME to end the TIMESTAMP
    Put an end to this game before it’s too late

    Data games, it’s you and me baby
    Data games, and I can’t take it anymore
    Data games, I don’t wanna play the…
    Data games

    HAWT Data Candy Heart.

    3. Know where your data lives

    Do you have an active inventory of what data resides where?  No?  How can you romance data you don’t know about?  If a server walked out the door of your organization, how long would it take you to figure out what was on it?  If a user had a legal need to access all the data the company held about a customer, would you be able to tell them?  If you really wanted a happy strong relationship with your data, you’d know.  Yes, it’s a lot of data to track where you data is.  That’s why they invented tools that do this.  And why data professionals are expected to use them.

    Data is bigger
    It’s bigger than the drives and they are not PB
    The servers it is spread to
    The bits in your drives
    Oh no, I’ve duplicated too much

    I set it up
    That’s me in the ETL
    That’s me in the database
    Losing my governance
    Trying to keep up with it all
    And I don’t know if I can do it
    Oh no, I’ve deployed too much

    I haven’t documented enough
    I thought that I heard you laughing
    I thought that I heard you coughing
    I think, I thought, I saw you cry

    Data Kisses Candy Heart.

    4. Stop faking it.

    Yeah, sometimes little white lies are good for a relationship (BTW, You DO Look Beautiful!).  But the big ones? Nope, never.  The paranoia about NULLs often leads to a lot of lying.  Do you pretend that NULLs don’t exist by giving them various fake values like 999999 or N/A, UNKNOWN, WHO KNOWS or  __ ?  Does every developer get to choose their own NULL Imposter Text?  Are your aggregates all a huge lie due to all those zeros and 1980s dates you use to lie to your database?  Stop it.  It’s not helping that your queries are 2 ms faster when the data is one big lie.

    Late at night a big database gets slower
    I guess every normal form has its price
    And it breaks her data to think her love is
    Only given to a user with queries as fragile as ice

    So it tells me it all adds up just fine
    To aggregate the sales numbers for every town
    But only the dev knows where those NULL have been killed
    And it’s is headed for the cheatin’ UNKNOWN town

    You can’t hide your lyin’ nines
    And your N/A is a thin disguise
    I thought by now you’d realize
    There ain’t no way to hide your lyin underlines….

    Sexy Data Candy Heart.

    5. Protect it.

    Do you l et just anyone throw code at your data without ensuring it’s treated right?  Do you participate in security and privacy reviews of application code?  You have those, right? Do you have metadata that describes the privacy and sensitive data requirements for each data element? Do you ensure that things like SQL injection tests happen for every application?

    Oh where, oh where can my data be?
    The dev took her away from me.

    She’s gone to pastebin, so I’m gonna be sad, 
    So I can see my data, by now I’m so mad.
    We were out on a date in my modelling tool,
    I had been too much a fool.

    There in the database, all laid out,
    a data was there, the database queried by a lout.
    The dev allowed the inject, the data failed to be right.
    I’ll never forget, the sound that night–
    the screamin users, the bustin app,
    the painful scream that I– heard crash.

    Oh where, oh where can my data be?
    The dev took her away from me.
    She’s gone to pastebin, so I’m gonna be sad,
    So I can see my data when my new job is had.

    image

    Keep saying it. Keep doing it. 

    There’s so much more you can do to revitalize your relationship with data.  But if you do these, your data will keep on loving you back. I promise.  Remember, you data wants to love you back. It’s up to you to make sure it’s still there in morning.