Franklin Byaruhanga

Franklin Byaruhanga

Member Since January 16, 2017
Open to Work

Franklin is a Telecom engineer turned indie iOS Developer. Previously worked at Ericsson. He is passionate about Building/Tinkering/Learning/open-source & sometimes breaking things for iPhones when Xcode is in a 😀 Good Mood.

9,984

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

139 Achievements

  • Downloading Album Artwork
  • Requesting Real Data
  • Enhancing the iTunes Endpoint
  • URLs and Parameter Encoding
  • Building the User Interface
  • Modeling iTunes Search Results
  • Decoupling the Data Source
  • Sorting Contacts Into Sections
  • Static Table Views for Detail Interfaces
  • Displaying Contact Data
  • A High Level Overview
  • Designing for iOS
  • Working With Human Interface Guidelines
  • Getting Started With iOS Development
  • Error Handling
  • Dynamic Keys and Inheritance
  • Parsing Different JSON Structures
  • Parsing to Non-Primitive Types
  • An Overview of Codable
  • Refactoring Using Codable
  • Dark Sky API Client
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Creating a Long Term Business
  • Protecting Yourself With Contracts
  • Establishing a Proper Workflow
  • Pricing and Project Proposals
  • Finding Your First Project
  • Starting a Freelance Career
  • Regular Expressions
  • Adding Sound Effects
  • Personalizing The Story
  • Refactoring Our Code
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through An Adventure
  • Recursion and Space Complexity
  • Algorithms in Code
  • Time Complexity
  • Playing a Counting Game
  • Generics and Protocols
  • Generic Types
  • Generic Functions, Parameters and Constraints
  • Error Handling and Memory Management
  • Building Standard Library Functions
  • Closure Expressions
  • First Class Functions
  • Putting It All Together
  • Embracing the Process
  • Curating the Work
  • Portfolio Goals
  • Demystifying the Portfolio
  • Using Slack Effectively
  • Introducing Slack for the Techdegree
  • Scrum Artifacts
  • Scrum Events
  • Introducing Scrum
  • What is Agile?
  • Improving Quality Assurance Practices
  • Bug Reporting
  • Executing Tests
  • Writing Manual Test Cases
  • Why We Test
  • How to Make Wireframes in Adobe XD
  • How to Make Wireframes in Sketch
  • How to Make Wireframes in Balsamiq
  • How to Make Wireframes on Paper
  • What is Wireframing?
  • Persuasive Patterns
  • UI Patterns
  • Designing with Patterns
  • Working with a Developer
  • Designing our App
  • Wireframing, Interaction Design and Planning
  • ADS Writing and Preparation
  • Getting the REST You Need 2
  • Reusable GraphQL
  • Making Changes with Mutations
  • Fetching Data with Queries
  • Getting Started with GraphQL
  • The Design Solution
  • The Design Problem
  • Planning Your Users’ Journey
  • Strategy: Determining Goals for your Product
  • Understanding Our Users
  • Intro to User Experience (UX) Design
  • Design Principles
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Inserting and Saving Data Using a Context
  • Understanding the Core Data Stack
  • 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
  • GitHub and Other Remote Repositories
  • Managing Committed Files
  • First Commits
  • Properties
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling an Interface
  • Error Handling
  • Creating Flexible Objects Using Protocols
  • Protocol Basics
  • 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 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 UI Design
  • What is Product Design?
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Python Data Types
  • Computer Languages
  • Computer Basics
  • Python For Beginners
  • Newbie