Tag Archives: google

Google announces Cloud Build: CI/CD for the Google Cloud Platform

Google Cloud Next is under way in San Francisco, and yesterday saw the announcement of Cloud Build, Continuous Integration and Continuous Deployment for the Google Cloud Platform.

image

Cloud Build runs a series of automated build steps and then optionally pushes built images to Googles container registry. It is a natural fit with Kubernetes but can be used with both containerised and direct deployments.

You can create your own build steps or use a prebuilt one. The prebuilt steps are:

  • bazel: runs the bazel tool
  • curl: runs the curl tool
  • docker: runs the docker tool
  • dotnet: run the dotnet tool
  • gcloud: runs the gcloud tool
  • git: runs the git tool
  • go: runs the go tool
  • gradle: runs the gradle tool
  • gsutil: runs the gsutil tool
  • kubectl: runs the kubectl tool
  • mvn: runs the maven tool
  • npm: runs the npm tool
  • wget: runs the wget tool
  • yarn: runs the yarn tool

Note that dotnet is in there so you can use this immediately with .NET Core.

There is also an option to  build locally. For example, you could build locally and only after a successful local build, invoke Cloud Build.

Cloud Build integrates with GitHub:

With this new integration, you can easily set up CI through Cloud Build and automate builds and tests as part of your GitHub workflow.

I doubt Google celebrated when Microsoft acquired GitHub but it is good to see GitHub continuing to support diverse platforms.

Overall this is an important feature as Google races to extend its cloud platform to match what is on offer from its key competitors, AWS and Microsoft Azure.

Chromebooks get more useful as Linux comes to Chrome OS

At Google’s IO conference under way in San Francisco, the company has announced the ability for a Chromebook to run Linux applications.

image

“Support for Linux will enable you to create, test and run Android and web app for phones, tablets and laptops all on one Chromebook. Run popular editors, code in your favourite language and launch projects to Google Cloud with the command-line. Everything works directly on a Chromebook,” says product manager Ton Buckley. “Linux runs inside a virtual machine that was designed from scratch for Chromebooks. That means it starts in seconds and integrates completely with Chromebook features. Linux apps can start with a click of an icon, windows can be moved around, and files can be opened directly from apps.”

Squinting at the screen in Google’s photo, above, it looks like the Linux VM runs Debian.

Coupled with the existing ability to run Android apps, the announcement makes Chromebooks more attractive for users (and I am one of them) who would previously have found the operating system too restrictive.

Buckley presents the new feature as primarily one for developers. You will be able to build and test Android applications directly on the Chromebook. Given the operating system’s native support for Android, this should be an excellent machine for Android development.

One of the first things I would install would be Visual Studio Code, presuming it runs OK. Thanks to .NET Core, ASP.NET development should work. The LAMP stack running locally would be great for  PHP development.

Personally I would not only use it for coding though. The ability to run LibreOffice would be great, for example. There are also a ton of handy Linux utilities for admins.

Top feature: security

The key attractions of Chromebooks (aside from low prices from OEM vendors) is security. They are popular in education for this reason. They require less management than PCs because the operating system is locked down and self-patching. The new feature should not compromise security too much, because Linux runs in a VM and in the worst case resetting the VM should clear any malware – though access to user documents could make malware running in the VM quite disruptive.

Apple’s iPad Pro is another capable device with a locked down OS, but does not run Linux applications.

What about Windows? Microsoft has tried and so far failed to lock down Windows in a manner acceptable to its customers. Windows RT was the first attempt, but users found it too restrictive, partly because the Windows 8 app ecosystem was so weak. Windows S is another attempt; but progress is slow. Microsoft has also weakened the security of its modern app platform to make it more capable, even to the extent of allowing desktop applications into the Windows Store. The approach taken by Apple and Google, to design a new secure operating system and make it gradually more capable, is more viable than Microsoft’s work in the opposite direction.

Google’s Digital Garage, hosted by UK City Councils

I have recently moved into a new area and noticed that my (now) local city council was running a Google Digital Garage:

Winchester City Council is very excited to be partnering up with The Digital Garage from Google – a digital skills training platform to assist you in growing your business, career and confidence, online. Furthermore, a Google digital expert is coming to teach you what is needed to gain a competitive advantage in the ever changing digital landscape, so come prepared to learn and ask questions, too.

I went along as a networking opportunity and learn more about Google’s strategy. The speaker was from Google partner Uplift Digital, “founded by Gori Yahaya, a digital and experiential marketer who had spent years working on behalf of Google, training and empowering thousands of SMEs, entrepreneurs, and young people up and down the country to use digital to grow their businesses and further their careers.”

I am not sure “digital garage” was the right name in this instance, as it was essentially a couple of presentations which not much interaction and no hands-on. The first session had three themes:

  • Understanding search
  • Manage your presence on Google
  • Get started with paid advertising

What we got was pretty much the official Google line on search: make sure your site performs well on mobile as well as desktop, use keywords sensibly, and leave the rest to Google’s algorithms. The second topic was mainly about Google’s local business directory called My Business. Part three introduced paid advertising, mainly covering Google AdWords. No mention of click fraud. Be wary of Facebook advertising, we were told, since advertising on Facebook may actually decrease your organic reach, it is rumoured. Don’t bother advertising on Twitter, said the speaker.

image

Session two was about other ways to maintain a digital presence, mainly looking at social media, along with a (rather unsatisfactory) introduction to Google Analytics. The idea is to become an online authority in what you do, we were told. Good advice. YouTube is the second most popular search engine, we were told, and we should consider posting videos there. The speaker recommended the iOS app YouTube Director for Business, a free tool which I later discovered is discontinued from 1st December 2017; it is being replaced by Director Onsite which requires you to spend $150 on YouTube advertising in order to post a video.

Overall I thought the speaker did a good job on behalf of Google and there was plenty of common sense in what was presented. It was a Google-centric view of the world which considering that it is, as far as I can tell, entirely funded by Google is not surprising.

As you would also expect, the presentation was weak concerning Facebook, Twitter and other social media platforms. Facebook in particular seems to be critically important for many small businesses. One lady in the audience said she did not bother with a web site at all since her Facebook presence was already providing as many orders for her cake-making business as she could cope with.

We got a sanitised view of the online world which in reality is a pretty mucky place in many respects.

IT vendors have always been smart about presenting their marketing as training and it is an effective strategy.

The aspect that I find troubling is that this comes hosted and promoted by a publicly funded city council. Of course an independent presentation or a session with involvement from multiple companies with different perspectives would be much preferable; but I imagine the offer of free training and ticking the box for “doing something about digital” is too sweet to resist for hard-pressed councils, and turn a blind eye to Google’s ability to make big profits in the UK while paying little tax.

Google may have learned from Microsoft and its partners who once had great success in providing basic computer training which in reality was all about how to use Microsoft Office, cementing its near-monopoly.

Quick thoughts on Salesforce and Google Cloud Platform alliance

image

Yesterday Salesforce and Google announced a strategic partnership:

1. Salesforce named Google Cloud as “a preferred public cloud provider”. Salesforce says it “continues to invest in its own data centers”. However it will use public cloud infrastructure “for its core services” as well, especially in “select international markets.” Why is Google Cloud Platform (GCP) just a preferred partner and not the? Well, “AWS is a great partner”, as the release also notes.

2. New integrations will be introduced between Salesforce and G Suite (Gmail, Docs, Google Drive and Calendar for business), and there is a promotional offer of one year’s free G Suite for Salesforce customers. Note that the release also says “restrictions apply, see here”, with the see here link currently inactive.

3. Salesforce will integrate with Google Analytics.

Google has also posted about the partnership but adds little of substance to the above.

Why this alliance? On Google’s side, it is keen to build momentum for its cloud platform and to catch up a little with AWS and Microsoft Azure. Getting public support from a major cloud player like Salesforce is helpful. On the Salesforce side, it is an obvious alliance following the public love-in between Adobe and Microsoft Azure. Adobe competes with Salesforce in marketing tools, and Microsoft competes with Salesforce in CRM.

Google will also hope to win customers from Microsoft Exchange, Office and Office 365. However Salesforce knows it has to integrate nicely with Microsoft’s email and productivity tools as well as with G Suite. The analytics integration is a bigger deal here, thanks to the huge reach of Google’s cloud data and tools.

Nokia 8: a phone from the new Nokia brand that you might actually want

This morning I attended Nokia’s press breakfast here in Berlin, where the main product on show is the Nokia 8 smartphone. It is not quite a new launch – there was an event in London a couple of weeks ago – but it was my first look at HMD’s first flagship device.

image

HMD Global Oy was founded in May 2016 as a new company to exploit the Nokia smartphone brand. The company is “owned by Smart Connect LP, a private equity fund managed by Jean-Francois Baril, a former Nokia executive, as well as by HMD management,” according to the press release at the time. Based in Finland, the new company acquired the right to use the Nokia trademark on smartphones as well as “design rights relating to Microsoft’s Feature Phone Business” (what feature phone business, you may ask).

HMD made the decision to market a pure Google form of Android. I find it intriguing that a Nokia-branded smartphone was once powered by Symbian, then became a Windows device, and now has Google deeply embedded. The two companies are now “joined at the hip,” according to an HMD spokesperson this morning. Though it is a rather unequal relationship, with HMD having fewer than 500 employees and relying on outsourcing for much of its business.

A UK release of the Nokia 8, together with operator deals, will be announced on September 6th, I was told. The unsubsidised price might be around £600 (or Euros, the currencies being of nearly equal value in these Brexit days).

So why might you want one? Well, it is a decent phone, based on an 8-core Qualcomm Snapdragon 835 chipset, 2560 x 1440 display, 4GB RAM, 64GB storage, up to 256GB MicroSD, fingerprint reader and so on.

There are a couple of special features. The most obvious is that both front and rear 13MP cameras can be used simultaneously, enabling what Nokia inevitably calls “bothies”.

image

Is this a feature worth having? It is problematic, partly because taking good selfies is difficult without a selfie stick which most of the time you do not have with you, and partly because the view behind you is typically less interesting than the view you are trying to photograph.

I am not sure whether this matters though. It is a distinctive feature, and in a crowded market this is important.

I am more interested in another feature, called OZO audio. OZO is a professional cinema camera made by Nokia and the system in the phone is based on OZO surround sound algorithms. The phone has three microphones, and using OZO you can apparently capture a simulated surround effect even though the output is two-channel.

Although it seems counter-intuitive, I do believe in the possibilities of simulated surround sound; after all, we only have two ears. OZO works in conjunction with the phone’s video camera so you can capture more atmospheric audio. The demo was impressive but this is something I will need to try for myself before forming a judgement.

The other aspect of the Nokia 8 which is attractive is the company’s attitude towards Android modifications and bundled apps. Essentially, you get Android as designed by Google, plus Google apps and not much else. Operators will not be able to bundle additional apps, I was told (though I am not sure I believe it).

While I do not like the way Google constantly gathers data from users of its software, I do think that if you are going to run Android, you might was well run it as designed, rather than with additional and often substandard “enhancements”.

I hope to do a full review and will look carefully at the audio performance then.

Dear Google, since you provide no contact options, here is my problem

For many years I have used the Adsense program provided by Google to serve ads on websites that I run. In fact I was one of the earliest users. I have not earned a huge amount but have seen a regular flow of income, more than enough to provide my hosting costs.

Today I received a disturbing email, from a “no-reply” address. It reads as follows:

Hello,

This is a warning message to alert you that there is action required to bring your AdSense account into compliance with our AdSense program policies. We’ve provided additional details below, along with the actions to be taken on your part.

Affected website: sifa********.com

Example page where violation occurred: http://sifa********.com/drafted/enderby-filipina-teen-video/

Action required: Please make changes immediately to your site to follow AdSense program policies.

Current account status: Active

My first thought was that the email was not really from Google. However the email headers check out. And when I went to my Adsense dashboard I saw this:

image

OK, I thought, maybe my site has been hacked. But the domain is not mine. Nor does the IP no resolve to one that is anything to do with me. I looked up the domain, of course it is impossible to contact the registrant:

image

I traced the IP no to an ISP (UK based) and considered emailing its abuse email. However I have not visited the site and do not know if the content is legal or illegal, nor do I have any intention of visiting the site.

What about Adsense? Well, although I have this warning, the only site that shows up in my performance reports is itwriting.com. And the only domain authorized to serve ads is itwriting.com:

image

What do do then? Clearly I cannot fix the issue as it is not mine to fix. Possibly the owner of the site has entered my email address or other details as their own; I cannot prevent that.

So I need to contact Google’s Adsense team. But I cannot. In fact, I cannot contact anyone at Google. There is not even an email address I can use (I suppose the abuse email might reach someone). There are telephone numbers for the London office but all the options cut you off unless you can provide an account number as an advertiser. The people who run the websites on which many of the ads appear? Google does not care.

I am therefore taking the only option available to me, which is to post this in public.

Dear Google, the website referenced in your warning is nothing to do with me. I have no control over it. I cannot therefore take any action about it; and in fact I am offended by the implicit accusation in your email and the warning in my Adsense dashboard.

I am also disappointed that you provide no means of contact beyond a useless peer-to-peer help forum that for all I know is not even monitored by Google employees (a brief glance shows no replies from them).

I suggest that you remedy this with some emergency option for longstanding business partners.

And if this is the end of our partnership, because of my inability to respond, so be it.

Update: The problem has been mysteriously marked as “Resolved”:

image

Reflections on QCon London 2016 – part one

I attended QCon in London last week. This is a software development conference focused on large-scale projects and with a tradition oriented towards Agile methodology. It is always one of the best events I get to attend, partly because it is vendor-neutral (it is organised by InfoQ), and partly because of the way it is structured. The schedule is divided into tracks, such as “Back to Java” or “Architecting for failure”, each of which has a track leader, and the track leader gets to choose who speaks on their track. This means you get a more diverse range of speakers than is typical; you also tend to hear from practitioners or academics rather than product managers or evangelists.

image

The 2016 event was well up to standard from my perspective – though bear in mind that with 6 tracks on each day I only got to attend a small fraction of the sessions.

This post is just to mention a few highlights, starting with the opening keynote from Adrian Colyer, who specialised in finding interesting IT-related research papers and writing them up on his blog. He seems to enjoy being contrarian and noted, for example, that you might be doing too much software testing – drawing I guess on this post about the art of testing less without sacrificing quality. The takeaway for me is that it is always worth analysing what you do and trying to avoid the point where the cost exceeds the benefit.

Next up was Gavin Stevenson on “love failure” – I wrote this up on the Reg – there is a perhaps obvious point here that until you break something, you don’t know its limitations.

On Monday evening we got a light-hearted (virtual) look at Babbage’s Analytical Engine (1837) which was never built but was interesting as a mechanical computer, and Ada Lovelace’s attempts to write code for it, thanks to John Graham-Cumming and illustrator Sydney Padua (author of The Thrilling Adventures of Lovelace and Babbage).

image

Tuesday and the BBC’s Stephen Godwin spoke on Microservices powering BBC iPlayer. This was a compelling talk for several reasons. The BBC is hooked on AWS (Amazon Web Services) apparently and stores 21TB daily into S3 (Simple Storage Service). This includes safety copies. iPlayer was rebuilt in 2013, Godwin told us, and the team of 25 developers achieves 34 live deployments per week on average; clearly the DevOps stuff is working here. Godwin advocates genuinely “micro” services. “How big should a microservice be? For us, about 600 Java statements,” he said.

Martin Thompson spoke on the characteristics of a good software engineer, though oddly the statement that has stayed with me is that an ORM (Object-Relational Mapping) “is the wrong abstraction for a database”, something that chimes with me even though I get the value of ORMs like Microsoft’s Entity Framework for rapid development where database performance is non-critical.

Then came another highlight: Google’s Micah Lemonik on Architecting Google Docs. This talk sadly was not recorded; a touch of paranoia from Google? This was fascinating both from a historical perspective – Lemonik was involved in a small company called 2Web technologies which developed an Excel-like engine in 2003-4, and joined Google (which acquired 2Web) in 2005 to work on Google Sheets. The big story here was the how Google Sheets became collaborative, so more than one person could work on a spreadsheet simultaneously. “Google didn’t like it initially,” said Lemonik. “They thought it was too weird.” The team persisted though, thinking about the editing process as “messages being transferred between collaborators” rather than as file updates; and it worked.

You can actually use today’s version in your own projects, with Google’s Realtime API, provided that you are happy to have your stuff on Google Drive.

I particularly enjoyed Lemonik’s question to the audience. Two people are working on a sheet, and one types “6” into a cell. Then the same person overtypes this with “7”. Then the collaborator overtypes the same cell with “8”. Next, the first person presses Ctrl-z for undo. What should be the result?

The audience split neatly into “6”, “7”, and just a few “8” (the rationale for “8” is that undo should only undo your own changes and not touch those made by others).

Google, incidentally, settled on “6”, maintaining a separate undo stack for each user. But there is no right answer.

Lemonik also discussed the problem of consistency when there are large numbers of contributors. A hard problem. “There have to be bounds to the system in order for it to perform well,” he said. “The biggest takeaway for me in building the system is that you just can’t have it all. All of engineering is this trade-off.”

image

I have more to say about QCon so look out for part two shortly.

Blocked from Google search: agree our terms or else go away

Late last week I encountered behaviour from Google that I had not seen before. It was related to my habit of not signing into Google automatically; I only sign in when I want to use Google+ (I know; but I have quite a few followers there and use it from time to time). Nor do I always use Google for search; I have Bing set as default, but Google is better for some kinds of searches – such as the kinds of searches admins and developers make when trying to fix a problem – so I use whichever one I think will get me the best results.

I therefore hit Google, only to find that I could not proceed. The only thing on the page was a notice stating that I could only continue using Google services if I “review key points” of Google’s Privacy Policy.

google-privacy

The word “review” turns out to be misleading. The next banner you see asks you not only to review but also to click “I agree” to a range of statements including delivering “ads based on your interests”.

google-privacy2

If you click “Other options” you find that there are none, other than a list of minor tweaks you can make to your settings on a per-browser basis.

In my experience these do not work well anyway. I have opted out of every interest-based ad that I can, but I still see many ads that are obviously “interest based”, such as ads that mysteriously match recent searches on ecommerce sites.

Once you have reviewed these options, you have to go back and click “I agree”, or give up using Google search.

Most web sites in the EU now have at least some form of cookie consent banner, but in my experience it is rare that a site blocks you completely. Some simply state that by continuing you implicitly agree to their terms. Some let you dismiss the banner with an x, leaving ambiguity about whether or not you agree. Google has gone for the nuclear option: unless you specifically agree, no search for you. I found the same banner both on Google.co.uk and Google.com.

My immediate question was in what circumstances Google chooses to block search (and other services) until you agree its policies. I asked Google, but have yet to receive a reply; if and when I do, I will update this post.

It seems that some others also noticed this change of behaviour. Privacy advocate Aral Balkan tweeted about it.

image

Google is doing the right thing here, if it is not willing to let you use search or YouTube, for example, unless you agree its policies. No doubt it is trying to stay the right side of the law, especially in the EU.

At the same time, I do for some reason find this disturbing. Agreements like this are one-sided; there is no use in my trying to get Google to change some clause or other because I do not agree. Further, the extent to which I have choice in the matter is limited. Perhaps I can do my job without Google search, but without *any* Google services? What if I want to report on a conference where the sessions are on YouTube? Google has not created this content, but does deliver it. Is it reasonable for me to tell people, sorry, I cannot report on that, because it is on Google and I do not agree with its privacy policy, that feeds me pestilential interest-based ads and records my data in ways I cannot control?

You have choice but not that much choice; and the same applies to Facebook, where you may information that requires log-in and cannot easily be obtained elsewhere. I am sure that to most people putting something on Facebook is exactly equivalent to putting it on the Internet, but it is private property and there is a distinction.

Cloud storage sums: how does the cost compare to backing up to your own drives?

Google now offers Cloud Storage Nearline (CSN) at $0.01 per GB per month.

Let’s say you have 1TB of data to store. That will cost $10 per month to store. Getting the data there is free if you have unlimited broadband, but getting it all back out (in the event of a disaster) costs $0.12 per GB ie $120.

A 1TB external drive is around £45 or $58 (quick prices from Amazon for USB 3.0 drives). CSN is not an alternative to local storage, but a backup; you will still have something like network attached storage preferably with RAID resilience to actually use the data day to day. The 1TB external drive would be your additional and preferably off-site backup. For the $120 per annum that CSN will cost you can buy two or three of these.

The advantage of the CSN solution is that it is off-site without the hassle of managing off-site drives and probably more secure (cloud hack risks vs chances of leaving a backup drive in a bus or taxi, or having it nabbed from a car, say). Your 1TB drive could go clunk, whereas Google will manage resilience.

If you consider the possibilities for automation, a cloud-based backup is more amenable to this, unless you have the luxury of a connection to some other office or datacentre.

Still, even at these low prices you are paying a premium versus a DIY solution. And let’s not forget performance; anyone still on ADSL or other asymmetric connections will struggle with large uploads (typically 1-2 Mb/s) while USB 3.0 is pretty fast (typically up to 100 Mb/s though theoretically it could be much faster). If you have the misfortune to have data that changes frequently – and a difficult case is the VHDs (Virtual Hard Drives) that back Virtual Machines – then cloud backup becomes difficult.

Reflections on BoxDEV: keeping ahead of SharePoint, Changing Microsoft, and Eric Schmidt on Surveillance

Earlier this week I attended BoxDEV in San Francisco, along with around 1500 developers and some illustrious guests: Eric Schmidt from Google and Marc Benioff from Salesforce.

Schmidt was interviewed by Box CEO Aaron Levie. “Randomly watching and surveilling what’s going over the internet and invading the privacy of American citizens is not OK.” said Schmidt; but he was not talking about Google, rather about the NSA. “Encryption is the solution” he said. It was all rather bizarre, as the king of data gatherers promised to protect our privacy, but he also made some fun comments about how most enterprise IT spend (90-95%) goes on legacy systems that will be replaced by cloud and mobile. A future in which two or three companies run all the world’s IT? Some more quotes on the Reg here.

image

What of Box though? Most people (individuals that is) probably think of Box as a cloud storage competitor and an alternative to DropBox, OneDrive or Google Drive. So it is; but the company sees itself as an enterprise collaboration platform rather than a commodity storage provider. Levie expressed the company’s intended differentiation neatly in the closing Q&A:

We build enterprise software with consumer grade experiences. There is not a lot of competition.

Box is working hard at ticking compliance boxes (sorry) and providing a service with which enterprises are comfortable.

This wasn’t a big event for announcements, but the company did present Box Developer Edition; a confusing name in my opinion as it sounds like a Box account for test and development but it is not; it is a new type of Box application where you can provision your own users. The system creates shadow Box users under the covers, but it gives the illusion of a fully custom Box platform.

There are also new mobile SDKs. Box has split its SDK into modules, covering Content (the core), Browse, Share and Preview. The latter three include UI components as well as a non-visual wrapper for what is ultimately a REST API into its system. The Content and Browse SDKs support Windows Phone as well as iOS and Android, but Share and Preview are iOS/Android only. Microsoft is a Box partner though (and a sponsor of the event); it would not surprise me to see a Universal App SDK from Box in due course.

The Box View API is particularly interesting since it lets you render the content of numerous file formats as HTML. Getting this sort of stuff to work correctly is a challenge and it does add a lot of value to content-oriented applications. There are limitations. For example, if you have a PowerPoint document with an embedded video, the video will not render. There is some impressive technology here though, and Box is focusing on further improving it with acquisitions like that of Verold last week, which brings interactive 3D viewing to the platform.

I had a chat with Senior VP of Engineering Sam Schillace – he was one of the founders of Writely, a web-based word processor which was acquired by Google, and ported from C# to become the basis for an important part of Google Docs. Schillace is intimately familiar with the challenges of working with Microsoft Office formats and I’ve written up some of his remarks for the Register in a piece which will appear shortly.

I was also interested to note how many of the features of Box are also in SharePoint and Office 365. Again, I’ve covered this for the Register, but will say that it is just as well for Box that parts of SharePoint remain problematic, particularly the desktop sync aspect. The complexity of SharePoint is another issue. Box does less than SharePoint in many respects (there is no equivalent to the Office Web Apps, for example, which let you edit in the browser) but if Box does less, but more reliably and with a better user experience, it can still succeed. On the other hand, if Microsoft manages to get SharePoint working really sweetly, particularly in its Office 365 guise, it will be tough for Box to compete, especially as Microsoft builds features like Office Delve which does intelligent search in SharePoint online and hooks into Office 365/Azure Active Directory groups and “social signals” from other parts of Office 365 such as Yammer.

This is a young, smart company though and capable of keeping ahead if it remains nimble.

Finally I must mention the closing Q&A with Levie. There were plenty of daft questions, one of which was “Did Microsoft sponsor BoxDEV so that you couldn’t make fun of them this year?”

“Satya Nadella isn’t as funny as Steve Ballmer,” says Levie, but added, “we have changed how we talk about Microsoft because Microsoft has changed as a company.”

A though-provoking remark on the eve of Build, which is on next week here in San Francisco.

image