NAME
Dev::Bollocks - Arbitrary sized bollocks straight from middle management
SYNOPSIS
use Dev::Bollocks;
print Dev::Bollocks->new(),"\n"; # create first bollox
print Dev::Bollocks->rand(),"\n"; # create random bollox
print Dev::Bollocks::rand(3),"\n"; # create random bollox w/ 3 words
$x = Dev::Bollocks->rand(),"\n"; # create some random bollox
for ($i = 0; $i ++; $i < 10)
{
print "$x\n"; $x++; # next bollox
}
REQUIRES
perl v5.8.1, Math::BigInt, Math::String, Math::String::Charset, Math::String::Charset::Grouped
EXPORTS
Exports nothing.
DESCRIPTION
This module implements /dev/bollocks, which generates management bullshit whenever you need it.
Of course, to follow the spirit outlined in http://www.fatsquirrel.org/veghead/software/bollocks/ this module doesn't simple do a head /dev/bollocks
, that would be too easy, too fast and non-portable. And bullshit is universilly portable.
Thus the module makes a subclass of Math::String and changes the default charset to a charset that somewhat emulates and extends the original /dev/bollocks charset.
As a side-effect you can calculate with bollocks strings, or even compare them to find out which is greater crap than the other:
use Dev::Bollocks;
my $x = Dev::Bollocks->rand();
my $y = Dev::Bollocks->rand();
print "$x is more crap than $y\n" if ($x > $y);
print "$y is more crap than $x\n" if ($y > $x);
print "$x is the same bollox than $y\n" unless ($y != $x);
EXAMPLES
Run examples/bollocks.pl to get something like:
We were told to adaptively monetize holistic market-driven systems.
It is important to appropriately fashion meta-services.
We can enthusiastically utilize proactive channels.
We should paradigmatically streamline e-services.
Your job is to seamlessly architect dynamic out-of-the-box clusters.
Our job is to interactively harness high-yield 24/7 markets.
We were told to widespreadedly supply holistic synergies.
So, let's assertively grow front-end vertical architectures.
Your job is to completely exploit scalable meta-services.
All of us plan to evangelistically empower low-risk edge-of-your-seat content.
So, let's augmentatively build back-end systems.
And next we simultaneously transform sexy m-commerce.
All of us plan to continually benchmark world-class methodologies.
Your job is to enormously disseminate open-source interactive mindshares.
So, let's simultaneously transform interfaces.
Our job is to confidentially coordinate intuitive intuitive e-commerce.
It is important to paradigmatically embrace robust dot-com solutions.
And next we appropriately innovate strategic customers.
All of us plan to challengingly target synergies.
Our job is to conveniently generate collaborative deliverables.
It is important to evangelistically synergize high-yield robust IPOs.
We should competently e-enable convergence.
All of us plan to economically negotiate action-items.
It is important to competently integrate value-added efficient users.
We better widespreadedly promote vertical strategic materials.
And next we centrally harness convergence.
So, let's dynamically e-enable out-of-the-box 24/365 customers.
And next we dramatically enhance efficient development.
We better biannually enable high-yield metrics.
INTERNAL DETAILS
I spare you the internal details. You don't want to know the internas of middle management. Trust me. If you still are inclined to know, see Math::String. Don't say I didn't warn you.
USEFULL METHODS
new()
$bollocks = Dev::Bollock->new();
Create a new Dev::Bollocks object with the first bollocks ever. Optionally you can pass another bollocks string and it will see if it is valid middle management speak. Never was generating crap so easy!
rand()
$bollocks = Dev::Bollock->rand($words);
Create a new, random Dev::Bollocks object with $words words. $words
defaults to 4.
first()
$bollocks->first($length);
$bollocks = Dev::Bollocks->first($length);
Generate the first bollocks of a certain length, length beeing here the number of words.
last()
$bollocks->last($length);
$bollocks = Dev::Bollocks->last($length);
Same as first(), only does the, well, last crap you expect.
as_number()
$bollocks->as_number();
Return internal number as normalized BigInt including sign.
length()
$bollocks->length();
Return the number of characters in the resulting string (aka it's length). It returns the number of words, since a Dev::Bollocks charset contains the crap words as 'characters'.
charset()
$bollocks->charset();
Return a reference to the charset of the Dev::Bollocks object.
PERFORMANCE
It is rather slow. This is a feature, not a bug.
Benchmarks
Were not done on purpose. Nobody expects middle, or any other, for what it matters, management, to be fast or efficient, so we didn't waste our time in profiling it.
PLANS
Bring upper and lower management speak to the, er, waiting masses.
LICENSE
This program is free crap; you may redistribute it and/or modify it under the same terms as Perl itself.
CREDITS
The original idea is from http://www.fatsquirrel.org/veghead/software/bollocks/.
I also found some words by searching the web for "Vision" statements (http://www.google.com is your friend!).
Webster's dictionary. Nowhere you can find gems like autoschediastically, daffydowndilly or histomorphologically.
And then there is http://www.dilbert.com/comics/dilbert/career/html/mission_vocab.html.
From http://www.tomshardware.com/cpu/01q4/011105/index.html:
"This time, AMD attempts to entrench its position in the performance-oriented high-end segment." - You just can't make that stuff up.
http://www.utsglobal.com/products.html:
...provide enterprise-class UNIX operating environments... ...matched the unique scaleable, mission-critical features...
The journal Displays Europe, issue #1 provided lot's of, uh, well, genuine [mental note to self: add genuine to the list of adjectives] material:
- An VESA ad
-
"...to foster industry innovation and global market growth"
- Some headline
-
"organic success stimulates industry-wide bandwagon"
Yeah, whatever.
AUTHOR
If you use this module in one of your projects (haha!), then please email me. Or maybe better not. Oh, crap, mail me anyway.
(c) Tels http://bloodgate.com 2001 - 2006.