Blog Archive

Home » Blog

Keep the Focus Outline

This post originally appeared on my blog.

Animated GIF screen capture of Virgin America site.
This animated GIF is a screen capture of cycling through every interactive element (mostly links) on the page using just the tab key. You’ll note that in all but one case, the only indication of any change is in the lower left in the browser’s status bar where it shows the URL of the destination link. The URLs ending in a “#” are the booking options.

Today’s rant is inspired by all the gushing over Virgin America’s new web site — just because it’s responsive.

To be fair to Virgin America, making its site responsive is a huge win for users whose primary method of booking is via a smartphone or tablet (or, god forbid, phablet or tablone). Its new site, however, is a huge step backward for users who rely on the keyboard as their primary method of interaction.

Virgin America’s CSS has a style to identify anchors with focus (yes, there are other elements that should get focus, but I am looking at just the most basic support): a:focus {outline: thin dotted;}

What’s so frustrating is that the useful style is then overridden with this harmful declaration: a:focus {outline: none;} This override greatly decreases the usability and accessibility of the site. Unfortunately, this practice is still common on many more sites across the web.

As a web developer, one of the simplest accessibility tests you can do is unplug your mouse. Two quick things to review as part of that: Can you interact with all controls with only the keyboard? Can you tell which item has focus?

Even if you aren’t motivated to run that simple test from an overriding sense of being nice to your users, there’s a legal concern here. As I wrote last week, the U.S. Department of Justice held H&R block accountable to Web Content Accessibility Guidelines 2.0 Level A and AA Success Criteria. That means there is case law for making your consumer-facing site comply or face penalties.

By excluding focus styles, Virgin America is running afoul of one of the AA Requirement 2.4.7:

2.4.7 Focus Visible: Any keyboard operable user interface has a mode of operation where the keyboard focus indicator is visible. (Level AA)

In short, if your site doesn’t make interaction elements obvious when accessed via keyboard, not only are you hurting users, you’re opening yourself up to litigation.

Further Reading

Again, this isn’t a new issue. It even has its own mini-site at, which offers these handy links:

To add another, this article, When Do Elements Take the Focus?, might be handy to understand just when you can expect to see :focus styles get applied by a browser.


In March I wrote about how Google removed underlines from search result links. My concern there was that web developers might follow suit. Between removing keyboard focus indicators and underlines from links, I am amazed that developers do so much to make the core interaction element of the web essentially hidden to so many users. I am reproducing the list of related links here as they are relevant to the overall issue of keeping links usable:

My Efforts to Reach Virgin America (so far)

I may have contacted Virgin America on Twitter once. Or Twice. Or three times. Perhaps even a fourth time. And filed a bug with And left a comment at Wired’s article. I’ve embedded the tweets below so you an retweet if you are as whiny as I.

Update: June 27, 2014

On December 12, 2013 a rule became effective from the U.S. Department of Transportation (DOT) titled Nondiscrimination on the Basis of Disability in Air Travel: Accessibility of Web Sites and Automated Kiosks at U.S. Airports. That links points to the following section on accessibility:

Finally, we proposed a tiered implementation approach in which the WCAG 2.0 standard at Level A and AA would apply to (1) a new or completely redesigned primary Web site brought online 180 or more days after the effective date of the final rule; […]

As keyboard accessibility is one of the requirements of WCAG AA compliance, Virgin America’s new site does not honor this rule. However, if the Virgin site officially launched before June 10, 2014, then it squeaks by on a date technicality.

More information on the implications of the law are in the post New accessibility rules coming to airline websites. Are you ready?

What do you think of the NY-SHIP?

