February 7, 2012

Software Quality Explained

Open Clipart Library logo
Image via Wikipedia

You dream in code, the exploration of programs, the revision of applications. Your mind is filled to the strange (and sometimes indecipherable) language of computers and their methods. You do not pretend to understand it all. No one ever could. But you have learned how to create what you need, rather than simply accepting what companies have offered you. You are a visionary.

Others, however, are not. They do not recognize the subtle components of software, the elements that brand it worthy. They must instead seek out ways to determine quality and convenience. And those ways must be learned before they can then be utilized.

Software is a common part of our daily lives, but many confuse its intentions or do not understand its value. And this is why software quality must therefore be calculated, to ensure that all users receive the best programs possible.

Typically this calculation includes specific questions, such as:

1. Can it be maintained? No program is considered valid if it will be without purpose in a matter of years. It must instead be able to have a necessary function that will not change or can instead be reinvented as needed – a flexible source code is essential.

2. Is is concise? Code, to the casual computer enthusiast, is a string of letters and patterns that offer no answers. To those with discerning eyes, however, the flaws of parentheses and loops will be offered immediately. If the program is filled to unnecessary designs or functions, it is not of good quality.

3. Is it safe? No worry is greater than a computer being infused with a sudden virus, made into a series of errors and mistakes. Software must therefore be protected throughout its entire production, and must also include the essential countermeasures (such as firewalls, secure coding and an assurance of no Integer overflow).

These questions are vital in assessing a software’s quality. They must be asked again and again to ensure no complications arise and no user suffers.

Enhanced by Zemanta

The Freeware Difference

Award ceremony of the II University Open Sourc...
Image via Wikipedia

You are a master of the dollar – your every moment is dedicated to finding the best ways to spare your pennies and keep your savings secure. Technology, you are certain, is not meant to consume your profits (as it already consumes your attention). It is instead to be given freely, without the usual high costs and higher frustrations. And this, of course, has led you to seek out software that is without pricing, that is instead offered easily. You take it all, wanting to avoid the usual expense and instead create source codes that will do precisely what you need. But that, you soon discover, isn’t as simple as you thought it would be.

Because, although you chose freeware, you did not choose free and open software.

The difference between these ideas is often blurred. The names are almost identical and the meanings often overlap. But there are elements that distinguish them from each other and you must learn these to ensure that you make the proper choices.

Freeware: simply explained, freeware are programs that do not require your money. They can instead be downloaded without concern. They are not, however, always able to be changed. Their source codes can instead be heavily copyrighted. This allows them to be used but not modified or distributed.

Free and Open Software: unlike its freeware counterpart, this application can instead be altered. It is both free and unprotected; which ensures it can therefore be manipulated and then given to others. Its rules are vague and its limitations are almost non-existent.

This distinction is minimal, with many users commonly exchanging these terms, thinking them to be of the same purpose. They are not. While all free and open software can be considered freeware, all freeware cannot be considered both free and open. And this must be understood to guarantee that the selections you make are the ones you desire.

Enhanced by Zemanta

Free Software: The Critique

Vista source code
Image by liquidslave via Flickr

In a long history of brilliant technological ideas (some of which you like to think were yours), there is one that perhaps shames them all, a concept so unique that it can never be replicated or refined: free software. Proving that manufacturers could no longer dictate what was needed, these programs were offered as alternatives to the common assumptions. They did not require dollars. They did not force limitations. They instead allowed individuals to find a source code and open it wide, playing with the language until it offered something entirely new. And from this innovation spawned an ease and convenience that cannot be denied.

It can, however, be disputed.

Free software has attracted much acclaim since its invention in 1983 (where a movement was formed to promote its usage over the more standard pay-ware). But that acclaim has been followed by several criticisms – none more prominent than the accusations of these programs claiming too much of the needed revenue from companies.

