Emil Rais

Emil Rais

Denmark, Aarhus

Together my friend and I founded the software company Utopians. I am studying for a masters in computer science at Aarhus University in Denmark. Web technology, software development, and especially clean code is my passion.

26,819

Total Points

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

Skills & Experience

  • Company

    Utopians I/S

  • Job Title

    Co-Founder

  • Spoken Languages

    • Danish
    • English

357 Achievements

  • 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
  • Meet pandas
  • Array Programming
  • Array Organization
  • Meet NumPy
  • LTV Analysis by Example
  • What is LTV?
  • UI Testing with Espresso
  • Unit Testing - Now Featuring Robolectric!
  • What a Beautiful Vue!
  • Introducing Vue
  • Fundamentals of Docker
  • Docker Use Cases
  • Better SEO Through Tools
  • Better SEO Through Code
  • Better SEO Through Content
  • Introduction to SEO
  • Putting it all Together
  • Actions, Dispatch and Reducers. Oh my!
  • Modularizing the React Scoreboard Application
  • Getting Started with Redux
  • Component Lifecycle
  • Designing Dataflow
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • WebDriver Input Actions
  • WebDriver Waits
  • Use Selenium with Testing Frameworks
  • Exploring Best Practices
  • Test Drive
  • Meet Selenium
  • Page and Post Templates in WordPress
  • Core WordPress Theme Files
  • How WordPress Templates Work
  • Customizing the Login Screen
  • WordPress User Roles
  • WordPress Themes
  • Managing Media in WordPress
  • WordPress Plugins
  • The WordPress Customizer
  • Managing Content in WordPress
  • Writing a Classifier
  • Machine Learning Vocabulary
  • Introduction to Machine Learning
  • Maintaining Secure Web Apps
  • Protecting Data and Keeping Attackers Out
  • Why Protect Your Web Apps
  • Getting to Know Your Data
  • Introducing Data Analysis
  • What is Big Data
  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • Practicing Data Visualization in Excel
  • Chart Formatting and Layout
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • AWS and "The Cloud"
  • Security: Solutions
  • Security: Concerns
  • Angular Form Validation
  • Angular Basic Forms
  • Services in Angular
  • Angular Components
  • Setting Up an Angular Application
  • Building Forms with Bootstrap
  • Using Bootstrap Components
  • Responsive Layouts with the Bootstrap Grid
  • Getting to Know Bootstrap 4
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Diving into Web Development
  • File Uploads and Entity Updates in Spring + Hibernate
  • User Messages in Spring
  • Getting Started with CRUD in Spring + Hibernate
  • Data-Driven Application Design
  • Integrating Hibernate with Spring
  • Persisting Data with Hibernate
  • Getting Started with Hibernate
  • Data Persistence & ORMs
  • Using the MVC Architecture with Spring
  • Modeling, Storing, and Presenting Data with Spring
  • Creating Spring Controllers and Thymeleaf Views
  • Spring Components and Configuring Our App
  • Setting Up Your Local Environment for Spring Development
  • Hello, GitHub!
  • Express Middleware
  • Sessions and Cookies
  • User Registration and Login
  • What is Authentication?
  • Completing and Testing the API
  • Communicating with Mongo Through Mongoose
  • Modeling Data for the API
  • Building API Routes in Express
  • Building a REST Service
  • Simple Mobile Interface
  • Exporting Designs
  • Sketch Features
  • Introducing Sketch
  • Data Binding with D3
  • Selections with D3
  • Generics with Swift 2 - Beyond Basics
  • Generics with Swift 2
  • Next Steps
  • Improving Our Tests
  • Behavior Driven Development with Mocha & Chai
  • Introducing Unit Testing
  • Getting the REST You Need
  • What Are Design Patterns?
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Getting Started with MongoDB
  • Error Handling in Swift 2.0
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • Prototyping With Bootstrap
  • Introduction to Front-End Frameworks
  • Controllers
  • Routes and Templates
  • Getting Started with Ember.js
  • Doing More with Express
  • Serving Static Files in Express
  • Using Templates with Express
  • The Request and Response Objects in Express
  • Developing Express Apps Like a Boss
  • Getting Started with Express
  • Updating and Uninstalling Packages with npm
  • Installing Packages with npm
  • What is npm?
  • HTTP Methods and Headers
  • Creating a Basic Template Engine in Node.js
  • Handling Routes in Node.js
  • Creating a Simple Server in Node.js
  • Building a Command Line Application
  • Introduction to Node.js
  • WWW
  • What to Test
  • How To Test
  • Why Test
  • Designing our App
  • Wireframing, Interaction Design and Planning
  • ADS Writing and Preparation
  • Introduction to UI Design
  • The Internet
  • Combine and Minify Assets
  • Optimize Assets
  • Measuring Performance
  • Planning for Performance
  • What is User Experience (UX)?
  • Using Java's Built-In Annotations
  • Design a Better App
  • Graphical User Interfaces
  • The Unity Editor and Scene Setup
  • Getting Started with Android
  • Introduction to Video Games
  • Ruby Operators
  • Ruby Methods
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • How Ruby Works
  • Cleaner Code
  • Local Python
  • Hack-n-Slash
  • Python Inheritance
  • Python Objects
  • Dungeon Game
  • Tuples
  • Dictionaries
  • Slices
  • Lists Redux
  • Pick a Number! Any Number!
  • Putting the "Fun" Back in "Functions"
  • Shopping List
  • Things That Count
  • Ins & Outs
  • Say Hello to Python
  • Creating Flexible Objects with Protocols
  • Protocols
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Closures in iOS
  • Closures and Closure Expressions
  • Functions as First Class Citizens
  • Cocoapods
  • A Lifestyle Choice
  • Adding and Editing Content
  • Getting a WordPress Site
  • Getting Started with WordPress
  • Displaying Our Weather Data
  • Data Modeling With Structures
  • Concurrency
  • Pulling Data From the Web
  • Refactoring Our Code (Swift)
  • Building the Master and Detail Views (Swift)
  • Building a Music Library and Playlists (Swift)
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Deploying to a Device
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Views and View Controllers
  • Getting Started with Xcode
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • Introduction to jQuery
  • AngularJS MVC Frameworks
  • Layer Basics
  • Workspace Basics
  • Computer Languages
  • Computer Basics
  • DNS Basics
  • Graphic Basics
  • Website Basics
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • The Logo Sprint
  • Logo Design 101
  • Design Foundations Final
  • Becoming a Problem Solver
  • HTML First
  • Understanding Aesthetics
  • Introduction to Design
  • Reading Data from Databases with SQL
  • Installing MySQL Server and MySQL Workbench
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Moving Around in the Console
  • Metrics
  • Sales
  • Pricing
  • Financing Your Company
  • From Idea to Execution
  • Web Apps
  • Websites
  • Introduction
  • Customizing Google Maps
  • Google Maps Integration
  • jQuery Plugins
  • Form Validation and Manipulation
  • Introduction to jQuery
  • JavaScript Objects
  • JavaScript Functions
  • JavaScript Arrays
  • JavaScript Numbers
  • JavaScript Strings
  • Introduction Variables
  • Color Theory
  • Principles
  • Elements
  • Video Marketing
  • Email Marketing
  • Search Engine Optimization
  • Usability Testing
  • Usability Basics
  • Social Media
  • Making Money
  • Marketing Strategy
  • Introduction to Accounting
  • Marketing Basics
  • Forming Your Company
  • Corporate Structure
  • Why Start a Business?
  • Introduction to Data, Databases and SQL
  • Paginating a List: Model and View
  • Paginating a List: Controller
  • Adding Search: Model
  • Adding Search: Controller & View
  • Refactoring the Codebase
  • Cleaning URLs with Rewrite Rules
  • Cleaning URLs with Subfolders
  • Integrating Validation Errors
  • Simple PHP Application: Wrapping Up The Project
  • Working with PHP Functions
  • Integrating With Paypal
  • Listing Inventory Items
  • Adding a Contact Form
  • Creating the Menu and Footer
  • Getting Started with PHP
  • Advanced Techniques
  • Responsive Design
  • Adaptive Design
  • Fluid Foundation
  • Introduction to Responsive Web Design
  • Media Queries
  • CSS Animations
  • Transitions and Transforms
  • Flexbox and Multi-Column Layout
  • Gradients
  • Web Typography
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • Backgrounds and Borders
  • CSS Box Model
  • Text, Fonts, and Lists
  • Values and Units
  • Advanced Selectors
  • Selectors
  • Getting Started with CSS
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • Launching the Website
  • Styling Content
  • Creating a Website Structure
  • Text Editors and HTML
  • Website Basics
  • Newbie