fig is an educational programming language, like pigeon or logo or basic.
it is also intended to be useful for creating small (useful) utilities; although most coders of such tools would probably use bash or python for the same purpose.
fig was written to address some of the issues with using python in education; although python is really very suitable for a variety of learners, it has in the words of brian will– some “dark corners” that fig avoids through a different language design.
although you may be able to use fig for years and years, it is designed for optional use as a transitional language– changing the underlying python only with sufficient cause, and offering an inline-python feature.
fig has fewer than 100 commands, and follows basic-inspired, “all-purpose” language goals.
my hope is that fig is easier to teach than any other language. that said, there are a number of noble efforts in this regard, and i am interested in such efforts in general. my feeling is that all computer users should learn to code, and all coders should try to write a computer language, even if it is very derivative. (most are.)
this blog was started with the idea of talking about both code and teaching curricula. i have not published much about the latter, as the time necessary to do so is spent developing and experimenting with teaching fig; although some hints and suggestions can probably be posted shortly.
coding is often self-taught, or instruction given only in schools and school-like settings. i would like it to be easier to teach programming also in one-on-one tutoring, and fig is designed for that level of instruction.
modern computer literacy, as it was 30 years ago… is about more than simply using applications. instead of chasing the buttons for everyday tasks around the screen as they get rearranged with each new version of [your computers operating system,] computer literacy should cover something about how computers work, particularly the languages they speak. we can and should make that easy enough for everyone to learn.
when it comes to communication between people, we have come too far from pointing at things and grunting– to reduce all interaction between user and computer to pointing and tapping. to be certain, there are times when pointing is absolutely the best thing; but menus are not everything.
the web for example, was built on menus and pages of things to click on; there are bookmarks for the same reason. yet when people want to go to a site, they just as often type a name, or other text into a search engine: that says a lot!
you may or may not find that fig is the ideal tool for programming instruction with beginners. i encourage you to look for and use the tools that suit your purposes; and i implore you to make this modern form of literacy a requirement not only for your own benefit, but for the benefit of people you care about.
- license: creative commons cc0 1.0 (public domain)