Category Archives: windows

Google I/O 2014: impressive momentum, no wow moments

I am not in San Francisco but attended Google I/O Extended in London yesterday, to hear the keynote and a couple of sessions from Google’s annual developer conference.

image

I found the demographics different than most IT events I attend: a younger crowd, and plenty of start-ups and very small businesses, not at all enterprisey (is that a word?)

image

The main announcements:

A new version of Android, known as Android L (I don’t know if this will expand eventually to Lollipop or Liquorice or some such). Big release  with over 5,000 new APIs, we were told (when does Android start being called bloated, I wonder?). Themes include a new visual style called Material Design (which extends also to the Web and to Chrome), and suitability for more device types including Android TV, Android Wear (smart watches) and Android Auto. A new hardware accelerated graphics API called Android Extension Pack which implements OpenGL ES for better game performance, with support from NVIDIA Tegra. Android graphics performance will be good enough for a considerable subset of the gaming community and we saw Unreal Engine demoed.

Android L does not use Dalvik, the virtual machine that runs Java code. In its place is ART (Android Runtime). This is 64-bit, so while Java code will run fine, native code will need updating.

Google is working hard to keep Android under its control, putting more features into its Play Services, the closed part of Android available only from Google and which is updated every 6 weeks, bypassing the operator obstacle to OS updates. There is also a new reference design including both hardware and software which is designed for affordable smartphones in the developing world: third parties can take this and build a decent Android mobile which should sell for under $100 as I understood it. I imagine this is designed to ward off fractured Android efforts like Microsoft’s Nokia X, aimed at the same kind of market but without Play Services.

There are new Android smart watches on the way, and we saw the inevitable demonstration of a user using voice control to the watch for ordering taxis or pizzas, getting notifications, and sending simple messages.

Voice control demos always seem to be nervous moments for presenters – will they be understood? Unfortunately that uncertainty remains for real users too, as evidenced by Xbox One Kinect which is amazing in that it often works, but fails often enough to be irritating. Voice recognition is a hard problem, not only in respect of correctly translating the command, but also in correctly detecting what is a command (if the person standing next to me shouts “Taxi please” I do not want my watch to order one for me).

The smart watch problem also parallels the TV problem. The appeal of the watch is that it is a simple glanceable device for telling the time. The appeal of the TV is that it is a simple sit-back screen where you only have to select a channel. Putting more smarts into these devices seems to make sense, but at the same time damages that core feature, unless done with extreme care.

Android TV puts the OS into your television, though Google’s messaging here is somewhat confusing in that, on the one hand, Chromecast (also known as Googlecast) means that you can use your Google device (Android or Chromebook) as the computer and the TV as the display and audio system, while on the other hand you can use Android on the TV itself as an all-in-one.

We are inching towards unified home entertainment, but with Google, Microsoft (Xbox One), Sony (PlayStation) and Apple all jostling for position it is too early to call a winner.

Material Design – Metro for Android?

We heard a lot about Material Design, which is Google’s new design style. Google borrowed plenty of buzzwords form Microsoft’s “Metro” playbook, and I heard expressions like “fast and fluid”, clean typography, signposting, and content-first. Like Metro, it also seems to have a blocky theme (we will know when the next design wave kicks in as it will have rounded corners).

image

Material Design is not just for Android. You can also implement the concept in Polymer, which is a web presentation framework built on Web Components, a standard in draft at the W3C. Support for Web Components (and therefore Polymer) is already in Chrome, advancing rapidly in Mozilla Firefox, probably coming in Apple Safari, and maybe coming in Microsoft IE. However, a JavaScript library called Polyfill means that Polymer will run to some extent in any modern browser.

Whenever IE was mentioned by a presenter at Google I/O there was an awkward/knowing laugh from the audience. Think about what that means.

One of the ideas here is that with a common design concept across Android and web, developers can make web apps (and therefore Chrome apps) look and behave more like Android apps (or vice versa). Again, there is a similar concept at Microsoft, where the WinJS library lets you implement a Metro look and feel in a web app.

Microsoft may have been ahead of Google in this, but it has done the company little good in that adoption for Metro has been weak, for well-rehearsed reasons connected with the smartphone wars, legacy Windows desktop and so on. Google has less legacy weighing it down.

How good is Material Design though? Apple’s Steve Jobs once said of a new OS X design update that it was so good you want to lick it. Metro lacks that kind of appeal, and judging from yesterday’s brief samples, so does Material Design, whatever its other merits in terms of clarity and usability. It is early days though.

Business features: Samsung Knox, Office support, unlimited storage

Google announced a couple of  features aimed at business users. One is that Samsung Knox, app sandboxing and data security for business users, has been donated to Google for integration into Android. Another is that Google Docs will get the ability to edit Microsoft Office documents in their native format, removing an annoyance for users who previously had to convert documents to and from Google’s own format when exchanging them with Microsoft Office users.

This seems to be an admission that Microsoft Office is the business standard for documents, and you can take it either way – good for Google because compatibility is better, or good for Microsoft because it cements Office as the standard. There will be ifs and buts of course.

Google is also offering unlimited online storage for business users, called Drive for Work, at $10 per user per month, upping the ante for everyone in the online storage game – Microsoft, Dropbox, Box and so on.

Google’s Cloud Platform

Google showed new features in its cloud platform, with a focus on big data analytics using an approach called Cloud Dataflow. “We don’t use MapReduce any more”, said the presenter, explaining that Cloud Dataflow enables all of us to use the same technology Google uses to analyse big data.

Greg DeMichille, a director of product management for the cloud platform, appeared on stage to show features for in-browser tracing and debugging of cloud applications. I recall DeMichille being much involved in Microsoft’s version of Java back in the days of the battle with Sun; he also had a spell at Adobe getting behind Flash and Flex for developers.

