top | item 20700198

(no title)

darshan | 6 years ago

Hi, all. OP / owner / founder here.

I’m finally launching a product that’s taken me years longer than I’d anticipated to complete. It’s a much bigger project than anything I’ve done before. My first app was the first battery indicator on Android, back in 2009, which was very successful by my standards (I didn’t have a college degree at the time and made way more money from it than I’d ever made from a job.) I also have a free instrument tuner on the Play Store.

Swap-a-Doodle aims much higher, and was quite an undertaking for me. It’s a cross-platform app (Android, iOS, and the web) for social drawing. I knew nothing about computer graphics when I started out, and just a bit about web programming. I learned so much along the way. I’m sure I’ll learn a lot more as the app grows.

The front end is written in Dart. The back end is written in Go and runs on App Engine, with Compute Engine for the websocket servers for live drawing (sharing a canvas with a friend to draw together at the same time). The Android and iOS apps are fairly small wrappers around the web app.

Feel free to ask questions. I’m of course open to feedback, or I wouldn’t post here — but I do feel somewhat vulnerable in this surreal moment of finally launching, so please keep that in mind and try to be kind if you do have criticism, and maybe frame it as “something that could be even better,” if that’s not too much of an ask. Thanks!

discuss

order

cutler|6 years ago

Why re-invent the wheel? If you're going to use Dart on the front-end surely Flutter is the obvious choice?

darshan|6 years ago

When I first started making the app, Dart existed, but Flutter didn't. Then Flutter existed, but didn't support the web. I thought that was still true, but I just checked, and Flutter for web [https://flutter.dev/web] does now exist, as a technical preview ("When trying Flutter for web, you can expect to experience crashes and missing features.")

When Flutter came out, I looked into it, wondering if it might be worth switching my approach (I figured most of the Dart code would probably be able to stay the same). There were other deal breakers at the time, but I don't recall them.

Maybe once Flutter for web is production ready, it would make a compelling alternative, but for now it isn't an option. I'm not sure if would have made things harder or easier. But I'll be curious to check it out.

masonic|6 years ago

Note: if you draw, hit Share, then back out, it wiped my contents without a prompt.

darshan|6 years ago

Were you using it in a browser? If you just use "Forward" in the browser, you'll go back (that is, forward) to the doodle you created, if you accidentally back out of it. In the native apps you can't go "forward" again, but if you have a (free) account, all your created doodles are in your "Doodles" folder.

Or am I picking up on confusion about my general model (which I'm certainly open to feedback about). If you draw and don't share, but press back or try to leave the page, you're prompted about destructively leaving. Sharing creates the doodle and makes a link for you to share (or bookmark, or whatever you like), so the contents aren't considered wiped at that point; they're considered successfully sent.

Please let me know if I'm failing to understand what isn't working as you expect, of if you think my model is confusing to new users. Thanks!