Archive for November, 2010

Cloud Computing: Is It The Fifth Utility?

It is one of those proverbial “big ideas”: What if we could just plug in the computer and it would go, just as we plug a cord into an outlet for electricity, turn on the tap for water, or hit “send” on our cell phones? What if computing became a utility? In fact, it has been suggested that the move to the cloud model could make computing the fifth utility (along with water, electricity, gas, and telephone). This may well be a trend that takes decades—perhaps even a century—to fully unfold. But many believe that we are in the midst of a fundamental transformation toward a more centralized utility model of computing.

While various authors have addressed the notion of computing becoming a utility, the concept crystallized in the work of Nicholas Carr. Carr first advanced the concept in 2005 in his Sloan Management Review article, “The End of Corporate Computing.” Carr continued developing and discussing his ideas on the subject over the next three years, leading to the release in 2008 of his book on the subject, The Big Switch: Rewiring the World, From Edison to Google. All of this is not new, as companies whose business model was to sell computing instead of computers dates back to pioneers such as payroll processor ADP and to Ross Perot, who left IBM in 1962 to found EDS (Electronic Data Systems).

In 2004, Dr. Michael Rappa, the director of North Carolina State University’s Institute for Advanced Analytics, categorized a number of services according to their business models (see Table 1). What can be seen from Professor Rappa’s work is that many services have evolved over the years from “make your own” to utility models.

Table 1: Business Models of Utility Services

Type of Service

Business Models

Water

Periodic

Metered usage of service

Electricity

Periodic

Metered usage of service

Common Carrier Transportation

One-way or Roundtrip Service

Basic pay-as-you-go fare

Commuter Service

Pay-as-you-go fare

Subscription (weekly or monthly pass)

Telephone

POTS (“Plain Old Telephone System” – or Land-Line Telephone Service)

Subscription for local service

Metered usage of long-distance service

Equipment is leased or purchased

Cellular

Subscription with usage limits

Metered usage in excess of the subscription limit Equipment purchased or bundled with subscription

Radio and Television Broadcasting

Terrestrial

Advertiser-sponsored

Community-sponsored

Satellite

Subscription with basic package and premium services

Lease or purchase equipment

Cable

Subscription with basic package and premium services

Pay-per-view for special event programming and movie selections

Leased equipment is bundled with service

Internet Access:

Dial-up

Subscription for limited service or metered usage, based upon connection time;

Equipment is purchased

DSL

Subscription for unlimited (“always on”) service

Leased equipment is bundled with service

Cable

Subscription for unlimited (“always on”) service

Leased equipment is bundled with service

Adapted from Rappa, Michael A. (2004). Preparing for utility computing: The role of IT architecture and relationship management. IBM Systems Journal, 43(1): 32-42.

Indeed, many compare what is happening today with similar circumstances surrounding electricity at the turn of the last century. Before the rise of the electric utility, businesses and individuals had to generate their own power to run their machines. However, when large electric producers began generating power and delivering it via transmission lines into factories, buildings, and homes, self-generation of power waned due to the cost-efficiency and convenience of having reliable electricity on demand. At the turn of the century, for manufacturing plants and other large facilities to have electrical power, they had to generate their own electricity through small generators or be located near a water source that could operate a waterwheel.

Take, for instance a brewery operating a hundred years ago. As Amazon chief technology officer Werner Vogels famously put it: “They had to be experts in electricity to brew beer. Something is off there. These guys couldn’t wait to dump their own generators and start to use electricity from other companies.” So, just as turn-of-the-century manufacturers had to produce all their electricity on site, today’s organizations in the private and public sector historically have had to own all of their information technology (IT) resources—until now.

However, like electricity, IT assets are not used equally or continuously. Overall, research has shown that, as computing power has indeed grown far cheaper and more plentiful, utilization rates for IT resources have, in fact, plummeted. Nicholas Carr’s research reported that quite surprisingly, overall, corporate servers typically use less than a third of their processing capacity (and much of the time, they are simply not being used). Likewise, much of a typical organization’s storage capacity is either unused or being “wasted” by unnecessary redundancy. An IBM study showed that desktop computers in organizations were even less utilized—with an average utilization rate of just 5 percent! Writing in the Harvard Business Review, Susan Cramm argues that this underutilization comes as a result of not properly using existing IT resources and unnecessary spending on new IT resources to ensure even more overcapacity and even greater underutilization, compounding the problem even more.