No Wow moments

The Google I/O 2014 keynote impressed in terms of numbers – Android growth continues unabated – and in terms of partners lining up behind initiatives like Android TV and Android Auto. The momentum seems unstoppable and the mass market for mobile and embedded devices is Google’s to lose.

On the other hand, I did not notice any game-changing moments such as I experienced when first seeing the Chromebook, or the Google Now personalisation service. Both of those still exist, of course, but if Android will really change our lives for the better, Google could have done a better job of conveying that message.

Review: Nokia Lumia 630 – a lot of smartphone for the money

Microsoft/Nokia has released the Lumia 630 Windows Phone in the UK. It is notable for two reasons:

  • The first phone on sale with Windows Phone 8.1 installed
  • A budget contender with a full range of features at around £100. For example, o2.co.uk offer it for £99.99 with a “Pay & Go” tariff from £10.00 monthly. Amazon.co.uk is currently offering it sim-free for £128.29.

The quick summary:

  • 4.5″ 854×480 LCD screen
  • 5MP rear camera
  • 512MB RAM
  • 8GB storage
  • MicroSD slot supporting up to 128GB
  • Qualcomm Snapdragon 400 quad-core 1.2 GHz processor
  • Bluetooth 4.0, wi-fi, WCDMA,GSM,A-GPS etc
  • 1830 mAh removable battery

What is missing? Among the compromises here, there is no front-facing camera, the only sensor is an accelerometer, the screen resolution is poor compared to a high-end smartphone, and there is no dedicated camera button.

The older Lumia 625 has some features missing on the 630, including a camera button, LED Flash, ambient light sensor and proximity sensor, Nokia’s “super sensitive touch” screen, and LTE. The 625 is a similar price, so if those features matter to you it might be a better buy, though you have to put up with the older and slower S4 processor.

The Lumia 630 does support Nokia’s SensorCore feature, which lets apps like Health & Fitness (pre-installed) track movement through an API without consuming much power.

The lack of a camera button or Flash is disappointing, considering Nokia’s reputation as a brand good for photography.

Out of the box

image

The Lumia 630 is a basic package. No headset is included, presumably on the grounds that you likely have one already, though buying one separately is inexpensive. There is a mains charger; you probably have one of these already too, but it might not be optimal for this particular device, which may be why Nokia chose to prioritise this over the headset.

In order to fit the SIM, you pop the phone out of its shell; it feels if anything a bit too easy, though the phone shows no sign of falling apart accidentally so far.

image

The software of course is Windows Phone 8.1, with several nice improvements including a notification screen accessed by swiping down from the top. This works even from the lock screen, and gives immediate access to the camera, which may explain why the button is missing. I still miss the button though.

image

Cortana, the virtual personal assistant currently in beta, is not yet present in the UK. You can enable Cortana with a bit of effort by changing your language and region, but it is not recommended other than for temporary experimentation.

I hit one problem in setup. The automatic date and time setting does not work, at least not with my carrier (Three). This in turn broke some other features including SkyDrive and Exchange/Office 365 email, until I set it manually. The manual setting is not brilliant though, since when I turned the set off and on again, it came up with a setting from several days ago. This looks like a software bug so I hope it will be fixed soon.

Here is the home screen pretty much out of the box, though I have connected it to Exchange:

image

This is NOT how I prefer to set up my home screen on a Windows phone. Normally I reduce all the tiles to the smallest size other than the phone icon, which I have large so I can hit it as easily as possible. This fits more icons on the screen and gets rid of the annoying People live tile animations. This is, of course, a matter of personal preference.

The apps prominent above the fold include PhotoBeamer, which lets you show pictures on a friend’s Windows Phone (a cool app), LINE which is a messaging app, and the excellent HERE maps and Nokia Camera.

Scroll down and you get Facebook, Skype, HERE Drive, Nokia Mix Radio, OneDrive, calendar and several more.

A word about apps

I do not intend this to be another reviews of a Windows Phone which say, “great phone but the apps are lacking.” It is true to the extent that Windows Phone lacks the great support with iOS and Android get in terms of apps. Windows Phone owners have to put up with seeing “available for iOS and Android” for apps which they might  otherwise like to install, and with apps that are less well maintained or up to date than those for the two more popular platforms.

Clearly, the way to fix this is for lots more people to buy Windows Phones. Therefore, not to buy a Windows Phone because of the app shortage merely perpetuates the problem.

But how bad is it? The answer will be different depending which apps matter to you; but there are a couple of reasons why it is not, in my opinion, all that bad.

One is that Microsoft has its own platform, putting it in a stronger position than say, Blackberry or even Apple (if iOS were not already popular). The Microsoft platform includes maps and driving (Nokia), search (Bing), messaging (Skype), email and cloud documents (Office 365) and online storage (OneDrive).

Second, the Windows app store is not as moribund as the Windows 8 app store. There are decent apps in most categories and support from third parties like Spotify, WhatsApp, Instagram or the BBC is improving.

If you love Google, this is unlikely to be the phone for you, since it seems almost to go out of its way not to support Windows Phone.

On the other hand, there are Windows Phone apps which I miss on other platforms, including Nokia Camera, HERE Drive, and the built-in email and calendar apps.

It is a factor, but not a showstopper.

Lumia 630 in use

My experience of using the 630 is mainly positive. Performance is great; the phone is fast and responsive. Battery life is good too:

image

Note that the Battery Saver is off by default, but I prefer having it come on automatically as needed.

Battery life is nothing special if you use the phone intensively, such as to watch a video or play a game, but when it on standby it is better than previous Windows phones I have tried.

The camera is better than I had expected, given the annoyances mentioned above. For casual snaps it is up to the mark you would expect from a budget smartphone.

This is not PureView though; do not expect the same quality as on Nokia’s high-end phones. See here for some comparative snaps.

Audio on the Lumia 630 sounds fine when played with a high quality headset. I played the same track on the 630, the Lumia 1020, and from a PC via a dedicated headphone amplifer. Possibly the 630 sounds slightly thin compared to the more expensive setups, but the earbuds or headphones you use will likely make the most difference.

image

Health and Fitness tracking, using the Bing app, is fun and saves having to manage a separate device like a Fitbit.

image

I have yet to catch out the 630 on performance. Youtube videos and BBC iPlayer played smoothly.

The display is on the dull side but no enough to spoil the experience. However I did notice grey marks (presumably shadows of the glue that holds the screen on) at the top of the screen, visible on light backgrounds, which is a slight annoyance.

Conclusion

The Lumia 630 is a budget smartphone with a lot to offer. There are just a few annoyances: features missing that were present on the 625, slightly dull screen, and some signs of cost-cutting. These are small blemishes though when you consider what you do get for a modest outlay.

&nbr;

Having it both ways: can Microsoft equally back Windows Phone and “Any device”?

I attended an event in London which was a kind-of UK launch for Windows Phone 8.1. The first Lumia device running 8.1, the Lumia 630, is now on sale, though this was not the main focus. It was more about asking businesses to take another look at Windows Phone (and Windows tablets), following improvements Microsoft has made. The company is particularly pleased with a new white paper from MobileIron, a well-known company in mobile device management, praising the new security and manageability features:

Windows Phone 8 did not meet the stringent policies some enterprises required for protecting corporate data and resources. The release of Windows Phone 8.1 changes the game. Microsoft is delivering a rich new feature-set for business users, and providing IT departments with the compliance and security they require. These new security and management features, called the Enterprise Feature Pack, are included as a core component of Windows Phone 8.1. When combined with an enterprise mobility management (EMM) platform, these capabilities make it much easier for enterprises to adopt the Windows Phone platform.

Fair enough, though from what I can tell Windows Phone is still struggling to get the momentum it needs. Too many companies perceive that if they support iOS and Android then that is it, job done, as evidenced by this advertisement I saw recently. This in turn dampens sales. It is an unfortunate position to be in, particularly given the good work Microsoft (and Nokia) has done on the phone OS itself. I prefer the Windows Phone user interface to that in Android, but still need an Android device in order to try out new apps.

This could change if Microsoft can continue gradually bumping up its market share, but it is tough. The wider company is now side-stepping the problem by focusing on its strengths in Office, Active Directory and Office 365, and offering first-class support for these on iOS and Android, as evidenced by the excellent Office for iPad launched earlier this year.

There is a dilemma here though. Some Windows Phone users choose the phone because they feel it will work best with Microsoft’s business platform. Could the “any device” policy end up undermining Microsoft’s efforts to promote Windows Phone?

I put this to Chris Weber, Microsoft’s Corporate Vice President of Mobile Device Sales, who has come to the company from Nokia (before which he was at Microsoft, so a true Windows veteran).

image

From a business perspective, providing cloud services, management, security, it is a multi-platform world. It is a great business decision for Microsoft to be multi-platform. Customers demand it as well.  That doesn’t mean we don’t want to create the most compelling platform and set of devices that bring Windows to life. I think the cross-platform thing is a great story … but the benefit of us [Nokia and Microsoft] coming together is now we have hardware, software and services that can be integrated in a totally different way, and we’re one of the few players that have all those components. The level of integration is much greater on the Windows platform. For example, Office is built in, you don’t have to go to a store and download it. The Linq client is built into the calendar. The email client, being able to have rights protection. The mail client itself is the best of any of them. The ability to access a SharePoint site across the firewall without a VPN connection, unique to Windows Phone.

Then we also have to win the end user. We have to win IT and those requirements, but you also have to get end users excited. Things that you see in 8.1, like Cortana, there’s a huge benefit there. And we’re bringing that across every price point.

Fair points; yet currently the iPad has a better touch-friendly Office than Windows tablets or Windows Phone; and Windows phone users have frustrations where the integration falls short. One remarkable thing, for example, is that there is no way to use a shared Exchange or SharePoint calendar on Windows Phone other than in the browser, so no integration with the built-in calendar or offline support.

What Weber describes, near-perfect integration between Windows mobile devices and Microsoft’s server applications, should be the case though; making this even better should be a high priority for CEO Satya Nadella’s new Microsoft.

Weber makes the bold claim that he can convert any user to Windows Phone, but says the challenge is to make this happen at retail level, when the customer wanders in looking for a smartphone:

If you give me fifteen minutes, I think I can convince any iPhone or Android user to move to Windows Phone. We have to do this not in fifteen minutes but in probably a minute and a half, at retail, with people who are selling multiple devices and are used to selling the competitor platform more than us.

Focusing on enterprise integration is in my view long overdue, and a few large enterprise adoptions would give Windows Phone a significant boost. At retail though, my guess is that Microsoft’s main hope is what Nokia did so well: delivering a good smartphone experience in budget devices – the “every price point” to which Weber refers.

Review: Sonocent Audio Notetaker, making sense of recorded interviews and meetings

Why bother taking written notes, when you can simply record the audio of a meeting or interview and listen to it later? I do this a lot, but it is problematic. You end up with an MP3 which has all the info within it, but with no quick way to find a half-remembered statement. Of course you can transcribe everything, or get it transcribed, but that is not quick; it will likely take longer than the original event if you want to transcribe it all, and even selective transcription is a slow process. You can get better at this, and I have formed a habit of noting times when I hear something which I am likely to refer to later, but standard audio players (such as Foobar 2000 or iTunes) are designed for music and not great for this kind of work.

