Month: oktober 2008

Tror du det er noget vi gerne vil?

Den anden dag skulle jeg smide en gruppe narkomaner fra privat område, på min arbejdsplads, og da jeg bed dem om at forlade området, foregik det stille og roligt. De er godt klar over at de ikke skal være der, og at vi kommer og smider dem væk derfra.

En pige som så ud, som om hun ikke hørte til, kommer mod mig, og spørger. “Tror du det er noget vi gerne vil?”Continue reading

PHP tip

Forleden legede jeg lidt med PHP, og kodede lille applikation, som vil indsamle statistiske oplysning om besøgende, på et andet blog. Jeg var tvunget til at bruge et billede, som skal indsamle information. Men det billede var i realiteten et PHP script, som indsamlede oplysninger, og browseren fik at vide, at det var et billede.

Da jeg lavede research for best_practice på nettet, så jeg mange brugte GDlib, men da jeg ikke skulle lave noget på billedet, det er bare et statisk grafisk fil, kunne jeg nøjes bare med at lave en include på den PNG fil.

Er ret sikkert på at dette er hurtigere, og mindre ressource krævende for serveren, end hvis jeg skulle indlæse billedet, lave ny midetidlige billede med GD funktioner, bare for at vise den igen, uden nogen ændringer.

include("image.png");
header("Content-Type: image/png");
exit;

Bash function og automatisering

Da ja tester og udvikler diverse applikation i PHP og MySQL, på min hjemme maskine, havde jeg brug for at kunne hurtigt starte/stoppe for web-/mysql-server. Da jeg er Mac bruger, og kan godt lide selv at kompilere MySQL, PHP og min web server, var det lidt svært at finde widgets som tillod mig at starte diverse tjenester ved enkelt tryk.

Mac OS X kommer med Apache, og den kan nemt startes/slukkes i Sharing indstillinger. Men da jeg bruger LiteSpeed web server, skulle jeg skrive kommandoen i terminalen for at gøre det samme. Det samme er med MySQL, der findes en indstilling widget der tillader dette, men kun hvis man installere deres egen binær version af MySQL server.

Disse kommandoer var ikke indviklede, men der var svære at huske og skrive hele tiden. Så jeg oprettede nogle alias’er som skulle hjælpe mig med det, og dermed også gøre kommandoer lidt kortere.

alias litespeed='sudo /opt/lsws/bin/lswsctrl $1'
alias sqlsrv='sudo /usr/local/mysql/share/mysql/mysql.server $1'

Det fungerede også i et styk tid, indtil jeg blev træt af at tænde dem enkeltvis. Så jeg kiggede efter hvordan man kunne lave en funktion som gjorde flere ting. Og sjovt nok, bash shell (fil ~/.bash_profile) tillader brugeren at oprette funktioner.

Så nu har jeg én kommando til at starte alle de relevante processer som jeg skal bruge når jeg tester og udvikler.

Nu skal jeg kun skrive dev start, for at starte web/mysql server. jeg kan også bruge stop for at stoppe dem, eller restart til at genstarte dem.

dev()
{
sudo echo $1"ing Dev Environment"
sudo /opt/lsws/bin/lswsctrl $1
sudo /usr/local/mysql/share/mysql/mysql.server $1
echo "Environment" $1"ed"
}

Jeg elsker simpelthen UNIX miljø, den tillader mig at opstille og indstille ting som jeg gerne vil have dem.