The state of Grok projects in the cooking

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

The state of Grok projects in the cooking

Sebastian Ware
Since we have quite low traffic on the Grok mailing lists I thought it would be nice to hear what projects people are currently working on with Grok.

At Urbantalk we are currently using Grok for all our webb app development. We are super happy with both the development and deployment story! You guys have done a truly excellent job!!!

- We are maintaining two industry specific search engines with extensive community features. It uses the stock zope catalog components (scaled for up to 500k visitors per month)

- We are actively developing a video-cms with video-ads and payment options. We have used gp.upload and iframes for concurrent file upload with progressbar. Nginx and third-party CDN for video delivery

- We are actively developing a multilingual iPad/desktop browser-publishing solution running for a couple of clients with integrated Facebook and Twitter push publishing

- We are maintaining a webb-client based digital signage/cctv solution

- We are implementing a backend CMS for a calendar iPhone-app

- We are about to launch a subscription based e-commerce solution with PayPal-integration. It is used for handling magazine subscriptions

- We are continuously developing our internal issue and time tracking solution with ad-hoc production planning capabilities

- We have a SCRUM sprint tracking solution with nice charts and stuff

All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.

Mvh Sebastian

http://www.urbantalk.se



_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Noe Nieto
I have a toy-project called logografo. Is just a CRUD interface for historic events and is using the Simile's timeline widgets to display and compare them.

http://logografo.noenieto.com/

Code is available at github.

https://github.com/tzicatl/logografo


2011/9/16 Sebastian Ware <[hidden email]>
Since we have quite low traffic on the Grok mailing lists I thought it would be nice to hear what projects people are currently working on with Grok.

At Urbantalk we are currently using Grok for all our webb app development. We are super happy with both the development and deployment story! You guys have done a truly excellent job!!!

- We are maintaining two industry specific search engines with extensive community features. It uses the stock zope catalog components (scaled for up to 500k visitors per month)

- We are actively developing a video-cms with video-ads and payment options. We have used gp.upload and iframes for concurrent file upload with progressbar. Nginx and third-party CDN for video delivery

- We are actively developing a multilingual iPad/desktop browser-publishing solution running for a couple of clients with integrated Facebook and Twitter push publishing

- We are maintaining a webb-client based digital signage/cctv solution

- We are implementing a backend CMS for a calendar iPhone-app

- We are about to launch a subscription based e-commerce solution with PayPal-integration. It is used for handling magazine subscriptions

- We are continuously developing our internal issue and time tracking solution with ad-hoc production planning capabilities

- We have a SCRUM sprint tracking solution with nice charts and stuff

All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.

Mvh Sebastian

http://www.urbantalk.se



_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev



--
---
Noe Nieto
NNieto Consulting Services
M: [hidden email]
W: http://noenieto.com
T:  @tzicatl
Li: Perfil en LinkedIn


_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Jan-Wijbrand Kolman-3
In reply to this post by Sebastian Ware
On 9/16/11 10:43 , Sebastian Ware wrote:
> Since we have quite low traffic on the Grok mailing lists I thought
> it would be nice to hear what projects people are currently working
> on with Grok.

Thanks Sebastian for your "update". You're working on a lot of project,
cool to see they're based on Grok!!

You might've noticed I've been "under water" for a while. Reason is
simple: we're very very busy rebuilding a largish mental health care
platform. Using Grok indeed :-)

We still have all kinds of details to flesh out, and looking at the
things Sebastian is doing, I'm confident we indeed *can* flesh out these
details.

Biggest technical hurdle to take at some point is making the UI more
dynamic and "application"-like. Currently we're mainly rendering pages
and the application flow uses the traditional "form-submit-page-reload"
pattern, in the process of getting the application's concepts clear.

So, Sebastian, I'm very curious for *your* approach to making your
applications more "dynamic", like I'm interested to hear from others of
course.

Anyway, I'll try to spend a little more time on Grok again :-)

regards, jw

_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Miguel Beltran R.
In reply to this post by Sebastian Ware
 
All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.


I got curiosity, are you planing change from PageTemplates to another thing? or what are meaning?

