Delivering Apps on Demand at University of Michigan - Webinar
Don Lambert, manager of the CAEN computing environment at University of Michigan, shares how they deliver over 95% of Windows software apps on demand anywhere, and their future plans for BYOD.
Software on demand - Download the slides
Download the slides from Don Lambert's presentation at the LabMan 2017 conference; Delivering Software on Demand at University of Michigan using AppsAnywhere and Cloudpaging.
(PDF, 509 KB)
Download Don Lambert's presentation "Software on Demand at University of Michigan" from LabMan 2017.
Delivering Apps on Demand - Webinar Transcription
Nick: Good afternoon, everybody. This is Nick Johnson, I’m from AppsAnywhere. Welcome to, if you’re on the east coast, this afternoon’s webinar. If you’re on the west coast, it’s this morning, and if you’re in Europe, good evening and thank you for joining us on a Friday evening. Just to set the scene, we’ve got about 30 states covered today with people joining us from Oxford, Canada, the UK, and I saw a few other countries so thanks everyone for joining us. We appreciate your time. Thank you also to Don Lambert from Michigan, who is going to share his story and experiences today on AppsAnywhere technologies, and application virtualization, and application deployment in general.
Just quickly, before I hand the phone to Don, if you’re not aware of AppsAnywhere, we work with about 100 universities now across 15 countries. We have offices in 4 countries, we work exclusively in education, and as a team we’ve met something like 6-to-700 colleges and universities across the globe. Now, rightly or wrongly, I don’t change my slide deck for wherever I am. For everyone here, there will be many similarities in the types and names of applications you need to deploy, and perhaps that you struggle with. Whenever we talk to people, it’s the same issue, that their desktop image is too big, their logon speed is too slow, how do we solve bring your own device [BYOD] and perhaps afford it, and how do I deliver apps like SPSS, Solid Works, MATLAB and all those large horrible ones, or ones with plugin dependencies and drivers, so that’s the story that Don will help share today on his experiences. And with that, I will hand to Don and let him lead things away. Over to you, Don. Thank you.
Don: Okay, thank you. As Nick was saying, my name is Don Lambert, I work for the University of Michigan, College of Engineering, and I work for the central IT group for the college called CAEN. My title is the Manager of Student Computing Environment. What that means is the guys that work for me build and deploy our dual boot desktop systems for the student computer labs. CAEN is just the central IT provider for the college. There is department providing the IT and there is also the central campus providing the IT.
The student computing environment that I’m mostly responsible for is what we provide to all the College of Engineering. These are the student computer labs that everybody uses. We have 11,000 students, 300 faculty and 1,000 staff. My group deploys 1,300 computers across about 27 locations on campus, but what we’re really deploying is the engineering-specific applications. Today, we’re using Windows 10. We have 200+ applications, all our students get 50GB home directories, and we provide them with $34 worth of printing. For a student, that’s about 1,100 black and white, single-sided pages.
Back in 2003, in the fall, we had university audits come in and they did a software audit on us. As part of that software audit, we came up with a list of things that we needed to do. Very specifically, they were all our own appropriate use of licenses, who can and can’t use licenses, and what can they use the licenses for. As part of this audit, our original thought was maybe we could just buy our way out of it. What that was going to take is we had 1,300 applications that if we purchased them as a research-eligible application, we could just run research apps everywhere and we could just solve our problem. That was going to cost us $1.1 million just to purchase those 13 applications. My annual software budget right now is about $400,000, so there was no way I could do the entire suite as just research titles. Instead, we were able to go back and we could afford to buy a few seats of each of those licenses and we spent about $93,000.
So at this point, what I needed to be able to do was deploy these applications, both research and student licensing, to my environment. So what I was looking for was a way to virtualize 100% of my applications and allow the students to pick the proper license at run-time. What I had at the time is I had App-V from Microsoft. We had a really strong active directory, we had a lot of group policy knowledge, we had a lot of file system knowledge, and we had SCCM. As we were working with these tools, we found that App-V wasn’t going to be able to do what we needed to do. We had too many applications that we couldn’t virtualize. We could only virtualize about 40% of our apps. Many of our apps, being engineering titles, had way too many files, they were way to big, as far as total file size, some of them had services, some of them had drivers, and we just couldn’t use App-V to solve our entire problem.
What we ended up doing for the fall of 2014, is we split our environment up. We ended up having two nearly identical load sets for the students. We instructed them to pick the proper seat to sit at, at the time. It became very clear to us that students were picking the seat that they wanted. They were picking the seat that was closest to the windows, closest to the printers, not necessarily the seat that had the appropriate license for that. As you can imagine, this splitting our environment was, in our minds, a temporary solution. We were looking for a better solution. We actually deployed the INR loads [the split environment] on July 15th. We actually started on August 14th with our pilot of AppsAnywhere. We knew we did not want to live in this space.
So for the fall of 2015, we actually had our full role out of Application Jukebox [AppsAnywhere] with AppsAnywhere. At the time, we virtualized 95% of our applications. The reason we didn’t hit 100% is there was some applications that we chose to leave local. We left Microsoft Office local, we left Visual Studio local, our printing software is local, our AFS and media client software is local, the web browsers are local. This is why we didn’t hit 100% but that was by choice, not for any other reason. The other thing we liked that we were able to give to students, as my example here on MATLAB, is the option to pick which version of MATLAB they needed for the session they were sitting down at. For example, a grad student who was doing graduate work, they choose the research license. An undergrad student could use the exact same computer and choose the instructional license. It was a per-session choice for the students.
A second phase of our rollout was to take the applications that we just spent all this time virtualizing, and we delivered them to the central IT site’s computer labs. This is a place where we don’t manage the machines, we don’t manage the OS, we have no administrative rights. All we had to do was ask them to install the Jukebox administrator [AppsAnywhere] client for us and we were then able to deliver additional applications to them. So in the end, we were able to deliver 17 of the top 25 engineering apps to central campus. The reason there is only 17 is 3 of the top 25 applications are in Linux. We also got lucky that there are a few apps, that we marked here with an asterisk, that central IT already had deployed on central campus for other departments.
So things we learned in our first initial rollout in 2015-2016 is that we ran into problems with students not knowing which applications are part of suites. So for example, I’ve got Fluent, HFFS, Maxwell—they are all part of the Ansys suite. A student had to download Ansys if they wanted to run Fluent. By October, we were actually getting questions from people saying they couldn’t find a piece of software, and the things they couldn’t find were the software applications we left local. It could not find Office in the Start menu like it’s always been. They had gotten so used to going to the [AppsAnywhere] portal that they couldn’t find local applications. Solidworks was a problem for us because Solidworks had a very large registry and that made it slow to virtualize. So that just meant when you download Solidworks, instead of having it up and ready in under a minute, it would take maybe 2, 2-and-a-half minutes to get loaded. Over time, we also realized we had a problem with the size of the registry expanding. Many of the registry files are installed per user. On a very busy machine, with 70 or 80 different users, the registry started to expand. We did work with AppsAnywhere; they were excellent at helping us find a solution for this. We have a couple logout processes now that totally maintains the registry.
For our second year, this year, fall of 2016, the change we made is we went to Windows 10. This was huge as far as performance. We are very happy to be with Windows 10. AppsAnywhere actually made it very easy to go to Windows 10 because all of the virtualization apps. We were just able to put the player on a Windows 10 test machine, download the apps, try them all out. We had our testing for Windows 10 done in about 2 weeks because of what we were able to do with the Jukebox solution, with the AppsAnywhere solution. One of the things we’ve done, we made better descriptions of the applications. This will help students find things along the lines of “Where was that Fluent that I couldn’t find last year?” They can now see it’s part of Ansys. We came up with a solution for ourselves that allowed us to make some sort of a hybrid application deployment. We’re using this now for MATLAB. MATLAB worked just fine as a virtualized application but we also saw that there were times that there were certain things that took a while. Particular things that took a long time were file accesses. MATLAB had 39,000 files and 18,000 directories so there are certain times when it would want to choose things like index of toolboxes—that took a little bit longer than we’d like—so we took that option to make that local. We left the license for it to virtualize on Application Jukebox. So a student still goes to the portal, still downloads that application like before, even though some of the bits are running local. We’re actually releasing the Cloudpaging [Jukebox] client to the CoE departments, so we’ll take the same applications and now we’ll make them available to our grad students in their home departments. They won’t have to come to my computer lab to actually run the application. We’re also starting to work on our own BYOD plans for the fall of 2017.
This is an example of how we used the Jukebox descriptions to make it easier for students to see what the application is, who can use it, what they can use it for, if there are any additional restrictions, like export control, it’s only available on campus. So far, I’ve been very happy with our solution. Our students have picked up on it, they’ve really adopted it very quickly, and I look forward to expanding this over the next year.
Nick: Don, thank you very much. That’s really insightful. Just a reminder for people: if you have any questions, if you use the question tab, if it’s a simple yes/no, one of us will respond. If it’s a more detailed question, then questions are done at the end. Before we do that, I’m going to hand the floor to Phil Morgan. Phil joined AppsAnywhere from University of Lancaster this year, where he was head of IT for one of the schools for 10 years, so he comes to us as a customer, and looks after our customers. Phil’s going to provide a quick demonstration of AppsAnywhere and S2Hub, which is the frontend piece for AppsAnywhere Solution.
Phil: That’s great. So hopefully you can all see the AppsAnywhere Hub on screen now. This is our demo of AppsAnywhere Hub, so we just have a nice stock image here and we have the login page. Usually this is replaced with single sign on at the university and I’d just log in with university credentials. I’m just going to login in here with my demo credentials. And when I log in, you’re going to see something happens. What you’ll see is this Validating Session appear. What happens here is a little application has just run through the Cloudpaging player on my laptop here. And it’s just gathering a little bit of information about my laptop. This is a university laptop, obviously not a personally owned laptop. It’s working out where I’m based. I’m currently in the United Kingdom. It works by connecting to the university domain and it feeds that information back to the AppsAnywhere Hub, and it uses that information to determine which apps I’m allowed to run in my current location, using the computer I’m using and with the access that I have.
You can see it’s started a number of applications here and I can start to look through these applications. If I click “Launch” on 7 Zip here, what happens is that starts up and the 7 Zip will launch with the Cloudpaging player, and a few initial pages are downloaded onto my computer, and then the app is virtualized, and it begins running on my laptop here. So 7 Zip is a very quick one, and if I choose a slightly larger application like Blender—we’ll just do this process again, so I click “Launch” and it’s downloading to the Cloudpaging player, and what the software does, and one of the unique features of Cloudpaging, is that it doesn’t need to download the entire application in order to virtualize on the computer. What it does is it just downloads enough of the application to get it loaded to do that virtualization and it gets the application running. Then when I begin to actually use the application, the rest of the files and components that are needed are brought down on demand, just in time. That’s the kind of unique thing about Cloudpaging, is we can deliver these applications much faster than a normal downloaded install, but we’ve got the benefit of actually running natively, so we might have a look and be able to see that Blender is actually one of the applications that is running on my computer. So this is running natively; I’ve got native performance and with a much faster delivery time.
It’s not just Cloudpaging that we can deliver to AppsAnywhere Hub. We can also deliver direct downloads, so here we’ve got an example of Adobe Acrobat Reader, where if I click “Download” I’ll actually get the download link to the trusted installment. That’s really key because when staff and students are looking for software and they’re Googling for software, they’ll often come across malicious installers, so this allows us to have one trusted location for all staff and students to locate software. So we can do Cloudpaging, we can do direct downloads, we can host downloads with the AppsAnywhere Hub, and we can also integrate MSI packages in here, so we can do install on demand, and additionally we can integrate with RemoteApp, so that we can deliver the same Cloudpaging to Mac users as well. It’s really nice. You’ll notice that the Hub here looks a little bit different than the little screenshot that Don showed earlier. I’ll show you a couple examples in a moment, but it’s got a really nice interface here. I can just start to search for applications, and narrow that down really easily as I type, and we can also favorite applications, so when staff and students move between computers, they can quickly get to the applications that they use most frequently. We also have a category option as well and some universities like to do this with browsers or fun stuff, and others like to do by departments like engineering or business. So we’ve got these features built in.
We can also see quite easily who and where these applications are available to. So you’ll notice here that there are a couple of applications that are faded out. This iTunes application here, and there’s a little clue in the name there why I can’t use this one right now, but if I click on “Launch,” I get a nice, clear message that I have to be on a compatible operating system. The reason being here is this is a 32-bit application. It’s been set as only compatible with 32-bit computers and I’m running a 64-bit version of Windows. If I go into the “More Info” option on an app, I can actually see all of the details on all of the different operating systems that this app has been marked compatible with.
Just to show you another example, I’ve got another application here, which is QuickTime, which is also faded out. If I click “Launch” on QuickTime, then I get a message that I can’t launch this because I’m not in a valid region. So if I go in and look at the more information about QuickTime, I can see if I look under the regions that this application is only available in the United States. I’m in the UK at the moment, so I can’t use it from my present location. And you can also see restrictions that we have for the criteria here, so we can set whether applications are available off domain, whether they’re available off-site, or even on user-owned devices. And these criteria are checked every time an application is launched so that we can adhere to the license terms.
We also have reporting in the Hub, so we can see the usage right down the seconds for the cloud-based applications that are being used. I’m just going to bring up a couple of slides here that we’ve got here. Don was kind enough to send over some shots of his own in AppsAnywhere Hub. This is the AppsAnywhere Hub of Michigan, so they’ve got their own image obviously on the login page. You can see here, Don’s customized his with the University of Michigan logo, which is quite easy to do through the opening settings. You’ll notice as we scroll down here a little bit, Don talked about the different types of licenses that they have, and you can see here, he’s put some extra details in about how those license restrictions apply to those applications, which is great. We can do further than this. We can do full customization of AppsAnywhere Hub. I just wanted to give you one other example. This is from a university in the UK called Glasgow Caledonian University, they’ve got the app store view, rather than the list store view that we’ve just seen, and they’ve customized this quite a bit. They’ve put a banner in there so they can load in some FAQ information. One of the really nice things they did is when they rolled out to BYOD, they changed the banner and they were able to use that to promote to the students, so it was quite a nice way to do that. We’re really looking forward to working with Don as he rolls out his BYOD services at Michigan, hopefully next year, but for now that’s all for me. I’m going to hand back over to Nick and I think Nick is bringing some questions together for Don.
Nick: I am. Thanks very much, Phil. Just as a reminder, people, if you see on the right-hand side, the GoToWebinar instructions, there is a question tab. I had a few questions, mostly Don-related, but a couple of them are BYOD, so I may throw these at Phil, because when Phil was at Lancaster, they did roll out a very successful BYOD and he’s more experienced there. But I’ll start with one of the questions for Don, if I may. First of all, someone says, “Many of the engineer applications you listed are GPU-intensive. Have you needed to architect anything around any resource constraints?”
Don: No, we don’t because the Application Jukebox—our Cloudpaging applications run on the native hardware. It’s not like a remote app or VDI solutions. They’re actually running on the local machine, so they take advantage of the local GPU. We didn’t have to add anything extra like a GPU on the back end, because again, the applications are being streamed down and run locally. We do here, at the university, also have a VDI solution. Our VDI solutions is GPU-enhanced. For us, what Cloudpaging did, was it allowed us to slim down the image that we have on our VDI machines. We used to have a 300GB image because it had 200+ applications in it. We now run closer to a 60GB image and the students choose the applications they want as they use them.
Nick: Thanks, Don. Someone else asks, “Why didn’t you continue with App-V?”
Don: We ran into too many problems with applications that we couldn’t virtualize. At the time there was a 4GB limit virtualizing the applications in App-V. I’m not sure if that still exists today or not. But something like MATLAB is 9GB of data, so it just couldn’t be virtualized. We also ran into issues with total file count; App-V can only handle so many files. We just had things that didn’t work.
Nick: Great. Thanks, Don. The next question is someone says, “Can these installers run a system, or some elevated account, without inducing the admin access to install files?”
Don: The Jukebox player does run with some system privileges, so it can actually do installs, specifically when it’s trying to install a service that runs on the machine or a device driver. So the users themselves don’t need to have any additional privileges. Our users are just users. They don’t have anything local on the machines. And our machines are still tied down very tightly with Apple. The students can’t install anything by themselves anymore.
Nick: Thanks, Don. The next question is BYOD-related, so Phil, I’ll throw this one your way if you don’t mind. The question does ask, is Michigan doing off-campus access yet, which I don’t believe they are, but the question is “When delivering apps off-campus, for instance to dorms, are there performance issues where there are lots of devices competing for network resources?”
Phil: Thanks, Nick. No, I think that’s one of the main benefits of the Cloudpaging technology. What happens is, as the application is paged down to the end user’s machine, those pages are cached, so once the student has launched the application for the first time, there is an initial download that happens. That might take a few seconds for a small app. It might take 30 seconds or a little more for a larger app, but once that application is running, those pages are cached locally. And the application then behaves as if it was locally installed. It’s also possible to set applications to be available for offline use, which is a real benefit, particularly if people are travelling and they might lose the network connection or the Wi-Fi signal. So once the applications are down, they can behave just as if they’re actually installed. The nice thing about having the virtualization in there is that when that user is no longer entitled to use that software license, it expires and it is completely removed, so there is no trace left behind of the app or the license key when the application is no longer available to them. So generally we don’t really have issues with network resources, and it’s nothing more intensive than perhaps watching a YouTube video.
Don: I absolutely have to agree with Phil on that. We run student computer labs for our classes. We’ll have, depending on the lab, 30 to 40 students come in, they’ll all launch the same application at the same time, and it does not cause network bottom exports.
Nick: Great. Thank you, Don. Next question, somebody asked, “If you took a justification of expenditure—I guess cost-benefit analysis against other types of technologies—and I recognize that that’s always a high priority requirement in higher education.”
Don: We did. We’ve gone through some Gartner surveys and looked at what was available in the marketplace. After going through those reviews, that’s when we chose the pilot, Application Jukebox [AppsAnywhere] with AppsAnywhere. We actually looked at what was available and the first offer, were limited based on feature set, and then that’s why we chose this for our pilot.
Nick: It’s a lovely question here. And I suspect this person was afraid I wouldn’t ask it. Somebody asks, “What’s the downside if I asked the support technologist questions back to your students, what would they complain about?”
Don: I think the places we heard our first set of complaints was when we had the issue with the registry issue. As the registry got bigger and bigger, the machines got slower and slower. That was something that we weren’t expecting. It was something that we worked through with AppsAnywhere. We came up with a solution in probably just over a week by the time we had everybody working and understanding the problem. It took us all a while to understand what the problem was. That was probably the biggest headache we had. Graduating seniors, who this that a brand-new technology for, were hesitant to do it. I have not had a single complaint this year. This is our second year of it. Our freshmen are used to it, the people who were juniors last year have gotten used to it, so every time you make a change in technology, somebody complains but it’s been really good for us. If it wasn’t, I wouldn’t be taking my time to talk about it today.
Phil: It may just be worth mentioning that we’ve got version 9 of the Cloudpaging. It’s just being released at the moment and what I think is really good is listened to the feedback from Don and other customers, and they’ve actually changed the way that the registry virtualization works, and that has made a huge difference. And it’s also increased performance as well, so it’s just worth mentioning that.
Nick: Thanks, Phil. And Don, I’ve got two questions. I guess they’re both in a similar area. One person asks, “What the license position is for the students running BYOD?” And somebody else asks, “How do you get around running some apps from home by licensing those?” I don’t know how much time you’ve invested in that. I know Phil can come in as well but I thought I’d throw the question to you first.
Don: This is exactly why our BYOD project is a year-long project. We need to go back and work through our individual vendors to make sure that they understand we are delivering the software to the students’ computers, that we are keeping it secure, that we can expire and retract licenses as appropriate that people aren’t walking with an application after they graduate. We had the same type of issue when we started using VDI to begin with, is that we had to explain to the vendors how we were using it, how the students couldn’t copy this off, or just getting access to the remote software. At least I think that’s answering the question you were asking me.
Nick: And Phil, do you want to share some of your experience? I know you spent a lot of time working with vendors when you were at Lancaster.
Phil: Yeah Nick, absolutely. And I think the key is I would go to the vendors when I was doing the project. The way that students want to work is changing. And to some extent, having rows and rows of lab computers is quite old-fashioned nowadays. A lot of the students have got their own laptops, they expect they’ll be able to access the software, whether it’s through VDI or whether it’s via technology like Cloudpaging. I would say Cloudpaging actually makes things quite simple for us because a number of the licenses that we have already cover students to use software on their own laptops. And what Cloudpaging gave us was a way to monitor that, a way to actually enforce the licences and get the usages statistics as well. And I think where most technologies end is in practically being able to deploy an application to a group of users or a group of machines. But with the controls that we’ve got in the AppsAnywhere Hub, we can say whether an application can be used on a student’s personal computer or not, we can say whether they can use it away from campus, we can say whether they can use it within the US or within the UK when they travel. So having those extra license controls is really important and actually makes it a lot easier to have those conversations with the license vendors. I think the other thing that’s really nice about the AppsAnywhere Hub is we can deliver it with Cloudpaging, but we can also deliver with RemoteApp and integrating with other technologies. So we’ve kind of got the best of both worlds where the vendor lends itself better to a native installation. We can do that and accelerate that with Cloudpaging. And whether the license lends itself better to VDI environment, we can deliver through the VDI. So it’s nice to have both of those options in the mix.
Nick: Thanks, Phil. One for you, please, Don, “Are there any applications that you could not virtualize?”
Don: The honest answer is we gave up on LabView. We got close to deployment and we decided that if we had another week or so, we could probably get it right, but in the end we gave up and made it a local application. LabView has got a lot of servers, it has a lot of drivers—the other thing about making LabView local was it allowed some of our faculty members to have private labs for teaching to be able to add additional device drivers easily. That was the only app that we tried to virtualize, and in the end, decided not to.
Nick: Okay, thank you. Someone else asks “Do you run CAD software with AppsAnywhere on your VDIs?”
Don: Absolutely. We run Autodesk, we run SolidWorks, CATIA, we run everything. There’s no difference, from the students’ perspective, between our physical machines and the VDI machines.
Nick: Thanks, Don. We’re also asked, “You said the move to Windows 10 took about two weeks of testing. What was the initial start-up amount of time?”
Don: I’m not 100% sure I understand the question. That’s what it took us to be able to take the time to run all the applications. These were basically last year’s applications. They were our 2015 versions of apps. To make sure that we had a baseline, we knew which apps were and weren’t going to be able to work, so I was able to tell my management, with a level of certainty, that we were going to be able to move to Windows 10, and the applications were going to work. Annually, we replace applications. We went from Office 2013 to Office 2016 as part of our rollout. We installed the newest version of MATLAB. So we definitely had to repackage new apps for our rollout this year, but that’s part of our normal process anyway. So I’m hoping I answered the question that was being asked.
Nick: That’s great, thanks Don. Someone asked—I’m low on time but please keep the questions coming. If we don’t get to people’s questions, we will follow up personally afterwards. Someone asked, Don, if you could very quickly describe your infrastructure to run the solution?
Don: Absolutely. We run everyone on VMware virtual machines. For the most part, those machines have two cores, 4GB of memory, and 80GB of disk space. There are two front end web servers, there are two streaming web servers, there are two licensing servers, and then there’s a database server. The only machines that have more disk space than the rest are the streaming servers because they actually hold the disk. So I think those are at 400GB of disk space a piece, but they’re all relatively small VMs. We don’t have any type of load balancer. We are just using a round robin DNS for everything, and it’s been very robust for us.
Nick: Thanks, Don. And just, again, very conscious of time, last question, someone asked, “You’re talking about Windows users. What about Mac and other types, Unix, Linux, etc.?”
Don: That’s a great question. We are actually starting on Monday with a pilot to use the RemoteApp option that comes from AppsAnywhere, which will allow them to use the same web interface, but for these Windows apps, it will allow them to connect, get a RemoteApp window from a terminal server, allow them to run some of these non-native applications on their Macs. Maybe Phil can tell you more but we’ve looked at it, we’re ready to start a pilot, and I think it’s Ryan [AppsAnywhere Technical Manager] who is on our campus on Monday.
Nick: Thank, Don. Anything else Phil, on that front?
Phil: I think what we’re also looking at is integration with different technology, so we’ll be able to deliver to Macs with RemoteApp, but we’re also looking at integration with Citrix, and ultimately with VMWare as well, so we’ve just got different options within the AppsAnywhere Hub. It’s really nice. We can choose the most appropriate delivery method for an app, depending on the client, whether it’s into a VDI section, or whether we’re delivering an app natively, and to a Windows user or to a Mac user, and it’s worth mentioning that the Cloudpaging technology, as long as there is a Windows operating system that will work, so if a student’s using a Mac and they’ve got Bootcamp, and they can access the Windows applications through the Hub. Same thing if they’re using something like Virtual Box on a Linux device, but we’re starting to integrate more delivery methods so that we can actually deliver out natively to different platforms. One of the things we’ve got in the works is native Mac delivery as well.
Nick: Thank you, Phil. Thank you again, very much, everyone, for sharing your time with us today. There are a few questions—we’ll just chat quickly. Equally, if you’d like to contact anyone, you can contact us via e-mail or through our website. I’m sure people have questions. The e-mail address for our website will be firstname.lastname@example.org. Please drop your messages there. Again, thank you very much. I really had a good time and hopefully you have a great day. Thank you.