Preparing for XPUB: Difference between revisions
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Preparing for XPUB = | = Preparing for XPUB = | ||
A frequent question for new and prospective students is if there are specific coding skills one should learn before starting the course. | |||
As XPUB embraces ''many approaches to coding'', the resources listed on this page are not meant as checklist or resources to exhaustively read. Instead, try visiting different links and look for particular frameworks or ways of coding that fit your interests and spark your curiosity. | |||
== Tiny Tools == | |||
* [https://tinytools.directory/ Tiny Tools Directory] is a list of tools curated by Everest Pipkin that relate to game design and other forms of independent and small-scale tool for web publishing, including idiosyncratic and niche tools alongside more widely used “standards”. | |||
In the tiny tool directory, for instance, you find game making tools like [https://ledoux.itch.io/bitsy Bitsy] a project initiated by Adam le Doux, that provides a set of tools you can use in any web browser to author simple role playing style games (RPGs) where you move a character on a map and have simple interactions with other characters or objects. The tools is quite popular and has a large and active [https://bitsy.org/ community], that is also present on the small scale commercial platform [https://itch.io/games/made-with-bitsy itch.io]. While the resulting games are playable on the web, you don’t need to have a deep knowledge of html or javascript to get started. | |||
== Web programming == | == Web programming == | ||
The Mozilla project (the non-profit organisation behind the Firefox browser), | The Mozilla project (the non-profit organisation behind the Firefox browser), offers very thorough and up to date developer resources for the web. The “curriculum” page has different modules that explain the basics of how web pages work, covering HTML, CSS, and Javascript. There are explanatory videos, links to documentation, and occasionally links to other sites, such as a free course on HTML on codeacademy, another popular resource. | ||
* https://developer.mozilla.org/en-US/curriculum/ | * https://developer.mozilla.org/en-US/curriculum/ | ||
* https://www.codecademy.com/learn/learn-html | * https://www.codecademy.com/learn/learn-html | ||
=== Javascript === | === Javascript === | ||
* [The Modern | * [https://javascript.info/ The Modern JavaScript Tutorial] seems quite up to date and complete. EPUB+PDF available as a purchase. | ||
=== CSS === | |||
* https://flexboxfroggy.com/ | |||
* https://cssgridgarden.com/ | |||
=== HTML === | |||
=== SVG === | |||
[https://solarpunk.cool/zines/draw-with-code/ Draw with Code] is another SMCC zine (see the section on commandline) that explains how to use CSS with scalable vector graphics (SVG) to make animations that are also viewable in a web browser. | |||
== Command-line == | == Command-line == | ||
Line 23: | Line 42: | ||
* [https://f-droid.org/packages/com.termux/ termux] is an android app that emulates having a terminal in your phone. Use it to explore your phone in new ways! | * [https://f-droid.org/packages/com.termux/ termux] is an android app that emulates having a terminal in your phone. Use it to explore your phone in new ways! | ||
== Python == | == Python == | ||
We use [[Python]] in the course as a general purpose programming language. Python has strong uses in a variety of practices, including but not limited to web servers. Python is also popular for certain academic uses such as language processing and computational linguistics (see [[NLTK]] for instance), and for data-scientists and information visualisation, where for instance [[Jupyter]] Notebooks are a common format for developing and publishing running code fragments. | |||
* https://futurecoder.io/course/#toc | * https://futurecoder.io/course/#toc | ||
Latest revision as of 14:38, 6 January 2025
Preparing for XPUB
A frequent question for new and prospective students is if there are specific coding skills one should learn before starting the course.
As XPUB embraces many approaches to coding, the resources listed on this page are not meant as checklist or resources to exhaustively read. Instead, try visiting different links and look for particular frameworks or ways of coding that fit your interests and spark your curiosity.
Tiny Tools
- Tiny Tools Directory is a list of tools curated by Everest Pipkin that relate to game design and other forms of independent and small-scale tool for web publishing, including idiosyncratic and niche tools alongside more widely used “standards”.
In the tiny tool directory, for instance, you find game making tools like Bitsy a project initiated by Adam le Doux, that provides a set of tools you can use in any web browser to author simple role playing style games (RPGs) where you move a character on a map and have simple interactions with other characters or objects. The tools is quite popular and has a large and active community, that is also present on the small scale commercial platform itch.io. While the resulting games are playable on the web, you don’t need to have a deep knowledge of html or javascript to get started.
Web programming
The Mozilla project (the non-profit organisation behind the Firefox browser), offers very thorough and up to date developer resources for the web. The “curriculum” page has different modules that explain the basics of how web pages work, covering HTML, CSS, and Javascript. There are explanatory videos, links to documentation, and occasionally links to other sites, such as a free course on HTML on codeacademy, another popular resource.
Javascript
- The Modern JavaScript Tutorial seems quite up to date and complete. EPUB+PDF available as a purchase.
CSS
HTML
SVG
Draw with Code is another SMCC zine (see the section on commandline) that explains how to use CSS with scalable vector graphics (SVG) to make animations that are also viewable in a web browser.
Command-line
A nice online zine about the command-line is The Map is the Territory one of a collection of HTML zines made by the solarpunk magic club (smcc).
- termux is an android app that emulates having a terminal in your phone. Use it to explore your phone in new ways!
Python
We use Python in the course as a general purpose programming language. Python has strong uses in a variety of practices, including but not limited to web servers. Python is also popular for certain academic uses such as language processing and computational linguistics (see NLTK for instance), and for data-scientists and information visualisation, where for instance Jupyter Notebooks are a common format for developing and publishing running code fragments.