Evans Attafuah

Evans Attafuah

Ghana
Open to Work

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

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