<div dir="ltr">Hi Scott,<br><br>Good to hear everything is up and running!<br><div><br></div><div>I suppose I could turn the paper into a more focused tutorial, given that the paper might be a bit heavy going for some. Although there is a lot of really interesting and important info in the paper so it's hard to know, off-hand, how that would go.</div><div><br></div><div>As for adding the update/delete functionality, I don't think that would fit so well into a chatroom/logging style example. Given that chatrooms are fundamentally "append only" logs. The update and delete stuff is more fitting for a ToDo or Blogging web app. Both of which I'm pretty sure already have very nice tutorials written up for them, well there is one for blogging, I think the ToDo just exists as a demo on the Ur/Web site.</div><div><br></div><div>I've not used Meteor, Mongo, or Node really in any appreciable form, tried to avoid them as much as possible. No types! RUN! ;)</div><div><br></div><div>I'll add the Chatroom tutorial to the queue and see what pops off. :)</div><div><br></div><div>Cheers,</div><div><br></div><div>Sean</div></div><br><div class="gmail_quote">On Sun, 17 May 2015 at 03:28 Stefan Scott Alexander <<a href="mailto:stefanscottalexx@gmail.com">stefanscottalexx@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div>Sean -<br><br></div>The application is running fine now - see my response elsewhere in this thread. (I had to create a Postgres superuser with the same name as my Linux user.)<br><br></div>Regarding the chatroom application: It is interesting to notice that it provides much of the same "live" behavior as the Meteor NodeJS framework's Distributed Data Protocol (DDP), as demonstrated in their tutorial involving creating a "To Do" list:<br><br><a href="https://github.com/meteor/simple-todos/" target="_blank">https://github.com/meteor/simple-todos/</a><br><br><a href="https://www.meteor.com/try" target="_blank">https://www.meteor.com/try</a><br><br></div><div>There is also a more complicated Meteor example involving multiple ToDo lists, which can be created as follows:<br><br>meteor create --example todos<br><br></div>Unfortunately the Meteor framework only works with MongoDB - a NoSQL database which does not provide ACID transactional guarantees.<br><br></div>One difference between Ur/Web's "Chatroom" example and Meteor's "ToDo" examples is that items in the ToDo examples can be inserted, updated and deleted - whereas in the current Chatroom example, items can only be inserted. Otherwise the Ur/Web Chatroom example is the same as the Meteor ToDos example (the more complicated one, involving multiple ToDo lists).<br><br></div>It would be interesting to add update and delete functionality to the Chatroom example. This would generalize it, from allowing only insert operations, to allowing insert / update / delete operations (ie, it would be a CRUD app which also pushes changes "live" to each user, just like Meteor's ToDo examples).<br><br></div>It is interesting to note that many people consider Meteor to be the best NodeJS framework - probably precisely because of this Distributed Data Protocol (DDP) pushing changes "live" to all connected users. On the other hand, many people avoid Meteor because it is tied to the NoSQL, non-ACID database MongDB.<br><br></div>If a nicely packaged step-by-step online demo tutorial similar to Meteor's ToDo examples were created for Ur/Web, it would probably attract a lot of attention among people looking for decent web frameworks.<br><br></div><div>- Scott<br></div><div><div><div><div><div><div><br><br></div></div></div></div></div></div></div>
_______________________________________________<br>
Ur mailing list<br>
<a href="mailto:Ur@impredicative.com" target="_blank">Ur@impredicative.com</a><br>
<a href="http://www.impredicative.com/cgi-bin/mailman/listinfo/ur" target="_blank">http://www.impredicative.com/cgi-bin/mailman/listinfo/ur</a><br>
</blockquote></div>