c++ notes

Stupid C++ syntax:

Class::StaticFunctionName 
 
Table* t = new Table()
t->FucntionName()
 
class BaseClass
{
  public:
    BaseClass()
  void something();
private:
  int foo;
  int bar;
};
 
//instantiate:
 
class OtherClass : public BaseClass
{
  public:
  int meh;
  void duh();
 };
 
 
scoped_ptr<>

create graphviz image from textfile

inspired by text2mindmap.com i decided to create something similar in python.

Here’s the result:

Code text2mindmap.py

#!/usr/bin/python
 
import pydot
import sys
 
 
def ReadFile(filename):
  fh = open(filename)
  return [x.rstrip() for x in fh.readlines()]
 
 
def CreateEdges(lines):
  edge_list= ['' for x in range(100)]
 
  edges = []
  for line in lines:
    pos = line.count('\t');
    edge_list[pos] = line.replace('\t', '')
    if pos:
      edges.append((edge_list[pos -1], edge_list[pos]))
  return edges
 
 
def CreateGraphFromEdges(edges, output):
  g=pydot.graph_from_edges(edges, directed=True)
  return g.write_png('%s.png' % output, prog='dot')    
 
 
def main(argv):
  CreateGraphFromEdges(CreateEdges(ReadFile(argv[1])), argv[2])
 
 
if __name__ == "__main__":
   main(sys.argv)

Source file months.txt

Months of the year
	Spring
		March
		April
		May
	Summer
		June
		July
		August
	Autumn
		September
		October
		November
	Winter
		December
		January
		February

How to generate the image:

$ ./text2mindmap.py months.txt months

pydot + graphviz

Install pydot
Install graphviz

$ python
Python 2.5.1 (r251:54863, Feb  9 2009, 18:49:36) 
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pydot
>>> edges=[('1','2'), ('1','3'), ('1','4'), ('3','4')]
>>> g=pydot.graph_from_edges(edges)
>>> g.write_jpeg('graph_from_edges_dot.jpg', prog='dot')
True
>>>

result:
example

rxvt-unicode with 256 colors

# Make a place for rxvt-unicode
mkdir rxvt-unicode
cd rxvt-unicode/
 
# Get the source
apt-get source rxvt-unicode
cd rxvt-unicode-8.4/
 
# Apply 256 color patch, it's included with the source
patch -p1 < doc/urxvt-8.2-256color.patch
 
# Make sure you have all depdencies to build it
sudo apt-get build-dep rxvt-unicode
 
# Build it
dpkg-buildpackage -us -uc -rfakeroot

This will build 3 packages.

Snellezen

Snellezen is zoiets wat eigenlijk iedereen wel begeert te kunnen, maar vanwege het gebrek aan goede gratis handleidingen op het internet kan het overkomen als iets onbereikbaars. Maar dit is nu verleden tijd. Hier is er dan eindelijk een fatsoenlijk gedetailleerde snellees handleiding!

Eerst zullen we ons voorbereiden op het snellezen, daarna behandelen we de technieken die u zult gebruiken om uw leesvaardigheid naar het volgende niveau te brengen. En tot slot wordt u geleidt door het oefen proces.

De voorbereiding.
Wat we aan materiaal nodig hebben is (om te beginnen) een makkelijk te lezen boek. Neem niet een kleine boek waarbij de bladzijden bol komen te staan omdat het boek nog splinter nieuw is. Neem bijvoorbeeld een lange krantenstuk of iets wat u in lettertype twaalf heeft uitgeprint, zoals de tekst die op het havo examen 2007 gegeven werd. (Scrol naar het eind van het bericht om het examen tekst in te zien. Hover dan over “ipaper” en klik op print als u van plan bent het te gaan gebruiken.)

Vervolgens heeft u een snellees markeerstift nodig (een moetje ). Niet een standaard dikke markeerstift, maar eentje die net zo dun is als een gewone pen. Mijn favoriete snellees markeerstift is de gele Stabilo Flash die ik kreeg op de mindmap en snellees training van Purple Monkey.

stabilo-flash-snellees-pen

