Nordnet Academy

<nordnet-academy>Introduction</nordnet-academy>

Agenda

  • What, why and how

  • Sessions roadmap

  • Github

What, why and how

public interface Session {

    /*
     * Minimum session time in minutes.
     */
    public static final int MIN_TIME_MINUTES = 30;

    /*
     * Maximum session time in minutes.
     */    
    public static final int MAX_TIME_MINUTES = 45;

    /*
     * Questions & answers after the session.
     */
    public static final boolean QA = true;

    /*
     * Recorded to watch later.
     */
    public static final boolean RECORDED = true;

}

What, why and how

public interface Session {

    /*
     * Shares knowledge during each session for given tools, 
     * frameworks and methodologies. Returns shared knowledge.
     *
     * @param tools
     *     Array of {@link Tool} about which knowledge should be shared.
     * @param frameworks
     *     Array of {@link Framework} about which knowledge should be shared.
     * @param methodologies
     *     Array of {@link Methodology} about which knowledge should be shared.
     *
     * @return {@link Knowledge} shared knowledge.
     */
    Knowledge shareKnowledge(Tool[] tools, 
                             Framework[] frameworks, 
                             Methodology[] methodologies);
}

What, why and how

public interface Session {

    /*
     * Increases level of developer by processing given knowledge.
     *
     * @param knowledge
     *     {@link Knowledge} to process.
     *
     * @return number of levels gained from given knowledge.
     */
    int levelUp(Knowledge knowledge);
}

Sessions Roadmap

var sessions = {
    tools: {
        ide: ['IntelliJ IDEA', 'Sublime'],
        collaboration: ['JIRA', 'Confluence'],
        vcs: ['Git']
    },
    guidelines: {
        languages: ['JavaScript', 'Java', 'REST', 'DB']
    },
    languages: {
        javascript: ['Type system', 'Inheritance', 'Patterns', 'Unit testing'],
        java: ['Java 8', 'Unit testing'],
        erlang: ['Erlang 101']
    },
    frameworks: {
        javascript: ['AngularJS'],
        java: ['Spring DI', 'Spring MVC']
    },
    methodologies: {
        development: ['Clean code', 'DB modeling', 'REST principles'],
        delivery: ['Kanban', 'DevOps']
    },
    financial: {
        basic: ['Instruments and markets'],
        analysis: ['Technical', 'Fundamental']
        advanced: ['Modern portfolio theory'],
    }
};

Sessions Roadmap

use Nordnet::Academy::Sessions;

my %schedule = {
    sessions_per_month => 2,
    open_for_suggestions => 1,
    fixed_topics => 0
};

my $sessions = new Nordnet::Academy::Sessions();
$sessions->suggestSchedule($schedule);

Sessions Roadmap

var sessions_details = [
    {
        subject: 'Tools: IntelliJ IDEA',
        date: '2014-09-26'
    },
    {
        topic: 'Java: Clean Code',
        date: '2014-10-10'
    },
    {
        topic: 'Tools: Sublime',
        date: '2014-10-24'
    },
    {
        topic: 'JavaScript: Coding Guideline',
        date: '2014-11-07'
    },
    {
        topic: 'General: REST Principles',
        date: '2014-11-21'
    },
    {
        topic: 'Java: Coding Guideline',
        date: '2014-12-05'
    }
];

Questions?


document.write(
    'If debugging is the process of removing software bugs,' + 
    'then programming must be the process of putting them in. – Edsger Dijkstra'
);

Nordnet Academy - Introduction

By nordnetacademy

Nordnet Academy - Introduction

Nordnet Academy - Introduction session

  • 1,092