All of this adds up to a great deal of waste—an overinvestment in IT resources—and all those dollars being tied up in unnecessary hardware, software, and the manpower it takes to monitor, maintain, and constantly upgrade and update those resources which serve as a drain on not just individual firms, but the economy as a whole. As Ashar Baig recently commented, this means “companies with static compute resources have to consistently grapple with the trade-offs related to under- and over-provisioning of in-house compute capacity.”

For large organizations, these IT investments—both in capital costs and operating expenditures—represent a significant level of commitment to providing the computing resources necessary for operations. Yet, traditionally, IT has been viewed as a capital expense. With ready access to credit, the cost of acquiring technology could be written off over a period of years. Today however, with shrinking budgets, companies are increasingly looking to cut their IT costs—not just the up-front infrastructure costs, but also the personnel, software, and energy costs necessary to maintain and support that level of internal IT.

Many are now increasingly looking at a pay-as-you-go approach to information technology expenditures. This means not just a strategic change, but a shift in the mindset of many—from viewing IT and its infrastructure as a fixed, capital expense to seeing it as a variable cost. By only paying for the computing power they actually use, cloud computing, for most organizations, can represent a significant overall cost savings. The more organizations keep IT in-house, the more expensive—and difficult—they will find it to attract and retain qualified IT staff.

This situation is replicated, and even magnified, when it comes to the public sector. The simple fact is that IT costs not just the government, but all of us who support it through our tax dollars, much more than it should due to the inefficient structure of today’s information technology model.

With all of the unused computing capacity, the stage has been set for cloud computing to develop. Nicholas Carr observed that:

“The history of commerce has repeatedly shown that redundant investment and fragmented capacity provide strong incentives for centralizing supply. And advances in computing and networking have allowed information technology to operate in an increasingly ‘virtual’ fashion, with ever greater distances between the site of the underlying technological assets and the point at which people access, interpret and manipulate the information. Given this trend, radical changes in corporate IT appear all but inevitable.”

Carr (2008) believes that we will see the web morph to become, in time, the “World Wide Computer,” where we will go for all of our computing and communication needs in the era of cloud computing.

Futurist George Gilder predicted in 2006 that we would see the growth of mammoth computing companies that would take advantage of the economies of scale for centralized computing operations. Gilder wrote that:

“In the PC era, the winners were companies that dominated the microcosm of the silicon chip. The new age of ‘petacomputing’ will be ruled by the masters of the remote data center—those who optimally manage processing power, electricity, bandwidth, storage, and location. They will leverage the Net to provide not only search, but also the panoply of applications formerly housed on the desktop. For the moment, at least, the dawning era favors scale in hardware rather than software applications, and centralized operations management rather than operating systems at the network’s edge.”

Another driver toward the technology possibility of computing as a utility—and cloud computing—is to be found in the trend toward what the analyst firm Gartner labeled as the “industrialization” of information technology. There is no doubt that IT has become standardized today, with “commoditized” hardware that underpins the Internet and data centers today. Former IBM expert Irving Wladawsky-Berger believes that this standardization is key, in that, “for computing to reach a higher level,” he says, “its cells had to be commoditised (sp).” There is also far more harmonization than at any point perhaps in the history of computing, with common software, file, and document formats that no longer present the “Mac vs. PC” incompatibility issues. Some have compared the possibilities that come from such standardization to those offered when Henry Ford mastered the art of assembly-line manufacturing to provide lower-cost, standardized outputs that made cars and a whole hosts of products available at reasonable costs. Indeed, the concept of “modularity” and interchangeable parts has been around since the early days of computing, with common parts used in programming (through the use and reuse of subroutines) and standards constantly emerging. In fact, it has been said each generation rediscovers the power of interchangeable parts, making cloud computing “a 21st century version of centralized mainframe computing.”

Certainly, as with electricity, there are cost efficiencies to be gained from centralizing and industrializing IT – through better capacity utilization, economies of scale, and cost savings/sharing (akin to the cost differential of a plant having its own small electrical generator versus the giant, centralized generators operated by an electrical utility firm). Instead of buying, operating, and maintaining IT functions on their own internal servers and data centers, organizations can instead today opt to purchase this capacity and services from cloud providers—often at a far lower cost and perhaps with more capabilities than their own internal systems. They can buy these services over the Internet from companies specializing in IT – at a lower cost than running an in-house system.

