Another DMCA takedown of one of my Android apps. This time initiated by The New York Times Company for a three year old app titled “NYTimes Article Search”.Instead of having their lawyers send the DMCA notice to Google which immediately suspends the respective app, they could have just sent me an email and I’d have changed the name immediately. Quite sad how the world is driven by lawyers these days…
Google has been notified that aspects of your application, NYTimes Article Search, allegedly infringe upon the trademarks of others, and it has been removed from Android Market due to a violation of the Developer Content Policy. Please review the Content Policies and Business and Program Policies before you create or upload additional applications. Please note that violations may result in a suspension of your Android Market Publisher account, and may also result in actions, including possible suspension, taken against any associated Android Market publisher, AdSense, Google Checkout, or AdMob accounts.
Please note that we have included a text copy of the Infringement Notice we received for your reference.
If you have any further concerns about this issue, please address them directly to the complainant in the Infringement Notice provided below.
Regards, The Android Market Team
Text Copy of Infringement Notice: XXX@nytimes.com to XXX@google.com Reply – More info Dec 20Options ▾
AutoDetectedBrowser: Firefox 5 AutoDetectedOS: Windows XP IIILanguage: en IssueType: lr_trademark Language: en address: 620 Eighth Avenue New York, NY 10018 agree1: checked android_app_developer_1: Chris Hager android_app_name_1: NYTimes Article Search android_app_url_1:
Just a year ago Paul Irish and several contributors started working on html5-boilerplate, a popular repository of boilerplate and best practices for creating cross-browser compatible, html5-enabled websites.Thanks to the efforts of many front-end developers and researchers who have spent countless hours on developing and evolving best practices, html5 boilerplate is rapidly maturing and establishing itself as the de-facto standard html boilerplate.
The authors just celebrated the one-year anniversary with the release of version 2.0, delivering a well tested, versatile and most useful package. Here’s a brief excerpt of why h5bp is awesome:
Cross-browser compatible (IE6, yeah we got that.)
HTML5 ready. Use the new tags with certainty
Build toolchain for optimizing images, minifying and concatenating js+css
Optimal caching and compression rules, Mobile browser optimizations
IE specific classes for maximum cross-browser control
Handy .no-js and .js classes to style based on capability
iOS, Android, Opera Mobile-adaptable markup and CSS skeleton
Create an app on App Engine, if you haven’t already
Set the application name in app/app.yaml
Invoke upload_to_appengine.sh which builds the production version of the app with minified and concatenated html, js and css files and optimized images. It will ask you to test the app and, if confirmed, will invoke the App Engine upload-script appcfg.py.
I recently started appengine-boilerplate, a repository of often used boilerplate code for Google’s App Engine, which allows to quickly setup new projects without having to re-invent the most common wheels. All code is released under the BSD license, and It comes with the following goodies:
html5-boilerplate (incl. jQuery)
User preferences data model (with gravatar image link)
Memcache for datastore objects
Handlers for /, /profile, /login and /logout
Custom template tags
Various tools such as is_testenv(), decode(input) and slugify(title)
app.yaml configuration for URL’s which can be accessed publicly, only for logged in users, and only for administrators, all setup to work with html5-boilerplate’s directory structure
html5-boilerplate is a great project initiated by Paul Irish, which provides a boilerplate for cross-browser compatible html5 websites, and also includes a nifty build system which minifies, concatenates and optimizes all the resources of the website to increase the website’s performance.
The build-system is fully integrated into appengine-boilerplate, including a helper script calledupload_to_appengine.sh. This scripts initiates the build process, changes the /static symlink to the minified verion, uploads the website to appengine, and reverts /static back to the development environment. Implementing this process can drastically improve the website’s performance.
appengine-boilerplate uses the same OpenID provider selection as StackOverflow, based on the openid-selectorjQuery plugin:
App Engine allows you to directly put datastore entities into memcache, which is commonly used to reduce database reads when viewing a website. Using memcache, only the first user will trigger a database read which places the entities into memcache, and all subsequent users can get them from there until the cache is invalidated either by the website or by App Engine itself. Cache lifetime on App Engine seems to be usually just a few hours, but it will provide a noticeable performance improvement for your visitors.
Using appengine-boilerplate you can use the following commands
import mc mc.cache.get_someitems()# will read from db if not in cache
and invalidate the cache with
Feedback & Additions
One particular feature I’d like to implement in the near future is authentication with OAuth (Twitter, Facebook, etc). I’d love to hear your ideas for further additions, and will happily review and accept pull requests. Please leave your feedback in the comments or drop me a line via chris (at) metachris.org.