Both 'render' and 'afterrender' events come pretty handy with ExtJs and I guess they are very widely used.
Touch 2 seems to have given us a blanket method called "initialize" that has supposedly replaced all these events, plus "initComponent", "afterRender" etc. methods.

However atleast giving "render" and "afterrender" events is desirable (I would want afterRender method too but not sure if other community members/Touch team would agree).

Let me give you 2 reasons for adding these events back in Touch 2:

1) I needed to manipulate scrolling of a Component manually after it had rendered. No such event and nothing else available.
I ended up doing the following:

Code:
initialize: function () {
  Ext.Toolbar.prototype.initialize.call(this, arguments);


  var scroller = this.getScrollable().getScroller();
  setTimeout(function () {
    //My code using scroller
  }, 1000);
}
The dom of the component (and its items) was not completely ready when initialize was called. I had to do a setTimeout to have the dom ready. render/afterrender would address this easily.

2) Notice the first line of initilize method above. It looks very ugly. initialize is supposed to be overridden in derived classes that invoke this.callParent.
But what if a single component on a page needs to perform some initializationt task. Giving initilize method in component config gives me the above ugly code and there seems to be no other method/event available to override/subscribe.