BCVI 3.0 Hits CPAN

grantm on 2010-06-03T21:08:19

My big news today is that Version 3.0 of bcvi is now available on CPAN. If you have no idea what bcvi is then you'll be pleased to know I've written this article to answer all your questions - it even has pictures!

Way back in 2007 I knocked up a proof-of-concept implementation of a somewhat crazy idea. I used it for a while and found it useful so I shared it on PerlMonks to see if other people found it useful too. That was version 1.0.

Over time I fleshed out the core to make something more robust, more secure and more useful. But I never released it publically because it always seemed like the sort of tool that would be most useful to a person who hacked it into a form that suited them. I really had no idea how to release and maintain a tool that was meant to be hacked. So I kept it to myself and continued to find it useful. That was version 2.0.

Eventually I realised that what I needed was a solid core of infrastructure code and a plugin API that would allow people to hack the core without editing the script itself. Quite why it took me so long to realise this, I couldn't say. After all it's exactly what I did with SSHMenu and that has worked out very well.

The problem was that I didn't have a solid core of infrastructure code. What I had was a proof-of-concept script that had some of the rough edges knocked off and some new shiny bits bolted on. So earlier this year I set about rewriting bcvi in a more extensible way. Then to prove the new plugin API, I wrote a few simple plugins. Now it seems to be in a stable enough form for me to call it version 3.0.

And so it's released. There's even some documentation for the plugin API. It'll be interesting to what, if anything, people make of it.

Cross posted from my blog.


Sounds great!

tsee on 2010-06-04T07:59:01

Thanks for writing about bcvi. I'll give it a shot and it really sounds like something that'll be a great replacement for a whole bunch of crappy scripts I have accumulated over the years.

--Steffen