--
________________________________________
Lo bueno de vivir un dia mas
es saber que nos queda un dia menos de vida

_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Sebastian Ware
19 sep 2011 kl. 15.54 skrev Miguel Beltran R.:

>  
> All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.
>
>
> I got curiosity, are you planing change from PageTemplates to another thing? or what are meaning?
>

Yes, with regards to JW's comments on scalability "[Grok-dev] Scalability of Grok web apps":

15 jun 2011 kl. 11.59 skrev Jan-Wijbrand Kolman:

[snip]

* Zope Page Templates. Maybe not so much a bottleneck, but we saw quite
a speedup by using Chameleon's page templates, esp. since it uses python
expressions by default.

[/snip]

Mvh Sebastian


_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Sebastian Ware
In reply to this post by Jan-Wijbrand Kolman-3
Our design goal was to keep all the business logic on the server rather than move it to the client side. Also, we wanted to keep the Javascript code as thin and generic as possible in order to make it easier to test and to migrate to different Javascript-frameworks in the future.

We also wanted to make it "DOM-centric" so it looks a lot like standard client side DOM-manipulation. No new skills required.

Basically this is what happens:

1 user manipulates a button or link

2 the thin client intercepts the event and dispatches it to the backend using a couple of different strategies

  - call a JSON-method in the backend (most cases)
  - post to a view in an iframe (multipart posts with file content) which in turn dispatches to a JSON-method

3 the server-side JSON-method renders forms and views and returns HTML in a JSON-structure with instructions on how to update the DOM
  (these instructions map 1-1 to Mootools (in our case) DOM-manipulation features)

4 the thin client follows the instructions, stuff like:
 
  - inject html
  - update styling on an element
  - execute client side Javascript code
  - subscribe to DOM-events for injected HTML

What we did server side was package all the DOM-manipulation code in ui-effect classes that are easy to use. Code will look something like this:

  <a target="json" href="/pcc/urbantalk/users/jhsware/showDashboard">Dashboard</a>

  @grok.require('protoncms.ViewContent')
  def showDashboard(self):  
    self.effects = PageEffects()
    view = getMultiAdapter((self.context, self.request), name='dashboard')
    self.effects.simple_popup_message("Message", "Displaying Dashboard!")
    self.effects.updateContent(view())
    return self.effects.result

So we get the AJAX-manipulation stuff but still use the standard Grok form generation and validation. So you don't have to switch between Javascript and Python when implementing UI-features.

The snag is obviously network roundtrip and scaling. Some UI-interaction also require quicker feedback, but we have found that it is pretty snappy and works well both for front and back-end development.

Mvh Sebastian

19 sep 2011 kl. 09.32 skrev Jan-Wijbrand Kolman:

> On 9/16/11 10:43 , Sebastian Ware wrote:
>> Since we have quite low traffic on the Grok mailing lists I thought
>> it would be nice to hear what projects people are currently working
>> on with Grok.
>
> Thanks Sebastian for your "update". You're working on a lot of project,
> cool to see they're based on Grok!!
>
> You might've noticed I've been "under water" for a while. Reason is
> simple: we're very very busy rebuilding a largish mental health care
> platform. Using Grok indeed :-)
>
> We still have all kinds of details to flesh out, and looking at the
> things Sebastian is doing, I'm confident we indeed *can* flesh out these
> details.
>
> Biggest technical hurdle to take at some point is making the UI more
> dynamic and "application"-like. Currently we're mainly rendering pages
> and the application flow uses the traditional "form-submit-page-reload"
> pattern, in the process of getting the application's concepts clear.
>
> So, Sebastian, I'm very curious for *your* approach to making your
> applications more "dynamic", like I'm interested to hear from others of
> course.
>
> Anyway, I'll try to spend a little more time on Grok again :-)
>
> regards, jw
>
> _______________________________________________
> Grok-dev mailing list
> [hidden email]
> https://mail.zope.org/mailman/listinfo/grok-dev


_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Souheil CHELFOUH
Hello Grokkers !!

