A few more days and FOSDEM 2013 starts again. I've been looking forward to this since I left FOSDEM 2012. ;)
A lot of talks and presentations to go to, some people to meet (again), but most importantly : I will do a talk about phpMyAdmin!
If you are at FOSDEM and want to know more about the Present and future of phpMyAdmin, then come to room H.2214 (MySQL & Friends devroom) on Sunday, February 3rd, 2013 at 17:00.
I will talk about the new features in the current version (3.5.x) and what you can expect in the upcoming version 4.0.0.
Hope to see you there!
Wednesday, January 30, 2013
talk about phpMyAdmin at FOSDEM 2013
Posted by
Dieter Adriaenssens
at
10:37
0
comments
Labels: FOSDEM, Open Source, phpmyadmin, presentation, talk
Tuesday, January 01, 2013
Ambitions 2013
- pick up Java and/or C++
- improve knowledge of OOP and design patterns
- finish writing a first Android app
- do a presentation/talk at a conference (FOSDEM, ...)
- Improve pace and distance in running, after I recover from a knee injury. Next goal : 10 miles by April.
- Improve swimming (technique, speed, stamina and style) : Build up stamina doing a slow front crawl. Next goal : 250m without a break
- In 2012 I started wall climbing (bouldering), so I hope to improve my technique and muscular strength, as a preparation for some outdoor rock climbing.
- Repeat the Car Free Day action, but this time on faculty level
Posted by
Dieter Adriaenssens
at
17:23
0
comments
This was 2012!
- went to FOSDEM, attended the phpMyAdmin team meeting, and showed two friends around in Ghent, Antwerp and Bruges
- got into the top 3 of most active contributors on ohloh.net
- successfully suggested a commission at my university to make their reports available sooner
- improved my OOP skills, implementing composite and singleton design patterns and further abstracting my Open Source framework
- participated in TransitieUGent, a platform for setting goals and actions for UGent to become more sustainable by 2020/2050.
- had a lot of fun building a piƱata-like moose as a present for my sister's wedding
- participated in an assessment test at work and passed
- achieved swimming 2 km in less than an hour
- created a document in LaTeX
- holiday in Greece with some friends
- released a first beta version of my web development framework, which is 100% compliant with PEAR coding style
- started running and did 10 km in about an hour by the end of the summer
- made a linux server work as a TimeMachine storage device.
- mentored Rouslan Placella for GSoC project : 'Removal of frames in phpMyAdmin'
- subscribed for a weekly organic fruit package of De Wassende Maan
- did a triathlon, doing swimming (2km), cycling (26km) and running (5km) on the same day
- motivated his colleagues to come to work without a car, by pledging to run 100 meters for everyone that did, and eventually ran 4 km.
- organised a trip for some friends to the opera 'La Damnation de Faust' by Berlioz, directed by Terry Gilliam. The opera was great, BTW.
- attended Google Summer of Code Mentor Summit 2012 at Google HQ in Mountain View, California.
- visited Yosemite National park again (organising the trip for some fellow Mentor Summit attendees)
- started climbing (bouldering)
- baked an apple cake for the first time and perfected it after a few tries.
- got an award for 'motivating colleagues to come to work without a car'
- released a first version of a lab instrument reservation tool at work
- took on Android development, first creating a 'Hello World!' app and then starting to work on a small but a bit more complicated app, while exploring the possibilities of the Android framework
- swam in a 50 meter swimming pool
- wedding of my sister
- funeral of Wim
- wedding of my steph brother
- my other sister graduated as a teacher
- mother moving to Hasselt
- Brecht defended his PhD
- wedding of Tho and Tine
Posted by
Dieter Adriaenssens
at
17:16
1 comments
Tuesday, October 30, 2012
Time to move on?
Today I discovered that the Symfony framework does almost exactly (and more) what my own framework (FoRMAiD) aspires to be(come).
Now
what? Start learning to use Symfony2 and cease further development of
my own framework? Rewrite my own framework so that it builds on Symfony2
and add what is not available in it? Or stubornly ignore Symfony2 and
continue as planned?
The first option, and maybe the second,
seem appropriate, but still it is a bit disheartening to realise that
all the time and effort that has gone into FoRMAiD might have been better spent.
But
then again, I managed to create a working OOP based PHP framework, that
is fully compliant with the PEAR coding standard. So I learned a lot and gained some
valuable skills doing so. :)
Posted by
Dieter Adriaenssens
at
16:48
0
comments
Labels: developing, FoRMAiD, php
Sunday, September 30, 2012
Tag based vs hierarchical file system structure
Imagine your hard disk, home drive, My Documents folder or by extension your mailbox. You probably have some kind of hierarchical structure sorting your holiday pictures and bank statements in separate folders, instead of keeping them all in the same folder.
But the hierarchy of those folders will probably look remarkably the same : a folder for each year, maybe divided in folders per month, with some kind self chosen structure, based on the name of your bank, the type of account, or where you went on holiday.
Now imagine that you have a savings account with two different banks. You will probably store the statements of these accounts in a hierarchical folder structure. So you will end up storing the statements of the first account with bank x in this folder :
\banks\bank_x\savings\year\month
And those of bank y in this folder :
\banks\bank_y\savings\year\month
They look remarkably the same, don't they, apart from the bank name.
Now add a folder structure for your mobile phone and land line invoices and those for gas and electricity, and you will get this kind of structure :
\invoices\telco\company_x\mobile\year\month
\invoices\telco\company_y\landline\year\month
\invoices\energy\company_w\gas\year\month
\invoices\energy\company_z\electricity\year\month
Do you see a pattern emerging?
Now imagine you are paying your invoices and are trying to get an overview of your spending and income. You start in your bank account folder and go down the year/month structure to get to this month's statements. Next you want to have look at an invoice for the same month, but to reach this folder you need go all the way up to the root folder, and then go down the structure of the invoices and companies, and then to the folder for the current year and month.
Wouldn't it be convenient to turn this hierarchy around, and sort it this way :
\year\month\service_x\company_y\type_z
But I guess you would probably want both structures? Depending on what you are trying to find, you would prefer one structure over an other. Or maybe there is a third/fourth structure that could be convenient.
Now image, that instead of dropping a file in a folder structure, being it an invoice, bank statement, holiday picture or love letter, you would assign tags to it. In case of an invoice from your telco for your mobile phone, it would probably get these tags :
telco_x, mobile, invoice, year, month
Tag based filtering
Now, imagine there is a filtering system. By filtering on the tags year and month, you will get an overview of the invoices and bank statements of that year/month. No need to go up and down folder structures to reach the documents of the same month.
Custom tag based hierarchies
Or if you would define a hierarchy based on these tags, you can still display your documents in a hierarchical way, or in another hierarchical way, if you define a different hierarchy, without the need of having to copy your documents to the other folder structure, or having to create symbolic links or shortcuts.Creating extra tags
And if at some point you need an extra tag, f.e. you want to make a distinction between the mobile invoices of every family member, just add a tag with their names to the invoices. No need to create a separate folder structure for every family member.Conclusion
So you end up with a system where you can still have your preferred hierarchical folder structure. But you can as easily have other custom folder structures and you have the flexibility to filter on files/documents in any way you like, as long as you assigned a tag for it to a file.Application
These kind of systems exist, f.e. Gmail gives you the ability to assign tags to E-mails. Then these tags are used to sort your E-mails. An E-mail from a colleague about a sport activity at work or a could get the tags work and sports, while a mail from your club, could also have the tag sports.When looking in the tag based folders sports you will see both mails, while looking in the folder work, you will get only the mail from your colleague.
Tag based file systems
Some examples, in no particular order :
Posted by
Dieter Adriaenssens
at
21:28
4
comments
Labels: computers, concept, file system, semantic, tag based
Monday, August 27, 2012
Lion Time Machine on Debian
After an upgrade to Lion (Mac OS X 10.7) Time Machine didn't work anymore.
It had been configured to store the Time Machine files on a Debian file server, using samba. But from Lion on, AFP 3 is required by Time Machine.
Solution : install netatalk on the Debian server.
According to a blogpost, at least version of netatalk 2.2.0 is required. The version of the available Debian package is older (2.1.2), so this means compiling from source code.
Use netatalk 2.2.3, get it here, copy it your server and extract :
$ tar -jxpvf netatalk-2.2.3.tar.bz2 $ cd netatalk-2.2.3
To enable DHX2 authentication (which is required), Debian packages libgcrypt11 and libgcrypt11-dev need to be installed. The libgcrypt11-dev package is required otherwise the library will not be detected by the configure script and the DHX2 (UAMS) module will not be compiled in.
$ sudo apt-get install libgcrypt11 libgcrypt11-dev
Default settings would put netatalk in /usr/local/*, so use the settings below to put the files in /usr/bin/, /usr/sbin/, and /etc/
$ ./configure --enable-debian --prefix=/usr --sysconfdir=/etc $ make $ sudo make install
Check if installation was successful by running
$ afpd -v
It should show netatalk-2.2.3 on the first line.
Here you can find more information about the config files, but to make the Time Machine work add this line to the end of file /etc/netatalk/AppleVolumes.default
~/timemachine "TimeMachine" options:upriv,usedots,tm
This makes folder timemachine in the homedir of the user (which you need to create) available on AFP as volume TimeMachine.
Note that option tm needs to be added to support Time Machine on this volume.
When all is set, netatalk can be started and your Mac should be able to use volume TimeMachine for backups :
$ sudo /etc/init.d/netatalk start
On your Mac, you will have to execute this instruction in a terminal window to make it recognise the afp share as a timemachine :
Defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1
Update (12Nov2012) : added section about allowing linux timemachine volumes on a Mac
Posted by
Dieter Adriaenssens
at
17:20
4
comments
Labels: AFP, Apple, backup, Debian, Lion, netatalk, sysadmin, Time Machine
Thursday, July 19, 2012
Ambitions
Enough with resolutions, enter ambitions and goals (some of them longterm, other shorter term) :
- pick up Java and/or C++
- improve knowledge of OOP and design patterns
- write an Android app (update December 17th 2012 : created a first 'Hello World!' app)
- release a first beta of my PHP framework (update August 12th 2012 : it was released)
- Easily run 10 km in about an hour by the end of summer 2012 (update August 23rd 2012 : I ran 10K in an hour. Next goal, improve pace and distance)
- Improve swimming (technique, speed, stamina and style) : Now that I can do 2km breaststroke in under an hour, build up stamina doing a slow front crawl (250m without a break)
- start doing another sport : wall climbing, pick up squash again?
Posted by
Dieter Adriaenssens
at
16:38
0
comments