jonathanbsyd
jonathanbsyd

Reputation: 8441

Integrating scientific python into an existing Rails webapp

I'm a fan of using the right tool for the job.

At my company, the data analysts (incl myself) primarily use Python because of the powerful scientific libraries; the web people downstairs use Ruby on Rails for building our own HR management webapp as well as maintaining our online presence.

We would like to have the two teams working a little closer together allowing the development of scientific webapps but are unsure about how to proceed.

We have significant investment in both technologies with a substantial codebase that we would need to continue to use.

Are there any suggestions about the best way to integrate the two domains of scientific programming and web apps using the two separate languages?

Upvotes: 4

Views: 985

Answers (2)

Will Cheng
Will Cheng

Reputation: 199

I assume that the Python part is a stack of back-end libraries/modules of scientific functions while the Ruby-on-Rail part is mostly as front-end. Then an relatively simple solution would be wrap those Python modules/libraries into services and let the Ruby-on-Rail-built front-end functions call those services.

To build the Python services, you can use xmlrpc for simple implementation, or some sophisticated framework such as twisted for larger scale implementation. You can also created only one portal service that hosts all your Python modules/libraries, that would basically give you an application server that handles all the requests form the Ruby-on-Rails front-end. Using which strategy depends on the scale and complexity of your Python libraries/modules.

Upvotes: 0

crftr
crftr

Reputation: 8546

In lieu of substantially hacking apart either codebase to fit the other, I would first propose you evaluate an SOA solution.

e.g. create an API interface to your Python system, and have the Rails app call that API for what the HR and public-site systems require.

Upvotes: 1

Related Questions