Code:
Ext.require([
    'Ext.data.*',
    'Ext.grid.*',
    'Ext.tip.*',
    'Ext.ux.CheckColumn'
]);

//we want to setup a model and store instead of using dataUrl
Ext.define('Task', {
    extend : 'Ext.data.TreeModel',
    fields : [
        { name : 'task', type : 'string' },
        { name : 'user', type : 'string' },
        { name : 'duration', type : 'string' },
        { name : 'done', type : 'boolean' }
    ]
});

Ext.onReady(function () {

    var store = Ext.create('Ext.data.Store', {
        model : 'Task',
        data  : [
            { task : 'task' },
            { task : 'user' },
            { task : 'duration' },
            { task : 'done' }
        ]
    });
    Ext.define("foo", {
        extend : 'Ext.grid.column.Column',
        xtype : 'foo'
    })

    var tree = Ext.create('Ext.grid.Panel', {
        title       : 'Core Team Projects',
        renderTo    : Ext.getBody(),
        store       : store,
        plugins     : 'viewport',
        split       : true,
        columns     : [
            {
                text      : 'Task',
                width     : 300,
                dataIndex : 'task',
                locked    : true
            },
            {
                text      : 'Task',
                width     : 200,
                dataIndex : 'task',
                locked    : true
            },
            {
                xtype : 'foo',
                width : 150
            }
        ]
    });

    
});