HN user

rhettg

79 karma
Posts9
Comments24
View on HN

You're right. DMC is really just an experiment. I don't mean to disparage Arrow, it does improve the interfaces around datetime, I was just disappointed it didn't attempt to prevent these common timezone related bugs.

I bring up dmc for discussion, because I started it right after finding arrow. Building a full wrapper like this hadn't occurred to me until I saw arrow do it.

I grew up on my Grandfather's farm in California. I learned QBASIC on his computer. I connected to my first BBS from his computer. Together we used MS-Paint to draw maps of his land for planning.

That experience and my occasional trips to the Tulare farm show make me think farmers are generally pretty able to embrace new technology.

The one issue I can think of is that internet access in rural areas can really suck.

The Twisted Way 14 years ago

I've used twisted for semi-major project (https://github.com/Yelp/Tron).

It's certainly a difficult thing to get your head around. The parts of the project that touch twisted is always the most complex to explain to anyone else. However, async code is always hard. It also doesn't help that the code base shows it's age.. non-PEP8, strange naming conventions etc.

However, one thing that I've noticed with recent projects using Tornado (https://github.com/rhettg/Dynochemy) is that some concepts that I thought was overly complex in Twisted makes sense eventually. For example, handling errors in async code is really hard. The framework twisted came up with with Deferred, callbacks and errbacks is pretty smart. You almost have to re-invent twisted before you can appreciate it.

I'd recommend reading the original paper for more information: http://www6.uniovi.es/python/pycon/papers/deferex/

I understood the point as "Don't use a database as a replacement for a queue". Use the right tool for the job.

The fact that gearmand is backed by a DB is not at all the same as using a DB for a queue directly. Gearmand just uses a database as a backup that it can reload tasks when it get's restarted.

The evolved warriors weren't all that impressive either.

Really required a large number of generations, which my poor turbo pascal skills or lack of hardware didn't really provide. I wonder if I can find that code on a floppy somewhere...

Back in the day I tried applying genetic algorithms to corewars as a high school science fair project.

I lost. They had no idea what was talking about. Early lesson in the importants of communicating technical ideas.

After seeing breakup notifier on here (http://news.ycombinator.com/item?id=2243650) thought I would share our similar side project we launched for Valentine's day.

This app allows you "wait" on your friends that are in relationships. So they know they have options. It's all anonymous until they are single for 48 hours or so. Then then can see who's been waiting on them.

"Don't architect distributed things that require passwordless ssh keys to run. If you need to distribute files to a bunch of machines, they should be pulled from an rsync or http server, rather than via scp or remoting invoking rsync over ssh."

Is this statement directed at me ? It seems to me that if you need some combination of deploying files and executing commands, the chances that you're going to implement it more securely than SSH is pretty low.

It's true that compromising that one machine with the SSH key is going to compromise your whole cluster, but at least you had to compromise a machine rather than hijack some network service.