It is an easy fear to understand: with the introduction of free software, users no longer had to rely on manufacturers to provide them with what they needed (or often what they didn’t need but were forced to take). They could instead develop their applications as they chose, no longer having to wait for their desires to be met. They didn’t have to pay. They didn’t have to hesitate.

And companies were quick to protest. Beyond the obvious copyright concerns, free software has been estimated to have claimed over 50 billion dollars a year from traditional programs since it began. Such a loss has all major brands naming these methods without merit. They are considered little more than thefts.

This is not, however, true. Free software is designed to be distributed and revised. It is not ignoring the rules; it is merely changing them. And companies will have to understand this and find ways to compete.

Enhanced by Zemanta

The Difference Understood: Free Software and Open Source

Logo of the Open Source GIS software gvSIG Cat...
Image via Wikipedia

It is the easiest of assumptions: a source code is challenged, believed to be without the common restrictions. It can instead be manipulated, made into something far greater than its makers intended. It can be mastered, understood line by line, until it offers all of its many possibilities; each destined to be shared with the world. You will create new programs and all will marvel at your cleverness. But, as you try to distribute your inventions, you find that you… can’t. Your free software has failed.

This is possibly because it was never a free software to begin with. It may have instead been an open source.

A confusion shared by many burgeoning software creators is the difference between free programs and their open source companions. Many think these ideas to be the same, separated only by their names. This is not true. There is instead a distinct (however delicate) difference between them that must be understood. And such understanding will prove vital in your quest to provide the Internet with its greatest offerings.

Free Software: encompassing a wide variety of programs, free software is distinguished by a flexible copyright. These are programs that can be shared between several users without warnings from their makers. They lack the usual licensing worries and can be distributed without fear of penalty. Their title does often refer to their minimal costs as well.

Open Source Code: while found within the free software realm, the open source is given more restrictions. While its language can be shifted, it must only be sent into the world if it maintains it original licensing. It is never to be offered as new product and must give credit to its foundations. Distribution permission must be clearly marked within the copyright.

Understanding the difference between these choices is essential for any would be programmer. An open source may be free but any free software may not be an open source. Know this before attempting any changes.

Enhanced by Zemanta

Defining Open Source: Software Explained

A composite of the GNU logo and the OSI logo, ...
Image via Wikipedia

The online world is defined to possibility. There are no boundaries that can’t be crossed (and shattered). There are no concerns that can’t be broken, pieced back together into a new sensibility. Limitations do not–and should not–exist. But too many are still assumed within software and its source codes. Individuals without the expected experiences believe these codes to be stagnant, unable to be recreated or perfected. They’re certain that each line of indecipherable language must remain as it was intended: without change or improvement.

This is not true.

Source codes can instead be shaped into endless options, as long as they are deemed open and able.

During the 1990′s a philosophy of free software emerged. Those who devoted their time to the virtual playgrounds demanded more than company standards and forced restrictions. They wished instead to explore, to understand how every program could be developed beyond its original intent – and from this came the notion of the open source.

Simply explained: this movement allowed individuals to take established codes and reinvent them, making the necessary modifications and improvements (as well as also learning the ways of computers. The process became a valuable aid to those not yet familiar with syntax). Through this new programs could then be passed among users, in a constant state of transition and rebirth.

This became the open source. Those softwares were without the usual copyrights or license woes. They were instead formed for the distinct purpose of change. And all users were able to access the true potential found in each. This allowed for a wealth of new designs within the Internet and radically changed the previous notions.

There are, of course, criticisms of the open source. Many believe it to disregard established copyrights or to encourage a lack of money exchange. Programs, detractors argue, no longer must be purchased by the many. They can instead be taken by the few and then sent into the Internet for free downloads.

This has not subdued the popularity of the open source, however, and the movement is still an undeniable part of the online world.

Enhanced by Zemanta

The Linux Rule: Copyleft

Tux, the Linux penguin
Image via Wikipedia