If you’re a provider, a payer, or a community group, what do you think of NY’s Health Improvement Plan (NY-SHIP)? On June 10, the P2 Collaborative hosted Hope Plavin and Joseph Anarella from the Quality and Patient Safety team at the New York State Department of Health. They responded to questions, offered insight, and accepted feedback. Everyone was clearly engaged. If you’re like me, working in Health IT, you might be curious about what concerns care leaders in our community:


  • How can we increase the clinical workload of providers without shrinking the administrative load?
  • Small and rural primary care physicians like the idea of value-based payments that incent them to spend more time with their patients on preventative efforts. But how will small practices stay in business when the administrative requirements keep increasing? For example, in the Finger Lakes CMMI grant, several small practices are sharing care coordinators. How can NYS help small practices survive the big process changes, not just the larger physician groups? How can we use the same programs to transform care among all providers regardless of size? Would an internship program relax some of the administrative burden?
  • The ongoing paperwork required for Patient-Centered Medical Homes prevents small and rural practices from even considering them. How likely will small and rural practices participate in the Advanced Primary Care model (especially stage 2 and 3)?
  • Can NYS agree on just one set of metrics across all programs? It’s an administrative burden to capture the same idea three slightly different ways for three different programs. NYS wants to align provider metrics with the NQF/NCQA standards, and stated that they’re urging CMS to do the same.
  • If we don’t win the CMS grant, what happens? The CMS grant goes for 48 months from 2015 to 2018, with a four-year sustainable period following it. If we’re not accepted, NYS will continue to push ahead on some of the programs regardless of CMS funding, while others will be delayed or curtailed. In the absence of funding, NYS expect that pilot projects, innovation programs, and surveys of community needs probably won’t happen. Those programs that move ahead would be more fragmented.
  • On the SHIN-NY (a network of exchanges for clinical data among providers), patient consents vary from RHIO to RHIO (the exchanges). This could hold back the SHIN-NY until this gets resolved. For example, in WNY, we’ve obtained a community-based consent to exchange data; patients fill out just one consent form at their PCP that covers all physicians participating in our RHIO, HEALTHeLINK. In contrast, some other regions seek consent from each practice individually, making community-wide change much harder.
  • Can providers get tax breaks for modernizing our practices? That might be a real incentive.
  • Is the pace of transformation too rapid? Long hours discourage medical students from entering the profession.
  • Can you relax nurse supervision regulations so that more nurses can operate under a single physician? This kind of workforce reform could multiply the value of our existing professionals and attract new ones too.


  • Population health metrics can’t come from claims data. The front lines are too distant from the payer to capture what happens there, and isn’t gathered in the same way that the metric formulas specify.
  • Cost transparency is slowly moving forward. As an example, there’s an innovation challenge worth $40k for software developers to create apps that help patients shop smarter.

Community Groups

  • How will we sustain care transformation programs after the initial funds disappear? NYS would like to see care givers get more efficient, and to convince payers to cover investments to that end. The answers probably vary by region. Can we continue testing grants to promote experimentation and capture successes?
  • Can NYS support evidence-based home visit programs to keep patients out of more expensive and intrusive care paths? It could be cheaper and more effective in the long term.

At the bottom line, NYSDOH supports healthcare transformations that are based on evidence, with measurable, concrete activities.

Finally, I’m pleased to learn that NYDOH has begun implementation on the All-Payer Database with Salient Management Company. I think this is one of the most politically difficult areas for government and payers to work together, and I’m glad to see this is moving. NYS mentioned that Medicaid claims are already available, with Medicare and qualified health plans up next. Commercial payers will come later. Can you guess why?

By the way, here are some recent posts with background on the NY-SHIP:

A Quick Primer on Hosting Videos

Whether captured with a phone or professionally produced, video is proving to be a powerful medium on the web and posting it on your site can improve user experience and possibly even bolster your search results placement.

So let’s say that you’ve got a video and you want to put it on you web site. Now what?

Edit for Length and Quality

Video files can be extremely large so you should cut out any unnecessary bits to keep the file size as small as possible. That will also help ensure that you are providing your users with quality content.

Accessibility Check

Depending on the content of your video and your audience, you may need to have it transcribed or captioned to meet legal obligations (and foster a positive user experience).

Output for Web

Video support has changed a lot in the last few years so you’ll need to make sure you output your video in a common format. Although there is some support for WebM and Ogg formats, I recommend using the MP4 format with a H264 video codec and an AAC audio codec.

Choose Your Hosting Solution

