Timo Koskinen
seal-mask

Timo Koskinen

Techdegree Graduate

Vantaa

I am a Logistics Engineer, starting in the world of coding. My goal is to enter into the Full stack space in 2021.

24,972

Total Points

Points are earned whenever you take an important action on Treehouse.
Learn more about when and how points are earned.

239 Achievements

  • Data Persistence & ORMs
  • Bells and Whistles
  • Diving into Web Development
  • Writing Your Own Java Annotation
  • Using Java's Built-In Annotations
  • Java's Functional Toolset
  • What to Test
  • How To Test
  • Why Test
  • Advanced Tooling
  • IDE Exploration
  • How it Works
  • Introducing IntelliJ and Unpacking Packages
  • Java Maps
  • Java Lists
  • Generics in Java
  • Interfaces in Java
  • Java Inheritance
  • Gotchas and Wins
  • Iteration
  • Introducing Figma
  • Creation
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Sass and BEM
  • React Router and Authentication
  • Implementing Basic Authentication
  • Introducing the Authentication Project
  • Get Involved in Open Source
  •  Create a Web Presence on GitHub
  •  Working on a Team
  • Working By Yourself
  • Hello, GitHub!
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • Validating Data
  • The Importance of Data Validation
  • Retrieve Related Data in Sequelize Queries
  • Create Related Data Using Sequelize Models
  • Data Relationships in Sequelize
  • Understand Data Relationships
  • Refactoring and Modularizing a REST API
  • Create, Read, Update, Delete
  • Managing Data and Asynchronous Code
  • Getting to Know REST APIs
  • Getting the REST You Need 2
  • Performing CRUD Operations
  • Defining Models
  • Getting Started with Sequelize
  • Asynchronous Code in Express
  • Handling Errors When Manipulating Data
  • Deleting Data from a Database
  • Updating Data in a Database
  • Adding Data to a Database
  • Finding the Data You Want
  • Getting Data from a Database
  • Data, Databases and SQL
  • Going Further with Routing
  • Navigating, Nesting and Redirecting Routes
  • Getting Started with React Router
  • React Component Patterns
  • Stateful Components and Lifecycle Methods
  • Managing State and Data Flow
  • Build Modular Interfaces with Components
  • Stateful Components
  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • Next Steps
  • Improving Our Tests
  • Behavior Driven Development with Mocha & Chai
  • Introducing Unit Testing
  • Serving Static Files in Express
  • Applying Express Knowledge
  • Middleware
  • Deeper into Routing with Express
  • Using Templates with Express
  • Getting Started with Express
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • Creating a Command Line Weather Application
  • Handling Errors in Node
  • Classes
  • Objects and New Collection Types
  • The Cooler Parts of ES2015
  • ES2015 Basics
  • Getting Data From an API With Node
  • Introduction to Node.js
  • JavaScript Frameworks, Libraries, and Developer Roles
  • JavaScript Outside of the Browser
  • Exploring Async/Await
  • Adding the Game Logic
  • Practicing Getters and Setters
  • Creating an SVG
  • Art Direction with the Picture Element
  • Image Delivery with Srcset and Sizes
  • Build an Accessible Form
  • Introduction To Accessibility
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Getting Modular with Mixins and Functions
  • Add Reusable Logic to Your Sass
  • Debugging, Best Practices, and Production
  • Refactoring with Sass
  • Using a jQuery Carousel
  • Add a Sticky Navigation Bar
  • Introducing jQuery Plugins
  • Making the Game Interactive
  • Working with jQuery Collections (2017)
  • Understanding jQuery Events and DOM Traversal (2017)
  • Introducing jQuery (2017)
  • Building a Layout with Flexbox
  • Flexbox Properties
  • Understanding Flexbox
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Mobile-First CSS Layout
  • Finishing Touches
  • Styling Images
  • Styling Boxes
  • Styling Text
  • CSS Media Queries
  • CSS Layout Techniques
  • Box Model Concepts
  • The CSS Box Model
  • Write Smart and Efficient CSS with Sass
  • Going Further with HTML
  • Images, Text and Links
  • Getting Started With HTML
  • Structuring Your Content
  • Installing Sass and Setting up the Project
  • Improve Your Workflow with Sass
  • Getting Started with Sass
  • Fundamental Concepts
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • The Role of Selectors in JavaScript
  • Pseudo-classes and Combinators
  • Selector Basics
  • Reformatting User Input
  • Validating a Form with Regular Expressions
  • Combining Array Methods
  • Array Manipulation
  • Practice forEach
  • Array Iteration
  • Create Function Using Arrow Syntax
  • Defining Variables With let and const
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Regular Expressions
  • Regular Expressions
  • Rendering the Game
  • Introduction to SVG
  •  Building Constructor Methods and Generating Objects
  • Introducing 'Four in a Row'
  • Checking Out and Returning a Book
  • Starting with Some Methods
  • The Rough Plan
  • Getters and Setters
  • Working with Classes in JavaScript
  • Practicing Classes
  • Object Basics
  • Practicing Object Basics
  • Introduction to Object-Oriented JavaScript
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Common Commands
  • Directories and Files
  • The Command Shell
  • Understanding Promises
  • Asynchronous JavaScript with Callbacks
  • Improving the Application Code
  • Editing and Filtering Names
  • Adding and Removing Names
  • What is Asynchronous Programming?
  • Callbacks and the DOM
  • Callbacks with Timers
  • Introduction to Callback Functions
  • Programming AJAX
  • AJAX Concepts
  • Traversing the DOM
  • Responding to User Interaction
  • Making Changes to the DOM
  • Getting a Handle on the DOM
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Final Project: Create a Typographic Site
  • Laying Out Type for the Web
  • Basic Web Typography
  • How to Choose and Use Webfonts
  • Introduction to Typography
  • Positioning Page Content
  • CSS Layout Project
  • Page Layout with the Float Property
  • Controlling Layout with CSS Display Modes
  • Getting Started with CSS Layout
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • Adding a New Web Page
  • Make It Beautiful with CSS
  • HTML: The Structural Foundation of Web Pages and Applications
  • Getting Familiar with HTML and CSS
  • The Browser Environment
  • JavaScript Tools and Workflows
  • JavaScript is Everywhere
  • Loop Through Objects
  • Object Basics
  • Multidimensional Arrays
  • Loop Through Arrays
  • Store Multiple Values in an Array
  • Working with 'for' Loops
  • Simplify Repetitive Tasks with Loops
  • Using Template Literals
  • Arrow Functions
  • Pass Information Into Functions
  • Create Reusable Code with Functions
  • The Math Object
  • Working with Numbers
  • Making Decisions in Your Code with Conditional Statements
  • Working With Strings
  • Storing and Tracking Information with Variables
  • Hello, JavaScript!
  • Newbie