|
|
Date Amended |
1 |
Component Design - Large and Complex vs. Small and Simple |
|
2 |
What is/is not considered to be good OO programming |
25th November 2004 |
3 |
Technical Keys - Their Uses and Abuses |
13th March 2021 |
4 |
The Relational Data Model, Normalisation and effective Database Design |
2nd March 2021 |
5 |
Design Patterns - a personal perspective |
21st October 2012 |
6 |
In the world of OOP am I Hero or Heretic? |
|
7 |
Object-Oriented Programming for Heretics |
27th July 2024 |
8 |
Development Standards - Limitation or Inspiration? |
4th September 2006 |
9 |
Breaking Backwards Compatibility is EVIL |
27th January 2006 |
10 |
Case Sensitive Software is EVIL |
5th August 2006 |
11 |
Are you a Code Monkey? |
27th Aril 2022 |
12 |
Design Patterns are dead! Long live Transaction Patterns! |
10th April 2007 |
13 |
What are Transaction Patterns? |
17th January 2025 |
14 |
Software Patents are EVIL |
|
15 |
Stored Procedures are EVIL |
|
16 |
What is Object Oriented Programming (OOP)? |
6th May 2025 |
17 |
Object Relational Mappers are EVIL |
|
18 |
Web Site vs Web Application |
|
19 |
Dependency Injection is EVIL |
13th March 2023 |
20 |
Not-so-SOLID OO Principles |
24 June 2024 |
21 |
The Case Against Intelligent Databases |
10th January 2012 |
22 |
What is a Framework? |
5th May 2024 |
|
23 |
An end-to-end eCommerce solution requires more than a fancy website |
|
24 |
Database Design - are you Novice, Ninja or Nincompoop? |
13th March 2021 |
25 |
What is the 3-Tier Architecture? |
28th April 2020 |
26 |
Why you should build your web application back-to-front |
|
27 |
Not the three greatest paragraphs ever written on encapsulation |
21st February 2015 |
28 |
Table Oriented Programming (TOP) |
5th September 2013 |
29 |
4 Reasons Why All PHP Frameworks Suck - Except RADICORE |
|
30 |
A minimalist approach to Object Oriented Programming with PHP |
21st December 2024 |
31 |
Please do not break our language |
2nd March 2021 |
32 |
Your code is crap! |
9th December 2023 |
33 |
Using object composition for "has-a" relationships is not such a good idea |
2nd December 2023 |
34 |
OO Design is incompatible with Database Design |
4th February 2023 |
35 |
How NOT to Validate Data |
|
36 |
Object Oriented Database Programming |
5th March 2017 |
37 |
Let's Make It More Complicated Than It Really Is Just To Prove How Clever We Are |
|
38 |
On not using the "right" standards |
10th January 2021 |
39 |
DB or not DB, that is the question |
1st September 2017 |
40 |
What is the difference between Procedural and OO programming? |
1st November 2022 |
41 |
The difference between an interface and an abstract class |
16th April 2022 |
42 |
Is PHP too verbose? |
1st September 2020 |
43 |
Echo chambers for outdated ideas |
|
44 |
Levels of use |
|
45 |
Singletons are NOT evil |
|
46 |
Having a separate class for each database table IS good OO |
29th December 2024 |
47 |
On being banned from the php.internals newsgroup |
|
48 |
Why I don't do Domain Driven Design |
23rd July 2014 |
49 |
The concept is OK but your implementation is not |
|
50 |
Your rules are RUBBISH! |
10th January 2021 |
51 |
BC break in 7.2 caused by undocumented and unauthorised change |
|
52 |
Blockchain for Blockheads |
|
53 |
Re: Objects should be constructed in one go |
23rd July 2018 |
54 |
Re: What's so great about OOP? |
|
55 |
Anatomy of an Enterprise Application |
|
56 |
The Template Method Pattern as a Framework |
|
57 |
To There and Back - but still in the wrong place |
|
58 |
Re: Exceptions and talking back to the user |
|
59 |
Are you achieving the aims of OOP? |
12th May 2024 |
60 |
Changing fundamental language behaviors |
|
61 |
Response to personal attack on reddit.com |
4th June 2020 |
62 |
RE: Improving PHP's Object Ergonomics |
10th January 2021 |
63 |
Pop Quiz on OOP |
4th February 2023 |
64 |
RE: The purpose of inheritance is code reuse |
|
65 |
Fat Model, Skinny Controller |
|
66 |
How to decouple business logic from UI logic |
|
67 |
From Oop to Poop, from Excellent to Excrement |
10th July 2024 |
68 |
The meaning of "abstraction" |
6th June 2025 |
69 |
The database is NOT just an implementation detail |
|
70 |
The PHP core developers are lazy, incompetent idiots |
25 January 2025 |
71 |
Active Record: Getting it Right |
10th July 2024 |
72 |
Is there a case for adding namespaces to PHP core? |
21st December 2024 |
73 |
The case against static typing in PHP |
24 November 2024 |
74 |
RE: Why PHP is not suitable for enterprise grade web applications |
|
75 |
The case against function overloading in PHP |
|
76 |
How to Produce a Rich Domain Model with Active Record |
10th July 2024 |
77 |
Getters and Setters are EVIL |
|
78 |
Object Interfaces are EVIL |
21st April 2025 |
79 |
Object Associations are EVIL |
27th July 2024 |
80 |
Inheritance is NOT evil |
|
81 |
I fail to GRASP these principles |
|
82 |
Namespaces are for Numpties |
|
83 |
Attributes are atrocious |
17th January 2025 |
84 |
Autoloaders are abominations |
|
85 |
Composition is a Procedural Technique for Code Reuse |
|
86 |
Decoupling is delusional |
25 January 2025 |
87 |
Strict Typing is for stick-in-the-muds |
24th November 2024 |
88 |
Value objects are worthless |
30th March 2025 |
89 |
KICK Principle |
|
90 |
Programmer Productivity takes Precedence over Paradigm Purity |
28th November 2024 |
91 |
The Fallacy Of ReUse |
|
92 |
RE: Back to Basics - Three or Four OOP Pillars? |
|
93 |
A challenge to see who's technique is best |
23rd December 2024 |
94 |
DTOs are Diabolical |
|
95 |
The true purpose of Dependency Injection |
|
96 |
The Road to Rapid Application Development (RAD) |
|
97 |
OOP practices which waste time |
|
98 |
The difference between Tight and Loose Coupling |
|
99 |
PHP's Type System |
26th May 2025 |
100 |
Polymorphism in PHP |
15th June 2025 |
101 |
Subclasses vs Subtypes |
|
102 |
Evans Classification of Objects in Object-Oriented Programming |
|