There are a lot of different options out there, but in most cases it will be easier to host your video externally with a third party solution (like YouTube, Vimeo, or Wistia) and use the tools provided by that service to embed it on your web site. Here’s why:

  1. Hosting your video with a third party means that you don’t have to worry about added strain to your server or the potential costs associated with it.
  2. Most hosting services will optimize your video for the greatest possible support across browsers, platforms, and devices. When you upload the video, they may even create multiple copies of it in different formats to be served up as needed to support the user’s setup.
  3. Most third party solutions will already come with a video player. Your video won’t play itself; you actually need a player with controls to play, pause, etc.
  4. Many video hosts like YouTube and Vimeo also include a marketplace where users can browse and search for uploaded videos. That provides added exposure to a potentially huge audience, but they will also usually allow you to keep your videos private if you prefer.
  5. Third party solutions offer tools to share or embed your video quickly and easily. They’ll usually provide a snippet of HTML that you can paste into your site and you can display the video as if you hosted it yourself.

Video Hosting Solutions


YouTube is great, because it’s free, incredibly easy to use, and has exceptional support across the various browsers, devices, and platforms. However, it can lack a certain professionalism and there are ads.


In my mind, Vimeo is essentially the hip alternative to YouTube. The videos (in general) tend to be a bit more polished and professional. It’s also free, easy to use, and has great support and they offer a paid solution if you need a richer set of options.


I only recently started working with Wistia when a client came to me with this exact question and, for professional web sites, it has become my preferred solution. Their free option is pretty limited so it does come with a cost in many cases, but they have a really great suite of tools and it’s still quick and easy to setup like the others.

Hosting video yourself

There a lot of reasons why you might choose to host a video yourself, but if you go that route, you’ll need to select and implement a video player on your site. Here are a couple of players that I’ve worked with:

JW Player

I’ve worked with JW Player for several years and I’ve found it to be a solid player with really good support across the board. It’s an excellent paid solution for professional web sites.


Video.js is an HTML5 video player with a Flash fallback for older browsers. This solution may take a bit of custom implementation, but is otherwise free.

Once the player has been implemented, you just need to upload your video and reference it on the appropriate page.


Video can be a lot of work, but there are solutions out there that can make it a lot easier and help you reap the rewards for your efforts. I’ve mentioned just a few solutions that I’ve worked with, but please add your recommendations to the comments.

Accessibility Regulation Confusion from U.S. Government

This post originally appeared on my blog.

There has been some activity lately from the U.S. federal government related to accessibility requirements for web sites. Unfortunately, that activity is sending a mixed message to many burdened with making a case for accessibility compliance in the private sector.

Good News

The U.S. Department of Justice (DoJ) made news in the accessibility community back in March by issuing a Consent Decree in a case with H&R Block requiring H&R Block to follow the Web Content Accessibility Guidelines (WCAG) 2.0. From the DoJ press release:

On Dec. 11, 2013, the Civil Rights Division and the U.S. Attorney’s Office for the District of Massachusetts filed a complaint in intervention in the lawsuit National Federal [sic] of the Blind (NFB) et al. v. HRB Digital LLC et al. to enforce Title III of the ADA [Americans with Disabilities Act]. […]

[…] The recognized international industry standards for web accessibility, known as the Web Content Accessibility Guidelines (WCAG) 2.0, can be found online and are freely available to help companies ensure that individuals with disabilities can fully and equally enjoy their web-based goods and services.

Under the terms of the five year decree, H&R Block’s website, tax filing utility and mobile apps will conform to the Level AA Success Criteria of the WCAG 2.0. […] H&R Block will also pay $45,000 to the two individual plaintiffs, and a $55,000 civil penalty.

Essentially the DoJ stepped into a lawsuit, identified an accepted standard to follow, and put some teeth in its action in the form of a financial penalty (both in cash and H&R Block’s cost to rebuild its offerings). For those who champion accessibility, this is a win.

It’s not the first. Back in 2012 the DoJ filed a Statement of Interest in a battle between Netflix (never mind that it’s in a PDF) and the National Association of the Deaf that the absence of closed captioning violates the ADA. Earlier this year it also filed a Statement of Interest in a case against Lucky Brand Jeans (another PDF) for its inaccessible customer-facing credit card swipe machines (which probably inhabit far more stores than just Lucky’s).

