Experiences in both success and failure

I did my bit:

I really do like where things are headed and I’m sure the good work will continue πŸ™‚ There’s been some lively debates on the mailing lists of late, but it’s worked out smoothly and courteously in this humble hacker’s opinion.

All the tested LiveCDs and pre-releases of F11 I’ve tried have been painless which bodes well, as the certainty of me finding something broken / failing / misbehaving with a freshly distribution-upgraded system is often close to 1 πŸ™‚

Speaking of breakage on the other hand…

I tried to convert my home ejabberd server from the standard mnesia backend to MySQL. using “ejabberdctl convert2odbc” to output the data to flat SQL scripts which you can then import into almost any server (ah, simple, standard transactional SQL, how I love thee :-))

This went really well until I found that I had no MySQL driver for Ejabberd/Erlang installed, and there’s none packaged (ProcessOne has one in their ejabberd-modules Subversion repository, but finding out after the fact is of little comfort, *sigh* )

Oops. Might have to fix that little oversight before retrying. Mea Maxima Culpa

Fortunately I took a backup of the mnesia database before all this (when in doubt, take a backup; when you’re certain – still take a backup!) and I needed it as even after reverting my configuration changes and restarting ejabberd it still wanted to connect to the MySQL service (there were references still in the spool/ on-disk database to it). The restore fixed it in minutes though, fortunately.

I’m planning to release an updated PyICQ transport once Leonidas is out and things have settled (and I have time to test a local scratch build). I also had a look at the python-based Yahoo! Transport, which isn’t very good in my opinion and I already have the MSN Transport packaged here; it’s good and works with the current MSN servers with a little patch. It’s upstream development is slow/”undead”, however which makes me a little hesitant to push it to Fedora proper.

Twitter Fail: Even mentioning Yahoo! tongue in cheek / in passing gets you retweeted by the Yahoo! News bot. Really, if you’re going to let loose any form of artificial intelligence (I use the term loosely) the “intelligence” part is important, yknow. πŸ™‚

(On a slight tangent I’m fairly certain a Markov/MegaHAL style bot, if set loose on Twitter, will post more interesting content than most “celebrities” using it to pimp themselves, Stephen Fry being an exception)

I’d advise folks interested in signal to try an open, laconi.ca based solution (like Identi.ca) instead πŸ™‚

PS. Yes, I thought about PostgreSQL as the driver is there. Alas WordPress is tied to MySQL only

PPS. Laconica seems very fail-whale free πŸ™‚

Scale and speed and spam

Obligatory Laugh-and-head-shake digression: I’ve been fighting email spam for 12 years plus, and I still see stupid spammers – pardon the tautology – indiscriminately junkmailing abuse@Β  role addresses. Idiots. Why not just offer crack to a cop?

With that thought out of the way…

Mike McGrath’s memcached plug prompted me to give it a go here, for well, two reasons.

a) I’ve had some (good) experiences in the workplace with it – it’s a boon for database intensive web apps especially and b) because I can and it’s there (which is always a good reason in my ever humble view)

Memcached itself is always a fairly simple install for Fedora – Install via yum (including memcached-selinux if you’re running SELinux – and if you aren’t why not! :-)), give it some options via /etc/sysconfig/memcached eg. CACHESIZE=”64″ (at home, usually “1024” at work because their app is a lot heavier) start it up and point clients at it.

WordPress was a touch trickier – there isn’t an “official” WordPress plugin, with a client available buried in WordPress Plugins version control (http://plugins.trac.wordpress.org/browser/memcached/trunk/) – which has worked well – if you’re reading this it’s not killed my blog.

To install, grab the above file(s) and drop the object-cache.php file in /usr/share/wordpress/wp-content, set “WP_CACHE” to “true” in wp-config.php and you’re most of the way there.

On the server side, memcached-tool’s “stats” command should start seeing increases in cache hits/misses and cached object numbers.

Adding Andy Skelton’s batcache plugin can help to fine-tune what and how it caches – it’s functional but not as “click-and-drool” as many WP plugins, but how much tweaking do you need to do really?

Drupal was a similar adventure I’ll go into elsewhere; there’s a reasonably simple to install plugin from drupal.org – download, drop into /etc/drupal/all/modules, configure and enable –Β  and the results just as good.

I was surprised to find related Perl packages not in the main repository (Other major languages are covered – my workplace couldn’t survive without the Python bindings :-)) so I whipped up a package of Cache::Memcached 1.26 (also for RHEL/CentOS) on my own repository, plus I’ll be uploading it for review for Fedora proper[2] as a Perl-using systems admin it’s just too useful not to have (monitoring / stats-gathering scripts for a start :-))

In my continued masquerade as a web developer/SEO maven (which isn’t fooling anyone, I know!) I’ve spent too much time looking at analytics to the point of my poor old eyes turning square and developing line graphs burnt in to my retinas.

