Category Archives: web

Akelos, Dropbox, zabbix

Næsten hver dag tænker jeg på at skrive et blogindlæg omkring de teknologier jeg har arbejdet med den pågældende dag. Af en eller anden grund bliver det bare aldrig til noget.
Men nu vil jeg da lige nævne nogle af de teknologier jeg har arbejdet med de sidste par dage.

Akelos

Akelos er et PHP Framework, som ligger sig meget op af Rails. Faktisk henviser de flere steder til Rails’ dokumentation, de steder deres egen dokumentation ikke er færdig.
Jeg har brugt det til et system som havde behov for at blive lavet i PHP, og det virkede faktisk ret godt. Der er et administration’s plugin som faktisk virker.

Dropbox

Dropbox er et værktøj som gør det muligt at have en delt mappe som bliver synkroniseret mellem flere computere. Der findes både versioner til Windows, Linux og Mac OS X.
Nu har jeg kun prøvet det på Mac OS X, og der er det virkelig godt integreret.
Det er endda muligt at give et unikt link videre til andre folk, hvis man vil dele en specifik fik. Som standard får man 2GB plads, men man kan få mere plads ved at henvise dem til Dropbox

Zabbix

Den sidste ting jeg vil beskrive er Zabbix, som er et monitoringssystem. Jeg har igennem flere år brugt Nagios, men jeg synes det falder lidt igennem på en del punkter. Zabbix styres igennem database, hvilket gør det nemmere at konfigurere hvis man har mange hosts. Derudover har den også autodiscovery og agenter som kan installeres på stort set alle systemer.

Installering af MySQL gem

I forbindelse med mit bachelorprojekt, hvor jeg benytter mig af (http://www.rubyonrails.org/ “Ruby on Rails”), begyndte jeg at få følgende fejl.

DEPRECATION WARNING: You’re using the Ruby-based MySQL library that ships with
Rails. This library will be REMOVED FROM RAILS 2.2. Please switch to the
offical mysql gem: `gem install mysql` See
http://www.rubyonrails.org/deprecation for details. (called from mysql_connection at /opt/local/lib/ruby/gems/1.8/gems/activerecord-2.1.1/lib/active_record/connection_adapters/mysql_adapter.rb:81)

Så var der jo ikke andet at gøre end at køre den kommendo som beskeden foreslog. Det plejer at være dejligt nemt at installer gems. Men nej.

$ sudo gem install mysql

Gav følgende resultat.

Building native extensions. This could take a while…
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.

/opt/local/bin/ruby extconf.rb install mysql
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lm… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lz… yes
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lsocket… no
checking for mysql_query() in -lmysqlclient… no
checking for main() in -lnsl… no
checking for mysql_query() in -lmysqlclient… no
*** extconf.rb failed ***

Det undrede jeg mig så lidt over, indtil jeg efter at have søgt lidt på [google](http://www.google.com/ “Google”) fandt nogen med samme problemer.
Det skyldes hovedsaglig at min [MySQL](http://www.mysql.com/ “MySQL Query Analyzer – Improving SQL Query Performance”) er installeret lidt specielt. Nemlig i `/opt/local/lib/mysql5/` og alle mysql-relaterede programmer i min $PATH hedder noget med mysql_*5.
Derfor kunne gem-pakken ikke blive installeres automatisk, og man må hjælpe den lidt på vej, med at fortælle hvor `mysql_config` rigtig ligger, hvilket f.eks. kan findes ved at køre følgende i [iTerm](http://iterm.sourceforge.net/ “iTerm”).

$ locate mysql_config
/opt/local/bin/mysql_config5
/opt/local/lib/mysql5/bin/mysql_config
/opt/local/share/man/man1/mysql_config.1.gz

Herefter kan følgende køres.

$ sudo gem install mysql — –with-mysql-config=/opt/local/lib/mysql5/bin/mysql_config
Building native extensions. This could take a while…
Successfully installed mysql-2.7
1 gem installed

Wuhoo, nu kommer der ingen DEPRECATION WARNING mere :)

Endelig – MS stopper videregivelse af MAC IE

IE for macUha denne dag har jeg ventet længe på. Jeg er en programmør, som går meget op i at websiderne overholder standarder og ser ens ud i alle browsere, derfor er det en stor dag, nu hvor Microsoft officelt har udtalt at de slet ikke vil koncentere sig om Internet Explorer til MAC.
I forvejen har de ikke udviklet på den igennem lang tid, hvilket også givet sig til udtryk når man hører at versionnummeret er 5.2. Dette har dog ikke holdt folk tilbage, i brug af browseren i stor stil.
Det er også rart at en stor virksomhed kan være ærlige, og sige at de ikke vil arbejde mere på IE, nu hvor apple selv at kommet med en mere modernet browser, Safari. Nu må man bare håbe at de MAC brugere som er tilbage, for skiftet væk fra den browser så hurtigt som muligt.

Nye bøger…

Så var jeg ude og bruge lidt penge på bøger igen. Denne gang blev det til 4 bøger som omhandler programmeringssproget ruby, en bog om ruby on rails og så lidt omkring det at være flere om at skrive kode, sammen med et versionsstyringsystem.
Til sidste en lille bog omkring forskellige smarte shellscripts.

Programming Ruby
Title: Programming Ruby, The Pragmatic Programmer’s Guide
ISBN: 0974514055 (amazon.co.uk)
Den første bog hedder Programming Ruby, The Pragmatic Programmer’s Guide, og skulle gerne hjælpe mig den første vej igennem Ruby. Bogen er på 862 sider, og blev udgivet i slutningen af 2004. Jeg regner ikke med at læse hele bogen fra starten, men mere lige de første standardting i ruby og så derefter mest som et opslagsværk.

 
Agile Web Development with Rails
Title: Agile Web Development with Rails
ISBN: 097669400X (amazon.co.uk)
Den næste bog i rækken hedder
Agile Web Development with Rails, hvilket beskriver et framework som kaldet Ruby on Rails, som faktisk er udviklet af en dansker. Ideen med købet af denne bog er at lære teknologien og så kode et nyt administrationssytem til mit firma, FairWeb.

Pragmatic Version Control
Title: Pragmatic Version Control Using Subversion
ISBN: 0974514063 (amazon.co.uk)
Den næsten bog hedder Pragmatic Version Control Using Subversion og er en bog jeg ser meget frem til at læse. Faktisk har jeg allerede læst det første kapitel, selvom jeg næsten lige et kommet ind af døren. Den skulle gerne komme med en masse tips og ideer til hvordan man arbejder flere sammen om at skrive på det samme system vha. Subversion. Bogen findes også i en CVS version.

Wicked Cool Shell Scripts
Title: Wicked Cool Shell Scripts
ISBN: 1593270127 (amazon.co.uk)
Den sidste bog jeg købte, var ikke en bog som jeg på forhånd havde regnet med at købe, men da jeg læste titlen og bladrede lidt i den, så den faktisk rigtig spændende ud. Som titlen siger, er det en masse smarte shellscrips som kan gøre ens hverdag lidt lettere. Jeg ville først have købt en bog generelt omkring shell scripting, men jeg synes ikke rigtigt at kunne finde nogle gode. Jeg ville gerne have en bog som kom med nogle gode eksempler, hvilket ser ud til denne bog har. Tiden vil så vise om det var et godt køb.

Alle bøger blev købt igennem PolytekniskDTU, og da jeg er medlem af BSD-DK, har jeg fået 15% rabat på alle bøger. Lige pt kører Polyteknisk tilbud på O’reilly bøger, hvor man spare 25%. Desværre havde de ikke lige nogen jeg kunne tænke mig. Nok fordi jeg allerede har købt de mest interessante bøger.

No

Sad og læse et link, som Mads linkede til på #php.dk @ quakenet, der beskriver, hvor let man kan opbygge en simpel side uden brug af <div>, <span>, #id og .class.
Det er en yderst interessant artiklen, som bør læses af alle som bare leger lidt med html/css.
En af de metoder han benytter sig af, er

* { padding: 0; margin: 0;}

som simpelthen sletter alt det plads der må være rundt om elementer. Dette er faktisk en kanon ide, da det lukket muligheden for at forskellige browsere får deres specifikke border og padding-indstillinger indført, hvilket gør det nemmere at designe en side lige om man vil have den til at være.
Den teknologi kan man læse mere om på denne side som btw også har mange andre interessante artikler og links.

Nye bøger

Så fik jeg endelig mine bøger fra amazon.co.uk. Denne gang blev det til 4 bøger som jeg bestilte sammen med et par andre bøger, som min gode ven Simon skulle have.

Det blev til

  • The book of Postfix af Ralf Hildebrant og Patrick Koetter
  • Head First Design Patterns af Eric Freeman og Elisabeth Freeman
  • PHP5 Power Programming af Andi Gutmans, Stig Sæther Bakken og Derick Rethans
  • Version Control with Subversion af Ben Collins-Sussman mf.

Derudover venter jeg stadig på Professional Apache 2.0, som også skulle komme en af de kommende dage.
Når jeg har fået dem nærlæst lidt mere, kommer der selvfølgelig en boganmeldelse af dem – jeg har bare lidt hængt op for tiden, så der går nok et par uger.

Derudover kan jeg fortælle, at jeg har valgt at starte på DTU den 29. august. Jeg har muligvis også fået et værelse lidt nord for DTU, så det er jo bare perfekt.
Hvis nogen skulle være interesseret, så bliver det Civilingeniør i kommunikationsteknologi som jeg skal starte på, hvilket jeg ser meget frem til.

PHP5 Power Programming

PHP5 Power ProgrammingIgen skriver jeg om en phpbog – og endda en god en af slagsen. Bogen er skrevet af Andi Gutmans, Stig Sæther Bakken og Derick Rethans og hvis man bare har lidt kendskab til PHP’s historie, ved man er det er nogen meget betydningsfulde personer for PHP.

Jeg fik desværre ikke læst hele denne bog – og det fortryder jeg meget. Det er en meget populær bog og derfor måtte jeg desværre kun låne den en måned.
Bogen er perfekt for folk der vil gå fra PHP4 til PHP5, eller bare folk som vil til at lære PHP, som før har kodet andre programmeringssprog. Dette er bestemt ikke en bog for nybegyndere – da den går ud fra at man kender alle grundreglerne inde for php.

Det eneste som holder mig lidt tilbage, for at købe denne bog, er at den ikke beskriver særlig mange gode design patterns.Head First design patterns Jeg har derfor overvejet at bestille Head first design patterns fra O’reilly. Da det nok er lidt mere det jeg mangler. Som et par gode folk inde på #php @ freenode.net også gjorde mig opmærksom på, så kan man jo læse det hele på nettet i form af gode artikler. Jeg har det bare lidt bedre med at have en bog i hånden. Især når det er en god bog.

Lige med PHP5 Power Programming, så er den udgivet i Bruce Perens’ open source series, hvilket betyder at bogen også efter nogle måneder kommer som en fri download version. Men igen – at have den i bogformat er noget andet.
Bogen er heller ikke særlig dyr – omkring 250 kr. hvis man bestiller den på amazon.

Kom endelig med nogle gode råd omkring de to bøger – og evt. ideer til andre gode PHP/design patterns bøger.

Apache Cookbook

Der findes utrolig mange bøger omkring Apache, og de forklarer næsten det samme. Denne bog er faktisk ikke en undtagelse, men alligevel synes jeg faktisk rigtig godt om denne bog.
Bogen er udgivet af O’Reilly og er skrevet af Ken Coar, som bl.a. er Vice-direktør for Apache Software Fondation, Rich Bowen som også er en meget erfaren mand inde for Apache og har arbejdet med det siden en af de første versioner.
Den er som titlen også siger, skrevet som en kogebog, med en masse løsninger til forskellige problemstillinger, og jeg må sige at den kommer langt omkring. Det er lige fra Redirecting og rewritting URL, forklaring omkring CGI scripts, logs, virtual hosts, optimering og sikkerhed.
Bogen består af ca. 230 sider, og med så meget forskelligt indhold, er det ikke en bog som går meget i detaljer, men den forklarer det vigtigste og gør en i stand til at bruge de mange funktioner apache har, hvilket ofte er det som jeg har brug for.
Jeg er næsten helt sikker på at denne bog kommer på min bestillingsliste, næste gang jeg skal bestille bøger ved amazon.

The Definitive Guide to MySQL

Dette er nok en af de bedste MySQL bøger jeg har læst til dato. Den kommer godt ud i alle kanter og beskriver f.eks. noget som transactions, MySQL Control Center, replikation, performance, sikkerhed.

Denne bog fortæller heller ikke kun omkring brug af MySQL i PHP, hvor jeg mest gør brug af det, men også igennem Perl, Java, C, C++, C# og Visual Basic – det er dog bruges igennem PHP som der ligges mest vægt på.

Igennem bogen kommer der en masse løsningsforslag til forskellige problemer, heriblandt hvilke problemstillinger man kommer ud for ved fremstilling af en bogsamling/bibliotek og et forum. Det sidste er en nøje gennemgang hvordan man bygger det rigtigt op, hvor den f.eks. fortæller om at det godt kan betale sig at have nogle data flere steder, hvis det tilgengæld kan hjælpe meget på performancen.
Derudover indeholder bogen selvfølgelig en SQL manual samt en gennemgang af de småprogrammer som følger med MySQL server.

Det er en bog jeg bestemt godt kunne finde på at købe, og især da den ikke er så dyr igen. (Normalprisen er $49.99)

MySQL Language Reference

Denne bog er den officelle manual fra MySQL AB skrevet om bog. Jeg lånte denne bog på bibliotek.dk, men det er bestemt en bog jeg godt kunne finde på at købe selvom den ikke indeholder noget som ikke allerede kan findes på nettet.
Jeg har det bare sådan, at jeg bedst kan lide at læse længere tekster i en bog. Ofte kan jeg også slå hurtigere op i en bog at finde det rigtige, end at jeg kan gøre det på nettet. Selvfølgelig får man så nogle kommantar fra brugere på den online version, som også bliver opdatere noget oftere, men det er nok de eneste ting der kunne få mig til at søge der.