Een oude vos verleert zijn kunstjes niet. Zeker niet als ze zo stug zijn als mij. Echter, mijn ogen zullen ook eens moeten opengaan, alhoewel het soms wat traag gaat.
De week begon met een opdracht omtrent die sitemapgenerator die ik vorige week geschreven heb. Ik heb hem moeten integreren op de admin en heb er een cronjob voor moeten aanmaken. Eens geintegreerd in de admin heb ik er een excellexporter aan gekoppeld.
Als kers op de taart werd er een ajax toggle aan gebouwd. De ajax toggle laat toe om snel te zeggen welke items in de sitemap staan en welke niet.
Ook heb ik een foutje er uitgehaald. De vorige versie appende elke keer de resultaten, maar verwijderde niet de resultaten die niet meer op de site aanwezig waren. Na het schrijven van een korte timestamp comparer werkte alles perfect.
Rond het midden van de week mocht ik mijn stoute schoenen aandoen, mij wapenen met putty en htaccess en op botjacht gaan. We hadden enkele projecten die enorm veel errorpaginas vertoonden ( 6gb traffic alleen al aan errorpages ).
Net zoals elk probleem, is een probleem meestal een cascade van een klein probleem dat zich verergert naargelang de tijd vordert. Ik noem dit shacka’s law.
((unknown problem ^ time ) + ((current problem + (number of problems * problem)) * time)) / (knowledge - panic)
Bleek dus dat er een bot naar fouten was aan het zoeken. Na wat ip’s te hebben gepingd op whois bleek dat het een of ander wonky domein was van een spambot dat op een duitse server stond. Deze hebben we dus maar geblokt. Omdat een probleem echter nooit alleen komt, bleek dat ook de yahoo indexing engine ( slurp! ) ergens zijn eigen staart achterna aan het hollen was en dus bleef loopen. Deze hebben we dan maar disabled via de robots.txt file daar hij nu toch al alles had geindexeerd.
Maar de tijden veranderen, dat is zeker. Dus om op mijn originele punt terug te komen, ik zelf zal moeten verdergroeien en losbreken van mijn oude gewoontes. En dit proces is op vlak van cakephp vorige week begonnen.
Ik moest de uploadr app bouwen, maar ben van 0 begonnen, en deze keer volledig op de cake manier. En eens je veel hebt gevloekt, wat vooruitgang boekt en dan nog genoeg vloekt om zelfs een boek van herman brusselmans te doen blozen, merk je eigenlijk dat je al een hele applicatiebackend hebt geschreven waar je nu anders nog vast zat in het mundane werk van basic css schrijven etc…
Cake fijn noemen vind ik nog te vroeg, maar het begint mij elke dag meer aan te staan. Mss is cake niet het framework voor mij, maar het is zeker een stap in de goede richting.
Zalig zomerweer. Het schooljaar loopt zo langzaam op zijn einde en daarmee ook mijn stage.
Daarom wordt het uiteraard niet minder interessant. De week begon meteen met een interessante opdracht omtrent een theming engine voor een project.
De bedoeling was om volledig met javascript enkele voorbeeldthemes te tonen, en het theme on the fly aan te passen als een theme geselecteerd werd. Bijkomstig was er ook de custom theme optie die de gebruiker toelaat om de hex waarden in te geven of om per element een color picker tevoorschijn te toveren.
De snelheid en overzichtelijkheid waarmee dit gebeurde doet het me nogmaals eens zeggen: Thank you Jquery.
Uiteraard heb ik weer wat stukjes moeten bijcoden aan enkele projecten en hier en daar add-ons coden.
Toen begon het echte werk. Ik heb een custom made crawler moeten schrijven die een volledige site zou indexeren. Het nut van de crawler is om het proces van sitemaps genereren te vergemakkelijken. De class kan dan als een cronjob draaien en zo alle sitemaps updaten zonder dat dat voor elk project moet gebeuren.
Dat dit niet zo simpel is om te schrijven, wist ik al eerder, maar het niveau van abstractie dat ik heb moeten toepassen voor deze class, heeft me wel doen verbazen. je kan niet rekenen op een vast patroon, daar alles uniek is op zijn eigen manier. Een zeer leerrijke ervaring dus.
Tegen het einde van de week was de crawler klaar en volledig up and running. Ik heb me er dan op toegelegd om een excell exporter te koppelen aan de crawler. Dit laat toe om de resultaten op te slaan in een excell werkblad.
Daarna begon ik aan een gui upgrade van een ander project. In dit project kan de klant onder andere ads plaatsen op de site. deze ads kunnen dan een titel en een omschrijving meekrijgen. Het nadeel was echter dat we een volledig overzichtelijke lijst wouden behouden, maar omdat we ook de images wouden tonen, zaten weer met een probleem.
Dat probleem heb ik weerom opgelost met jquery. Als met nu over een ad hovert, dan verschijnt er met een mooi effectje de afbeelding die bij die ad hoort. Dit is makkelijker voor het doelpubliek, en overzichtelijker daar we onze lijst kunnen behouden.