Bare blurbs aside, I plan to use Ubuntu for this, and start off by showing people how to install Linux on their laptop. If they survive that (and the scary liability release for my assistance), delve into Boolean logic, basic structures, and hopefully devote most of my time to doing cool and practical things with the Bash shell.
I don’t intend to handhold through the Linux installation: If you want to program or script with Linux, I expect that you at least be comfortable enough to partition your laptop and install it. I really recommend that you come into this workshop with either a function Linux installation, OS X installation, or a Cygwin installation so you can begin working immediately – example code I use will be usable in both environments (except for the respective path differences).
The Big Topics of the shell workshop include:
Refreshment on elementary subjects: Boolean logic, Linux and its shell.
Input and output (STDIN, STDOUT, STDERR), and redirection.
Pipelines, and using them to build workflows.
Parsing, searching, and appending to files.
Coding standards and best practices.
Everyday uses and examples of shell scripts.
Including your own binary programs (C#/Mono) in your workflow. I will cover basics of this.
Come one, come all, and geek out to your heart’s content. :)
You can grab the source here, and if you are so interested in trying the game then shoot me an email or leave a comment here!
* New game icon!
* Added new font size. Game.cs:
* Collected nukes now accumulate for later use (right-mouse click).
* Tidied UpdatePlay(); some code was shuffled off to their correct methods.
* Tidied collision detection.
* Changed the soundtrack instance to a more appropriate name.
* Tidied and clarified movement code.
* Slightly increased movement speed. Scores.cs:
* Quashed literally game-crashing bug in the generation of a blank/dummy score list.
* Renamed Increment() to Update() to more accurately reflect the in-use convention.
* Scores still do not collate corretly. I have identified the source for the behaviour, but a correction will have to wait.
* Fixed insta-death collision bug.
* Added a new state for being shot.
* Added mine health.
* Mines are slightly knocked back when shot.
* When shot, mine health deceases inverse to velocity.
* Mine changes colour to generally indicate remaining health.
* Added debug information on the mine’s state.
* Renamed to Bullets.cs. Changed all mentions of “missile” to “bullet” as they had been equally mixed.
* Music files are now loaded and swapped internally. Drastically reduces front-end code.