<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8046983384112306093</id><updated>2011-04-21T17:49:20.367-07:00</updated><title type='text'>Computer Software</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>6</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-7100679927766918728</id><published>2009-04-28T10:56:00.001-07:00</published><updated>2009-04-28T10:56:54.325-07:00</updated><title type='text'>Computer software</title><content type='html'>&lt;h3 id="siteSub"&gt;From Wikipedia, the free encyclopedia&lt;/h3&gt;&lt;p&gt;&lt;b&gt;Computer software,&lt;/b&gt; or just &lt;b&gt;software&lt;/b&gt; is a general term used to describe a collection of &lt;a href="http://en.wikipedia.org/wiki/Computer_program" title="Computer program"&gt;computer programs&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Algorithm" title="Algorithm"&gt;procedures&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Software_documentation" title="Software documentation"&gt;documentation&lt;/a&gt; that perform some tasks on a computer system.&lt;sup id="cite_ref-0" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-0" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt; &lt;p&gt;The term includes:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Application software such as &lt;a href="http://en.wikipedia.org/wiki/Word_processor" title="Word processor"&gt;word processors&lt;/a&gt; which perform productive tasks for users.&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Firmware" title="Firmware"&gt;Firmware&lt;/a&gt; which is software programmed resident to electrically programmable memory devices on board mainboards or other types of integrated hardware carriers.&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Middleware" title="Middleware"&gt;Middleware&lt;/a&gt; which controls and co-ordinates &lt;a href="http://en.wikipedia.org/wiki/Distributed_computing" title="Distributed computing"&gt;distributed systems&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;System software such as &lt;a href="http://en.wikipedia.org/wiki/Operating_system" title="Operating system"&gt;operating systems&lt;/a&gt;, which interface with hardware to provide the necessary services for application software.&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Software_testing" title="Software testing"&gt;Software testing&lt;/a&gt; is a domain independent of development and programming. It consists of various methods to test and declare a software product fit before it can be launched for use by either an individual or a group. Many tests on functionality, performance and appearance are conducted by modern testers with various tools such as QTP, Load runner, Black box testing etc to edit a checklist of requirements against the developed code. ISTQB is a certification that is in demand for engineers who want to pursue a career in testing.&lt;sup id="cite_ref-1" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-1" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Testware" title="Testware"&gt;Testware&lt;/a&gt; which is an &lt;a href="http://en.wikipedia.org/wiki/Umbrella_term" title="Umbrella term"&gt;umbrella term&lt;/a&gt; or container term for all &lt;a href="http://en.wikipedia.org/wiki/Utility" title="Utility"&gt;utilities&lt;/a&gt; and application software that serve in combination for testing a &lt;a href="http://en.wikipedia.org/wiki/Software_package_%28programming%29" title="Software package (programming)"&gt;software package&lt;/a&gt; but not necessarily may optionally contribute to &lt;a href="http://en.wikipedia.org/wiki/Business_operations" title="Business operations"&gt;operational&lt;/a&gt; purposes. As such, testware is not a standing configuration but merely a working environment for application software or &lt;a href="http://en.wikipedia.org/wiki/Subset" title="Subset"&gt;subsets&lt;/a&gt; thereof.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Software includes &lt;a href="http://en.wikipedia.org/wiki/Websites" title="Websites" class="mw-redirect"&gt;websites&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Computer_program" title="Computer program"&gt;programs&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Video_games" title="Video games" class="mw-redirect"&gt;video games&lt;/a&gt;, etc. that are coded by &lt;a href="http://en.wikipedia.org/wiki/Programming_language" title="Programming language"&gt;programming languages&lt;/a&gt; like C, &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B" title="C++"&gt;C++&lt;/a&gt;, etc.&lt;/p&gt; "Software" is sometimes used in a broader context to mean anything which is not hardware but which is &lt;i&gt;used&lt;/i&gt; with hardware, such as film, tapes and records.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-7100679927766918728?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/7100679927766918728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/computer-software.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/7100679927766918728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/7100679927766918728'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/computer-software.html' title='Computer software'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-5488576544914615417</id><published>2009-04-28T10:55:00.000-07:00</published><updated>2009-04-28T10:56:14.480-07:00</updated><title type='text'>Overview</title><content type='html'>&lt;p&gt;Computer software is often regarded as anything but &lt;a href="http://en.wikipedia.org/wiki/Hardware" title="Hardware"&gt;hardware&lt;/a&gt;, meaning that the "hard" are the parts that are &lt;a href="http://en.wikipedia.org/wiki/Tangible" title="Tangible" class="mw-redirect"&gt;tangible&lt;/a&gt; while the "soft" part is the intangible objects inside the computer. Software encompasses an extremely wide array of products and technologies developed using different techniques like &lt;a href="http://en.wikipedia.org/wiki/Programming_languages" title="Programming languages" class="mw-redirect"&gt;programming languages&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Scripting_languages" title="Scripting languages" class="mw-redirect"&gt;scripting languages&lt;/a&gt; or even &lt;a href="http://en.wikipedia.org/wiki/Microcode" title="Microcode"&gt;microcode&lt;/a&gt; or a &lt;a href="http://en.wikipedia.org/wiki/Field-programmable_gate_array" title="Field-programmable gate array"&gt;FPGA&lt;/a&gt; state. The types of software include &lt;a href="http://en.wikipedia.org/wiki/Web_pages" title="Web pages" class="mw-redirect"&gt;web pages&lt;/a&gt; developed by technologies like &lt;a href="http://en.wikipedia.org/wiki/HTML" title="HTML"&gt;HTML&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/PHP" title="PHP"&gt;PHP&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Perl" title="Perl"&gt;Perl&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/JavaServer_Pages" title="JavaServer Pages"&gt;JSP&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/ASP.NET" title="ASP.NET"&gt;ASP.NET&lt;/a&gt;, XML, and &lt;a href="http://en.wikipedia.org/wiki/Desktop_application" title="Desktop application" class="mw-redirect"&gt;desktop applications&lt;/a&gt; like &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Word" title="Microsoft Word"&gt;Microsoft Word&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/OpenOffice" title="OpenOffice" class="mw-redirect"&gt;OpenOffice&lt;/a&gt; developed by technologies like &lt;a href="http://en.wikipedia.org/wiki/C_%28programming_language%29" title="C (programming language)"&gt;C&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/C%2B%2B" title="C++"&gt;C++&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Java_%28programming_language%29" title="Java (programming language)"&gt;Java&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/C_Sharp_%28programming_language%29" title="C Sharp (programming language)"&gt;C#&lt;/a&gt;, etc. Software usually runs on an underlying software &lt;a href="http://en.wikipedia.org/wiki/Operating_system" title="Operating system"&gt;operating systems&lt;/a&gt; such as the &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Windows" title="Microsoft Windows"&gt;Microsoft Windows&lt;/a&gt; or Linux. Software also includes &lt;a href="http://en.wikipedia.org/wiki/Video_game" title="Video game"&gt;video games&lt;/a&gt; and the &lt;a href="http://en.wikipedia.org/wiki/Logic" title="Logic"&gt;logic&lt;/a&gt; systems of modern consumer devices such as &lt;a href="http://en.wikipedia.org/wiki/Automobile" title="Automobile"&gt;automobiles&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Television" title="Television"&gt;televisions&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Toasters" title="Toasters" class="mw-redirect"&gt;toasters&lt;/a&gt;, etc.&lt;/p&gt; &lt;p&gt;&lt;a name="Relationship_to_computer_hardware" id="Relationship_to_computer_hardware"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Relationship to computer hardware&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Computer" title="Computer"&gt;Computer&lt;/a&gt; software is so called to distinguish it from &lt;a href="http://en.wikipedia.org/wiki/Computer_hardware" title="Computer hardware" class="mw-redirect"&gt;computer hardware&lt;/a&gt;, which encompasses the physical interconnections and devices required to store and execute (or run) the software. At the lowest level, software consists of a machine language specific to an individual processor. A machine language consists of groups of binary values signifying processor instructions which change the state of the computer from its preceding state. Software is an ordered sequence of instructions for changing the state of the computer hardware in a particular sequence. It is usually written in &lt;a href="http://en.wikipedia.org/wiki/High-level_programming_language" title="High-level programming language"&gt;high-level programming languages&lt;/a&gt; that are easier and more efficient for humans to use (closer to &lt;a href="http://en.wikipedia.org/wiki/Natural_language" title="Natural language"&gt;natural language&lt;/a&gt;) than machine language. High-level languages are compiled or interpreted into machine language object code. Software may also be written in an &lt;a href="http://en.wikipedia.org/wiki/Assembly_language" title="Assembly language"&gt;assembly language&lt;/a&gt;, essentially, a mnemonic representation of a machine language using a natural language alphabet. Assembly language must be assembled into object code via an &lt;a href="http://en.wikipedia.org/wiki/Assembly_language#Assembler" title="Assembly language"&gt;assembler&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The term "software" was first used in this sense by &lt;a href="http://en.wikipedia.org/wiki/John_W._Tukey" title="John W. Tukey" class="mw-redirect"&gt;John W. Tukey&lt;/a&gt; in 1958.&lt;sup id="cite_ref-3" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-3" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt; In &lt;a href="http://en.wikipedia.org/wiki/Computer_science" title="Computer science"&gt;computer science&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Software_engineering" title="Software engineering"&gt;software engineering&lt;/a&gt;, &lt;b&gt;computer software&lt;/b&gt; is all computer programs. The theory that is the basis for most modern software was first proposed by &lt;a href="http://en.wikipedia.org/wiki/Alan_Turing" title="Alan Turing"&gt;Alan Turing&lt;/a&gt; in his 1935 essay &lt;i&gt;Computable numbers with an application to the Entscheidungsproblem&lt;/i&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-5488576544914615417?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/5488576544914615417/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/overview.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/5488576544914615417'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/5488576544914615417'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/overview.html' title='Overview'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-3690680984832853214</id><published>2009-04-28T10:54:00.000-07:00</published><updated>2009-04-28T10:55:30.016-07:00</updated><title type='text'>Types of software</title><content type='html'>&lt;div class="thumb tright"&gt; &lt;div class="thumbinner" style="width: 182px;"&gt;&lt;a href="http://en.wikipedia.org/wiki/File:Operating_system_placement.svg" class="image" title="A layer structure showing where Operating System is located on generally used software systems on desktops"&gt;&lt;img alt="" src="http://upload.wikimedia.org/wikipedia/commons/thumb/e/e1/Operating_system_placement.svg/180px-Operating_system_placement.svg.png" class="thumbimage" width="180" border="0" height="266" /&gt;&lt;/a&gt; &lt;div class="thumbcaption"&gt; &lt;div class="magnify"&gt;&lt;a href="http://en.wikipedia.org/wiki/File:Operating_system_placement.svg" class="internal" title="Enlarge"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt; A layer structure showing where &lt;a href="http://en.wikipedia.org/wiki/Operating_System" title="Operating System" class="mw-redirect"&gt;Operating System&lt;/a&gt; is located on generally used software systems on &lt;a href="http://en.wikipedia.org/wiki/Desktop_computer" title="Desktop computer"&gt;desktops&lt;/a&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;p&gt;Practical &lt;a href="http://en.wikipedia.org/wiki/Computer_system" title="Computer system" class="mw-redirect"&gt;computer systems&lt;/a&gt; divide &lt;a href="http://en.wikipedia.org/wiki/Software_system" title="Software system"&gt;software systems&lt;/a&gt; into three major classes: &lt;a href="http://en.wikipedia.org/wiki/System_software" title="System software"&gt;system software&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Programming_software" title="Programming software" class="mw-redirect"&gt;programming software&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Application_software" title="Application software"&gt;application software&lt;/a&gt;, although the distinction is arbitrary, and often blurred.&lt;/p&gt; &lt;p&gt;&lt;a name="System_software" id="System_software"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;System software&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/System_software" title="System software"&gt;System software&lt;/a&gt; helps run the computer hardware and computer system. It includes:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Device_driver" title="Device driver"&gt;device drivers&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Operating_system" title="Operating system"&gt;operating systems&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Server_%28computing%29" title="Server (computing)"&gt;servers&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Software_utility" title="Software utility" class="mw-redirect"&gt;utilities&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Windowing_system" title="Windowing system"&gt;windowing systems&lt;/a&gt;,&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;(these things need not be distinct)&lt;/p&gt; &lt;p&gt;The purpose of systems software is to unburden the applications programmer from the details of the particular computer complex being used, including such accessory devices as communications, printers, readers, displays, keyboards, etc. And also to partition the computer's resources such as memory and processor time in a safe and stable manner.&lt;/p&gt; &lt;p&gt;&lt;a name="Programming_software" id="Programming_software"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Programming software&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Programming_software" title="Programming software" class="mw-redirect"&gt;Programming software&lt;/a&gt; usually provides tools to assist a programmer in writing &lt;a href="http://en.wikipedia.org/wiki/Computer_program" title="Computer program"&gt;computer programs&lt;/a&gt;, and software using different programming languages in a more convenient way. The tools include:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Compiler" title="Compiler"&gt;compilers&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Debugger" title="Debugger"&gt;debuggers&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Interpreter_%28computing%29" title="Interpreter (computing)"&gt;interpreters&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Linker" title="Linker"&gt;linkers&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Text_editor" title="Text editor"&gt;text editors&lt;/a&gt;,&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;An &lt;a href="http://en.wikipedia.org/wiki/Integrated_development_environment" title="Integrated development environment"&gt;Integrated development environment&lt;/a&gt; (IDE) is a single application that attempts to manage all these functions.&lt;/p&gt; &lt;p&gt;&lt;a name="Application_software" id="Application_software"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Application software&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;&lt;a href="http://en.wikipedia.org/wiki/Application_software" title="Application software"&gt;Application software&lt;/a&gt; allows end users to accomplish one or more specific (not directly computer development related) &lt;a href="http://en.wikipedia.org/wiki/Task" title="Task"&gt;tasks&lt;/a&gt;. Typical applications include:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Automation" title="Automation"&gt;industrial automation&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Business_software" title="Business software"&gt;business software&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Computer_games" title="Computer games" class="mw-redirect"&gt;computer games&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Telecommunication" title="Telecommunication"&gt;telecommunications&lt;/a&gt;, (ie &lt;a href="http://en.wikipedia.org/wiki/Internet" title="Internet"&gt;the internet&lt;/a&gt; and everything that flows on it)&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Database" title="Database"&gt;databases&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Educational_software" title="Educational software"&gt;educational software&lt;/a&gt;,&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Medical_software" title="Medical software"&gt;medical software&lt;/a&gt;,&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Application software exists for and has impacted a wide variety of topics.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-3690680984832853214?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/3690680984832853214/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/types-of-software.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/3690680984832853214'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/3690680984832853214'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/types-of-software.html' title='Types of software'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-5599994441370523940</id><published>2009-04-28T10:51:00.000-07:00</published><updated>2009-04-28T10:54:26.128-07:00</updated><title type='text'>Software topics</title><content type='html'>&lt;p&gt;&lt;a name="Architecture" id="Architecture"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="mw-headline"&gt;Architecture&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Users often see things differently than programmers. People who use modern general purpose computers (as opposed to &lt;a href="http://en.wikipedia.org/wiki/Embedded_system" title="Embedded system"&gt;embedded systems&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Analog_computer" title="Analog computer"&gt;analog computers&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Supercomputer" title="Supercomputer"&gt;supercomputers&lt;/a&gt;, etc.) usually see three layers of software performing a variety of tasks: platform, application, and user software.&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Platform software: &lt;a href="http://en.wikipedia.org/wiki/Platform_%28computing%29" title="Platform (computing)" class="mw-redirect"&gt;Platform&lt;/a&gt; includes the &lt;a href="http://en.wikipedia.org/wiki/Firmware" title="Firmware"&gt;firmware&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Device_driver" title="Device driver"&gt;device drivers&lt;/a&gt;, an &lt;a href="http://en.wikipedia.org/wiki/Operating_system" title="Operating system"&gt;operating system&lt;/a&gt;, and typically a &lt;a href="http://en.wikipedia.org/wiki/Graphical_user_interface" title="Graphical user interface"&gt;graphical user interface&lt;/a&gt; which, in total, allow a user to interact with the computer and its &lt;a href="http://en.wikipedia.org/wiki/Peripheral" title="Peripheral"&gt;peripherals&lt;/a&gt; (associated equipment). Platform software often comes bundled with the computer. On a &lt;a href="http://en.wikipedia.org/wiki/Personal_computer" title="Personal computer"&gt;PC&lt;/a&gt; you will usually have the ability to change the platform software.&lt;/li&gt;&lt;li&gt;Application software: &lt;a href="http://en.wikipedia.org/wiki/Application_software" title="Application software"&gt;Application software&lt;/a&gt; or Applications are what most people think of when they think of software. Typical examples include office suites and video games. Application software is often purchased separately from computer hardware. Sometimes applications are bundled with the computer, but that does not change the fact that they run as independent applications. Applications are almost always independent programs from the operating system, though they are often tailored for specific platforms. Most users think of compilers, databases, and other "system software" as applications.&lt;/li&gt;&lt;li&gt;User-written software: &lt;a href="http://en.wikipedia.org/wiki/End-user_development" title="End-user development"&gt;End-user development&lt;/a&gt; tailors systems to meet users' specific needs. User software include spreadsheet templates, word processor macros, scientific simulations, and scripts for graphics and animations. Even email filters are a kind of user software. Users create this software themselves and often overlook how important it is. Depending on how competently the user-written software has been integrated into default application packages, many users may not be aware of the distinction between the original packages, and what has been added by co-workers.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a name="Documentation" id="Documentation"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Documentation&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Most software has &lt;a href="http://en.wikipedia.org/wiki/Software_documentation" title="Software documentation"&gt;software documentation&lt;/a&gt; so that the &lt;a href="http://en.wikipedia.org/wiki/End_user" title="End user" class="mw-redirect"&gt;end user&lt;/a&gt; can understand the program, what it does and how to use it. Without a clear documentation a software can be hard to use and especially if it is a very specialized and relatively complex software like the &lt;a href="http://en.wikipedia.org/wiki/Photoshop" title="Photoshop" class="mw-redirect"&gt;Photoshop&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/AutoCAD" title="AutoCAD"&gt;AutoCAD&lt;/a&gt;, etc.&lt;/p&gt; &lt;p&gt;Developer documentation may also exist, either with the code as comments and/or as separate files, detailing how the programs works and can be modified.&lt;/p&gt; &lt;p&gt;&lt;a name="Library" id="Library"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Library&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;A executable is almost always not sufficiently complete for direct execution. &lt;a href="http://en.wikipedia.org/wiki/Software_library" title="Software library" class="mw-redirect"&gt;Software libraries&lt;/a&gt; include collections of &lt;a href="http://en.wikipedia.org/wiki/Functions" title="Functions" class="mw-redirect"&gt;functions&lt;/a&gt; and functionality that may be embedded in other applications. Operating systems include many standard Software libraries, and applications are often distributed with their own libraries.&lt;/p&gt; &lt;p&gt;&lt;a name="Standard" id="Standard"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Standard&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Since software can be designed using many different &lt;a href="http://en.wikipedia.org/wiki/Programming_languages" title="Programming languages" class="mw-redirect"&gt;programming languages&lt;/a&gt; and in many different &lt;a href="http://en.wikipedia.org/wiki/Operating_systems" title="Operating systems" class="mw-redirect"&gt;operating systems&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Operating_environment" title="Operating environment"&gt;operating environments&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Software_standard" title="Software standard" class="mw-redirect"&gt;software standard&lt;/a&gt; is needed so that different software can understand and exchange information between each other. For instance, an &lt;a href="http://en.wikipedia.org/wiki/Email" title="Email" class="mw-redirect"&gt;email&lt;/a&gt; sent from a &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Outlook" title="Microsoft Outlook"&gt;Microsoft Outlook&lt;/a&gt; should be readable from &lt;a href="http://en.wikipedia.org/wiki/Yahoo%21_Mail" title="Yahoo! Mail"&gt;Yahoo! Mail&lt;/a&gt; and vice versa.&lt;/p&gt; &lt;p&gt;&lt;a name="Execution" id="Execution"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Execution&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Computer software has to be "loaded" into the &lt;a href="http://en.wikipedia.org/wiki/Computer_storage" title="Computer storage" class="mw-redirect"&gt;computer's storage&lt;/a&gt; (such as a &lt;i&gt;[hard drive]&lt;/i&gt;, &lt;i&gt;memory&lt;/i&gt;, or &lt;i&gt;&lt;a href="http://en.wikipedia.org/wiki/RAM" title="RAM" class="mw-redirect"&gt;RAM&lt;/a&gt;&lt;/i&gt;). Once the software has loaded, the computer is able to &lt;i&gt;execute&lt;/i&gt; the software. This involves passing &lt;a href="http://en.wikipedia.org/wiki/Instruction_%28computer_science%29" title="Instruction (computer science)"&gt;instructions&lt;/a&gt; from the application software, through the system software, to the &lt;a href="http://en.wikipedia.org/wiki/Hardware" title="Hardware"&gt;hardware&lt;/a&gt; which ultimately receives the instruction as &lt;a href="http://en.wikipedia.org/wiki/Machine_language" title="Machine language" class="mw-redirect"&gt;machine code&lt;/a&gt;. Each instruction causes the computer to carry out an operation – moving &lt;a href="http://en.wikipedia.org/wiki/Data_%28computing%29" title="Data (computing)"&gt;data&lt;/a&gt;, carrying out a &lt;a href="http://en.wikipedia.org/wiki/Computation" title="Computation"&gt;computation&lt;/a&gt;, or altering the &lt;a href="http://en.wikipedia.org/wiki/Control_flow" title="Control flow"&gt;control flow&lt;/a&gt; of instructions.&lt;/p&gt; &lt;p&gt;Data movement is typically from one place in memory to another. Sometimes it involves moving data between memory and registers which enable high-speed data access in the CPU. Moving data, especially large amounts of it, can be costly. So, this is sometimes avoided by using "pointers" to data instead. Computations include simple operations such as incrementing the value of a variable data element. More complex computations may involve many operations and data elements together.&lt;/p&gt; &lt;p&gt;&lt;a name="Quality_and_reliability" id="Quality_and_reliability"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Quality and reliability&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Software quality is very important, especially for commercial and system software like &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Office" title="Microsoft Office"&gt;Microsoft Office&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Windows" title="Microsoft Windows"&gt;Microsoft Windows&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Linux" title="Linux"&gt;Linux&lt;/a&gt;, etc. If software is faulty (buggy), it can delete a person's work, crash the computer and do other unexpected things. Faults and errors are called "&lt;a href="http://en.wikipedia.org/wiki/Software_bug" title="Software bug"&gt;bugs&lt;/a&gt;". Many bugs are discovered and eliminated (debugged) through &lt;a href="http://en.wikipedia.org/wiki/Software_testing" title="Software testing"&gt;software testing&lt;/a&gt;. However, software testing rarely – if ever – eliminates every bug; some programmers say that "every program has at least one more bug" (Lubarsky's Law). All major software companies, such as Microsoft, Novell and &lt;a href="http://en.wikipedia.org/wiki/Sun_Microsystems" title="Sun Microsystems"&gt;Sun Microsystems&lt;/a&gt;, have their own software testing departments with the specific goal of just testing. Software can be tested through &lt;a href="http://en.wikipedia.org/wiki/Unit_testing" title="Unit testing"&gt;unit testing&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Regression_testing" title="Regression testing"&gt;regression testing&lt;/a&gt; and other methods, which are done manually, or most commonly, automatically, since the amount of code to be tested can be quite large. For instance, &lt;a href="http://en.wikipedia.org/wiki/NASA" title="NASA"&gt;NASA&lt;/a&gt; has extremely rigorous software testing procedures for its &lt;a href="http://en.wikipedia.org/wiki/Space_Shuttle" title="Space Shuttle"&gt;Space Shuttle&lt;/a&gt; and other programs because faulty software can crash the whole program and make the vehicle not functional, at great expense.&lt;/p&gt; &lt;p&gt;&lt;a name="License" id="License"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;License&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;The software's &lt;a href="http://en.wikipedia.org/wiki/Software_license" title="Software license"&gt;license&lt;/a&gt; gives the user the right to use the software in the licensed environment. Some software comes with the license when purchased off the shelf, or an OEM license when bundled with hardware. Other software comes with a &lt;a href="http://en.wikipedia.org/wiki/Free_software_license" title="Free software license" class="mw-redirect"&gt;free software license&lt;/a&gt;, granting the recipient the rights to modify and redistribute the software. Software can also be in the form of &lt;a href="http://en.wikipedia.org/wiki/Freeware" title="Freeware"&gt;freeware&lt;/a&gt; or &lt;a href="http://en.wikipedia.org/wiki/Shareware" title="Shareware"&gt;shareware&lt;/a&gt;. See also &lt;a href="http://en.wikipedia.org/wiki/License_Management" title="License Management" class="mw-redirect"&gt;License Management&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a name="Patents" id="Patents"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Patents&lt;/span&gt;&lt;/h3&gt;  &lt;p&gt;Software can be patented; however &lt;a href="http://en.wikipedia.org/wiki/Software_patent" title="Software patent"&gt;software patents&lt;/a&gt; can be controversial in the software industry with many people holding different views about it. The controversy over software patents is that a specific &lt;a href="http://en.wikipedia.org/wiki/Algorithm" title="Algorithm"&gt;algorithm&lt;/a&gt; or technique that the software has cannot be duplicated by others and is considered an &lt;a href="http://en.wikipedia.org/wiki/Intellectual_property" title="Intellectual property"&gt;intellectual property&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Copyright_infringement" title="Copyright infringement"&gt;copyright infringement&lt;/a&gt; depending on the severity. Some people believe that software patent hinder &lt;a href="http://en.wikipedia.org/wiki/Software_development" title="Software development"&gt;software development&lt;/a&gt;, while others argue that software patents provide an important incentive to spur software innovation.&lt;/p&gt; &lt;p&gt;&lt;a name="Ethics_and_rights" id="Ethics_and_rights"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;&lt;span class="editsection"&gt;&lt;/span&gt;&lt;span class="mw-headline"&gt;Ethics and rights&lt;/span&gt;&lt;/h3&gt; &lt;p&gt;There is more than one approach to creating, licensing, and distributing software. For instance, the &lt;a href="http://en.wikipedia.org/wiki/Free_software" title="Free software"&gt;free software&lt;/a&gt; or the &lt;a href="http://en.wikipedia.org/wiki/Open_source" title="Open source"&gt;open source&lt;/a&gt; community produces software under licensing that makes it free for inspection of its code, modification of its code, and distribution. While the software released under an open source license (such as &lt;a href="http://en.wikipedia.org/wiki/General_Public_License" title="General Public License" class="mw-redirect"&gt;General Public License&lt;/a&gt;, or GPL for short) can be sold for money,&lt;sup id="cite_ref-5" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-5" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt; the distribution cannot be restricted in the same way as software with copyright and patent restrictions (used by corporations to require licensing fees).&lt;/p&gt; &lt;p&gt;While some advocates of free software use slogans such as "information wants to be free," hinting that it is easy to copy digital data and that the licenses (enforced through laws) are unnatural restrictions, other creators and users of open source software recognize it to be one model among many for software creation, licensing, and distribution. And the laws themselves are put into place for the ostensible purpose of increasing creative output, by allowing the creators to control and profit most effectively from their intellectual property.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-5599994441370523940?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/5599994441370523940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/software-topics.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/5599994441370523940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/5599994441370523940'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/software-topics.html' title='Software topics'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-4812734410183014646</id><published>2009-04-28T10:48:00.000-07:00</published><updated>2009-04-28T10:49:10.400-07:00</updated><title type='text'>Design and implementation</title><content type='html'>&lt;p&gt;Design and implementation of a software varies depending on the complexity of the software. For instance design and creation of &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Word" title="Microsoft Word"&gt;Microsoft Word&lt;/a&gt; software will take much longer time than designing and developing &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Notepad" title="Microsoft Notepad" class="mw-redirect"&gt;Microsoft Notepad&lt;/a&gt; because of the difference in &lt;a href="http://en.wikipedia.org/wiki/Functionality" title="Functionality" class="mw-redirect"&gt;functionalities&lt;/a&gt; in each one.&lt;/p&gt; &lt;p&gt;Software is usually designed and created (coded/written/programmed) in &lt;a href="http://en.wikipedia.org/wiki/Integrated_development_environment" title="Integrated development environment"&gt;integrated development environments&lt;/a&gt; (IDE) like &lt;a href="http://en.wikipedia.org/wiki/Emacs" title="Emacs"&gt;emacs&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Xemacs" title="Xemacs" class="mw-redirect"&gt;xemacs&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Visual_Studio" title="Microsoft Visual Studio"&gt;Microsoft Visual Studio&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Eclipse_%28software%29" title="Eclipse (software)"&gt;Eclipse&lt;/a&gt; that can simplify the process and &lt;a href="http://en.wikipedia.org/wiki/Compiler" title="Compiler"&gt;compile&lt;/a&gt; the program. As noted in different section, software is usually created on top of an existing software and the &lt;a href="http://en.wikipedia.org/wiki/Application_programming_interface" title="Application programming interface"&gt;application programming interface&lt;/a&gt; (API) that the underlying software provides like &lt;a href="http://en.wikipedia.org/wiki/GTK%2B" title="GTK+"&gt;GTK+&lt;/a&gt;, JavaBeans, &lt;a href="http://en.wikipedia.org/wiki/Swing_%28Java%29" title="Swing (Java)"&gt;Swing&lt;/a&gt; etc. Libraries (APIs) are categorized for different purposes. For instance &lt;a href="http://en.wikipedia.org/wiki/JavaBeans" title="JavaBeans" class="mw-redirect"&gt;JavaBeans&lt;/a&gt; library is used for designing &lt;a href="http://en.wikipedia.org/wiki/Enterprise_application" title="Enterprise application" class="mw-redirect"&gt;enterprise applications&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Windows_Forms" title="Windows Forms"&gt;Windows Forms&lt;/a&gt; library is used for designing graphical user interface (GUI) applications like &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Word" title="Microsoft Word"&gt;Microsoft Word&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Windows_Communication_Foundation" title="Windows Communication Foundation"&gt;Windows Communication Foundation&lt;/a&gt; is used for designing &lt;a href="http://en.wikipedia.org/wiki/Web_services" title="Web services" class="mw-redirect"&gt;web services&lt;/a&gt;. There are also underlying &lt;a href="http://en.wikipedia.org/wiki/Concept" title="Concept"&gt;concepts&lt;/a&gt; in &lt;a href="http://en.wikipedia.org/wiki/Computer_programming" title="Computer programming"&gt;computer programming&lt;/a&gt; like &lt;a href="http://en.wikipedia.org/wiki/Quicksort" title="Quicksort"&gt;quicksort&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Hashtable" title="Hashtable" class="mw-redirect"&gt;hashtable&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Array" title="Array"&gt;array&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Binary_tree" title="Binary tree"&gt;binary tree&lt;/a&gt; that can be useful to creating a software. When a program is designed, it relies on the API. For instance, if a user is designing a Microsoft Windows desktop application, he/she might use the &lt;a href="http://en.wikipedia.org/wiki/.NET_Framework" title=".NET Framework"&gt;.NET&lt;/a&gt; Windows Forms library to design the desktop application and call its APIs like &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.form.close.aspx" class="external text" title="http://msdn.microsoft.com/en-us/library/system.windows.forms.form.close.aspx" rel="nofollow"&gt;Form1.Close()&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/szcefbbd.aspx" class="external text" title="http://msdn.microsoft.com/en-us/library/szcefbbd.aspx" rel="nofollow"&gt;Form1.Show()&lt;/a&gt; to close or open the application and write the additional operations him/herself that it need to have. Without these APIs, the programmer needs to write these APIs him/herself. Companies like &lt;a href="http://en.wikipedia.org/wiki/Sun_Microsystems" title="Sun Microsystems"&gt;Sun Microsystems&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Novell" title="Novell"&gt;Novell&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Microsoft" title="Microsoft"&gt;Microsoft&lt;/a&gt; provide their own APIs so that many applications are written using their &lt;a href="http://en.wikipedia.org/wiki/Software_library" title="Software library" class="mw-redirect"&gt;software libraries&lt;/a&gt; that usually have numerous APIs in them.&lt;/p&gt; &lt;p&gt;Software has special economic characteristics that make its design, creation, and distribution different from most other economic goods.&lt;sup id="cite_ref-6" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-6" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;sup id="cite_ref-7" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/Software#cite_note-7" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt; &lt;p&gt;A title of a person that creates a software is called a &lt;a href="http://en.wikipedia.org/wiki/Programmer" title="Programmer"&gt;programmer&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Software_engineer" title="Software engineer"&gt;software engineer&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Software_developer" title="Software developer"&gt;software developer&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Code_monkey" title="Code monkey"&gt;code monkey&lt;/a&gt; that all essentially have a same meaning.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-4812734410183014646?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/4812734410183014646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/design-and-implementation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/4812734410183014646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/4812734410183014646'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/design-and-implementation.html' title='Design and implementation'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8046983384112306093.post-873617515185967195</id><published>2009-04-28T10:44:00.000-07:00</published><updated>2009-04-28T10:48:26.844-07:00</updated><title type='text'>Industry and organizations</title><content type='html'>&lt;p&gt;Software has its own niche industry that is called the software industry made up of different entities and peoples that produce software, and as a result there are many software companies and programmers in the world. Because software is increasingly used in many different areas like in &lt;a href="http://en.wikipedia.org/wiki/Finance" title="Finance"&gt;finance&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Searching" title="Searching"&gt;searching&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Mathematics" title="Mathematics"&gt;mathematics&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Space_exploration" title="Space exploration"&gt;space exploration&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Gaming" title="Gaming"&gt;gaming&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Mining" title="Mining"&gt;mining&lt;/a&gt; and such, software companies and people usually specialize in certain areas. For instance, &lt;a href="http://en.wikipedia.org/wiki/Electronic_Arts" title="Electronic Arts"&gt;Electronic Arts&lt;/a&gt; primarily creates &lt;a href="http://en.wikipedia.org/wiki/Video_games" title="Video games" class="mw-redirect"&gt;video games&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Also selling a software can be quite a profitable industry. For instance, &lt;a href="http://en.wikipedia.org/wiki/Bill_Gates" title="Bill Gates"&gt;Bill Gates&lt;/a&gt;, the founder of &lt;a href="http://en.wikipedia.org/wiki/Microsoft" title="Microsoft"&gt;Microsoft&lt;/a&gt; is the second richest man in the world in 2008 largely by selling the &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Windows" title="Microsoft Windows"&gt;Microsoft Windows&lt;/a&gt; and &lt;a href="http://en.wikipedia.org/wiki/Microsoft_Office" title="Microsoft Office"&gt;Microsoft Office&lt;/a&gt; software programs, and same goes for &lt;a href="http://en.wikipedia.org/wiki/Larry_Ellison" title="Larry Ellison"&gt;Larry Ellison&lt;/a&gt; largely through his &lt;a href="http://en.wikipedia.org/wiki/Oracle_database" title="Oracle database" class="mw-redirect"&gt;Oracle database&lt;/a&gt; software.&lt;/p&gt; &lt;p&gt;There are also many non-profit software organizations like the &lt;a href="http://en.wikipedia.org/wiki/Free_Software_Foundation" title="Free Software Foundation"&gt;Free Software Foundation&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/GNU_Project" title="GNU Project"&gt;GNU Project&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Mozilla_Foundation" title="Mozilla Foundation"&gt;Mozilla Foundation&lt;/a&gt;. Also there are many software standard organizations like the &lt;a href="http://en.wikipedia.org/wiki/W3C" title="W3C" class="mw-redirect"&gt;W3C&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/IETF" title="IETF" class="mw-redirect"&gt;IETF&lt;/a&gt; and others that try to come up with a software standard so that many software can work and interoperate with each other like through standards such as &lt;a href="http://en.wikipedia.org/wiki/XML" title="XML"&gt;XML&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/HTML" title="HTML"&gt;HTML&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/HTTP" title="HTTP" class="mw-redirect"&gt;HTTP&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/FTP" title="FTP" class="mw-redirect"&gt;FTP&lt;/a&gt;, etc.&lt;/p&gt; &lt;p&gt;Some of the well known software companies include &lt;a href="http://en.wikipedia.org/wiki/Microsoft" title="Microsoft"&gt;Microsoft&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Apple_Computer" title="Apple Computer" class="mw-redirect"&gt;Apple&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/IBM" title="IBM"&gt;IBM&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Oracle_Corporation" title="Oracle Corporation"&gt;Oracle&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/Novell" title="Novell"&gt;Novell&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/SAP_AG" title="SAP AG"&gt;SAP&lt;/a&gt;, &lt;a href="http://en.wikipedia.org/wiki/HP" title="HP" class="mw-redirect"&gt;HP&lt;/a&gt;, etc.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8046983384112306093-873617515185967195?l=csworsi.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://csworsi.blogspot.com/feeds/873617515185967195/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://csworsi.blogspot.com/2009/04/industry-and-organizations.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/873617515185967195'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8046983384112306093/posts/default/873617515185967195'/><link rel='alternate' type='text/html' href='http://csworsi.blogspot.com/2009/04/industry-and-organizations.html' title='Industry and organizations'/><author><name>Andry Septia Nurrahman</name><uri>http://www.blogger.com/profile/11738634130176322155</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://4.bp.blogspot.com/_gmV1PiPRWCE/Sckx-3j5xjI/AAAAAAAAABA/oVWoojba14w/S220/Andry+Septia+Nurrahman.jpg'/></author><thr:total>0</thr:total></entry></feed>