The DoJ has effectively been enforcing ADA laws for private entities, not just state and local governments. This is A Good Thing™

Bad News

Let’s ignore the fact that the DoJ can’t get the name of the National Federation of the Blind correct in a press release, or that the ADA site provides Statements of Interest from the DoJ as PDF files (you can learn some more about PDF accessibility at Denis Boudreau’s a11y Tips site).

The Laws

The DoJ was expected to release a set of legally binding standards for web site accessibility back in April. That deadline flew by with hardly a word from the DoJ. Instead, buried in a Unified Agenda (a catch-all planning document), The DoJ casually mentioned that it’s been delayed until March of 2015. You can credit Seyfarth Shaw LLP for catching that one.

As the Law Office of Lainey Feingold notes, this has been happening for years:

The web regulations have been pending since July 26, 2010 when the DOJ issued its Advanced Notice of Proposed Rule Making (ANPRM). The public comment period ended on January 24, 2011. Ever since then, the DOJ has been announcing deadlines for the next step — and then moving those deadlines as the target date approaches.


The H&R Block Consent Decree has some dates associated with adhering to the ruling. One of them (14.d) has come and gone:

  1. Web Accessibility Policy [underline theirs, not mine]: By June 1, 2014, H&R Block shall adopt and implement a Web Accessibility Policy consistent with the attachment at Exhibit A and as approved by the Private Plaintiffs and the United States. By June 1, 2014, H&R Block shall: […]
    1. make publicly available and directly link from the homepage, a statement of H&R Block’s policy to ensure that persons with disabilities have full and equal enjoyment of the goods, services, facilities, privileges, advantages, and accommodations of H&R Block, through, its mobile applications, and its Online Tax Preparation Product; […]

When I visit the H&R Block home page, I see no link or content related to accessibility, disabilities, nor the ADA (if I am wrong, please correct me). I even made an archived version from the Wayback Machine so you can see it in case H&R Block changes it tomorrow (see how you can make your own).

Granted, that requirement is only a week overdue, but given that the DoJ is four years overdue on issuing regulations, one could argue that deadlines don’t carry much weight with the DoJ.

Just Setting a Good Example

The DoJ site itself is not exactly a shining beacon of accessibility. From the odd image map on the logo (really, one image, two links to the same location?) to text as images, it could use some help. If you head over to the DoJ Acccessibility Information page you will see it states that the DoJ is committed to provide its content in accordance with Section 508 of the Rehabilitation Act.

If you’ve been working in web accessibility, then you may be aware of the government web site devoted to Section 508, which requires that Federal agencies’ electronic and information technology is accessible to people with disabilities, and which is intended to be used by federal employees:

As I challenged on Twitter, try using it with your keyboard. Go ahead. Just try it.

For the more technical among my readers, here’s an example of the CSS declarations of agony (files linked in this tweet):

For added fun, find the Skip link and then see where it takes you.

The government body in charge of creating rules for making sites accessible is built based on the requirements of a federal site that itself is a complete cluster. It may, in fact, be a brilliant parody site showing government workers how not to build a compliant site.

Or it might really be the best they can do.

What You Should Do

Keep coding (or start coding) your sites to meet Web Content Accessibility Guidelines 2.0 Level A and AA Success Criteria. This is the requirement the DoJ put in its ruling against H&R Block, the most recent example we have of where the federal government is defining a standard.

And then stop worrying. As WebAIM notes, fear of litigation isn’t the best reason to make a site accessible. You should do it because it’s the right thing to do. Of course, in my HTML5 Developer Conference talk, I argue that making accessibility all about you (slide 13) is probably a more effective means of getting developers to implement, but I leave that decision up to your personal level of narcissism.


  • Assets, the accessible, Bootstrap-based development framework from the federal government (really from the Centers for Medicare & Medicaid Services).

Update: June 9, 2014

Read my post about Assets, the U.S. government framework based on Bootstrap 3, and PayPal’s accessibility plug-in, which promises to make your existing Bootstrap implementation accessible: Accessible Bootstrap Frameworks

Update: June 25, 2014

