codeinfig is a member of the free media alliance

learn how to code with

 free software

*the simplified four freedoms:* (based on the free software definition) 0. the freedom to *use* the software 1. the freedom to *study* the software 2. the freedom to *share* the software 3. the freedom to *change* the software *why should i [[learn-how-to-code]]?* whether you use computers for work or just own a car or mobile phone, having a society thats permeated with computers means we will need to make informed personal and political decisions regarding our data, privacy, and freedom to manage our own devices. education is split between humanities teachers who believe computers are only a "job skill", and power-grabbing companies that insist only the industry is fit to teach computing. /theyre both wrong./ but one thing the industry is right about is that we cant afford to have a society that doesnt understand the computers they own. while industry mostly wants a larger supply of potential workers, society needs a much less superficial understanding of computing. *we dont need everyone to become an expert or career programmer*-- but a good, simple introduction to coding is the shortest route to computer literacy. "literacy" really is the right word here; computing is access to a universal language, similar to numeracy. learning to code can also make math and related processes more accessible to the math-phobic. when you learn coding basics like variables, loops and functions, these are not foreign concepts but new applications, and instead of hypothetical results that require more imagination, code lets you work with more concrete examples that are easier to appreciate and learn from. using variables is like asking someone for a phone number; using a loop is just like telling someone to repeat a task five times; and a function call is so simple that youll honestly wonder what it could possible do, until it proves useful. we can make these concepts easy enough for anyone, but when we do we create a society that better understands the tools that surround us. *what is free software?* once we have a slightly better understanding of the technology we use, it is up to us to decide how to apply that knowledge. computers are increasingly designed to decide what we are able to do, though we can customise and add features until that feature is removed or discontinued or breaks. while much of the software people are familiar with is proprietary, free software is software released under terms that offer all four freedoms under the free software definition. it is often referred to as "free software" or "open source", "free[lit]/[lit]open source software" (foss) or free[lit]/[lit]libre open source software (floss) ...which are all basically the same thing. using free software means you have a greater amount of say as to what youre devices can do. instead of having a vendor decide what your choices are-- like a genie granting three wishes but only ones found on a menu, free software lets you wish for more wishes and even come up with new choices. *free like free hugs, or free like freedom?* one of the nice things about free software is that it can be shared by anyone, because the "free" refers to freedom. this means that most of the time the software is also free like "free hugs," though you are also free to sell copies. while the internet makes it trivial and inexpensive to distribute software to most people, theres nothing wrong with setting up a business or organisation that distributes free software for a fee or donation. the fee might cover donations to the software authors, costs of distribution (whether online server costs or in a fixed medium) or even paid support. one company based on free software support and distribution is worth nearly 3 billion usd, although you can share most of the software they offer "free of charge". *how can i get all this free software?* the easiest way to get free software is to download it free of charge, or purchase it on a device or physical medium, and then run it on your computer. this site will showcase some examples of free software, from operating systems to applications to easy-to-follow snippets of code. if you would like to recommend some free software, please scroll down to the forum frame on this page and post a link and *short* description of the resource you would like to recommend. the forum is public and your post could be deleted if it does not suit the purposes of that forum. dont let that bother you, just post your link and a quick description of what it is. *if the software youre linking to is not well known*, feel free to talk about it in a separate post. (this makes it a lot easier to manage the forum, thanks.) please dont post links to software that is not licensed to give all four freedoms-- distributions and applications that mix free and non-free with no committment to user freedom get enough promotion already. if you have a question, feel free to ask. *can i trust free software to be safe?* exactly like the non-free software you likely have on your computer already (unless youve removed it or purchased a computer with the gnu operating system) whether you can trust software to be safe depends on a number of factors: [lit]*[lit] whether the people who wrote it are trustworthy [lit]*[lit] whether the people who wrote it have fixed any potentially harmful flaws [lit]*[lit] whether someone has tampered with it since then like non-free software, some free software is developed on a collaborative basis, by a team or organisation or even a business. like with non-free software, the safety of the software you use is evaluated on reputation, committment and quality. that said, there is a lot of low-quality code that is both trustworthy and safe. you can even write your own! some people (businesses especially) are more comfortable installing software from a large organisation or company that has vetted and can stand behind the software they offer. this is often possible, though many people also run businesses around smaller software offerings. one of the nice things about free software is that it makes the source code available for study-- even if you dont understand the source code, countless other people do. so it is difficult to publish dubious software and malware and not get caught. just like with any other software, its a good idea that you as a user learn to distinguish good software from dubious software, and trustworthy sources from dubious ones. learning how to code in a particular language helps too. that way, at least for code written in that language-- you can learn how to tell if a script at least is probably malicious or not, by looking over the code yourself. especially for binary files, its wise to stick to sources that you have reasonably evaluated as trustworthy. unfortunately, many people dont do this. they use websites and download apps with questionable features all the time-- its worth talking more about mobile apps and websites, and their effects on privacy and security. *what is open source?* open source is a movement (or organisation, or software that is basically always free software) that split off from free software to promote it from a different angle. one of the co-founders of the open source initiative, bruce perens, wrote an open letter criticising the direction of open source and encouraging people to [lit]"talk about free software again".[lit] the world would probably be better off if it paid a little more attention to bruce perens. *[[why-should-i-promote]] free software?* *[[how-should-i-promote]] free software?*

> [[Easylangs]]

> [[In-page-wiki]]

> [[Sitemap-for-older-pages]]

closed github account: you can get the zip file of the repository here:

<- back the free media alliance webring fwd ->