Technology is to improve lives, to relieve the burden that comes from obligations and daily concerns. It is meant to inspire progress and invention, helping to ease the exchange of ideas and their possibilities. Linux is a company founded on such principles. Since its conception it has offered a revolutionary approach to software and its potential: it is to be traded, passed between users; with its codes changed and its purposes shaped to the unexpected. These programs (defiers of the common licenses) allow individuals to experiment with applications. And this has provided a new movement within the Internet.

And such a movement is made possible by Linux’s reliance on the Copyleft rule.

Defined simply: the Copyleft rule is a way to ensure ideas can be exchanged freely between users without incurring the wrath of companies. When a program is modified under this process it is allowed to be sent into the virtual world, able to be downloaded by others (and then shaped into what they desire). But, unlike the usual copyrights that demand all software be purchased and no source changes be made, these Linux choices ensure that the programs are free – and remain so. While individual applications may have their own requirements, Copyleft guarantees that they can still be used by all.

And it is this guarantee that brands Linux an innovation. The majority of companies refuse to entertain this concept, believing it to be unworthy. Their concerns are profits and the monopoly of all users’ attentions. Their source codes are carefully protected and kept from the Internet. Any changes will result in severe penalties… or worse.

Linux, however, was formed on the need for reinvention; and its use of these free softwares has led it to become a popular alternative to the more famed (and more rigid) manufacturers. Its Copyleft mentality is proof of its want for progress and it seeks only to ensure that ideas are never stifled. Software is to be the ally of all, not a restriction.

Enhanced by Zemanta

Free Software Concerns

It was a simple choice: downloading software, avoiding the usual costs and budget burdens. There was a wealth of programs to select and each seemed ideal. You hoarded them, gleefully avoiding the copyright concerns and finding their codes all opened to you; ready to be dissected and understood. But, as you began to play with the syntax, you realized something tragic: these free applications were filled to puzzles you couldn’t solve. And suddenly the advantage of paying nothing became a complication you didn’t want.

Open source softwares are undeniably tempting. They have revolutionized the notion of programs and their limits. Caution, however, must be given when considering them. Because, while their advantages are plentiful, their concerns are still apparent:

1. Viruses. A download requires trust – that the information will be accurate, that the code will be pure. Often it is. There are times, though, when free software is infected with vicious spy-ware and hard-drive dissolving viruses. Before making any decisions, you must be aware of this possibility and choose only reputable sites and programmers.

2. Lack of support. Open source codes are easy appeals. Their ability to change (and be changed) marks them perfect for those needing more than the standard purposes. Losing those purposes, however, leaves you without the necessary help. Manufacturer’s will not assist you with any questions or concerns you may have regarding your software. Once it has been modified it is no longer their obligation. It will instead be yours.

3. Experience required. The casual programmer wants always to learn, to translate the language of computers into an understandable expression. Those just beginning with open source softwares, though, may struggle. Without precise knowledge (as well as the appropriate hours to devote to mastery) of them, these applications can baffle.

Free software should not be avoided. It must, however, be recognized for both its ingenuity and its implications. There are dangers to find. You must instead combat them with caution and research.

Enhanced by Zemanta

Building Software: The User Choice

The Inform 7 IDE on Mac OS X showing source co...
Image via Wikipedia

You are not a programmer. This is a truth you have long since accepted. Your computer is not an extension of yourself, with fingers and keys blurred to perfect harmony, a screen reflecting your every command before it’s given. Your skills (you offer that name sparingly, embarrassed that it is close to a deception) are meager. Software eludes you; source codes confuse; and it is considered a triumph if you manage to keep the Internet from stalling. You have no understanding of applications or their meanings. You cannot create and redefine… except you already do.

Software is not beyond you. It is instead ingrained within your every gesture, refocused to your specific needs. While you may not be crafting endless strings of code or solving the riddles of functionality, you are still programming. It is a process called End User Development; and through it are the unexpected ways to utilize your system and its many tasks.