Als laatst zullen we een metronoom of een metronoom nabootser op de pc gebruiken die ons op de juiste lees snelheid houdt. Hierbij is elke “tik” een regel. We beginnen natuurlijk langzaam, bijvoorbeeld driehonderd woorden per minuut. Vervolgens gaan we steeds sneller lezen, totdat wij uiteindelijk rond de achthonderd of duizend woorden per minuut halen. Zelf gebruik ik de Metronome Timer die u hier kunt downloaden. Als u dit allemaal heeft bent u klaar voor de technieken en het afleren van slechte gewoonten.

Snelheidsbegrenzers
Van nature wijzen we naar de tekst als wij lezen, maar op de basisschool hebben we die gewoonte afgeleerd. Dit is zonde want om te snellezen moeten we het weer aanleren. We kunnen namelijk niet snel de tekst opnemen door met onze ogen door te tekst heen te razen, zonder een middel die ons ogen bij de juiste zinnen houdt. Zonder een leidraad slippen we uit de bocht en weten we niet meer waar we zijn en kunnen we onze gedachten niet goed meer houden bij wat er nou eigenlijk stond. Een snellezer gebruikt daarom een dunne markeerstift die zij snel van links naar rechts onder de tekst wijst, terwijl zij de tekst vlak boven de punt van de aanwijzer volgt en opneemt. Vervolgens kunt u tijdens het lezen de belangrijkste 20% (of minder) markeren om eerst het hoofdstuk of paragraaf uit te lezen, voordat we er bij stil gaan staan wat we door de tekst geleerd hebben, waarbij de markeringen ons razend snel de belangrijkste punten aanwijst.

We hebben ook te maken met andere snelheidsbegrenzers die we moeten afleren.

Meepraten
De eerste is het meepraten en het in ons hoofd zegen wat er op papier staat. Hierdoor kunnen we niet boven de zeshonderd woorden per minuut komen. Hoewel het, vooral in het begin, moeilijk is het meepraten in uw hoofd echt af te leren is het wel een vereiste. Het is een belemmering die niet samen gaat met snel kunnen lezen. Dit kunt u afleren door te oefenen, wat wij zo gaan doen. Volg dan de snelheid van de metronoom en weiger om de woorden in uw hoofd na te zeggen, ook al onthoudt u dan de tekst niet meer. Oefening baart kunst en en vaak onthoudt u meer dan u verwacht had tijdens het lezen!

Fixatiepunten
De tweede snelheidsbegrenzer is het feit dat wij elk woord afzonderlijk lezen. Elk woord is dan een afzonderlijk fixatiepunt Waardoor één regel wel acht tot tien sprongetjes nodig heeft (op A4 formaat). Bij snellezen zullen we door het oefenen het fixatiepunt groter maken en minder sprongen nemen met behulp van de snellees pen. De aanwijzer helpt dus uw ogen om minder sprongetjes te nemen, zonder de draad kwijt te raken. Zo wordt het einde van de regel eerder bereikt en leest u dus sneller. De grote van het fixatiepunt die wij willen bereiken is ongeveer drie centimeter breed een anderhalf centimeter hoog. Zo’n fixatiepunt staat op het plaatje geïllustreerd. Als u precies in het midden van het blauwe gedeelte kijkt, kunt u drie woorden lezen. Hoewel u de woorden niet volledig “scherp” ziet, weet u wel wat er staat door het woorddeel die u wel ziet. U brein is slim genoeg om de laatste drie letters automatisch in te vullen om achter het juiste woord te komen. Door oefenen kunt u uw fixatiepunt zowel in de breedte als in de hoogte vergroten.

snellezen-fixatiepunten

Regressie
Nog een belangrijke snelheidsbegrenzing is regressie. Als u een zin heeft gelezen maar niet heeft begrepen, slaan uw ogen automatisch terug om de zin opnieuw te lezen. Dat is regressie en het kost zeer veel tijd. Als u gaat snellezen moet u niet meer terug kijken, maar stug door blijven lezen. Uw hersenen hebben het namelijk niet nodig om een zin opnieuw te lezen, als ze eenmaal in de “snellees modus” zijn belandt. Uw hersenen verwerken de informatie namelijk niet meteen. Het kan wel 15 seconden duren alvorens de informatie naar uw herinneringen vervoerd zijn. Daardoor lijkt het alsof u het niet weet terwijl uw hersens het nog aan het verwerken zijn. Natuurlijk komt het ook wel voor dat u iets echt te snel gelezen hebt, maar tijdens het oefenen blijven we dan toch stug doorlezen om het terugkijken gewoon af te leren. Zet in dat geval snel een punt aan het einde van de zin zodat u na het lezen van de hele tekst even terug kan gaan.

Over aanstippen en markeren gesproken, wil ik u ook meteen van een bepaalde gedachte afhelpen. Namelijk het markeren in echte boeken is niet jammer. Een boek is uw hulpmiddel en u doet er alles mee wat u nodig acht om het informatieve boek zo snel, maar toch ook goed mogelijk door te lezen. Het markeren helpt u om het hele boek niet nog een keer te hoeven lezen. Door de markeringen hoeft u slechts 20% of minder van het boek door te scannen. Is het boek niet van u, kunt u de achterkant van de markeerstift bij het aanwijzen gebruiken om niet per ongeluk het boek eronder te krassen. Er wordt ook gehandeld in zogenaamde markeer stikkertjes, die u zo weer weg kunt halen. Het nadeel hiervan is wel dat het lezen aanzienlijk vertraagd wordt om een stikertje te plakken. Dit brengt dus het hele bedoeling van het snellezen in duigen.
Als u het kunt is het verstandig om na het lezen van een tekst een mindmap te maken. Dit kunt u doen na het lezen van elk hoofdstuk. Wanneer u dan weer informatie uit het boek nodig heeft, heeft u in de meeste gevallen alleen de mindmap van het juiste hoofdstuk nodig.

Dat was dan het nodige theorie, nu gaan we alles toepassen!
U heeft nu uw tijdschrift, krant of ander snelleesstof voor u. U heeft uw aanwijzer in uw hand en de metronoom op uw pc heeft u staan op bijvoorbeeld 35 slagen per minuut. We beginnen dus rustig aan, hoewel de moeilijkheidsgraad afhangt van hoe breed uw zinnen zijn. Nu start u de metronoom en wanneer u wilt kunt u beginnen met snellezen door uw markeerstift van links naar rechts te schuiven. Probeer niet te blijven steken bij lidwoorden, die kunt u gerust overslaan. Dit is niet snel, maar let er op dat u de zinnen niet opnieuw gaat lezen. Leer nu regressie af.

Als u dit al voor een paar minuten gedaan heeft gaan we de snelheid opkrikken. Zet de metronoom nu op 45 slagen per minuut en gebruik weer uw aanwijzer. Als u met 40 slagen al goed kunt lezen heeft u uw leessnelheid van rond de 250 a 300 woorden al flink opgekrikt naar ergens over de 600 woorden per minuut. Hoeveel precies weet ik niet aangezien ik te lui ben om te gaan tellen .

Het straaljager effect
Nu gaan we over naar de volgende stap die “het straaljager effect” wordt genoemd. We zetten de metronoom op een aantal slagen dat voor ons eigenlijk niet haalbaar is of echt het uiterste van ons vergt. Als u een paar minuten sneller gelezen heeft dan u kunt onthouden, en daarna van de 80 slagen naar de 60 slagen per minuut gaat, zult u zien dat het snellezen opeens stukken makkelijker gaat dan voor het toepassen van het straaljager effect. Onze hersenen beginnen dan al te wennen aan de snelheid. En als u dan een stap terug neemt kunt u opeens aanzienlijk sneller lezen.

Tot slot
Hoewel u op één dag best ver kunt komen leert u snellezen niet op één dag. Blijft daarom dagelijks oefenen met snellezen. Maak van snellezen een gewoonte. Hoe meer u het doet hoe eerder u de duizend woorden per minuut met volledig begrip van de tekst haalt.