In a release last week from the National Federation of the Blind (NFB), the NFB and a bling business owner reached an agreement with the Small Business Administration because its web site violated Section 508 (read a brief from the law firm representing the NFB). This is newsworthy for two reasons:

  • The SBA is a government agency and is being held to the only current federal law pertaining to web site accessibility, effectively stating the government has to follow its own rules.
  • The site, the one housing the rules to which the SBA is being held, doesn’t follow those very rules, as I noted above.

I am struggling to find a way to describe how absurd this is. I am open to suggestions.

A Look at the CMS Medicare Geographic Variation Dashboard

The open government and open data movement continues to gather steam.  The Centers for Medicare and Medicaid Services (CMS) announced their latest addition to this treasure trove of data at this years’ Health Datapalooza conference in DC.  The Medicare Geographic Variation Dashboard gives us a tool to better understand Medicare utilization and how it varies across geographical regions.  The release is exciting for a couple of reasons.  First, it packages the data up into an easy to use interface that allows the non-technical user to quickly get started.  You don’t have to download the raw data, and you don’t need expertise with a database engine or analytic suite. You can just open the state or county level dashboards and get started right now!  And if that’s not enough for you or you just want to dig a little deeper, all of the raw data is available here.  It contains all of the supporting data and much more, broken out by year (2008-2012).

I won’t get into any specific analysis of the data in this post. This Commonwealth Fund Washington Health Policy Week In Review offers a few examples of the types of insights you can derive.  Here, I just want to take you on the tour of the tool so that you can get started on your own analysis.

Note: The dashboard does require an Adobe Flash plug-in.

State: Geographic Variation Dashboard

The state-level tool opens up to a snapshot of the Total Per Capita Costs for each state in 2012.  Click on the map to select a state and you’ll be presented with a summary of how that state’s standardized costs compare to the national averages as a total and across specific segments like Inpatient, Post-Acute Care, Hospice, and more.  Lastly you’ll get a look at how that state’s costs have trended year-to-year from 2008 – 2012 and how it compares to the national trend over that same time period.

Here’s a look at Florida:

CMS State Level Geo Variation Dashboard

County: Geographic Variation Dashboard

The county dashboard lets you drill down and compare the numbers across every county in each state.  It’s backed by a ton of data, so you’ll have to be a bit patient while it loads. Once you’re in there you can select a state from the map and get a snapshot of how each county’s costs stack up to the state and national per capita costs.  Again you have the option to look at total costs or drill down into more specific areas of spending.  Also, you can select an individual county from the drop-down and compare its costs to the state average.

Here’s a look at Albany County in New York:

CMS County Level Geo Variation Dashboard

You can also look at a time trend for a specific county by selecting the “Time Trend” option on the bottom-right. Here’s a look at the trend in Part B Drug Per Capita Costs in Erie County New York from 2008-2012:

CMS County Level Geo Variation Dashboard - time trend

This is just one example of a vast and growing number of publicly available data sets from CMS and others.  Check out the Research, Statistics, Data and Systems page for additional CMS resources and check out our post on Open Healthcare Data Sets for some more.

Building Software to Reduce Manual Input

No, I’m not referring to paper-copy vs. digital-copy efficiency gain. I’m referring to whether your software / application requires automatic processing or if it can rely solely on manual input.

Take, for example, a new report you are adding into your application. Your boss needs to run a report every Monday morning to review the System Activity from the previous week. Quickly, you program a report that allows your boss to generate this report after logging into the application. The requirements are fulfilled - your boss has the reported he/she needs.


Did you consider whether you could eliminate steps and auto-generate the report? Consider these items:

  • The functionality has a predictable or recurring frequency
  • The functionality has a predictable or static set of inputs
  • The functionality has a predictable or static recipient

If you can answer the question Who, What, When and How, then there is merit to turn this functionality into an automated process. Imagine how your boss would feel when they open their email for the first time Monday morning and there, awaiting review, is the generated report.

