Learning resources from the Prescription Free Academy of Web Development and Software Engineering.
"Master software engineering for the web with teaching and mentoring available seven days."
We’re excited about the possibilities for this resource. It’s the main focus of our content development at the moment.
The idea is to have a collection of building blocks for software that you can learn and use beyond the basic constructs. It’s how programming works anyway, but mostly we pick them up as we go along.
The pattern library enables you to learn and use them directly rather than coming across them by chance or figuring them out due to need.
These are not rules. They’re ideas. To build on, work with, learn from, combine and to make your own.
This is an original collection of patterns that can be used to engineer software.
Not all may be formally recognisable as patterns. They’re useful approaches to achieving goals with software. There is crossover and duplication between patterns where it is useful to lay them out in that way.
It’s an original collection in the sense that they have been collected, organised and named creatively and as seems appropriate and useful for cognition and learning. They are not written or organised with any extant system in mind.
References and collaborators are cited. Any resemblance to unreferenced work will happily be considered for adding as a reference.
This is all offered in the spirit of learning and improving as software engineers. Comments are welcome and encouraged. GitHub Discussions are on the way.
It’s all a work in progress and intentionally creative and original in order to encourage innovation and to find useful points of view in original ways.
Of course, much or all of the material will be covered elsewhere in one form or another. It’s based on experience and what comes up while working with students.
These are patterns that are useful in day to engineering to get the job done in a reliable and consistent way. They’re intended as starting points and food for thought. To help you improve as a software engineer. There’s no right and wrong here. Just information. Use it as you see fit. Mix and match them. Augment them. Use bits of them. Find inspiration. Learn what’s useful and use it in the same way.
Planned entries are listed but not linked.
These could also be called techniques but sit well as entry-level patterns. They’re the next steps for aspiring engineers after learning the basics. Along with building software of course, and these are building blocks for software.
Planned entries are listed but not linked.
These are listed last because they are generally well covered elsewhere. They’ll be worked on in the same original way but are not being prioritised at this point.
Planned entries are listed but not linked.
For our other collection see Class Notes.