With the idea that no good idea should go un-stolen, allow me to
introduce seaside fans to active scaffold http://activescaffold.com. I am wrapping up a ruby on rails engagement with a client and discovered this framework. I ended up using ROR because the client had an existing mysql database and Squeak's mysql support isn't so hot where rails is all about mysql, and I had only a couple "flows" but a whole lot of plain old admin-CRUD to do and rails excels at plain crud on mysql. With activescaffold - I had to write very little code for the admin UI - a major plus because this project is on a very tight timeline. Anyhow, activescaffold works with activerecord and infers a really slick AJAX UI that supports sensible CRUD more or less instantly. Once installed, you can go through and customize views by adding actions links, filtering columns, and generally overriding bits of logic to make it more task focused. It would be really cool to have a similar facility in Seaside. Cheers, -Todd Blanchard _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Cincom is doing exactly that - combining the ActiveRecord pattern with
scaffolding. Have a look here: http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 James Robertson Cincom Smalltalk Product Evangelist http://www.cincomsmalltalk.com/blog/blogView Talk Small and Carry a Big Class Library On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: > With the idea that no good idea should go un-stolen, allow me to > introduce seaside fans to active scaffold http://activescaffold.com. > > I am wrapping up a ruby on rails engagement with a client and > discovered this framework. I ended up using ROR because the client > had an existing mysql database and Squeak's mysql support isn't so > hot where rails is all about mysql, and I had only a couple "flows" > but a whole lot of plain old admin-CRUD to do and rails excels at > plain crud on mysql. With activescaffold - I had to write very > little code for the admin UI - a major plus because this project is > on a very tight timeline. > > Anyhow, activescaffold works with activerecord and infers a really > slick AJAX UI that supports sensible CRUD more or less instantly. > Once installed, you can go through and customize views by adding > actions links, filtering columns, and generally overriding bits of > logic to make it more task focused. > > It would be really cool to have a similar facility in Seaside. > > Cheers, > -Todd Blanchard > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
I watched the screencast. It is not the same thing. I think you guys
are missing something key in that project of yours. Active scaffold simply lets me point the app at a db and ZAM total admin UI that looks nice with AJAX master detail editing. I can then filter out attributes that people ought not to edit, apply permissions, and decorate the app with task links. The demo shows app development. I didn't develop a thing apart from specify some mappings because the database used weird and inconsistent naming conventions. I also found it interesting that the app being developed in the screencast didn't look nearly as sophisticated as the tools being used to build it. I don't find that a good selling point. -Todd Blanchard On May 30, 2008, at 4:28 AM, James Robertson wrote: > Cincom is doing exactly that - combining the ActiveRecord pattern > with scaffolding. Have a look here: > > http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 > > James Robertson > Cincom Smalltalk Product Evangelist > http://www.cincomsmalltalk.com/blog/blogView > Talk Small and Carry a Big Class Library > > > > > On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: > >> With the idea that no good idea should go un-stolen, allow me to >> introduce seaside fans to active scaffold http://activescaffold.com. >> >> I am wrapping up a ruby on rails engagement with a client and >> discovered this framework. I ended up using ROR because the client >> had an existing mysql database and Squeak's mysql support isn't so >> hot where rails is all about mysql, and I had only a couple "flows" >> but a whole lot of plain old admin-CRUD to do and rails excels at >> plain crud on mysql. With activescaffold - I had to write very >> little code for the admin UI - a major plus because this project is >> on a very tight timeline. >> >> Anyhow, activescaffold works with activerecord and infers a really >> slick AJAX UI that supports sensible CRUD more or less instantly. >> Once installed, you can go through and customize views by adding >> actions links, filtering columns, and generally overriding bits of >> logic to make it more task focused. >> >> It would be really cool to have a similar facility in Seaside. >> >> Cheers, >> -Todd Blanchard >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
todd
do you think that magritte could help there? Stef On May 31, 2008, at 1:04 AM, Todd Blanchard wrote: > I watched the screencast. It is not the same thing. I think you > guys are missing something key in that project of yours. > > Active scaffold simply lets me point the app at a db and ZAM total > admin UI that looks nice with AJAX master detail editing. I can > then filter out attributes that people ought not to edit, apply > permissions, and decorate the app with task links. > > The demo shows app development. I didn't develop a thing apart from > specify some mappings because the database used weird and > inconsistent naming conventions. > > I also found it interesting that the app being developed in the > screencast didn't look nearly as sophisticated as the tools being > used to build it. I don't find that a good selling point. > > -Todd Blanchard > > On May 30, 2008, at 4:28 AM, James Robertson wrote: > >> Cincom is doing exactly that - combining the ActiveRecord pattern >> with scaffolding. Have a look here: >> >> http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 >> >> James Robertson >> Cincom Smalltalk Product Evangelist >> http://www.cincomsmalltalk.com/blog/blogView >> Talk Small and Carry a Big Class Library >> >> >> >> >> On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: >> >>> With the idea that no good idea should go un-stolen, allow me to >>> introduce seaside fans to active scaffold http://activescaffold.com. >>> >>> I am wrapping up a ruby on rails engagement with a client and >>> discovered this framework. I ended up using ROR because the >>> client had an existing mysql database and Squeak's mysql support >>> isn't so hot where rails is all about mysql, and I had only a >>> couple "flows" but a whole lot of plain old admin-CRUD to do and >>> rails excels at plain crud on mysql. With activescaffold - I had >>> to write very little code for the admin UI - a major plus because >>> this project is on a very tight timeline. >>> >>> Anyhow, activescaffold works with activerecord and infers a really >>> slick AJAX UI that supports sensible CRUD more or less instantly. >>> Once installed, you can go through and customize views by adding >>> actions links, filtering columns, and generally overriding bits of >>> logic to make it more task focused. >>> >>> It would be really cool to have a similar facility in Seaside. >>> >>> Cheers, >>> -Todd Blanchard >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>> >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
That is an interesting question - I've taken a run with magritte once or twice and did not make satisfactory progress and abandoned it.
I found the method of defining the meta model in magritte to be rather ponderous and awkward. Not that it isn't expressive, but I don't know all the parts/mappings/kinds of things - I spent all this time looking at the docs or examples. Also the documentation is non-existent. Really, if you want to get people to use magritte - STOP CODING AND START DOCUMENTING - I don't have time to figure it out from the examples or pier or any running code. I want docs and code snippets I can steal and modify. I want them in a nicely indexed web site so I can find a solution to my exact problem using google in about sixty seconds. Note website for activescaffold: http://activescaffold.com Click on documentation. Wow, everything I need to know right there. Brilliant. Where is the equivalent resource for Magritte? Google couldn't find it. Most of what you need to define the magritte model is already in the database schema - so can magritte just infer the fields and let me just customize it's behavior? The missing part in the database is the mapping of widgets and the order or presentation of fields. In the system I am doing (sells tickets to a new museum) there is Order->OrderTransactions (subclassed to Purchase,Exchange,Return)->Tickets (actually two relations - tickets added, tickets removed) The code to get a fully functioning back office/admin UI to edit this entire network is below - there's very little of it. Most of the code is just to customize elements - change labels for columns, change column order, suppress presentation of some columns or relationships. Why I picked Rails: 1) I already had an existing mysql database I had to use. 2) Client wanted a technology with a large local pool of talent he could hire - robotcoop is nearby (spinoff of amazon.com) - they are all rails and it is easy to hire people from there 3) I had a lot of UI that is back office and can be kind of ugyly/auto-generated and only a little public UI (ticket purchase flow) 4) Rails has a number of scalable deployment recipes available - I'm using apache->mongrel cluster. I will add capistrano to automate upgrade deployments 5) I'm replacing an equivalent system written in a nightmare combination of Java/Hibernate/Cocoon-js/xml-xslt/tomcat that nobody wants to maintain. I can't learn that many languages - but I most certainly can steal/translate logic and templates - it was easy to translate jsp to rhtml templates. For your amusement - the entirety of the order/ordertransaction/ticket code is below - it does a two level master-detail view with ajax updates in a single page. It took me almost no time at all to get this working and the majority of the code you see is just appearance tweaks or action disabling. : #model - (all of it - really) class Order < ActiveRecord::Base set_table_name 'orders' has_many :order_transactions, :class_name => 'OrderTransaction', :foreign_key => 'order_id', :dependent => :destroy belongs_to :purchaseTransaction, :class_name => 'TicketPurchase', :foreign_key => 'purchaseTransaction' end class OrderTransaction < ActiveRecord::Base has_many :ticketsReturned, :class_name => 'Ticket', :foreign_key => 'returnTransaction', :include => [:price, :product], :dependent => :destroy, :order => 'sequence_number' has_many :ticketsAdded, :class_name => 'Ticket', :foreign_key => 'originatingTransaction', :include => [:price, :product], :dependent => :destroy, :order => 'sequence_number' class TicketPurchase < OrderTransaction end class TicketExchange < OrderTransaction end class TicketReturn < OrderTransaction end class Ticket < ActiveRecord::Base end #controllers - tops is most complicated - remove create update and delete abilities - add some action links (all of it) class Admin::OrderController < AdminController layout "admin" active_scaffold :orders do | config | config.actions.exclude :delete config.actions.exclude :update config.actions.exclude :create config.action_links.add :resend_email, :label => 'Resend Email', :type => :record, :position => false, :confirm => 'Resend purchase confirmation email?' config.action_links.add :exchange_tickets, :label => 'Exchange Tickets', :type => :record, :position => :after, :crud_type => :update config.action_links.add :refund_tickets, :label => 'Refund Tickets', :type => :record, :position => :after, :crud_type => :update list.sorting = {:date => 'ASC'} config.list.columns = [:date, :commissionAccount, :nameFirst, :nameLast, :emailAddress, :order_transactions] config.list.per_page = 100 config.columns = [:date, :commissionAccount, :nameFirst, :nameLast, :emailAddress, :address1, :address2, :city, :state, :zip, :country, :order_transactions] end end class Admin::OrderTransactionController < AdminController layout "admin" active_scaffold :order_transaction do | config | config.list.columns = [:date, :type, :channel, :payment, :credit, :ticketsAdded, :ticketsReturned] config.actions.exclude :delete config.actions.exclude :update config.actions.exclude :create end end class Admin::TicketController < AdminController layout "admin" active_scaffold :ticket do | config | config.list.columns = [:forGto, :validForDate, :product, :price, :status, :purchasePrice, :serviceCharge, :order] config.list.per_page = 100 list.sorting = {:validForDate => 'ASC'} columns[:validForDate].label = "Date" columns[:product].label = "Description" columns[:price].label = "Ticket" columns[:purchasePrice].label = "Price" columns[:serviceCharge].label = "Service Charge" config.actions.exclude :delete config.actions.exclude :update config.actions.exclude :create end #views - auto-generated - no code at all On Jun 1, 2008, at 12:47 AM, stephane ducasse wrote:
_______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Hi Todd
You are right but you can also participate. You want a lot and we are few. Just a reminder Lukas delivers a lot of high quality code: Pier Seaside Magritte Lukas is helping maintaining the website of seaside, doing a PhD, ... I always mentioned that it would be good to have Magritte to produce simple table and sql mapping. Now if nobody builds something for what he needs then it will not exist. I think that Seasiders could share more. May be there is not enough producers compared to the consumers. Stef On Jun 1, 2008, at 8:45 PM, Todd Blanchard wrote: > That is an interesting question - I've taken a run with magritte > once or twice and did not make satisfactory progress and abandoned it. > > I found the method of defining the meta model in magritte to be > rather ponderous and awkward. > > Not that it isn't expressive, but I don't know all the parts/ > mappings/kinds of things - I spent all this time looking at the docs > or examples. Also the documentation is non-existent. Really, if > you want to get people to use magritte - STOP CODING AND START > DOCUMENTING - I don't have time to figure it out from the examples > or pier or any running code. I want docs and code snippets I can > steal and modify. I want them in a nicely indexed web site so I can > find a solution to my exact problem using google in about sixty > seconds. > > Note website for activescaffold: http://activescaffold.com > Click on documentation. Wow, everything I need to know right > there. Brilliant. Where is the equivalent resource for Magritte? > Google couldn't find it. > > Most of what you need to define the magritte model is already in the > database schema - so can magritte just infer the fields and let me > just customize it's behavior? > > The missing part in the database is the mapping of widgets and the > order or presentation of fields. > > In the system I am doing (sells tickets to a new museum) there is > > Order->OrderTransactions (subclassed to Purchase,Exchange,Return)- > >Tickets (actually two relations - tickets added, tickets removed) > > The code to get a fully functioning back office/admin UI to edit > this entire network is below - there's very little of it. Most of > the code is just to customize elements - change labels for columns, > change column order, suppress presentation of some columns or > relationships. > > Why I picked Rails: > > 1) I already had an existing mysql database I had to use. > 2) Client wanted a technology with a large local pool of talent he > could hire - robotcoop is nearby (spinoff of amazon.com) - they are > all rails and it is easy to hire people from there > 3) I had a lot of UI that is back office and can be kind of ugyly/ > auto-generated and only a little public UI (ticket purchase flow) > 4) Rails has a number of scalable deployment recipes available - I'm > using apache->mongrel cluster. I will add capistrano to automate > upgrade deployments > 5) I'm replacing an equivalent system written in a nightmare > combination of Java/Hibernate/Cocoon-js/xml-xslt/tomcat that nobody > wants to maintain. I can't learn that many languages - but I most > certainly can steal/translate logic and templates - it was easy to > translate jsp to rhtml templates. > > For your amusement - the entirety of the order/ordertransaction/ > ticket code is below - it does a two level master-detail view with > ajax updates in a single page. It took me almost no time at all to > get this working and the majority of the code you see is just > appearance tweaks or action disabling. > > > : > #model - (all of it - really) > class Order < ActiveRecord::Base > set_table_name 'orders' > has_many :order_transactions, :class_name => > 'OrderTransaction', :foreign_key => 'order_id', :dependent => :destroy > belongs_to :purchaseTransaction, :class_name => > 'TicketPurchase', :foreign_key => 'purchaseTransaction' > end > > class OrderTransaction < ActiveRecord::Base > has_many :ticketsReturned, :class_name => 'Ticket', :foreign_key > => 'returnTransaction', :include => [:price, :product], :dependent > => :destroy, :order => 'sequence_number' > has_many :ticketsAdded, :class_name => 'Ticket', :foreign_key => > 'originatingTransaction', :include => [:price, :product], :dependent > => :destroy, :order => 'sequence_number' > > class TicketPurchase < OrderTransaction > end > > class TicketExchange < OrderTransaction > end > > class TicketReturn < OrderTransaction > end > > class Ticket < ActiveRecord::Base > end > > #controllers - tops is most complicated - remove create update and > delete abilities - add some action links (all of it) > class Admin::OrderController < AdminController > layout "admin" > active_scaffold :orders do | config | > config.actions.exclude :delete > config.actions.exclude :update > config.actions.exclude :create > config.action_links.add :resend_email, :label => 'Resend > Email', :type => :record, :position => false, :confirm => 'Resend > purchase confirmation email?' > config.action_links.add :exchange_tickets, :label => 'Exchange > Tickets', :type => :record, :position => :after, :crud_type => :update > config.action_links.add :refund_tickets, :label => 'Refund > Tickets', :type => :record, :position => :after, :crud_type => :update > list.sorting = {:date => 'ASC'} > config.list.columns = > [:date > , :commissionAccount > , :nameFirst, :nameLast, :emailAddress, :order_transactions] > config.list.per_page = 100 > config.columns = > [:date > , :commissionAccount > , :nameFirst > , :nameLast > , :emailAddress > , :address1 > , :address2, :city, :state, :zip, :country, :order_transactions] > end > end > > class Admin::OrderTransactionController < AdminController > layout "admin" > active_scaffold :order_transaction do | config | > config.list.columns = > [:date > , :type, :channel, :payment, :credit, :ticketsAdded, :ticketsReturned] > config.actions.exclude :delete > config.actions.exclude :update > config.actions.exclude :create > end > end > > class Admin::TicketController < AdminController > layout "admin" > active_scaffold :ticket do | config | > config.list.columns = > [:forGto > , :validForDate > , :product, :price, :status, :purchasePrice, :serviceCharge, :order] > config.list.per_page = 100 > list.sorting = {:validForDate => 'ASC'} > columns[:validForDate].label = "Date" > columns[:product].label = "Description" > columns[:price].label = "Ticket" > columns[:purchasePrice].label = "Price" > columns[:serviceCharge].label = "Service Charge" > config.actions.exclude :delete > config.actions.exclude :update > config.actions.exclude :create > end > > #views - auto-generated - no code at all > > > > > > > > On Jun 1, 2008, at 12:47 AM, stephane ducasse wrote: > >> todd >> do you think that magritte could help there? >> >> Stef >> >> On May 31, 2008, at 1:04 AM, Todd Blanchard wrote: >> >>> I watched the screencast. It is not the same thing. I think you >>> guys are missing something key in that project of yours. >>> >>> Active scaffold simply lets me point the app at a db and ZAM total >>> admin UI that looks nice with AJAX master detail editing. I can >>> then filter out attributes that people ought not to edit, apply >>> permissions, and decorate the app with task links. >>> >>> The demo shows app development. I didn't develop a thing apart >>> from specify some mappings because the database used weird and >>> inconsistent naming conventions. >>> >>> I also found it interesting that the app being developed in the >>> screencast didn't look nearly as sophisticated as the tools being >>> used to build it. I don't find that a good selling point. >>> >>> -Todd Blanchard >>> >>> On May 30, 2008, at 4:28 AM, James Robertson wrote: >>> >>>> Cincom is doing exactly that - combining the ActiveRecord pattern >>>> with scaffolding. Have a look here: >>>> >>>> http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 >>>> >>>> James Robertson >>>> Cincom Smalltalk Product Evangelist >>>> http://www.cincomsmalltalk.com/blog/blogView >>>> Talk Small and Carry a Big Class Library >>>> >>>> >>>> >>>> >>>> On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: >>>> >>>>> With the idea that no good idea should go un-stolen, allow me to >>>>> introduce seaside fans to active scaffold http://activescaffold.com >>>>> . >>>>> >>>>> I am wrapping up a ruby on rails engagement with a client and >>>>> discovered this framework. I ended up using ROR because the >>>>> client had an existing mysql database and Squeak's mysql support >>>>> isn't so hot where rails is all about mysql, and I had only a >>>>> couple "flows" but a whole lot of plain old admin-CRUD to do and >>>>> rails excels at plain crud on mysql. With activescaffold - I >>>>> had to write very little code for the admin UI - a major plus >>>>> because this project is on a very tight timeline. >>>>> >>>>> Anyhow, activescaffold works with activerecord and infers a >>>>> really slick AJAX UI that supports sensible CRUD more or less >>>>> instantly. Once installed, you can go through and customize >>>>> views by adding actions links, filtering columns, and generally >>>>> overriding bits of logic to make it more task focused. >>>>> >>>>> It would be really cool to have a similar facility in Seaside. >>>>> >>>>> Cheers, >>>>> -Todd Blanchard >>>>> _______________________________________________ >>>>> seaside mailing list >>>>> [hidden email] >>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>>>> >>>> >>>> _______________________________________________ >>>> seaside mailing list >>>> [hidden email] >>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>> >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>> >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by tblanchard
Hi Todd, the tools within Smalltalk are many years ahead of the tools the exist in the RoR. However, they are starting to get better with projects like Rubinious and MagLev. Also, please don't get me wrong because I do like RoR and that's one of the languages that I use on a regular basis. Next, please remember that Seaside is open source as well as the ActiveScaffold plugin that you mention. Thus, the Smalltalk community is always looking for people to build and architect various API to make system better. Are you interested in building such a component for Seaside? It would be great if you are because it could benefit the entire community.
-Conrad
On Fri, May 30, 2008 at 4:04 PM, Todd Blanchard <[hidden email]> wrote: I watched the screencast. It is not the same thing. I think you guys are missing something key in that project of yours. _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Ah, please don't get me wrong. I don't actually like RoR. I find Ruby's syntax to be confusing and pointlessly complex. OTOH, it has the right mix of stuff for the mission and I'm getting more comfortable with it. But I still don't really like it.
I do independent software development from my home. I cater to small businesses - largely because nobody else does and they need software too. These clients are very sensitive to price and time to delivery. I select the technology stack for each project based on the needs of the client. I'm just explaining why Seaside hasn't been getting picked. There are things I or my clients need that it just doesn't have. A good CRUD story on mysql is one of them. Documentation is another. Deployment is a third (although I remain hopeful for GLASS). When I make contributions to software projects, it is usually in the context of a project. I'll solve problems in the context of whatever I'm working in. I'd love to take the time out to contribute to Seaside but if I'm not using it, I'm not likely to be able to do it. It doesn't help that my septic system packed it up this spring and I have to pay for a replacement - I'm not turning down any work this year and I'm short of spare cycles to give away. Usually I take the summer off to do whatever I like. :-( So, short answer - I would love to dive in and crack this nut - but I don't have the resources to do it right now. On Jun 1, 2008, at 12:25 PM, Conrad Taylor wrote: Hi Todd, the tools within Smalltalk are many years ahead of the tools the exist in the RoR. However, they are starting to get better with projects like Rubinious and MagLev. Also, please don't get me wrong because I do like RoR and that's one of the languages that I use on a regular basis. Next, please remember that Seaside is open source as well as the ActiveScaffold plugin that you mention. Thus, the Smalltalk community is always looking for people to build and architect various API to make system better. Are you interested in building such a component for Seaside? It would be great if you are because it could benefit the entire community. _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by stephane ducasse
I think that Seaside has been moving very fast the last year or so and
I have not been able to keep up with it when I don't have client work that I can use it on. For awhile it was kind of the Lukas and Philippe show and things were just too much in flux to go near it. Since 2.8 is released, I think this is no longer true. What would be really great would be for people to stop building the next seaside and start building things WITH seaside to share. It is the classic Smalltalk problem - we have the best tools and we spend all of our time using them to build better tools. :-) Seriously - a huge contribution would be an empty seaside app that allows users to register, login, recover passwords, and an administrator UI to allow assigning permissions levels (just tags) to the users and mass mail them. This could serve as the basis for building any number of additional seaside apps on top of it and would hopefully foster a lot of activity in building community extensions on top of it. So if anyone is looking for an idea.... Scalable deployment recipes are lacking as well. A VERY common problem one finds on the web is the desire to have an instant community website with forums, a blog, some static content (marketing info or instructional manuals) and a little store to charge money for things. Google 'integrate phpbb wordpress' to get a feel for how many people want to do this. I've spent a lot of time with Drupal lately. As a user, I love how I can download and install features into an integrated website. As a developer, I've found that module development in Drupal is REALLY hard and obscure. my drupal site is http://audiofreakshow.com. I wrote a MIDI performance app last summer and I want to sell license activation keys through this site. I've found drupal module development to be really hard to get into and I'm not making any headway on that. It is sad because it is the only thing keeping me from marketing JambaLaya seriously. It would be cool to use a seaside site to do this, but all I had to do to get the drupal site to where it is was download modules and hack a bit of CSS. I did it in a few hours. I would love to dive in and participate - sadly I have two more RoR projects in the queue - one launches this week, another will take all summer. But I will keep looking for opportunities to help. I just have this cash flow problem you see.... -Todd Blanchard On Jun 1, 2008, at 11:56 AM, stephane ducasse wrote: > Hi Todd > > You are right but you can also participate. > You want a lot and we are few. > Just a reminder Lukas delivers a lot of high quality code: > Pier > Seaside > Magritte > Lukas is helping maintaining the website of seaside, doing a PhD, ... > I always mentioned that it would be good to have Magritte to produce > simple table and sql mapping. > Now if nobody builds something for what he needs then it will not > exist. > I think that Seasiders could share more. May be there is not enough > producers > compared to the consumers. > > Stef > > > On Jun 1, 2008, at 8:45 PM, Todd Blanchard wrote: > >> That is an interesting question - I've taken a run with magritte >> once or twice and did not make satisfactory progress and abandoned >> it. >> >> I found the method of defining the meta model in magritte to be >> rather ponderous and awkward. >> >> Not that it isn't expressive, but I don't know all the parts/ >> mappings/kinds of things - I spent all this time looking at the >> docs or examples. Also the documentation is non-existent. Really, >> if you want to get people to use magritte - STOP CODING AND START >> DOCUMENTING - I don't have time to figure it out from the examples >> or pier or any running code. I want docs and code snippets I can >> steal and modify. I want them in a nicely indexed web site so I can >> find a solution to my exact problem using google in about sixty >> seconds. >> >> Note website for activescaffold: http://activescaffold.com >> Click on documentation. Wow, everything I need to know right >> there. Brilliant. Where is the equivalent resource for Magritte? >> Google couldn't find it. >> >> Most of what you need to define the magritte model is already in >> the database schema - so can magritte just infer the fields and let >> me just customize it's behavior? >> >> The missing part in the database is the mapping of widgets and the >> order or presentation of fields. >> >> In the system I am doing (sells tickets to a new museum) there is >> >> Order->OrderTransactions (subclassed to Purchase,Exchange,Return)- >> >Tickets (actually two relations - tickets added, tickets removed) >> >> The code to get a fully functioning back office/admin UI to edit >> this entire network is below - there's very little of it. Most of >> the code is just to customize elements - change labels for columns, >> change column order, suppress presentation of some columns or >> relationships. >> >> Why I picked Rails: >> >> 1) I already had an existing mysql database I had to use. >> 2) Client wanted a technology with a large local pool of talent he >> could hire - robotcoop is nearby (spinoff of amazon.com) - they are >> all rails and it is easy to hire people from there >> 3) I had a lot of UI that is back office and can be kind of ugyly/ >> auto-generated and only a little public UI (ticket purchase flow) >> 4) Rails has a number of scalable deployment recipes available - >> I'm using apache->mongrel cluster. I will add capistrano to >> automate upgrade deployments >> 5) I'm replacing an equivalent system written in a nightmare >> combination of Java/Hibernate/Cocoon-js/xml-xslt/tomcat that nobody >> wants to maintain. I can't learn that many languages - but I most >> certainly can steal/translate logic and templates - it was easy to >> translate jsp to rhtml templates. >> >> For your amusement - the entirety of the order/ordertransaction/ >> ticket code is below - it does a two level master-detail view with >> ajax updates in a single page. It took me almost no time at all to >> get this working and the majority of the code you see is just >> appearance tweaks or action disabling. >> >> >> : >> #model - (all of it - really) >> class Order < ActiveRecord::Base >> set_table_name 'orders' >> has_many :order_transactions, :class_name => >> 'OrderTransaction', :foreign_key => 'order_id', :dependent >> => :destroy >> belongs_to :purchaseTransaction, :class_name => >> 'TicketPurchase', :foreign_key => 'purchaseTransaction' >> end >> >> class OrderTransaction < ActiveRecord::Base >> has_many :ticketsReturned, :class_name => 'Ticket', :foreign_key >> => 'returnTransaction', :include => [:price, :product], :dependent >> => :destroy, :order => 'sequence_number' >> has_many :ticketsAdded, :class_name => 'Ticket', :foreign_key => >> 'originatingTransaction', :include => >> [:price, :product], :dependent => :destroy, :order => >> 'sequence_number' >> >> class TicketPurchase < OrderTransaction >> end >> >> class TicketExchange < OrderTransaction >> end >> >> class TicketReturn < OrderTransaction >> end >> >> class Ticket < ActiveRecord::Base >> end >> >> #controllers - tops is most complicated - remove create update and >> delete abilities - add some action links (all of it) >> class Admin::OrderController < AdminController >> layout "admin" >> active_scaffold :orders do | config | >> config.actions.exclude :delete >> config.actions.exclude :update >> config.actions.exclude :create >> config.action_links.add :resend_email, :label => 'Resend >> Email', :type => :record, :position => false, :confirm => 'Resend >> purchase confirmation email?' >> config.action_links.add :exchange_tickets, :label => 'Exchange >> Tickets', :type => :record, :position => :after, :crud_type >> => :update >> config.action_links.add :refund_tickets, :label => 'Refund >> Tickets', :type => :record, :position => :after, :crud_type >> => :update >> list.sorting = {:date => 'ASC'} >> config.list.columns = >> [:date >> , :commissionAccount >> , :nameFirst, :nameLast, :emailAddress, :order_transactions] >> config.list.per_page = 100 >> config.columns = >> [:date >> , :commissionAccount >> , :nameFirst >> , :nameLast >> , :emailAddress >> , :address1 >> , :address2, :city, :state, :zip, :country, :order_transactions] >> end >> end >> >> class Admin::OrderTransactionController < AdminController >> layout "admin" >> active_scaffold :order_transaction do | config | >> config.list.columns = >> [:date >> , :type >> , :channel, :payment, :credit, :ticketsAdded, :ticketsReturned] >> config.actions.exclude :delete >> config.actions.exclude :update >> config.actions.exclude :create >> end >> end >> >> class Admin::TicketController < AdminController >> layout "admin" >> active_scaffold :ticket do | config | >> config.list.columns = >> [:forGto >> , :validForDate >> , :product, :price, :status, :purchasePrice, :serviceCharge, :order] >> config.list.per_page = 100 >> list.sorting = {:validForDate => 'ASC'} >> columns[:validForDate].label = "Date" >> columns[:product].label = "Description" >> columns[:price].label = "Ticket" >> columns[:purchasePrice].label = "Price" >> columns[:serviceCharge].label = "Service Charge" >> config.actions.exclude :delete >> config.actions.exclude :update >> config.actions.exclude :create >> end >> >> #views - auto-generated - no code at all >> >> >> >> >> >> >> >> On Jun 1, 2008, at 12:47 AM, stephane ducasse wrote: >> >>> todd >>> do you think that magritte could help there? >>> >>> Stef >>> >>> On May 31, 2008, at 1:04 AM, Todd Blanchard wrote: >>> >>>> I watched the screencast. It is not the same thing. I think you >>>> guys are missing something key in that project of yours. >>>> >>>> Active scaffold simply lets me point the app at a db and ZAM >>>> total admin UI that looks nice with AJAX master detail editing. >>>> I can then filter out attributes that people ought not to edit, >>>> apply permissions, and decorate the app with task links. >>>> >>>> The demo shows app development. I didn't develop a thing apart >>>> from specify some mappings because the database used weird and >>>> inconsistent naming conventions. >>>> >>>> I also found it interesting that the app being developed in the >>>> screencast didn't look nearly as sophisticated as the tools being >>>> used to build it. I don't find that a good selling point. >>>> >>>> -Todd Blanchard >>>> >>>> On May 30, 2008, at 4:28 AM, James Robertson wrote: >>>> >>>>> Cincom is doing exactly that - combining the ActiveRecord >>>>> pattern with scaffolding. Have a look here: >>>>> >>>>> http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 >>>>> >>>>> James Robertson >>>>> Cincom Smalltalk Product Evangelist >>>>> http://www.cincomsmalltalk.com/blog/blogView >>>>> Talk Small and Carry a Big Class Library >>>>> >>>>> >>>>> >>>>> >>>>> On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: >>>>> >>>>>> With the idea that no good idea should go un-stolen, allow me >>>>>> to introduce seaside fans to active scaffold http://activescaffold.com >>>>>> . >>>>>> >>>>>> I am wrapping up a ruby on rails engagement with a client and >>>>>> discovered this framework. I ended up using ROR because the >>>>>> client had an existing mysql database and Squeak's mysql >>>>>> support isn't so hot where rails is all about mysql, and I had >>>>>> only a couple "flows" but a whole lot of plain old admin-CRUD >>>>>> to do and rails excels at plain crud on mysql. With >>>>>> activescaffold - I had to write very little code for the admin >>>>>> UI - a major plus because this project is on a very tight >>>>>> timeline. >>>>>> >>>>>> Anyhow, activescaffold works with activerecord and infers a >>>>>> really slick AJAX UI that supports sensible CRUD more or less >>>>>> instantly. Once installed, you can go through and customize >>>>>> views by adding actions links, filtering columns, and generally >>>>>> overriding bits of logic to make it more task focused. >>>>>> >>>>>> It would be really cool to have a similar facility in Seaside. >>>>>> >>>>>> Cheers, >>>>>> -Todd Blanchard >>>>>> _______________________________________________ >>>>>> seaside mailing list >>>>>> [hidden email] >>>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/ >>>>>> seaside >>>>>> >>>>> >>>>> _______________________________________________ >>>>> seaside mailing list >>>>> [hidden email] >>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>>> >>>> _______________________________________________ >>>> seaside mailing list >>>> [hidden email] >>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>>> >>> >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
> A VERY common problem one finds on the web is the desire to have an instant
> community website with forums, a blog, some static content (marketing info > or instructional manuals) and a little store to charge money for things. > Google 'integrate phpbb wordpress' to get a feel for how many people want to > do this. > I find myself also needing these features. Currently I have a fledgling application that has a major google maps component and requires features typical in a community based site: user administration, forums, messages, comments etc. Plus a small amount of server side code to manage the maps. Unfortunately Pier does not contain the extensive feature set available in many OS forum projects. Currently under consideration is Vanila http://getvanilla.com/ My client would prefer to use MySql, and as much as it may be derided as an RDBMS, for 95% of projects it is good enough. It is the defacto standard server side dbms. Squeak must learn how to play well with MySql to be considered in the mix of open source solutions. I haven't as yet written Seaside out of the picture, and I personally love using smalltalk, but also need to write applications with the best available and feature rich components and just now Seaside is not hitting the mark. -- Edward Stow _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by tblanchard
I understand. The message was not only for you :)
Stef On Jun 2, 2008, at 2:43 AM, Todd Blanchard wrote: > Ah, please don't get me wrong. I don't actually like RoR. I find > Ruby's syntax to be confusing and pointlessly complex. OTOH, it has > the right mix of stuff for the mission and I'm getting more > comfortable with it. But I still don't really like it. > > I do independent software development from my home. I cater to > small businesses - largely because nobody else does and they need > software too. These clients are very sensitive to price and time to > delivery. > > I select the technology stack for each project based on the needs of > the client. I'm just explaining why Seaside hasn't been getting > picked. There are things I or my clients need that it just doesn't > have. A good CRUD story on mysql is one of them. Documentation is > another. Deployment is a third (although I remain hopeful for GLASS). > > When I make contributions to software projects, it is usually in the > context of a project. I'll solve problems in the context of > whatever I'm working in. I'd love to take the time out to > contribute to Seaside but if I'm not using it, I'm not likely to be > able to do it. > > It doesn't help that my septic system packed it up this spring and I > have to pay for a replacement - I'm not turning down any work this > year and I'm short of spare cycles to give away. Usually I take the > summer off to do whatever I like. :-( > > So, short answer - I would love to dive in and crack this nut - but > I don't have the resources to do it right now. > > On Jun 1, 2008, at 12:25 PM, Conrad Taylor wrote: > >> Hi Todd, the tools within Smalltalk are many years ahead of the >> tools the exist in the RoR. However, they are starting to get >> better with projects like Rubinious and MagLev. Also, please don't >> get me wrong because I do like RoR and that's one of the languages >> that I use on a regular basis. Next, please remember that Seaside >> is open source as well as the ActiveScaffold plugin that you >> mention. Thus, the Smalltalk community is always looking for >> people to build and architect various API to make system better. >> Are you interested in building such a component for Seaside? It >> would be great if you are because it could benefit the entire >> community. >> >> -Conrad >> >> On Fri, May 30, 2008 at 4:04 PM, Todd Blanchard >> <[hidden email]> wrote: >> I watched the screencast. It is not the same thing. I think you >> guys are missing something key in that project of yours. >> >> Active scaffold simply lets me point the app at a db and ZAM total >> admin UI that looks nice with AJAX master detail editing. I can >> then filter out attributes that people ought not to edit, apply >> permissions, and decorate the app with task links. >> >> The demo shows app development. I didn't develop a thing apart >> from specify some mappings because the database used weird and >> inconsistent naming conventions. >> >> I also found it interesting that the app being developed in the >> screencast didn't look nearly as sophisticated as the tools being >> used to build it. I don't find that a good selling point. >> >> -Todd Blanchard >> >> >> On May 30, 2008, at 4:28 AM, James Robertson wrote: >> >> Cincom is doing exactly that - combining the ActiveRecord pattern >> with scaffolding. Have a look here: >> >> http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 >> >> James Robertson >> Cincom Smalltalk Product Evangelist >> http://www.cincomsmalltalk.com/blog/blogView >> Talk Small and Carry a Big Class Library >> >> >> >> >> On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: >> >> With the idea that no good idea should go un-stolen, allow me to >> introduce seaside fans to active scaffold http://activescaffold.com. >> >> I am wrapping up a ruby on rails engagement with a client and >> discovered this framework. I ended up using ROR because the client >> had an existing mysql database and Squeak's mysql support isn't so >> hot where rails is all about mysql, and I had only a couple "flows" >> but a whole lot of plain old admin-CRUD to do and rails excels at >> plain crud on mysql. With activescaffold - I had to write very >> little code for the admin UI - a major plus because this project is >> on a very tight timeline. >> >> Anyhow, activescaffold works with activerecord and infers a really >> slick AJAX UI that supports sensible CRUD more or less instantly. >> Once installed, you can go through and customize views by adding >> actions links, filtering columns, and generally overriding bits of >> logic to make it more task focused. >> >> It would be really cool to have a similar facility in Seaside. >> >> Cheers, >> -Todd Blanchard >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by tblanchard
Lukas decided to package pier in a more user friendly way.
So we will really start using it. Stef On Jun 2, 2008, at 3:13 AM, Todd Blanchard wrote: > I think that Seaside has been moving very fast the last year or so > and I have not been able to keep up with it when I don't have client > work that I can use it on. For awhile it was kind of the Lukas and > Philippe show and things were just too much in flux to go near it. > Since 2.8 is released, I think this is no longer true. > > What would be really great would be for people to stop building the > next seaside and start building things WITH seaside to share. It is > the classic Smalltalk problem - we have the best tools and we spend > all of our time using them to build better tools. :-) > > Seriously - a huge contribution would be an empty seaside app that > allows users to register, login, recover passwords, and an > administrator UI to allow assigning permissions levels (just tags) > to the users and mass mail them. This could serve as the basis for > building any number of additional seaside apps on top of it and > would hopefully foster a lot of activity in building community > extensions on top of it. So if anyone is looking for an idea.... > > Scalable deployment recipes are lacking as well. > > A VERY common problem one finds on the web is the desire to have an > instant community website with forums, a blog, some static content > (marketing info or instructional manuals) and a little store to > charge money for things. Google 'integrate phpbb wordpress' to get a > feel for how many people want to do this. > > I've spent a lot of time with Drupal lately. As a user, I love how > I can download and install features into an integrated website. As > a developer, I've found that module development in Drupal is REALLY > hard and obscure. my drupal site is http://audiofreakshow.com. I > wrote a MIDI performance app last summer and I want to sell license > activation keys through this site. I've found drupal module > development to be really hard to get into and I'm not making any > headway on that. It is sad because it is the only thing keeping me > from marketing JambaLaya seriously. It would be cool to use a > seaside site to do this, but all I had to do to get the drupal site > to where it is was download modules and hack a bit of CSS. I did it > in a few hours. > > I would love to dive in and participate - sadly I have two more RoR > projects in the queue - one launches this week, another will take > all summer. But I will keep looking for opportunities to help. I > just have this cash flow problem you see.... > > -Todd Blanchard > > On Jun 1, 2008, at 11:56 AM, stephane ducasse wrote: > >> Hi Todd >> >> You are right but you can also participate. >> You want a lot and we are few. >> Just a reminder Lukas delivers a lot of high quality code: >> Pier >> Seaside >> Magritte >> Lukas is helping maintaining the website of seaside, doing a PhD, ... >> I always mentioned that it would be good to have Magritte to >> produce simple table and sql mapping. >> Now if nobody builds something for what he needs then it will not >> exist. >> I think that Seasiders could share more. May be there is not enough >> producers >> compared to the consumers. >> >> Stef >> >> >> On Jun 1, 2008, at 8:45 PM, Todd Blanchard wrote: >> >>> That is an interesting question - I've taken a run with magritte >>> once or twice and did not make satisfactory progress and abandoned >>> it. >>> >>> I found the method of defining the meta model in magritte to be >>> rather ponderous and awkward. >>> >>> Not that it isn't expressive, but I don't know all the parts/ >>> mappings/kinds of things - I spent all this time looking at the >>> docs or examples. Also the documentation is non-existent. >>> Really, if you want to get people to use magritte - STOP CODING >>> AND START DOCUMENTING - I don't have time to figure it out from >>> the examples or pier or any running code. I want docs and code >>> snippets I can steal and modify. I want them in a nicely indexed >>> web site so I can find a solution to my exact problem using google >>> in about sixty seconds. >>> >>> Note website for activescaffold: http://activescaffold.com >>> Click on documentation. Wow, everything I need to know right >>> there. Brilliant. Where is the equivalent resource for Magritte? >>> Google couldn't find it. >>> >>> Most of what you need to define the magritte model is already in >>> the database schema - so can magritte just infer the fields and >>> let me just customize it's behavior? >>> >>> The missing part in the database is the mapping of widgets and the >>> order or presentation of fields. >>> >>> In the system I am doing (sells tickets to a new museum) there is >>> >>> Order->OrderTransactions (subclassed to Purchase,Exchange,Return)- >>> >Tickets (actually two relations - tickets added, tickets removed) >>> >>> The code to get a fully functioning back office/admin UI to edit >>> this entire network is below - there's very little of it. Most of >>> the code is just to customize elements - change labels for >>> columns, change column order, suppress presentation of some >>> columns or relationships. >>> >>> Why I picked Rails: >>> >>> 1) I already had an existing mysql database I had to use. >>> 2) Client wanted a technology with a large local pool of talent he >>> could hire - robotcoop is nearby (spinoff of amazon.com) - they >>> are all rails and it is easy to hire people from there >>> 3) I had a lot of UI that is back office and can be kind of ugyly/ >>> auto-generated and only a little public UI (ticket purchase flow) >>> 4) Rails has a number of scalable deployment recipes available - >>> I'm using apache->mongrel cluster. I will add capistrano to >>> automate upgrade deployments >>> 5) I'm replacing an equivalent system written in a nightmare >>> combination of Java/Hibernate/Cocoon-js/xml-xslt/tomcat that >>> nobody wants to maintain. I can't learn that many languages - but >>> I most certainly can steal/translate logic and templates - it was >>> easy to translate jsp to rhtml templates. >>> >>> For your amusement - the entirety of the order/ordertransaction/ >>> ticket code is below - it does a two level master-detail view with >>> ajax updates in a single page. It took me almost no time at all >>> to get this working and the majority of the code you see is just >>> appearance tweaks or action disabling. >>> >>> >>> : >>> #model - (all of it - really) >>> class Order < ActiveRecord::Base >>> set_table_name 'orders' >>> has_many :order_transactions, :class_name => >>> 'OrderTransaction', :foreign_key => 'order_id', :dependent >>> => :destroy >>> belongs_to :purchaseTransaction, :class_name => >>> 'TicketPurchase', :foreign_key => 'purchaseTransaction' >>> end >>> >>> class OrderTransaction < ActiveRecord::Base >>> has_many :ticketsReturned, :class_name => 'Ticket', :foreign_key >>> => 'returnTransaction', :include => [:price, :product], :dependent >>> => :destroy, :order => 'sequence_number' >>> has_many :ticketsAdded, :class_name => 'Ticket', :foreign_key => >>> 'originatingTransaction', :include => >>> [:price, :product], :dependent => :destroy, :order => >>> 'sequence_number' >>> >>> class TicketPurchase < OrderTransaction >>> end >>> >>> class TicketExchange < OrderTransaction >>> end >>> >>> class TicketReturn < OrderTransaction >>> end >>> >>> class Ticket < ActiveRecord::Base >>> end >>> >>> #controllers - tops is most complicated - remove create update and >>> delete abilities - add some action links (all of it) >>> class Admin::OrderController < AdminController >>> layout "admin" >>> active_scaffold :orders do | config | >>> config.actions.exclude :delete >>> config.actions.exclude :update >>> config.actions.exclude :create >>> config.action_links.add :resend_email, :label => 'Resend >>> Email', :type => :record, :position => false, :confirm => 'Resend >>> purchase confirmation email?' >>> config.action_links.add :exchange_tickets, :label => 'Exchange >>> Tickets', :type => :record, :position => :after, :crud_type >>> => :update >>> config.action_links.add :refund_tickets, :label => 'Refund >>> Tickets', :type => :record, :position => :after, :crud_type >>> => :update >>> list.sorting = {:date => 'ASC'} >>> config.list.columns = >>> [:date >>> , :commissionAccount >>> , :nameFirst, :nameLast, :emailAddress, :order_transactions] >>> config.list.per_page = 100 >>> config.columns = >>> [:date >>> , :commissionAccount >>> , :nameFirst >>> , :nameLast >>> , :emailAddress >>> , :address1 >>> , :address2, :city, :state, :zip, :country, :order_transactions] >>> end >>> end >>> >>> class Admin::OrderTransactionController < AdminController >>> layout "admin" >>> active_scaffold :order_transaction do | config | >>> config.list.columns = >>> [:date >>> , :type >>> , :channel, :payment, :credit, :ticketsAdded, :ticketsReturned] >>> config.actions.exclude :delete >>> config.actions.exclude :update >>> config.actions.exclude :create >>> end >>> end >>> >>> class Admin::TicketController < AdminController >>> layout "admin" >>> active_scaffold :ticket do | config | >>> config.list.columns = >>> [:forGto >>> , :validForDate >>> , :product, :price, :status, :purchasePrice, :serviceCharge, :order] >>> config.list.per_page = 100 >>> list.sorting = {:validForDate => 'ASC'} >>> columns[:validForDate].label = "Date" >>> columns[:product].label = "Description" >>> columns[:price].label = "Ticket" >>> columns[:purchasePrice].label = "Price" >>> columns[:serviceCharge].label = "Service Charge" >>> config.actions.exclude :delete >>> config.actions.exclude :update >>> config.actions.exclude :create >>> end >>> >>> #views - auto-generated - no code at all >>> >>> >>> >>> >>> >>> >>> >>> On Jun 1, 2008, at 12:47 AM, stephane ducasse wrote: >>> >>>> todd >>>> do you think that magritte could help there? >>>> >>>> Stef >>>> >>>> On May 31, 2008, at 1:04 AM, Todd Blanchard wrote: >>>> >>>>> I watched the screencast. It is not the same thing. I think >>>>> you guys are missing something key in that project of yours. >>>>> >>>>> Active scaffold simply lets me point the app at a db and ZAM >>>>> total admin UI that looks nice with AJAX master detail editing. >>>>> I can then filter out attributes that people ought not to edit, >>>>> apply permissions, and decorate the app with task links. >>>>> >>>>> The demo shows app development. I didn't develop a thing apart >>>>> from specify some mappings because the database used weird and >>>>> inconsistent naming conventions. >>>>> >>>>> I also found it interesting that the app being developed in the >>>>> screencast didn't look nearly as sophisticated as the tools >>>>> being used to build it. I don't find that a good selling point. >>>>> >>>>> -Todd Blanchard >>>>> >>>>> On May 30, 2008, at 4:28 AM, James Robertson wrote: >>>>> >>>>>> Cincom is doing exactly that - combining the ActiveRecord >>>>>> pattern with scaffolding. Have a look here: >>>>>> >>>>>> http://www.cincomsmalltalk.com/userblogs/mls/blogView?showComments=true&printTitle=WebVelocity_alpha_screencast&entry=3388846573 >>>>>> >>>>>> James Robertson >>>>>> Cincom Smalltalk Product Evangelist >>>>>> http://www.cincomsmalltalk.com/blog/blogView >>>>>> Talk Small and Carry a Big Class Library >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> On May 30, 2008, at 3:13 AM, Todd Blanchard wrote: >>>>>> >>>>>>> With the idea that no good idea should go un-stolen, allow me >>>>>>> to introduce seaside fans to active scaffold http://activescaffold.com >>>>>>> . >>>>>>> >>>>>>> I am wrapping up a ruby on rails engagement with a client and >>>>>>> discovered this framework. I ended up using ROR because the >>>>>>> client had an existing mysql database and Squeak's mysql >>>>>>> support isn't so hot where rails is all about mysql, and I had >>>>>>> only a couple "flows" but a whole lot of plain old admin-CRUD >>>>>>> to do and rails excels at plain crud on mysql. With >>>>>>> activescaffold - I had to write very little code for the admin >>>>>>> UI - a major plus because this project is on a very tight >>>>>>> timeline. >>>>>>> >>>>>>> Anyhow, activescaffold works with activerecord and infers a >>>>>>> really slick AJAX UI that supports sensible CRUD more or less >>>>>>> instantly. Once installed, you can go through and customize >>>>>>> views by adding actions links, filtering columns, and >>>>>>> generally overriding bits of logic to make it more task focused. >>>>>>> >>>>>>> It would be really cool to have a similar facility in Seaside. >>>>>>> >>>>>>> Cheers, >>>>>>> -Todd Blanchard >>>>>>> _______________________________________________ >>>>>>> seaside mailing list >>>>>>> [hidden email] >>>>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> seaside mailing list >>>>>> [hidden email] >>>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/ >>>>>> seaside >>>>> >>>>> _______________________________________________ >>>>> seaside mailing list >>>>> [hidden email] >>>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>>>> >>>> >>>> _______________________________________________ >>>> seaside mailing list >>>> [hidden email] >>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>> >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by Edward Stow
So may be we should really do a call for a bounty:
if we all put a bit of money and ESUG is pushing then we should be able to create something. I imagine that ESUG could put around 2500 Euros to start. Stef On Jun 2, 2008, at 4:53 AM, Edward Stow wrote: >> A VERY common problem one finds on the web is the desire to have an >> instant >> community website with forums, a blog, some static content >> (marketing info >> or instructional manuals) and a little store to charge money for >> things. >> Google 'integrate phpbb wordpress' to get a feel for how many >> people want to >> do this. >> > I find myself also needing these features. > > Currently I have a fledgling application that has a major google maps > component and requires features typical in a community based site: > user administration, forums, messages, comments etc. Plus a small > amount of server side code to manage the maps. > > Unfortunately Pier does not contain the extensive feature set > available in many OS forum projects. Currently under consideration is > Vanila http://getvanilla.com/ > > My client would prefer to use MySql, and as much as it may be derided > as an RDBMS, for 95% of projects it is good enough. It is the > defacto standard server side dbms. Squeak must learn how to play well > with MySql to be considered in the mix of open source solutions. > > I haven't as yet written Seaside out of the picture, and I personally > love using smalltalk, but also need to write applications with the > best available and feature rich components and just now Seaside is not > hitting the mark. > > -- > Edward Stow > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Maybe is time to start thinking in a "Seaside full stack"?
I think there are some tasks we (as a community) should do for enforce seaside adoption, that does not belong to seaside it self, but would be cool to have. I think we need to cover: - Persistence for the Seaside (maybe a "Coral" project?) I think this as an abstraction layer with you can choose between a magma solution and a glorp solution. - Integration for the Seaside ("FlyingFish", "Shipyard"?) an abstraction layer to publicate and consume web services (awful but necesary for productive applications) and maybe another and coolest integration ways, such as hessian. - And of course, a "Describe it all" ("Voyage"?) based on magritte, we should provide a way to do all of this in a clean and elegant way. What do you think? On 2008-06-02 03:45:50 -0300, stephane ducasse <[hidden email]> said: > So may be we should really do a call for a bounty: > if we all put a bit of money and ESUG is pushing then we should > be able to create something. > I imagine that ESUG could put around 2500 Euros to start. > > Stef > > > On Jun 2, 2008, at 4:53 AM, Edward Stow wrote: > >>> A VERY common problem one finds on the web is the desire to have an instant >>> community website with forums, a blog, some static content (marketing info >>> or instructional manuals) and a little store to charge money for things. >>> Google 'integrate phpbb wordpress' to get a feel for how many people want to >>> do this. >>> >> I find myself also needing these features. >> >> Currently I have a fledgling application that has a major google maps >> component and requires features typical in a community based site: >> user administration, forums, messages, comments etc. Plus a small >> amount of server side code to manage the maps. >> >> Unfortunately Pier does not contain the extensive feature set >> available in many OS forum projects. Currently under consideration is >> Vanila http://getvanilla.com/ >> >> My client would prefer to use MySql, and as much as it may be derided >> as an RDBMS, for 95% of projects it is good enough. It is the >> defacto standard server side dbms. Squeak must learn how to play well >> with MySql to be considered in the mix of open source solutions. >> >> I haven't as yet written Seaside out of the picture, and I personally >> love using smalltalk, but also need to write applications with the >> best available and feature rich components and just now Seaside is not >> hitting the mark. >> >> -- >> Edward Stow >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
It would be good to have indeed the possibility for people like todd
to work with Squeak. > Maybe is time to start thinking in a "Seaside full stack"? > > I think there are some tasks we (as a community) should do for > enforce seaside adoption, that does not belong to seaside it self, > but would be cool to have. > > I think we need to cover: > - Persistence for the Seaside (maybe a "Coral" project?) > I think this as an abstraction layer with you can choose between a > magma solution and a glorp solution. > - Integration for the Seaside ("FlyingFish", "Shipyard"?) > an abstraction layer to publicate and consume web services (awful > but necesary for productive applications) and maybe another and > coolest integration ways, such as hessian. > - And of course, a "Describe it all" ("Voyage"?) > based on magritte, we should provide a way to do all of this in a > clean and elegant way. > > What do you think? > > On 2008-06-02 03:45:50 -0300, stephane ducasse <[hidden email] > > said: > >> So may be we should really do a call for a bounty: >> if we all put a bit of money and ESUG is pushing then we should >> be able to create something. >> I imagine that ESUG could put around 2500 Euros to start. >> Stef >> On Jun 2, 2008, at 4:53 AM, Edward Stow wrote: >>>> A VERY common problem one finds on the web is the desire to have >>>> an instant >>>> community website with forums, a blog, some static content >>>> (marketing info >>>> or instructional manuals) and a little store to charge money for >>>> things. >>>> Google 'integrate phpbb wordpress' to get a feel for how many >>>> people want to >>>> do this. >>> I find myself also needing these features. >>> Currently I have a fledgling application that has a major google >>> maps >>> component and requires features typical in a community based site: >>> user administration, forums, messages, comments etc. Plus a small >>> amount of server side code to manage the maps. >>> Unfortunately Pier does not contain the extensive feature set >>> available in many OS forum projects. Currently under >>> consideration is >>> Vanila http://getvanilla.com/ >>> My client would prefer to use MySql, and as much as it may be >>> derided >>> as an RDBMS, for 95% of projects it is good enough. It is the >>> defacto standard server side dbms. Squeak must learn how to play >>> well >>> with MySql to be considered in the mix of open source solutions. >>> I haven't as yet written Seaside out of the picture, and I >>> personally >>> love using smalltalk, but also need to write applications with the >>> best available and feature rich components and just now Seaside is >>> not >>> hitting the mark. >>> -- >>> Edward Stow >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
In reply to this post by stephane ducasse
stephane ducasse wrote:
> Lukas decided to package pier in a more user friendly way. > So we will really start using it. I am not sure I understand the first sentence. Has this packaging already been done? If so which version? 2.8, 2.9, ...? If not any idea when? Thanks. Jimmie _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Sorry I was using package in the marketing sense.
To market it better (= easier for beginners to use). Stef On Jun 3, 2008, at 12:27 AM, Jimmie Houchin wrote: > stephane ducasse wrote: >> Lukas decided to package pier in a more user friendly way. >> So we will really start using it. > > I am not sure I understand the first sentence. > > Has this packaging already been done? > If so which version? 2.8, 2.9, ...? > > If not any idea when? > > Thanks. > > Jimmie > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Hi, it's very good to hear some of the comments in regards to Seaside. Thus, where can I find a list of Seaside todos? Is there a Seaside road-map? I would like to contribute to the success of Seaside but I don't know the high-level development details of the project. I just don't want to build something that's not needed or someone is working on a component with similar functionality. Thus, it's not clear on how to proceed at this point in time.
-Conrad
On Mon, Jun 2, 2008 at 9:02 PM, stephane ducasse <[hidden email]> wrote: Sorry I was using package in the marketing sense. _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
On which part would you like to work? On the core Seaside or something
around Seaside like the stuff suggested in this thread? Cheers Philippe 2008/6/3 Conrad Taylor <[hidden email]>: > Hi, it's very good to hear some of the comments in regards to Seaside. > Thus, where can I find a list of Seaside todos? Is there a Seaside > road-map? I would like to contribute to the success of Seaside but I don't > know the high-level development details of the project. I just don't want > to build something that's not needed or someone is working on a component > with similar functionality. Thus, it's not clear on how to proceed at this > point in time. > -Conrad > > On Mon, Jun 2, 2008 at 9:02 PM, stephane ducasse <[hidden email]> > wrote: >> >> Sorry I was using package in the marketing sense. >> To market it better (= easier for beginners to use). >> >> Stef >> >> On Jun 3, 2008, at 12:27 AM, Jimmie Houchin wrote: >> >>> stephane ducasse wrote: >>>> >>>> Lukas decided to package pier in a more user friendly way. >>>> So we will really start using it. >>> >>> I am not sure I understand the first sentence. >>> >>> Has this packaging already been done? >>> If so which version? 2.8, 2.9, ...? >>> >>> If not any idea when? >>> >>> Thanks. >>> >>> Jimmie >>> >>> _______________________________________________ >>> seaside mailing list >>> [hidden email] >>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside >>> >> >> _______________________________________________ >> seaside mailing list >> [hidden email] >> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > > _______________________________________________ > seaside mailing list > [hidden email] > http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside > > seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Hi Philippe, I would be interested in doing work in both areas.
-Conrad
On Tue, Jun 3, 2008 at 12:31 AM, Philippe Marschall <[hidden email]> wrote: On which part would you like to work? On the core Seaside or something _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Free forum by Nabble | Edit this page |