Along with any other system design, adding in this automated functionality requires the necessary design, construction, and testing. In the example I gave above, the time savings in comparison to the efforts/costs of automating the report may not provide the value needed to automate the report. But what if that report is required every hour? What if it needs to be reviewed by 10 people? These are the questions that should be asked before the functionality is built. These are key areas we focus on during our Requirements Analysis phase. See Steve O’Keefe’s previous post further describing Requirements Analysis.

If we automate this process…

  • What is the time saved when staff does not have to perform this functionality manually?
  • What does this free up our staff to do? Can they accomplish another task or generate additional revenue with this time saved?

Ultimately, these questions need to be answered in order to accurately determine if automation is the way to go. How have you been able to improve productivity by adding automating software functionality?

A Friendly Reminder – Good PM Saves Money

As many blogs posts go, this is not about anything profound. Sometimes we all just need a little reminding about what we already know.

Feedback CheclklistProspective clients are all concerned about many of the same things. How do we get a new website without the process interfering with operating our business? How do I keep costs to a minimum, but get a high quality, custom website that truly reflects our organization? How do I ensure this project doesn’t drag on for months and months and months?

Simple answer: assign one individual to focus on the project and give that person a good deal of, if not 100% of, decision making ability. Shazam! You just accomplished most of what you wanted to achieve.

Input from the many departments or vested parties in your organization is important. IT, marketing, operations, management, owners, etc. should all provide input into the project and provide that input to your project manager. It’s important that everyone feels they contributed or was able to steer the new website’s direction at some level. You can even pull someone in as needed to address road blocks or issues along the way. Do yourself a big favor though, don’t require everyone be a part of the whole process and don’t make decisions by committee.

As all good project managers know, a good project requires a lot of good preparation and planning. In advance, identify potential bottlenecks. Most vendors with any experience at all will have a good idea of how to guide you. It’s a fine line between wanting input from the vendor (expert) and being decisive about what you want and need. Be as specific as you can about your goals and objectives, listen to the input from your vendor along the way, and try your best to limit response time when your vendor needs feedback or approval. There are no guarantees, but this should help your success rate.

Good luck with your project!

Accessible Bootstrap Frameworks

If you work much with accessibility, then you might consider the title of this post to be an oxymoron, a self-contradicting mess. Frankly, I tend to agree. Barring a compelling use case, I never start a project with Bootstrap and I resist including it when explicitly requested (so far successfully in nearly every case). Of a few reasons, accessibility is the biggest issue I have with it.

There are, however, a couple options to mitigate the accessibility mess that is Bootstrap.

I should note that this post is a follow-up to the Q&A after my talk at HTML5 Developer Conference, Selfish Accessibility, where I gave some advice about Assets which, at the time, was using Bootstrap 2 (it has since moved to version 3).

Screen shot of
The Centers for Medicare & Medicaid Services (CMS), a division of the US government (specifically HHS), has emerged as an unexpected champion of accessibility for Bootstrap and made its own framework, Assets (first announced in late 2012). This may not be a surprise to many when you consider CMS’s role working with people who are older and/or in need of some form of medical assistance (equipment or services). Arguably, its constituency stands to benefit the most of any division of the US government.

Assets was just updated to use Bootstrap 3 (which should make many a Bootstrap user happy). Assets promises you:

Section 508 compliant, cross-browser compatible UI components that you can use in your accessible web site or web application. Assets is an accessible, responsive, modern framework.

If you are an organization that works with the federal government to build web-based applications for the general public, then it may be a no-brainer to use this framework. Arguably your Section 508 accessibility requirements are met to a high degree, and where the framework fails you may be able to make a case that you are using a government-sanctioned tool. It doesn’t let you off the hook for more fundamental accessibility failures (color contrast, images as text, infinite scroll, etc.).

The accessibility statement identifies the profiles used for testing. The documentation page links to all the UI components, which is handy. Jennifer Sutton has also provided links to tests she made with the calendar widget over at the WebAIM mailing list (though she was using version 2).

There are some caveats. On the spectrum of Internet Explorer versions, it only supports version 8 and above (the last version, built on Bootstrap 2, also only supported IE8+). The files are served from a US government CDN, which while not bad in and of itself, should require you to test them to make sure it serves the files as well as a commercial CDN. For example, icon font FontAwesome is served via the Assets CDN, though you may want to compare against others given its ubiquity on the web.