There is also an annoying problem with application focus if you want to transcribe a recording. You have Word open, you have your recording open in Foobar, but to control Foobar you have to switch focus away from Word, which means you cannot type until you focus back. There are utilities around to overcome this – my solution was to write my own Word macro which can pause and rewind a recording with keyboard shortcuts – but it is another issue to fix.

Sonocent Audio Notetaker is an application for Windows or Mac dedicated to making sense of speech recordings. Audio Notetaker lets you create documents which include audio, text and images. If you have an existing audio recording, you can import it into a new Audio Notetaker documnent and start to work with it. The audio is copied into the document, rather than being added as a reference, so these documents tend to be large, a little larger than the original.

The primary feature is the the way recordings are visualised and navigated. When you import a recording, it shows as a series of bars in a large panel, rather than the single horizontal scrolling view that most audio players present. Each bar represents a phrase, determined by Audio Notetaker according to pauses in the speech. This is not altogether reliable since speakers may pause mid-phrase, but you can split or merge bars if needed. The length of each bar varies according to the content, but typically seems to be around 3-15 seconds. You navigate the recording by clicking on the bars, and annotate it by assigning colours to bars according to your own scheme, such as blue for a potential quote, or brown for “boring, skip this”.

If you are transcribing, you can type into either to two text panes, one of which is called Reference and the other just Text. When you are typing in one of these panes, you can use keyboard shortcuts to control the audio, such as Ctrl+Space for play/pause, Ctrl+\ to skip back, and Ctrl+/ to skip forward. The Reference and Text panes are functionally identical, but let you keep two different types of notes with one recording. There is also an image pane, which can include images, PDFs or PowerPoint presentations.

image

How do you synchronise your notes or transcription with the audio to which it relates? Audio Notetaker does not do this automatically, but does allow you to insert section breaks which split the document into vertical sections. You can create these breaks with keyboard shortcuts. I would prefer it if Audio Notetaker automatically set hotlinks so that I could tell exactly what audio was playing when I made a note, but sections are nevertheless useful.

For example, if you have an interview, a logical approach would be to make each question and each answer a section. Then you can easily navigate to the answer you want.

You can use background colouring to further distinguish between sections.

A common problem with audio recordings is that they are at too low a level. Audio Notetaker has its own volume control which can boost the volume beyond what is possible with the Windows volume control.

There is also a noise cancellation button, to remove the dreaded hiss.

image

Advanced features

Those are the basics; but Audio Notetaker has a few other capabilities.

One idea is that you might want to record the content of an online conference. For this purpose, you can record from any of your input or output devices (it might seem strange to record from an output device, but this is the equivalent of a “what you hear” setting).

image

This approach is further supported by the ability to capture a screen and insert it into the document. When you choose the screen capture tool, you get a moveable, resizeable frame that you position over the area you want to capture.

image

Another scenario is that you want to create a simple video with a PowerPoint slide show and an audio voiceover. You can do this by importing the PowerPoint and recording your speech, then choosing Export Audio and Images as Video (MP4 or WMV).

image

You can also export the text and images in RTF format (suitable for most word processors).

Internally, Audio Notetaker uses Opus Audio Encoding which is an internet standard.

You can also have Audio Notetaker read back text to you using the Windows text to speech engine (I am not sure how this works on a Mac).

Final words

The best feature of Audio Notetaker is the way it lets you navigate an audio file. It is quicker to click on a bar in the panel than using a horizontal scroller or noting the time and going to that point.

The sections work OK but I would personally like some way of embedding notes that are hotlinked to points in the audio with a finer granularity than sections.

I am not sure of the value of features like importing PowerPoint slides, adding audio, and exporting as a video, when PowerPoint itself has support for narrations and export to video. I would prefer it if the developers focused on the core proposition in Audio Notetaker: making it easy to index, annotate and navigate speech recordings.

I would also like to see integration with a transcription service. Automated transcription would be great but does not usually work well with typical field recordings; more realistically, perhaps Sonocent could integrate with Amazon’s Mechanical Turk or another service where humans will transcribe your recording for a fee.

Nevertheless, Audio Notetaker is nicely designed software that addresses a poorly-served niche; well worth consideration for journalists, students, secretaries, takers of minutes, or anyone who uses audio recordings as part of their workflow.

You can find Audio Notetaker on the Sonocent site, and obtain it as a free trial, or by subscription for a period, or with a perpetual licence. For example, six months for an individual license is £29.99; a perpetual licence is £95.99 (including VAT).

It is available for PC or Mac.

The Microsoft Apartment: full of screens and an uninvited cucumber

I visited Microsoft’s “Apartment” in London, billed as a chance to see “Dragon’s Den star Kelly Hoppen’s apartment in the heart of Covent Garden kitted out with the latest Microsoft technologies,” and to include a “deep dive discussion” on Microsoft’s latest developer announcements.

How do you kit out an apartment with the latest Microsoft technologies? Apparently, you stick an Xbox One and a couple of PC screens in the living area, and upstairs in the study (a mezzanine floor), a PC, a Surface (not 3 sadly), and a Windows phone connected to a big screen.

image

There were certainly lots of screens, but nothing in the way of home automation, and after watching Microsoft presenters struggling to get the Xbox One to play the right kind of music, and later a shaky Skype demo, it is hard to enthuse over this particular setup.

For some reason, we were not shown any cool games on the Xbox One, nor cool apps on the Windows Phone other than the Cortana assistant which is not yet available in the UK. There was a demo of the new swipe keyboard in Windows 8.1 which inevitably saw the word “document” rendered as “cucumber”; a shame as I know from my own experience that this keyboard works very well, but demoing this kind of thing in public is only for the brave or the very well rehearsed.

We did see collaborative real-time editing on an Office document – not something home users generally do, but to be fair this was part of a business-oriented discussion which followed.

One feature which I had not previously been aware of was the ability of Skype on the Xbox One, in conjunction with Kinect, to follow the speaker around the room automatically. If you like pacing up and down while on Skype, this is a cool feature; perhaps it would be good for talking to excitable kids as well.

Takeaways? Let me put it like this. If you thought, perhaps, that the Xbox One has potential but feels (in software terms) not yet ready; or that Microsoft has no idea how to market to consumers; then there was nothing here that would change your mind.

As chance would have it, the Microsoft apartment is a few paces away from Apple’s huge Covent Garden store, and seeing the crowds eager to try the latest iDevices put the Microsoft event in perspective.

PS for another, more positive take on the event see this Neowin report.

Xamarin 3.0 brings iOS visual design to Visual Studio, cross-platform XAML, F#, NuGet and more

Xamarin has announced the third version of its cross-platform tools, which use C# and .NET to target multiple platforms, including iOS, Android and Mac OS X.

Xamarin 3.0 is a big release. In summary:

Xamarin Designer for iOS

Using a visual designer for iOS Storyboard projects, you can create and modify a GUI in both Visual Studio and Xamarin Studio (Xamarin’s own IDE). The designer uses the native Storyboard format, so you can open and modify existing files created in Xcode on the Mac. The technology here is amazing, since you iOS controls are rendered remotely on a Mac, and transmitted to the designer on Windows. See here for a quick hands-on.

Xamarin Forms

Xamarin has created the cross-platform GUI framework that it said it did not believe in. It is based on XAML though not compatible with Microsoft’s existing XAML implementations. There is no visual designer yet.

Why has Xamarin changed its mind? It was pressure from enterprise customers, from what I heard from CEO Nat Friedman. They want to make internal mobile apps with many forms, and do not want to rewrite the GUI code for every mobile platform they support.

Friedman made the point that Xamarin Forms still render as native controls. There is no drawing code in Xamarin Forms.

“The challenge for us in  building Xamarin forms was to give people enhanced productivity without compromising the native approach. The mix and match approach, where you can mix in native code at any point, you can get a handle for the native control, we’re think we’ve got the right compromise. And we’re not forcing Xamarin forms on you, this is just an option,”

he told me.

Again, there is a quick hands-on here.

F# support

F# is now officially supported in Xamarin projects. This brings functional programming to Xamarin, and will be warmly welcomed by the small but enthusiastic F# community (including, as I understand it, key .NET users in the financial world).

Portable Class Libraries

Xamarin now supports Microsoft’s Portable Class Libraries, which let you state what targets you want to support, and have Visual Studio ensure that you write compatible code. This also means that library vendors can easily support Xamarin if they choose to do so.

NuGet Packages

The NuGet package manager has transformed the business of getting hold of new libraries for use in Visual Studio. Now you can use it with Xamarin in both Visual Studio and Xamarin Studio.

Microsoft partnership

Perhaps the most interesting part of my interview with Nat Friedman was what he said about the company’s partnership with Microsoft. Apparently this is now close both from a technical perspective, and for business, with Microsoft inviting Xamarin for briefings with key customers.

Hands on with Xamarin 3.0: a cross-platform breakthrough for Visual Studio

Today Xamarin announced version 3.0 of its cross-platform mobile development tools, which let you target Android and iOS with C# and .NET. I have been trying a late beta preview.

In order to use Xamarin 3.0 with iOS support you do need a Mac. However, you can do essentially all of your development in Visual Studio, and just use the Mac for debugging.

To get started, I installed Xamarin 3.0 on both Windows (with Visual Studio 2013 installed) and on a Mac Mini on the same network.

image

Unfortunately I was not able to sit back and relax. I got an error installing Xamarin Studio, following which the installer would not proceed further. My solution was to download the full DMG (Mac virtual disk image) for Xamarin Studio and run that separately. This worked, and I was able to complete the install with the combined installer.

When you start a Visual Studio iOS project, you are prompted to pair with a Mac. To do this, you run a utility on the Mac called Xamarin.IOS Build Host, which generates a PIN. You enter the PIN in Visual Studio and then pairing is active.

image

Once paired, you can create or open iOS Storyboard projects in Visual Studio, and use Xamarin’s amazing visual designer.

image

Please click this image to open it full-size. What you are seeing is a native iOS Storyboard file open in Visual Studio 2013 and rendering the iOS controls. On the left is a palette of visual components I can add to the Storyboard. On the right is the normal Visual Studio solution explorer and property inspector.

The way this works, according to what Xamarin CEO Nat Friedman told me, is that the controls are rendered using the iOS simulator on the Mac, and then transmitted to the Windows designer. Thus, what you see is exactly what the simulator will render at runtime. Friedman says it is better than the Xcode designer.

“The way we do event handling is far more intuitive than Xcode. It supports the new iOS 7 auto-layout feature. It allows you to live preview custom controls. Instead of getting a grey rectangle you can see it live rendered inside the canvas. We use the iOS native format for Storyboard files so you can open existing Storyboard files and edit them.”

I made a trivial change to the project, configured the project to debug on the iOS simulator, and hit Start. On the Mac side, the app opened in the simulator. On the Windows side, I have breakpoint debugging.

image

