March 29, 2021

Made My First NFT Sale on OpenSea!

About my journey so far: I created my OpenSea account about two weeks ago. It cost me about $100 to get started: $20 in transaction fees to get Etherium into my MetaMask wallet and then about $80 in Etherium gas fees to create my first collection. I used this website to watch gas prices for a couple of days to see when gas prices tended to be lowest:

Since then I have been uploading a few panda NFTs every day. I have been working on my 1000 pandas project, so I have almost 100 panda images as a backlog ready to upload as NFTs. Once I've caught up with my backlog I will create the NFTs as I create the pandas.

When I create an NFT, I have been creating a supply of 1000 for each item (add "?enable_supply=true" to the end of the create URL to be able to change the supply of your OpenSea NFTs). When I finally finish making all 1000 pandas and making 1000 NFTs of each, that will end up being 1 million panda NFTs!

I did this so I could experiment, and what I'm experimenting with right now is pricing. I started out with high prices, like 0.1 ETH (around $170 USD), but I have been dropping the price lower and lower. I'm setting all of my NFTs at fixed prices.

My first sale was of this panda, Orange Glow Panda #74, for 0.0011 ETH (around $2 USD).
Because it had a fixed price, the sale went through without me doing anything. I just got an email saying I had made a sale. Obviously, I haven't even broken even yet, but it was still exciting to get the email! The next thing to do is figure out what I want to do with all 0.0011 ETH I got from the sale.

January 04, 2021

App Stats: Time Progress Bars

Time for some app stats!

My newest app, Time Progress Bars, was released on the Google Play Store in October 2020.

Total downloads - 784

Active downloads - 446

Revenue - $12.75

My share of revenue - $8.92

The app has translations for 100+ languages. About half of the downloads are from non-English-speaking countries.

I'm not running ads in this app. All revenue is from an in-app purchase that lets users change the color scheme.

October 06, 2020

New App! Time Progress Bars


On Google Play:

  • A fun way to visualize time
  • Includes a resizable home screen widget
  • Available in over 100 languages

Inspired by one of my favorite Twitter accounts:

August 10, 2020

New App! Latitude and Longitude


Kotlin code on GitHub:

Get the app on Google Play:

-Uses Google's location API to display Latitude and Longitude coordinates

-Coordinates make take a minute or two to update when refreshing

-Available in 100 languages

August 06, 2020

Progress Bars - updating 1% at a time

I'm working on an app that shows time progress bars. I wanted the minute progress bar in this app to tick up 1% at a time. I knew that with 60000 milliseconds in a minute, this meant that updating the progress bar every 600 milliseconds should do the trick. My calculations weren't originally precise enough, however, and you can see that before the progress bar would skip 1-3% instead of 1% at a time. This was because I was doing calculations with seconds as an Int. After I switched to doing my division with Longs instead of Integers it worked great! Code on GitHub:

July 08, 2020

Video: Scorekeeper App Preview

I receive a lot of reviews of scorekeeper asking for the ability to edit the names of players, which is a feature already available through long-pressing on the player name. Apparently, long-pressing is not something intuitive to try for some people, so they are left without the ability to change the player name. I hope this video preview helps make it easier for users to understand how the app works and how to get to additional features already available to them.

May 06, 2020

50k Downloads of Scorekeeper!

I released Scorekeeper, my first app, on the Google Play Store three years ago. It recently reached 50,000 downloads! I'm excited something I made could be useful to so many people and hope I can keep making more and better apps going forward.

April 30, 2020

Recursive Fibonacci Rabbits with Python

Let's say we have some magical rabbits. These rabbits never die. A pair of rabbits has 3 more pairs of rabbits in every litter, and they start producing litters after one generation. If you start with one pair of rabbits, how many rabbits will you have in 5 generations?

This was the premise of a problem I was working on this week in Python (check out the full problem here: I had to draw it out on my white board to wrap my head around it:

The idea behind this problem is that finding the number of rabbits in a given generation is similar to calculating a given number in the Fibonacci sequence and that it can be solved recursively, so that's how I did it.

Recursive rabbit solution:

It doesn't really have to be done recursively, though. I was talking through it with Steven, and we realized that the manual approach I had used on the whiteboard was also fairly efficient. Turns out it can be implemented in fewer lines of code as well.

Non-recursive rabbit solution: