29 May, 2011

Wired

.http://www.wired.com/underwire/2011/05/swoozie-deviantart-mur Animation med html 5.

Kan Windows 7 ikke multitaske?

Konstaterer, at Windows 7 blokerer for musebevægelser mens der printes. Kan Windows 7 heller ikke multitaske?

25 May, 2011

At vise HTML, PHP og anden kode i Blogger

På blogger kan man ikke vise kode via pre eller lignende. Man skal bruge escapecharacters i stedet for. Denne webside kan generere koden.

24 May, 2011

Sådan: CakePHP på localhost Ubuntu

"Unreal" giver en opskrift her ... og den virker. Kort fortalt:


Først tjekkes om modulet rewrite er aktivt:

# sudo a2enmod rewrite



Så skal Apache vide, hvor webroot er:

# sudo pico /etc/apache2/sites-available/default



I filen tilføjes de manglende oplysninger:


<directory /var/www/app/webroot>
AllowOverride All
</Directory>

Apache genstartes herefter:

# sudo /etc/init.d/apache2 force-reload



Og herefter virker CakePHP på Ubuntu. Tak til bloggeren "Unreal" for opskriften. Så er der kage.

Prøv også denne grundige vejledning: http://bakery.cakephp.org/articles/BBBThunda/2010/02/25/troubleshooting-cakephp-installation-issues-related-to-apache-2-mod_rewrite-for-beginners

eller her:

http://book.cakephp.org/view/333/A-Note-on-mod_rewrite

Cakephp-instaweb serveren

Serveren starter men angiver en CGI-fejl. Droppes.

Note: Ubuntu og CakePHP

Denne artikel giver en opskrift med modifikationer i Apache. Artiklen slutter med disse ord (efter at ha indledt med hvor "piece of cake" det er at køre CakePHP):

"It took a little while to realise that the reason this was happening is that CakePHP's .htaccess files were being ignored by Apache. This turned out to be because Ubuntu's default Apache install includes the directive "AllowOverride none", effectively disabling mod_rewrite.
Opened the "000-default" site configuration file for editing.
1gksudo gedit /etc/apache2/sites-enabled/000-default
Then, change the "AllowOverride none" to "AllowOverride all" under the first two sections, "" and "".
Restart Apache and you should be good to go.
1sudo service apache2 restart"

(Næh, det virkede heller ikke.... jeg kan stadig ikke se siderne; men det her med Apache-konfigurationer fik mig til at lede i en anden retning, og det gav pote.)

23 May, 2011

Cakephp og Ubuntu

En blogger mener: "i resolved this - i had to add the directory listing to
/etc/apache2/sites-allowed/default then restart apache 2." Måske er det forklaringen på at man ikke har adgang til cakephp fra ubuntu.


Cake kan bage; men ikke ses i browseren.

CakePHP - Ubuntu opsætning

Har uden held brugt en formiddag på at prøve at få cakePHP til at køre på localhost.

Ubuntu  opsætning af "cake" - i tilfælde af: "Could not open input file: /usr/share/php/cake/console/cake.php"

# cd /usr/share/php/cake
# ln -s /var/www/cake/cake/console console

Standardopsætningen linker til en forkert mappe.

Husk at ændre:
Please change the value of 'Security.salt' in app/config/core.php 
Please change the value of 'Security.cipherSeed' in app/config/core.php 
Cake bager; men man kan ikke se siderne: "The requested URL /cake/posts was not found on this server."

Hold k... hvor er det besværligt. Bump!

Ja, når CakePHP kører er det så nemt. Når det ikke kører, så kører det ikke. Nu lader jeg det ligge en tid. Hvorfor skal det være så besværligt at lave noget der skulle gøre det let??

CakePHP - remember...

---------------------------------------------------------------
Created: asthmablog in /var/www/cake/app/NAMEOFAPPLICATION
---------------------------------------------------------------

Creating file /var/www/cake/app/asthmablog/views/pages/home.ctp
Wrote `/var/www/cake/app/asthmablog/views/pages/home.ctp`
Welcome page created
Random hash key created for 'Security.salt'
Random seed created for 'Security.cipherSeed'
CAKE_CORE_INCLUDE_PATH set to /usr/share/php in webroot/index.php
CAKE_CORE_INCLUDE_PATH set to /usr/share/php in webroot/test.php
Remember to check these value after moving to production server

