Evans Attafuah

Evans Attafuah

Ghana

18,277

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

    Digital Benders

  • Job Title

    Interactions Designer

  • Spoken Languages

    • English
  • Looking for work

    Yes

222 Achievements

  • Designing with Patterns
  • The Design Solution
  • The Design Problem
  • Design Principles
  • What is Product Design?
  • Start menu and App Icon
  • Sound Design
  • Animating and Saving Sprites
  • Particle Systems and Keeping Score
  • Designing Characters and a Scene
  • Introduction to Game Design
  • Artificial Intelligence and Sound
  • Physics and Collision
  • Actions and Animations
  • Game Loop and Texture Atlas
  • Intro to Sprite Kit
  • Personalizing The Story
  • Refactoring Our Code
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through An Adventure
  • Using the Delegate Pattern in iOS
  • The Delegate Pattern
  • Writing Great Swift
  • Access Control
  • Memory Management in Swift
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization
  • Properties
  • Error Handling
  • Creating Flexible Objects Using Protocols
  • Protocol Basics
  • Objects and Optionals
  • Introduction to Optionals
  • Introduction to Enumerations
  • Differentiating Between Objects
  • Class Inheritance
  • Classes in Swift
  • Complex Data Structures
  • Adding Power to Functions
  • Functions in Swift
  • Control Flow With Conditional Statements
  • Control Flow With Loops
  • Dictionaries in Swift
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Stateful Components
  • Thinking in Components
  • First Steps in React
  • Threads in Android
  • Introduction to Video Games
  • Using the Vending Machine
  • 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
  • Loading Data From a Resource
  • Modeling An Interface
  • Memory Management in Swift 2
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Object Initialization in Swift 2
  • Properties in Swift 2
  • Error Handling in Swift 2.0
  • Creating Flexible Objects Using Protocols
  • Introducing SharedPreferences
  • The Activity Lifecycle
  • 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
  • Function Parameters
  • Functions in Swift 2.0
  • Control Flow with Conditional Statements
  • Control Flow With Loops
  • Swift Dictionaries
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Testing and Debugging
  • Improving Our Code
  • Basic Android Programming
  • Creating the Screen Layout
  • Getting Started with Android
  • Social Media
  • Next Steps
  • Financing Our Company
  • Selling Your Product
  • Marketing Your Product
  • Product Market Fit
  • Delegation in iOS
  • Introduction to Delegates
  • Creating Flexible Objects with Protocols
  • Protocols
  • Introducing Scrum
  • What is Agile?
  • Discovery
  • Interacting with Google+ APIs
  • Closures in iOS
  • Closures and Closure Expressions
  • Connecting to Play Services
  • Functions as First Class Citizens
  • Delivering the MVP
  • Interacting with Your API
  • Adding Play Services to Your App
  • HTML First
  • Finishing the User Interface
  • The Model-View-Controller Pattern
  • Intents and Multiple Activities
  • User Input
  • Migrating a SQLite Database
  • CRUD Operations with SQLite
  • Using SQLite for Structured Data
  • Key-Value Saving with SharedPreferences
  • File Storage
  • Introduction to Data Persistence
  • Acting on List Item Taps
  • Lists with RecyclerViews
  • Using Parcelable Data
  • Custom ListViews
  • Standard ListViews
  • Updating the Data Model
  • Hooking up the Model to the View
  • Building the Weather UI
  • Simple Mobile Interface
  • Sketch Features
  • Exporting Designs
  • Introducing Sketch
  • Working with JSON
  • Concurrency and Error Handling
  • Networking
  • Exploring an API
  • Adding Push Notifications from Parse.com
  • Updating Other GridViews
  • Customizing a ListView for the Inbox
  • Customizing a GridView for Friends
  • Customizing the Action Bar
  • 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)
  • Using Custom Styles and Themes
  • Swift Value vs Reference Types
  • Swift Properties
  • Customizing the Login Screen
  • Swift Inheritance
  • Starting with Design Mockups
  • Self-Destruction
  • Swift Classes and Objects
  • Retrieving and Viewing Messages
  • Sending Messages
  • Capturing Photos and Videos
  • Displaying Our Weather Data
  • Creating the MVP
  • Harnessing the Power of Objects
  • Meet Objects
  • Beginning HTML and CSS
  • Cocoapods
  • Using Intents to Display and Share Posts
  • Data Modeling With Structures
  • Adapting Data for Display in a List
  • Getting Data from the Web
  • Relating Users in Parse.com
  • Publishing on Google Play
  • Testing and Debugging
  • Improving Our Code
  • Coding the Fun Facts
  • Basic Android Programming
  • Creating the Initial Screen Layout
  • Getting Started with Android
  • Concurrency
  • Perfecting the Prototype
  • Using your New Tools
  • Getting Started with Java
  • Pulling Data From the Web
  • Rebuilding from Scratch
  • AngularJS MVC Frameworks
  • Deploying to a Device
  • Exploring the Master-Detail Template
  • Debugging Our App
  • Improving Our User Interface
  • Using a Data Model
  • Using Fragments for Tabs
  • Views and View Controllers
  • Getting Started with Xcode
  • Swift Optionals
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Adding Users Using Parse.com
  • Starting the App
  • Swift Structs and their Methods
  • Swift Structs
  • Swift Enums and their Methods
  • Using Git for Android
  • Getting Started with Genymotion
  • Getting Started with Android Studio
  • Introduction to Responsive Web Design
  • Swift Enums
  • Operators
  • Types
  • Variables and Constants
  • Getting Started with WordPress
  • Newbie