Edmund Kirwan's blog http://EdmundKirwan.com/general Various ramblings en-us The ripple hypothesis. http://EdmundKirwan.com/general/hypothesis.html http://EdmundKirwan.com/general/hypothesis.html Thurs, 13 Jul 2017 09:37:00 GMT Measuring ripple effect. Again. How to avoid messy code. http://EdmundKirwan.com/general/disorder-correlation.html http://EdmundKirwan.com/general/disorder-correlation.html Mon, 21 Feb 2017 09:37:00 GMT If you could ask programs themselves how to avoid messiness, what would they say? The structure of Netty. http://EdmundKirwan.com/general/netty.html http://EdmundKirwan.com/general/netty.html Mon, 23 Jan 2017 09:37:00 GMT Probably the best package structure in the world. Improved radial encapsulation. http://EdmundKirwan.com/general/improved-radial-encapsulation.html http://EdmundKirwan.com/general/improved-radial-encapsulation.html Mon, 12 Dec 2016 09:37:00 GMT Making radial encapsulation more suitable for very large projects. Are we still writing spaghetti code? http://EdmundKirwan.com/general/spaghetti.html http://EdmundKirwan.com/general/spaghetti.html Tues, 22 Nov 2016 09:37:00 GMT Is spaghettiness objective? Evidence-based principles. http://EdmundKirwan.com/general/evidence.html http://EdmundKirwan.com/general/evidence.html Tues, 22 Nov 2016 09:37:00 GMT Do other principles show traces of objectivity? Does my method look big in this? http://EdmundKirwan.com/general/method-size.html http://EdmundKirwan.com/general/method-size.html Wed, 10 Aug 2016 09:37:00 GMT The first of the SIPT principles examined: keep methods small. Sip tea. http://EdmundKirwan.com/general/sip-tea.html http://EdmundKirwan.com/general/sip-tea.html Mon, 8 Aug 2016 09:37:00 GMT SIPT: objective principles redux. Thank you, Mr Pearson. http://EdmundKirwan.com/general/pearson.html http://EdmundKirwan.com/general/pearson.html Sun, 3 Jul 2016 09:37:00 GMT Still looking for structural objectivity. Is there any evidence for ripple effect? http://EdmundKirwan.com/general/ripple.html http://EdmundKirwan.com/general/ripple.html Sun, 22 May 2016 09:37:00 GMT Surely we should be able to see this most fundamental of concepts? The 80% rule. http://EdmundKirwan.com/general/80percent.html http://EdmundKirwan.com/general/80percent.html Fri, 15 Apr 2016 09:37:00 GMT An indispensable coupling rule-of-thumb. Fundamental refactoring vs elaborative refactoring. http://EdmundKirwan.com/general/2refactorings.html http://EdmundKirwan.com/general/2refactorings.html Mon, 20 Mar 2016 09:37:00 GMT Which type of refactoring are you doing? Metrics considered charmful. http://EdmundKirwan.com/general/charmful.html http://EdmundKirwan.com/general/charmful.html Sun, 6 Mar 2016 09:37:00 GMT Vague notions are not enough. The spectacular instability of good code structure. http://EdmundKirwan.com/general/spectacular.html http://EdmundKirwan.com/general/spectacular.html Sun, 7 Feb 2016 09:37:00 GMT Why unstable is good. Do interfaces terminate dependencies? http://EdmundKirwan.com/general/abstraction.html http://EdmundKirwan.com/general/abstraction.html Wed, 2 Dec 2015 09:37:00 GMT Not quite an, "It depends," but close. Is your code too concrete? http://EdmundKirwan.com/general/concrete.html http://EdmundKirwan.com/general/concrete.html Tues, 10 Nov 2015 09:37:00 GMT Don't neglect abstraction in the fight against structural decay. Structure and emergent design. http://EdmundKirwan.com/general/emergent.html http://EdmundKirwan.com/general/emergent.html Sun, 4 Oct 2015 09:37:00 GMT Can well-structured systems ever just emerge? Battle of the structures. http://EdmundKirwan.com/general/semantics.html http://EdmundKirwan.com/general/semantics.html Tues, 15 Sep 2015 09:37:00 GMT Which would win: semantic or syntactic structure? Interface over-segregation. http://EdmundKirwan.com/general/oversegregation.html http://EdmundKirwan.com/general/oversegregation.html Mon, 10 Aug 2015 09:37:00 GMT Can interfaces be too small? Bugs and cracks. http://EdmundKirwan.com/general/crack.html http://EdmundKirwan.com/general/crack.html Wed, 15 July 2015 09:37:00 GMT Why aren't structure faults as important as run-time faults? Structural simplicity. http://EdmundKirwan.com/general/simple.html http://EdmundKirwan.com/general/simple.html Sun, 21 June 2015 09:37:00 GMT WWRHD: What would Rich Hickey do? The structure of Apache Lucene. http://EdmundKirwan.com/general/lucene.html http://EdmundKirwan.com/general/lucene.html Sat, 23 May 2015 09:37:00 GMT The structure-of series continues with another Apache jewel. Software engineering as ... engineering. http://EdmundKirwan.com/general/cdf.html http://EdmundKirwan.com/general/cdf.html Wed, 16 Apr 2015 09:37:00 GMT A tool software engineers might take from other fields. Structure and the FBI. http://EdmundKirwan.com/general/fbi.html http://EdmundKirwan.com/general/fbi.html Sat, 07 Mar 2015 09:37:00 GMT An unusual application of your software's structure. Breaking Bad ... interfaces. http://EdmundKirwan.com/general/isp.html http://EdmundKirwan.com/general/isp.html Tue, 06 Jan 2015 09:37:00 GMT How do you split a large interface? The Blighttown corollary. http://EdmundKirwan.com/general/blighttown.html http://EdmundKirwan.com/general/blighttown.html Sun, 02 Nov 2014 09:37:00 GMT The importance of grand-scale structure. Visualizing engineering fields. http://EdmundKirwan.com/general/fields.html http://EdmundKirwan.com/general/fields.html Tue, 30 Sep 2014 09:37:00 GMT A look at the competition. Bad program structure: the complectation. http://EdmundKirwan.com/general/complectation.html http://EdmundKirwan.com/general/complectation.html Mon, 08 Sep 2014 09:37:00 GMT A minor oddity of structure. The most important factor in software decay. http://EdmundKirwan.com/general/state-space.html http://EdmundKirwan.com/general/state-space.html Wed, 07 Aug 2014 09:37:00 GMT Why are programs poorly structured? The four best refactorings. http://EdmundKirwan.com/general/best-refactorings.html http://EdmundKirwan.com/general/best-refactorings.html Tue, 30 June 2014 09:37:00 GMT Most refactoring is pretty; some is essential. A funny thing happened on the way to the refactory. http://EdmundKirwan.com/general/radial-refactor.html http://EdmundKirwan.com/general/radial-refactor.html Tue, 27 May 2014 09:37:00 GMT Freedom of travel in the land of radial encapsulation. Who's afraid of the big bad class? http://EdmundKirwan.com/general/move-method.html http://EdmundKirwan.com/general/move-method.html Mon, 12 May 2014 09:37:00 GMT How to refactor large classes. Structural contingency (part one). http://EdmundKirwan.com/general/contingency.html http://EdmundKirwan.com/general/contingency.html Sat, 19 Apr 2014 09:37:00 GMT How to improve the intent of our code. What's the opposite of duplication? http://EdmundKirwan.com/general/duplication.html http://EdmundKirwan.com/general/duplication.html Thu, 11 Mar 2014 09:37:00 GMT Strange that we still worry about duplication. Dependency inversion: the structure logarithm. http://EdmundKirwan.com/general/logarithm.html http://EdmundKirwan.com/general/logarithm.html Sun, 02 Mar 2014 09:37:00 GMT A new use for an old principle. The refactorer spectrum. http://EdmundKirwan.com/general/spectrum.html http://EdmundKirwan.com/general/spectrum.html Sun, 22 Feb 2014 09:37:00 GMT Refactoring is difficult and not everyone can do it. Coupling and cohesion: failed concepts. http://EdmundKirwan.com/general/c-and-c.html http://EdmundKirwan.com/general/c-and-c.html Wed, 8 Jan 2014 09:37:00 GMT What's wrong with these two great concepts? Asimov's three laws of refactoring. http://EdmundKirwan.com/general/asimov.html http://EdmundKirwan.com/general/asimov.html Mon, 2 Dec 2013 09:37:00 GMT Don't phone: it's just for fun. The structure of FitNesse. http://EdmundKirwan.com/general/fitnesse.html http://EdmundKirwan.com/general/fitnesse.html Wed, 20 Nov 2013 09:37:00 GMT A structural peek under the bonnet of a great piece of software. Structure-driven design. http://EdmundKirwan.com/general/cdd.html http://EdmundKirwan.com/general/cdd.html Wed, 20 Nov 2013 09:37:00 GMT Seriously, who didn't see this coming? Interfaces in Java. http://EdmundKirwan.com/general/interface.html http://EdmundKirwan.com/general/interface.html Tue, 11 Nov 2013 09:37:00 GMT Some unfinished interface business. The tragedy of package coupling. http://EdmundKirwan.com/general/expansion.html http://EdmundKirwan.com/general/expansion.html Sun, 27 Oct 2013 09:37:00 GMT Why package coupling still overpowers us. Structure and information. http://EdmundKirwan.com/general/information.html http://EdmundKirwan.com/general/information.html Sun, 29 Sep 2013 09:37:00 GMT Gettin' entropic with it. Structure and theorems. http://EdmundKirwan.com/general/theorems.html http://EdmundKirwan.com/general/theorems.html Sun, 8 Sep 2013 09:37:00 GMT Are programs theorems? Structure and zombies. http://EdmundKirwan.com/general/zombie.html http://EdmundKirwan.com/general/zombie.html Tue, 22 Jul 2013 09:37:00 GMT A study of the impacted set. Amplification revisited. http://EdmundKirwan.com/general/amplification.html http://EdmundKirwan.com/general/amplification.html Sun, 01 Jun 2013 09:37:00 GMT Investigating the bane of accidental interconnectedness. ptainai, pronounced, "Peh-tain-eye." http://EdmundKirwan.com/general/ptainai.html http://EdmundKirwan.com/general/ptainai.html Sun, 26 May 2013 09:37:00 GMT An investigation into some hallowed advice. The structure of Spring (core). http://EdmundKirwan.com/general/spring.html http://EdmundKirwan.com/general/spring.html Wed, 01 May 2013 09:37:00 GMT Finally, some light in the darkness. Code autopsy. http://EdmundKirwan.com/general/autopsy.html http://EdmundKirwan.com/general/autopsy.html Thu, 25 Apr 2013 18:37:00 GMT An unsolved mystery remains in Ant: we're going back in. Going Dawkins on god objects. http://EdmundKirwan.com/general/godobject.html http://EdmundKirwan.com/general/godobject.html Wed, 16 Apr 2013 18:37:00 GMT How to identify and slay these structure bad-boys. The structure of Struts. http://EdmundKirwan.com/general/struts.html http://EdmundKirwan.com/general/struts.html Sun, 05 Apr 2013 18:37:00 GMT The excellent Struts gets the structure-analysis treatment. How deep is your code? http://EdmundKirwan.com/general/tuples.html http://EdmundKirwan.com/general/tuples.html Thu, 25 Mar 2013 18:37:00 GMT Source code has many dimensions but its depth can be most dangerous. The structure of Ant. http://EdmundKirwan.com/general/ant.html http://EdmundKirwan.com/general/ant.html Wed, 20 Mar 2013 18:37:00 GMT The search for excellent code structure continues with a look at Ant. The structure of JUnit. http://EdmundKirwan.com/general/junit.html http://EdmundKirwan.com/general/junit.html Wed, 20 Mar 2013 18:37:00 GMT JUnit is a masterpiece. Its structure should be studied. A simple suggestion to radically improve your package structure. http://EdmundKirwan.com/general/radial2.html http://EdmundKirwan.com/general/radial2.html Wed, 20 Mar 2013 18:37:00 GMT You don't need elaborate JSRs to build a better package structure. How many classes and packages should you have? http://EdmundKirwan.com/general/howmany.html http://EdmundKirwan.com/general/howmany.html Wed, 20 Mar 2013 18:37:00 GMT What constrains your system's classes and packages? The three greatest paragraphs ever written on encapsulation. http://EdmundKirwan.com/general/3paragraphs.html http://EdmundKirwan.com/general/3paragraphs.html Wed, 20 Mar 2013 18:37:00 GMT Encapsulation is a concept we all know and love. But where did it come from?