JS Transformer

- Image via Wikipedia
The official release of one of the most useful (yet hackish, and randomly pieced together from the interweb) code snippets I’ve ever made. I’m calling this useful little piece of code “JS Transformer”, since Transformers are cool again thanks to Shia LaBeouf.
NOTE:
KEEP IN MIND THE SAME-ORIGIN POLICY OF MOST BROWSERS… you’ll probably have to use a server-side proxy to make this more useful (i.e. proxy.php, proxy.jsp, proxy.asp, etc… a topic I’ve covered before)
A quick XSLT tutorial

This post is meant to be a brief XSLT refresher, since I tend to need to rely on several web resources as references to remember the obscure functions and element names available in various versions of the XSL specification, as well as to remind me of the various patterns, tricks and workarounds.
There are three key technologies at play in an XSL Transformation:
- XML – the original document holding the data to be parsed/processed/rendered
- XSL – the definition of a transformation and any additional styles to apply
- HTML – the human-readable rendering of the original XML data, which gets displayed to the end-user
As you can see in the diagram on the right, XSLT follows a clear processing path, starting with an XML document and the corresponding XSL document designed to parse it provided to an XSLT Processor, which acts as an intermediary in applying the desired styles and structure to the particular data being parsed out of the XML. The resulting document could technically be any number of formats, including another XML document with a different format, Plaintext, CSV, HTML, xHTML, RDFa, JSON, HTML with microformats, CSS, Javacript or even Java, PHP or another server-side language’s class files to be compiled or interpreted later.
Typically though, HTML will be the format displayed by a rendering, and officially only XML and HTML output formats are supported by the specification, although even in the browser, it is possible to render other formats to be displayed by not specifying the output type.
Read the rest of this entry »
BC$ = Behavior, Content, Money

The goal of the BC$ project is to raise awareness and make changes with respect to the three pillars of information freedom - Behavior (pursuit of interests and passions), Content (sharing/exchanging ideas in various formats), Money (fairness and accessibility) - bringing to light the fact that:
1. We regularly hand over our browser histories, search histories and daily online activities to companies that want our money, or, to benefit from our use of their services with lucrative ad deals or sales of personal information.
2. We create and/or consume interesting content on their services, but we aren't adequately rewarded for our creative efforts or loyalty.
3. We pay money to be connected online (and possibly also over mobile), yet we lose both time and money by allowing companies to market to us with unsolicited advertisements, irrelevant product offers and unfairly structured service pricing plans.