Jan 2, 2011

What is the consumerization of IT?

The term the “Consumerization of IT” is popping up all over the place. What do we actually mean by it? It refers to the increasing influence that our technology experiences as consumers—both hardware and applications—have on the technology that we expect to use at work. And it’s something I’d be willing to bet most of you are already experiencing to some degree in your organization. How many of you have employees accessing Facebook on a regular basis? Or maybe you have actually put in measures to block social networking sites? How often do your staff use their personal computers to do their work—perhaps as they are getting caught up in the evening or over the weekend? How many are using their personal thumb drives to take work home with them?

The reality is that many of us have powerful computer systems at home, and social computing tools like MySpace, Twitter, blogs, etc. are a part of our everyday lives. As technology plays an increasingly important role in our personal lives and we become accustomed to the power, convenience, flexibility, and connectedness of consumer technology experiences, we want those same capabilities to help us at work. However, in most cases we aren’t being given the tools. Consider the comment there on the screen by Ars Technica. It wasn’t that long ago that we learned about and experienced cutting-edge technology in the workplace. How quickly that has changed—as consumers, we now have access to and take advantage of the latest technology to hit the shelves or even be streamed as a service through our high-speed broadband connections. The reality of corporate IT for the most part means a long wait before budgets and deployment cycles align to bring us the “latest” offerings for the enterprise, a few years late.

Let’s add into this mix the influence of the “millennial” generation. These relative newcomers to the workforce are a technology-savvy generation that has never known a time without the Internet and constant connectivity, whether by mobile phone or instant messaging. They are avid users of social networking and other social computing tools, regularly expressing themselves with blogs and through online forums. They love their devices and stay at the forefront of what technology can do. And this generation expects to be able to use these same tools at work. In fact, Symantec conducted a survey and found marked differences in the attitudes and behaviors of millennials compared with other workers towards using Web 2.0 applications and personal devices. Notably, a full 69 percent said that they would “use whatever application/device/technology they want, regardless of source or corporate IT policies.” That’s compared with only 31 percent of employees of other generations. They were also much more frequent users of social networking and Web-based e-mail at work, and three times as many of the millennials reported that they had downloaded software at work for their personal use. They also regularly store their work data on their personal devices—whether PCs, USB drives, or smartphones.

In discussing the increasing consumerization of IT trend, Forrester likewise picks up on the strong influence of the millennials, but notes that they aren’t alone. They observe that Gen Xers are “asking their IT departments to deliver at work the same consumer applications that they enjoy at home.” But millennials are “even bolder” and “completely eschew conventional productivity tools like email in favor of text messaging and Web 2.0 tools.” Ultimately, Forrester believes that “individual people, not IT organizations, are fueling the next wave of IT adoption.”

So what does this mean for businesses? It means that the influence of consumer technologies on your organization and your workforce is largely unavoidable—and it has some real implications on a number of fronts, including security and employee satisfaction. Ultimately, as Gartner puts it, this will be “the single most influential trend affecting the technology sector in the coming decade, but the effects are more subtle and broad-reaching than most observers originally imagined, and we have reached a tipping point.”
If this trend is something that no organization can avoid, the next question is, what can you do to capitalize on it and make it work for your business? This is the topic that we want to focus on today—how you can take advantage of consumerization to realize tangible benefits for your business without compromising enterprise security. Let’s get started.

So, how can consumer technology help your remote workers work more productively? Consider first the nature of remote work. We’re talking here about workers who spend some or all of their time away from the office—whether they are working from home or another office, constantly on the road visiting customers or prospects, taking advantage of a few hours stuck in a departure lounge at the airport, or even prepping for a meeting at a local cafĂ©. The reality is that the “typical” workplace is no longer just the office but also increasingly people’s homes and public venues. Being away from the office and not connected to the corporate network can make it challenging to access the data and line-of-business applications that people need to get their work done. Plus, because of the confluence of more powerful consumer devices and a blurring of work vs. personal time, remote workers increasingly want to use their own devices to do their work, which might not even have the same standard productivity applications that they use every day and can mean they’ll spend more time transferring files around—all of which adds up to lost productivity.

On the flip side, most employees actually believe that working at home has the potential to make them more productive. In fact, according to a Yankee Group survey, workers say that “working from home is the single most important improvement their organization can make to improve their productivity.” At the same time, though, Yankee Group found that 54 percent of employees believe they would be more productive at work if they had access to the technology they use in their personal life.

The question is how to bring the two together—how to support workers’ preferred work styles without a loss in productivity? We believe the answer is through desktop, application, or user state virtualization as appropriate. There are a couple of options here:

 For non-mobile remote workers—for example, those working from home or offsite contract workers—desktop virtualization enables you to separate and centralize user settings, data, applications, and even the operating system from the device they are using and then enable access through an unmanaged computer with network connectivity

 For mobile workers, with user state virtualization you can store user settings and data in a centralized location and then synchronize that information with local copies of files for offline access. Plus, you can use application virtualization to “stream” applications to users rather than installing them locally. This enables you to support a more flexible work style while making it easy to replace PCs in the event that they are lost or stolen


The bottom line is that there are options here to give your workers the flexibility they need to work where, when, and with the tools they want to use—which will not only help them get more done, but make your business more agile too.

Blogs are also great for sharing information, either internally or even extended out to customers or partners; with blogs they can easily publish information online in a conversational way and invite comments or feedback

And finally, wikis can be an invaluable tool for recording the best practices and shared knowledge from across your organization, as everyone can contribute. Plus, they’re easily updated, and since there is a single, central copy, you don’t have to worry about confusion over multiple versions.

Jan 1, 2011

How To Move Your Business To The Cloud

How in the world does a chief information officer or information technology professional cope with the challenge of delivering solutions for the second decade of the 21st century when they are saddled with 1980s technology?

Add the issues surrounding reduced budgets and the ongoing knock on IT workers--that they do not respond in a timely manner to changes in business--and you have the setting for change. Both in how IT delivers solutions and how IT needs to change itself.

The good news is that for once in almost 30 years, software is changing. No longer are you stuck with simply new features using outdated technology. You now have an alternative technology solution. The historical technology providers are, of course, trying to maintain their hold on you and your budget dollars by marketing "internal clouds," alliances that merge hardware and software stacks that imply "infrastructure to application" environments but totally miss the point and the benefit of cloud computing. But of course you would do this, too, as part of the innovator's dilemma.

As a CIO, how does your company take advantage of this changing technology and business model called the cloud?

There are a few things to consider with cloud computing. First, a number of research firms suggest that cloud implementations can take up to 50% less time, and total cost of ownership can be up to 46% cheaper. Both of these are shown in numerous white papers provided by cloud solution providers, and for the most part are reflective of the power and benefits cloud computing can provide.

However, one caution: Should you need or require multiple integrations, go cautiously. Integrating cloud solutions to on-premise solutions still takes time. Although somewhat less expensive, it still can add to project costs. Also, ERP cloud providers have some perverse view that makes integrating their solutions with other necessary cloud solutions very difficult. This is still the throwback to the "old software model" where your vendor "knows best." Key takeaway: As you get into cloud computing, make sure your vendors not only have robust application programming interfaces, but also that they have demonstrated those integrations with other vendors you may be considering.

Another consideration in cloud computing is the vendor's openness regarding service-level agreements, disaster recovery and security. Even the larger providers have their outages, but they still deliver higher uptimes than your internal data centers. However, with newer vendors and providers, make sure they are invested in your SLA so it is not just a contract term.

Final consideration for you in exploring cloud computing solutions: customization. One of the key benefits of cloud computing is the ability to customize the solution to some degree. So you have the advantage of changing the cloud solution to your process and behavior; with on-premise solutions, you need to change your behavior to their process.

Cloud computing will change your internal business model. It allows you to significantly reduce your capital outlays for hardware and software.


--------------------------------------------------------------------------------

It allows you to take your IT spending and direct it towards innovation and meeting the needs of the business in a timely manner, rather than deplete your resources on support and maintenance. This is key. Most IT budgets are really focused on supporting existing technology. Your move to cloud computing allows you to shift your focus back to providing solutions within your budget and to scale with the business rather than being one of the last departments sitting on very fixed costs.

Also, cloud computing impacts your disaster recovery and redundancy spending. Good cloud solution providers have set up redundancy and disaster recovery processes that you can test without burdening your organization. As you use a wider selection of cloud providers, your risk is spread physically, as each provider likely uses different data centers in different geographies. All this allows you to focus on your most important resource, your employees. Using a complete cloud solution, if your firm has a disaster, you simply need to get your employees to an Internet access point and you are up and running.

Don't be misled by the marketing hype of the old technology providers. Cloud computing will have huge benefits for your company. It will be the way businesses run their infrastructure, and it will evolve much faster than the 30-year software cycle we have just lived through. Start slowly, experiment, be critical of your suppliers, but start now to move your IT business model to cloud computing.

Steve Cakebread was chief financial officer at Salesforce.com and Autodesk.

Virtualization vs. Cloud Computing

