Difference between revisions of "BarnCamp 2017 workshop proposals"
MikeHarris (talk | contribs) |
MikeHarris (talk | contribs) |
||
Line 25: | Line 25: | ||
* performing minuscule iterative improvements | * performing minuscule iterative improvements | ||
* how we can use test driven development to make this process safer. | * how we can use test driven development to make this process safer. | ||
+ | |||
+ | Programming language: undecided but will try to cover a number of different ones in the examples, and for the practical will look at something everyone can get up and running, hopefully in a web browser, but popular, such as Python, Ruby or JavaScript. |
Revision as of 13:57, 22 August 2016
Coding
Keeping your code clean
- Proposed by
- adelayde
- Time
- 3-4 hours
- Level
- experience of programming at a intermediate to advanced level, or beginners who are keen to get into coding.
- Resources
- projector, sound, laptop (have one), this may be suitable for active workshop in the second part.
- Number
- up to 30 with people working in pairs or mobs for Part II
Part I (talk/discussion): No matter if you're new to coding, or a seasoned coder, applying the principals of Clean Code can help you maintain and understand your own code, especially when you come back to it six months later. Applying Clean Code principals to code makes modularisation and reusability easier, aids other programmers who may want to work on your code, aids with self-documentation, and sets the foundation for adopting test driven development. In the workshop we'll address how:
- small is beautiful
- simple is best
- comments suck
- reusability is king
- code should be crafted not thrown at the screen
- readability trumps cleverness and complexity
Part II (practical workshop): But what about that horrible code you're having to work on that somebody else, or even you, wrote? We'll also have a look at how to tackle nasty, unreadable, spaghetti, untestable legacy code; how we can gradually improve it in small, iterative steps; and ultimately how we can get it into shape, rather than just throwing our arms in the air and re-coding the whole lot. We'll cover:
- identifying ways in to legacy code
- performing minuscule iterative improvements
- how we can use test driven development to make this process safer.
Programming language: undecided but will try to cover a number of different ones in the examples, and for the practical will look at something everyone can get up and running, hopefully in a web browser, but popular, such as Python, Ruby or JavaScript.