Sorry, I have been a bit of a ghost, lately, on the mailing list.
I'm preparing everything to move out of Paris during the month of
october. Lots of things to do, and a lot of stress.

Anyway, what am I doing with Grok ?
Well, things didn't change since my last intervention.
I'm still developing Cromlech and Dolmen (for Cromlech).
So far, we have created the equivalent of the old Dolmen, coupled with
more infrastructural things, like native Traject use in Dawnlight
(Cromlech's publisher) and pluggable policy-users management-security
packages.
We also experimented coupling all that with SolR and ZODB-less
applications. This is Freedom, mates, Freedom !  :)

Hope to see you all and hear from you all soon, for a sprint or an equivalent.


2011/9/19 Sebastian Ware <[hidden email]>:

> Our design goal was to keep all the business logic on the server rather than move it to the client side. Also, we wanted to keep the Javascript code as thin and generic as possible in order to make it easier to test and to migrate to different Javascript-frameworks in the future.
>
> We also wanted to make it "DOM-centric" so it looks a lot like standard client side DOM-manipulation. No new skills required.
>
> Basically this is what happens:
>
> 1 user manipulates a button or link
>
> 2 the thin client intercepts the event and dispatches it to the backend using a couple of different strategies
>
>  - call a JSON-method in the backend (most cases)
>  - post to a view in an iframe (multipart posts with file content) which in turn dispatches to a JSON-method
>
> 3 the server-side JSON-method renders forms and views and returns HTML in a JSON-structure with instructions on how to update the DOM
>  (these instructions map 1-1 to Mootools (in our case) DOM-manipulation features)
>
> 4 the thin client follows the instructions, stuff like:
>
>  - inject html
>  - update styling on an element
>  - execute client side Javascript code
>  - subscribe to DOM-events for injected HTML
>
> What we did server side was package all the DOM-manipulation code in ui-effect classes that are easy to use. Code will look something like this:
>
>  <a target="json" href="/pcc/urbantalk/users/jhsware/showDashboard">Dashboard</a>
>
>  @grok.require('protoncms.ViewContent')
>  def showDashboard(self):
>    self.effects = PageEffects()
>    view = getMultiAdapter((self.context, self.request), name='dashboard')
>    self.effects.simple_popup_message("Message", "Displaying Dashboard!")
>    self.effects.updateContent(view())
>    return self.effects.result
>
> So we get the AJAX-manipulation stuff but still use the standard Grok form generation and validation. So you don't have to switch between Javascript and Python when implementing UI-features.
>
> The snag is obviously network roundtrip and scaling. Some UI-interaction also require quicker feedback, but we have found that it is pretty snappy and works well both for front and back-end development.
>
> Mvh Sebastian
>
> 19 sep 2011 kl. 09.32 skrev Jan-Wijbrand Kolman:
>
>> On 9/16/11 10:43 , Sebastian Ware wrote:
>>> Since we have quite low traffic on the Grok mailing lists I thought
>>> it would be nice to hear what projects people are currently working
>>> on with Grok.
>>
>> Thanks Sebastian for your "update". You're working on a lot of project,
>> cool to see they're based on Grok!!
>>
>> You might've noticed I've been "under water" for a while. Reason is
>> simple: we're very very busy rebuilding a largish mental health care
>> platform. Using Grok indeed :-)
>>
>> We still have all kinds of details to flesh out, and looking at the
>> things Sebastian is doing, I'm confident we indeed *can* flesh out these
>> details.
>>
>> Biggest technical hurdle to take at some point is making the UI more
>> dynamic and "application"-like. Currently we're mainly rendering pages
>> and the application flow uses the traditional "form-submit-page-reload"
>> pattern, in the process of getting the application's concepts clear.
>>
>> So, Sebastian, I'm very curious for *your* approach to making your
>> applications more "dynamic", like I'm interested to hear from others of
>> course.
>>
>> Anyway, I'll try to spend a little more time on Grok again :-)
>>
>> regards, jw
>>
>> _______________________________________________
>> Grok-dev mailing list
>> [hidden email]
>> https://mail.zope.org/mailman/listinfo/grok-dev
>
>
> _______________________________________________
> Grok-dev mailing list
> [hidden email]
> https://mail.zope.org/mailman/listinfo/grok-dev
>
_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Aroldo Souza-Leite
In reply to this post by Sebastian Ware
Hi Sebastian,

