- OOP the Easy WayObject-Oriented Programming the Easy Way: a manifesto for reclaiming OOP from three decades of confusion and needless complexity.
- APPropriate Behaviour
- APPosite Concerns
- FSF 
Author Archives: Graham
Anti-lock brakes
Chances are, if you bought a new car or even a new motorcycle within the last few years, you didn’t even get an option on ABS. It came as standard, and in your car was legally mandated. Anti-lock brakes work … Continue reading
									
						Posted in tool-support, user-error					
					
				
				
				Leave a comment
							
		Another non-year of Desktop Linux
Let’s look at other software on the desktop, to understand why there isn’t (as a broad, popular platform) Linux on the desktop, then how there could be. Over on De Programmatica Ipsum I discussed the difference between the platform business … Continue reading
									
						Posted in whatevs					
					
				
				
				Leave a comment
							
		SICPers podcast episode 10
This episode is all about build systems! Mostly about the problems associated with the venerable ./configure; make; make install process. This expands on a section I wrote in APPropriate Behaviour. The history of UNIX make Why Johnny Can’t Build [portable … Continue reading
Where We Ditched Chipzilla
WWDC2020 was the first WWDC I’ve been to in, what, five years? Whenever I last went, it was in San Francisco. There’s no way I could’ve got my employer to expense it this year had I needed to go to … Continue reading
									
						Posted in AAPL					
					
				
				
				2 Comments
							
		SICPers podcast episode 9
In this episode I talk about Design by Contract. Episode RSS feed – also available in Apple and Google Podcasts. A Discipline of Programming Go to statement considered harmful Z Notation, and Object-Z CocoaByContract, and JavaByContract CLU Programming Language
It protects. It also promotes and prevents.
I sometimes get asked to review, or “comment on”, the architecture for an app. Often the app already exists, and the architecture documentation consists of nothing more than the source code and the folder structure. Sometimes the app doesn’t exist, … Continue reading
									
						Posted in architecture of sorts					
					
				
				
				Leave a comment
							
		Forearmed
In researching my piece for the upcoming de Programmatica Ipsum issue on cloud computing, I had thoughts about Apple, arm, and any upcoming transition that didn’t fit in the context of that article. So here’s a different post, about that. … Continue reading
									
						Posted in AAPL, arm, Business					
					
				
				
				Leave a comment
							
		Continuous Integration for Amiga
Amiga-Smalltalk now has continuous integration, I don’t know if it’s the first Amiga program ever to have CI but definitely the first I know of. Let me tell you about it. I’ve long been using AROS, the AROS Research Operating … Continue reading
									
						Posted in Amiga					
					
				
				
				Leave a comment
							
		Mature Optimization
This comment on why NetNewsWire is fast brings up one of the famous tropes of computer science: The line between [performance considerations pervading software design] and premature optimization isn’t clearly defined. If only someone had written a whole paper about … Continue reading
Video podcast: Hisoft C for the ZX Spectrum
Episode 6 of the SICPers podcast is over on Youtube. I introduce a C compiler for the Sinclair ZX Spectrum. For American readers, that’s the Timex Sinclair TS2068.
									
						Posted in podcast					
					
				
				
				Leave a comment
							
		