Inspiration

Doing math and solving equations is still a pain to do without a pencil and a piece of paper. I wanted to create an application that could speed up doing physics homework. More seriously, I was very excited to make a project all on my own without any prior knowledge; I just dove right in and got obsessed until it was done!

What it does

Phynx acts an enhanced calculator. With quick references to Physics formulas and constants, It makes solving systems of equations a whole lot easier.

How I built it

I downloaded the android studio and started reading lots of tutorials. Files for saving and loading are encoded in JSON. Most Markup is generated programmatically, I did very little actual XML considering the application creates everything based on taps and user inputs.

Challenges I ran into

I had never done any kind of mobile development before nor did I have a background in Java! I'm more of a C++ kind of guy, though it wasn't hard to switch over. The overwhelming challenge was getting used to the Activity and Fragment structure of android applications.

Accomplishments that I'm proud of

I've never built an android app before! I was very proud of myself to complete a fully functional app, one that I believe might be of use to people. Honestly, I put in about 80 hours of work into this application in the past week (on top of a 40 hour work week) - I haven't slept in two nights. While I typically do not condone that lack of sleep I'm proud of my perseverance.

What I learned

I really had to keep pushing to get this one the way I wanted it. I had a finished version about 20 iterations ago and I could have said "good enough." I decided to keep improving and adding new features like the powerful formula builder.

What's next for Phynx

Phynx was designed to be easily expandable. Because of Formula Builder, there is no limit to how much a user can add to the experience. What I would like to do next with Phynx is add more content sets that format seamlessly with the physics constants.

Built With

Share this project:
×

Updates