thanks for the initiative.

Since IT ages, the Bonn based company I do most of my consulting work
for has been running larger and smaller extranet applications for an
important group of German business lobby societies.  Everything is based
on Grok. I have only one "problem" as a consultant: Grok is too good and
stable (!!!), modules of one application are too easily reusable in new
applications, all applications are easily scalable, Grok based
development can be done with low company resource usage, and everything
is running too well - on older Grok versions. So that it's a real
political effort for me everytime I try to persuade the customers to
update the platform once in a while... but I don't stop trying.

Thanks folks for the great Job.

Aroldo.


On 16.09.2011 10:43, Sebastian Ware wrote:

> Since we have quite low traffic on the Grok mailing lists I thought it would be nice to hear what projects people are currently working on with Grok.
>
> At Urbantalk we are currently using Grok for all our webb app development. We are super happy with both the development and deployment story! You guys have done a truly excellent job!!!
>
> - We are maintaining two industry specific search engines with extensive community features. It uses the stock zope catalog components (scaled for up to 500k visitors per month)
>
> - We are actively developing a video-cms with video-ads and payment options. We have used gp.upload and iframes for concurrent file upload with progressbar. Nginx and third-party CDN for video delivery
>
> - We are actively developing a multilingual iPad/desktop browser-publishing solution running for a couple of clients with integrated Facebook and Twitter push publishing
>
> - We are maintaining a webb-client based digital signage/cctv solution
>
> - We are implementing a backend CMS for a calendar iPhone-app
>
> - We are about to launch a subscription based e-commerce solution with PayPal-integration. It is used for handling magazine subscriptions
>
> - We are continuously developing our internal issue and time tracking solution with ad-hoc production planning capabilities
>
> - We have a SCRUM sprint tracking solution with nice charts and stuff
>
> All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.
>
> Mvh Sebastian
>
> http://www.urbantalk.se
>
>
>
> _______________________________________________
> Grok-dev mailing list
> [hidden email]
> https://mail.zope.org/mailman/listinfo/grok-dev

_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Jeffrey Peterson-2
In reply to this post by Sebastian Ware
At Holmes Corporation, unfortunately we aren't using Grok as a platform, but Plone, where we use five.grok frequently for the versatility it gives us writing views.  We currently have one deployed project using Grok and that is a RESTful interface for managing media on a file server.  This is a very recent addition, and I see us deploying more projects to tackle very specific tasks like that one.

Regards,

Jeff Peterson
 
On Sep 16, 2011, at 3:43 AM, Sebastian Ware wrote:

> Since we have quite low traffic on the Grok mailing lists I thought it would be nice to hear what projects people are currently working on with Grok.
>
> At Urbantalk we are currently using Grok for all our webb app development. We are super happy with both the development and deployment story! You guys have done a truly excellent job!!!
>
> - We are maintaining two industry specific search engines with extensive community features. It uses the stock zope catalog components (scaled for up to 500k visitors per month)
>
> - We are actively developing a video-cms with video-ads and payment options. We have used gp.upload and iframes for concurrent file upload with progressbar. Nginx and third-party CDN for video delivery
>
> - We are actively developing a multilingual iPad/desktop browser-publishing solution running for a couple of clients with integrated Facebook and Twitter push publishing
>
> - We are maintaining a webb-client based digital signage/cctv solution
>
> - We are implementing a backend CMS for a calendar iPhone-app
>
> - We are about to launch a subscription based e-commerce solution with PayPal-integration. It is used for handling magazine subscriptions
>
> - We are continuously developing our internal issue and time tracking solution with ad-hoc production planning capabilities
>
> - We have a SCRUM sprint tracking solution with nice charts and stuff
>
> All our applications are using AJAX-template injection using a thin Mootools client so we are heavily dependent on PageTemplates and grok.JSON. We will at some point migrate to a better performing templating language.
>
> Mvh Sebastian
>
> http://www.urbantalk.se
>
>
>
> _______________________________________________
> Grok-dev mailing list
> [hidden email]
> https://mail.zope.org/mailman/listinfo/grok-dev

_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Roberto Allende
Hello

I'm using Grok at HomeViva, HomeViva is an online platform that
connects the supply and demand of construction and building
maintenance services. We provide a place where Consumers can find
qualified Contractors for their maintenance and construction needs.

The application is made with Grok and you can visit at
http://homeviva.com , we're in beta phase right now.

The project has the support of StartUp Chile:
http://www.startupchile.org a program that might be of interest for
any entrepeneur no matter where he/she lives.

Kind Regards
Roberto Allende
HomeViva

--
http://homeviva.com
_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Sylvain Viollon
In reply to this post by Sebastian Ware

 Hello,

  So at Infrae we don't really use lot of Grok itself, but lot of grokcore packages and other related Grok packages in Zope
2, with the help of five.grok.

  We use it in our CMS, Silva. In last years we spend time in a major refactoring  to make it easier to extend and
customize. Our customers often writes extension and customization themselves directly, so this need to be as simple
as possible to extend.

  Everything is based on Grok-related technology now, content type registration, forms (based on Zeam Form, a Grokkish
form framework easy to extend and customize), templates and layout (megrok.pagetemplate, megrok.chameleon,
grokcore.layout). The UI is now one-page AJAX based, and use a Grokkish extension to register REST handlers, infrae.rest, that makes
possible to nest those handlers (which is important when you have a lot of them, for organization purposes). We use
fanstatic as well for the resource inclusion.

  We invested a lot in Grok for this, and we are happy about it, and our customers as well.

  We do have a couple of Plone projects thats uses five.grok as well (and Zeam Form as well).

  Regards,

  Sylvain,

--
Sylvain Viollon -- Infrae
t +31 10 243 7051 -- http://infrae.com
Hoevestraat 10 3033GC Rotterdam -- The Netherlands



_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev
Reply | Threaded
Open this post in threaded view
|

Re: The state of Grok projects in the cooking

Emanuel Sartor
In reply to this post by Sebastian Ware
Sebastian Ware wrote:

> Since we have quite low traffic on the Grok mailing lists I thought it
> would be nice to hear what projects people are currently working on with
> Grok.
>
> At Urbantalk we are currently using Grok for all our webb app development.
> We are super happy with both the development and deployment story! You
> guys have done a truly excellent job!!!
>
> - We are maintaining two industry specific search engines with extensive
> community features. It uses the stock zope catalog components (scaled for
> up to 500k visitors per month)
>
> - We are actively developing a video-cms with video-ads and payment
> options. We have used gp.upload and iframes for concurrent file upload
> with progressbar. Nginx and third-party CDN for video delivery
>
> - We are actively developing a multilingual iPad/desktop
> browser-publishing solution running for a couple of clients with
> integrated Facebook and Twitter push publishing
>
> - We are maintaining a webb-client based digital signage/cctv solution
>
> - We are implementing a backend CMS for a calendar iPhone-app
>
> - We are about to launch a subscription based e-commerce solution with
> PayPal-integration. It is used for handling magazine subscriptions
>
> - We are continuously developing our internal issue and time tracking
> solution with ad-hoc production planning capabilities
>
> - We have a SCRUM sprint tracking solution with nice charts and stuff
>
> All our applications are using AJAX-template injection using a thin
> Mootools client so we are heavily dependent on PageTemplates and
> grok.JSON. We will at some point migrate to a better performing templating
> language.
>
> Mvh Sebastian
>
> http://www.urbantalk.se

I have been working on Merlot, a web-based project management system. The
project is hosted at: http://code.google.com/p/merlot/

This is my first project using Grok outside Plone and I'm loving it. :-)

Cheers,
Emanuel


_______________________________________________
Grok-dev mailing list
[hidden email]
https://mail.zope.org/mailman/listinfo/grok-dev