Greg Kaleka

Greg Kaleka

Portland

Hi! I'm a sharp, curious professional looking to expand my horizons. I love learning new things, and would love to transition into a career in which I'm building things. I've fallen in love with programming, and can't wait to see where it takes me.

39,007

Total Points

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

Skills & Experience

  • Spoken Languages

    • English
    • French
  • Looking for work

    Yes

431 Achievements

  • Introducing Props
  • Thinking in Components
  • First Steps in React
  • How Jenkins Works
  • Exploring Arrays
  • Recursion and Space Complexity
  • Introduction to Object-Oriented JavaScript
  • Algorithms in Code
  • Time Complexity
  • Playing a Counting Game
  • Searching Names
  • Sorting Algorithms
  • S3 Storage Service
  • AWS and "The Cloud"
  • Using Lists
  • Build an Application
  • Meet Lists
  • Functions and Looping
  • All Together Now
  • Meet Python
  • Types and Branching
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Writing a Classifier
  • Getting Started with Data Visualization
  • Machine Learning Vocabulary
  • Introduction to Machine Learning
  • Big Data at Netflix
  • Where and How Big Data Is Used
  • What is Big Data
  • Practicing Data Visualization in Excel
  • Chart Formatting and Layout
  • When To Use What Type of Chart
  • Introduction To Data Visualization
  • The Lambda Lambada
  • Functional Workhorses
  • Functional Rules
  • Dockerize a Web App
  • Managing Images and Containers
  • Building Images Using Dockerfiles
  • Fundamentals of Docker
  • Docker Use Cases
  • Meet Selenium
  • Character Builder
  • Flask Templates
  • Welcome to Flask
  • Users and Authorization
  • Django Authentication
  • Security and Customization
  • Make the REST Framework Work for You
  • RESTful Django
  • Customizing Class-based Views
  • Classy Views
  • Detail View
  • List View
  • Security: Solutions
  • Security: Concerns
  • The Django Admin
  • Total Control
  • Basic ORM Usage
  • Same Old ORM
  • Inlines and Media
  • Django Model Forms
  • Django Models
  • Django Forms
  • Building Custom Filters
  • Building Custom Tags
  • Template Tags and Filters
  • Test Time!
  • Final Details
  • Django Templates
  • Model Administration
  • What a View
  • Say Hello to Django
  • Getting the REST You Need
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • 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
  • Covering Your Bases
  • Be Assertive!
  • What Is Testing?
  • Python Regular Expressions
  • Timezones
  • Math Quiz App
  • Dates and Times
  • Gettin' CRUD-y With It
  • Buggy Logs
  • Cleaner Code
  • Dice Roller
  • Python: Advanced Objects
  • Python: Inheritance
  • Python: Instant Objects
  • Dungeon Game 2
  • Python Sets
  • Python Tuples
  • Python Dictionaries
  • Python Slices
  • Python Lists
  • Letter Game App
  • Number Game App
  • Shopping List App
  • Logic in Python
  • Python Data Types
  • Python For Beginners
  • Getting Started with MongoDB
  • Go Further With Mongo
  • Working With Collections
  • Understanding MongoDB
  • Day 3: Getting Creative
  • Day 2: Advanced Selecting
  • Day 1: Joining Tables
  • Orientation: Selecting Data
  • Our Diary App
  • Meet Peewee
  • Subqueries
  • Set Operations
  • Joining Table Data with SQL
  • Table Relationships
  • Database Keys
  • Database Normalization
  • Date and Time Functions
  • Aggregate and Numeric Functions
  • Working with Text
  • Ordering, Limiting and Paging Results
  • 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
  • Writing Great Swift
  • Auto Layout in Code
  • Trait Collections
  • Inequalities, Content and Priorities
  • The Constraint Equation
  • A History Lesson
  • Introduction to UITableView
  • Delegation in iOS
  • Introduction to Delegates
  • Query Interface
  • Validation
  • Migrations and Relationships
  • Introduction to ActiveRecord
  • Build a Todo List Application with Rails 4
  • Memory Management in Swift 2
  • Generics with Swift 2 - Beyond Basics
  • Generics with Swift 2
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization in Swift 2
  • Properties in Swift 2
  • Next Week's Weather
  • Upgrading Stormy
  • Introduction to Table Views
  • Refreshing the Data
  • Running Apps on a Device
  • Improving Our User Interface
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling An Interface
  • Structs as Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Control Flow With Loops
  • Swift Dictionaries
  • Control Flow with Conditional Statements
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Adding Weather Icons
  • Managing Complexity
  • Interacting With Data From the Web
  • Error Handling in Swift 2.0
  • Creating Flexible Objects Using Protocols
  • Swift 2.0 Protocols
  • Objects and Optionals
  • Introduction to Optionals
  • Introduction to Enumerations
  • Creating an SVG
  • Differentiating Between Objects
  • Class Inheritance
  • Introduction to SVG
  • Graphic Basics
  • Website Basics
  • Simple Data Structures
  • Function Parameters
  • Functions in Swift 2.0
  • Classes
  • Complex Data Structures
  • Learn About Drupal
  • Web Apps
  • Websites
  • Introduction
  • Quiz Practice Project
  • Prototypal Inheritance
  • Constructor Functions & Prototypes
  • Going Mobile
  • Introduction to Methods
  • Querying the Database
  • AJAX and APIs
  • jQuery and AJAX
  • Programming AJAX
  • AJAX Concepts
  • Custom Media Players
  • Captioning Video
  • Media Basics
  • Traversing and Manipulating the DOM with JavaScript
  • Selecting Elements and Adding Events with JavaScript
  • JavaScript and the DOM
  • Structuring Tables
  • Table Basics
  • Choosing Options
  • Organizing Forms
  • Form Basics
  • Organizing your Tests
  • Chrome DevTools Basics
  • Designing Email with CSS
  • Coding HTML Email
  • HTML Email Basics
  • Introduction to Front-End Frameworks
  • Relating Models
  • Laravel CRUD
  • Validation & Flash Messages
  • Laravel Forms
  • Laravel & Databases
  • Laravel Controllers
  • Laravel Project Setup
  • Connecting to MySQL
  • Introducing Scrum
  • What is Agile?
  • Creating Your Tests
  • Tools for Testers
  • How To Test Our Code
  • Getting Started with Sass
  • Improving your Gulp Workflow
  • Compile Sass with Gulp
  • Gulp your JavaScript workflow!
  • Welcome to Gulp.js
  • What is the MailChimp API
  • Getting Started with WordPress
  • Better SEO Through Tools
  • Better SEO Through Content
  • Introduction to SEO
  • Better SEO Through Code
  • Laravel Getting Started
  • Contact Forms & Mailers
  • Slim and Templates
  • Dependency Management
  • Installing a Ruby Development Environment
  • Ruby Methods
  • Ruby Numbers (Ruby Basics)
  • Ruby Strings (Ruby Basics)
  • How Ruby Works
  • Adding a Blog to a WordPress Theme
  • Custom Post Type Templates
  • Building Out WordPress Navigation
  • Building Page Templates in WordPress
  • The WordPress Loop
  • WordPress Header and Footer Templates
  • Working with CSS and JS in WordPress Themes
  • Starting a WordPress Theme
  • Local WordPress Development
  • Advanced Selectors
  • Going Further with Attribute Selectors and Pseudo-Classes
  • Selectors - Beyond the Basics
  • Responsive Patterns
  • Media Queries
  • Responsive Theory
  • Building a Music Library and Playlists (Swift)
  • Workflows
  • Working With Remote Repositories
  • Merging
  • Branches
  • Getting Started With Git
  • Why Version Control Matters
  • Installing Programs
  • Environment and Redirection
  • Console Processes
  • Console Users and Permission
  • Creating a Simple Drawing Application
  • JavaScript Objects
  • JavaScript Arrays
  • Creating a Password Confirmation Form
  • Creating a Mobile Drop Down Menu
  • JavaScript Loops
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Database Security
  • Queries & Results
  • Getting Started with PDO
  • PHP Inheritance & Interfaces
  • PHP Properties & Methods
  • PHP Objects and Classes
  • Securing and Maintaining a MySQL Database
  • SQL Calculating, Aggregating and Other Functions
  • Joining Relational Data Between Tables in SQL
  • Manipulating Schema with SQL
  • Fundamental Concepts
  • Designing with the Latest Features
  • Basic Layout
  • Creating Tables and Manipulating Data with SQL
  • Reading Data from Databases with SQL
  • The Box Model
  • Understanding Values and Units
  • Basic Selectors
  • Getting Started with CSS
  • Installing MySQL Server and MySQL Workbench
  • 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
  • Swift Value vs Reference Types
  • Swift Properties
  • Swift Inheritance
  • Swift Classes and Objects
  • The WordPress Codex
  • WordPress Plugin Best Practices
  • Widgets and Custom Menus
  • Custom Post Types and Fields
  • Customizing WordPress Themes
  • WordPress Themes
  • Installing Wordpress
  • Working with PHP Functions
  • Integrating With Paypal
  • Moving Around in the Console
  • PHP Internal Functions
  • PHP Returns & Closures
  • PHP Functions Basics
  • PHP Loops
  • PHP Conditionals
  • PHP Datatypes
  • PHP Data & Structure
  • PHP Getting Started
  • Listing Inventory Items
  • Adding a Contact Form
  • Creating the Menu and Footer
  • Getting Started with PHP
  • Functions
  • Objects and Arrays
  • Control Structures
  • Basics
  • Forms
  • Tables
  • Objects
  • Links
  • Lists
  • Text
  • Introduction
  • Debugging HTML and CSS Problems
  • Sharing a Website
  • Responsive Web Design and Testing
  • Adding Pages to a Website
  • Styling Web Pages and Navigation
  • Customizing Colors and Fonts
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Product Market Fit
  • Using a Navigation Controller With Segues (Swift)
  • Working With Multiple View Controllers (Swift)
  • Discovery
  • Shopping List
  • Things That Count
  • Ins & Outs
  • Say Hello to Python
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Swift Enums
  • Intro to Sprite Kit
  • Cocoapods
  • Displaying Our Weather Data
  • Data Modeling With Structures
  • Concurrency
  • Pulling Data From the Web
  • Deploying to a Device
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Views and View Controllers
  • Getting Started with Xcode
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • Designing and Starting the App
  • Viewing a Web Page
  • Adapting Data for Display
  • Data Modeling
  • Getting Data from the Web
  • Rebuilding from Scratch
  • Exploring the Master-Detail Template
  • Testing and Debugging
  • Animate This (iOS7)
  • Designing your App
  • Refactoring into a Model
  • Creating a Data Collection
  • Understanding Views and View Controllers
  • Getting Started (iOS7)
  • Beyond the Basics
  • Advanced Objective-C
  • Foundation Framework
  • Introduction to Objective-C
  • Pointers and Memory
  • Functional Programming in C
  • Fundamentals of C
  • Newbie