Kun puhumme ohjelmointikoodi viittaamme kieleen, jolla tietokoneita, sisältää joukon ohjeita ja tietoja, jotka käsitellään automaattisesti.
The tietokoneen koodi se voi olla binääristä (vain tietokoneiden tulkittavissa), lähdekoodia (ihmisten tulkittavissa) ja oikeudelliselta tai poliittiselta kannaltaan se voi olla ilmaista ohjelmistoa, avoimen lähdekoodin ohjelmistoa, ilmaisohjelmistoa, sharewarea tai omaa/perinteistä patentoitua ohjelmistoa.
The vapaa ohjelmisto tai vapaa ohjelmisto on selkeä määritelmä tässä suhteessa, Free Software Foundationin mukaan se on sellainen, jota voidaan käyttää mihin tahansa tarkoitukseen, tutkia (tietäen mitä se tekee), kopioida ja parantaa. On olemassa suuri valikoima ilmaisia ohjelmistolisenssejä, GNU GPL on kaikkien referenssi, mutta voimme mainita myös MIT-, BSD-, Mozilla-, Apache- tai Creative Commons -lisenssit.
The avoimen lähdekoodin ohjelmisto (avoin lähdekoodi) on pohjimmiltaan sama kuin vapaat ohjelmistot, paitsi että et ole haluton sekoittamaan patentoitua ohjelmistoa ilmaisiin ohjelmistoihin. On myös avoimen lähdekoodin ohjelmistoja, joita ei voi käyttää mihinkään tarkoitukseen, joten se ei olisi ilmaista.
The freewarella ei ole juurikaan tekemistä ilmaisten ohjelmistojen kanssa, koska ainoa ilmainen asia on sen jakelu: yleensä sitä ei voi muokata, tutkia tai kaupallistaa, joten on selvää, että se tulee ilman lähdekoodia (ilman "reseptiä Ohjelmoida").
Shareware on samanlainen kuin freeware, mutta sillä on ylimääräinen rajoitus: käyttöaika. Nämä ohjelmat poistetaan yleensä käytöstä muutamassa päivässä, ne ovat demo-/kevytversioita täydellisistä patentoiduista ohjelmista.
The patentoitu ohjelmisto perinteinen (tyyliin Windows) ei salli sen käyttöä mihinkään tarkoitukseen, ei salli sen opiskelua (paitsi maksamalla omaisuuksia sen tekijöille), ei salli sen ilmaista kopiointia tai sen parantamista kenenkään toimesta: se on vapaan ohjelmiston käänteinen kokonaismäärä, koska Windows ja GNU / Linux he ovat niin vastakkain.