Newer posts are loading.
You are at the newest post.
Click here to check if anything new just came in.
Click here to check if anything new just came in.
July 03 2009
Concurrency with Python, Twisted, and Flex
The system you see here is only a framework for creating concurrent programs. There are various ways to implement your particular solution, but what I show here solves all the hard problems of wiring things up.Build your own Kamaelia Core
It's interesting to note that there are two kinds of rich people in the world: those who made the money they have, and those who inherited it. Those who make it for themselves have often been noted to be greater risk takers than those who simply inherit. This is for the very simple reason - they've done it once, so they believe they can do it again. Likewise when using any system, library, or framework, you're likely to have a better understanding of the system and how to better use it if you really understand how it works. That is you've written the system rather than someone else. Our preferred approach to date so far for teaching a novice how to use to Kamaelia has been to get them to write a version of the core concurrency system. This is framed as a series of exercises. After having built it, they realise that the system is really just a simple skein over simple programs.Stackless
Stackless Python is an enhanced version of the Python programming language. It allows programmers to reap the benefits of thread-based programming without the performance and complexity problems associated with conventional threads. The microthreads that Stackless adds to Python are a cheap and lightweight convenience which can if used properly, give the following benefits: Improved program structure. More readable code. Increased programmer productivity.Kamaelia
In Kamaelia you build systems from simple components that talk to each other. This speeds development, massively aids maintenance and also means you build naturally concurrent software. It's intended to be accessible by any developer, including novices. It also makes it fun :)June 26 2009
redirector
Say you want to deploy an app on Google App Engine under the domain yourname.com and www.yourname.com. The problem both domains will work, which leads to inconsitent results. For now it is not possible to configure a redirect in App Engine.APNG - the animated PNG
"Just what the world needed" Daniel Roseman 2009scripty2: demos
Thomas Fuchs loves his javascript and shows some great animations utilising his new Scripty library.June 25 2009
“— Understanding PythonI've seen a number of people on the Ruby newsgroup who really misunderstand the explicit self argument in Python methods. While Python's style is certainly not the only approach, it *does* allow a genericity that is less easy in most all other languages. The explicit self is distinctly a Python *feature*, not a flaw. Some of the other criticisms are a bit misguided too. For example, the widespread upset at significant indentation vanishes from 99% of Python users after a few days/weeks of actual usage. Almost all of those folks wind up thinking of the indentation as a feature. But that's largely a matter of taste (with which there is no arguing :-)). The self thing, however, is worth an explicit explanation. The point of the explicit self is that it allows detaching a method from an instance, and passing a different instance to the same method. In the simple case this is sorta pointless: >>> class Klass: ... def __init__(self, data=None): ... self.data = data ... def say(self): ... print self.data ... >>> this = Klass('this') >>> that = Klass('that') >>> just_say = Klass.say >>> this.say() this >>> that.say() that >>> just_say(this) this >>> just_say(that) that Whether one uses the method or the function-with-argument amounts to the same thing where one names instances. But consider nameless instances: >>> klasses = [Klass('this'), Klass('that'), Klass('other')] One can use an index into a data structure to call the detached class method like: >>> just_say(klasses[1]) that Of course, that's still not such a big thing, since one can also write: >>> klasses[1].say() that Where it becomes really interesting is in genuinely nameless functional-programming style constructs like: >>> map(just_say, klasses) this that other [None, None, None] AFAIK (which is only a little Ruby), one would do this in Ruby by iterating over a code block... but the code block would still use a temporary name to refer to the object whose method is called. There's nothing wrong with this... but it becomes slightly less elegant once you get into more complicated function/class factories and generic FP programming.”
June 23 2009
Introducing Kanban, Flow, and Cadence
A great article examining different aspects of lean philosophy. It also has some good formulae for metrics.Reposted from
agile
“— Kanban and RetrospectivesA basic starting point would be:
”
- Stop the Line for special cause problems
- Monthly Retrospectives with Operations Reviews for common cause problems
- Quarterly Value Stream Mapping to reassess the whole value stream
Reposted from
agile
June 17 2009
pat-maddox's giternal at master
non-sucky git externalsJune 06 2009
django-chronograph - Google Code
Control django-admin commands via the web. Creating cron jobs for Django apps can be a pain, annoying and repetitive. With django-chronograph you simply create a single cron job to run every minute, point it at your site's directory and run manage.py cron. Then from the admin you can add jobs.June 03 2009
Dean Wilson@UnixDaemon: Whatever affects one directly, affects all indirectly.
Should have read this when writing my cronjob, it wasn't running due to no newline... *facepalm*June 01 2009
May 24 2009
LamsonProject: Lamson The Python SMTP Server
We've all been there, mucking around in the sendmail m4 macros trying one more time to get the damn mailing list to update for the new users. Every time we say, "This sucks, I want to rewrite this stupid thing." Yet, when we're done, we simply crawl back to our caves covered in our sendmail wounds.May 12 2009
Fraser Speirs – Understanding Git Submodules
Submodules are akin to svn:externals but are locked to a revision (they dont automatically track HEAD), but seem easy to use and simple enoughThe Dreyfus Model - an interview with Andy Hunt
Reposted from
agile
Dreyfus model of skill acquisition
The Dreyfus Model of Skill Acquisition postulates that when individuals acquire a skill through external instruction, they normally pass through five stages.May 11 2009
Functional Javascript
Functional is a library for functional programming in JavaScript. It defines the standard higher-order functions such as map, reduce (aka foldl), and select (aka filter). It also defines functions such as curry, rcurry, and partial for partial function application
Older posts are this way
If this message doesn't go away, click anywhere on the page to continue loading posts.
Could not load more posts
Maybe Soup is currently being updated? I'll try again automatically in a few seconds...
Maybe Soup is currently being updated? I'll try again automatically in a few seconds...
Just a second, loading more posts...
You've reached the end.

