05 October 2011

SSJS = Server Side JavaScript

LiveScript was a very nice, general purpose programming language initially, however it was subsumed into the marketing hype of the day to be renamed and forced fit into a company's web browser product to manage the HTML DOM and we have the often/much maligned result: JavaScript.

I know many web developers, especially in enterprise settings, that barely tolerate JavaScript and others that "hate" it (their words not mine) and others that banned its' use or at least limited its' use for a myriad of reasons, mostly due to security.  Web security is very convenient if you want to limit something...even if there is a kernel of truth to it...however that is mostly an implementation issue that should not reflect on the language itself, IMO.

FWIW/IMO, ECMAScript is maturing rather nicely. The JavaScript language has a great set of programming features some of which were created in one of my favorite languages that never-really-was-successful, Self.  Dynamic, prototypes, functional, imperative, OO, ... very flexible.  For more information on the language itself, I highly recommend Eloquent JavaScript.

V8, Google Chrome's JavaScript engine, has reinvigorated this space, though I'd like to see more interest from Mozilla on Rhino and SpiderMonkey...and see other players enter this space.   By far, the most interesting and promising SSJS is provided by node.js.  I'd like to hear about other options and/or experiences using node.js or SSJS, please share 'em if you got 'em!

No technology is perfect, and you have to determine which technology is the best fit for purpose for your solution.  I have a core set of technologies that I use for what I tend to call "nextweb" or realtime web solutions, and SSJS is a foundational component...and so far node.js is the best option I've found for SSJS. 

In the past, JavaScript has been limited by its' implementations and where it has been "forced fit", though the number of client-side JavaScript frameworks and SSJS indicate that these limitations are no longer valid.  With a small core set of technologies, most with open source options, and open standards, the nextweb can be utilized today by any organization willing to capitalize on it...if only they can give up some of their reliance on enterprise "bloatware" for their web solutions.

SSJS, just think about it, and maybe, just do it!

30 September 2011

Wow! What a wild ride the last few years! Digging into my old web presence I found this blog. I haven't used it since 2008, and I'm surprised to see it is still here. Then, I was involved in Semantic Web solutions; since then, I refocused on realtime web solutions which are also amenable to the Cloud.

The last few years have been a wild ride technology-wise and I have an updated perspective on the web...nothing earth shattering or paradigm shifting if you already know this stuff...here is a high-level summary:

  • Microformats are a very good thing; the tactical, practical semantic web (lower case)
  • JavaScript is a wonderful programming language, in spite of it being forced into the HTML DOM
  • jQuery is an amazing and useful framework.
  • REST is all you need for distributed web architectures (sure, there are a few more foundational standards)
  • Realtime web is viable, but not well-known in terms of value and technologies to most mid-large size organizations who stick with their big name, high cost technology solution providers and bloatware.
  • Realtime web solutoins can be designed to use a small set of common standards and wide range of open source software.
  • Enterprise architecture - where's the value realization? For those who have embarked on enterprise architecture initiatives, have large teams of enterprise architects with all the necessary certifications (and/or consultants too) have you seen real ROI? Have you broken even? Are you even tracking this?
  • WOA > SOA
  • Artificial Intelligence and Knowledge Engineering provide implicit value but don't sell well if stated explicitly and directly.  One needs to use more popular buzzwords and euphemisms.
Going forward, I will focus on my experience and findings regarding WOA and realtime web architectures, designs, technologies, web standards, as well as using the same for server-side with mobile and desktop clients (web, native); JavaScript and related frameworks, server-side JavaScript. Of course, I will continue to ask for information on enterprise architecture value realization and ROI.

Thanks for reading!