It's been a busy week:
- getting ready for the Scottish Ruby Conference [SRC] three fascinating days 7 - 9 April.
- checking with the client of the Drupal site, confirming that the following CSS3 adornments are not required: coloured lettering : 3D text : and others. KISS - OK!
- Blocks and bindings
- The Ruby object model
- Hooks, callbacks, and reflection.
Swapping to Ruby while tinkering with Drupal is not a help and yet there is overlap. GIT is the must-do within both communities. PHPNW's meeting on Wednesday on OOP with Lorna Mitchell highlighted some common aspects. I'm probably getting a lot of this (as in 'all' plain) wrong but Lorna's mention of $this and static methods sent me on a reverie. ...
Abstract classes are apparently incomplete and
$thisis not available to them. Suddenly I'm thinking well that's different. In nursing our abstractions on nursing care are complete - in the idealised sense. It's the concrete / practical (dynamic) delivery that sadly falls short.
PHPNW - the conference in October, a Saturday event in prospect and being here in Edinburgh reminds me I have this itch. Dave Hoover's keynote spoke about his career and finding his technical groove from a therapeutic role as a psychologist.
One thing I do know: from the books he mentioned I ain't got 10,000 hours. That's why I am trying to leverage Drupal and in Ruby - the Rails framework. There's an IDE I have just learned of JetBrain's Ruby Mine.
(Despite that) I'm reading Martin Fowler's book on Domain Specific Languages. Not because I'm going to write one (or like rashes), but because I'm totally intrigued and wondering about a research question. What question(s) can I ask that I might also be able to answer (or not)?
method_missing, meta programming and DSLs are still here in Edinburgh. No longer the latest and greatest (Jim Weirich suggested that was c.2006), but then neither are models of nursing. ;-)
In his book Fowler identifies 'illustrative programming'. Spreadsheets are the key example and quite remarkable in how they are used and the niche they occupy from a programming, DSL, and an everyday tool perspective.
Hodges' model is a spreadsheet; or a decision table of sorts. Basically, does the patient have a problem in each of the care domains? Fowler writes:
The key benefits of a DSL - greater productivity and communications with domain experts - really kick in when you are using an alternative computational model. Domain experts often think about their problems in a nonimperative way, such as via a decision table. An Adaptive Model allows you allows you capture their way of thinking more directly in a program and the DSL allows you to communicate that representation more clearly to them (and yourself). p.116.I'm really taking liberties with definitions. My domain experts might actually be student nurses.
I know book titles are intended to sell, but I look at the title of Chad Fowler's book above and wonder about the Compassionate Care Programmer and what alternative computational models may be needed to achieve that?
Fowler, M. (2010) Domain Specific Languages: Addison-Wesley Signature Series, Addison-Wesley Professional.