End User Development, explained simply (as you always wish your computer’s components to be), is a series of scripts that are manipulated daily by you. These applications are not filled to complex syntax. They are instead items like templates, basic HTML for blogging and spreadsheets. These are learning softwares that can be changed each time they are opened. They are found throughout your system and can be tailored to all of your requirements – such as when you create a file directory or stream a video game. They are easy and immediate.

And, because of this, they are often ignored.

End User Development is mistaken by many as little more than software certainty. It is, however, the individual choosing to reprogram each function, to make the necessary choices. And, while these are small changes, they are still vital to creating a personalized experience.

You are a programmer. You just didn’t realize it. Now you can.

Enhanced by Zemanta

The Free Software Movement

Tux, as originally drawn by Larry Ewing
Image via Wikipedia

Software is to be without limits – source codes are to be forever open, available to an ever curious public and their machinations. Companies are to supply programs but must not refuse their evolution. They must instead encourage it, allowing consumers to create what they desire and transform every application. Such a philosophy was once thought to be novel, with most dismissing it as impossible (or simply the desires of those unwilling to spare their dollars to purchase the latest softwares). But this once impracticality has become instead a contender among the virtual world; and it is through it that the concepts of digital property has been redefined.

The Free Software Movement began in 1983 with a singular purpose of changing how individuals were forced to comply with companies. Founder Richard Stallman – a programming pioneer – wished to remove the usual licenses and restrictions found within software; which severely limited how much users could shape source codes and their intentions. The point of the computer, Stallman argued, was not to be kept to constant rules; it was instead to dismiss the need for them.

And so the Movement began, formed by the establishment of the GNU Project – a principle that promoted distribution among individuals and software that would not be trapped to the typical copyrights. This concept shocked the online world, with some naming it crude (a disregard of the laws and needed regulations). Others, however, saw it for what it was: the revolution of all programming.

Through the Free Software Movement applications could be reinvented. The intentions were to take any source code and then adapt it for an individual’s specific needs; allowing the code to therefore work for the user, rather than offering just a broad effect. A tailored effort, it was claimed, would provide greater results and possibilities – which could then be given to the Internet itself, promoting progress.

Such progress still exists today. Stallman’s ideas are still being used and are revered amongst users. Their controversy is not enough to dissuade.

Enhanced by Zemanta

Proprietary Software Defined

Adriaan de Groot, Free Software Foundation Europe
Image by Teemu Mäntynen via Flickr

It’s a confusion of copyrights and their meanings, the indecipherable warnings: a software piece baffles, offering only a limited scope of abilities and none of the source code potentials. You try to convert it; you try to access its secrets, wishing to shape them into ideas that better suit your life; but every attempt fails, leaving you with nothing to show but an application that is neither perfect nor malleable. And you… are not certain how this happened. Your support of the Free Software Movement is well known. You have no use for such narrowly focused programs. You want to create, not worry over licenses.

But that worry may be necessary is you have chosen a Proprietary Software.

Defined simply: Proprietary Software is a program that cannot be manipulated by those who purchase it. It is instead the creative and intellectual property of its manufacturer. It cannot therefore be changed or modified in any way without the express permission of that manufacturer; and it must not be redistributed between users. Refusing to follow these rules can lead to severe punishments – including fines or prison.

Proprietary Software is an established form of programming, with the majority of all applications held within it. These applications feature source codes that cannot be distinguished by humans and are instead completely closed; refusing the notion of evolving intents. This has, of course, been a point of contention for those who follow the Free Software Movement and wish to experience constant change.

That change is impossible, however, with these heavily copyrighted materials. There can be no altering. The source code must remain as it was first conceived and must not be marketed as a new idea to others. This is illegal.

It is also a frustration.

Proprietary Software has proven itself to be despised among the masses – with individuals wishing instead to remove the licensing and find new potentials instead. This is not possible, however, and must not be attempted.

Enhanced by Zemanta