gmax's user image
User since: Nov 23, 2001 at 18:49 UTC
Last here: Jun 21, 2011 at 19:36 UTC (3 years ago)
Experience: 20733
Level: Abbot (19)
Writeups: 292
Location:Sardinia, Italy
CPAN Directory:  GMAX
Home page:  the data charmer
User's localtime: Dec 18, 2014 at 13:32 GMT+1
Scratchpad: View
For this user:Search nodes

     _/_/_/ _/_/_/  _/_/     _/_/_/ _/    _/  
  _/    _/ _/    _/    _/ _/    _/   _/_/     
 _/    _/ _/    _/    _/ _/    _/ _/    _/    
  _/_/_/ _/    _/    _/   _/_/_/ _/    _/     
     _/                                          
_/_/        

                                            

Savoir, savoir faire, faire, faire savoir.

Systems analyst and database designer, converted to Perl after a long mutual love with C.

Currently working as MySQL Community Team lead with Sun Microsystems a QA developer for MySQL AB, free-lance database designer and IT forensic consultant, loves C/C++, perl, women, linux, mysql, object-pascal, books and chess (not necessarily in that order :-)

I have used the gmax nickname since 1991, and I would like to state that I have no association to a game tool with the same name.

Places I visited

Articles (SQL & Perl):

MySQL wizardry - cross tabulations (off-site at MySQL.com) A tutorial on how to create server-side cross-tabulations reports with MySQL and Perl.
Generating Database Server-Side Cross Tabulations (off-site at OnLamp) Theory and practice of server-side cross-tabulation with SQL and Perl.

My policy

I usually don't participate in flames. Nor I answer to gratuitous attacks. I apply Murphy's law about not getting engaged in a discussion with an idiot, since people couldn't tell the difference.

         \|||/       
         (o o)       
,----ooO--(_)-------.   ,---------------------------------.
| Please            |   | If you are arguing with a fool, |
|   don't feed the  |   | chances are he's doing the same |
|     TROLLs  !!    |   | thing.                          |
'--------------Ooo--'   '---------------------------------'
        |__|__|      
         || ||       
        ooO Ooo      

I got the above ascii-art from this usenet collection. Thanks to IlyaM for providing the link.

CPAN Modules

Server-side cross tabulations DBIx::SQLCrosstab (Live sample) SQL and Perl wizardry together
Database Normalizer DBschema::Normalizer (CPAN module) When Perl and SQL co-operate strictly
A parser for PGN files Chess::PGN::Parse (CPAN module) (Fruit of a joint venture with brother hsmyers).

Nodes

database programming

The fine art of database programming. Why database programming is not easy.
DBI recipes A collection of DBI idioms. (Now mentioned in DBI docs)
Before asking a database related question ... Searching for solutions before asking for help.
Normalization the easier way How database programming could be less difficult.
Speeding up the DBI Improve the efficiency of your database apps with new DBI features.
Re: Getting started with databasesHow to find your way through database learning
DBI specification change Something in the DBI docs to be aware of.
Handling huge BLOB fields with DBI and MySQL Stretching the database limits.
SQL Crosstab, a hell of a DBI idiom Analyzing the guts of a complex SQL builder.

Tutorials

Tree::Dag_Node tutorial The fascinating world of trees.
Vim for PerlMonks nodes How to use Vim to compose off-line Perlmonks write-ups

Perl community

The PerlMonks algorithm The social impact of PerlMonks
Reviewing bad books. On writing negative reviews
Re: Should I write your code ? On answering with examples
Re: Interview with a Programmer On hiring a new developer
Categorized best nodes best nodes on steroids! (live listings)

obfuscation

Reusing Camel Code Obfuscation turned into Software Engineering :-)
The key to paradise (1) and (2) Plain Obfuscation (if there is such a thing)
#/usr/bin/perl -w use strict;my%p= ("\40"=>chr(ord("\40" )*3-1).chr(ord("\40")+ord("\40")/4+7));$p{$p{"\40"}}="\40";print @{[map{my$o= $p{"\40"};@{[map{(($o=$p{$o})x$_)}map{ord($_)-(ord( "\40")*3 )-1}split//]},"\n"}split/n/,"uaqbnfdgcebcccbnebe" ."bcecc" ."gbndbeb" ."cbibi" ."bncdg" ."dcbib" ."nbbna" ."bnaaua" ."ubndd" ."ccgce" ."debcb" ."ncbeb" ."ebcbeb" ."cbebc" ."cnbbeb" ."ebcbebcbebcbcbnab" ."ebebecebebcbeb" ."na"]};# amen
[download]
Perl Monk's dream A multiple level obfuscation
Structured obfuscation with its spoiler.
Elusive monks A running obfuscation
obfun! A different obfuscation. Wants to be fun :)
Yet another structured obfuscation spoiler of the above
2 years A celebration of a pleasant friendship with PM.

various

In praise of curiosityHow curiosity can make you grow as a programmer.
Perl's pearls Notes on implementing an anagram algorithm in Perl
Editing features for advanced users shows some powerful features for programming using a well known editor.
On-the-fly all-languages syntax highlighting Syntax highlighting for the masses.
In praise of Perl for admin tasks is a praise of Perl for its original purpose.


Data charmer drawing by Simon Goodway