1| #!/usr/bin/perl -w 2| ###################################################################### 3| # Name: Bullshit Generator 4| # Description: Creates random bullshit, based on 5| # http://www.jurgensland.nl/download/adviesmatrix.pdf 6| # and http://b10m.swal.org/cgi-bin/bandname.cgi 7| # Author: Joffie 8| # Author's E-mail: joffie@swal.org 9| # Homepage: http://joffie.swal.org/ 10| # License: Gnu Public License 11| # 12| # Use something like `sed "s/^.\{5\}//"` to get rid of the line 13| # numbers ;-) 14| ###################################################################### 15| 16| use strict; 17| use CGI qw/:standard start_ol/; 18| 19| # Show the source on request 20| &ShowSource if(param('keywords') && param('keywords') eq 'view-source'); 21| 22| # Spit out some HTML 23| print header,start_html( 24| -title=>"Bullshit Generator", 25| -meta=>{'keywords'=>'bullshit, generator', 26| 'description'=>'Eenn online bullshit generator.'}, 27| -style=> { -src=>'/styles/bullshit.css'} 28| ), 29| h1("Bullshit Generator"), 30| p("De volgende bullshit is willekeurig uitgepoept."); 31| 32| 33| # Time to generate some bullshit 34| Generate(param('num')); 35| 36| # More HTML to be printed 37| print start_form, p("Aantal:",textfield(-name=>'num',-value=>10,-size=>5),br, 38| br,submit(-name=>"generate",-value=> "Genereer meer!")), end_form; 39| 40| print p(' 47| '); 50| 51| print end_html; 52| 53| ### 54| # Generate 55| # Creation of the band names 56| 57| sub Generate { 58| my $num = shift || 10; 59| 60| my @bs = ( 61| [ 'Het proces', 'De factor mens', 'Het management', 'De communicatie', 'De kerncompetentie', 'Human capital', 'De organisatieontwikkeling', 'De missie', 62| 'Kennismanagement', 'De eerste aanzet' ], 63| [ 'moet meerwaarde leveren bij', 'stelt eisen aan', 'dient te faciliteren bij', 'is uitganspunt bij', 'is onlosmakelijk verbonden met', 64| 'schept voorwaarden voor', 'dient te focussun op', 'stuurt', 'hangt nauw samen met', 'moet een opstap bieden voor' ], 65| [ 'de implementatie van', 'de terugkoppeling van', 'het aftimmeren van', 'het aansturen op', 'de ontwikkeling van', 'de flexibilisering van', 66| 'de integratie van', 'de inventarisatie van', 'de defintie van', 'de insteek van' ], 67| [ 'complexe', 'optimale', 'in elkaar grijpende', 'eenduidige', 'onderling afhankelijke', 'structurele', 'pro-actieve', 'resultaatgerichte', 'efficiënte', 68| 'consistente' ], 69| [ 'supply chain processen', 'business architecture', 'mijlpalen', 'targets', 'business units', 'organistatie-onderdelen', 'scenario\'s', 'best practices', 70| 'business models', 'conceptplannen' ], 71| [ 'waarbij het belang van', 'waarbij de feedback van', 'waarbij het kader voor', 'waarbij afstemming met', 'waarbij de structuur van', 'waarbij de synergie met', 72| 'waarbij de interface met', 'waarbij de input van', 'waarbij commitment van', 'waarbij klankborden met', ], 73| [ 'strategisch beleid', 'de taskforce', 'de communicatie', 'de werkgroepen', 'new business development', 'de systeemintegratie', 'de markt', 'de stakeholders', 74| 'het management', 'de projectorganisatie' ], 75| [ 'moet uitkristaliseren', 'voorop staat', 'wordt aangestuurd', 'leading is', 'toegevoegde waarde levert', 'win-win situaties creëert', 'moet worden gemangeld', 76| 'voldoende draagvlak heeft', 'doorslaggevend is', 'cruciaal is' ], 77| ); 78| 79| # Set the $max to 25. 80| my $max = 25; 81| if($num > $max) { 82| print strong("Slechts $max regels bullshit konden worden geproduceerd."); 83| $num = $max; 84| } 85| 86| # Make sure people like DJ (or B10m :) won't enter negative numbers or 0 87| $num = 10 if ($num <= 0); 88| 89| # Print the bullshit 90| print start_ol; 91| for (1..$num) { 92| my $name = join(' ', map { @{$_}[int rand($#{$_})] } @bs)."."; 93| print li($name); 94| } 95| print end_ol; 96| } 97| 98| ### 99| # ShowSource 100| # This routine makes the source available to the evil world 101| 102| sub ShowSource { 103| print header(-type=>'text/plain'); 104| open FH, "<$0\0"; 105| print sprintf("%3d", $.)."| $_" while (); 106| close FH; 107| exit; 108| } 109|