linuxes











Cloud computing is a general term for anything that involves delivering hosted services over the Internet. These services are broadly divided into three categories: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS). The name cloud computing was inspired by the cloud symbol that’s often used to represent the Internet in flow charts and diagrams.

A cloud service has three distinct characteristics that differentiate it from traditional hosting. It is sold on demand, typically by the minute or the hour; it is elastic — a user can have as much or as little of a service as they want at any given time; and the service is fully managed by the provider (the consumer needs nothing but a personal computer and Internet access). Significant innovations in virtualization and distributed computing, as well as improved access to high-speed Internet and a weak economy, have accelerated interest in cloud computing.

A cloud can be private or public. A public cloud sells services to anyone on the Internet. (Currently, Amazon Web Services is the largest public cloud provider.) A private cloud is a proprietary network or a data center that supplies hosted services to a limited number of people. When a service provider uses public cloud resources to create their private cloud, the result is called a virtual private cloud. Private or public, the goal of cloud computing is to provide easy, scalable access to computing resources and IT services.

Infrastructure-as-a-Service like Amazon Web Services provides virtual server instances with unique IP addresses and blocks of storage on demand. Customers use the provider’s application program interface (API) to start, stop, access and configure their virtual servers and storage. In the enterprise, cloud computing allows a company to pay for only as much capacity as is needed, and bring more online as soon as required. Because this pay-for-what-you-use model resembles the way electricity, fuel and water are consumed, it’s sometimes referred to as utility computing.

Platform-as-a-service in the cloud is defined as a set of software and product development tools hosted on the provider’s infrastructure. Developers create applications on the provider’s platform over the Internet. PaaS providers may use APIs, website portals or gateway software installed on the customer’s computer. Force.com, (an outgrowth of Salesforce.com) and GoogleApps are examples of PaaS. Developers need to know that currently, there are not standards for interoperability or data portability in the cloud. Some providers will not allow software created by their customers to be moved off the provider’s platform.

In the software-as-a-service cloud model, the vendor supplies the hardware infrastructure, the software product and interacts with the user through a front-end portal. SaaS is a very broad market. Services can be anything from Web-based email to inventory control and database processing. Because the service provider hosts both the application and the data, the end user is free to use the service from anywhere.



{May 25, 2009}   WEB 2.0 technologies….

”The Web of documents has morphed into a Web of data. We are no longer just looking to the same old sources for information. Now we’re looking to a new set of tools to aggregate and remix micro content in new and useful ways.”

In Web 1.0, a small number of writers created Web pages for a large number of readers. As a result, people could get information by going directly to the source: Adobe.com for graphic design issues, Microsoft.com for Windows issues, and CNN.com for news. Over time, however, more and more people started writing content in addition to reading it. This had an interesting effect—suddenly there was too much information to keep up with! We did not have enough time for everyone who wanted our attention and visiting all sites with relevant content simply wasn’t possible. As personal publishing caught on and went mainstream, it became apparent that the Web 1.0 paradigm had to change.

Enter Web 2.0, a vision of the Web in which information is broken up into “microcontent” units that can be distributed over dozens of domains. The Web of documents has morphed into a Web of data. We are no longer just looking to the same old sources for information. Now we’re looking to a new set of tools to aggregate and remix microcontent in new and useful ways.

These tools, the interfaces of Web 2.0, will become the frontier of design innovation.

The evidence is already here with RSS aggregators, search engines, portals, APIs (application programming interfaces, which provide hooks to data) and Web services (where data can be accessed via XML-RPC, SOAP and other technologies). Google Maps (in beta) provides the same functionality as similar competing services but features a far superior interface. Flickr’s interface is one of the most intuitive and beloved around. Del.icio.us offers personal and social functionality, and reaches far beyond its own site. Interfaces like these are changing the way we store, access, and share information. It matters very little what domain content comes from.

Web 2.0 has often been described as “the Web as platform,” and if we think about the Web as a platform for interacting with content, we begin to see how it impacts design. Imagine a bunch of stores of content provided by different parties—companies, individuals, governments—upon which we could build interfaces that combine the information in ways no single domain ever could. For example, Amazon.com makes its database of content accessible to the outside world. Anyone can design an interface to replace Amazon’s that better suits specific needs (see Amazon Light). The power of this is that content can be personalized or remixed with other data to create much more useful tools.

The main services\application of web 2.0 ….. is

Blogs
Wikis
Tagging & Social bookmarking
Multimedia sharing
Audio blogging and Podcasting
RSS and syndication

