User:Spetrea

Hello,

My name is Stefan Petrea. For more information visit my website.

I'm working on the following at the moment:


 * wikistats project
 * dClass device detection debian package and jni extension
 * uaparser perl port of the ua-parser project
 * XS Perl extension to parse fields (this was specifically built for the new mobile pageviews reports)

If you have any [mailto:stefan@garage-coding.com questions or requests contact me at this e-mail].

Details about my work
The main areas of focus are:


 * Country report( requested by Amit Kapoor )
 * New Mobile pageviews report (requested by the Mobile Team, in particular Tomasz Finc)
 * Device detection through the dClass library (requested by the Mobile Team)

Wikistats technical challenges
The technical challenges I'm facing with the wikistats codebase are the following:


 * speed
 * hard to test because of speed issues
 * the code is hard to test because it is not factored
 * again refering to the first item, it only uses 1 CPU instead of 16 CPUs (which are available on stat1), that makes it slow
 * the code produces "hand-crafted" HTML/js  code instead of using templates so it is quite hard to fix a bug related to rendering as the report is being composed of little pieces spread across many functions
 * undocumented. should spend some time to document the WikiReport.pl script. I currently don't know how to run that. This also has impact on the mobile pageviews report which I don't know how to generate.
 * the code is procedural as opposed to object oriented. it does not offer encapsulation so there are lots of side-effects.
 * the code does not use strict; use warnings;
 * the code uses global variables across modules. This fact causes problems in the separation of code and it does not create a context for separation of logic. It also has effects on the testability of the code.

We have tried to address all of these problems in the new mobile pageviews report.