FiraCode: monospaced font with programming ligatures… this means multi-character symbols, eg
->, etc become single character math symbols, arrows, etc
- CyberDojo - could set up a server and host sessions
Learning to Program
- https://www.udacity.com/: from intro comp sci all the way up to applied cryptography. Assignments are done in Python, in the browser.
- https://www.coursera.org/: University certificates from various universities and colleges. Provided by some big name organizations.
- https://www.edx.org/: competition to Coursera
- https://www.khanacademy.org/cs: Khan academy touches on most subjects…
- http://www.youtube.com/user/derekbanas: tutorial videos about design patterns
Block Based Systems
- Scratch - very popular, lots of online resources. Very interesting; it allows/uses concurrent/event based programming trivial. Note, Scratch 2 is flash based; Scratch 1.4 is perhaps more commonly used. Read the scratch fan
- turtleblockjs at SugarLabs. Source code is on GitHub.
Programming systems that are self contained. Less parts to install to get going.
- squeak - Smalltalk. Early object oriented language, very dynamic, fast, portable. Local expert: Tim Rowledge
Learn to program by making things happen in the real-world.
Most of these are their own mini-worlds, so linking out to other reference wiki pages here.
Learning works best if you’re having fun!
Such a phenomenon. Deserves it’s own section.
Note: Julian likes to use MultiMC to manage versions of Minecraft + installing Mods.
- Python and Minecraft, for “computer” version - it’s excellent
- Python and Minecraft, for free version of Minecraft that comes on the Raspberry Pi
- Lua- Computercraft mod
- making mini-game plugins (mods)
- Turtle Island - intro to programming, with many activities built into this world
- A Grownup’s Guide to Minecraft and Writing Minecraft Mods
Roblox. Apparently programmable.
*Pico-8 and Voxatron
- fantasy consoles (think NES, Playstation 1/2) with arbitrary limitations (e.g. small memory)
- full systems, include program, music, and visual editors
- Lua based, very quick and easy to try ideas
- games (applications) saved embedded in a PNG image… called ‘cartridges’
- included with GetChip (~$9USD) small computers
- Pico8 Zine
Small, embeddable (can be put inside other programs, eg written in C/C++), easy to learn scripting language.
Systems specifically for creating VR/AR experiences.
*Walking App- visually ‘scripted’ system for creating AR/VR experiences. Discovered from AutoDesk article re Fusion360 designs to VR/AR app