Hacker News new | past | comments | ask | show | jobs | submit | more jerelunruh's comments login

I recently ran onto this for the browser: http://responsivevoice.org/


I use the same architecture... DRF for the API, admin for quick data manipulation, Ember for the interface and I enjoy it immensely. I am learning Phoenix because it would allow me to handle bidirectional communication in the same codebase along with other Erlang advantages. So far it doesn't seem to have anything comparable to DRF.


Might worth checking out webmaching: https://github.com/webmachine/webmachine/wiki/Overview


> I'm curious why JS is picking up so much for backend development?

The reason I reach for Node on a project is to handle my websockets. I use Django REST Framework + Ember as my main tools (super fast to build with) but, based on my testing, Python can't hold a candle to Node when working with thousands of websockets. It works great for what it was designed for.


Have you tried using Tornado/Twisted for the websockets? I'm curious about performance.

I'm building a side project right now and I'm using Django running inside Tornado (it's pretty simple to setup, really) so I can both have my cake and eat it (easy APIs, and a layer I can use to maintain websockets.) I wonder if the performance would be comparable to Node?


I tried every variation I could get to work including tornado, asyncio, and pypy. In my simple "how many websockets can I open" tests python would start erroring by 10,000 (no Django, just an empty websocket) while node hit 40,000 and was still climbing. Eventually I concluded it was a case of "with sufficient thrust pigs fly just fine". I still like python; just doesn't seem to be worth the effort to try to adapt blocking libraries into a non-blocking use case.


That makes sense. I'm actually very pragmatic when it comes to this kind of stack and I'll be happy to replace my current Tornado frontend with a Node frontend when I hit the limit (for now it's a very niche usecase, just me and a few friends, so it might be that I never need to improve it.)


This is promising: http://swampdragon.net


Oh! Interesting, thanks for the link!


I use/have contributed to this project: https://github.com/hendrix/hendrix which is a wsgi wrapper that uses twisted to serve django apps. Websockets are among the first things you get out of it.


Andrew Godwin is working on this: https://github.com/andrewgodwin/channels


Pushpin (http://pushpin.org) is handy if you want to add realtime stuff to a Django app without needing to learn a new language.


I ended up with my primary tools being DRF + React/Redux. I'm genuinely curious about Ember, but haven't had a chance to play with it. What do you think of it? How's it stack up versus React-based frontend setups, if you've evaluated them?


For new SPAs Ember rocks. Also keeping up with the latest and greatest Ember is a breeze. I would not however like to refactor an existing front end application to use Ember. Probably React is better suited for integration with existing front end applications.

Although Ember really feels like idiomatic Javascript to me and they try hard to adhere to new web standards (e.g. web components, ES6 modules) it is also very opinionated about what should go where and how.


I primarily use Django REST Framework for APIs... has anyone moved from Django to Phoenix and can give a report on how the developer productivity compares currently? If it's not there yet I'm sure it will get there as the community grows but how is it now?


Phoenix is more like Flask in that regard and definitely doesn't come batteries included like Django (no auth, no admin, no cache backends etc) so it would be more work to build something as full-featured as DRF on top of it.

Having said that, I've found it easy to get along with retuning JSON and the actual speed of responses is incredible. Completely anecdotal and unscientific but one service I recently converted from DRF to Phoenix saw drops in avg response time of 350ms to about 15ms.


I'm a Django developer working who works with Phoenix in my free time, and I can say I prefer it.

However "Developer productivity" seems like an excessively vague term, and would be hard to compare in any meaningful way.


If you are doing REST apis and are interested in Elixir I'd recommend checking out Trot (https://github.com/hexedpackets/trot). If is a lightweight wrapper around Plug (Exilir's middleware framework) and Cowboy (Elixir's native http server).


Singing does use a different part of the brain than speech and it would be interesting to know if it's similar to listening to whistling.

Someone in my family used to stutter badly but their singing has always been flawless


Not surprising. That was the same case with John Paul Larkin whose stage name Scatman John[1] probably rings a few bells. Although his style of singing lent itself well to (ab)use of stuttering. Very curious how that works, though.

[1] https://en.wikipedia.org/wiki/Scatman_John


Ha, I initially didn't realize that was a typo and thought things were getting pretty serious with this whole contributor conduct thing.


One option: get a part time job in an interesting industry.

I discovered this by getting a contract (few days a month) doing onsite work for a small/medium size organization. I asked lots of questions about things that I perceived as broken and found out what processes and software they hated. Then I worked on a prototype (evenings, for fun) and showed it to them. Now a year or so later that organization is my first customer for a SaaS I saw that they needed.

Also, make friends with other vendors while you're there. A company that already serves that industry can give valuable feedback and even market your app to their other clients if it integrates well with their solution.


What's the SaaS?


Real-time asset tracking (GPS) with a non-terrible user interface. I'll get a good marketing page done someday; currently it's spreading via a vendor I made friends with (see above).


I think he's asking which SaaS did he build


Software as a Service

It basically means hosting an application that users can subscribe to.


I know what a SaaS is. :) I'm asking what he built.


Software as a Service

In Pizza as a service terms: you dine out.


Surely it's the other way around, normal software is dining out, and SaaS is dining in?


Depends on the term comparison: for on premise / iaas / saas/ paas, normal software is baking it yourself.

http://www.ektron.com/assets/0/75/132/2147483682/2b35a8f4-f2...


I'm aware of what a SaaS is. :)

Great analogy though!


I've also found the convention over configuration feature to help when I'm a lone developer working multiple projects. I often work on something (perhaps a side project) and then abandon it for a couple months. When I return I just run `ember serve` and dive in. In the past with my homegrown or invent-your-own-structure frameworks I first had to figure out what I had done on this particular project before I could be productive.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: