Web apps get the ultimate endorsement Windows 8

With the Internet’s importance steadily gaining, it’s not as if Web programmers needed an ego boost. But Microsoft has given them a major one anyway with a radical change coming in Windows 8.

The next-gen Windows will come with a new programming foundation, letting developers build native apps with the same techniques they use for Web applications. Microsoft calls this new variety “tailored apps.”

It’s a bold move for the company. Microsoft’s financial fortunes have depended heavily on Windows sales, and Windows’ continued momentum has depended heavily on the wide range of software written to use Windows’ direct interfaces.

Tailored apps, in contrast, use a higher-level interface: a browser engine. Now we know why Microsoft has been so gung-ho on IE9 over the last year.

Why this sharp break from the past? Microsoft isn’t commenting on its rationale beyond speeches earlier this month, but here’s one very good reason: ARM processors.

Today’s ARM processors, from companies including Qualcomm, Texas Instruments, Nvidia, Samsung, Apple, and Freescale, are usually used in mobile devices. But they’re growing up fast, and Microsoft is designing Windows 8 to run on ARM chips, too.

Windows has run on other processors besides x86 chips from Intel and AMD–Itanium, MIPS, Alpha, and PowerPC. Although each of those versions has been abandoned over the years, Microsoft clearly has adapted the Windows code base for processor independence.

Getting programmers to come along is another challenge altogether, though.

It’s a chicken-and-egg problem. Why should a Windows programmer create, say, an Itanium version of some product when there are so few Itanium computers shipping? And why should a person buy an Itanium-based computer if there is so little software shipping?

Web programming, though, is inherently cross-platform, as illustrated by the wide range of computers and operating systems that can be used to browse the Web. Windows 8’s tailored apps will call upon browser interfaces: HTML (Hypertext Markup Language, for describing Web pages), CSS (Cascading Style Sheets for formatting), and JavaScript (for executing programs).

Once Microsoft issues its ARM version of Internet Explorer–Windows 8 will come with IE10–the tailored apps should become cross-platform. In contrast, ordinary native apps such as Adobe Systems’ Photoshop or Microsoft Office that are written to Windows’ lower-level interfaces would have to be created separately.

Mike Angiulo, vice president of Windows planning, demonstrated the approach in a Computex speech, playing a touch-screen piano app on two machines. “These are the same apps. This is running on x86, this is running on ARM,” he said. “It’s the same app, completely cross-platform, based on the new Windows 8 app developer model.”

Microsoft already has a cross-platform programming foundation, .Net and Silverlight, and there has been fretting among its fans about Microsoft’s Web-tech move.

But ultimately, Microsoft’s position makes some sense. Windows remains a powerful force in the industry, but almost all the hot consumer-level programming action today is taking place either with Web apps or with mobile apps running on iOS and Android. Every now and again a new native app arrives for Windows–Angry Birds, say, or any number of other video games–but the hot platforms of the moment are mobile and the Web.


Windows 8 has a very different interface. These dynamically updated tiles represent apps. (Credit: Screenshot by CNET from Microsoft video)

“Over 60 percent of people’s time is spent in a browser when they’re using virtually any system,” said Angiulo said.

There’s already an army of Web-savvy programmers, a fact that helps ease with the chicken-and-egg problem of spinning up a new programming foundation. It’s not clear how closely tailored apps will resemble Web apps, but it’s likely that something like Facebook’s interface could be repackaged without major difficulties. That could help flesh out the Windows 8 app store faster.

“This application platform is based on HTML5, JavaScript, and CSS–the most widely understood programming languages of all time,” Angiulo said. “These languages form the backbone of the Web, so that on day one when Windows 8 ships, hundreds of millions of developers will already know how to build great apps for Windows 8.”

In addition, Web programming is expanding beyond the Web already: Hewlett-Packard’s WebOS uses Web technology, as do browser extensions written for Google’s Chrome, Apple’s Safari, Opera, and the imminent Jetpack framework for Mozilla’s Firefox. Note that Chrome extensions can be sold as full-on Web apps through the Chrome Web Store already, and that Web apps are what Google’s Chrome OS runs.

Thus, in a way, Windows 8’s tailored apps are close cousins to Google’s Chrome OS apps.

With the fevered rush of standards development, the Web is getting more powerful. One of the hot areas today is in CSS, It’s growing more advanced not just as a way to put drop shadows behind boxes with rounded corners, but also as a way to animate changes such as boxes popping up and even provide 3D effects such as windows flipping over.


Two Windows 8 apps can share the screen, but the usual approach is to devote the entire area to a single app. (Credit: Microsoft)

Other work is improving CSS Web typography and layouts. With Scalable Vector Graphics, more complex graphics are possible. HTML5’s Canvas element provides a two-dimensional housing for such graphics.

Browsers haven’t been known for their performance compared to native apps, but Microsoft is pushing as hard as it can to use hardware acceleration. It does so for Canvas, SVG, CSS, and even text rendering. It also is working on faster JavaScript, in part by spreading work across multiple processor cores.

Another Microsoft effort makes more sense in light of tailored apps: pinning. IE9 Web pages can be pinned to Windows 7’s task bar the way native apps can. With Windows 8, this behavior makes perfect sense since the Web-style tailored apps will be full peers to native apps.

One big unknown is how closely Microsoft will adhere to Web standards and how broadly it will support them. After years in the wilderness, Microsoft has caught Web standards religion, participating in their development, promoting them, offering test cases to iron out compatibility problems, and most notably, building them into IE9. So it seems likely Microsoft will toe the line here, but given how fast the Web is changing, it’s probably safe to expect compatibility problems between, say, Chrome OS apps and Windows 8 tailored apps.

But it’s not clear just how far Microsoft will go in its support. Much of the development of Web standards takes place in browsers, not just in conference rooms at standards meetings, and browser makers are keen to move forward as fast as possible. Windows itself hardly moves at a breakneck pace.

One uncertainty is whether Microsoft will support IndexedDB, a database technology that a browser can use to store complicated data and could be helpful for applications that have to work when there’s no Net connection. And it looks all but impossible that Microsoft would support WebGL, a new standard enabling 3D graphics on the Web that also can improve 2D apps such as games.


Windows 8 tailored apps resemble those using Windows Phone 7's Metro user interface. They're touch-enabled and use a lot of rectangles that slide and swing around. (Credit: Rafe Needleman/CNET)

Don’t expect existing Windows interfaces to go away: Microsoft has a huge collection of existing software to support, and you can bet programmers who don’t want to be confined to tailored apps’ limits will keep demand high.

What’s not clear, and won’t be until Microsoft’s Build conference in September, is when Microsoft thinks programmers should use the different programming foundations.

Here’s one big difference between Web apps and native apps, though: state. It’s an arcane technical subject, but in short, it refers to who’s in charge. With Web applications in a browser, state is maintained on a server. That lets multiple people simultaneously edit a Google Docs spreadsheet, for example; the server handles connections to all the browsers. With native apps, though, it’s the local machine that typically maintains state.

For a good illustration of state, think of what cloud computing means to Apple vs. Google. Apple’s iCloud synchronizes data among different devices, but when you play a music track, it’s playing from the local device’s storage system. Google streams it from a server, and the browser is at its beck and call.

HTML is getting more powerful abilities to store information locally, though, so that a server isn’t required. The browser increasingly is able to maintain its own state.

Here’s another difference: programming tools. Microsoft has kept the loyalty of many programmers through highly regarded tools used to build software. Web programming is comparatively primitive.

It seems very likely, therefore, that part of Microsoft’s news at Build will concern how programmers can quickly make tailored apps.

After all, while Microsoft has had trouble matching Apple and Google in mobile devices, it’s stayed competitive with programming tools. Don’t expect the company to throw that asset away any time soon.





by Brenna Ehrlich

If you have a bunch of tag-happy Facebook friends, you may want to read this. Facebook has been rolling out a facial recognition feature that makes it easier to tag friends in snaps, and it has introduced this feature as a default setting.

We first heard about Tag Suggestions back in December.

The feature basically means that whenever you’re offered the chance to tag groups of your friends in an album, Facebook will use its facial recognition technology to group similar faces together and automatically suggest the friend you should tag them with.

The option has been rolling out to international users over the past few months, and according to a report from Sophos, the social networking site has been making the facial recognition feature a default setting. Facebook explained the rollout in a post on Tuesday.

If you don’t want Facebook to suggest you when your friends go to tag everyone in that picture from last week’s naked mud-wrestling pool party, here’s how you disable the feature:

  1. Go to your privacy settings.
  2. Click “Customize settings.”
  3. Scroll down to “Things others share.”
  4. Find “Suggest photos of me to friends.”
  5. Edit accordingly.

Although this is an easy fix, we can see some privacy-focused users getting peeved about the option being turned on without their knowledge. And this wouldn’t be the first time Facebook has turned on a feature without users’ consent (heck, we even wrote an entire guide to Facebook’s privacy features).

What do you think of this latest change?


by Meghan Peters

Whether you built a personal site from the ground up or oversee digital strategy for a huge corporation, many of us are managing a web presence these days.

There are millions of websites out there, and tracking how people are getting to your site and what’s performing well is a must for being competitive in the online market.

Google Analytics makes it easy for anyone managing a site to track and analyze this data. It’s a powerful, free tool that can answer a variety of questions for a wide range of users. Wondering which keywords resonate with visitors? Need insight on what design elements might be turning people away?

Here’s how you can start answering the website questions that have been keeping you awake at night.

Adding the Code

Once you set up your Google Analytics account, you’ll need to implement the code on your website.

Set up a profile for the site you’d like to track and the step-by-step process will generate a unique script that you can add. If you’re using a content management system or blogging platform like WordPress, Blogger or Tumblr, you only need to add the code once to your template or theme. The theme will propagate the code in every post and page you create.

If your site is custom-built, you’ll either need to implement the code on each page manually, or speak to your web developer about how the site generates content.

Copy the JavaScript code from Analytics and paste it just above the </head> tag in your page or template. Adding this code will not affect the look of your site.

What You Can Measure

After you connect your site to Google Analytics, hit “View Report” on the initial screen. This will bring you to the main dashboard. In the left column, you’ll see the various types of data Google Analytics provides:

  • Visitors: This shows many things about the people coming to your site, including where they’re located geographically, what language they speak, how often they visit your site and what computers and browsers they use to get there.
  • Traffic Sources: Here you’ll find how people got to your site. You can track which sites link to your page or keywords people search to find you.
  • Content: This tab gives you insight into specific pages on your site. It can help answer questions about how people enter and exit your pages, as well as which ones are most popular.
  • Goals: If you’re aiming for established objectives, reports in the Goals tab will be helpful to you. Here you’ll find data about desired actions from users, including downloads, registrations and purchases.
  • Ecommerce: You’ll only need this tab if you’re selling items on your site as it houses all merchandise, transaction and revenue activity information.

These tabs contain subreports that provide insights about specific aspects of your site, including top content and visitor loyalty.

The information you choose to track depends on what curiosities you want to quell. Being in touch with keyword searches can help a site with text-heavy content to boost search rankings, while knowing which products convert best can inspire ecommerce sites to increase visibility of these items.

With Google Analytics, figuring out what you measure is the tough part. It’s how you measure that’s simple.

Setting Up the Dashboard

On the main dashboard, you’ll see a summary of your site’s data. You can customize the dashboard to show whichever reports you decide you want to see upfront. Just click on the type of report you want to see from the left column and hit “Add to Dashboard.” You can then position reports on the dashboard by dragging and dropping, or deleting ones you don’t want.

You can delve deeper into a data set by clicking “View Report” underneath the report graphic on your dashboard. This brings you to the full report on that topic.

Adjusting the Time Range

Be sure to adjust the date range in the upper right-hand corner before analyzing information from your reports. It defaults to a month-long range, ending the day prior to the day you’re viewing the report. (For example, on May 18, you’d see reports spanning April 17 to May 17.) Click on the date range box and a calendar will pop up. You can adjust it to track information quarterly, weekly, daily, or whatever timeframe works best for you.

If you want to compare date ranges, hit “Comparison” underneath the “Date Range” field. This will bring up a second calendar for you to adjust based on what time periods you want to consider, such as weekend to weekend or the first Tuesday of the month vs. the last Tuesday of the month.

Data Tables and Visualizations

Many of the reports in Google Analytics, such as pageviews and conversion rates, contain linear graphs that present data for the topic and date range you’ve selected. When mousing over the dots on the line, you’ll see measurements for that day, week or hour.

You can change the metric you want to visualize by clicking the tab above the graph on the left. Here you’ll also have the option to compare two metrics against each other. When you’re not comparing date ranges, you can compare against the site average. This is particularly helpful if you’ve laid out goals, as you can compare site activity to conversion goals. When comparing, a second line (gray) will appear for the variable over the graph with the original metric line (blue), making it easy to see how you’re stacking up.

Beneath the graph, you’ll see more data laid out with summaries and scorecards prominently displaying important overall metrics, such as pages per visit and time on site. Most reports have three different tabs in the top left above the scorecards: Site Usage, Goal Conversion and Ecommerce.

More granular measurements of these data sets can be found in a table below. You can visualize the table in a pie chart or a bar graph by clicking the icons just above and to the right of the scorecards. Table information can be sorted in ascending or descending order by clicking on the column heading you want to reorganize. To increase or decrease the number of results displayed, click the “Show Rows” drop down menu at the bottom right of the report. The default is 10 and you can show up to 500 results per page.

You can also refine data with the “Find Source” box at the bottom left of the report. Enter keywords relevant to your search such as “source” or “keyword” and select “containing” or “excluding” to reveal more specific information.

If you’re unsure of what a specific measurement means, click the question mark next to it and an explanation bubble will pop up.

Sharing Reports

You’ll find an email button at the top of all reports, just beneath the title. You can send the email immediately, schedule a recurring report email or add the report to an existing pre-scheduled email. If you’re presenting the report, you can export it as a PDF (recommended), XML, CSV or TSV file.

Going for It

Now that we’ve broken down the basics, it’s your turn to go for it. Will you try your hand at Google Analytics? Which business questions might it help you answer? Let us know in the comments.


by Jordan Crook

Rumors have been flying around the web lately about when we’ll get a chance to check out Microsoft’s forthcoming tablet software, and according to Bloomberg sources and Business Insider, Windows chief Steve Sinofsky will unveil the latest Windows tablet OS at the AllThingsDigital D:9 conference next week.

Microsoft has yet to make a formal announcement about the highly anticipated preview, but Bloomberg confirmed the demo with three separate sources, so as far as rumors go, this one seems pretty true. According to the report, Sinofsky’s exhibition will show Windows 8 tablets using an Nvidia Tegra chip, and Microsoft OEM chief Steve Guggenheimer will give a similar demo in Taiwan next week.

We’ve seen some leaked photos of Windows tablets and a potentially new touch interface, but this will be the first time we get an official glimpse of Microsoft’s tablet plans. Hopefully these demos won’t include any false information, like that given earlier this week when Steve Ballmer promised a Windows 8 arrival next year. Microsoft retracted the statement on his behalf shortly thereafter.


More businesses are becoming more confident about picking open-source software over products from vendors of proprietary licensed applications, according to a new report.

Businesses are becoming more confident about deploying open-source technology within the enterprise, instead of relegating it to the fringes or for experimental projects, according to a recent survey.

A significant majority of surveyed respondents, or 95 percent, said their organizations are using open-source technology to avoid vendor lock-in, according to the Future of Open Source Survey released May 16. In previous years, the chief reason driving open-source adoption was lowered software costs.

“Multiple factors are driving the increased adoption of open-source software, including freedom from vendor lock-in, greater flexibility and lower cost,” said Matt Aslett, senior analyst of enterprise software at The 451 Group.

While lower software costs are still important, ranking second on the list, organizations are more interested in open source to avoid vendor lock-in from traditional software vendors as well as from proprietary cloud providers. Public sector adoption and increased experience using open-source software are also listed as drivers for adoption.