The Assets documentation also provides links to a Medicare style guide and a style guide, both of which require a login to see, severely limiting their value to sub-contractors.

PayPal’s Accessibility Plug-in

Screen shot of PayPal Bootstrap accessibility plug-in on GitHub.
If you refuse to use anything from the US government, you can head to the other end of the spectrum and use the accessibility plug-in from PayPal.

According to PayPal:

This plugin adds accessibility mark-up to the default components of Bootstrap 3 to make them accessible for keyboard and screen reader users.

Because it’s an add-on to your existing Bootstrap 3 code, it should just work. It will make the following default UI components accessible: Alert, tool-tip, pop-over, modal dialog, drop-down menu, tab panel, collapse, and carousel. You can pop over to the demo page and test it out with and without the plug-in (use a keyboard to understand the benefits).

As with Assets, this doesn’t guarantee that what you build will be accessible. You still need to consider the same items I cite above along with many many more accessibility elements which cannot just be handled with a plug-in nor a checklist.


The Canadian government has created its own framework, also intended to be accessible, usable, interoperable, mobile friendly and multilingual. The Web Experience Toolkit (WET) has just moved up to version 4.

While not a framework nor an accessibility add-on, the United Kingdom has a handy style guide to make all its properties look consistent: GOV.UK elements

There may be hope for government web sites after all, though just don’t try to use with a keyboard.

Update: July 7, 2014

Heydon Pickering has updated his Revenge.css to work with some Bootstrap shortcomings. If you aren’t familiar with Revenge.css, it’s a handy CSS file you can call via a bookmarklet to highlight accessibility issues in your CSS file (like removing outlines, or forgetting the :focus selector when you use the :hover selector).

Free SQL Server Tools

sqlserver2012[1]I have heard people say that SQL Server is just too expensive for my project or my business. This typically pushes someone toward MySQL or other free/open source variants of a relational database management system. While I can’t do much to help with the licensing costs of SQL Server, I can help show you tools that you can use to manage your SQL Server without any additional expenditure!

Want to Tryout SQL Server?

Download and setup the a Free 180 day evaluation VM from Microsoft with SQL 2008 R2 for the testing and playing around. SQL 2008 R2 180 day free Evaluation VHD can be found here 

Once you have the VM setup, download and restore the AdventureWorks DB, this will be great for playing around and testing out the following tools.

In order to really try these tools, you’ll need to generate some load on your SQL Server.

Try out these tools for generating load on your SQL Server, they can make hundreds or thousands of requests per minute to simulate users pounding on your system. They can even stress the underlying disks that store the data.

IOMeter -
SQL Load Generator -
Benchmark Factory for Databases -

Let’s start looking under the hood!

When a SQL Server is under load, there is a huge wealth of information that becomes available, now we just need an easy way to see it. Check out these tools to help you get at those SQL Server internals.

Internals Viewer for SQL Server -
SQL Server Cache Manager -
SQLIO Disk Subsystem Benchmark Tool -

Now that we can see what’s happening underneath the hood, how might we find the problems that are occurring?

The secret is not to try and find the problems yourself!!! There are WAY smarter people than me out there that have already done a ton of leg work to get you closer to the problems on your SQL Server. Some of my favorite SQL Server professionsals are  Brent Ozar, Adam Machanic, Grant Fritchey Karen Lopez and Kendra Little. Below is a tool from Codeplex that pulls together TONS of sql scripts from professionsals around the globe into one handy toolbox.

DBA Toolbox -

Still Need Help?

Well, I have 2 free options and one paid option. The first free option is to use Twitter and ask your question with the hash tag #SQLHelp. You will get responses from all kinds of SQL professionals across the world. But be wary of the answers, don’t take anyone’s scripts and just run them on your server!! Make sure you know what the scripts are doing before you press F5! The second free option is attending SQLPASS events, these are free training events only about SQL Server!

Lastly, if all else fails or you just want some additional help, call Algonquin Studios :)



A Few Good Shortcuts

