VirtualBox is more free than you might think en

By drm on Friday 05 February 2010 00:35 - Comments (14)
Categories: Development, Tips, tips, tips ..., Views: 3077

I read a post today at the Zend Framework general mailinglist from Ralf Eggert, having trouble with Internet Explorer 6. As all of us developers know, IE6 is trouble.

Read more »

bash: Getting started, finally... en

By drm on Thursday 24 December 2009 10:15 - Comments (6)
Categories: Linux / BSD, Tips, tips, tips ..., Views: 2328

I've found bash scripting to be one of the gems I (re)discovered this year. When you're like me, you like to automate stuff. There's of course loads of scripting languages available to get it done, but frankly, using bash for lots of filesystem and/or configuration related tasks makes more sense than for example PHP or Python.

Here are some pointers to get you on track. As always feel free to ask questions.

Read more »

Don't fear the MySQL geekness! en

By drm on Monday 02 November 2009 21:43 - Comments (7)
Categories: Development, Tips, tips, tips ..., Views: 2441

I have quite often seen people wrestle with easy problems. The trouble is, they don't really know the ins and outs of systems they work with. Very few times this was unresolvable by a bit more knowledge of how the software is used at a very basic, low level.

The most basic example of this is MySQL. Lots of people don't really learn SQL, they just get some GUI tool that does the "thinking" (mind the air-quotes) and generate all ALTER and CREATE queries for them in case of a structural change in the database. For productivity, this is fine, sure. However, if the availability of these tools is for some reason jeopardized, becoming somewhat helpless is inevitable.

Read more »

How to get a FreeBSD web development box running as a Virtual Machine in Windows en

By drm on Sunday 12 July 2009 22:10 - Comments (10)
Categories: Development, Tips, tips, tips ..., Views: 1632

Why this tutorial?


I want best of both worlds. I want a development server, running on a Windows machine. I am sure I'm not the first to come to this conclusion. Many developers out there go for Mac OS X or Ubuntu systems. I don't want that. I want PhotoShop, not GIMP, I want to run any given Windows game or app at any time, so there it is. I also don't want to bother with Windows-specifics for MySQL, PHP, Apache, Python, because the apps are usually going on a Linux or BSD system anyway.

Read more »

Export subversion verschillen tussen twee revisions voor upload

Door drm op zondag 31 mei 2009 15:36 - Reacties (6)
Categorieën: Development, Tips, tips, tips ..., Views: 1226

Subversion (svn) is één van de meest wijd verspreide versioning systemen voor source code, en terecht want het is erg flexibel en praktisch opgezet. Zonder dat je verplicht wordt vaste structuren aan te houden in je repositories, en door eenvoudig combinaties van repositories op te zetten m.b.v. svn:externals kan je eigenlijk heel veel kanten op als het gaat om package en library beheer binnen een in development of onderhoud zijnd project. Hier kan ik nog wel eens wat tips voor op een rijtje zetten als daar behoefte aan is.

Ik vroeg me al een hele tijd af of er voor Subversion ook iets beschikbaar was om een soort patch te maken tussen twee verschillende revisions die als een "overwrite" mogen fungeren, wat ongelooflijk handig zou zijn voor het updaten van een FTP-locatie, waar je geen beschikking hebt over svn metadata of zelfs een svn client.

Na afgelopen week toch maar weer eens gezocht te hebben, kwam ik een python scriptje tegen wat in deze behoefte voorziet, onder de naam svnchanged_export.py. Met dit script kun je in een shell op eenvoudige wijze de gewijzigde bestanden uit een repository vissen en die uploaden. Hoewel de deletes natuurlijk niet direct gedaan kunnen worden op basis van deze informatie, zou dit een aardig begin kunnen zijn van een mash-up met een python ftp-client die de wijzigingen direct doorsluist naar een FTP-locatie.

Je hebt op de bak waar je script gaat draaien een python 2.5 en pysvn installatie nodig, allebei ongetwijfeld beschikbaar in je favoriete packaging systeem. (via apt en FreeBSD ports in ieder geval geen probleem). Op windows heb ik het zelf niet uitgeprobeerd. Let er op dat je weet welke revision je online hebt staan (hou dit bijvoorbeeld bij in een hidden file in de root van je website, of met behulp van consequente tagging waarbij de laatste live revision altijd een tag heeft).

Een aanrader in ieder geval, voor iedereen die niet afhankelijk wil zijn van (vaak trage of zelfs buggy) file-date of filesize comparisons in FTP clients :)

PS: Python is sowieso altijd erg veelbelovend als het op handige scripts gaat: de source code is over het algemeen goed te lezen i.t.t. bijvoorbeeld Perl scripts en er is een gigantische codebase beschikbaar voor allerlei toepassingen die ook als losse (zowel source als binary) packages gedistribueerd worden.