Such industrialization of information technology, built upon massive economies of scale, may well revolutionize the very structure of the computer industry and how IT resources are owned and housed. Traditionally, when it comes to software, IT managers had to decide whether to “build” or “buy” what was needed for operations. In contrast today, the choice is complicated by adding two new options—whether to build with open source or to “rent” through Software as a Service (SaaS) applications.

The move to cloud computing will ultimately be a sourcing decision, and for public and private sector organizations, there will be operations that are too critical—at the heart of one’s core business—to outsource and place outside of one’s control. As Nicholas Carr recently commented, “One of the key challenges for corporate IT departments, in fact, lies in making the right decisions about what to hold onto and what to let go.”  As outsourcing grows, more and more computing functions will be shifted to outside, often outsize providers. Indeed, Intel has projected that by 2012, a quarter of all its server chip sales will be for machines to be placed in such “mega-data centers.”

There has been a long-term pendulum swinging between centralized and personalized computing. In other words, we have seen periods where computing power, data, and programs have been held on a major, centralized platform, and we have also seen periods where that power has resided on one’s desktop—or today, literally in the palm of your hand. We may well be heading, in a way, “back to the future” as the pendulum swings again. We have seen computing cycle from a highly vertical structure in the mainframe era of the 1960s and 1970s to an increasingly distributed, horizontal model of computing. This latter era began with the introduction of PCs in the 1980s through the next three decades with the explosion of the web and the proliferation of mobile devices. In the horizontal model of computing, it was important to distinguish between hardware, software, networking, and support services, and as such, entire industries grew and proliferated around each element of computing. However, under the cloud model—where we tie into the cloud—there is a move back toward a more vertical model of computing. Because as cloud computing features IT as a service, as The Economist magazine recently characterized the situation, “in a world of services it often does not make sense to think of hardware and software separately.”

Gordon Haff recently categorized the utility analogy as “an intriguing and big argument,” but one that ultimately will encounter a great deal of resistance from organizations (and their IT departments) that will have security and compliance issues which will cause them to retain computing resources and functions in house. Besides those issues, there are also other trade-offs for treating computing as a utility and moving to a more centralized computing model. Certainly, under cloud computing, while IT gains from better efficiencies, utilization, and manageability, that same centralization could inhibit the ability to innovate in the IT area by tying in users to larger and larger standardized systems.

Simply put then, when organizations can procure the same level of computing power and like-power (and compatible) software applications from outside providers as they get from their in-house resources for less (and perhaps for free), then companies and even public sector agencies will turn to the utility model and obtain more and more of their computing from the cloud. Nicholas Carr stated the cloud case very succinctly by saying that , quite simply: “It makes computing a heck of a lot less expensive.” Thus, the stage has been set for cloud computing to emerge as a new model for delivering information technology to individuals, organizations, and government agencies.

Writing in Forbes, Russ Daniels recently posited that: “The early 21st century is like the early 20th century, in that we are at the beginning of a new economic paradigm. This time, however, the engine of growth will not be manufacturing, but information.”  Yet, with this new age come new uncertainties. In her 2002 book, Technological Revolutions and Financial Capital: The Dynamics of Bubbles and Golden Ages, Carlota Perez described the “techno-economic” paradigm of technological innovation that has occurred historically. Once a major new technology emerges—be it trains, the telephone, or electrical power—eventually these disruptive innovations become thought of as “utilities”—becoming stabilizing forces for a new order for business and the economy. What is “different” about this time and the revolution in computing that is under way is that there will likely not be a stable period coming from the disruptively innovative technology forming the model of computing as a utility. Writing in the Harvard Business Review in 2008, John Hagel, John Seely Brown, and Lang Davison commented that:

“The historical pattern—disruption followed by stabilization—has itself been disrupted. A new kind of infrastructure is evolving, built on the sustained exponential pace of performance improvements in computing, storage, and bandwidth. Because the underlying technologies are developing continuously and rapidly, there is no prospect for stabilization … making equilibrium a distant memory.”