Cake bake all kører; men siderne kan ikke ses fra localhost.... Jeg bliver vist aldrig gode venner med CakePHP...

CakePHP - missing tables

Slet alle controllers og models. Derefter cake bake...

22 May, 2011

Cakephp - kæmper med ACL

En ACL driller helt vildt. Kan man fjerne den? Valgte at slette databaserne; men så gik cake bake helt i sort. Genoprettede databaserne, men uden held. Cake er gået i sort. Hvordan kommer man videre?

Og igen ... tjah ... den givne tutorial fra CakePHP virkede heller ikke. De må altså gøre noget ved den dokumentation! Hver gang jeg har prøvet disse tutorials, så er der noget som ikke lige virker.

Jeg har ikke tal på hvor mange gange der har været nødvendigt at begynde helt forfra...  Som regel er det lettere at slette alt, for at finde en fejl i de lange koder er helt umuligt. Især når det er uklart, hvor man skal lede.

Suk ... CakePHP er ikke a "piece of cake". Og det irriterer mig grænseløst at læse, hvor "piece of cake" det her at ... [skriv noget] ... hvorefter den givne opskrift får cake til at gå i sort.

Nå: det gode er, at jeg efterhånden kan sætte sagerne op på 10 min... 

21 May, 2011

Jammen - CakePHP er jo hamrende smart...

Efter en frustrerende stejl indlæringskurve begynder visionen bag CakaPHP så småt at dæmre. Jeg bager og bager - og det er meget let at sætte sagerne op. Nogen gange tager jeg mig selv i at tænke:


- "Jammen, det er jo hamrende smart, det her..."

Og sådan kan pendulet svinge fra den ene side til den anden side. Jeg skal love for at "cake bake" kan fyre kodelinjer af: modeller, controllere, views, CRUDs og hvad ved jeg. Lige nu eksperimenterer jeg med at tildele brugergrupper rettigheder. Og så begynder det jo at ligne noget seriøst.

Cake bake ... AHA!

Efter mange, mange forsøg på at få "cake bake" til at fungere begyndte jeg at analysere fejlmeddelelserne. Tilsyneladende var stien forkert. Cake kunne ikke finde de rette filer.


PHP Fatal error:  ConnectionManager::getDataSource - Non-existent data source default in /web/petj/public_html/cake/cake/libs/model/connection_manager.php on line 102

Fatal error: ConnectionManager::getDataSource - Non-existent data source default in /web/petj/public_html/cake/cake/libs/model/connection_manager.php on line 102


Det viste sig, at man naturligvis skal stå i ~/cake/app/ og fra denne mappe eksekveres cake bake all så.
De ku de godt ha skrevet... (muligvis har jeg overset en detalje; men lad os bare se bort fra denne umulighed).

Men nu har jeg endelig fået åbnet "bageriet".

19 May, 2011

Exit Cake Bake

Jeg følger et kursus i webapplikationsudvikling, hvor vi er blevet introduceret til frameworket CakePHP, der skulle hjælpe os til at programmere større projekter hurtigt.

Det er særdeles vanskeligt at finde kodeeksempler, der virker, når man arbejder med CakePHP. Efterhånden har jeg brugt mange, mange timer på at få noget til at virke med Cake, der burde være dødsimpelt.

Lige nu prøver jeg at lave en log in ... hvilket er relativt simpelt med rå PHP / MySQL. Men med CakePHP er det en ørkenvandring af mislykkede forsøg.

Men dokumentationen er næsten altid mangelfuld - og den ORM, som skulle kunne bage koden er fyldt med fejl. CakePHP har sine skønheder; men så sandelig også alvorlige mangler.

Jeg mener stadig, at ideen med et framework er at lave kode hurtigt og let.

Cake bake
Det er så let at bage med cake bake, kan man læse; men min skærm bliver fyldt med fejlmeddelelser. Jeg har prøvet flere installationer, servere og databaser med samme resultat. Jeg har ellers set mange gøre det på nettet; men når jeg gentager det samme - med copy paste af koder og databaser, så virker det ikke. Der er altid lige et eller andet, der uheldigvis ikke virker. Det bliver man altså træt af.

Man kan spilde meget tid på et framework, og tid har jeg ikke. Så nu vil jeg kun bruge de dele der faktisk virker - altså virker for mig:

Ind til videre har jeg droppet følgende i CakePHP:
  • Auth - loginfunktioner
  • Cake bake
Men ret skal være ret, der er også gode ting:
  • Nemt at bruge data fra databaser
  • Scaffolding - hvor man i skitseform kan sætte tingene op.
    Evangelisternes Lyserøde Rosende Ord
    Artikler om CakePHP er næsten altid i det lyserøde felt. Alt beskrives som "easy" - og det er som en rød klud mod en tyr, når man har siddet i timevis uden at skidtet virker - eller med forklaringer, der er uforståelige opremsninger af 3-bogstavsforkortelser: ACO, ACL, ORM...

    Nej, jeg kan altså ikke tilslutte mig CakePHPs "evangelister". CakePHP er alt andet end "easy" ... og slet ikke når skærmen konstant fyldes af "PHP fatal error...." mig her og "PHP fatal error" mig der...

    Exit Cake Bake
    Efter at ha skrevet ovenstående tænkte jeg: "Det kan da ikke passe, at bake ikke virker. Jeg prøver lige igen..." Og det var spild af tid (igen). Selvfølgelig virkede bake heller ikke denne gang! For at være helt ærlig - nu gider jeg ikke bruge mere tid på "cake bake ..."

      Nydeligt design i Kulturministeriets nyhedsmail

      For nogen tid siden anmeldte jeg layout og typografi i Kulturministeriets nyhedsbrev. Det så forfærdeligt ud; men nu har de åbenbart arbejdet med sagen. Om anmeldelsen i "Pers Computercyprianus" har betydet noget i den forbindelse véd jeg ikke; men nu kan man ligefrem læse teksten. (De grønne farvetoner er dog fra mit Linux Mint tapet).

      11 May, 2011

      Noter og markeringer i PDF-filer

      Som underviser har jeg ofte brug for at kunne fremhæve områder i PDF-filer. Det kan man i linux med Xournal. Filen åbnes og editeres. Områder markeres med transparent farve - og meget mere.

      Der er dog et lille problem: Xournal kan ikke rotere PDF-filens sider. Det er upraktisk, hvis et dokument ligger på den forkerte led.

      En slags løsning er at gå ind i skærmindstillingerne. Her kan man rotere skærmbilledet. Museoplevelsen bliver ret alternativ, eftersom pilen flytter sig på en ny måde; men prøv at rotere musen - fysisk - på samme måde som skærmbilledet. Så kan den bruges til noget.

      Under arbejdet bruger jeg fuld skærm - og skjuler Gnomes menuer. Herefter er det kun Xournals menuer, der vender lidt alternativt.

      Gad vide, om der findes et lille program, hvor man kan rotere PDF-filen? Der findes en række PDF-editorer, så måske kan et sådant program opdrives.

      GIMP kan fx åbne PDF-filer; men her skal man editere side for side. Det bliver upraktisk ved længere dokumenter. (Måske kan man skrive et python plugin, der vender en masse sider automagisk).

      Det er naturligvis lidt primitivt; men det virker.

      03 May, 2011

      CakePHP - over åen efter vand?

      Når man arbejder med et framework kan selv de mest simple handlinger blive komplekse. Måske kommer gevinsten på lang sigt; men på den korte banehalvdel er det altså bøvlet at sætte sig ind i dette framework.

      Det er lidt som at gå over åen efter vand, når man skal pløje gennem lange tekster, der forklarer noget, der kunne være ordnet med en simpel SQL-sætning. Fx prøver jeg at sortere indlæg i en blog, så det nyeste vises først. Selv includes kræver mystiske og magiske metamanipulationer...

      Det burde være piece of cake; men den slags kræver virkelig en mental indsats, hvis man bruger CakePHP.

      Og løsningen på at sortere blogindlæg. Det er naturligvis ren kagemagi at skrive:

      # $posts = Set::sort($posts, '{n}.Posts.id', 'desc');

      Omvendt, når frameworkets idé dæmrer, så giver CakePHP en række redskaber, der dels giver systematik til udviklingen af webapplikationer og som dels gør det nemt at strukturere produktionen. Adgangen til databaser, relationer mellem tabeller og meget andet kan ordnes relativt enkelt.

      Men det kræver naturligvis, at man kan sin "kagebog".

      02 May, 2011

      One.com nede ... igen

      Den senere tid har der været mange problemer med One.com. Lige nu kan jeg ikke se nogen af de sites, som jeg passer på det hotel. Selv http://one.com er nede.

      Efter nogle timer fungerede alt igen.