Tag Archives: macOS

Windows 10 is a great alternative

Marco Arment: “Microsoft is boldly experimenting with PC hardware, but Windows and everything around Windows is woefully inferior to macOS and the Mac software ecosystem. Even if Microsoft did everything right, it would take Windows at least a decade to catch up — and they won’t do everything right.”

Bringing in the HarvestI doubt Marco will see this, and this is definitely not an attack, this is something I’d say to my friends. In the nicest of ways, to say it would take Windows at least a decade to catch up, is a bit hyperbolic.

I’m a fan of Microsoft’s Windows, I have been for years. It helped me get my start in this industry. I switched to the Mac around 2006 and haven’t looked back, I really do love the experience.

If we’re talking about performance, which seems to be the point of your piece, keep in mind that Windows can run on all kinds of hardware. Windows 10 can support up to 256 cores and 512GB of memory. That’s pretty nice. We know that some high end video production shops are abandoning the Mac in favor of Windows boxes because they need the horse power, another great example of why we need a new Mac Pro. But Windows as a tool of choice is very viable.

The development tools on Windows are quite good. Visual Studio is a great IDE. Microsoft’s .Net has become the standard way to develop for Windows, especially for backend services, but you can create beautiful client applications with it all the same. If you’d like you can still write C++ code to the Windows API, like Photoshop or the Microsoft Office apps.

I’m not sure what Marco’s primary complaint about Windows is? Is it just the general usability? Is it a stylistic thing? Maybe he can’t easily run his favorite tools on the platform? That’s a really big deal. I’d love to hear him go into detail about the issues with the platform.

I tell folks all the time. Microsoft’s NT Kernel is a beautifully designed Kernel. It can, and does, underpin different hardware. When it began life it ran on Dec Alpha, MIPS, x86, and eventually came to the PowerPC. Since that time the other architectures fell out of favor and it mainly became an Intel based platform, but it still powers other architectures.

In the end I’d never attempt to tell someone which platform they should choose, it’s all a matter of personal preference. Apple and Microsoft both provide great solutions in software and hardware form. This is great for us, the customer.

Swift, on Windows?

Brent Simmons: “What if — and it’s a big if — Microsoft made Swift a peer with C# and provided some good app frameworks?”

When I published What Ifs and Why Nots I hadn’t read Brent’s piece. He’s actually asking the same questions. What would it take to pull Mac developers to Windows? It would take more than Swift, I’m pretty certain. In a Microsoft .Net world where would Swift fit? Would Microsoft just create a version of Swift that works with the .Net garbage collector, or would it be a compiled language? I’d bet on the former given Microsoft’s all-in on .Net and garbage collection.

The bigger questions is Frameworks. Let’s just say Microsoft does a .Net version of Swift. To create a Windows application you’d have to embrace WinRT. You could use your knowledge of Swift, but you’d have to learn a completely new way of writing applications.

Think about all the things Foundation does for you. If you were to move to Windows and Swift on Windows was all .Net based you couldn’t even reuse your non-UI based classes. You could, of course, reimplement your shared classes to use .Net stuff and maintain your interfaces, but you’d have to do a considerable amount of coding to fit on the platform.

Maybe you don’t make Swift a .Net language. Maybe you bring Foundation over to Windows using the Windows API, which is very different from a development standpoint, and not the preferred way to code new apps on Windows. This could also work. You would have a compiled Swift that could natively link to Foundation, which in turn uses Windows API’s to do any platform level stuff. You could then reuse some of your code investment, like those shared non-UI classes and work on creation of a native Windows UI for your application.

Also, of note. Microsoft already has a great set of Frameworks to use, just use them. It would be like coming to the Mac from Windows and saying “Apple needs to provide some good app frameworks.” They already do, you just need to learn to use them to make the best experience for your users. That is the biggest hurdle for any developer.

Learning the new frameworks and a new OS can be quite daunting. When I came to iOS from doing Windows and Linux based UI’s (using Qt mind) I fought with Interface Builder and decided I had to do everything in code because I couldn’t figure it out. Later I made my peace with it. I still think Visual Studio is the better development environment, but Xcode is a very close second, maybe tied, at this point.

Eat your own dog food.I’m kind of a knucklehead. I spent almost 20-years doing native Windows API based applications so I was very comfortable with Visual Studio and that entire ecosystem. If I can learn to write iOS Applications and embrace the tools, then anyone doing Mac or iOS apps could learn to do Windows based stuff today. Just embrace it, don’t try to force your tools into the platform. Now, if you have some code that can easily come over, you might as well use it, but we all know the best apps feel right on the platform. Embrace the platform.

The new Surface Studio is the first bit of Windows based hardware that has excited me this much about the platform in a very long time. I’d love to work on a new design app for Windows, if I could. Maybe even one that works on both platforms; Windows and Mac. Why not? I mean besides time and money, what else does one need to do something so ambitious? 😀

Post Mac Apple

Recently Vivek Wadhwa of The Washington Post wrote:

Apple should release a version of iOS for non-Apple devices. This suggestion will seem like heresy to the brand’s loyalists, but it may be necessary for the success of the company.

Imagine those Samsung, LG, and Xiaomi smartphones having an original Apple operating system on them rather than the imitations they are presently running. Offered the choice, users would upgrade in droves. And those users would download new applications and sign up for Apple’s subscription services, giving the company a cut of everything they purchased, as well as valuable data and marketing opportunities. Google’s Android business would finally have a formidable rival.

First off, I don’t think Apple is in bad shape because they own less of the mobile market than Android. In fact, they make more money than all Android devices combined. So the thought of being a formidable rival is kind of moot, but that’s not what I wanted to write about, just an observation.

I think macOS would be a much better OS to OEM. Why? Well, Apple is paying so much attention to iOS based devices, the iPhone in particular, they’ve ignored their laptop and desktop computers for a very long time. In fact most of their computers are rated Don’t Buy by Mac Rumors.

Mac Rumors
Mac Rumors

Of course they’ve tried this before. Before Steve Jobs returned in 1997 Apple had OEM’d Mac OS to a few partners. Those partners were doing fine at the expense of Apple. When Jobs returned it was one of the first things he killed so Apple could focus on their core business, the Mac. Fast forward 20 years and Apple is as unfocused as ever. They’re building all kinds of stuff looking for the next iPhone. Here’s a hint Wall Street, I don’t think you’ll get another iPhone-like success for many, many, years.

Anywho, back to macOS on other hardware. Since Apple hasn’t shipped new Mac hardware for professionals in a long time professionals have either created their own solutions or switched to Windows or Linux. Yes, people are switching to Windows because their Macs are not up to the task. Those of us that live on the platform feel strongly about it. I love using the Mac and macOS to do my work but most people just see it as a hammer. They don’t have an attachment to the OS or the hardware. If you can get a PC with Windows that blows the doors off a Mac Pro and your production software runs fine on Windows, why not switch?

What if there were another solution to the problem? What if Apple selected a single OEM and allowed them to create high end hardware that runs macOS? That’s what I’d prefer to OEM’ing iOS to other mobile phone makers. The professional market may appreciate it too.

I know the iPhone and iOS are killing it revenue wise. That idea seems to be the driving force behind Mr. Wadhwa’s piece, but it would be really nice to have alternative hardware designs that don’t focus purely on thinness and lightness. I still love my SUPER FAT 15in 2011 MacBook Pro. It’s perfectly suitable for people creating iOS Apps or small Mac Apps. Folks editing Audio and Video or making movie magic the likes of Pixar and ILM need powerful computers. I’m sure they’d appreciate faster Macs every year or an OEM that could deliver faster, specialized, expandable, repairable, Mac alternatives running macOS.

Is the future macOS?

If, like me, you’re an Apple fan you know they announced a bunch of new products on Wednesday. It seems apparent to me the future is based on the iOS codebase, not OS X.