As some commentators have pointed out, past technological innovations have created far more jobs than those they have destroyed. However, as old media is being supplanted by new media, new media companies have mostly remained very small, with many being “Mom and Pop” or even one person in nature. And so, with more information technology being shifted to the cloud—and more internal IT roles being outsourced to external providers—it is likely that we will see fewer IT jobs overall. And, as Nicholas Carr recently pointed out, from a public policy perspective, this IT revolution is failing to create middle-class jobs to replace the ones that will inevitably be taken away. Further, he believes—as do others—that outsourcing IT could likely become offshoring IT for many cloud providers, thus taking the jobs and revenue from cloud computing outside of the country entirely. For certain areas of the country, like the Pacific Northwest, cloud computing may mean a veritable economic boom, as companies from Amazon to Google to Microsoft have moved to place their mammoth cloud data centers in areas with abundant water supplies and relatively inexpensive electrical utility costs.

Computer Viruses

part 1

Like any other field in computer science, viruses have evolved -a great deal indeed- over the years. In the series of press releases which start today, I will look at the origins and evolution of malicious code since it first appeared up to the present.

Going back to the origin of viruses, it was in 1949 that Mathematician John Von Neumann described self-replicating programs which could resemble computer viruses as they are known today. However, it was not until the 60s that we find the predecessor of current viruses. In that decade, a group of programmers developed a game called Core Wars, which could reproduce every time it was run, and even saturate the memory of other players’ computers. The creators of this peculiar game also created the first antivirus, an application named Reeper, which could destroy copies created by Core Wars.

However, it was only in 1983 that one of these programmers announced the existence of Core Wars, which was described the following year in a prestigious scientific magazine: this was actually the starting point of what we call computer viruses today.

At that time, a still young MS-DOS was starting to become the preeminent operating system worldwide. This was a system with great prospects, but still many deficiencies as well, which arose from software developments and the lack of many hardware elements known today. Even like this, this new operating system became the target of a virus in 1986: Brain, a malicious code created in Pakistan which infected boot sectors of disks so that their contents could not be accessed. That year also saw the birth of the first Trojan: an application called PC-Write.

Shortly after, virus writers realized that infecting files could be even more harmful to systems. In 1987, a virus called Suriv-02 appeared, which infected COM files and opened the door to the infamous viruses Jerusalem or Viernes 13. However, the worst was still to come: 1988 set the date when the “Morris worm” appeared, infecting 6,000 computers.

From that date up to 1995 the types of malicious codes that are known today started being developed: the first macro viruses appeared, polymorphic viruses … Some of these even triggered epidemics, such as MichaelAngelo. However, there was an event that changed the virus scenario worldwide: the massive use of the Internet and e-mail. Little by little, viruses started adapting to this new situation until the appearance, in 1999, of Melissa, the first malicious code to cause a worldwide epidemic, opening a new era for computer viruses.

part 2

This second installment of ‘The evolution of viruses’ will look at how malicious code used to spread before use of the Internet and e-mail became as commonplace as it is today, and the main objectives of the creators of those earlier viruses.

Until the worldwide web and e-mail were adopted as a standard means of communication the world over, the main mediums through which viruses spread were floppy disks, removable drives, CDs, etc., containing files that were already infected or with the virus code in an executable boot sector.

When a virus entered a system it could go memory resident, infecting other files as they were opened, or it could start to reproduce immediately, also infecting other files on the system. The virus code could also be triggered by a certain event, for example when the system clock reached a certain date or time.  In this case, the virus creator would calculate the time necessary for the virus to spread and then set a date –often with some particular significance- for the virus to activate. In this way, the virus would have an incubation period during which it didn’t visibly affect computers, but just spread from one system to another waiting for ‘D-day’ to launch its payload. This incubation period would be vital to the virus successfully infecting as many computers as possible.

One classic example of a destructive virus that lay low before releasing its payload was CIH, also known as Chernobyl. The most damaging version of this malicious code activated on April 26, when it would try to overwrite the flash-BIOS, the memory which includes the code needed to control PC devices. This virus, which first appeared in June 1998, had a serious impact for over two years and still continues to infect computers today.

Because of the way in which they propagate, these viruses spread very slowly, especially in comparison to the speed of today’s malicious code. Towards the end of the Eighties, for example, the Friday 13th (or Jerusalem) virus needed a long time to actually spread and continued to infect computers for some years. In contrast, experts reckon that in January 2003, SQLSlammer took just ten minutes to cause global communication problems across the Internet.

Notoriety versus stealth

For the most part, in the past, the activation of a malicious code triggered a series of on screen messages or images, or caused sounds to be emitted to catch the user’s attention.  Such was the case with the Ping Pong virus, which displayed a ball bouncing from one side of the screen to another. This kind of elaborate display was used by the creator of the virus to gain as much notoriety as possible. Nowadays however, the opposite is the norm, with virus authors trying to make malicious code as discreet as possible, infecting users’ systems without them noticing that anything is amiss.

