Android Custom Views: Creating an Animated Pie Chart from Scratch (Part 2 of 4)

by

Introduction to Part 2

In Part 1 of this series, we covered the basics of custom views, including: deciding if a custom view is the best solution to your problem, the three basic methods for creating a custom view, and the required constructors you’ll need to implement when subclassing the View class.

Innovations in consumer retail banking

by

Consumer retail banking is what most of us know simply as banking, or managing our money in a larger sense — the process by which individual consumers use bank branches or services to open accounts, take out loans, set up credit and debit cards, deposit checks, etc. The consumer retail banking industry is highly regulated and has been historically resistant to innovation, but both governments and financial technology companies have recently begun to push forward some interesting and exciting changes — several of which I’ll cover in this post. 

Passwords, security, and you

by

With so much of our personal information stored online, and with security breaches frequently in the news, password security is a big concern for Internet users and developers. In this post, I’ll talk a bit about the different ways passwords can be hacked, the concept of entropy in password security, steps you can take to make your websites or accounts more secure, and how we might expect password technology to evolve over the next few years. 

RailsConf 2019 Recap

by

In early May, a small group of Grio engineers (myself included) travelled to Minneapolis for RailsConf. Although I’ve presented at conferences in the past, this was my first time attending a tech conference exclusively to learn, and I had a great time. In this post, I’ll give a quick recap of my favorite talks, and pass on a few things that I learned from the experience overall.

An introduction to design thinking

by

The Grio design team has grown in both size and expertise over the past few years, and as our Design Manager, I spend a fair amount of time thinking about how we can improve our tools and processes to continue supporting that growth. One step I’ve taken has been to formally integrate a design thinking approach into all of our projects. In this post, I’ll provide a brief introduction to design thinking, explain how it works in practice, and dig into the critical role of empathy in good design.  

Music Composition & Artificial Intelligence: Part 2

by

In Part 1 of this series, we dug into the technical side of AI music composition, including neural network and algorithmic methods. Now, I’d like to step back and focus on a different set of questions:

  • Can AI-composed music be good, i.e., will BeyoncAI ever rival the real Beyoncé?
  • How might AI change the music industry?
  • Who owns the rights to AI-composed music?

Music Composition & Artificial Intelligence: Part 1

by

Humans have been making music for as long as we can remember — but the tools and methods we use to do so have evolved significantly, from simple wooden drums, to wind and string instruments, to electronic synthesizers. And now, with projects like Google’s Magenta and Sony’s FlowMachines, we’re beginning to see the emergence of music that’s not just played by computers, but actually composed by artificial intelligence.

5 psychology principles for designers

by

As a designer, I’ve thought a lot about what makes a product “user friendly.” I know that certain combinations of color, typography, layout, and interaction feel more relevant and intuitive than others — but why? What are the underlying factors that make one interface meaningful and easy to navigate, while another is opaque and confusing?

Android Custom Views: Creating an Animated Pie Chart from Scratch (Part 1 of 4)

by

Introduction to Part 1

This post is the first in a four-part series on creating Android custom views, and covers a few introductory topics, including: how to decide if a custom view is the best solution to your problem, the three basic methods for creating a custom view, and the required constructors you’ll need to implement when subclassing the View class.