I came upon similar crossroads several years ago. Granted, I'm not a programmer by trade, but I do have several personal projects that I work on. I had done some large module development for Drupal in PHP over several years, and once I reached the point where I was fighting to override Drupal more than I was spending time adding new functionality, I started looking at web frameworks rather than modifying CMS platforms. I was also growing tired of the PHP inconsistencies and the inability to properly debug.
After some research, I came down to Perl/Mason, Ruby/Rails and Python/Django. I was already familiar with Perl, less so with Python from work, and had no experience with Ruby. After reading the flame wars between the languages on forums with posters asking the same question, I decided the best way was just to dive in and try it myself. I didn't particularly want to go down the Perl route, as I had spent countless hours fighting with CPAN getting modules installed for work scripts. I decided to start with Ruby and Rails. This was around the time that 1.8 was dubbed a horrible mess and 1.9 was still fresh and slightly buggy. After fighting with that issue, I spent several days trying to figure out what was required for RoR, installing gems, and learning Ruby in general. I still to this day have no idea what a symbol is, nor the proper time to use it. After a few weeks of trying and working around all of the system-specific issues I was having, I think I managed to get a working version of a basic site up. Having 'conquered' RoR, I moved on to Python/Django. Python and Ruby are somewhat similar in terms of layout and even syntax at a very basic level, so the transition wasn't difficult. What attracted me to Python/Django, though, is the lack of 'magic' behind the scenes. I felt like RoR was making decisions for me behind the scenes, and I had little control. Not that I necessarily needed control at that point, but given my previous experience with Drupal/PHP, it gave me reason for pause. Python/Django is clean, without magic, easy to read, and almost forces you to be a good programmer with indentations, simple syntax, etc. After running through the Django tutorial in a couple of hours (1.3 had just come out at the time with CBV's as the prominent new feature), I was extremely hooked, considering the same process in RoR was a few days of effort. I also felt the philosophy and intent of Python better aligned with my personal inclinations. Simple, clean, big focus on backwards compatibility both in the language and Django (a large problem that I had with Drupal). Ruby felt much more bleeding edge, fast-paced, and 'magical'. Call me a control freak, I like to know what my code is actually doing. Makes for easier troubleshooting later. Python also had excellent cross-platform support, and native support within Ubuntu/Debian/Gentoo linux, since a fair portion of their tools are written in Python. Pip makes installing (and version control) ridiculously easy, much easier to navigate than gem repos or CPAN.
All that aside, the best advice I can give you is just to try each out and figure out which one 'feels right' for you. Both have more than enough market share as a viable career path. Given your field of study, Python may be a better choice for you considering the immense amount of scientific work done with Python. I've never heard of Ruby having such a reputation (but that doesn't mean it isn't being done).
As far as Python debugging tools go, I would definitely look into PyCharm, which has a free community edition with a built-in debugger. It handles Django with ease, and the licensed version has extra special goodies for Django specifically, probably worth the cost if you are serious about developing the application you are talking about.
-James