Now, I will not pretend that everything ran smoothly in the short time I have had the preview. I have had problems with the pairing after switching projects in Visual Studio. I also had to quit and restart the iOS Simulator in order to get rendering working again. This is an amazing experience though, combining remote debugging with a visual designer on Visual Studio in Windows that remote-renders design-time controls.

Still, time to look at another key new feature in Xamarin 3: Xamarin Forms. This is none other than our old friend XAML, implemented for iOS and Android. The Mono team has some experience implementing XAML on Linux, thanks to the Moonlight project which did Silverlight on Linux, but this is rather different. Xamarin forms does not do any custom drawing, but wraps native controls. In other words, it like is the Eclipse SWT approach for Java, and not like the Swing approach which does its own drawing. This is keeping with Xamarin’s philosophy of keeping apps as native as possible, even though the very existence of a cross-platform GUI framework is something of a compromise.

I have not had long to play with this. I did create a new Xamarin Forms project, and copy a few lines of XAML from a sample into a shared XAML file. Note that Xamarin Forms uses Shared Projects in Visual Studio, the same approach used by Microsoft’s Universal Apps. However, Xamarin Forms apps are NOT Universal Apps, since they do not support Windows 8 (yet).

image 

In a Shared Project, you have some code that is shared, and other code that is target-specific. By default hardly any code is shared, but you can move code to the shared node, or create new items there. I created XamFormsExample.xaml in the shared node, and amended App.cs so that it loads automatically. Then I ran the project in the Android emulator.

image

I was also able to run this on iOS using the remote connection.

I noticed a few things about the XAML. The namespace is:

xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

I have not seen this before. Microsoft’s XAML always seems to have a “2006” namespace. For example, this is for a Universal App:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml

However, XAML 2009 does exist and apparently can be used in limited circumstances:

In WPF, you can use XAML 2009 features, but only for XAML that is not WPF markup-compiled. Markup-compiled XAML and the BAML form of XAML do not currently support the XAML 2009 language keywords and features.

It’s odd, because of course Xamarin’s XAML is cut-down compared to Microsoft’s XAML. That said, I am not sure of the exact specification of XAML in Xamarin Forms. I have a draft reference but it is incomplete. I am not sure that styles are supported, which would be a major omission. However you do get layout managers including AbsoluteLayout, Grid, RelativeLayout and StackLayout. You also get controls (called Views) including Button, DatePicker, Editor, Entry (single line editor), Image, Label, ListView, OpenGLView, ProgressBar, SearchBar, Slider, TableView and WebView.

Xamarin is not making any claims for compatibility in its XAML implementation. There is no visual designer, and you cannot port from existing XAML code. The commitment to wrapping native controls may limit prospects for compatibility. However, Friedman did say that Xamarin hopes to support Universal Apps, ie. to run on Windows 8 as well as Windows Phone, iOS and Android. He said:

I think it is the right strategy, and if it does take off, which I think it will, we will support it.

Friedman says the partnership with Microsoft (which begin in November 2013) is now close, and it would be reasonable to assume that greater compatibility with Microsoft XAML is a future goal. Note that Xamarin 3 also supports Portable Class Libraries, so on the non-visual side sharing code with Microsoft projects should be straightforward.

Personally I think both the Xamarin forms and the iOS visual designer (which, note, does NOT support Xamarin Forms) are significant features. The iOS designer matters because you can now do almost all of your cross-platform mobile development within Visual Studio, even if you want to follow the old Xamarin model of a different, native user interface for each platform; and Xamarin Forms because it enables a new level of code sharing for Xamarin projects, as well as making XAML into a GUI language that you can use across all the most popular platforms. Note that I do have reservations about XAML; but it does tick the boxes for scaling to multiple form factors and for enormous flexibility.

Fixing a low-tech computer attack by fake “Microsoft”

For the second time this week, I wasted some time fixing an infected Windows PC. The intriguing aspect of this infection though is that it was not really a virus – unless you count crude scripts designed to scare and inconvenience the user.

The problem started when an elderly friend was called, so she thought, by Microsoft. It was not Microsoft at all, but a fraudster from, it appears, India. He explained that there was a problem with her PC and offered to fix it. I am not sure of all the details, but she ended up paying £20 (after negotiating down from a higher figure) to a bank account in Calcutta.

While this does not sound like something any sane person would do, no doubt these people are suitably convincing after years of practice. It is also true that Microsoft has support staff in India though note that the real company NEVER rings out of the blue with a virus warning so if this happens to you, it is a scam.

I found some payment forms on her PC. They include all the right logos.

image

The criminal got her to install TeamViewer and I found an entertaining batch file which perhaps he ran to simulate a security product. Here is part of it:

echo license key received
start /w wscript.exe C:sleep2000.vbs
echo:
echo:
echo:
echo Windows License is activated for Lifetime.
start /w wscript.exe C:sleep2000.vbs

and concludes:

echo Your license key has been succesfully activated in your computer..
echo Now computer is protected from hackers.

She thought that was the end of it, until she restarted her PC. First, she was prompted to run an executable called AA_v3.exe. If she cancelled, she got a message:

You have been hit by a stuxnet virus, you may lose all your files and folders

and then:

image

and

image

This is a simple .VBS script that displays message boxes in a loop.

Next, the computer shuts down. Why? Because the “stuxnet” message was a command in her startup folder that looks like this:

%windir%\system32\shutdown.exe -s -t 120 -c "You have been hit by a stuxnet virus, you may lose all your files and folders"

This runs before the other messages so you end up with a scary command prompt, more scary messages, and then your PC shuts down.

I am not sure what happens if you DO run AA_v3.exe. This, it turns out, is free remote control software called Ammyy Admin. This is so often used by scammers that there is a warning about it on the vendor’s web site:

!!! If you receive a phone call claiming to be from ‘Microsoft’ or someone claiming to work on their behalf, telling you that you have a virus on your computer or some errors which they will help you to fix via Ammyy Admin, it is definitely a scam.

Of course victims will not see this warning.

If you run it though, maybe the criminal can connect and cancel the shutdown before two minutes is up, and use the PC in a botnet. Or maybe there is a follow-up call demanding more money to fix the problem. Who knows?

The attraction of these low-tech scripts (for the fraudsters) is that anti-virus software will not detect anything amiss – though in fact, Ammyy Admin is so widely used for criminal purposes that 10 out of 50 anti-virus products used by Virustotal do report it as a “risky” executable.

image

The fix in this case was to log on using a different user profile – Safe mode would also have worked but I was working remotely. Once logged on I was able to remove the startup entries and run some other malware checking tools; ideally you would reinstall Windows but this is inconvenient for a home user.

The problem as ever is that if you know criminals have had use of a machine, you do not know what else they may have done.

This scam still seems to be common and profitable for the fraudsters, and will continue I imagine, unless both source and target countries make a real effort to find and prosecute those responsible.

Google, Bing: time to junk these parasitic download sites

“Users of today’s PCs live on a precipice. One false click and the adware and malware invades,” I remarked in a recent comment on Microsoft’s Surface Pro 3 launch.

The remark was prompted by a recent call from a friend. His PC was playing up. He was getting all sort of security warnings and being prompted to download more and more apps supposedly to fix problems. It all started, he said, when he went to Google to install iTunes.

After the clean-up, I wondered what had happened. I went to Google and typed in iTunes.

image

The top hit is Apple, which perhaps to prevent this kind of problem has actually paid for an ad on its own brand name. However my friend, understandably, went for the link that said iTunes Free Download (actually I am not sure if this was the exact link he clicked, but it was one like it).

Note how the ads are distinguished from the organic hits only by a small yellow indicator.

Microsoft’s Bing, incidentally, is even worse; I presume because Apple has not paid for an ad:

image

Using a secure virtual machine, I investigated what happens if you click one of these links (I advise you NOT to try this on your normal PC). I clicked the Google one, which took me to SOFTNOW.

image

I hit the big Download button.

image

It is downloading a setup from drive-files-b.com which claims to be iTunes, but it is not, as we will see.

The file passes Microsoft’s security scan and runs. The setup is signed by Perion Network Ltd.

image

Now here comes iTunes – or does it?

image

I clicked to see the Terms of Service. These are from Perion, not Apple, and explain that I am going to get an alternative search service for my browser plus other utilities, on an opt-out basis.

image

However I doubt my friend clicked to see these. Probably he hit Next.

image

Apparently I have “elected to download Search Protect”. There are more terms to agree. The Skip and Skip All buttons are in grey; in fact, the Skip button looks disabled though perhaps it is not.

image

Now here comes a thing called Wajam which is going to recommend stuff to me.

image

And another horror called WebSteroids with more terms of use:

image

I am going to get “display ads (banner ads), text ads, in-text ads, interstitial ads, pop up ads, pop under ads, or other types of ads. Users may see additional ads when using their internet browser or other software”.

Thanks.

Now “iTunes” seems to be downloading.

image

Once it downloads, I get an Install Now button. Apparently all those Next buttons I clicked did not install iTunes after all.

image

This last button, of course, downloads the real setup from Apple and runs it. Unfortunately it is the wrong version.

image

Who is to blame for all this? Well, the warning signs may be obvious to those of us in the trade, but frankly it is not that unreasonable to go to your trusted search engine, type in iTunes, and click the download link.

The blame is with Google (and Bing) for taking money from these advertisers whose aim is to get to you download their intrusive ad-laden extras.

Apple iTunes is free software and you can get it from Apple here.

Note that Google is experimenting with removing the address bar altogether, so you can only navigate the web by searching Google (which is what people do anyway). This would make users even more dependent on the search providers to do the right thing, which as you can see from the above, is not something you can count on.

On Microsoft Surface: premium hardware, declining vision

image
Microsoft’s Panos Panay shows off Surface Pro 3

Microsoft’s Surface Pro 3 was launched yesterday, but the roots of Microsoft’s Surface project – the company’s first own-brand PC – go back a long way. There are three big issues which it attempts to tackle:

1. The PC OEM hardware ecosystem was (and to a large extent still is) stuck in a vicious loop of a price-sensitive market driving down prices and forcing vendors to skimp on design and materials, and to pre-install unwanted third-party applications that damage user experience. Most high-end users bought Macs instead. With Surface Microsoft breaks out of the loop with premium design and zero unwanted add-ons.

2. The tablet market. Windows 8 is designed for touch, at least in its “Metro” personality. But desktop apps need a keyboard and mouse. How do you combine the two without creating a twisty monster? Surface with its fold-back, tear-off keyboard cover is an elegant solution.

3. Fixing Windows. Users of today’s PCs live on a precipice. One false click and the adware and malware invades. Live in the “Metro” environment, or use an iPad, and that is unlikely to happen. Use Windows RT (Windows on ARM) and it is even less likely, since most malware cannot install.

Surface could not have happened without Windows 8. The efforts to make it work as a tablet would make no sense.

Now we have Surface 3. How is Microsoft doing?

I have followed Surface closely since its launch in September 2012. The models I know best are the original Surface RT, the second Surface RT called Surface 2, and the original Surface Pro, which is my machine of choice when travelling. A few observations.