Part 3

This third installment of ‘The evolution of viruses’ will look at how the Internet and e-mail changed the propagation techniques used by computer viruses.

Internet and e-mail revolutionized communications. However, as expected, virus creators didn’t take long to realize that along with this new means of communication, an excellent way of spreading their creations far and wide had also dawned. Therefore, they quickly changed their aim from infecting a few computers while drawing as much attention to themselves as possible, to damaging as many computers as possible, as quickly as possible. This change in strategy resulted in the first global virus epidemic, which was caused by the Melissa worm.

With the appearance of Melissa, the economic impact of a virus started to become an issue. As a result, users -above all companies- started to become seriously concerned about the consequences of viruses on the security of their computers. This is how users discovered antivirus programs, which started to be installed widely. However, this also brought about a new challenge for virus writers, how to slip past this protection and how to persuade users to run infected files.

The answer to which of these virus strategies was the most effective came in the form of a new worm: Love Letter, which used a simple but effective ruse that could be considered an early type of social engineering. This strategy involves inserting false messages that trick users into thinking that the message includes anything, except a virus. This worm’s bait was simple; it led users to believe that they had received a love letter.

This technique is still the most widely used. However, it is closely followed by another tactic that has been the center of attention lately: exploiting vulnerabilities in commonly used software. This strategy offers a range of possibilities depending on the security hole exploited. The first malicious code to use this method –and quite successfully- were the BubbleBoy and Kakworm worms. These worms exploited a vulnerability in Internet Explorer by inserting HTML code in the body of the e-mail message, which allowed them to run automatically, without needing the user to do a thing.

Vulnerabilities allow many different types of actions to be carried out. For example, they allow viruses to be dropped on computers directly from the Internet -such as the Blaster worm-. In fact, the effects of the virus depend on the vulnerability that the virus author tries to exploit.

part 4

In the early days of computers, there were relatively few PCs likely to contain “sensitive” information, such as credit card numbers or other financial data, and these were generally limited to large companies that had already incorporated computers into working processes.

In any event, information stored in computers was not likely to be compromised, unless the computer was connected to a network through which the information could be transmitted. Of course, there were exceptions to this and there were cases in which hackers perpetrated frauds using data stored in IT systems. However, this was achieved through typical hacking activities, with no viruses involved.

The advent of the Internet however caused virus creators to change their objectives, and, from that moment on, they tried to infect as many computers as possible in the shortest time. Also, the introduction of Internet services -like e-banking or online shopping- brought in another change. Some virus creators started writing malicious codes not to infect computers, but, to steal confidential data associated to those services.  Evidently, to achieve this, they needed viruses that could infect many computers silently.

Their malicious labor was finally rewarded with the appearance, in 1986, of a new breed of malicious code generically called “Trojan Horse”, or simply “Trojan”. This first Trojan was called PC-Write and tried to pass itself off as the shareware version of a text processor. When run, the Trojan displayed a functional text processor on screen. The problem was that, while the user wrote, PC-Write deleted and corrupted files on the computers’ hard disk.

After PC-Write, this type of malicious code evolved very quickly to reach the stage of present-day Trojans. Today, many of the people who design Trojans to steal data cannot be considered virus writers but simply thieves who, instead of using blowtorches or dynamite have turned to viruses to commit their crimes. Ldpinch.W or the Bancos or Tolger families of Trojans are examples of this

part 5

Even though none of them can be left aside, some particular fields of computer science have played a more determinant role than others with regard to the evolution of viruses. One of the most influential fields has been the development of programming languages.

These languages are basically a means of communication with computers in order to tell them what to do. Even though each of them has its own specific development and formulation rules, computers in fact understand only one language called “machine code”.

Programming languages act as an interpreter between the programmer and the computer. Obviously, the more directly you can communicate with the computer, the better it will understand you, and more complex actions you can ask it to perform.

According to this, programming languages can be divided into “low and high level” languages, depending on whether their syntax is more understandable for programmers or for computers. A “high level” language uses expressions that are easily understandable for most programmers, but not so much for computers. Visual Basic and C are good examples of this type of language.

On the contrary, expressions used by “low level” languages are closer to machine code, but are very difficult to understand for someone who has not been involved in the programming process. One of the most powerful, most widely used examples of this type of language is “assembler”.

