|
|
Het dwaze idee van de Koninklijke Nederlandse Akademie van Wetenschappen
De Nederlandse Akademie van Wetenschappen (KNAW) richt volgend jaar de Akademie voor Kunsten op. Volgens KNAW voorzitter Hans Clevers worden in eerste instantie twintig kunstenaars van ‘naam en faam’ uitgenodigd lid te worden. Het ledental zal later (door nepotisme) groeien naar vijftig.
“We willen individuele kunstenaars een stem geven in het maatschappelijk debat”, zegt Clevers. “Nu hebben ze die niet, de kustenaars doen alleen mee in discussies via advieslichamen en brancheorganisaties”, vervolgt hij. Dus als ik het goed begrijp krijgen de kunstenaars een individuele stem door een nieuw instituut op te richten. Dat lijkt mij heel logisch en ook helemaal niet met elkaar in tegenspraak.
Als ik het bericht in de NRC van vrijdag 22 november mag geloven gaan de kunstenaars binnen hun akademie in discussie over de functie van kunst in de samenleving en over de relatie tussen kunst en wetenschap. Dat lijken mij bijzonder interessante discussies, maar daar hoef je geen nieuw instituut voor op te richten dunkt mij.
In hetzelfde artikel komen twee apen uit de mouw. De eerste is verbijsterend van naïviteit. “Hans Clevers (voorzitter KNAW) blies het idee, dat zijn twee voorgangers ook al hadden gehad, vorig jaar nieuw leven in na een bezoek aan de Academy of Arts and Sciences in Boston. “In een oud academiegebouw daar traden bijvoorbeeld acteur Daniel Day-Lewis en komiek Bill Cosby op, die tegelijkertijd met mij waren benoemd als academielid, en dat was heel inspirerend. Op de terugreis dacht ik: waarom hebben we dat in Nederland eigenlijk niet meer?”
Dit zou hij toch niet serieus hebben gezegd? Je moet maar durven toegeven dat je geïnspireerd kunt worden door een artiest als Bill Cosby. Maar belangrijker… volgens mij hebben wij in Nederland gebouwen met namen als museum, theater, bioscoop, schouwburg, concertgebouw etc. etc. om kunst en kunstenaars te zien. Als de leden van de Akademie en andere wetenschappers daar (vaker) naartoe zouden gaan dan kunnen zij zich ook heel goed laten inspireren en zou het bovendien ook beter gaan met de kunst en cultuur in ons land. Mochten die akademieleden dan toch de deur niet uit willen, waarom nodigen ze dan zo nu en dan geen kunstenaar uit om mee te praten teneinde geïnspireerd te raken? Dat is veel verstandiger én goedkoper dan het oprichten van een Akademie voor Kunsten.
De andere aap betreft het budget voor deze inspiratie van wetenschappers. Voor de komende drie-en-een-half jaar is er maar liefst zevenhonderdduizend euro nodig voor de nieuwe Akademie. Deze euro's worden gefourneerd door de bezuinigende overheid en een aantal cultuurfondsen. Er blijkt namelijk bij de overheid nog een pot met geld te zijn met de naam Mondriaanfonds. In een tijd waarin keiharde aanslagen op de budgeten voor kunst en cultuur plaatsvinden, wordt zo’n bedrag vrijgemaakt uit allerlei cultuurpotjes (waarvan de bestuurders in de afgelopen jaren te hoop liepen tegen de "onverantwoorde en schandalige" bezuinigingen) om twintig tot vijftig kunstenaars ‘van naam en faam’ met elkaar te laten praten en wetenschappers te laten inspireren? Je moet als overheid en bestuurders van dergelijke fondsen wel lef hebben. Leg dit maar eens uit aan de kunstenaars 'zonder naam en faam' en cultuurinstellingen die nu met financiële problemen worstelen.
Die pot met geld is volgens mij echter de ware reden om dit idee te lanceren: extra inkomsten voor de KNAW. Ik ben wel benieuwd welk deel van dit budget wordt aangewend voor bureaukosten in het Trippenhuis. Ook de KNAW heeft te kampen met teruglopende inkomsten en boort met het oprichten van dit nieuwe instituut een extra geldbron aan om de eigen bureaukosten te dekken. Hoeveel nieuwe (extra) formatieplaatsen gaan er in het Trippenhuis komen om de hobbyakademie te faciliteren?
Het mag duidelijk zijn dat ik niets zie in dit initiatief. Het kletsen met individuele kunstenaars is leuk, maar wat is de betekenis daarvan voor de kunst en cultuur sector in brede zin en waarom moet dit in de vorm van zo’n dure ‘sociëteit’?
Natuurlijk zullen de kunstenaars ‘van naam en faam’ ja zeggen als de uitnodiging voor het lidmaatschap op de mat valt. Je bent wel gek als je nee zegt tegen het egostrelend (met een zonder twijfel ook commercieel interessante spin off) lidmaatschap van zo'n instituut. Maar de kunst en andere kunstenaars schieten hier echt niets mee op.
Het moet al een teken aan de wand zijn dat de naam Akademie van een in 2014 opgericht instituut met een K wordt geschreven. Er was al eerder een van buiten de kunst en cultuur sector opgericht instituut: de Kultuurkamer. Hoewel de Kultuurkamer en Akademie voor Kunsten uiteraard inhoudelijk totaal niet vergelijkbaar zijn, is wel één overeenkomst. Net als cultuur schrijf je academie met een C. Die Kultuurkamer was niet zo’n ‘heel denderend’ succes en droeg niets bij aan de kunst en cultuur in ons land en ik voorspel dat deze Akademie dat ook niet gaat doen.
© Harold Makaske 24 november 2013
/*
History:
v1.1
- add getTableList
v1.2
- use sql_table
- Added silent mode (configure via option) to support NP_MostViews
- Added Cleanup upon uninstall option
- Added "just number" minimalist mode
- Added supportsFeature
V1.2a
- Added min version support
V1.3
- Replaced doSkinVar with DoTemplateVar
V1.3a
- Added repeat views ignore function aka repeat F5s from those bored and lonely one
V1.3b
- Fixed counting off by 1 bug
V1.3c
- Added <%Views(skipCount)%> to allow skipping count when used in template (ie to not count on click in main page)
V1.4
- Fixed ignoe same IP count problem
V1.5
- Added views_log table and changed plugin performance to check for unique visits by IP address. [gRegor]
- Added option to set the length of time before re-counting hits from the same IP address (default: 2 hours) [gRegor]
V1.6
- Added plugin menu to display all view count, w/ counter reset function
- Delete view counter and log for deleted item
V1.7
- use sql_query
V1.8
- Admin page enhancement to preserve order and sort info
v1.9
- Added item title in admin menu
v1.9.1
- ignore draft in admin menu
*/
class NP_Views extends NucleusPlugin {
// Note: I never run this plugin on 2.0 and have no idea whether it
// wil work on <2.5. A user can simply chnage it to return
// '200' and see if it works (likely will). I will gladly
// change the min version to 2.0 and add the sql_table fix
// upon such report. 8)
function getMinNucleusVersion() {
return '250';
}
function getName() {
return 'Views';
}
function getAuthor() {
return 'Rodrigo Moraes | Edmond Hui (admun) | gRegor Morrill';
}
function getURL() {
return 'http://www.tipos.com.br';
}
function getVersion() {
return '1.9.1';
}
function getDescription() {
return 'This plugin counts how many times an entry has been displayed.';
}
function getEventList() {
return array('PostAddItem', 'QuickMenu', 'PostDeleteItem');
}
function supportsFeature($what) {
switch($what) {
case 'SqlTablePrefix':
return 1;
default:
return 0;
}
}
function getTableList() {
return array( sql_table('plugin_views'), sql_table('plugin_views_log') );
}
function install() {
sql_query('CREATE TABLE IF NOT EXISTS ' . sql_table('plugin_views') . ' (id int(11) NOT NULL default "0", views int(15) NOT NULL default "0")');
sql_query('CREATE TABLE IF NOT EXISTS ' . sql_table('plugin_views_log') . ' (id int(11) NOT NULL auto_increment, ip varchar(20) NOT NULL default "", itemid int(11) NOT NULL default "0", viewtime varchar(32) NOT NULL default "", PRIMARY KEY (id)
)');
$this->createOption('silent','Silent mode - No #Display shown in Item (still need to add the skinVar, for use with MostViewed)','yesno','no');
$this->createOption('deletetables','Delete this plugin\'s table and data when uninstalling?','yesno','yes');
$this->createOption('timespan', 'Hours to wait before re-counting visitors', 'text', '2');
}
function unInstall() {
if ($this->getOption('deletetables') == 'yes') {
sql_query('DROP TABLE ' . sql_table('plugin_views') );
sql_query('DROP TABLE ' . sql_table('plugin_views_log') );
}
}
function hasAdminArea() {
return 1;
}
/**
* Adds an entry to the 'Quick Menu' on the Nucleus administration pages.
* The entry will link to the commentcontrol admin page
*/
function event_QuickMenu(&$data) {
global $member;
if (!($member->isLoggedIn() && $member->isAdmin())) return;
array_push(
$data['options'],
array(
'title' => 'View Counts',
'url' => $this->getAdminURL(),
'tooltip' => 'See the view count of all items'
)
);
}
function doTemplateVar(&$item, $input) {
$itemid = $item->itemid;
$remote_ip = ServerVar('REMOTE_ADDR');
$timespan = $this->getOption('timespan') * 3600;
$now = time();
// get the current Views count
$query = "SELECT views FROM " . sql_table('plugin_views') . " WHERE id=" . $itemid;
$result = sql_query($query);
$row = mysql_fetch_object($result);
$views = intval($row->views);
// Only do count updates if "skipcount" is not set
if ($input != 'skipcount')
{
// This takes care of previous items
if (mysql_num_rows($result) == 0)
{
$query = "INSERT INTO " . sql_table('plugin_views') . " (id, views) VALUES('$itemid', '1')";
sql_query($query);
//$views = 0;
} // end if
// Check the views_log table to see if this IP has a viewtime for this item
$query = "SELECT viewtime FROM " . sql_table('plugin_views_log') . " WHERE ip='" . $remote_ip . "' AND itemid=" . $itemid;
$result = sql_query($query);
// No views from this IP in the past X hours, so update the Views count
if (mysql_num_rows($result) == 0)
{
$views++;
$this->_updateViewsCount($itemid, $views);
$this->_addViewsLog($itemid, $remote_ip, $now);
} // end if
else
{
$viewtime = mysql_result($result, 0, 'viewtime');
// It's been longer than X hours, so recount
if (($now - $timespan) > $viewtime)
{
$views++;
$this->_updateViewsCount($itemid, $views);
$this->_updateViewsLog($itemid, $remote_ip, $now);
}
} // end else
} // end if
// Clear logs that are more than X hours old
$time = $now - $timespan;
$query = "DELETE FROM " . sql_table('plugin_views_log') . " WHERE (viewtime < $time)";
sql_query($query);
if ($this->getOption('silent') == 'no') {
echo $views;
} // end if
}
function event_PostAddItem($data) {
$itemid = $data['itemid'];
$query = "INSERT INTO " . sql_table('plugin_views') . " (id, views) VALUES('$itemid', '0')";
sql_query($query);
}
function event_PostDeleteItem($data) {
$itemid = $data['itemid'];
$query = "DELETE FROM " . sql_table('plugin_views') . " WHERE id=". $itemid;
sql_query($query);
$query = "DELETE FROM " . sql_table('plugin_views_log') . " WHERE itemid=". $itemid;
sql_query($query);
}
function _updateViewsCount($itemid, $views) {
// update the Views table with the new count
$query = "UPDATE " . sql_table('plugin_views') . " SET views='$views' WHERE id=$itemid";
sql_query($query);
}
function _addViewsLog($itemid, $ip, $time) {
// add IP and itemid to views_log table so it won't be recounted for X hours
$query = "INSERT INTO " . sql_table('plugin_views_log') . " (ip, itemid, viewtime) VALUES ('$ip', '$itemid', '$time')";
sql_query($query);
}
function _updateViewsLog($itemid, $ip, $time) {
// update the views_log viewtime so it won't be recounted for X hours
$query = "UPDATE " . sql_table('plugin_views_log') . " SET viewtime='$time' WHERE ip='$ip'";
sql_query($query);
}
function doAction($actionType) {
global $CONF, $member;
if (!($member->isLoggedIn() && $member->isAdmin())) return 'Sorry. not allowed';
if ($actionType == 'resetview'){
$id = requestVar('id');
$query = "UPDATE " . sql_table('plugin_views') . " SET views=0 WHERE id=$id";
sql_query($query);
} else if ($actionType == 'resetallview') {
$query = "UPDATE " . sql_table('plugin_views') . " SET views=0";
sql_query($query);
}
$order = requestVar('order');
$sort = requestVar('sort');
header('Location: ' . $CONF['PluginURL'] . 'views/index.php?sort=' . $sort . '&order='.$order);
}
}
?>
-
Hoofdstuk: 5. Losse gedachten
|