As we have seen, there are a number of technology services that are often posited as representing the
Web 2.0 concept in some way. In recent months, however, there has been an explosion of new ideas,
applications and start-up companies working on ways to extend existing services. Some of these are
likely to become more important than others, and some are certainly more likely to be more relevant to
education than others. There is such a deluge of new services that it is often difficult to keep track of
what’s ‘out there’ or to make sense of what each provides. I suggest there are two ways of helping
with this process. Firstly, to make sense of what the service is trying to do in the context of the overall
Web 2.0 ‘big ideas’ presented in section three. Secondly, as new services become available they can
be categorised roughly in terms of what they attempt to do, e.g. aggregate user data, construct a social
network etc.



I’m more secure on Linux than I am on Windows. Yup, that’s right. I have no doubt whatsoever that I am.

I started down this path by comparing how secure I am on a Mac vs. on Windows, then I compared Mac vs. Linux. To complete that trifecta, I guess it’s only fair to compare the end-user data security aspects of Windows against Linux.

Before I get into my rationale, though, just a little more background is in order. I started using a UNIX desktop way back in college and was always comfortable there. At my first couple of jobs after college, I mostly used UNIX workstations from Dec and Sun as my primary desktops.

Later, I started using Windows-based systems at the office, but never felt quite at home. I was constantly frustrated by the frequent reboots, lack of serious security capabilities (from my perspective), and such. Then, following a brief foray in OS/2, I quickly gravitated to running Linux at home so I could once again have a real multi-tasking working environment.

Nowadays, my primary desktop is on a Macbook Pro – the best computer I’ve ever owned, without any doubt.

But, I still run a Debian Linux infrastructure for my company, with a couple Samba servers at its core. It’s not uncommon for the Linux systems to go over a year in between reboots. And, I still use XP on another laptop from time to time, generally when a customer requires it or I absolutely must run something like ActiveX controls on a web site. I try my best to learn how to best use the security features of each OS I use, naturally.

So, with that background in mind, it’s clear my views are somewhat biased. However, I consider myself very open-minded and will always give credit where it’s due. Heck, some of my best friends use Windows (but I do my best to talk them into OS X anyway).

• True to UNIX. It’s tough to be entirely fair here, since Windows isn’t UNIX in any sense. But my point here is that Linux does follow the security features and capabilities it inherited from UNIX quite closely. In particular, the notion of an administrative (root) user that maintains and operates the system, and desktop users who only run the software on the system, is completely ingrained in most Linux distributions.

Now it’s true that many Linux users ignore these features and run all their software from a root-level account anyway, but that’s a choice that they’ve made. The system defaults to protecting the operating system components from its user’s actions (intentional or otherwise). That feature alone must account in large degree for the dearth of viruses and other malicious vermin on Linux and UNIX platforms.

Windows, on the other hand, started life as a single user system, with that single user being all-powerful. Although that’s no longer the case, the general attitude can still be found in many Windows-based software products – many of which just can’t be installed and/or run properly without desktop administrator privileges. This is all changing for the better, but it took Microsoft far too long to adopt this default-secure configuration practice.



During the recent LinuxWorld conference, Linux proponents loudly celebrated Linux’ increasing importance in the world of software. It’s true that Linux has made great strides in becoming a standard part of the computing landscape, but it has made far more inroads into the Unix space than into the Windows desktop space. Despite that, there’s simply no doubt that the desktop—and Microsoft—are the current target of many open source software projects. These projects are conceived, executed, and extended to compete with Microsoft’s desktop applications.

They’re making progress, too, particularly with early-adopters and in IT-mandated vertical application environments, but as these projects mature, they’re going to have to compete head-on with their far better funded and user-tested Microsoft counterparts on average users’ desktops. To compete successfully, Linux needs a standardized platform and robust installation mechanisms so that users can choose software on its merits, without worrying about whether the software they want works on their particular Linux flavor or GUI choice.

A GUI Decision
Linux is a kernel, an operating system—not a complete operating environment in the sense that Windows is a complete operating environment. The tradeoff is one of choice. Windows has a single interface (true, there are variations between versions, but those are largely transparent to users). In contrast, Linux has no built-in GUI interface. Users are free to choose among many commercially available or free GUI X-Window interfaces, such as Gnome, KDE, and Motif, each of which provides a different look and feel.

Unfortunately, to some degree differences in GUI X-Window interfaces extend to the programming interfaces as well, meaning that software developers must either support multiple GUIs or choose which GUI(s) they plan to support. Because the interfaces are slightly different, application developers generally target one or two primary GUI programming models. Supporting many GUIs isn’t just a simple process of including one set of libraries or another; it’s often a frustrating and error-prone exercise in writing GUI-specific code. While these applications may run on non-targeted GUI interfaces, vendors often guarantee support for only one or two.

The multiple-GUI problem illustrates a basic difference in Windows and Linux. Windows has one general GUI interface which has served many millions of people and works for many millions of different applications. The Mac (another successful consumer OS) is similar; one general GUI works across all Mac applications. Why is Linux different?





et cetera
Follow

Get every new post delivered to your Inbox.