There is plenty that I like (otherwise I would not use it so much). It really is slim and compact, and I would hate to go back to carrying a laptop everywhere. It is well-made and fairly robust, though the hinge on the keyboard covers is a weak point where the fabric can come unglued. The kickstand is handy, and one of my favourite configurations is Surface on its kickstand plus Bluetooth keyboard and mouse, with which I can be almost as productive as with a desktop (I do miss dual displays). I can also use the Surface successfully on my lap. In cramped aircraft seats it is not great but better than a laptop.

There are also annoyances. Only one USB port is a severe limitation and seems unnecessary, since there is room along the edge. For example, you plug in an external drive, now you cannot attach your camera. Not being able to upgrade the internal SSD is annoying, though I suppose inherent to the sealed design. Performance was poor on the original Surface RT, though Surface 2 is fine.

More annoying are the bugs. Sometimes the keyboard cover stops working; detaching and re-attaching usually but not always fixes it. Sometimes the wifi plays up and you have to disable and re-enable the wifi adapter in device manager. Another problem is power management, especially on Surface Pro (I gather that Pro 2 is better). You press power and it does not resume; or worse, you put it into your bag after pressing power off (which sends it to sleep), only to find later that it is heating your bag and wasting precious battery.

The key point here is this: Microsoft intended to make an appliance-like PC that, because of the synergy between first-party hardware and software, would be easy to maintain. It did not succeed, and even Surface RT is more troublesome to maintain than an iPad or Android tablet.

Microsoft also ran into user acceptance problems with Windows RT. Personally I like RT, I think I understand what Microsoft is (or was) trying to achieve, and with Surface specifically, I love the long battery life and easier (though this imperfect) maintenance that it offers. However, the apps are lacking, and Microsoft has so far failed to establish Windows as a tablet operating system like iOS and Android. People buy Windows to run Windows apps, they make little use of the Metro side, and for the most part Surface customers are those who would otherwise have bought laptops.

Incidentally, I have seen Surface RT used with success as a fool-proof portable machine for running Office and feel it deserved to do better, but the reality is that Microsoft has not persuaded the general public of its merits.

Another issue with Surface is the price. Given most Surface customers want the keyboard cover, which is integral to the concept, the cost is more than most laptops. But was Microsoft going for the premium market, or trying to compete with mass-market tablets? In reality, Surface is too expensive for the mass-market which is why its best success has been amongst high-end Windows users.

Surface Pro 3 and the launch that wasn’t

That brings me to Surface Pro 3. The intriguing aspect of yesterday’s launch is that it was rumoured to be for a new mini-sized Surface probably running Windows RT. Why else was the invite (which someone posted on Twitter) for a “small gathering”?

image

Admittedly, it is a stretch to suppose that the Surface Mini was cancelled between the date the invitations were sent out (around four weeks ago I believe) and the date of the event. On the other hand, this is a time of change at Microsoft. The Nokia acquisition completed on  25th April, putting former Nokia CEO Stephen Elop in charge of devices. Microsoft CEO Satya Nadella has only been in place since February 4. While cancelling a major hardware launch at such short notice would be surprising, it is not quite impossible, and a report from Bloomberg to that effect seems plausible.

It is also well-known that Microsoft does not intend to continue with three mobile operating systems: Windows x86, Windows on ARM, and Windows Phone. Windows Phone and Windows RT will “merge”, though merge may just mean that one will be scrapped, and that it will not be Windows Phone.

The promised arrival of a touch-friendly Microsoft Office for Windows Phone and Windows 8 further will rob Windows RT of a key distinctive feature.

This does not mean that Microsoft will not complete in the growing market for small tablets. It means, rather, that a future small tablet from Microsoft will run the Windows Phone OS – which is what some of us thought Microsoft should have done in the first place. This is a company that sometimes takes the hardest (and most expensive) possible route to its destination – see also Xbox One.

Surface Pro 3 specs: a MacBook Air compete

Surface Pro 3 is a large-size Surface Pro. It has a 12 inch 2160×1440 screen, a pen, and a redesigned keyboard cover that has an additional magnetic strip which sticks to the tablet when used laptop-style, for greater stability.

The kickstand can now be used at any angle, supposedly without slipping.

image

The weight is 800g making it lighter than a MacBook Air.

image

though note that the MacBook Air has a keyboard built in.

Battery life is quoted as “up to 9 hours”. There is still only one USB port. Full specs are here.

The Surface Pro 3 looks like a nice device. In the UK it starts at £639 for an Intel i3 device with a tiny 64GB SSD (I am running out of space with 128GB). And don’t forget the cover which will be at least £110 on top (prices include VAT).

A sensible Core i5 with 256GB SSD and a Type 2 cover will be around £1200. Not a bad buy; though personally I am not sure about the larger size.

Note that Microsoft has now abandoned the 16:9 wide-screen format which characterised the original release of Windows 8, designed to work well with two apps side by side. Surface Pro 3 has a conventional 3:2 screen ration.

Declining vision

Microsoft’s Surface project had a bold vision to reinvent Windows hardware and to usher in a new, more secure era of Windows computing, where tablet apps worked in harmony with the classic desktop.

It was bold but it failed. A combination of flawed implementation, patchy distribution, high prices, and above all, lack of success in the Windows Store ecosystem, meant that Surface remained at ground level.

What we have now is, by all accounts, an attractive high-end Windows hybrid. Not a bad thing in itself, but far short of what was originally hoped.

Microsoft is moving on, building on its investment in Active Directory, Azure cloud, and Microsoft Office, to base its business on an any-device strategy. The market has forced its hand, but it is embracing this new world and (to my mind) looks like making a success of it. It does not depend on the success of Surface, so whether or not the company ends up with a flourishing PC business is now almost incidental.