This post originated from an RSS feed registered with Ruby Buzz
by Assaph Mehr.
Original Post: Would the last 3 peple please download Pimki?
Feed Title: Open Mouth, Insert Foot (Echo Internationally)
Feed URL: http://www.bloglines.com/blog/AssaphMehr/rss
Feed Description: General geekness venting, mostly about Ruby and why Software Engineering != Computer Science, dammit!
At the time of this writing 997 people have downloaded Pimki. Would the next 3 people please download it, so I can celebrate 1,000 downloads already?
I have been working intensely on Pimki2 over the past few weeks. Since Alexey has released Instiki 0.10
- which is a more modern-rails-based-app than ever before - I have been
struggling to keep up. Since Alexey has changed so much in the code, I
basically need to re-implement all the features in the new environment,
plus of course enough new bits to justify calling it 2.0.
I'm also taking the opportunity to do it right, by using TDD as much as
I can. This is something I've always wanted to do. Pimki started as a
hack on Instiki, so I really didn't bother with testing beyond
eyeballing. But then, like always, more features crept in, I've
introduced changes yada yada yada and got bitten. Not this time. as a
thank you for all the users who write back with positive feedback, this
time it won't be a hack, but a more properly controlled product.
So far I think TDD slows me down only a bit, mainly on the initial work
(as I have to learn/re-learn Instiki and Rails anyway). But as soon as
the need to refactor itches.... And I'm already benefiting from the
increased problem domain insight and the verification that I do not
break anything in the existing Instiki framework that I don't plan to.
One thing I'm not doing is religious TFD. For one because am I'm an
atheist, but more importantly because I don't think think way. I am a
software designer by trade. I am used to designing first and implementing later. But I am also a big believer in Evolutionary Design over MDA.
Since I'm also the coder on this and there is no design to speak of
(MVC and web systems are a solved design issue), I concentrate on the
features. I treat my tests as the design verification for the
individual features. But I cannot verify something I do not yet fully
understand. And I can not fully understand something I have not
constructed yet. So I use my increased understanding through test construction in my coding, but I also use my increased understanding through coding in the test construction - all leading nicely into tight iterations.
So what's next?
Pimki 1.7 will be released soon. It will have mainly bug fixes, plus a
fixed export that includes all data needed to import into Pimki2. This
is a must for upgrade, as the binary format (Madeleine snapshot) will
not be compatible. I hope this will be the last release of the 1.x
series.
Pimki2 I hope to release as beta soon. Hopefully there will be a beta
section to RubyForge gems server, as I DON'T want people to have it
automatically upgraded by accident (as the storage format is
incompatible). I also do not want to create a new gem package for
Pimki2 - that's just confusing.
What's new in Pimki 2?
It'll be the cutting edge - so sharp you'll poke your eye out.
I want to embed objects in the textile markup. Not just parsed as
before, but true objects represented in text. This will allow me to use
Ajax to have the todo-items checked on or off. There will be some other
uses, like glossary and autolinking.
In addition to the enhanced existing featrues, new text based features
(page templates, snippets, glossary) and extensive stylesheet tweakage,
I am also thinking on some usability and eye candy stuff as well for easy authoring. Now if I could just find a pure-ruby HTML2PDF generator... :-)