At least that’s been a little successful. I have one sticking point in the development side, which is avoiding / dumping web form spam. I could use CAPTCHA but I forsee a lot of visitors finding it off-putting, which is undesirable (it’s for my girlfriend’s business venture). I could use Akismet but that seems more suited to blogging, alas (and I’d need to package the PHP PEAR apps for it anyway).

I’m welcome to other suggestions as always.

[1] well, if you’re not reading Planet Fedora via an aggregator anyway..
[2]Β  Update at 9:07pm AEST: Bug #504403 if someone is keen.

Result may be fit, social with an open messaging standard on top.

Techie Happenings:

I’ve been tinkering with more XMPP (Jabber to you oldies) messaging in general, as it happens. I’ve had a look at the python Yahoo transport and found it a little lacking – it’s config is a little too different to the python MSN / ICQ / AIM transports than I’d personally like, which I’m already packaging and running plus it tends to die/misbehave at unusual times. It has been worth a look though and if enough people would want it, I’ll make the RPM available – but be warned it’s not really to my usual standard.

Speaking of which, there’s a persistent room for chatting around the packages generally – just as an experiment and because I can – at thatfleminggent-rpm@conference.thatfleminggent.com.

I’m still tinkering / debugging my publish-subscribe nodes for thatfleminggent.com (Ejabberd for those interested). I’m sure I’ve configured it right with PEP (Personal Eventing) but I wonder how strong support is client side? Gajim does some PEP (Mood/Activity/Tune for instance) but it updates sporadically if at all.

(Which leads me to wonder how widespread support for that and Service Discovery protocol are client-side, as aside Gajim/PSI it seems sparse and many XMPP goodies are unseen without it. I’d be keen to know more from those in the know)

I’ve signed up on identi.ca (as “thatfleminggent“) and liking it – there’s less noise and spambot followers than Twitter and some very nice XMPP/OpenID integration too.

Better support from the Windows clients would be nice (twhirl does but it’s in the minority, and I’ve preferred TweetDeck or TwitterFox when on a Win desktop) but the Linux clients have been fabulous, especially the current Gwibber version in Fedora.

While there’s been a few “oh no, a slip!” comments being bandied around the tubes regarding the Leonidas release, it’s being done for good reasons. Your august poster here has seen his share of *ahem* “Gold” releases from commercial vendors (no, not just Microsoft but I’ve seen lots of theirs over the years) that many FOSS devs would regard as paper-bag. There’s nothing worse than that corner case bug that inevitably bites us (because Murphy loves a systems tech) so it’s good to delay and get it right than get it out quick and brace for a mess.

Oh, and a protip for those converting local shell accounts to LDAP (or similar) – be prepared to get some uid/gid mismatches unless you’ve been REALLY careful :-). I just did and thought I had consistent ID’s before, but no such luck. It’s trivial to reorganize though.

Life In General:

My girlfriend, bless her heart is a fitness buff and that means that of course yours truly will be convinced to give her current “hey here’s an idea to improve our health” ideas a go.

Thursday’s “let’s go for a good walk” turned out to be a marathon, possibly literally. I’m not sure if I covered a complete 25miles (~42km for those of us on the metric system) on Thursday but it felt like it. This was followed by Friday’s “just a bit of a jog up some stairs” – a 30 degree incline and a 200m stretch! (colloquially known as “The Hill” at Teneriffe in Brisbane) a half dozen times with minimal rest..

Of course I can’t feel anything but lactic acid from the knees down now (I’m not in possession of a runner’s build – I was a weightlifter / shotputter in my youth)

My better half is of course as good as gold πŸ˜€

Went to see Angels and Demons (the inner UNIX geek keeps wanting to write it as “Daemons”) on Wednesday night. Not as good as The DaVinci Code, but still better than a lot of the fluff in my local cinemas at the moment. It also helps my local cinema is licensed; a bottle of wine helps get through some poorly chosen movies..

I’m headed back to the office on Monday – feeling better after a break, knowing nothing’s gone amiss in my absence, with a few ideas on how to improve things (equals “make my job easier”) in the back of my mind πŸ™‚

Can sanity prevail? Here’s hoping.

Christian lobby upset about Australian government backtracking on Internet Censorship

I’ve one word to say about this: good. The whole sorry mess that is the Australian net censorship debate has become an international embarrassment. It is not or will be feasible technically (something the august members of SAGE-AU have pointed out many, many times – and they should know) is wide open to abuse and scope creep – and has never been about “protecting children”, ever (let’s be honest here!).

There’s already “parental responsbility” and personal filtering software (for those that want it) to police kids’ online usage. Nationwide national filters are massive overkill for this – unless that wasn’t the *real* reason πŸ˜›