It used to be that something virtual wasn't real. And that clouds were just that--those puffy things in the sky. Today we have the tech industry terms "virtual computing" and "cloud computing," which often get mixed up. Fortunately, there's an easy way to tell them apart, and it involves hearkening back to the age-old distinction between hardware and software. When you're talking about virtual computing, you're invariably talking about hardware; specifically, making PC-style hardware available to users in a new way. A new layer of software, typically running in a far-off data center, tricks users into thinking they are using a desktop PC like before.

Cloud computing, by contrast, usually refers to the sorts of software that run once a computer gets turned on. The "cloud" indicates that the software is hosted in a data center, not sitting on your desktop. If you use Google Docs instead of Microsoft Office for your word processing or spreadsheets, that's cloud computing. You can mix and match these two approaches, undertaking cloud computing on a nonvirtual, traditional PC. And the opposite: You can use traditional, Office-style programs on a virtual PC

Nov 15, 2010

The Microsoft Web Platform

"With the Microsoft Web Platform you get more than just a powerful set of tools, servers and technologies. You get a complete eco-system of products, technologies and partners all looking to help you succeed on the web"

The MSFT platform consists of the framework, the server, the database and the tools...

The Framework

ASP.NET is a free, fully supported Web application framework that helps you create standards-based Web solutions. It provides a rich set of features and easy integration with databases, web services and rich internet applications. With features such as WebForms, MVC, dynamic data scaffolding, an AJAX framework, templates and themes, hundreds of built in controls and free developer tools, ASP.NET will enable you to build Web apps better and faster

Get everything you need to start building web applications with ASP.NET using the Microsoft Web Platform Installer. This simple, streamlined installer will get your development machine ready to go. The installer includes the latest version of the .NET framework including ASP.NET. You’ll also get Visual Web Developer Express which is a full featured FREE web development editor for working with ASP.NET and other Web technologies.

The MVC value prop: Use rich server-side controls and data binding with ASP.NET WebForms or take control of your HTML and easily incorporate Test Driven Development with ASP.NET MVC. Both approaches provide full support for core ASP.NET features such as membership-based authentication and authorization, URL routing, caching, master pages and localization.

The Server
Internet Information Services 7 (IIS 7.0) in Windows Server® 2008 provides a secure, easy-to-manage, modular and extensible platform for reliably hosting Web, sites, services and applications. With IIS 7.0, you get choice and control without giving up reliability or security. Customize and add new features, such as Intelligent Media Streaming through free IIS Extensions. Maximize web security through a reduced server foot print and automatic application isolation. Easily deploy and run both ASP.NET and PHP web applications on the same server. Get it all with IIS.

Why you'll love IIS 7.0 - Easy to get. Free to use
Get everything you need to start running and hosting web applications with IIS using the Microsoft Web Platform Installer. This simple, streamlined installer will get your development or hosting machine ready to go. The installer includes the latest version of the IIS 7.0 and Extensions. In addition, you’ll get the latest components of the Microsoft Web Platform including frameworks, database and development tools. Best of all it’s all free!

From ASP.NET to PHP, IIS 7.0 provides a powerful and flexible Web server for the world’s most popular Web applications such as Umbraco, WordPress and Drupal. ASP.NET hosting is even more simple and powerful, with deep integration directly in the request processing pipeline, configuration system, and management console. Learn more about PHP on Windows.

The Database
SQL Server Express is free database software that works great with any web application framework such as PHP, and your favorite applications such as Wordpress, and Drupal. Free SQL server comes with reporting options and other expansions you're simply not going to find anywhere else. It's everything you're looking for in a database.

The Tools
Visual Studio, Expression Web and Windows Internet Explorer 8 with its built-in developer tools, provide a complete environment for building and maintaining standards-based web sites, services and applications, across multiple devices. Whether your focus is design or development, HTML or ASP.NET, the Microsoft Web Platform includes the right tools for the right task.

Nov 14, 2010

The Evolution of th LAMP Stack

LAMP is an acronym for a solution stack of free, open source software, originally coined from the first letters of Linux (operating system), Apache HTTP Server, MySQL (database software), and PHP, Python or Perl (scripting language), principal components to build a viable general purpose web server.

The exact combination of software included in a LAMP package may vary, especially with respect to the web scripting software, as PHP may be replaced or supplemented by Perl and/or Python.[2] Similar terms exist for essentially the same software suite (AMP) running on other operating systems, such as Microsoft Windows (WAMP), Mac OS (MAMP), Solaris (SAMP), or OpenBSD (OAMP).

