<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>I've been working on an idea... It's Python and Django based. It's rather a cool idea and I've been working on it for about three months. I'm scrapping my old repository and starting over.</div><div><br></div><div>Before I ask my technical questions, let me throw a copy and paste summary of my idea/work out there:</div><div><br></div><div>--- start ---</div><div>it really has taken off. I want to start over completely in my repository. This is something I've&nbsp;originally&nbsp;written in Python/Django.&nbsp;</div><div><br></div>I wish to disclose my intent to create a web service for a programable (Quick Response) QR barcode. The QR Barcode patent is owned but not exercised by Denso Wave.<br><br>These QR codes can store numeric, alphanumeric, binary, &nbsp;URL, binary, address cards, SMS and other types of storage. They are, however, limited to a finite amount of data and can only store the types of data already predefined in the barcode specification.<br><br>Additionally, each time a different type of data is stored in the barcode, the barcode that is generated is different. This does not allow for a one-stop posting of a barcode. For example, if a specifically encoded QR code is printed on a T-shirt, then if the content of the barcode needs to change, the barcode needs to be reprinted. It is not feasible, then, to dynamically change the content of the barcode without having to reprint the barcode.<br><br>I propose that a single barcode per user or entity (e.g., for John Doe to have professionally printed on his t-shirt) is created. The format of this barcode is URL and points to a specific web address. Additional parameters are encoded in the URL to indicate the entity (e.g., John's T-shirt).<br><br>Then, the web server can return any amount of data (limited only by the practicality of transmitting that data). Additionally, since the Web server can run programs, the function of already printed code can be extended at any time by the addition of a new program on the web server.<br><br>An example of the data stored in this 'fixed' or 'programmable' barcode could be (but is not limited to) as follows:<br>&nbsp;&nbsp;&nbsp;<a href="http://glenjarvis.com/scan?id=34&amp;token=4343d">http://glenjarvis.com/scan?id=34&amp;token=4343d</a>&nbsp;(currently not a valid url)<div><br></div><div><br>The webserver, in this example at glenjarvis.com, would receive a scan with id of 34. The barcode object with that id has a dynamic program associated with it (e.g., return a random Irish Limerick). Then, whenever barcodes are scanned (for example, with a mobile phone, the user is redirected to the URL, and an Irish Limerick is returned to this user. The programs added to this code can be scavenger hunts, physical games (like tag: last barcode scanned wins), etc.<br><div>--- end ---</div><div><br></div><div>This worked very well conceptually... In fact, I separated everything so that every barcode had a 'program' associated with it. The program was actually a string to dynamically call a verified program (each program is a django app named with the id of that 'program' in the database).</div><div><br></div><div>Because QR codes are so popular in the rest of the world, I imaged that we're only limited by the creativity of people out there -- for example, if someone from BayPIGgies is interested in creating a 'program' for this platform, they only need to write it.</div><div><br></div><div>As I progressed, and reality came from the idea, it was clear that:</div><div>1) All new programs had to be 'registered' manually (that is, instructions are given and a sandbox is given to develop, but the production system has to be very carefully controlled for security).</div><div><br></div><div>2) Django is so mono-lithic.. but, we want to launch external programs. The internal django app mentioned above handles the basic call (like a poll thread handles all incoming calls). But, the work is done by external systems. And, this came down to RESTful ideas.</div><div><br></div><div>But, that's where things kinda smoldered for a while. Can a fully RESTful system be created where program execution (even if through a URL) is done, passing a small set of JSON data. And, an API of certain authenticated calls is given to that program for use...</div><div><br></div><div>I've never done any facebook apps or myspace or other networking, but is this how they work? &nbsp;How does the security model work? Is REST the best model?</div><div><br></div><div>Any thoughts you have would be appreciated. This is more stream of conscious discussion as I consider these past few hurdles.</div><div><br></div><div><br></div><div>Warmest Regards,</div><div><br></div><div><br></div><div><br></div><div>Glen Jarvis</div></div></body></html>