Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.


I am a decent php programmer. I had been learning python for some time due to the django hype. But now I find that I don't like django that much. Reason being it does a bit too much by itself. I prefer frameworks like codeigniter as they let me focus on writing php instead of learning about the framework. Its small, so when i encounter a problem, i can debug it relatively easily.There is no cli tool (not that i don't like them, i personally think php is too simple for them), no automatic code generation etc. No magic at all. I can plug in stuff like doctrine easily, and remove it too if it messes up things

But the thing is i have started liking python much more than php, I keep coding stuff in it to automate some day-to-day tasks. And from what i have read about ruby, its as interesting as python.

Are their frameworks in python and ruby which offer as much freedom as codeigniter, or is their some way i can use django and rails in the same way, i.e., using a basic skeleton most of the time and adding only the things i need.


As i write this question, i can see that this can be done easily in django, by adding/removing various imports (please tell me if its correct), however, i'd love to hear about other lightweight, magic-less frameworks and also if rails can be made into one the way django can be.


UPDATE:
by magic, i mean a framework which necessarily does things which i find hard to understand and hence cannot customize easily. Also codeigniter's "philosophy" of not tying you to any strict coding standards is what i love, i love the freedom and ease of use. I like seperating the MVC's, as i have seen its use. But, codeigniter allows overriding this behavior if required very easily. Also, i just started making a facebook app in django (my very first django app, after tuts and books) with only the sessions app installed and am reading the docs thoroughly before importing anything necessary, loving it.

share|improve this question
"i can see that this can be done easily in Django". Good enough. You have your answer. Also, (1) Please explain what "magic-less" means. Please update the question with your definition. (2) There are many, many Python frameworks, all of which are excellent, therefore, this question probably has no answer. – S.Lott Jul 14 '11 at 11:07
I've just looked at codeigniter.com, one of erhm "positive" things they advertise it's "a framework that does not require you to adhere to restrictive coding rules." OMG! – vartec Jul 14 '11 at 16:33
@vartec, read the update – kapv89 Jul 15 '11 at 21:26
1  
Question is why would you even want a codeigniter equivalent when both ruby and python have significantly better options. – Rig Mar 7 at 16:30

closed as off topic by gnat, Martijn Pieters, Kilian Foth, Mark Booth, Dynamic Mar 13 at 11:01

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined in the FAQ. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about closed questions here.

1 Answer

I personally enjoy Ruby much more than Python. Just something about Python rubs me the wrong way. That said, I also am not a fan of Rails. I think it is a good framework, I'm just not a fan of it. The framework I've started to use (and really enjoy) is Sinatra. It gives you tons of flexibility and there isn't a cli either.

Sinatra will let you pick your templating engine (I am using Haml), it will let you pick how you want to connect to the database (I've heard Sequel is good, but I'm using Redis). And it is hard to beat the gem system. In order to get started in Sinatra, all you have to do is this (I'll include the templating engine and server I use too):

gem install sinatra
gem install haml
gem install thin

After that, you're good to go and can start your first Sinatra app from your text editor and when you're ready to run your site just type:

ruby filename.rb

And Sinatra will do the rest.

share|improve this answer
There's a bit more to configuring thin. :-) – Denis Jul 14 '11 at 13:21
@Denis - Good to know :) I haven't deployed anything, I've just been fooling around. – Jetti Jul 14 '11 at 13:33
@Jetti, i have a hosting account which offers only php, another one with web-faction, is there any other company other than heroku which hosts sinatra?? – kapv89 Jul 15 '11 at 21:26
@kapv89 - I don't know any of the top of my head but I'll look now. I know that Sinatra is built off of Rack, so anything that hosts Rack should be able to host Sinatra. – Jetti Jul 16 '11 at 22:26
@kapv89 - it looks like EngineYard is any option. Also, just about any VPS should be able to run it as well as long as you get root access. – Jetti Jul 16 '11 at 22:28
show 2 more comments

Not the answer you're looking for? Browse other questions tagged or ask your own question.