divendres, 27 de juny del 2014

Nova adreça del bloc

A partir d'avui, dia 27 de juny, he decidit deixar de publicar a blogspot, per fer-ho a la meva pròpia pàgina web. Per tant, si algú està interessat en el CastellTab, la nova web on cercar informació és:
http://www.llordella.net/category/castelltab/

dijous, 24 d’abril del 2014

Replantejament

He decidit replantejar el CastellTab. El motiu és que he deixat la Colla -de moment, de manera provisional-. Això m’impedirà de fer les proves, en els assaigs, que em resultaven tant interessants per millorar-ne la usabilitat. La contrapartida és que ara ja no tinc cap pressa en aplicar canvis o millores, cosa que farà que l’aplicació avanci més a poc a poc, però segurament millor. Així, també disposaré de més temps per documentar-la com s’escau.

En la situació actual, el més probable és que ningú faci servir mai aquesta aplicació per dissenyar els seus castells –és molt probable que ningú llegeixi, tampoc, aquest escrit-. La veritat, però, és que se me’n fot bastant. M’agrada programar, m’ho he passat molt bé -i n'he après molt- tirant endavant aquest projecte, i tinc la intenció de deixar-lo ben acabat i documentat.

Això sí, no em poso cap termini. El ritme de treball dependrà del temps i les ganes que tingui per dedicar-m’hi.

dijous, 27 de març del 2014

Nova versió del CastellTab amb demo pública

Acabo de publicar una nova versió del CastellTab amb moltes modificacions respecte de la que teníem el novembre. A més, he preparat la demo pública, perquè qui vulgui pugui donar-li un cop d'ull. La demo és totalment operativa, i és exactament igual que la que tinc com a versió oficial, amb la diferència que els noms són inventats.

Es pot provar a www.llordella.net/CastellTabDemo.
Usuari: Convidat
Paraula de pas: demo

Canvis més importants:
  • Els camps per entrar/buscar persones, que fins ara eren quadres combinats tipus select, es transformen en camps de text basats en objectes datalist, excepte en els cassos en què les llistes són massa curtes com per justificar aquest canvi. A més, l’id i el nom d’aquests camps s’ha convertit en variable –basat en un número aleatori-, per evitar que el recordi l’historial dels navegadors –cosa que representava un greu incovenient-.
  • En afegir/canviar un casteller en una posició d’un castell, no es reescriu el mapa si no que apareix, directament, una capa on s’introdueix el casteller en qüestió.
  • Abans d’assignar un casteller a una posició, comprovem que no es trobi en el castell, evitant la possibilitat que un altre tècnic hagi entrat el mateix casteller en el mateix castell durant el lapse en què es decideix el canvi.
  • S’han canviat les icones perquè siguin més clares i accessibles, i es remarca clarament el mode d’actuació activat en cada moment.
  • S’ha canviat el color de posició seleccionada, de manera que es diferencia millor de la resta. S’ha introduït una nova icona que es pressiona quan es vol eliminar la selecció.
  • S’han resolt alguns problemes amb els noms de les persones que només tenen el nom del mapa (castellers pendents de regularitzar).
  • S’ha resolt el problema de la redirecció entre pàgines, creant una nova funció. Així evitem que canvis en el servidor web, fora del nostre control, provoquin que l’aplicació deixi de funcionar.
  • S’ha simplificat la manera d’introduir les capçaleres i les llibreries, per fer més fàcil tant el manteniment de l’aplicació, com els canvis estètics.
  • S’ha introduït un nou camp, en la definició de plantilles, per poder mostrar, en el futur, l’ordre d’entrada dels castellers en els diferents castells, dependent de la posició que ocupin.
  • S’han creat funcions noves per clarificar el codi.
  • S’ha reorganitzat el fitxer css general de l’aplicació, per fer-lo més eficient, clar i fàcil de mantenir.

dijous, 14 de novembre del 2013

Prova del CastellTab amb la Raspberry Pi



En l’assaig d’ahir, l’Àlex Lillo va estrenar l’ús de la seva Raspberry Pi (http://www.raspberrypi.org/), com a servidor per a emetre les imatges de les pinyes en el projector de la Colla.

Vaig aprofitar per fer algunes proves de rendiment del CastellTab treballant contra la Rapsberry Pi amb el meu mòbil –un aparell de gamma baixa-, i la veritat és que el resultat va ser immillorable. La velocitat de la Raspberry, que feia de servidor connectat a un router wifi, va ser francament bona, gairebé òptima. Això ens permetrà avançar molt en les proves una vegada comenci la temporada 2014.

Per una banda, podrem treballar sense problemes en els assaigs amb un nombre indeterminat de tablets, i per una altra banda, donat que tant la Raspberry com el router wifi només necessiten una alimentacio de 12 volts, sembla bastant factible portar l’aplicació a les actuacions, connectant-los a una petita bateria portàtil.

Personalment, encara sóc partidari de buscar una solució per poder muntar el servidor del CastellTab en un tablet –sobretot de cara a les actuacions-. Tanmateix, després d’aquesta prova, veig molt més aprop la possibilitat de començar a utlitzar el CastellTab a començaments de la propera temporada d’una manera ja efectiva, i així provar fins a quin punt pot millorar la dinàmica d’assaigs i actuacions.

dijous, 31 d’octubre del 2013

Assaig amb dos Tablets utilitzant un mòbil de servidor

A l'assaig d'ahir vam muntar les pinyes del 5x9 i del 2x9fm, en ambdós cassos amb el folre a terra.
Vam instal·lar el servidor en el mòbil del Marc Codera -un Samsung S3, em sembla-, vam activar-ne el tethering i vam treballar des de dos tablets, un de 8 polzades i l'altre de 7. Tot i que finalment no vam assajar aquests castells -ahir la presència a l'assaig va ser molt justa-, la prova va ser força interessant perquè m'ha permès treure'n una sèrie de conclusions.

El resultat em va sorprendre negativament pel què fa a la velocitat de resposta del servidor, ja que massa sovint s'encallava en el refresc de la informació. Haurem d'investigar-ne el motiu, però en la meva opinió el problema es troba en la configuració de l'Apache quan s'hi accedeix des de més d'un terminal alhora. També podria ser una limitació del tethering o un problema del servidor de MySQL, però no ho crec. A veure si aquesta setmana m'ho puc mirar, i dimecres vinent podem fer una altra prova.

Sembla que serà interessant que l'aparell que allotgi el servidor, també sigui un tablet on es poguin muntar els castells. Així, a més, ens estalviarem un aparell.

Es va fer palès que un tablet de 7 polzades és massa petit per treballar còmodament. Sembla que, per ser funcional, el tablets haurien de ser d'entre 8 i 10 polzades.

D'altra banda, el Tomàs Pont em va suggerir una idea bastant pràctica: fins ara, quan premem sobre una posició on no hi ha definit cap casteller, el sistema no fa res, a no ser que estiguem en mode Entrada. Canviarem això perquè en el cas que es premi sobre una posició buida el sistema vagi, directament, a la pàgina que permet definir el casteller que anirá en la citada posició, de manera que ens estalviarem un pas.

Ahir també es va fer palés que s'hauran de substituir els elements select de la pàgina on busquem els castellers d'una posició per una llista que s'autocompleti. Això es farà amb Ajax, però de moment m'estic mirant la documentació per estudiar la millor manera de fer-ho.

Se m'està girant feina!!!

dimarts, 22 d’octubre del 2013

Canvi en la manera de fer el canvi de Mode

Ahir vaig canviar la manera de fer el canvi de 'mode' en el moment de definir l'aliniació d'un castell. Ara, enlloc de fer servir un quadre del tipus select faig servir un botó de tipus radi, de manera que només s'hagi de clicar una vegada per fer el canvi, i així guanyar velocitat.

El resultat no em convenç. El motiu és que els botons de tipus radi no donen gaire joc. Crec que ho canviaré per un altre tipus de botó. El més elegant seria fer servir icones, però primer hauré de buscar-les.

dilluns, 21 d’octubre del 2013

Des de finals de maig, estic treballant en el CastellTab, una aplicació web que pretén canviar la manera de fer i de dissenyar les pinyes dels castells. 

Es tracta d'una aplicació basada en HTML5, CCS3, MySQL, PHP, Javascript i, recentment, també en Ajax, de la qual -en aquests moment- en sóc l'únic autor. Totes les eines que s'han fet servir per crear-la són lliures. El propi CastellTab és, al seu temps, una aplicació lliure. En principi, la llicència que faig servir és la GPL3 (versió original: http://www.gnu.org/copyleft/gpl.html, traducció no oficial al català: http://www.softcatala.cat/wiki/GPL3). Si alguna persona en vol obtenir el codi, només cal que m'ho comuniqui.

En el moment actual, el CastellTab ja és funcional, tot i que encara en falten alguns acabats, millorar-ne la usabilitat, i depurar-ne el codi. S'han realitzat algunes proves en els assaigs dels Minyons de Terrassa, i la sensació que en tinc és que ja es podria fer servir tot substituint el sistema actual en paper. Donades les circumstàncies, el més probable és que no sigui possible fer-ne proves més serioses fins al començament de la temporada 2014.

Actualment el CastellTab permet:
  • Crear -sense necessitar coneixements informàtics- les plantilles a partir de les quals es defineixen les alineacions de pinyes, folres i manilles.
  • Mantenir una base de dades amb tots els castellers que poden participar en aquestes pinyes.
  • Mantenir un històric de les alineacions de tots els castells.
  • Crear pinyes basades en les plantilles compatibles.
  • Duplicar castells tenint en compte la compatibilitat de plantilles.
  • Modificar, en temps real, les alineacions de les pinyes, basant-se en la base de dades de castellers, en els paràmetres tècnics de cada posició, i en la presència de cada casteller en l'event. Això inclou introduir, moure, eliminar i/o confirmar els castellers que formen part de cada construcció.
  • Definir els llocs -posicions tècniques- que pot ocupar cada casteller.
  • Definir els events -assaigs, actuacions o ficticis- en els que es poden crear els  castells.
  • Controlar l'assistència dels castellers, tant a la plaça com a l'assaig.
  • Mostrar i/o modificar la posició d'un casteller en tots els castells d'un event.
  • Veure -des d'un punt de vista gràfic- la situació d'assistència -o no-, de cada casteller definit en el castell.
  • Projectar les pinyes per a la seva visualització en els assaigs.

Infraestructura
Per fer funcionar el CastellTab cal un servidor web tipus apache amb PHP, capaç d'accedir a una base de dades MySQL. També és aconsellable -tot i que no és imprescindible- que el servidor disposi de l'aplicació PhpMyAdmin, que permet gestionar la base de dades MySQL d'una manera molt senzilla.

La interfície de treball es fa a través de web. Per tant, els clients només cal que disposin d'un navegador capaç de visualitzar pàgines web HTML5, i que siguin compatibles amb Firefox o amb webkit (Chromium o Safari, per exemple), tot i que també pot funcionar en navegadors Opera, o Microsoft Explorer, tot afegint tres o quatre línies de codi -que jo no implementaré per motius personals-.

Per tant, aquesta aplicació pot fer-se servir tant usant com a servidor un lloc d'internet -en el meu cas faig servir un servidor gratuït i sense publicitat anomenat Hostinger-, com en local, ja sigui instal·lat en un ordinador -portàtil o no-, o bé instal·lat en un mòbil o tablet amb capacitat de fer tethering.

He fet proves molt positives amb un servidor instal·lat en un mòbil Samsung Galaxy S3 mini, fent servir el programa gratuït AndroPHP d'Ömer Ayan, i accedint a ell a través d'un tablet Unotec Troy de 8 polzades -un aparell de gamma molt baixa, val a dir-. També l'he provat instal·lant el servidor en el mateix tablet, amb resultats semblants. Tanmateix, la potència de l'aplicació només es podrà copsar fent treballar alhora diversos tablets contra un mateix servidor, de manera que la feina de muntatge de la pinya d'un castell pugui ser aprofitada pels diferents tècnics que hi estiguin treballant, ja sigui en la mateixa construcció, o en una altra del mateix event.

El disseny de les plantilles s'ha de fer des d'un PC, amb un navegador web amb les especificacions citades prèviament.

Exemple de disseny de plantilla:
Exemple de castell:

 Per a més, informació, mireu el meu perfil.