Though the original authors of these programs did not design them all to work specifically with each other, the development philosophy and tool sets are shared and were developed in close conjunction. The software combination has become popular because it is free of cost, open-source, and therefore easily adaptable, and because of the ubiquity of its components which are bundled with most current Linux distributions.

When used together, they form a solution stack of technologies that support application servers.

The LAMP stack is widely used because it offers a great number of advantages for developers:

Easy to code: Novices can build something and get it up and running very quickly with PHP and MySQL.
Easy to deploy: Since PHP is a standard Apache module, it is easy to deploy LAMP web applications by uploading .php files to an Apache server and connecting to a MySQL database.
Develop locally: LAMP can be set up so an app can be built locally, then deployed to the Web.
Cheap and ubiquitous hosting: Many inexpensive web hosts provide PHP and MySQL services.
Linux
Main article: Linux
Linux is a Unix-like computer operating system kernel. A major emphasis of Linux development is security[citation needed], which makes it an appealing choice for a web-server application. Like the other LAMP components, Linux is free open-source software which means the source code is provided with operating system, which can be edited according to specific needs. Also, because Linux-based operating systems are Unix-like, a Linux server is more natively-compatible with other server-oriented platforms, such as Solaris and BSD, than non-Unix-like systems like Microsoft Windows.

Apache
Main article: Apache HTTP Server
Apache is a free software/open source web server, the most popular in use.[7]

MySQL
Main article: MySQL
MySQL is a multithreaded, multi-user, SQL database management system (DBMS) now owned by Oracle Corporation with more than eleven million installations.[8]

MySQL has been owned by Oracle Corporation since April 20, 2009 through the purchase of Sun Microsystems.[9][10] Sun had acquired MySQL originally on January 16, 2008.

PHP, Perl, or Python
Main articles: PHP, Perl, and Python (programming language)
PHP is a reflective programming language originally designed for producing dynamic web pages. PHP is used mainly in server-side application software. Perl and Python can be used similarly.

Windows Live Spaces - Transitioning To WordPress

At the end of September, Microsoft announced the migration of Windows Live Spaces sites to WordPress.com, which will happen over the next few months.

The 30 million people that use Windows Live Spaces will have to migrate their blogs to the WordPress.com blogging platform and they have six months to do so, before Spaces is shut down.

The old Spaces URLs will also be redirected to the new blogs, so that no visitor will get lost along the way.

WordPress is powering more than 8.5% of the web, is used on over 26 million sites, and WordPress.com is visited monthly by over 250 million people.

Wordpress.com uses load-balanced hosting at Layered Technologies and Peer1 and this month both companies saw modest increases in the number of sites using nginx (60k and 48k hostnames respectively). For the moment, Windows Live Spaces sites in the sites.live.com domain whose blogs have been moved to WordPress.com remain online redirecting users to their new location.

For example, http://mikese.mobile.spaces.live.com still exists served by Microsoft but when accessed redirects to http://mikese.wordpress.com, which is running nginx. In contrast, blogs on their own domains will result in losses for Microsoft as the DNS can simply be updated with no need for redirection. An example of a site in this category is http://ozzie.net which switched over in the middle of October; at the time it was not clear if this change from IIS on Windows to nginx on Linux was a deliberate move by Ray Ozzie as he prepared to step down as Microsoft's Chief Software Architect, though it now appears to be part of the wider Windows Live Spaces to WordPress.com migration. Since WordPress.com is served by nginx, we expect to see a continued increase in sites using nginx as the migration takes place.

Despite the changes described above, Microsoft gained 3.1M hostnames this month, mostly in the United States. The largest increases were 942k hostnames at GoDaddy and 717k hostnames at Demand Media Inc.

Public Cloud vs. Private Cloud

The lure of cloud computing is that it offers organizations some choices. Companies can add capacity required to process and analyze data, as needed. There's no doubt that cloud computing offers great cost savings and increased efficiency for any organiztion.

However, i'm often drawn into conversations with colleagues adn friends about the wisdom of deploying private vs. public clouds. First - a few definitions.

Private Cloud (Web Definition,
Web

PHP vs. ASP

If you were to make a search on the Internet on how loyalists of both PHP and ASP.net are doing almost everything by biting each other's heads off, you will realize how hot this debate actually is. The major contention is that Microsoft products are generally considered to be superior to other products, but then there are programmers that have been using PHP since ages and never once has it let them down. While there is acclaim for ASP.net being more robust and speedier, PHP fans maintain that PHP has much better support and a very easy to understand language.

As the debate between PHP and ASP.net rages on, it is important to make a frank comparison between the two languages, so that other developers who are not so strong in their opinions are not caught in the argument between the two. Here are some of the important points that distinguish the two programming languages from each other:-
(For the uninitiated, PHP stands for Hypertext Preprocessor and ASP.net stand for Active Server Pages. It helps to put things into better perspective!)

PHP is a relatively simpler language to use than ASP.net. Initially, PHP was written in the C programming language to replace a set of scripts in Perl. That is the reason why coding in PHP remains simple even today. Many developers find themselves to be more at ease with the user-friendly nature of PHP when it comes to coding. However, critics also count this advantage of PHP as a disadvantage. Some of them maintain that the language of PHP has not been updated much, and hence it is still quite archaic and even, somewhat cumbersome for coding. ASP.net, which is a relatively new development, has a lot of options when it comes to languages. Here, you can use languages such as C#, J#, C++ and VB.net. Hence, when it comes to sheer choice, ASP.net has better to offer. But PHP is no less, since it can do its task quite well, even with its minimum language tools.

PHP is has much better support for the database management system, MySQL. In fact, the very popular blogging platform, WordPress uses the formidable combination of PHP coding on MySQL for its content management system, which includes about hundreds of thousands of blog posts every single day. Another very popular and frequently updated service that uses the combination of PHP and MySQL is Wikipedia. ASP.net can also support MySQL, but PHP is unanimously hailed, by the masses and classes alike, for its great support for this database management system.

People who use both PHP and ASP.net also maintain their opinion that PHP is better for embedded support with another database management system, viz. SQLite. SQLite is described as a relational database management system and since it is contained in a C programming library, PHP can provide better support to it.

PHP has also a very good support for object oriented programming, on which whole scripting languages are being built nowadays. ASP.net also provides very capable support to OOP.


When it comes to support, PHP wins over ASP.net. The main reason for this is that PHP is open source. Hence, the support can come freely from all over the world. In most cases, PHP fixes are made instantly. Being open source also ensures that there are very few snags in PHP. While, ASP.net could take a while to make fixes. That is because it is owned by Microsoft, and it is the development team of Microsoft that will need to respond to the support query. That could take more time than the worldwide open source support that PHP is able to get. Most PHP supports can be instantly found online by doing a simple search on the Internet. Some of the providers of support for PHP are Zend, NuSphere and ThinkPHP.

» PHP can use the command line to perform many everyday activities. Some of the things that the PHP command line is useful for is for manipulating across many files and for putting files into multiple directories at once. These are just some of the important features that PHP's command line is used for.

PHP is an open source programming language, which means it is free for anyone to use. Programmers can develop PHP applications virtually at no cost, because PHP is free to use. ASP.net is not free too, but its extensions are available for free on Windows platforms, upwards of 98. Hence, ASP.net is available to Windows users when they buy it. That puts a bit of restriction in its use.

ASP.net is compiled into memory in binary code. So, when ASP.net is used for coding, it is evident that it takes much longer time to process since the codes need to be retrieved from memory. However, PHP is not compiled into memory like ASP.net is. It is interpreted at runtime. That is the reason why PHP coding leads to better speed and even efficiency. However, it must be said that both PHP and ASP.net can run at supreme speeds and efficiency when they are coded expertly.

Talking about hosting charges, both PHP and ASP.net are quite cheap to host. If you do a good deal of shopping online, you will also be able to find hosting for as little as $4. While there are several pricier hosting services out there, their charges are higher for both PHP and ASP.net. Hence, it can be said that both PHP and ASP.net are at par with each other on the hosting charges.

Since PHP is older, there are many people who claim that it is much more secure than ASP.net where coding is concerned. ASP.net is much new, and the security options may not be fully in place yet. However, many programmers will pooh-pooh at this point, because they maintain that security in coding does not depend on the language that is used, but in the way that the coding is done by the coder. Even so, there is a lot of talk on the Internet about PHP coded sites being more difficult to hack into than those done with ASP.net.

Hence, there is a lot to debate on about the worthiness of PHP over ASP.net or vice-versa. There is probably no end to it, and there never shall be. The problem mainly is that both of them are good in their own place, but people who have been staunchly using PHP for several years now – some of them for more than a decade – would certainly not like to go in for the new ASP.net. The price to be paid is quite high, i.e. learning a whole new syntax and getting used to it. That is more the reason why PHP is still so popular.

But, to ASP.net's credit it must be said that it is much more dynamic, even if the mere use of different languages are concerned. While PHP is still stuck to its scripting language days, ASP.net has broken new grounds by entering into new languages, and even developing some of its own.