We now have iOS, watchOS, and tvOS. I may be wrong, but I suspect watchOS and tvOS are derivatives of iOS. It makes sense. When Apple created iOS they started at the bottom layer of the OS and worked their way up. They reused the Kernel and Core Foundation. On top of that they added UIKit and a touch layer to give us the unique experience we get with iOS today. The important thing to note is the OS was stripped down and made to fit the device it was built for, by fit I mean the feel as well as the size of the OS.

With iOS Apple took the opportunity to tighten up how applications could interact with the operating system. It’s still a very powerful OS, but Apple removed all the power user features. The ability to peek under the hood is gone. As a developer we’re no longer given access to all parts of the computer. We all get our own little sandbox to play in. This was all done so bad people couldn’t turn your phone into a virus factory. In other words, it was done in the name of securing the device, making sure it would always work. It is Apple’s most secure operating system, and that’s saying a lot given OS X’s reputation.

Yeah, AppleWhy all the talk about iOS? Well, I think it’s the future of the desktop. With the introduction of the iPad Pro Apple is beginning to blur the line between tablet and desktop. It’s the first hybrid device for Apple. We all know Microsoft created the Surface years before. Where Microsoft took the approach of bringing a full desktop operating system to the Surface, Apple decided to begin with iOS and work up. Folks will say this will make iPad Pro less powerful, I don’t think so. How much “power” do you need? It’s not as if people really care about technical specs when they buy computers, right? Well, if you do, iPad Pro is more than capable.

Bringing laptop class power to a tablet has fueled speculation that the Mac could move to ARM processors, or maybe it’s better to say OS X could run on ARM.

Rich Siegel via Twitter:

It’s not a stretch to believe OS X will be completely ported to ARM — remember iOS shares core code with OS X. In fact it may already run on ARM processors.

That brings me to the point of this post. I’m beginning to believe iOS, and Universal Apps, are the future of everything Apple ships. Not only will OS X be ported to ARM at some point, I believe we will see an Apple laptop based on ARM processors running iOS. It will be the familiar clamshell design we’re all familiar with but will have a touch screen, full keyboard, trackpad, and you’ll be able to pull the display part away from the base (keyboard.)

This is how I believe Apple unifies its story. We have iOS, watchOS, tvOS, and in the future macOS. With macOS being the version based on the iOS App ecosystem. OS X will continue to live as the power user option in the Apple lineup.

For many people it would eliminate any confusion over the difference between OS X and iOS based App Stores, as Daniel Jalkut pointed out in a recent Twitter post.

How long before we see the new macOS?

Why, oh why, would I believe that? Well, it seems like a natural evolution of iOS. When iOS first shipped it was a tiny OS, over time it has grown to add more and more rich features, but it remains quite tiny, very secure, and built to serve a new model, an easier model. Couple that with new features of iOS 9, like split views and picture in picture, and you can see the OS moving in a new direction. We’re at the crux of applications cooperating with each other to create unique experiences. This isn’t new, far from it, but it will be reimagined on iOS. It will give us the power we’ve been looking for and maintain all the security we’ve come to love. That’s why iOS is so valuable.

Think about “the average user” of a computer. I’m not talking about super-geeks, like my brother that need those super power user features a lot of developers enjoy, I’m talking about folks like my wife. She is a gamer and uses her home MacBook to play games, surf the web, answer and create email, and play games. On occasion she will compose a document using Pages. This type of use would be fine for an iOS based device.

The iPad can also be used for day-to-day use. Federico Viticci uses an iPad as his daily driver and swears by it. I have to believe the iPad Pro will be a welcome addition to his daily workflow.

We should also keep in mind the partnership Apple formed with IBM to create solutions for the enterprise. This is how Apple rounds out its offerings for businesses. Get a third party to make the iPad attractive to businesses.

Oh, yeah, and one more thing. Tim Cook loves his iPad!

In the end could you imagine how wonderful a Mac laptop would be running a form of iOS built just for the hardware? Something that is essentially an iPad with the addition of a keyboard and possibly a mouse? It feels like the Mac could evolve in that direction.