In order to explain the use of programming languages through virus history, it is necessary to refer to hardware evolution. It is not difficult to understand that an old 8-bit processor does not have the power of modern 64-bit processors, and this of course, has had an impact on the programming languages used.

In this and the next installments of this series, we will look at the different programming languages used by virus creators through computer history:

- Virus antecessors: Core Wars

As was already explained in the first chapter of this series, a group of programs called Core Wars, developed by engineers at an important telecommunications company, are considered the antecessors of current-day viruses. Computer science was still in the early stages and programming languages had hardly developed. For this reason, authors of these proto-viruses used a language that was almost equal to machine code to program them.

Curiously enough, it seems that one of the Core Wars programmers was Robert Thomas Morris, whose son programmed -years later- the “Morris worm”. This malicious code became extraordinarily famous since it managed to infect 6,000 computers, an impressive figure for 1988.

- The new gurus of the 8-bits and the assembler language.

The names Altair, IMSAI and Apple in USA and Sinclair, Atari and Commodore in Europe, bring memories of times gone by, when a new generation of computer enthusiasts “fought” to establish their place in the programming world. To be the best, programmers needed to have profound knowledge of machine code and assembler, as interpreters of high-level languages used too much run time. BASIC, for example, was a relatively easy to learn language which allowed users to develop programs simply and quickly. It had however, many limitations.

This caused the appearance of two groups of programmers: those who used assembler and those who turned to high-level languages (BASIC and PASCAL, mainly).

Computer aficionados of the time enjoyed themselves more by programming useful software than malware. However, 1981 saw the birth of what can be considered the first 8-bit virus. Its name was “Elk Cloner”, and was programmed in machine code. This virus could infect Apple II systems and displayed a message when it infected a computer.


part 6

Computer viruses evolve in much the same way as in other areas of IT. Two of the most important factors in understanding how viruses have reached their current level are the development of programming languages and the appearance of increasingly powerful hardware.

In 1981, almost at the same time as Elk Kloner (the first virus for 8-bit processors) made its appearance, a new operating system was growing in popularity. Its full name was Microsoft Disk Operating System, although computer buffs throughout the world would soon refer to it simply as DOS.


DOS viruses

The development of MS DOS systems occurred in parallel to the appearance of new, more powerful hardware. Personal computers were gradually establishing themselves as tools that people could use in their everyday lives, and the result was that the number of PCs users grew substantially. Perhaps inevitably, more users also started creating viruses. Gradually, we witnessed the appearance of the first viruses and Trojans for DOS, written in assembler language and demonstrating a degree of skill on the part of their authors.

Far less programmers know assembler language than are familiar with high-level languages that are far easier to learn. Malicious code written in Fortran, Basic, Cobol, C or Pascal soon began to appear. The last two languages, which are well established and very powerful, are the most widely used, particularly in their TurboC and Turbo Pascal versions. This ultimately led to the appearance of “virus families”: that is, viruses that are followed by a vast number of related viruses which are slightly modified forms of the original code.

Other users took the less ‘artistic’ approach of creating destructive viruses that did not require any great knowledge of programming. As a result, batch processing file viruses or BAT viruses began to appear.

Win16 viruses

The development of 16-bit processors led to a new era in computing. The first consequence was the birth of Windows, which, at the time, was just an application to make it easier to handle DOS using a graphic interface.

The structure of Windows 3.xx files is rather difficult to understand, and the assembler language code is very complicated, as a result of which few programmers initially attempted to develop viruses for this platform. But this problem was soon solved thanks to the development of programming tools for high-level languages, above all Visual Basic. This application is so effective that many virus creators adopted it as their ‘daily working tool’. This meant that writing a virus had become a very straightforward task, and viruses soon appeared in their hundreds. This development was accompanied by the appearance of the first Trojans able to steal passwords. As a result, more than 500 variants of the AOL Trojan family -designed to steal personal information from infected computers-  were identified.

part 7

This seventh edition on the history of computer viruses will look at how the development of Windows and Visual Basic has influenced the evolution of viruses, as with the development of these, worldwide epidemics also evolved such as the first one caused by Melissa in 1999.

While Windows changed from being an application designed to make DOS easier to manage to a 32-bit platform and operating system in its own right, virus creators went back to using assembler as the main language for programming viruses.

Versions 5 and 6 of Visual Basic (VB) were developed, making it the preferred tool, along with Borland Delphi (the Pascal development for the Windows environment), for Trojan and worm writers. Then, Visual C, a powerful environment developed in C for Windows, was adopted for creating viruses, Trojans and worms. This last type of malware gained unusual strength, taking over almost all other types of viruses. Even though the characteristics of worms have changed over time, they all have the same objective: to spread to as many computers as possible, as quickly as possible.

With time, Visual Basic became extremely popular and Microsoft implemented part of the functionality of this language as an interpreter capable of running script files with a similar syntax.

At the same time as the Win32 platform was implemented, the first script viruses also appeared: malware inside a simple text file. These demonstrated that not only executable files (.EXE and .COM files) could carry viruses. As already seen with BAT viruses, there are also other means of propagation, proving the saying “anything that can be executed directly or through a interpreter can contain malware.” To be specific, the first viruses that infected the macros included in Microsoft Office emerged. As a result, Word, Excel, Access and PowerPoint become ways of spreading ‘lethal weapons’, which destroyed information when the user simply opened a document.


Melissa and self-executing worms

The powerful script interpreters in Microsoft Office allowed virus authors to arm their creations with the characteristics of worms. A clear example is Melissa, a Word macro virus with the characteristics of a worm that infects Word 97 and 2000 documents. This worm automatically sends itself out as an attachment to an e-mail message to the first 50 contacts in the Outlook address book on the affected computer. This technique, which has unfortunately become very popular nowadays, was first used in this virus which, in 1999, caused one of the largest epidemics in computer history in just a few days. In fact, companies like Microsoft, Intel or Lucent Technologies had to block their connections to the Internet due to the actions of Melissa.

The technique started by Melissa was developed in 1999 by viruses like VBS/Freelink, which unlike its predecessor sent itself out to all the contacts in the address book on the infected PC. This started a new wave of worms capable of sending themselves out to all the contacts in the Outlook address book on the infected computer. Of these, the worm that most stands out from the rest is VBS/LoveLetter, more commonly known as ‘I love You’, which emerged in May 2000 and caused an epidemic that caused damage estimated at 10,000 million euros. In order to get the user’s attention and help it to spread, this worm sent itself out in an e-mail message with the subject ‘ILOVEYOU’ and an attached file called ‘LOVE-LETTER-FOR-YOU.TXT.VBS’. When the user opened this attachment, the computer was infected.

As well as Melissa, in 1999 another type of virus emerged that also marked a milestone in virus history. In November of that year, VBS/BubbleBoy appeared, a new type of Internet worm written in VBScript. VBS/BubbleBoy was automatically run without the user needing to click on an attached file, as it exploited a vulnerability in Internet Explorer 5 to automatically run when the message was opened or viewed. This worm was followed in 2000 by JS/Kak.Worm, which spread by hiding behind JavaScript in the auto-signature in Microsoft Outlook Express, allowing it to infect computers without the user needing to run an attached file. These were the first samples of a series of worms, which were joined later on by worms capable of attacking computers when the user is browsing the Internet.

To keep up with this Topic I do have More for you to read please:

Computer security enhancements

10 reasons why pcs crash u must know

If you would like to participate and get paid, you are welcome to join for free! Just

click this link, sign up.

Also incase you are looking for quality material to post on your blog or site,

all these am giving to you for free! Just click on Republish Aritcle button on Top of page,

Right side just below my photo, copy and paste the whole code into your blog or site!

Are Automated Forex Trading Robots For Real?

Automated forex trading robots are software programs that trades the forex markets without human intervention.  All you need to do is to set a few parameters, and the robot will be off trading the forex markets, making money for you while you sleep.

Or, at least, that is what the hype would have you believe.

I have no doubt that there are many forex robots out there that can trade the forex markets profitably, for a period, or under certain circumstances.  But, a simple software program that can handle the complexities of the forex market where even a sneeze from the fed chief might trigger a movement in the currencies, is probably an unrealistic expectation.

Furthermore, if you have a trading robot that can trade the forex markets profitably on a consistent basis, it is highly unlikely that you will succumb to the temptation to make a quick buck and sell it off.  Many trillions of dollars are estimated to be changing hands every single day in the forex markets, and it makes much better sense to simply let the robot trade your own account.