I thought, for my first post here on the Algonquin Studios blog, that I’d share a few “secret” Windows keyboard tips that I use so frequently they’ve become second nature. I’m anticipating you’ll find at least one of the following either new, useful, or, hopefully, both! Whether you are a clever clicker or a keen keyboardist, I’ll bank on you finding value in these:

Using Explorer

Windows + D and Windows + Tab

My desktop is often cluttered, with many items open at one time. Between applications, messaging, and emails, I’m constantly flipping back and forth to bring what I’m looking for into focus. But, in the flick of a wrist, I can easily minimize everything and bring exactly what I am looking for to front:

  • Holding down the Windows icon key and pressing “D” will minimize everything and show your desktop. While still holding the Windows icon key, press the Tab key. You’ll see all of your open windows and applications begin to cycle. Press the tab key until you reach the desired window or application and it will be brought into focus. You can also hold the Windows icon key and press “D” then “E” to close everything and open a new Explorer window instantly (and one handed!).


Every so often you need to rename a file, or two, or twenty. You can always right click and select the “Rename” option, but that moves your hands off your keyboard. You can click on the file once it’s already highlighted, but I often accidentally double click the file and then it opens. Argh! Here’s a better method:

  • Simply pressing the F2 key when the file is highlighted will jump you right to renaming the file. Pressing enter will save the new name. For an added bonus, use this key when modifying cells in an excel spread sheets and your hands will never leave the keyboard. Talk about fast and efficient!

Using a Browser (Chrome, Firefox, IE)

Ctrl+ PgUp and Crtl + PgDn

  • Holding the Control key and pressing the PageUp or PageDown key will cycle through your open tabs in your browser. I find this beneficial when typing for two reasons: I don’t need to use my mouse and, when I return to my tab, I can resume typing right where I left off.

Ctrl + Shft + T

  • It’s commonly known that holding the Control key and pressing “T” will open a new tab in your browser. However, holding the Control key and the Shift key, and then pressing “T” will open the last tab you closed to that page it was on. If you’re like me, and you often close the wrong tab, then this is the shortcut for you –  it’s the “undo” of the browsing world! This shortcut might not increase efficiency, but it’s sure to reduce frustration. You closed three tabs? Simply keep pressing “T” until your required tab has returned. Closed the whole browser window? Re-open the application and  Ctrl + Shft + “T” until your tabs are returned.

Text Editing

Highlighting Text

These are by far the most useful. They might take a while to get used to, but you’ll type more efficiently as a result:

Ctrl + Arrow

  • Holding the Control key, and pressing any arrow key, (←, →, ↑, ↓), will move the cursor in that direction.

Shft + Arrow

  • Holding the Shift key, and pressing any arrow key, (←, →, ↑, ↓), will begin to highlight text from the cursor, in the direction of the arrow.

Ctrl + Shft + Arrow

  • Holding the Control key, the Shift key, and pressing any arrow key, (←, →, ↑, ↓),  will not only highlight the text in that direction, but let you jump to the end of each word or white space. This is great for highlighting sections of text and might be my most used short cut.

Shft + Home and Shft End 

  • While holding the Shift key, press the Home key. This will move the cursor to the beginning of the line, while highlighting everything in between. Visa versa; try Shift + End to highlight the rest of text in the line, starting from where the cursor is.

Ctrl + Shft + C

  • Holding the Control key, the Shift key, and pressing “C”, will copy the entire line of text that the cursor is currently on, even if it is not highlighted.

Ctrl + Space

  • When a selection of text is highlighted, holding the Control key and pressing the Space Bar will remove formatting from that selection of text. This is another one of my favorites.

Let’s say you have a selection of text that is Size 16, bold, underlined, and RED, pressing control shift will remove all formatting from the text, and set it to the default font and format of the text editor you are in. This is great when copying text from a web site and formatting it to fit your document or email. Unfortunately, it doesn’t remove background color, bullets, or numbering, this needs to be done manually.

There you have it folks! I hope you found something new or useful here; feel free to share this if you know someone else who might find the list useful!

Here a few links for further information and more shortcuts:

Keyboard shortcuts from Microsoft

20 essential PC shortcuts from Microsoft

Handy Keyboard Shortcuts (Browsers) from