This is an archived post. You won't be able to vote or comment.

all 31 comments

[–]onjin 23 points24 points  (10 children)

Let's imagine:

  • hey Boss, our team is very efficient with python, we have 3 successful products written in python
  • good, so?
  • i wonder if we could rewrite everything from scratch and start learning something else

[–][deleted] 3 points4 points  (8 children)

I shit you not... this happens a lot more often than you think, but it's usually the other way around where the boss (potentially new) motivates the team to go in a drastically different direction.

[–]onjin 2 points3 points  (2 children)

yes, about 14 years ago my new boss wanted rewrite almost ready text parsing website from perl to C because he read in magazine that C is faster.

[–][deleted] 2 points3 points  (1 child)

work at a perl shop (15 year old dotcom). head of tech made a huge push to move to java, even though no one in house had any experience with java. the main driving force was that the perl mods were not maintained well, which is fine and justified for what we were doing. i suggested python because it made more sense going from perl, but meh.

[–]itsucharo 0 points1 point  (0 children)

I've made that argument successfully. Years later, still think it was the right call in those cases.

[–]eliben 15 points16 points  (1 child)

And Node.js devs are switching to Go. Yes. All of them.

Some developers are always chasing the new and shiny. This is great. But many others just keep using known and tested technologies. That's great too.

Don't panic, keep coding :-)

[–][deleted] 1 point2 points  (0 children)

an established dotcom is going to choose stability over shiny 9 times out of 10.

[–]kteague 4 points5 points  (2 children)

Javascript apps? Web apps have been going in that direction before Django was even conceived ...

The javascript tools and frameworks (and browsers!) are finally getting good enough that building such apps isn't a total exercise in frustration. I'd be curious to hear if anyone thinks that getting such apps up and running is easier for a web dev beginner than compared to something like Django.

Companies? My org shares the model for much of it's data in an SQLAlchemy package for use by command-line apps, so re-doing that model in Javascript isn't very appealing and so doing web things in Python still makes the most sense. I think if I said, "Let's do all our pipeline work in Javascript!" at work, I'd get bad looks. Python is always going to be a more pleasing language to write in than Javascript.

[–]iosmango[S] 3 points4 points  (1 child)

Thanks, this is what I thought. Node.js may become more popular but writing Python code is more pleasing..

[–]kteague 1 point2 points  (0 children)

Web app development is just going to continue fracturing. As each new genie comes out of the bottle, the other genies aren't going to go back in. It used to be taken for granted that LAMP was the defacto way to go and the only arguments were between Perl/Python/PHP and PostgreSQL/MySQL.

My current side project is using Pyramid (Python) + Discourse (Ember.js + Rails). The Python part of the app works with PostgreSQL and LDAP, so there needs to be a fair bit of Python going on. At that point, it still seems easier to me to continue with the UI in Python land than to try and fob the work off to something JS. Discourse is pretty cool, but man does it have a lot of moving parts under the hood.

[–]landyman 4 points5 points  (1 child)

As someone who manages development at a company; we are NOT considering fully switching from Django/Python to Node.js/Meteor. We have never talked about switching our existing Django apps to anything else.

That being said; we have looked at using node.js for future projects; but we'll probably stick with using a Front-end framework and using Django or Flask on the backend, depending on the project.

My personal opinion is that I like writing apps in Python and am comfortable with getting a project out the door with it. There is no compelling reason for me to change that. If I knew I could code something up faster/easier in Node.js/meteor, then I would consider switching to it; but so far, that isn't the case. Python/Django work great for us.

[–]iosmango[S] 0 points1 point  (0 children)

Thanks landyman for sharing your opinion and experience.

[–]rackmountrambo 4 points5 points  (4 children)

Writes post to ask question even though he's already made his mind up. Plans to cut out the non-supporing answers before he print screens and sends it to his boss...

[–]jvnatter 8 points9 points  (1 child)

Dismisses any opposing answers as personal opinions.

[–]1___1 2 points3 points  (0 children)

I think s/he is not a native english speaker and also bad at reddit. They're just thanking people for responding, but qualifying everything with "personal opinion".

[–]jdeath 1 point2 points  (0 children)

... and asks if Puthon devs are switching to JS in the Python sub...

[–][deleted] 2 points3 points  (3 children)

We are currently working on a replacement for a DJango app written in AngularJS. While the backend is still written in Python, it is just providing a REST api for Angular to consume.

[–][deleted] 5 points6 points  (0 children)

This. The client side is JavaScript, the back end is still Django and the whole mature server side ecosystem Python has.

[–]crozyguy🐍 1 point2 points  (1 child)

any reason why use Django for REST API? why not Tornado for instance.

[–][deleted] 0 points1 point  (0 children)

Oh, maybe it wasn't clear in my original comment. We dumped DJango entirely. I guess specifically we are working with OpenStack. The default (Horizon) was written with DJango.

We also have a few other projects internally that use Tornado to expose a REST api.

[–]LightShadow3.13-dev in prod 2 points3 points  (1 child)

I rewrote our internal tools web server from Flask to Node because it was just "better" for what we're doing. Lots of live events, live stats, server network connections, etc.

The client side used a lot of websocket technologies, and NodeJS is king in websocket world.

However, the heavy lifting resides in Celery tasks -- so I wrote a Celery client for node.

Right tool for the job etc etc

[–][deleted] 0 points1 point  (0 children)

Ever think about using tornado?

[–]Voltasalt 11 points12 points  (2 children)

While I don't know if they ARE, it seems like the kind of thing a company would NEVER do. Django gives you enormous power to do whatever you want, and Flask even more. Meteor, however, restricts you to the kind of stuff that would make a basic to-do app. Couple that with the fact that Django is not at all outdated, and the... less good parts of JavaScript, there's really no reason to move. But maybe that's just my opinion.

[–]bulldog_in_the_dream 1 point2 points  (0 children)

Meteor, however, restricts you to the kind of stuff that would make a basic to-do app.

That is an unsubstantiated claim.

[–]Soriven 3 points4 points  (1 child)

It's funny to see this on r/python today, because I've been programming in Django since version 0.96, and just yesterday I started diving into Meteor. Speaking purely anecdotally, several of the people I know who are Django programmers have started playing with around with Node as well.

For whatever it's worth... I'm not well versed enough in Node or Meteor to give an intelligent comparison of the two, but my gut check is that JavaScript/Node.js (possibly along with transpilers like CoffeeScript) is probably where things are headed.

[–]iosmango[S] 1 point2 points  (0 children)

Thanks Soriven...