Non-unique IDs in markup language


A prevalent pattern is for IDs to be unique. More than one document has been written about it.

As an exception from that rule, a practical use case for and an implementation of non-unique IDs in markup language have been provided and documented within the open source Adj framework.

Read the rest of this entry »

The duality of a graphics library


Most any machine one makes or designs one can get so involved in that one is preoccupied with the making or the workings of that machine, one could forget there was a purpose.

Having worked to make Adj viable, in several ways, now this very moment I am not directly facing any of the enterprise software design problems that originally made me want to have Adj. I am sure some will occur sooner or later, complexity is here to stay – just try to understand your CPU chip, all its transistors, how it works, or how it is made.

This made me think though, how do others see Adj? Is Adj

  • something to use, or
  • something to develop?

Read the rest of this entry »

Writing SVG files back to disk


If you have been around SVG, XML, browsers, and computer graphics for a while, you may have noticed an upsetting dichotomy:

For SVG, browsers support DOM and JavaScript. Pretty well by now, in 2013. Browsers aren’t written in JavaScript, but they can run JavaScript.

SVG editors, however, such as Inkscape, Adobe Illustrator, etc., are written in anything but JavaScript. There may be performance reasons, or a least there may have been performance reasons. SVG editors, for all practical purposes, cannot run JavaScript.

Read the rest of this entry »

Adj features galore


This is an announcement of new features of the open source Adj framework, which is at version 3.5.6.

The original announcement of Adj still has relevant information which is not being repeated here. So does the version 2 announcement.

For a formal reference, there is the user guide.

What is new: