Alexey Papin
seal-mask

Alexey Papin

Techdegree Graduate

Volgograd, Russia
Open to Work

26,950

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

    • russian
    • english

235 Achievements

  • Generics and Protocols
  • Generic Types
  • Generic Functions, Parameters and Constraints
  • Error Handling
  • Particle Systems and Keeping Score
  • Artificial Intelligence and Sound
  • Physics and Collision
  • Actions and Animations
  • Game Loop and Texture Atlas
  • Intro to Sprite Kit
  • Access Control
  • Memory Management in Swift
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization
  • Properties
  • Using the Delegate Pattern in iOS
  • The Delegate Pattern
  • What is Agile?
  • MVC
  • Notifications
  • KVC and KVO
  • Singletons
  • Two-stage Object Creation
  • What Are Design Patterns?
  • Intro to Unit Testing 2
  • Introduction to Unit Testing
  • Decoupling the Data
  • Saving Data with CloudKit
  • Recording a Voice Memo
  • Paged Scrolling
  • Understanding Scroll Views
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Inserting and Saving Data Using a Context
  • Understanding the Core Data Stack
  • Tying It All together
  • Diving Deeper
  • Memory, Arrays and Loops, Oh My!
  • Getting Oriented - Object-Oriented, That Is
  • Immersive Examples
  • Scope and Loops
  • More Operators
  • Operators and Conditionals
  • Data Types and Variables
  • Transitions, Gestures and More
  • Show Me the Data
  • Introduction to CollectionViews
  • Objective-C in Action
  • Intermediate Topics in Objective-C
  • The Objective-C Mindset
  • Basic Types, Structures and Syntax
  • Moving from Swift to Objective-C
  • Implementing a Forecast Client
  • Protocol Oriented Networking
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Visual Format Language
  • Auto Layout in Code
  • Trait Collections
  • Inequalities, Content and Priorities
  • The Constraint Equation
  • A History Lesson
  • Asynchronous Error Handling
  • Closures in Cocoa Touch
  • Building Standard Library Functions
  • Closure Expressions
  • First Class Functions
  • Generics with Swift 2 - Beyond Basics
  • Generics with Swift 2
  • Filtering the Data
  • Saving and Displaying Selfies
  • Adding Metadata to Photos
  • Adding Image Filters
  • Taking a Selfie
  • Adding Sound Effects
  • Refactoring the Model
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through an Adventure
  • Delegation in iOS
  • Implementing Maps and Search
  • Obtaining a Location Fix
  • Displaying Data in Table Views
  • Enhancing the Networking Stack
  • URLs and Parameter Encoding
  • Introduction to UITableView
  • Introduction to Delegates
  • Memory Management in Swift 2
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization in Swift 2
  • Properties in Swift 2
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling An Interface
  • Error Handling in Swift 2.0
  • Creating Flexible Objects Using Protocols
  • Swift 2.0 Protocols
  • Objects and Optionals
  • Introduction to Optionals
  • Introduction to Enumerations
  • Running Apps on a Device
  • Improving Our User Interface
  • Structs as Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Differentiating Between Objects
  • Class Inheritance
  • Classes
  • Complex Data Structures
  • Control Flow with Conditional Statements
  • Control Flow With Loops
  • Swift Dictionaries
  • Introduction to Collections
  • Function Parameters
  • Functions in Swift 2.0
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Intro to Objective-C
  • Creating a Mobile Drop Down Menu
  • Creating a Simple Lightbox
  • Creating a Spoiler Revealer
  • Introduction to jQuery
  • JavaScript Objects
  • JavaScript Arrays
  • JavaScript Loops
  • Treehouse Club - JavaScript
  • JavaScript Functions
  • JavaScript Conditional Statements
  • JavaScript Numbers
  • JavaScript Variables
  • Introducing JavaScript
  • Improving Our Todo App
  • Services in Angular
  • Using Angular's Built-in Directives
  • Controllers and Scope
  • Getting Started with Angular
  • Getting the REST You Need
  • 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
  • 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
  • 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
  • Writing Your Own Java Annotation
  • Using Java's Built-In Annotations
  • 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
  • Tablet Time
  • Ingredients and Directions
  • Managing Fragments
  • Introducing Fragments
  • The Project
  • Introducing SharedPreferences
  • The Activity Lifecycle
  • What to Test
  • Testing and Debugging
  • Improving Our Code
  • Coding the Fun Facts
  • Basic Android Programming
  • Creating the Initial Screen Layout
  • Getting Started with Android
  • Acting on List Item Taps
  • Lists with RecyclerViews
  • Using Parcelable Data
  • Custom ListViews
  • Standard ListViews
  • Updating the Data Model
  • Publishing on Google Play
  • Finishing the User Interface
  • The Model-View-Controller Pattern
  • Intents and Multiple Activities
  • User Input
  • Advanced Tooling
  • Bells and Whistles
  • Diving into Web Development
  • GET and POST Requests in a Browser
  • Introduction to HTTP
  • Customizing Colors and Fonts
  • CSS: Cascading Style Sheets
  • Creating HTML Content
  • HTML First
  • Beginning HTML and CSS
  • Interacting with Your API
  • Adding Play Services to Your App
  • Hooking up the Model to the View
  • Building the Weather UI
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Getting Started with Android
  • Event Planning
  • Build a Pomodoro App
  • Design a Better App
  • Graphical User Interfaces
  • How To Test
  • Why Test
  • IDE Exploration
  • How it Works
  • Efficiency!
  • Exploring the Java Collections Framework
  • Organizing Data
  • Getting There
  • Delivering the MVP
  • Creating the MVP
  • Harnessing the Power of Objects
  • Meet Objects
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Newbie