Showing posts with label flex. Show all posts
Showing posts with label flex. Show all posts

Thursday, August 14, 2014

AngularJS and Durandal

When I read on the Angular blog that Rob Eisenberg is working with Angular in addition to continuing revisions on the Durandal templating library, I was understandably excited. I have really enjoyed working with Angular, not just as an SPA framework, but as a prescriptive, modular, and mature JavaScript framework, but like many people, I have found custom directives frustrating; jsFiddle and similar tools provide a good way to develop and test a new directive in isolation, but still. I've experienced this on other projects, using Adobe Flex, for instance. On a project team, you have a number of developers, one of whom supports custom web components, and that works okay, but the other developers don't really understand how the components work under the hood.

I am hoping that the next evolution of AngularJS (3.0) will align much more closely with Durandal, Web Components API, and Polymer. There is really no reason why custom Web Components cannot become just a standard practice for the web. And that's nothing like Angular custom directives, which are confusing, I think, because whereas in most cases Angular balances flexibility and prescription nicely, custom directives are incredibly flexible - transclude? allow directive through attribution or class, or just elements? and so forth. Custom directives are just way too flexible, and they need to be a simple API for doing one thing well, not a combinatorics problem.

On the other hand, what Angular provides that Durandal does not is exactly that balance of prescription and flexibility. Angular tells you how to do things like module structure and model-view-star, and as a development project lead, I appreciate that, because this makes establishing best practices and code reviews manageable. That is why I am expecting great things from Angular, especially if the next version also results in an update to the angular-ui.bootstrap project, providing a ready to use library of web components.

Friday, May 14, 2010

Tab Sweep - 2010 05 14

Dare Obasanjo on Facebook:

Facebook’s Open Graph Protocol from a Web Developer’s Perspective

danah boyd on Facebook:

Facebook and "radical transparency" (a rant)

Not surprising that Facebook is facing criticism; I appreciate danah's demonization of transparency, and the distinction she draws between being exposed and exposing oneself. One of the things I appreciate about Twitter is that the level of exposure of any conversation I have there is dictated directly by the object graph of those involved in the conversation. If I want to curse and swear, I can engage someone in a conversation with whom this is appropriate. But there is always a risk of exposure.

Dare's point is also well taken on many levels, but particularly from my viewpoint, ontologically speaking, that Facebook is leveraging RDFa and not microformats, and that RDFa is an exponentially more robust technology specifically due to the use of namespaces. And what better way to identify arbitrary URIs as social objects than by using namespaces? In issues of transparency and privacy, it seems that disambiguation, ie clarification of social context will become increasingly important.

Reread danah's rant, especially the Zuckerburg quotes referring to the artificiality of sustaining a multiple identity. My own reaction to this is equally violent, and I call BS - all relationships in a social graph are virtualizations or supplementation of something that they are not, actual relationships. They are by definition artificial and demand disambiguation.

My travels in Flex-land keep coming back to the importance of namespaces outside the strict context of XML. Their time is coming; more widespread use of RDFa and the need for disambiguated rather than radical transparency are definitely indicative of this.

Tuesday, May 04, 2010

Talking Points: Collaboration and Documentation

A few years ago I wrote about a project I developed for my then employers, which I open sourced under the name CaseBook. The intent was to single-source end-user documentation which could be be transformed into internal and client acceptance test scripts. As I developed it, the project involved XML, Schematron, XSL and XQuery, hosted in an eXist database and accessed using webDAV.

At the time, I had barely heard of DITA, the Darwin Information Typing Architecture, but the approach I took shared some ideas with what I later came to learn about DITA, using concept maps, separation of topics into tasks and steps and so forth. In the mean time, DITA has gained a lot of traction, and my SourceForge page has been hit maybe 500 times.

I have been giving a lot of thought lately to collaborative writing. As Anne Gentle has pointed out on her JustWriteClick 'blog, DITA shines in environments which have a strong collaborative or Agile approach, since both of these emphasize timely repurposing and multipurposing. One of the problems I was addressing with CaseBook was collaboration between development, documentation and testing resources. Now, in part, this was because I was working in a small team, and had responsibilities in each of these areas.

I still think there is a lot of value in facilitating collaboration between these groups, and were I to develop this project today, I would start with the DITA Open Toolkit from day one.

In addition, for the last four months, I've been working with Flex, mxml and ActionScript. One thing that intrigues me about mxml is that it is XML. For instance, what if you could generate end user, acceptance or client walkthrough documentation automatically from the mxml source? Transforming mxml to DITA seems like a useful technique.

Any thoughts?

Sunday, March 21, 2010

Working with Flex

For the past few months (since the start of the year), I have been working with Adobe Flex, in conjunction with a Java back-end leveraging Hibernate and Spring. The application under development is basically a public sector financial package, which does not specifically require RIA features, although UX has been established as a critical success factor.

I am following a fairly straightforward path to Flex, I suppose - early work with Action Script and other Adobe technologies lead me to Ajax, and then to Prototype and JQuery, after which I spent several years mired in JSP; and now I am back working with Action Script. Plus ça change, plus c'est la même chose.

I will write more about my experience in future articles, but specifically I want to raise a couple points of interest here: as a team, we have settled on Cairngorm as an MVC framework. If anyone has any thoughts on Cairngorm and the alternatives, or thoughts about using Flex as a rapid development tool for public sector work. Also, it seems like Flex could easily become a de facto standard for certain kinds of non-RIA development because of the easy Eclipse integration, and I would love to discuss others' experience.

Please drop by and leave a comment - I have been invaded by anonymous posters!