83 private links
Units tests and roguelikes // Game unit testing // pragmatic unit testing
roguelike talks, design information and programming advice - really good resource
- Problems of MVC - it all gets entangled
- Databases are details, the 'web' is a detail - it should all be abstracted out
- These details are plugins which require the underlying business logic but are never required by the business logic, operate completely separately from them, only invoking them through specific boundary objects
- To abstract out:
- 'Entity' Objects (or Business objects) which do their work independently from any application
- 'Interactor' Objects which take 'Request' Objects, invoke the functions on Entity objects and return the result as 'Result' Objects (they are dependent on the application (i.e. the requests and results are different per application)
- 'Boundary' Objects (or Use case objects) which are implemented by the interactor objects and make sure that certain methods etc are always there for outside plugins to interact with (they make sure the attachment points stay stable)
- A 'Presenter' Object which gets the results out of the 'Interactor' object (through the points of interaction defined by the 'Boundary' Objects) and moulds the 'Result' Object into a 'View' Object
- The 'View' Object is finally pretty much just strings of things to display, formatting of how to display it (e.g. display it in red, or bool to grey out a button, or strings of menu items and so on)
- The 'Viewer' is completely dumb and simply displays everything contained in the 'View' Object
A collection and overview of all kinds of principles, dogmas, design questions, patterns and ways of thinking about programming.
Code Structure Refactoring and so on - how do you design modularly?
Entity Component System programming pattern approaches explained for roguelike games
Templates, trying to replace TodoMVC
Explanation of Currying, Functional Programming
The majority of content on the web is words—and more than half of web browsing happens on mobile screens. It follows then that the way we set our words has a bigger impact than ever on design, usability, and brand differentiation. But while typography is clearly the most important aspect of great design and user experience, it can’t come at the expense of performance or we risk our great designs never being seen. Variable fonts are here, and will change everything: with a single font file that can scale in size, width, weight and even x-height—exactly as the type designer envisioned.
How did our industry start, what paths did it take to get to where we are, and where is it going. What big problems did programmers encounter in the past? How were they solved? And how do those solutions impact our future? What mistakes have we made as a profession; and how are we going to correct them. In this talk, Uncle Bob describes the history of software, from it’s beginnings in 1948 up through the current day; and then beyond. By looking at our past trajectory, we try to plot out where our profession is headed, and what challenges we’ll face along the way.