Archives
Stats
About CIA.vc
Development
A lot has changed since CIA first became a service that anyone could use, back in early June of 2003. It gained a web site with per-project statistics and real-time commit feeds. CIA's users wrote client scripts that now enable it to receive data from nearly a dozen different version control systems. The infrastructure was rewritten and tweaked for improved scalability and responsiveness.
At the time of this writing, CIA now hosts commit notifications for 2240 projects. There are 67 IRC bots running on 41 unique IRC networks, posting commits to 562 IRC channels. As you can imagine, the 20-line shell script running on my apartment's DSL line will no longer suffice.
Despite all of this growth and server-side complexity, CIA still stands for doing one thing and doing it well: making it easy for everyone to syndicate source code changes in real-time.
There are now several services on the web which have at least superficial similarities to CIA. Most of these are newer than CIA, which has been online for nearly four years.
It may also be worth noting that, for better or for worse, CIA is the only one of these services which is funded and run by an individual rather than a company.
I don't know if Freshmeat was the first service to syndicate news about open source projects, but it's certainly the most ubiquitous. Perhaps more importantly than their project release syndication is their endeavor to build a complete index of projects.
There are a few important similarities between CIA and Freshmeat. Both are primarily services rather than re-deployable projects. Both CIA and Freshmeat have developed a community of contributed tools: CIA client scripts and Freshmeat submission scripts. Both web sites display summary information on each project.
The important differences are of course related to the type of information being syndicated. CIA delivers notifications on every single source code change, whereas Freshmeat only notifies you of releases. This means that while both services are of complementary use to a project's users, only CIA is useful as a development tool.
SWiK is a relatively recent service, first coming online in mid-2005. It is a taggable wiki for project information and news syndication. It's almost like a Web 2.0 take on Freshmeat, with AJAX, folksonomies, and such.
There are a few similarities with CIA: both services effectively provide a catalog of open source projects, however CIA's catalog is more of a side-effect whereas it's central to SWiK's mission. Both services, while designed to be primarily centralized, are open source. As with CIA, you can set up your own SWiK server if you want to: it just isn't designed to be easy.
The syndication aspects of SWiK, however, bear little resemblance to CIA.
Ohloh is the service on this list which bears the most similarity to CIA. So much so, in fact, that there was recently an Ohloh vs. CIA thread on their forums.
According to Ohloh's About page, their service was founded in 2004- not more than a year after CIA first went online. I first discovered it this January, and even created a page for CIA on Ohloh. (It claims that CIA is mostly written in Javascript, but only because there happens to be a release of YUI in the repository.)
Both CIA and Ohloh connect to your project's revision control system and track the changes you're making. Both services have a database of projects and authors, and they can both track the relationship between each project and their contributors.
A lot of the parts that make up Ohloh and CIA are similar, but the end goals are different. CIA delivers instant change notification. Ohloh does an in-depth analysis of your code repository, looking at things like the number of comments and the amount of code written over time. Neither Ohloh nor CIA would be well-suited to doing the other's job. CIA does not inspect a project's full repository history, and Ohloh does not have support for receiving and syndicating immediate change notifications.
It's clear that there are other established services on the 'net with the goal of cataloging open source projects, performing metrics on their code, or providing a Web 2.0-flavored view of the open source ecosystem. I believe CIA needs to stay true to what it does best, and what it was originally designed for.
CIA should be all about getting changes from your repository to your developers and users as quickly and easily as possible. This means:
The web interface needs to continue improving, but it is really just a means to an end. Any new feature on the web site is of limited use if it doesn't deliver instant commit notifications or make CIA easier to use.
The IRC support needs to improve. The bots need more power, security, and scalability.
CIA needs to branch out into other real-time delivery mechanisms.
In fact, CIA has long supported RSS 2.0 publish/subscribe, based on XML-RPC. Unfortunately, this standard never got off the ground. The only RSS aggregator to implement this flavor of publish/subscribe was Radio Userland, and it was impossible to use this technology over NAT. Subscription support was recently disabled for performance reasons.
I'd like to roll out XMPP publish/subscribe support, as well as Comet-style server-push HTTP. I want to provide primitives that allow other developers to build services on top of CIA without sacrificing immediacy. You should be able to write your own IRC bot, if you wanted to, that can subscribe to a CIA feed and deliver commits nearly fast as the built-in bots.
CIA needs to identify what it stands for. Other projects are monitoring open source projects, but CIA is about monitoring changes and doing it instantly.
This is one reason I've been planning to rename the project...
Out with "CIA Open Source Notification System", in with something new. Diffcast is the name I've been considering. It hilights the fact that CIA is about collecting changes (diffs) and broadcasting them in various ways. It also happens to be a cute domain hack: http://diffca.st/
Yes, the "cast" namespace is overused. This is unfortunate, because I'm much more interested in conveying the notion of "broadcasting" than I am in jumping on the podcast bandwagon.
I plan to change the service's name shortly after the conversion to Django is complete. The web site URL as well as the name used in all documentation will change, however existing URLs and e-mail addresses will always work. You will not need to change your CIA client scripts. I probably won't change the name of the IRC bots themselves.
Whether you like the name Diffcast or think it's unbearably stupid, comments are welcome!
Heh, who would have thought it .... a single "hey, it'd be cool if" four years ago and now it's all grown up.
To four years of CIA! *clink*. Not that my opinion matters anymore but I like the new name (though cia was cool too).
Hi Mike!
It's certainly hard to believe it's almost been 4 years already. So much has changed since then, both within CIA itself and in the world around it. I'm glad that the service has continued to be useful for so many people. Thanks for the toast :)
> Not that my opinion matters anymore...
Poppycock! (For those who don't know, Mike was quite instrumental in getting CIA off the ground way back when.)
> ...but I like the new name (though cia was cool too).
Cool. I know at least a few people are pretty sentimental for the name "CIA", but a possibly larger group of people were just confused by it. It's nice to know I wasn't *completely* on crack when I came up with Diffcast.
Thanks,
--Micah
Diffcast is a fine name that is much more indicative of CIA's function. I, however, am one of those sentimental folks who is attached to the name CIA. But whatever; if sentimentality always ruled the day, we would not be where we are today---for better or worse.
Regarding sentimentality, I do feel that the name "CIA" shouldn't entirely disappear.
There are some advantages to keeping the name CIA for the bots: mostly in that the name CIA has a lot of recognition among IRC server operators. The main disadvantage is that we'd have to explain to new users why the bots are called "CIA-*" while the service is called Diffcast.
I'll just chime in to say that most folks I work with and have talked to about this and myself included actually really like the name CIA. Both as the bot name and the name for the project (they should be one in the same imho to strengthen the brandname recognition), it has character and instant recognition among coders. I could see a cia.diffca.st or somesuch, but still retaining the CIA name for the project.
I actually don't think it's just comfort familiarity or resistance to change, but actually think there's a nice geeky quality to the name that provokes discussion. The fact that the name provokes "confusion" (i.e. questions and commentary) actually strengthens the name. The name also conveys thoughts of "big brother" watching your commits (in this case, big brother being a global community of hackers) which is very much in line with what the project actually does in a way.
If that were not enough and you wanted the name to mean something useful beyond the connotations, I actually always thought of CIA as being a view of open source "Commits In Action".
Cheers!
Sean
Sean:
These are all good points. I agree that the confusion around the name could be an asset in the context of personal conversations, or people asking about the bot on IRC. When you want to find CIA on the internet or blog about it, what do you do?
I guess I've been bothered by the fact that this service doesn't really have a place for itself in the internet's global namespace. If you're talking about CIA to an audience that doesn't already know what it is, you have to qualify the name. "CIA, the open source real-time commit aggregator and IRC bot" or some such. A lot of people just refer to the service by its domain name, which is just as arbitrary.
I put CIA on the domain "navi.cx" back when it was much smaller.. and I still haven't found an alternative domain that I like. Sure, I could do something like "cia-project.org", but that's long and it lacks character. Anyway.. maybe the solution is to keep the CIA name, but to find a better way to qualify that name globally. A new domain name that makes a little more sense, perhaps.
I like the "Commits in Action" tagline. I just put that up on the front page ;)
Thanks,
--Micah
Very interesting site. Hope it will always be alive!
I bookmarked this link. Thank you for good job!
Perfect site, i like it!
Great work, webmaster, nice design!
Great. Now i can say thank you!
Great work, webmaster, nice design!
Very interesting site. Hope it will always be alive!
Excellent site. It was pleasant to me.
Very interesting site. Hope it will always be alive!
Very interesting site. Hope it will always be alive!
I want to say - thank you for this!
Great site. Keep doing.
Excellent site. It was pleasant to me.
If you have to do it, you might as well do it right.
Great site. Keep doing.
Great. Now i can say thank you!
Great site. Good info.
I bookmarked this link. Thank you for good job!
I want to say - thank you for this!
Perfect site, i like it!
Incredible site!
It is the coolest site, keep so!
If you have to do it, you might as well do it right.
Great work, webmaster, nice design!
Great. Now i can say thank you!
Great site. Good info.
Very interesting site. Hope it will always be alive!
Great site. Good info.
I want to say - thank you for this!
It is the coolest site, keep so!
I want to say - thank you for this!
If you have to do it, you might as well do it right.
I bookmarked this link. Thank you for good job!
I bookmarked this link. Thank you for good job!
I want to say - thank you for this!
Very interesting site. Hope it will always be alive!
Great. Now i can say thank you!
I want to say - thank you for this!
If you have to do it, you might as well do it right.
Perfect site, i like it!
Perfect site, i like it!
If you have to do it, you might as well do it right.
If you have to do it, you might as well do it right.
Incredible site!
Incredible site!
I bookmarked this link. Thank you for good job!
Great site. Good info.
Perfect site, i like it!
I want to say - thank you for this!
I want to say - thank you for this!
I bookmarked this link. Thank you for good job!
If you have to do it, you might as well do it right.
Very interesting site. Hope it will always be alive!
Incredible site!
Great site. Keep doing.
Beautiful site!
I bookmarked this link. Thank you for good job!
Great site. Keep doing.
Great site. Keep doing.
It is the coolest site, keep so!
Great site. Good info.
Great site. Keep doing.
Great site. Keep doing.
Incredible site!
Great. Now i can say thank you!
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
Perfect work!
If you have to do it, you might as well do it right.
If you have to do it, you might as well do it right.
Perfect site, i like it!
I want to say - thank you for this!
Excellent site. It was pleasant to me.
If you have to do it, you might as well do it right.
Great site. Good info.
I bookmarked this link. Thank you for good job!
I want to say - thank you for this!
Great. Now i can say thank you!
Perfect site, i like it!
Beautiful site!
Excellent site. It was pleasant to me.
Incredible site!
Beautiful site!
Very interesting site. Hope it will always be alive!
Great work, webmaster, nice design!
Great. Now i can say thank you!
Great site. Good info.
Beautiful site!
Very interesting site. Hope it will always be alive!
I want to say - thank you for this!
Great site. Keep doing.
Perfect work!
I bookmarked this link. Thank you for good job!
Great site. Good info.
It is the coolest site, keep so!
I want to say - thank you for this!
I want to say - thank you for this!
If you have to do it, you might as well do it right.
Beautiful site!
Incredible site!
Very interesting site. Hope it will always be alive!
Very interesting site. Hope it will always be alive!
It is the coolest site, keep so!
Great work, webmaster, nice design!
If you have to do it, you might as well do it right.
I bookmarked this link. Thank you for good job!
Very interesting site. Hope it will always be alive!
Perfect site, i like it!
Excellent site. It was pleasant to me.
Great work, webmaster, nice design!
It is the coolest site, keep so!
Incredible site!
Great site. Good info.
I bookmarked this link. Thank you for good job!
It is the coolest site, keep so!
Great work, webmaster, nice design!
It is the coolest site, keep so!
Perfect work!
Incredible site!
Beautiful site!
Great. Now i can say thank you!
It is the coolest site, keep so!
I want to say - thank you for this!
Beautiful site!
If you have to do it, you might as well do it right.
I bookmarked this link. Thank you for good job!
Very interesting site. Hope it will always be alive!
I want to say - thank you for this!
I bookmarked this link. Thank you for good job!
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
Excellent site. It was pleasant to me.
I bookmarked this link. Thank you for good job!
Beautiful site!
I bookmarked this link. Thank you for good job!
Perfect site, i like it!
It is the coolest site, keep so!
Beautiful site!
Incredible site!
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
I want to say - thank you for this!
Incredible site!
It is the coolest site, keep so!
Incredible site!
Great. Now i can say thank you!
I bookmarked this link. Thank you for good job!
If you have to do it, you might as well do it right.
Great site. Keep doing.
Very interesting site. Hope it will always be alive!
I bookmarked this link. Thank you for good job!
Perfect work!
Great site. Good info.
I bookmarked this link. Thank you for good job!
Great. Now i can say thank you!
Incredible site!
Very interesting site. Hope it will always be alive!
I want to say - thank you for this!
Great site. Good info.
Excellent site. It was pleasant to me.
Very interesting site. Hope it will always be alive!
Incredible site!
Perfect work!
If you have to do it, you might as well do it right.
Very interesting site. Hope it will always be alive!
I bookmarked this link. Thank you for good job!
Very interesting site. Hope it will always be alive!
Great site. Keep doing.
It is the coolest site, keep so!
Excellent site. It was pleasant to me.
Great work, webmaster, nice design!
Great site. Keep doing.
Incredible site!
Beautiful site!
Beautiful site!
Great. Now i can say thank you!
Perfect work!
Beautiful site!
Incredible site!
I bookmarked this link. Thank you for good job!
Perfect site, i like it!
I want to say - thank you for this!
Great site. Keep doing.
If you have to do it, you might as well do it right.
Perfect work!
Perfect site, i like it!
Great work, webmaster, nice design!
Very interesting site. Hope it will always be alive!
Great site. Keep doing.
Very interesting site. Hope it will always be alive!
Incredible site!
Excellent site. It was pleasant to me.
Perfect work!
Great. Now i can say thank you!
I bookmarked this link. Thank you for good job!
Excellent site. It was pleasant to me.
Excellent site. It was pleasant to me.
Beautiful site!
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
Excellent site. It was pleasant to me.
It is the coolest site, keep so!
Incredible site!
I want to say - thank you for this!
Great site. Keep doing.
Very interesting site. Hope it will always be alive!
I bookmarked this link. Thank you for good job!
Perfect site, i like it!
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
Perfect work!
I want to say - thank you for this!
Very interesting site. Hope it will always be alive!
Great work, webmaster, nice design!
I want to say - thank you for this!
I bookmarked this link. Thank you for good job!
Perfect site, i like it!
Great work, webmaster, nice design!
Very interesting site. Hope it will always be alive!
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
I want to say - thank you for this!
Beautiful site!
Great. Now i can say thank you!
Perfect work!
Incredible site!
Very interesting site. Hope it will always be alive!
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
Great. Now i can say thank you!
Perfect work!
Perfect site, i like it!
Very interesting site. Hope it will always be alive!
Beautiful site!
Great site. Keep doing.
I bookmarked this link. Thank you for good job!
Great work, webmaster, nice design!
Excellent site. It was pleasant to me.
Incredible site!
Great site. Good info.
Great site. Good info.
Beautiful site!
Perfect site, i like it!
Excellent site. It was pleasant to me.
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
I want to say - thank you for this!
Great site. Keep doing.
Great. Now i can say thank you!
I want to say - thank you for this!
Very interesting site. Hope it will always be alive!
If you have to do it, you might as well do it right.
Great work, webmaster, nice design!
It is the coolest site, keep so!
If you have to do it, you might as well do it right.
Very interesting site. Hope it will always be alive!
Great site. Good info.
I bookmarked this link. Thank you for good job!
Excellent site. It was pleasant to me.
I want to say - thank you for this!
Great site. Keep doing.
Great site. Keep doing.
Incredible site!
It is the coolest site, keep so!
Great. Now i can say thank you!
It is the coolest site, keep so!
Great site. Keep doing.
I bookmarked this link. Thank you for good job!
Excellent site. It was pleasant to me.
If you have to do it, you might as well do it right.
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
Excellent site. It was pleasant to me.
Great. Now i can say thank you!
If you have to do it, you might as well do it right.
Beautiful site!
I want to say - thank you for this!
Great. Now i can say thank you!
It is the coolest site, keep so!
Excellent site. It was pleasant to me.
It is the coolest site, keep so!
Very interesting site. Hope it will always be alive!
I want to say - thank you for this!
Beautiful site!
Great site. Keep doing.
I want to say - thank you for this!
Perfect work!
Perfect work!
Great site. Keep doing.
Excellent site. It was pleasant to me.
Great. Now i can say thank you!
Very interesting site. Hope it will always be alive!
Very interesting site. Hope it will always be alive!
Incredible site!
Great site. Good info.
Great site. Good info.
Great site. Keep doing.
Very interesting site. Hope it will always be alive!
Perfect work!
Incredible site!
I want to say - thank you for this!
Great site. Good info.
Beautiful site!
Perfect work!
Great work, webmaster, nice design!
Perfect site, i like it!
If you have to do it, you might as well do it right.
Very interesting site. Hope it will always be alive!
Great work, webmaster, nice design!
Great. Now i can say thank you!
Excellent site. It was pleasant to me.
Very interesting site. Hope it will always be alive!
It is the coolest site, keep so!
I want to say - thank you for this!
I want to say - thank you for this!
Excellent site. It was pleasant to me.
I bookmarked this link. Thank you for good job!
Perfect work!
I want to say - thank you for this!
Incredible site!
If you have to do it, you might as well do it right.
Great site. Good info.
Perfect work!
It is the coolest site, keep so!
Excellent site. It was pleasant to me.
I bookmarked this link. Thank you for good job!
Great work, webmaster, nice design!
I bookmarked this link. Thank you for good job!
Incredible site!
Perfect site, i like it!
Incredible site!
Great work, webmaster, nice design!
I want to say - thank you for this!
Beautiful site!
Great site. Good info.
Excellent site. It was pleasant to me.
Incredible site!
I bookmarked this link. Thank you for good job!
Great. Now i can say thank you!
If you have to do it, you might as well do it right.
Very interesting site. Hope it will always be alive!
Incredible site!
Beautiful site!
Great site. Keep doing.
Beautiful site!
I bookmarked this link. Thank you for good job!
I bookmarked this link. Thank you for good job!
comment5,
comment4,
comment5,
comment6,
comment3,
comment2,
comment1,
a12.txt;5;5
I like your work!,
Your Site Is Great,
Thank you,
can you do thi for me,
best for you,
Help me to find the,
Thank You,
Real,
Nise site,
I want to say thanks!,
Hi,
Great site. Keep doing.,
Where it is possible to buy the,
Best Wishes,
Your Site Is Great!,
I bookmarked this guestbook.,
Very interesting sites.,
Beautiful site,
Excellent site. It was pleasant to me.,
best for you,
:-),
What is it,
I have the same.,
Nise site,
Beautiful site,
What?,
Incredible site!,
