239 karma · joined April 2, 2008
It's not a bug, but a feature of Arc and other continuation servers. If continuations aren't reclaimed by the server (and those links invalidated), the server runs out of RAM.
Moritz from the Chicken community recently published a Mongrel2 egg as well (http://wiki.call-cc.org/eggref/4/mongrel2)
These days my favorites are C, Python, and Scheme.
I was coming from kind of a dictator view where I accept patches rather than blindingly letting people commit changes to projects i'm responsible for.
I was recently interviewing for a Python/Django developer position and was instead offered a SDET position (with the possibility of becoming a developer) because I don't have experience with Django.
I turned them down because it felt like an insult.
That being said, if you're trying to target Mac or Windows, it's generally a good idea to use that specific platform's tools. It's reasonable to develop Windows and Mac apps on Linux but it may not be the best environment to do so. It's really up to you as a developer to determine the best toolchain and processes based on what you're trying to accomplish.
Basically I tell it which directory I want it to watch for changes and it does automatic syncing by piping rsync. I keep a local and remote signature of the files and their timestamps. When it first starts up, it pulls the server sig file and compares it to the local one. If there's a mismatch, the server is updated. From there it manages the signatures locally until they're different.
Writing the sig file to the remote server is done in the same rsync pass because it's stored in the local directory as a dotfile.
I realize rsync does its own checksums, but using my own crude signature files makes it so I don't have to keep calling rsync. I only call it when something changes.
I also have some stuff I'm working on that ties into auto-restarting servers when syncing finishes, rolling server deployments for no downtime, db migrations, etc.
Having to manually "deploy" code to a local virtual server can be tedious, so running a background process that watches your local directories for changes helps a lot.
When I was working through the book (and I still am to some extent), it was basically beat into my brain that some algorithms with worse performance could perform better than faster algorithms for a small enough n.
I'm also working on some client/server stuff for automated web deployments.