2011/12/23

Don't know much about technology ...

The ROC paradigm/methodology/<buzzword of the day>/... will enable you to develop both better and faster. It does not take away the need for you to know technologies.

I learned this the hard way and it made my learning curve steeper than it should have been. Not only that, but I spectacularly failed training my first pupil because of the same reason ! So in the remainder of this post I'll discuss the requirements to start ROC'ing with NetKernel.

Base

  1. IT fundamentals.
  2. Programming fundamentals.
  3. XML fundamentals.
  4. Dynamic scripting language.
    Pick one that is supported in NetKernel. If you don't have a preference, Groovy is a good choice.
  5. XSLT.
  6. ROC Fundamentals.
  7. XRL.
  8. DPML.
    This is an optional point. I still advise it.
Note that only 6, 7 and 8 are NetKernel specific.

Put together that would be a three year curriculum for a secondary school, a two year curriculum for a bachelor, a three to six month (depends on prior knowledge) curriculum for a fresh IT professional.

Afterwards you'll be able to think ROC and work independently on back end solutions.

Adding the front end

  1. HTML.
  2. CSS.
  3. Javascript.
    This is also a good time to choose and learn a javascript framework (jquery, qooxdoo, extjs, ...). Serving it from within NetKernel is a very good ROC exercise.
Add six months for the secondary school, three months for the bachelors and IT professionals.

Afterwards you'll be able to work independently on end-to-end solutions.

Advanced
  1. ROC Advanced.
  2. Java.
    NetKernel runs in a JVM. And even though it is true that you can do the job with a dynamic scripting language, for creating core tools or modifications to the existing tools you need Java.
The timeline for this can vary wildly.

Afterwards you'll be able to create core tools and integrate new technologies into the ROC abstraction.

Extra
  1. Databases
  2. Queing systems
  3. ... 
Know at least the basics of the technologies you are using. Even (maybe especially) when you can use them as black boxes.

Practice
As the punchline goes about the man asking about how to get to Carnegie hall ... practice my man, practice ...


The above may look like an enormous task, but while I was writing it I noticed the similarity with my own training to become a mainframe developer (20 years ago now). It took three months to become a productive batch programmer, another three to become independent (and write CICS front ends) and only with lots of practice did I become proficient.

Everything worth knowing takes time and effort and is (no, I'm not going to write looks, I'm not a salesman) hard. ROC and NetKernel are worth knowing !