This is another boring braindump.
First of all, let me point you in the direction of my shiny new blog titled
"Unarmed but Still Dangerous" and subtitled "Changing the world
one post at a time". It is a blog of essays and possibly also
insightful fiction (we'll see), from a programming enthusiast
(so-called software "hacker") intended for programming enthusiasts, not
necessarily focusing on computing topics, but kinda assumes being somewhat
tech-savvy or
knowledgeable about technology. I successfully Slashdotted
the
first real post about coping with provocative people on the Internet
using the "Verbal Judo" technique from the book "Feeling Good" by
David Burns (and also tried to digg it with less success), and from there it
hit many other news sites, blogs, microblogs, and forums, until someone asked
me if I announced it on every possible news sites (which I didn't). Other
people have told me on IM or IRC and elsewhere that they've heard about it and
either liked it and/or had some reservations from it.
I used the shop-worn
Perl vs. Python debate as a test case there (though
maybe it was a bit too geeky), which I think added to the humour of the post.
I got some comments there (some of them were ironically provocative), and I
enjoyed the attention. I think publishing the post and Slashdotting it
actually made me a bit calmer, because I was anxious to already do it. I hope
this post gets more geeks interested in
"Feeling
Good" and in
Cognitive
Therapy in general, which I found to be very insightful and helpful and
useful in avoiding or dealing with many frustrations.
I still plan on keeping the more technical (and thus more dry) discussion
on "shlomif-tech". (At least until I find or get a better venue).
Back to the topic: some days ago I was chatting on Freenode when
someone asked me that:
Shlomi, have you completed your [Freecell] solver at last? ;)
He may have said it tongue-in-cheek, but I'd like to answer it seriously. The
way I see it there are several kinds of projects as far as their "hacktivity"
status is concerned. Some of them are actively maintained and enhanced,
possibly by many members. Some of them still have a maintainer, but are in
"deep maintenance mode". Some of them just accumulate bug reports and
feature requests without someone to adopt them. Some of them are dead
and no one cares too much about, because people have mostly used other
programs instead.
In the case of my Freecell solver,
it's a bit more complicated. I haven't completely lost interest in working
on it, and there's still a lot of room for improvement, but I often feel
like I have better things to do than to work on it, because it is already good
enough for most of my needs and the needs of most other people. So far my
attempts at finding an enthusiastic co-developer (or even primary developer)
for it failed to a large extent, though some of the people who attempted
to contribute, proved to have contributed to the project's success to an
extent as well. Freecell may also be losing some popularity among the younger
generation, in part because Microsoft now includes many other games in its
operating systems (which is overall a good thing, because shipping an
operating system with only four built-in games is a joke.). While a lot of
the older people I told about the fact that I've authored a solver for
Freecell (including some attractive girls), were impressed by it, I think
most of the youngsters
are not too excited about Freecell, despite the fact that Freecell solving
is very interesting from the computer science, software engineering and
artificial intelligence point-of-view.
Moreover, I've been getting the feeling that many of the relatively small-scoped
projects I've started and released as open-source, are only used by me.
An example for that may be
XML-Grammar-Fiction,
in which I've recently found some stupid bugs, and, which, while some people
may find interesting, only addresses a very small niche. There is some advantage
to releasing a program as "shrinkwrap", but I guess it's not what people always
want. CPAN and
Freshmeat.net appear to have quite
a lot of similar software, which many people don't use.
Now, I have some projects which I've decided that I've lost interest or am
no longer qualified to do. One of them is
the Better-SCM site which proved
to host several popular resources, including its
comparison. Lately,
I've felt that I'm both under-qualified to maintain it, as well as lack the
interest to do so. If you'd like to volunteer to do it, give me a shout.
Regarding Perl-Begin, I'm still improving
it as I run into things there, but now think that in order to facilitate
contributions from other people, I'd like to convert its Subversion
repository to a distributed version control system (DVCS) - either git or
Mercurial (although I believe they both can interoperate pretty well) - and to
host it on Github, Gitorious, or
Bitbucket.org where
it will be easier to collaborate on it. I personally find Mercurial more
intuitive and faster and more flawless to work with, but most Perl people and
programmers in general appear to prefer git and Github. I'll see about it.
Another project is the
Graph-Easy CPAN module.
The problem with it is that I lack the tuits and the competency to maintain
it, and it keeps accumulating bugs and bug comments (many of them are real)
without me being able to do anything about it. I've became a co-maintainer
for it because I used it in one of my projects, and am no longer actively
interested in it, and find it intimidating.
Most of my other software projects are either in deep maintenance mode, in
planning/dreaming stages, were not released yet or still have room for
improvement, but too little motivation and the fact I don't have an immediate
use for these features and no one asked for them. Maybe I should look at
contributing to some projects with many other people there such as
GIMP, which I've contributed to in the
past and could use a lot of work (though its main problem is the hostility
of some of the core developers).
In the "Cathedral and the Bazaar", which set forth the case for the "Bazaar
model" of open source development, Eric S. Raymond mentions the story of how
he came to adopt what later would become fetchmail:
But Carl Harris's attitude was even more important. He understood that
5. When you lose interest in a program, your last duty to it is to hand it off
to a competent successor.
Without ever having to discuss it, Carl and I knew we had a common goal of
having the best solution out there. The only question for either of us was
whether I could establish that I was a safe pair of hands. Once I did that, he
acted with grace and dispatch. I hope I will do as well when it comes my turn.
Raymond continued to improve and maintain "popclient→Fetchmail" for a long
time, before and after he has written "the Cathedral and the Bazaar", but
ended up passing its active maintenance to different maintainers. This is
indicative of hacking maturity on Raymond's role. I hope to follow
his lead when the day come for me to pass the ongoing maintenance of the
various projects I maintain, even those that I've written extensively about
(such as the various essays
I've written about Freecell Solver) or brought me a significant amount
of esteem, fame, and/or recognition. I hope you will too, one day.
|