Archive for August, 2016

To Upgrade (or not?)

August 16, 2016

We see all these attractive things in life. we want this, we want that, do we really need? we don’t ask that question. That is the ONE question and the OTHER question is what would it be if we don’t get that? The answers to these two questions pretty much sums up your next course of action.

However, often times it is not as simple as that. If you have a 10 year old Toyota Camry and you want a Mercedes 300, it’s one thing but what if you have a Windows XP PC (yeah!, you read it right) and it works just fine @ work or @ home and you need to upgrade to Windows 7 or 10 (Please don’t think of 8).  If it is @ home, at least you are the only one that is exposed but if it is your work, your exposure is whole lot and not just financially but also the number of people it will impact.  I’m going to focus on running unsupported software here.

I come across this scenario a lot and especially recently. The world has come across the fact that the 800 pound gorilla that has woken up (yes, I’m talking about Microsoft). They have started churning up software that is inline with current global market and to address the current global risks. In thinking through the process, there is no golden rule or a magic wand to figure out, is it time to bite the bullet and upgrade. However, we can come up some guiding principles or set of questions to help us in the decision making process. Based on the experience, interactions with our clients, feedback, industry pundits, I came up with a set of guiding principles. (Again this is just a sample.)

  • Are you in a regulated industry? Is your systems conforms to the govt. regulations
  • Do you have a corporate governance committee? Is your systems conforms to the governance rules laid out?
  • Is there and industry standards body that you are part of? Is your systems conform that (basically you are not just preaching but walking the talk)
  • When did you last perform an upgrade? How many versions are you behind?
  • Any (how many) of your systems use software that are not supported by respective vendors?
  • Are all customer facing systems are running supported software?
  • What is the cost of not performing an upgrade? What is your plan when Sh*** hits the fan or things stop working?

If you are in a regulated industry, you don’t have an wiggle room, you need to follow the govt. regulations. You need to be honest with yourself, thus you should be conforming to your own standards. These are rules that you laid for yourself that you should follow (remember those new year resolutions of going to the gym? – well this doesn’t belong in that category). You are part of a world / industry standards body and you need to stick up. if you are not then who will? Then comes when did you last perform an upgrade. I get it is a chore and too much impact etc. But if your answer is half a decade or more, you have reached a point where the cost of inaction is more than your action. If or how many are using unsupported – if the answer is more than ZERO and they are being used in a customer facing environment, you probably don’t have “a plan” for the last question. If it is the internal systems, you will be able to setup more security rules, un-maintained servers a.k.a – you got a parachute. However the last question is the most critical of the lot for your business. When you do this, you are not just jumping of the plane, but you are jumping off the plane with no parachutes (for anyone in your organization). Depending on how critical, you can make the jobs obsolete, in turn the employees and in result you own organization. Remember we read about stuff on the newspaper and other media about such incidents? Do you want to be one such example?

IMHO, the ideal upgrade is Three years and not more than FIVE. Beyond which, you will get into the problems of unsupported software, security, obsolete technology, rusted workforce and more.

What are your guiding principles? Drop me a line.

Microsoft Open Source

August 8, 2016

Yes, You read it correct, I hear you, saying, isn’t it an oxymoron? Well, it is not.The world is abuzz that ever since Satya took over Microsoft, things started changing. It is more developer friendly, it is more open to new ideas, it is collaborating with various vendors, partners yada yada yada…

This new era started with Microsoft embracing Linux, letting you create Linux instances in Azure. You all know that Visual Studio is free to the entire world. I have been associated with technologies in the past couple of decades, one of the best tool for developers is Visual Studio, hands down (No offense to Eclipse, Sublime and the like). They used to do this before calling it developer edition, then called community edition, trial edition. These various editions are either teasers i.e the features you want to use are not available and that you need to buy the paid version or it will be available only for 90 days or some limited period. They have gone out of that mindset and said, well there is going to be one edition an is free.

The best development tool in the world, the one that is very well integrated with the Azure cloud that lets you manage, create, deploy the assets is free now. If you thought that is not enough, recently, Microsoft announced that they are giving the SQL Server Developer edition Free. This is huge! I remember struggling with the so called SQL Server Developer edition couple of years back that it doesn’t have analysis services, integration services, SSRS, the SQL Agent. Now all that is available. So what is the catch? Nothing. This edition is exactly same as the SQL Server Enterprise Edition. The download link is here. You just need to signup / create an account with VS essentials. The only limitation is that Microsoft says, you cannot use Developer edition in any production environment. At least, you don’t have to worry about purchasing when you are developing your product. You focus on developing the product and when it comes to deploying or taking it live, you can worry about it. Even then, both Microsoft and Amazon offers you to participate in various “Start up” initiatives that you an benefit from.

I hear you asking, so what brought about this change? IMHO, this is how Microsoft was operating from inception. They probably forgot for a while when Steve was at the helm. It was Novell Netware (you guys remember?) that pioneered Local networks in the corporate world, then came Windows NT. You all remember what happened to Netscape? Well, Microsoft offered Internet Explorer free. We didn’t get anything free for a while and now it started again. You get Visual Studio, SQL Server Developer, Xamarin for mobile apps, the start-up initiative, Linux.

Don’t over analyze. Start working on your next idea and the ecosystem is available for you to use the best tools out there. What are you waiting for? Microsoft is Open to sourcing it from / to you. Happy developing.

PS: The complete licensing guide for SQL Server 2014. if you are in doubt, don’t hesitate to drop me a line.

You have (want) an app for that?

August 4, 2016

It’s Déjà vu again. This used to be “do you have a website?” in the early 2000, now it’s “do you have an app for that?”

It’s a given that everyone, everything has a website, thanks to the various website builder tools/websites, content management tools such as WordPress, Joomla, Drupal. This used to be a big business of building websites. These various tools democratized the website building process. You don’t have to be a pro. They all offer a WYSIWIG editor, you drag, drop, buy images of iStockphoto, few minutes (may be an hour) later you have your own website without thinning your wallet. These content management tools really took the wind out not just of making but also maintaining the website on a regular basis.

There are specialized websites / tools bordering on SaaS (Software as a Service) and website builders for specific categories. For example, I was looking to manage my son schools’ PTO / PTA, there are a number of sites and the prominent among them being ParentOrbit. They not only allow PTO to register, collect funds using credit cards, ACH, but also let you setup class parents, broadcast emails, collaborate with other parents. I even noticed them letting independent Business Owners (robotics, chess classes, anything to do with kids)  to run a virtual shop. They can manage their business, communicate, collaborate, accept payment etc.

The same democratization process is happening in the app marketplace. Unless, you are looking to develop a unique, ultra functional app, you pretty much can create, publish to the store and maintain it the same fashion. The same content management tools like WordPress have its own mobile plugin, that lets you convert a website built with WordPress into an app. If you want something specific like, creating a Social media based mobile app such as your band’s fan club there are myriad engines like Anahita, HumHub, SocialEngine. These let you create a website and convert them to mobile apps.

In addition to these tools similar to content management, there are also other mobile app builder tools like goodbarber, appypie and more. Then there are other cross platform app builder tools such as Microsoft Xamarin, Appcelerator Titanium. Microsoft recently bought Xamarin and bundled it free with Visual Studio.

You don’t have an app yet? want an app? Pick one- anyone is good enough than not having one. Still confused? drop me an email.

Microsoft Azure – first impression is a better impression

August 4, 2016

I have been working on AWS for these past years and now started looking at Microsoft Azure as it has become the number two and growing fast. This is my initial post and I’m going to concentrate on the basics, some comparison. I don’t want to bore you with too much details. if you want details, you can reach me.

Microsoft has done few things good and I see and understand why this service is growing so fast. To start with, their interface to manage or the management console (AWS lingo) is good but they could do it better with the placement of the network security groups (my pet peeve). I started off and immediately there is a phone number and a person to chat with if you need help. I reached out as the terminologies are different. I found it surprising to find a contact # and a person to talk to but then I was thrilled that the person knew what he was talking which is getting rare these days! (Try finding a number on AWS or Amazon website). Microsoft got their act together and their Customer Service & Tech support is coherent and good. Everyone knows / heard about cloud but it is still a mystery and having a person to talk to really helps.Score one to MS on this front.

I was able to setup a server, install a sql database and host a webapp in an hour and I felt that was impressive for the first time. Next up pricing. Microsoft pricing is slightly higher than AWS and the documentation on pricing is also scattered.You can’t easily go from seeing the pricing on VMs to storage to Azure SQL. It’s kind of hopping from one place to the other. However, if you already have your setup in a data center and you want to figure out how much will it cost, Microsoft says it has a tool ( i didn’t try it yet) called Site Recovery. Using this, you can even create an image of your server and move it to Azure. Thus you can move your virtualized server between your cloud and on-premise easily, you can’t do that with AWS. If MS scored on this tool, AWS scores it on the ability to create an image of your servers in AWS. The process which I will address it in a later post is cumbersome at best.

One other thing, Azure does it better is the way you want to pay for the service. If you have different cost centers / Business Units, you can create a subscription for each one of them, associate a different credit card. You can name the subscription with the appropriate names, associate a MS partner if you are working some one. This is a big win for the big corporations or for accounting folks.You can do this in AWS  as well but not this straight-forward.

I want to wrap this initial post by mentioning one very important information. Once you create your server and you are no longer using it, please make sure you go to the management console ( azure portal) and “STOP” it from there. If you don’t do this step and just shut-down your instance from inside the RDP or SSH, you will continue to get charged for that instance! Though Microsoft offers feature to put a cap on your spending limit, they don’t offer that on the most popular “pay-as-you-go” subscription.

Overall, I had only one rough experience. Once you have one azure account,  it is not easy to sign-up for another one. Let us say, you created one account (your personal) to develop + test. Now. you are happy but you want to create a new account for production or under your corporate email, you can’t do it. The two ways to do it are to use a different browser or goto Google Chrome,   open an incognito session and sign-up. Why? Go figure!. All-in-all, Azure is comparable service with AWS with better customer service, better tools, better SQL on cloud, but slightly higher price.  If you want SQL server on the pay-as-you-go model, Azure is cheaper than AWS and feature wise, Azure SQL is better than Amazon RDS for SQL Server.