Wednesday, August 5, 2009

The coffee machine

svenfuchs have you been programming in some other language before?

intangibleliquid html & css : yes

svenfuchs ok :)

intangibleliquid ruby is my first language.

intangibleliquid talking ruby like a baby lol

svenfuchs i guess the first thing to do then is face the fact that we’re really not talking about an easy task :)

svenfuchs think of adva_user as a part of your coffee making maschine that can be replaced by some service guys

intangibleliquid I know :-) It’s a training task for me

svenfuchs or maybe the printer ink cartige or something

svenfuchs so

svenfuchs when you want to replace this piece with a piece that’s not been built from the same manufacturer

svenfuchs you have to make sure that the new piece does two things:

svenfuchs it fits into your machine and it behaves the same way

svenfuchs in terms of programming this is the api

svenfuchs it accepts the same method calls and the methods return the same stuff

svenfuchs so, when you replace adva_user with your own adva_authlogic

svenfuchs you’d need to make sure that the rest of adva_cms can still call the same methods on objects like controllers, user models etc

svenfuchs and that these methods return the same things OR change the same stuff in the system (state) that other portions of the code rely on

svenfuchs that’s one means by “support the same api”

svenfuchs does that explanation help at all?

intangibleliquid yes, which basically means I have to fully understand how both AuthLogic and Adva work. And then “sync” the methods

intangibleliquid which is not easy for me I think

svenfuchs exactly

svenfuchs except that you might not need to understand *all* of adva-cms and authlogic, just the relevant parts where they are supposed to interact

intangibleliquid I have one more day to work on this. Will be looking through the codes now instead of blindly work on stuffs

svenfuchs if that’s a training task it’s certainly a cool one

svenfuchs that’s a good idea i guess

svenfuchs there might be two general approaches. i have no idea which one works in the end …

intangibleliquid so basically most of the codes involved are in adva_user. But then other things like sitesrolesetc also need modifying

svenfuchs 1. swap out adva_cms with something like adva_authlogicsvenfuchs

intangibleliquid go on please :-)

svenfuchs 2. only swap out the internal pluggable auth module that adva_user uses to authenticate from the database

svenfuchs i guess the first one would be the easier one, but also involves some more work

intangibleliquid does 1. mean rebuilding adva_cms from sratch and does two mean adjusting it side-by-side with auth_logic?

svenfuchs building adva_user from scratch, yes, so it completely behaves like a wrapper for authlogic

svenfuchs and yeah, 2. might mean that both apps use the same database, but use different code to validate tokens etc

svenfuchs so that would be side-by-side

* arpu has quit (Read error: 110 (Connection timed out))

intangibleliquid maybe I should try 1. first and see how it goes. This is surely interesting (and damn tough)

svenfuchs it’s a great task :) let us know how it goes


P/S: svenfuchs is the lead developer of adva-cms, a Ruby on Rails Conten Management System. IntangibleLiquid is my other nickname on IRC channels.




Xem đầy đủ bài viết tại http://feedproxy.google.com/~r/Fresco20/~3/FTs3ysz1YS4/

No comments:

Post a Comment

Popular Posts