I love to learn new things! That’s why I attended The Informal School of IT courses.  The first course was “Intro in IT”. Here I learned the basics.

The course content: 

1. How does an application come to life?

  • Who are the craftsmen involved?
    • Roles and responsibilities
  • How does an application grow?
  • When are we ready to ship?

2. Must-have skills for the journey

  • How computers work?
    • Computer architecture (memory, CPU, networking)
  • Different devices – different operating systems!
    • OS architecture (processes, services, file system, security) Windows vs Linux vs Android vs iOS
  • What are applications made of?
    • Application architecture (Presentation, Business and Data Layers; Windows architecture; Server – client architecture)
  • How does information travel through Internet?
    • Web pages
    • URL and URI
    • Client side vs. Server side processing/rendering
    • Web services
    • Internet security
  • What are your basic tools?
    • Web browsers (cookies, sessions, extensions/plugins)
    • Text editors with syntax highlighting
    • Image and video capture
    • Remote access
    • Chrome Inspector / Firebug / DevTools
    • Moqups, wireframes
    • Skype / Hangouts

3. Can you become a developer?

  • Start thinking and speaking like an IT geek!
    • Programming basics
    • Pseudocoding and flow charting
    • Data structures and algorithms
    • Number systems and binary logic
    • IT Terminology
  • Everything around us is an object – In machines’ world this is called OOP
    • Inheritance, Encapsulation, Abstraction, Polymorphism
  • You call it a website – this is a perfect mix between HTML, CSS, JS
    • HTML
    • CSS
    • JavaScript
  • You like to keep your stuff well organized – So does an application using databases
    • SQL (basics and database entities, create db and tables using tools, NOSQL)

4. …or what about being a tester?

  • Apps crashing, monitors freezing, odd coloring screens, weird behavior… Are all these happening only to me?
    • What is software testing?
    • Types of testing – Manual vs Automated Testing
    • What is a bug?
    • What scenarios should be covered to test the application?
    • Tests execution.

5. Show us your skills, we show you the path

  • Are you amazed of what you’ve found so far? This was just a glimpse! We help you choose the best path to follow: testing or developing applications
    • Great things come with hard-working
    • Everything is about mindset – What are the special ingredients?
    • The only constant thing in life is change

    At the end of this course I discovered my passion for Front-end Development. That is how I decided to attend  the second course: Web Development ( JavaScript ). Here I learned a lot of new interesting and amazing things. 

The course content: 

1. Web Introduction:

  • Internet
  • Client-Server architectures
  • TCP/IP Protocol (IP address, URL)
  • DNS Protocol
  • HTTP Protocol (request-response model, headers, methods, status codes)
  • HTTP Caching
  • HTTP Cookies
  • HTTPS Protocol (SSL)
  • Cookies
  • Browsers (DOM, page building, rendering and layout)
  • Developer Tools (Dev Tools, Fiddler, Firebug)


  • HTML Standards
  • HTML Basics
  • HTML Elements
  • HTML Attributes
  • HTML Tables
  • HTML iFrames
  • HTML Form Elements
  • HTML5 Elements and Semantics
  • Canvas, SVG
  • Media
  • APIs (geolocation, local storage, app cache)

3. CSS

  • CSS Syntax (rules and selectors)
  • CSS Base Rules
  • CSS Positioning and Layout (box model)
  • CSS Pseudo-class and Pseudo-elements
  • CSS3 Basics
  • CSS3 Flexbox
  • CSS3 Gradients and Backgrounds
  • CSS3 Transforms, Transitions and Animations
  • Responsive Web Design (media queries)

4. JavaScript

  • JavaScript Introduction
  • Javascript Syntax
  • Expressions and Operators (arithmetic, logic, bitwise)
  • Variables and Types (numbers, booleans, strings, arrays, objects)
  • Flow Control (decisions, iterations, break, continue)
  • Functions
  • Scope
  • Exceptions
  • Events
  • DOM (methods, document, elements, html, css, events, nodes, navigation)
  • JSON (syntax, types, objects, arrays, parse, stringify, JSONP)
  • Client Storage (local and session storage)
  • jQuery Basics
  • Coding Standards (clean code, naming conventions)

5. Javascript Advanced

  • Functions – Advanced Topics (function scope, closure, hoisting)
  • Objects – Advanced Topics (properties, methods, prototypes)
  • ECMAScript 6 (scoping, let, arrow functions, classes)
  • Javascript BOM (window, screen, location, history, navigation, timing,
  • AJAX (XMLHttpRequest, request, response)

6. Introduction to ReactJS

  • Introduction (architecture, virtual DOM)
  • Environment Setup
  • JSX
  • Components (props, state, lifecycle)
  • Forms (refs, routing)
  • Events (DOM events, component events)

7. Interview Preparation

  • How to present oneself during an IT interview
  • CV formatting tips

    Whitin the course, I created a movie app using the skills I developed. At the end of the course, I took the ANC accredited exam and I obtained the 9,75 grade.