Friday, November 16, 2012

Predicting the Future of Computing

This is something a little different. Hopefully a conversation starter. In 1994, after about 18 years in the computer industry working with mini-computers, I found myself looking for work. As I surveyed the environment in computing it was pretty clear that the age of the mini-computer was if not already dead pretty close to it. The future was clearly in personal computers. I bought as much PC as could afford, picked up a used copy of Visual Basic and started to retrain myself as a PC person. This fall I again find myself looking for work but the environment is not as clear now as it was then.

There is a lot of talk about a post-PC era where PC refers not just to the WinTel set of personal computers but the whole idea of the desktop computer that doesn’t travel. The cloud is a big deal. Computing devices are in some sense being relegated to thin-client status. Not quite the dumb terminal of timesharing or the minor local “smarts” of programmable block mode terminals of course. But not the place where most of the processing gets done either.

And the devices! Smartphones, tables of various sizes, laptops of power, and there are still desktop systems for a lot of tasks. Plus of course special purpose appliances like ereaders (I love my Kindle) and music/media players. These are personal devices and they have some of the attributes of computers but they are more focused in purpose.

Software? Windows, MacOS, lots of flavors of Linux, iOS, Android, Windows Phone, special purpose versions of various things for ebooks, music players and hybrid devices like the Kindle Fire. In some respects I love the diversity of operating systems as I believe it suggests a lot of innovation is and will be taking place for a while. It doesn’t make it easy for someone who wants to develop for the most number of people though.

With all  this diversity where does one put their focus? What is the future that gives one the most options and hope for a long career? Now a lot depends on where you are in your career.

For a high school students I would argue that it doesn’t matter. Things will be much more clear in 4 to 8 years when you get out of college. For now focus on the basics and the concepts that will build a good foundation for the future. Any of these platforms will give you a chance to learn to code, learn to use APIs and even develop some code that will make you some money. Phone apps? You can learn the same basic concepts on all three major platforms. Tablet apps? Windows, iOS or Android are all open to you. You don’t have to bet your career on one or another because things will definitely look different for you later. Take advantage of the freedom to learn to get some breath of experience.

For university students it starts to get more serious. Moving out into industry is getting closer. I do believe that a solid background in theory and concepts will be worth getting not matter which way the wind blows. While you may want to pick one area to concentrate on don’t get too attached to it. Be ready to switch platforms if you need to do so.

For someone currently looking for work it gets scary quickly. Do you bet on Windows 8 being a success and start writing Windows Store apps? Or do you assume the tablet version of Windows will go as far as earlier tablet offerings from Microsoft went and look to do your tablet development for iOS or Android? Will the fragmentation of the Android platform doom it to an early bust? Will the fact that there are so many iOS apps mean yours gets lost in the noise? Who knows!

The same is true of phones. iPhone is still the cool device that gets a lot of attention but there are more android phones in actual use. Will Microsoft marketing might eventually move Windows Phone into contention? Can you develop for multiple platforms in a way that is cost effective enough to make it worth while?

What about purpose built appliances? Should you be looking at the potential for creating new appliances that mix hardware and software to solve new problems? Is the Internet of Things that integrates many tiny data gathering devices to create massive data sets that allow artificial intelligences to do things we haven’t yet considered? if so how do you get into that early enough to make a mark?

The more I think the more questions I come up with. What issues are you thinking about? Where do you see the industry going? Will Microsoft be gone in ten years? Will someone take out Google in search engine ability? Will Apple be able to keep up its record of innovation without Steve Jobs? Will we see a return to an OS monopoly in the future or is fragmentation the way things will stay?


Anonymous said...

Still chasing trends, at your age?
The one thing about the computer and IT industry over the last 30 years is that it has become much less about the technology in detail.
Wintel, unix, iOS, who cares.
It's now much more about what you write and how you get people to read it and talk about it, than what language it's in - translation is easy.

old c++ guy said...

@Anonymous 7:59AM: I'm like the author too, still 'chasing trends'. You get unemployed for a long time and it makes an impression. 'Course, C++ is supposedly coming back, but maybe only on Windows. Uy.

Anonymous said...

I think your list of what abouts tells the story of today's consumer problems. What phone, tablet, PC should I get which will have the apps I want and work together with each other when I want them to. The best of each of these technologies don't work together - so what will be sacrificed? Integration? Best solution? For me maybe it's best integration with top devices. But then with that, how many do I really need? Yes, PC (laptop) for heavier lifting apps and record keeping, Phone of course, so do I also need a tablet? I want one as nicer for reading on the go, browsing on the go, and pictures because bigger than the phone - but a third device??

So, as others have said, who cares what the software platform is - can you make the techonology out there useful and integrated for what people really want to do - both at home and on the go. To do that you really do need to figure out the platforms which are most likely to be around in 5 years and even considered a "standard".

I believe Apple will be there but they are too internally focused and controlling for entreprenuers like yourselves. I think Android will be gone. RIM will maybe be OK in the phone/tablet space as a specialty product, but not a full solution to people's needs. That leaves Microsoft - with all their money and people my money is on them figuring out how to regain the prominence they once enjoyed in the PC space across all spaces.

Garth said...

Living during times when everything changes at such a rapid rate is exciting, if you have a job that is not affected by those changes. Those of us in IT, CS Ed, or tech based jobs just run like mad trying to keep up. Focusing on one platform almost guarantees death. Trying to spread yourself to cover all platforms guarantees burn-out. You kind of have to find a comfortable niche and hope it survives. I have not the slightest doubt that in 5 years the tower will be no longer made, the laptop will be fading and the tablet will be the common form but will be seeing the end. I think we will be wearing our computers, the screen will be a pair of glasses, the keyboard will be a holographic projection and we will be manipulating most of the environment like a touch screen but the screen will be just a projection. Our phones will be an implant controlled by a pad on the arm or back of the hand and be directly linked to the computer we are wearing. And writing software will be the cottage business we would like it to be.

Alfred Thompson said...

It is an exciting time for sure.