Hacker News new | past | comments | ask | show | jobs | submit login

I used to work at a place that switched to only building apps this way. It was architecturally simple, but for random business apps, there was one major difficulty: The tooling felt like going back on a time machine. You have all this tools out there for download, but almost all of them don't do quite what you want, are not easy to extend without just getting tied to an old version forever, and have trouble interacting with each other.

When you get developers that are wishing they were back using Swing because it was easier, you know you have trouble.




Swing is/was verbose for simple stuff, but beyond a fairly low complexity bar it is enormously preferable to the web stack, at least from a developer perspective.

While Java got somewhere with the whole deployment thing it was never quite as slick as the web, and that's the killer aspect of the web really.

What is funny about the web these days is how they're very slowly reinventing all the things NeXT were doing in the 80s, only using a lot more memory and CPU in the process. Ironic given it started on a NeXT in the first place.


I once did a website exactly like this. Nothing required a web application server to run, and I was building the (quite simple) thing from the ground up.

Once my build environment was set up, the dev cycle and experience was stellar. Fast, on change, builds, lighting fast local page reloads.

Deployment was just pushing static files on the http server, that served only statics files, like the good old days.

Once that was done, a problem remained: since it was a one shot experiment, with something quite simple, I had only one dev environment for that thing, and I did not document how I did it.

My conclusion was : part of apps that serves dynamic page are kind of build environment that can't pre-built the artifact. But the build environment is part of the code, just like a Makefile would.

It's probably possible to build and serve static page with a good experience as a whole, but your tool quality (easy to deploy and reliable) for building must be great.


The tooling is now awesome (imho). I am the furthest thing from a node.js fanboy, but as a build pipeline it is awesome.

Being able to have a gulpfile take care of compiling jade, coffeescript and sass, triggering live reloads, etc., immediately makes me smile. As a former-Flex developer who dealt with some heinous build-times because the tooling was worth it, I now have a better front-end alternative with sub-quarter-second build times.

And if you have a json-serving backend (rails, spray.io, whatever) you can set up easy double tests of your front-end logic, where you mock out the backend, and then run slower "integration" tests where you include it. Might sound wacky but I've found this to be a way to quickly develop robust systems. For me, angular's dependency-injection makes it even easier.

So this static-koolaid took a while for me to drink, but I'm liking it more all the time.


Got any specific examples?




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

Search: