Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Alec Taylor
On Tue, Dec 6, 2011 at 6:15 AM, Denny 2...@denny.me wrote:
 On Mon, 2011-10-31 at 02:38 +1100, Alec Taylor wrote:
 Good morning,

 How would I go about integrating/developing a multi-levelled
 meta-shopping-cart using Catalyst?

 [ ... ]

 Thanks for all suggestions,


 On Mon, 2011-12-05 at 15:53 +1100, Alec Taylor wrote:
 Good afternoon,

 How would I go about building a single-domain multi-shop with
 multiple-gateways; linked to the one shopping-cart; using Catalyst?

 Thanks for all suggestions,


 Hi Alec,

 My suggestion is that you should probably take the following approach:
 1. Design the software architecture.
 2. Implement the system as designed.
 3. Test it thoroughly.

 If you're not sure how to proceed with any of those steps, then given
 that you seem to be talking about building a very large-scale commercial
 application, and you haven't mentioned it being open source, I would
 suggest that you should probably hire someone who does know how to do it
 and pay them appropriately.

 If you get stuck at specific technical points in step 2 or 3 then I'm
 sure people on this list will be very happy to give you some guidance,
 but if you've not even made a start on step 1 then I think you have some
 work to do for yourself first - or some hiring to do.

 Regards,
 Denny


Thanks for the suggestion Denny.

We definitely support open-source, but haven't yet discussed which
components we'll open-source.

Currently we are looking for a good starting base, with a lot of the
development already done for us; then we'll build up from that
foundation.

Research includes: Ruby on Rails (spree), DJango (satchmo) and Catalyst.

Could you recommend some libraries on CPAN (or other places) which
will provide a strong foundation for this project?

Thanks for all suggestions,

Alec Taylor

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Kieren Diment


On 06/12/2011, at 7:07 PM, Alec Taylor wrote:

 On Tue, Dec 6, 2011 at 6:15 AM, Denny 2...@denny.me wrote:
 On Mon, 2011-10-31 at 02:38 +1100, Alec Taylor wrote:
 Good morning,
 
 How would I go about integrating/developing a multi-levelled
 meta-shopping-cart using Catalyst?
 
 [ ... ]
 
 Thanks for all suggestions,
 

Disclaimer:  My total experience with web shopping is having looked into the 
turnkey php solutions for an abortive project some time ago.

As denny says, it's a matter of spending the time to figure out what you want 
in terms of planning and then spending more time writing the code.  Catalyst 
buys you flexibility, although the learning curve is probably steeper than 
other web frameworks.  However, as any emacs user will tell you, a steep 
learning curve is often a benefit.

Once you've spent the setup time, what you're asking for is pretty easy, given 
that you have the programmer resources to actually achieve your specification 
(that's up to you to figure out)

The bulk of the work in Catalyst apps is setting up and maintaining the 
business logic, and resisting the temptation to shove all of your business 
logic into controllers.  So what you probably want is a nice pluggable 
architecture to handle the payment stuff (chapter 4 of The Definitive Guide to 
Catalyst gives an implementation for this).

So for your use-case you can probably extend the sql schema for an existing 
shopping cart app to make it multi-gateway, and then get DBIx::Class to 
understand it via DBIx::Class::Schema::Loader (you'll probably have to do this 
iteratively with a dummy payment gateway model in the early stages).  That will 
provide you with the model for your user/order system.  You'll need to evaluate 
the quality of the payment gateway  models to do that.  At this point you need 
to start thinking about integrating existing CPAN modules  into your app, 
preferably using a pluggable architecture, probably  using 
Catayst::Model::Adaptor or it's variants (although writing your own model from 
scratch is pretty trivial as well).  CPAN has a lot of payment gateway stuff on 
it.  Have a look here for details: 
https://metacpan.org/search?q=business+payment

Then there's the writing templates, and Controllers to provide the front-end.   
This is pretty routine work.  If you end up using one of the turnkey solutions, 
you'll spend lots of time bending their existing html to your will.  Writing 
your own templates (and stealing appropriately from elsewhere) will buy you 
more flexibility, and in the long run will cost you little or no extra time.  
If you have no existing preferences for a templating language Template Toolkit 
(https://metacpan.org/module/Template) works well.  My other prefrerence is to 
use CSS frameworks to do the clean-design stuff for me.  At the moment my 
preference is for the Elastic framework.

The overriding philosophy of Catalyst is that building a web app is for life, 
not just for making a blog engine in 5 minutes.  To my understanding Catalyst's 
major advantages are that it scales better than its competition (without using 
unreasonable hardware requirements or having programmers hack on it's core), 
and it's more flexible than its competition as well.



 
 On Mon, 2011-12-05 at 15:53 +1100, Alec Taylor wrote:
 Good afternoon,
 
 How would I go about building a single-domain multi-shop with
 multiple-gateways; linked to the one shopping-cart; using Catalyst?
 
 Thanks for all suggestions,
 
 
 Hi Alec,
 
 My suggestion is that you should probably take the following approach:
 1. Design the software architecture.
 2. Implement the system as designed.
 3. Test it thoroughly.
 
 If you're not sure how to proceed with any of those steps, then given
 that you seem to be talking about building a very large-scale commercial
 application, and you haven't mentioned it being open source, I would
 suggest that you should probably hire someone who does know how to do it
 and pay them appropriately.
 
 If you get stuck at specific technical points in step 2 or 3 then I'm
 sure people on this list will be very happy to give you some guidance,
 but if you've not even made a start on step 1 then I think you have some
 work to do for yourself first - or some hiring to do.
 
 Regards,
 Denny
 
 
 Thanks for the suggestion Denny.
 
 We definitely support open-source, but haven't yet discussed which
 components we'll open-source.
 
 Currently we are looking for a good starting base, with a lot of the
 development already done for us; then we'll build up from that
 foundation.
 
 Research includes: Ruby on Rails (spree), DJango (satchmo) and Catalyst.
 
 Could you recommend some libraries on CPAN (or other places) which
 will provide a strong foundation for this project?
 
 Thanks for all suggestions,
 
 Alec Taylor
 
 ___
 List: Catalyst@lists.scsys.co.uk
 Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
 Searchable archive: 

Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Tomas Doran


On 6 Dec 2011, at 08:07, Alec Taylor wrote:

Currently we are looking for a good starting base, with a lot of the
development already done for us; then we'll build up from that
foundation.

Research includes: Ruby on Rails (spree), DJango (satchmo) and  
Catalyst.


Use whatever the development team you're putting together knows most  
about and has experience of developing and using in production already.


If everyone involved is picking up a new language and framework(s),  
then _a lot_ of your initial code is going to be crappy.


It isn't worth making this technology choice until you know who's  
going to actually implement this.


If you're making the technology choice, and you haven't got production  
experience building and maintaining large scale web apps on one of the  
platforms you're picking from - then you're the wrong person to be  
making that choice.


Cheers
t0m


___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Alec Taylor
On Tue, Dec 6, 2011 at 9:21 PM, Kieren Diment dim...@gmail.com wrote:


 On 06/12/2011, at 9:06 PM, Tomas Doran wrote:

 If you're making the technology choice, and you haven't got production 
 experience building and maintaining large scale web apps on one of the 
 platforms you're picking from - then you're the wrong person to be making 
 that choice.

 I'd be less absolute than that.  I'd say *probably* the wrong person.

I am building this project with one other person. Neither off us have
experience with web-frameworks.

I've done some work with CGI Python in the past (building a minuscule
social-network with video-conferencing), but mostly my talent lies in
C++.

The other is mostly a low-level C, C++ and Assembly coder, although
has done some work with graphics libraries in C++.

The reason I am asking on mailing-lists is in order to gain
information from people who are knowledgeable on this.

Thanks Kieren for your suggestions related to implementation.

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread shawn wilson
On Tue, Dec 6, 2011 at 07:01, Kieren Diment dim...@gmail.com wrote:



 On the other hand i think it's all about the libraries. If you're going to 
 have to carve more home grown hand made wheels/libraries with python, then 
 that's going to be a massive pain too.  Ymmv.

i don't know what python has to offer. however, i would think there
are probably some decent mvc web frameworks in python. also, i would
consider the framework an afterthought if you already have the
programmer - if i have a hammer, i can build a house or smash my
finger, it all depends on me and not the hammer.

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Alec Taylor
I used Wt for one project, it's great but has nowhere near enough to
be useful as a web-framework.

(i.e. I'd have to manually code in everything from authentication to
payment gateways)

On Tue, Dec 6, 2011 at 11:03 PM, Denny 2...@denny.me wrote:
 On Tue, 2011-12-06 at 22:06 +1100, Alec Taylor wrote:
 I am building this project with one other person. Neither off us have
 experience with web-frameworks.

 I've done some work with CGI Python in the past (building a minuscule
 social-network with video-conferencing), but mostly my talent lies in
 C++.

 The other is mostly a low-level C, C++ and Assembly coder, although
 has done some work with graphics libraries in C++.

 There's a C++ webdev framework: http://www.webtoolkit.eu/wt#/

 At a brief glance it sounds like it might be quite well-suited to what
 you want to do.

 Regards,
 Denny



 ___
 List: Catalyst@lists.scsys.co.uk
 Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
 Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
 Dev site: http://dev.catalyst.perl.org/

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-06 Thread Richard Siddall

Alec Taylor wrote:

Research includes: Ruby on Rails (spree), DJango (satchmo) and Catalyst.



You might want to look at Interchange (http://www.icdevgroup.org/i/dev). 
 It's a Perl ecommerce framework somewhat like MIVA.


Unfortunately, that project is in the midst of a major change.  The 
current code base, 5.6, will be replaced in 6.x by a much more 
Catalyst-like architecture, meaning you'd have to do a rewrite of your 
5.x based project to make use of the PSGI-based goodness.


Given that you said you had Python experience, I'd suggest browsing 
around PyPI for interesting Django add-ons: http://pypi.python.org/pypi/



Could you recommend some libraries on CPAN (or other places) which
will provide a strong foundation for this project?



I like Business::OnlinePayment, but it's not yet Moosified and uses the 
old object model in Perl.



Thanks for all suggestions,

Alec Taylor


Richard Siddall

___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/


Re: [Catalyst] Single-domain multi-shop, multi-gateway; linked to the one shopping-cart

2011-12-05 Thread Denny
On Mon, 2011-10-31 at 02:38 +1100, Alec Taylor wrote:
 Good morning,
 
 How would I go about integrating/developing a multi-levelled
 meta-shopping-cart using Catalyst?
 
 [ ... ]
 
 Thanks for all suggestions,


On Mon, 2011-12-05 at 15:53 +1100, Alec Taylor wrote:
 Good afternoon,
 
 How would I go about building a single-domain multi-shop with
 multiple-gateways; linked to the one shopping-cart; using Catalyst?
 
 Thanks for all suggestions,


Hi Alec,

My suggestion is that you should probably take the following approach:
1. Design the software architecture.
2. Implement the system as designed.
3. Test it thoroughly.

If you're not sure how to proceed with any of those steps, then given
that you seem to be talking about building a very large-scale commercial
application, and you haven't mentioned it being open source, I would
suggest that you should probably hire someone who does know how to do it
and pay them appropriately.

If you get stuck at specific technical points in step 2 or 3 then I'm
sure people on this list will be very happy to give you some guidance,
but if you've not even made a start on step 1 then I think you have some
work to do for yourself first - or some hiring to do.

Regards,
Denny



___
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/