Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A few thoughts as someone who has developed games for iOS, Android, and the web:

In today's world, if you want to retain implicit ownership of your product's name, a simultaneous triple-platform release is not optional, it is required. It must be performed in precisely the following way, or your launch will fail:

- Register your game's domain before announcing it to the public.

- Next, upload your iOS app to iTunes Connect and wait for up to one week for the app to be approved.

- Next, upload your Android app to the Google Play store; approval only takes a few hours.

- Finally, make the web version public, and announce the game along with links to the mobile versions.

If you deviate from this order, then you're screwed. One example: I released a game on the web and waited one day to upload the Android version to the Google Play store. I figured that gave me a little extra time to test and check for bugs, and what's the rush anyway? Nobody could steal a game in just 24 hours, right? Wrong. My app was rejected because Google insisted my app was attempting to impersonate another developer's app. The other developer's app was simply my own website, stolen line for line, tossed into Phonegap, and released the same day as my website. I explained this to Google in the appeal form, even including a link proving I owned the site the other developer stole it from, and they rejected my appeal without checking the link - I could clearly see in my server logs that they never clicked on it. Google does not allow you to file a second appeal, so I had to give my app an awful name no one would recognize it by, and the clone received all the downloads and glory thanks to the buzz my website's name was generating for it.

Another example: I was the first to publish an iOS app with the same name as my website. After the app had been waiting for review for four days, I figured it would be approved any moment now, and that it was safe for me to launch my website. I launched, and it turns out that Apple's app review process is not FIFO, because two days later, a clone with the same name and all the code stolen from my site was already approved for iOS, yet my own app was still waiting for review. My app was then rejected a few days later because it had the same name as an app that stole my code... again.

Gabriele Cirulli is an extremely unlucky man stuck in an extremely unfair landscape, and I cannot fault him for wallowing in the first of the five stages of grief. If Flappy Bird's alleged $50,000/day income can safely be assumed to be the average earned by the ads on any given #1 iTunes free app, then the entity which first claimed the name "2048" in iTunes Connect is currently a millionaire, because 2048 was at the very top of the iTunes free app charts for weeks. Gabriele seems to believe or hope that the masses will see his "repost" of his own app and be stricken by the desire to do the ethically right thing and uninstall all of the rushed clones and install the legitimate version and play it with all the fervor and excitement as if the global 2048 hype still currently existed. Unfortunately this will NEVER happen.

On a side note, Phonegap is only getting worse over time. Typical Adobe rot is setting in; the last version had a catastrophic bug causing the xml manifest to simply not be read during the build process, because a critical "for" loop was referencing the child element of a nonexistent variable. They swept this under the rug; countless hapless developers were mindlessly releasing broken apps during this period. Half of Phonegap's documentation refers to "Cordova" and executing "cordova" on the command line where it should say "Phonegap". Commands that have different names between Cordova and Phonegap are still documented as the Cordova equivalent, so one must use Google to find other people who searched for hours until they themselves came across the explanation that the same command in Phonegap requires the use of a completely different word. It is an absolute trainwreck, but aside from that, the primary issue for consumers now is that apps built with Phonegap no longer work correctly on newer versions of Android and haven't for months, which is why Gabriele's extremely simple and resource-minimal app is currently getting a bunch of 1- and 2-star reviews in the Google Play store with complaints about the speed.



Remember: your app doesn't have to be launched to the general public immediately after Apple's approval process is done. Just set an availability date in the future. You can then make it available manually when you are ready.

You can even submit an app that is not yet finished (if it is a game, it may be missing levels, for instance), as long as it is usable in the current state and does not crash. Of course, when you update you have to go through the process again, but at least the application name is yours already.

If simultaneous launch is required, that seems to be a better approach. I am not sure if the Play store has the option of not making the app available immediately after launch, but if it has, you could flip the switches all at once.

Also, do you have to release a web version? It doesn't seem to be paying off.


> The other developer's app was simply my own website, stolen line for line, tossed into Phonegap, and released the same day as my website.

> two days later, a clone with the same name and all the code stolen from my site was already approved for iOS

And there is no recourse when this happens? You can't report them?


As someone mentioned above, a lawyer. I feel it's extremely rare someone is going to steal an unreleased game in the first place, If you're a well known developer or big gaming company, maybe the probability goes up slightly, but even then, a big game success is still a shot in the dark.


> I feel it's extremely rare someone is going to steal an unreleased game in the first place

This seems like an example of people throwing things at the wall until something sticks. If all they have to do is copy-paste into (e.g.) PhoneGap, and submit it to an app store, then why not? If it takes off, then they get to reap the benefits. If it doesn't take off, then they've just wasted a little bit of time and effort.


If they literally copied your website, this is a simple case of copyright infringement. Source code, descriptive text and graphics are each individually subject to copyright. You should be able to file a DMCA request to remove the offending app. Assuming their app that copied yours was successful, a lawsuit for damages might be worthwhile.

Note that the simple concept of a game is not subject to copyright. Also note that your failure to register does not relieve the offending party of liability though it might remain advantageous to do so.

In short, talk with a lawyer.

Disclaimer: I am not a lawyer and the foregoing should not be construed as legal advice.


So what's your process for writing three different versions of an untried app without killing your productivity?


That's very interesting on how close you have to time the releases. Regarding Phonegap: I tried Cirulli's original app on the train this morning having read the article above. I found that there's a highly noticeable delay in reacting to swipes on my (brand new) Samsung S5, and that this was rather detrimental to my experience. As such, I can only conclude that Phonegap is best avoided if performance matters at all.

The native version I'd already installed by merit of it being amongst the highest ranked in Play store when searching for 2048 is fully responsive and fluid; unfortunately this clone does not pay any respect to Cirulli's work.

I'm happy to see a donation button on Cirulli's github page and will utilise it shortly.


There is a reason we have the patent and copyright system ;)


Regarding your Phonegap remarks in last paragraph. Are the described problems in Phonegap or in Phonegap Build? What about local Cordova?


The xml manifest bug I was referring to was introduced in the release build of Cordova 3.4.0. Here is a sample of some of the confusion caused at the time: https://groups.google.com/forum/#!topic/phonegap/ahzIwbUqr4A

Adobe apparently blindly tosses the current release build of Cordova into Phonegap without testing for bugs.

The existence of a bug was not hard to see: During the Android build process, one would see "ReferenceError: a is not defined" pop up multiple times.

I scoured google and even asked in #phonegap on freenode, and no one seemed to know what was going on yet. I found the cause of the bug by spending an hour poking through the source files. I then spent the rest of the day idling in #phonegap, explaining to the confused newcomers what they could do to fix their build. That was the first and last time I ever tried using Phonegap.


Thanks for the details!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: