Live data from Hacker News

How we used Node.js to build real-time award flight search

blog.milewise.com

31–39 of 39 posts

Re: How we used Node.js to build real-time award flight search

#31

Earlier quoted context omitted.

Great point! I bet that now thanks to your razor wit, dcaylor will think twice before saying something nice about node without also saying something nice about every other programming platform.

Node gets a lot of attention despite not doing much of anything new, sometimes it can be helpful to point this out. I was not rude or insulting about it, unlike others.

I laughed at both your initial response and IsaacSchlueter's comment. Valid points from both.

It would have been a little odd for me to say "Nice use case for Python" considering the original post was about Node, and specifically said they tried writing it in Python but "writing asynchronous code in Python is like using your keys to open a beer bottle." That also made me laugh.

In fact, the original article specifically talked about why Node.js was a good choice for this use case. I agree. Not that you couldn't do it in other ways. Erlang would also be a good choice here, I'm sure. There is always more than one way to do most anything. Still, and in spite of the fact that Node might be getting too much hype, it is an excellent tool for this type of async need.

Re: How we used Node.js to build real-time award flight search

#32
post #16
post #10

Earlier quoted context omitted.

Don't want to turn this into a Node.js/Python flame war (we love Python as well here at MileWise), but regarding asynchronous Python code: It's more just an annoyance of the language. Specifically, anonymous functions are must easier in JavaScript, so it was just easier to write read and write maintainable code. In Python, you are limited to only passing in simple lambda functions (although deferreds do get around th…

>> It's more just an annoyance of the language. Specifically, anonymous functions are must easier in JavaScript, so it was just easier to write read and write maintainable code. That's pretty specious. You can easily write a function defined inside a function that you can pass by just naming it. "Anonymous" functions are just syntactic sugar. Furthermore, writing a new python named function is easier (fewer chars) to…

I don't see how it's specious to prefer javascript syntax over python syntax for asynchronous code. It's an aesthetic consideration and so it's less about the fact that you can have the same sorts of functionality and structures in both environments and more about which style people prefer.

I really don't understand why whenever somebody switches to node from python people pounce on them like this, as if people aren't allowed to find a particular syntax annoying?

Re: How we used Node.js to build real-time award flight search

#33
post #31

Earlier quoted context omitted.

Node gets a lot of attention despite not doing much of anything new, sometimes it can be helpful to point this out. I was not rude or insulting about it, unlike others.

I laughed at both your initial response and IsaacSchlueter's comment. Valid points from both. It would have been a little odd for me to say "Nice use case for Python" considering the original post was about Node, and specifically said they tried writing it in Python but "writing asynchronous code in Python is like using your keys to open a beer bottle." That also made me laugh. In fact, the original article specifica…

Well, I hope you learned your lesson.

Re: How we used Node.js to build real-time award flight search

#34
Can you go into more detail about how js on front and back helped? What percent of your codebase is actually shared? What type of functions are they? Many people claim that it's a big win while others call shenanigans but I haven't heard empirical data from anyone.

Re: How we used Node.js to build real-time award flight search

#35
post #24

Gah, right after I finish a site requiring me to write my own node soap interface, you guys come and release yours ;) Thanks for contributing back!

:) Would still love to see your implementation though. Ours only covers a subset of the spec so lots of room for improvement...

Re: How we used Node.js to build real-time award flight search

#36

Earlier quoted context omitted.

Great point! I bet that now thanks to your razor wit, dcaylor will think twice before saying something nice about node without also saying something nice about every other programming platform.

Node gets a lot of attention despite not doing much of anything new, sometimes it can be helpful to point this out. I was not rude or insulting about it, unlike others.

    > Node gets a lot of attention despite
    > not doing much of anything new
Most people close to the project (Ryan, me, Mikeal, Felix, etc.) are usually pretty quick to point out that node does virtually nothing that hasn't been done before. Async IO is not new. Event loops aren't new. IOCP isn't new. JavaScript isn't new.

If anything, node's success so far has been a result of combining established technologies in ways that make it easy for more people to write reasonably fast programs that use the internet in fun and interesting ways.

Novelty isn't really what it's all about. If anything, I look at novelty as a hazard. Most ideas are bad, and it's hard to tell when they're new. If you can take some existing good ideas, and make them more fun, that tends to be a more successful strategy (or at least a more enjoyable one.)

Re: How we used Node.js to build real-time award flight search

#37

Earlier quoted context omitted.

There are deferreds in node as well.

They aren't part of the core API like they are in Twisted, is this correct?

No. Node is a lower-level API than Twisted.

The "fibers" utility is quite popular. There are also several different promise libraries, and a few code-translation approaches that simulate coroutines.

They all build on top of the very simple EventEmitter and continuation-passing-style ("callback") style that the node-core API uses.

As a JavaScript luddite, I prefer passing functions around and listening to events :)

Re: How we used Node.js to build real-time award flight search

#38
post #21

Not related to Node, but your homepage is really well designed. Attractive, simple and clean. Nice.

Sacha Greif did our homepage. ( http://www.sachagreif.com/ ) He's awesome, super talented and incredibly fun to work with.

Thanks Nick! You guys are great to work to as well, glad you appreciate the result :)

Re: How we used Node.js to build real-time award flight search

#39
post #21

Not related to Node, but your homepage is really well designed. Attractive, simple and clean. Nice.

Sacha Greif did our homepage. ( http://www.sachagreif.com/ ) He's awesome, super talented and incredibly fun to work with.

I've had the pleasure to work with him as well - I'd definitely second all of those points!
Post reply on HN