Archive for the ‘technical’ Category

Real-Time Auctions with HTML5, PayPal, and Google App Engine

Tuesday, June 28th, 2011

Google App EngineSupernifty’s latest series of technical articles demonstrates the use of Google App Engine and PayPal to build a real-time auction site.

We also show off some HTML5 and discuss some of the issues associated with designing a site suitable for mobile devices.

All pretty interesting if you’re into this kind of stuff. Check it out:

Or go straight to the source code.

Google App Engine, PayPal, Adaptive Payments – The Tutorial

Wednesday, April 13th, 2011

Google App EngineThe final part of my tutorial on using Google App Engine with PayPal’s adaptive payments to create an online market is available.

It extends the example online market application developed in part two by covering some of the practical considerations and handy features of hosting on GAE.

In summary:

Supernifty uptime monitoring

Thursday, March 24th, 2011

Having trouble connecting to Supernifty? Check our uptime stats, provided by Pingdom.

Supernifty Uptime

If at any time you encounter problems or slowness connecting to Supernifty, please let us know.

Google App Engine and PayPal Adaptive Payments with Python – part 2

Friday, March 18th, 2011

Google App EngineIf you’re interested in Google App Engine, online payments and Python, then check out part 2 of Supernifty’s tutorial.

It extends the example online market application developed in part one by demonstrating:

  • Chained payments;
  • Instant Payment Notification (IPN); and
  • Embedded Payments
  • All handy stuff if you want to learn how to use this technology.

    In summary:

Regular expression and Javascript Text Transformation Library

Tuesday, March 8th, 2011

Regex LibrarySupernifty has a new resource – Text Transformer. It’s a handy place to keep JavaScript text transformations and regular expressions.

If you’ve ever spent time building a complicated regular expression or transformation, check out this new page. Building regular expressions is tricky enough that you should only have to do it once, or not at all.

If someone hasn’t already built a regex that does what you want, submit yours to the site so that you can use it again later.

The site uses JavaScript to build the transformations, full source code for each transformation is available for perusal and modification – a useful learning resource.

You can also chain transformations together. For example, chain Extract Text from HTML with Word count to get the word count of a HTML page. Handy!

Keep track of new transformations with the rss feedRSS feed

We also have an API available so potentially the tool could be integrated into other applications. If you have ideas, or want to learn more, please contact us.

This will increasingly become a useful resource for JavaScript developers and regex writers, as well as anyone needing to do tricky text transformations – watch this spacesmile

Google App Engine, PayPal, Python – A Tutorial

Monday, February 28th, 2011

Google App EngineInterested in accepting payments with PayPal Adaptive Payments using Google App Engine? Check out this tutorial by Supernifty.

It covers the steps involved in getting set up with Google App Engine and building a simple store with PayPal as the payment provider.

The source code is available from GitHub.

In summary:

Getting started with PayPal on Django

Thursday, January 27th, 2011

DjangoIf you’re a Django (or Python) developer, and want to integrate a payment solution into your web app, check out this tutorial by Supernifty: Getting started with PayPal on Django.

It covers the steps involved in getting set up with PayPal and building a simple online store with Django.

The sample code is also available from GitHub.

In summary:

Ultra Simple PHP Profiling – Hack it #8

Tuesday, November 9th, 2010

We wanted to profile a few PHP scripts, so we tried xdebug, but there were a few issues:

  • Not suitable for a production server
  • Difficult to turn on/off for specific scripts and requests
  • Difficult to profile MySQL queries, without also attracting a mass of other data

xdebug is better for offline application profiling.

If you just want to track down a bottleneck, or see what your script is spending all its time doing, here’s a simple alternative.

To profile your SQL, replace mysql_query with mysql_queryx.

This generates a CSV file at /tmp/profile.1 for easy analysis.

Now create the file profile.php:

Too easy!

To stop profiling a page, set $profile = false.

If you’re concerned about performance, do something like $profile = rand(0, 100) > 99.

Server Upgrade

Saturday, November 6th, 2010

Server upgrade
Supernifty’s servers have recently been upgraded.

Our old server was barely coping with the load, particularly that generated by Speed Scrabble, so Supernifty is now on a faster, more powerful server.

This means a zippy, more reliable experience for everyone. If you do encounter problems, please get in touch. You may have encountered a few timeouts during the migration, but now everything appears to be great.

Finally, if you’re interested in the technical details, main components of the Supernifty architecture include:

Speed Scrabble Safari Extension

Sunday, July 18th, 2010

Speed Scrabble Safari ExtensionIf you’re using Safari as your web browser (Apple users, this means you!) you may be interested in the Speed Scrabble Safari Extension.

Speed Scrabble is a fast, fun word game, suitable for single player, but often more fun as multiplayer.

This Safari extension enables you to see when there are players waiting to play on the Speed Scrabble server, so you can join them for a game.

Speed Scrabble Safari Extension Screen Shot

If you use the extension, remember to play the occasional game – otherwise anyone else waiting for a game through the extension won’t know that you are available!