(I found the “if you’re against the filter you don’t care about the children/have something to hide” troll from the likes of Child Wise personally offensive, being an adult and a knowledgeable professional. “Don’t pee on my leg and tell me it’s raining” – Anon)

I’m also pleased to see that seperation of church and state still means something here (and did the pro-filteringΒ  lobby really expect not to be cast aside by politicians when convenient for the latter? They’re pollies – CYA is their mantra and measure time in periods between polls!)

On other matters: I’ve spent a little bit of time getting the (thankfully few) bugs in my packages cleaned up (pyicq-t will appear for Enterprise Linux really soon, I promise you – CVS branches are pending), signed up for identi.ca (as “thatfleminggent” – I’m impressed with the XMPP/OpenID integration so far) and tinkered with a few projects that took my fancy – integrating FDS/”389″ into my local network, setting up Asterisk, continued learning some search engine voodoo for the GF’s website.

There will be a “thatfleminggent” package set for Leonidas, as usual I’m not 100% sure what form it will take and what will be retired / added.

Looking over Planet Fedora, I should probably learn a language or two as I think I’m missing some good non-English content πŸ™‚

This is why I’m not a “webmaster”

In an effort to help my girlfriends website generate a bit of trafficΒ  – and some business for her πŸ™‚ – I’ve spent a bit of time (probably a little too much for a holidaying techie, but it’s a “love job”) trying to get my head around more indepth search engine optimisation and Google Analytics / Webmaster tools in particular.

In summary I still think a lot of it is voodoo πŸ˜€ .

Generating the sitemap etc. is easy, as is submitting it (except Yahoo, too many hoops, FIXME) but the resulting information can be just a tad opaque – bounce rates for example (mine seems high at over 70%, maybe because of the package downloads) plus GoogleBot’s view of my site seems rather different to mine (or what awstats tell me about visitors) – I suspect the poor old META tag doesn’t get the importance it did in times past, and this old curmudgeon is still in the tech-bubble era regarding search visibility.

But I’m learning again – there seems to be some positive results already and it’s another string to my bow.

An impressive practical use of Google Maps (and Twitter to get the word out) during the flooding here in Brisbane:

Google Map of the affected areas and road closures

Fortunately I’m in the inner city and a floor up in an apartment, so wasn’t affected, unlike far too many (including a close friend who arrived home from the pub to a flooded front lounge and no electricity πŸ™ )

I also attempted to split my IPv6 allocation (a mere /64) over 2 physical links – bad idea and an epic failure on my part. It was worth a shot I guess.

All of my revision controlled code has been switched from bzr to git – I don’t know why I didn’t do this sooner – it’s been a breeze, and the learning curve hasn’t been steep at all – or perhaps my needs aren’t too complex? (I’ve been primarily a bzr/cvs/Subversion user). The “tailor” package from the main Fedora repository was also helpful – it’s not the easiest to use, but the results were excellent.

I’m converting my rather venerable Samba domain controller to an LDAP backend (it’s currently tdbsam and a pain to manage) – using Fedora Directory Server (ahem “389” now – admittedly good vendor-neutral branding there folks) has been fairly painless, barring my unfamiliarity regarding how it manages ACLs (or perhaps that’s just the management console not doing what I think it is)

Speaking of which – I’ve had a dreadful experience with LDAP management apps – both gq and lat crash on me badly and while I don’t mind phpldapadmin (and use it at work) it’s not particularly fast. I welcome suggestions for alternatives πŸ™‚

I’m currently hand-editing via ldapvi and feeling rather old-school.Β  A little Perl CGI app called “pluma” has piqued my interest – I’ll package it up if it turns out to be worthwhile.

Murphy is my co-pilot.

After moving what seems to be several mountains at the workplace over the last few weeks, I’m finally on holiday. Additionally, my girlfriend is back from interstate, which makes me even happier.

Alas, nature doesn’t like us and lo, as soon as she stepped off the plane it started raining – and it hasn’t stopped. It knows when I’m trying to chill, I tell you, it’s some sort of celestial conspiracy.

Aside from pottering about my apartment while it pours and she rests I’ve whipped up a couple of quick packages for the WordPresss user: WP-Syntax and an updated WP-Supercache (the latter is a bit experimental) – they’re in the repositories for all versions / arches I support. I’m using the former here so you should be able to put code snippets in comments (and I in posts) now.

(Fedora contribs: These plugins are very easy to package; I’m happy to contribute a spec template to rpmdev or even submit them for review if there’s sufficient interest)

I’m also having a crack at gluster – It builds on Fedora OK sans Apache/Lighttpd module support, merely needs a bit of init-script massaging. I’m happy to provide an eat-your-brane build for the keen/brave.

New courier-imap packages

Sam released 4.5.0 today (and maildrop 2.1.0, which I’m trying to package up now and having an interesting time tracking a compile problem with the db/gdbm stuff) – I’ve updated my packages for CentOS/RHEL and Fedora in the usual places

In fact I’ve installed the new package for F9 on my server already without a hitch (yet, touch wood) – in fact I’ve never had a problem since moving from qmail-pop3d in Ye Olden Dayes (there’s still a few large places here in .au using qmail-pop3d; I’ve often wondered why..)

On a tangentially related topic – is it just the onset of madness or is my repoview index going somewhat random? For about a week or more the main index is been VERY out of order for all repos (cf here for example ). The repository data looks fine and the RSS feed data is in perfect shape. I’m wondering if I’m alone here or this is a “bug”? I’d prefer not to waste too much of Konstantin’s time if it’s just me πŸ™‚

So don’t be alarmed regarding the latter (as a user) – I’ve not stopped.

(UPDATE: maildrop 2.1.0 builds, but without db4 support. Happy to release it if people don’t mind using gdbm. Curse you, BezerkleyDB! :-))

This should be obvious, but..

If it’s not notifications / oddly explained failures to build from gcc itself (hello davfs2 on CentOS/RHEL5, where did that fail? Insights welcomed as the build.log is charmingly opaque. Cheers) or flex & bison (Hello vulcan on F10/x86_64, whaddaya mean you can’t parse and move the .yy files? Jebus on a razor scooter every other distro version and arch did it happily except the one I actually run!) it’s another thing.

Am I also the only person who sees “advice” like this “fix” for a library error and let out a Charlie Brown-esque “AUGH!” (Two good ways to fix this, microbrew to the commenter who posts the most elegant one first ;-))

I’ve had much success installing Fedora Directory Server and Cobbler over the last couple of days (home and the workplace respectively) but remind those attempting it that “with great power, comes a great responsibility to read the supplied documentation carefully before issuing a ‘service <foo> start'” .

These two are an example of packages that are insanely great, very powerful and can do everything but bring about world peace. Conversely the configuration items and possibilities are legion, ergo consider what you want to achieve and what you’re working with before you open your text editor.

Doing it the other way around is of course an excellent way of creating a timesink. πŸ˜€

Sensible defaults are good and common, but not always ideal. Just because it starts doesn’t mean it will suit your needs. Approach with a plan and you’ll be much happier and more successful.

(The same reasoning applies to “live” server installs. “It boots” doesn’t mean “It works” or “It’s secure” – especially the latter, having seen a few folk learn the hard way ;-))

De-stressing

Hey Yaakov, make that four users once I’ve set it up, I certainly do like the looks of it. A good tool that makes any job easier is a winner in my book, and that looks like a good one indeed.

This weekend was a long one in my neck of the woods, being the Labour Day holiday.

Saturday was mostly a relax-around-the-house day, with a fairly quick and painless upgrade of my old doorstop-server (an old PII 233 that graced an ex-employer’s datacentre as it’s first backup server) – I’ve had mainly good experiences doing aΒ  “yum upgrade” between Fedora releases (9 to 10 in this case) and this was even cleaner than last time (just remember to relabel if using SELinux per my last post, mkay? :-P)

The Drupal update for dotprofileconsulting.com went very smoothly too – but some attempts to streamline WordPress for thatfleminggent.com weren’t quite so grand, some of the themes I’d tried didn’t seem to like the 2.6.5 install (any chance of 2.7 for F9/F10?) so I stuck with the tried-and-true, even if it is a little “busy”

It was also the Buddha’s Birthday celebration here, so a stroll down to South Brisbane to see the sangha and what was on offer was in order. I admit not getting to the Zen talks this year but took in the opportunity for some zazen (sitting meditation), some much needed kinhin (walking meditation) as the old legs were a bit too stiff for the full lotus and even a bit of tai-chi (which I’m unused to as part of my practice but can certainly see the benefits of)

It’s a practice worth considering if you’re in a high-stress position (developers and systems people, I’m looking at you..) – even just sitting quietly, counting the breath and letting whatever thoughts come and go is a good start – and not complicated; you “just sit”. Sit often enough and the rest takes care of itself. πŸ™‚

My friends and colleagues are still a bit mystified by a “taught to walk by a bald nun” (the kinhin practice mentioned above) Facebook update but I’ll let them ponder a bit more πŸ™‚

Quick head-scratcher avoidance tip

When upgrading versions of Fedora, it’s almost never a bad idea to force a SELinux relabel on reboot (or via fixfiles if it’s a little too late ;-))

I yum-upgraded my doorstop-cum-network box without doing so, then had a momentary headscratcher relating to why Dovecot failed to start or OpenSSH wouldn’t use my pubkey. Whoops.

This public service announcement brought to you by the What The Heck Happened There Avoidance League