5 ms·
PyCon 2011: Interview with Zed Shaw
- rudiger 16y agoMr. Shaw giving an "extreme talk" on using ZeroMQ, Advanced Network Architectures With ZeroMQ, should be interesting. For those that don't know ZeroMQ and why it's so useful, here's a few links: http://nichol.as/zeromq-an-introduction http://nichol.as/zeromq-an-introduction http://www.infoq.com/news/2010/09/introduction-zero-mq http://www.infoq.com/news/2010/09/introduction-zero-mq http://www.igvita.com/2010/09/03/zeromq-modern-fast-networking-stack/ http://www.igvita.com/2010/09/03/zeromq-modern-fast-networki... http://mongrel2.org/doc/tip/docs/manual/book.wiki#x1-640005.2 http://mongrel2.org/doc/tip/docs/manual/book.wiki#x1-640005.... <== The Mongrel2 manual is probably the best concise introduction to ZeroMQ.
- euroclydon 16y agoI was pushing for ZeroMQ as an alternative to WCF at my company, because we will eventually need to integrate components not only written in C#, but C++ and Python too. I encountered resistance because of WCF handles not only the serialization, but the method routing on both ends of a service (by means of a proxy class, which would be hard to set up in C++/Python anyhow). My reading on ZeroMQ leads me to believe I could set up one socket as a front end which routes message to a different publisher dedicated to each method? Is this a good way to do it?
- simonw 16y agoJust out of interest, if you're going to need to talk between C#, C++ and Python, why not just use HTTP and JSON? Unless you have truly crazy performance requirements that should be more than fast enough for most purposes, and it's really easy to work with (debug in the browser etc).
- deleted 16y ago[deleted]
- zedshaw 16y agoZeroMQ is easier than HTTP. Much, much easier. Take it from a guy who has actually written a web server that also uses 0MQ.
- mey 16y agoHTTP is designed for a single request, single response in order. ZeroMQ messages can be sent without waiting for each messages response, thus a single socket connection can push drastically more information then a single http connection (not that you are limited to a single http connection). Connection Pooling HTTP starts bringing in a lot of overhead, but doesn't provide some of the other features ZeroMQ does (multi-honed etc) without some additional effort (load balancers on the network). I've personally been pondering a variation of JSON-RPC that operates over a TCP socket not over the HTTP layer.
- zedshaw 16y agoNo idea what WCF is, but all I do is put send JSON as the message and call it done. I've found that to be fast enough for most of my work, and it's a combination that's understood by everything.
- alexgartrell 16y agoYou might want to check out Thrift http://wiki.apache.org/thrift/ http://wiki.apache.org/thrift/ It supports a ton of languages and provides an entire RPC interface.
- suraj 16y agoYou can use http://code.google.com/p/protobuf/ http://code.google.com/p/protobuf/ for serialization with ZeroMQ. We are using ICE http://zeroc.com http://zeroc.com which offers similar features.
- mey 16y agoWish there was a pure Java implementation of ZeroMQ, shipping native compiles with Java is pain in the ass.
- zedshaw 16y agoAt the moment I've got 13 students signed up for my class and the "newbie tour of PyCon" I want to do. There's also about 6 Python experts (many much more expert than myself) who are going to help with the class and the guiding during the conference. That's a pretty good student/teacher ratio of about 2/1 assuming everyone who volunteered to help actually does. Should be a blast, but if you guys have friends who you think would benefit from this please tell them about it. They don't have to go to the tutorials to join the group either. They can just show up like normal and hang out with us. Thanks.
- runjake 16y agoThe article sounds to me, like Zed is saying Python's usefulness to him is mainly as an educational language, not so much a "daily" language. Is this right?
- briancurtin 16y ago(interviewer here) The context right before he said that was that platforms are the interesting things, not languages. He's a Python user at work so he's getting his daily dose, but mixes things up at home. He then goes on to say some of the quoted stuff about punctuation/structure. I took it as programming languages in general aren't an interesting topic to him, but Python caught his eye and actually interested him for the educational value. Zed can obviously speak to that better than I. I just pretend I know how to interview and write :)
- zedshaw 16y agoI use Python at work, and since I do I tend to not use it at home on my personal projects. That makes sure there's no conflict of interest with my employer. It also keeps me sane so that I don't get into a rut with my ideas. These days I'm going with C and Lua. For example, I'm starting this project: http://edifying.tv/ http://edifying.tv/ For fun with Lua and wxWidgets, and my latest websites are all Mongrel2 and Lua based with: http://tir.mongrel2.org/ http://tir.mongrel2.org/ But, for teaching total beginners to programming I'm finding Python is the best so far.
- 108 16y agoLPTHW is a good goal for beginners but what about the intermediate ones? I know how to code but when I see mongrel2 or any other opensource code I have no clue how to start integrating them. There may be others like me so when are you planning to write a not-so-advanced-book/tutorial for the intermediate coder who can recognize a pointer from his function.