build your own freedom lab


=> index.html code your own language => dictionary-of-programming-concepts.html dictionary-of-programming-concepts -> build-your-own-freedom-lab => quasi.html quasi => which-language-should-i-use.html which-language-should-i-use ### freedom labs a freedom lab is like a small subdivision of a larger organisation, or a smaller project with related goals. it is something you can more easily do as a single person. you may even meet others with similar interests in the process. you can build your lab for free, and abandon it if you get bored. one advantage of a freedom lab over an organisation, is you can do pretty much whatever you want. you dont need to do everything by committee. you become more like an organisation when you start to represent a larger number of voices directly-- you can achieve similar by collaborating with other labs or individuals with similar or related interests and goals. minimum requirements for a traditional lab are: 1. a physical space 2. equipment 3. usually some form of training (self-taught, book-taught, school-taught) 4. tasks minimum requirements for a freedom lab are: 1. something you want to promote or help fix 2. writing some things down 3. trying out ideas (probably including some of your own) it would be useful to create a simple website, though the website will not likely be "the lab." the website is where you talk about the lab. you could even just blog about it (or worse, post to facebook) though the more materials you create the less likely that is to work for you. the website really doesnt have to be fancy, it just has to feature information about the lab and what youre working on. it would be especially useful to have a forum or similar friendly way to be contacted. forums allow more than one person into the conversation at once, email keeps conversations 1:1. how involved you would like other people to be largely determines whether email is the way to go with this. an advantage of publishing your work under a free license is that if you care about a cause and for some reason decide to walk away, other people who find your materials are much more free to pick up where you left off. similarly, if you care about a cause and hope other people will work on it too, having free materials gives them a faster way to get started. for software freedom and free cultural works, possible tasks for a freedom lab would be: 1. write about something that is lacking 2. consider possible solutions to mitigate the lack 3. try out those solutions and (hopefully) report on your findings not everyone has the training to do this within the strict formal confines of modern science. the goal of a "lab" in this sense is informal, casual, just try things and report on it. someone else can do a formal study about it (unless you are equipped for that as well.) after all, businesses and organisations dont make every move just based on pure science either. they do experiment, they often abandon things that arent working (sometimes less often than is ideal) and a freedom lab doesnt have to hold itself to a higher standard than that. most wouldnt. when you feel established enough to talk about your goals, you can participate in broader or related discussions as a form of outreach-- to random people, other organisations, or other individuals with similar interests. for an idea of some of the things ive done with my own freedom lab that you could try if interested: 1. ive tried out various ways to promote free software: advertising, talking to people, offering to help install software, offering to repair machines using free software-- i finally found the best way that worked for non-techie people was to take unwanted machines from people that dont want them, do the cleaning and upgrade, then give away to people who are having computer trouble. most people dont want their discarded machines when youve fixed them. they dont want you to fix the machine they are still using by putting new software on it. most people will take a free machine with free software over free software for a machine they have-- even one that isnt working-- theyd rather get rid of it if they already have a replacement. of course this finding doesnt apply to 100% of people, its just a useful comparison and strategy that i found by trying several ways to promote free software. also, this is not intended as a replacement for talking about software freedom. though people are more likely to care about a freedom that applies to something they actually have than something which (to them) is only hypothetically useful. i am far from the first person to promote free software by giving away machines that have it already installed. what my most-informal experiments did was explore options and stick with the ones that worked most reliably. this was more about minor refinement or adapting a strategy than any serious innovation. a lot of things are like that. 2. i have experimented with teaching people how to code, developed a language that makes it easier to teach how to code, and also experimented with teaching people how to develop simple programming languages-- either to build on or even initially develop their coding skills. these are really fun ideas to work with. modern programming owes its form to grace hopper, who promoted the idea of english-word-like symbols for use in coding over relying on mathematical symbols, even though she taught university math. one of my favourite experiments, to figure out how much extra syntax could be shed from a programming language, resulted in my favourite language-- fig. 3. i have experimented with taking live software distros apart and this led to experimenting with putting new ones together. now distro-libre explores transforming and transcending the distro concept itself. of course if you tell people about your ideas, youre going to get feedback. some will always claim not to be interested-- and some really wont be. others will like the idea but tell you some reason its not practical (or barely possible.) grace hopper was told it wasnt possible to write a compiler with words the way she did-- now most languages have this as a feature, and programming is much easier for it (that was the idea.) many inventions we take for granted were considered impossible or ridiculous, even by some of the most innovative scientific minds of the day. whether the idea you want to explore is grand or brand new or minor and even niche, someone will find a reason to ridicule it. this is a given, and part of the process. not all critiques will be unfair or inaccurate-- some may even give you new problems to solve. most will serve to discourage, and even if you are the sort of person that is easily discouraged, these are opportunities to keep going no matter what. youll learn a lot about people from those who discourage your exploration and those who dont. though it has to be said, sometimes both insults and compliments are manufactured and insincere. but theres no need to water down your message or try to please everyone. you also might not get anywhere trying to be edgy and make everyone upset. sincerity is a great place to start, and as you learn more about effectively reaching different groups of people (a great way to learn more about that is to just keep trying-- though there are probably books and courses that work faster than trial and error) you find different ways to retain sincerity and still improve your ability to convey ideas. you dont have to be an expert and many people who are, can still be wrong. one of the great things about science is that it belongs to no one. when communication fails, you can try your experiments somewhere else or have a look at "the drawing board." above all, avoid the idea that youre going to get every idea "right" and polished and "shipped" on the first try. that isnt how inventions work. to invent the lightbulb, edison set up a lab where people could try different materials as filaments all day. it took quite some time (and quite a few materials-- he even tried carbonising various kinds of hair) to find the one that worked. think about this when you are trying ideas. leaps in progress are few, compared to the endless march of tiny steps. not evey step moves forward, but progress is still a march. again, all you need to get started are: 1. something you want to promote or help fix 2. writing some things down 3. trying out ideas (probably including some of your own) you can figure out the first one, you can write it in the second one, and then you can get started with the third. creating a website and giving your freedom lab a name will also help. run it like an organisation when you want to-- but your freedom lab is yours. perhaps it will lead to an organisation of its own, or perhaps to an idea that more than one organisation can use. first, you have to begin. => ../index.html happy coding!