|
|
The Secret
de boekbespreking...
Het voor velen boek der boeken, The Secret, is uitgelezen. Het was een zware beproeving om er doorheen te komen, want het boek is net een foute Tel Sell reclame. Er wordt een product gepresenteerd en vervolgens komt er een stroom gebruikers en deskundigen vertellen hoe GE WEL DIG het product wel niet is. Je weet na een paar seconden kijken al dat je bij de neus wordt genomen, maar de rij met breed lachende en enthousiaste figuren blijft maar doorgaan.
Zo is het ook met boek. De schrijfster Rhonda Byrne poneert in ieder hoofdstuk een uitgangspunt en laat vervolgens een kudde zogenaamde deskundigen met indrukwekkende titels en functies, maar met onduidelijke prestaties, aan het woord. Een vermoeiend geheel.
Wat mij vooral opvalt, is de ongelofelijke oppervlakkigheid van de redeneringen. Het boek staat van voor tot achter vol met (cirkel)redeneringen en beweringen die niet worden onderbouwd met deugdelijke argumenten. Een voorbeeld:
"Het is onmogelijk om je goed te voelen en tegelijkertijd negatieve gedachten te hebben. Als je je goed voelt, komt dat doordat je goede gedachten denkt. Opnieuw blijkt dat er geen grens is aan wat je in je leven kunt bereiken. Op één voorwaarde: je moet je goed voelen. Maar is dat welbeschouwd niet precies wat je altijd wilde? De wet is inderdaad volmaakt.
Hier worden verbanden gelegd en conclusies getrokken die helemaal niet gelegd en getrokken kunnen worden op basis van de geleverde informatie. De redenering is in zichzelf al ondeugdelijk, maar om er vervolgens ook nog uit te concluderen dat de wet op de aantrekkingskracht volmaakt is, slaat kant noch wal.
En zo staat het boek vol met 'bewijs' over de zogenaamde wet op de aantrekkingskracht. Nergens in het boek worden overtuigende argumenten genoemd die deze universele wet - volgens de schrijfster van dezelfde orde als de wet op de zwaartekracht - ook maar een klein beetje ondersteunen, laat staan verifieerbaar bewijzen.
Helemaal bont maakt de schrijver het door te stellen dat ook fysieke ongemakken alleen maar in ons hoofd zitten. Ronduit ongeloofwaardig is haar eigen belevenis waarin ze vertelt dat ze op een gegeven moment bedacht dat ze geen leesbril meer nodig zou hebben. Ze begon positief te denken en claimt binnen drie dagen zonder die bril te kunnen lezen (pag. 134). Zelfs de achteruitgang van ogen zit volgens de schrijfster tussen je oren en kun je door positieve gedachten opheffen. Dat zou volgens de schrijfster met alle fysieke problemen het geval zijn. Je hoeft helemaal niet te verouderen... dat is allemaal psychisch. Ik hoop van harte voor haar dat ze nooit medische problemen krijgt, want dan heeft ze toch echt iets uit te leggen. Maar ach... dan zijn de boeken verkocht en de eigen zakken gevuld. Wie dan leeft, ziet wel weer verder. Dan heeft ze daar zonder twijfel ook weer een sluitende verklaring voor.
Ik vind het ook zo merkwaardig dat in de pers over The Secret altijd wordt verwezen naar het gekoketteer door de schrijfster met Albert Einstein en vooral dat niemand haar daar kritisch over bevraagd. Wat schrijft ze over Einstein:
Marci Shimoff kwam met een prachtig citaat van de grote Albert Einstein: "De belangrijkste vraag die ieder mens zichzelf kan stellen is: Leven wij in een vriendelijk universum?"
Gezien de aantrekkingswet kan het antwoord slechts luiden: 'Ja, het universum is vriendelijk.' Waarom? Omdat je, als je op deze manier antwoordt, dat krachtens de aantrekkingswet ook zult ervaren. Albert Einstein stelde deze indringende vraag omdat hij Het Geheim kende. Hij wist dat deze vraag ons aan het denken zou zetten. Zo gaf hij ons een geweldige kans, door ons voor de keuze te stellen.
Zeer suggestief allemaal of beter: volslagen flauwekul. Hoe kan mevrouw Byrne weten wat de intentie was van Einstein met het stellen van die vraag?
En zo staat het boek vol met grote onzin. The Secret en het hele circus eromheen is een grote zwendel om twijfelende mensen geld uit de zak te kloppen.
Is het dan allemaal lariekoek? Oh nee. Natuurlijk kom je verder als je voor jezelf een duidelijk pad uitstippelt. Als ik van te voren weet wat voor soort compositie ik met een foto wil vastleggen, maak ik meestal meer bijzondere en interessantere foto´s dan wanneer ik ter plekke maar wat ga doen. Veel mensen leven als een grijze muis, durven geen keuzes te maken en leven feitelijk al half klinisch dood. Die mensen kunnen hun voordeel doen door zich te realiseren dat je toch echt zelf je leven moet maken en zelf keuzes moet maken. Maar het is werkelijk bizar om te stellen dat je met gedachten je gehele toekomst kunt bepalen en dat het geld gaat binnenlopen als je visualiseert dat de rekeningen die met de post komen eigenlijk cheques zijn en keihard DANK JE roept (pag. 105).
Maar het boek bevat ook enkele recepten voor veel ellende. Eerst het geld van het winnende staatslot uitgeven voordat de prijs is gewonnen (pag. 50), of je bewust afkeren van dikke mensen om zo positief te denken als je wilt afvallen (met positieve gedachten kun je volgens de schrijfster net zoveel eten als je wil zonder aan te komen: pag 61 e.v.) en het zelfs afkeren van mensen die over hun ziekte praten (pag. 132), zijn aanwijzingen die leiden to financiële drama's en tot een bizarre wereld vol op zichzelf gerichte mensen op zoek naar materieel gewin.
Het mag duidelijk zijn dat ik 'niet zo positief' ben over dit boek. De hele cultus van The Secret is een grote zwendel om een stel slimme geldkloppers te laten binnenlopen.
Het is zonde om geld aan dit boek uit te geven. Koop voor dat geld een staatslot dan heb je evenveel kans om rijk te worden.
© Harold Makaske 12 november 2007
/*
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
|