This article is meant to highlight the ease of building and successfully marketing an automated forex trading robot without much knowledge of trading or the forex markets.  The aim is to alert would-be investors to be more careful when they hear of such robots and to remember how easy it is to make a trading robot appear profitable.  The following outlines the steps that can be taken to build and market such a robot.

The Automated Forex Trading Robot

One approach is to get your hands on the past data histories of the more popular currencies – a year or two’s worth of data is probably sufficient.  Come up with 5 different trading rules, each with 10 different parameter settings.  From your 5 trading rules, you now have 100,000 different combinations depending on your parameter settings.

Write a piece of software to test each combination on the past data, and you are sure to come up with some combinations that are hugely profitable.  For all intents and purposes, the profitable rules and parameter settings are highly optimized, and probably will be useless in actual trading.  But these rules and parameters are very persuasive when used as part of your marketing materials, and when you are called upon to “prove” the profitability of your robot.

Once you have done this, write your trading robot based on the rules and parameters.  You might want to add money management features and you definitely want an ability to test on past data.  And you now have your robot.

The Website

Your website is probably more important than your robot.  Make sure that it is professionally designed with many charts showing how well your software performed.  Write like you are rolling in dough trading your own robot, and you already have so much that you just have got to give it away.  Include customer testimonials as they have been known to work wonders.

And to make an irresistible offer even more irresistible, include some kind of free trial.  And don’t forget the money back guarantee.

The Sale

Let’s assume that you offer a free trial for a month, and that the accuracy of your software is equivalent to throwing darts at the charts.  Keep in mind that even if you were to execute your trades at random, you would still make money half the time, so although your robot is not effective in trading the markets, it would still make money half the time.

Therefore, on average, half of your customers will be making money after the trial period.  In fact,  some of those customers would have actually made good money, and would definitely pay for your subscription or robot.  They would become loyal customers, for a while, and would probably even recommend you to their friends.

Conclusion

So there you have it.  You build a robot that gives the appearance that it can trade the forex market well, set up an impressive marketing website from which you can already get some sales, and offer a free trial from which you can get more sales from your customers who were profitable during the trial period.

Of course not all robots were built just for the sale.  I’m sure that there are robots which can trade the forex markets really profitably.  But then again, if you do have such a robot, you would probably make more money by letting the robot trade your account than by selling it.  And, would you even want to sell such a robot?

Why I Love Mobile Application Development – My Favorite Five Mobile Apps

The first mobile phone I used was just that: a phone that I could use while on the move. It did have a calculator, snakes (the game) and a calendar, but not much else. When they launched mobile phones that could play he radio and had a built-in camera, I was overjoyed. It seemed to me that there was not much they could do with phones anymore; they could attach a Swiss knife, fit in a torch, or maybe shape it like a boomerang, but what else was left?

I happily realized that I was wrong once the field of mobile application development advanced at a searing pace and more and more innovative mobile applications flooded the market. At first I was not much interested in all these fancy applications; my attitude was: “Do I need them? I don’t think so.”

But once I checked out an app store and was totally hooked. Now I cannot imagine my mobile without Facebook, Pandora, Evernote, Google Maps and YouTube player. The following are my five favorite applications.

Facebook: this application is available on all the smartphones and all Apple devices. Most of us are addicted to Facebook and it’s a great way to stay connected to friends and pseudo-friends. It also the leading mobile application; 200 million people have it on their phones. The mobile version is as easy to use as the one on the computers, once to get used to it.

Pandora: Are you listening to music while reading this article? Created by the custodians of the Music Genome Project, it is easily available on most of the smartphones. You can create radio stations that play a particular kind of music and you can further customize you station by giving thumbs up or down to the songs Pandora plays. It’s simply amazing; only problem is you play it outside USA.

Google Maps: This is one application that makes me bless all those people doing mobile application development work. This application lets you store maps, see live traffic, gives your voice directions, lets you explore an area in 3D, allows you to share you location with your friends (also lets you see yours) and much more.

YouTube Player: “Who wants to watch videos on the mobile phone?” That’s what I thought too. Well, with YouTube player’s perfect resolution on almost all the phones everyone might get start watching videos on the phone. This application works very well with the phones and using the default streaming media.

Evernote: The undisputed king of note-taking. An example of really smart mobile application development, this application lets you snap a photo, speak your note, take screenshots, and type your note. It also makes your note searchable on the net. If you’ve taken a snap of a music DVD cover, Evernote will make the text on the DVD searchable!