Si voleu aprendre a programar en Go de google, hi ha uns tutorials en diverses llengues, entre elles el Català.
http://go-tour-ca.appspot.com/#1
![]() |
CODI ÇBlog de tecnologia en Català
|
|
![]() |
Si voleu aprendre a programar en Go de google, hi ha uns tutorials en diverses llengues, entre elles el Català.
http://go-tour-ca.appspot.com/#1
Si el composer us peta dient que PHP no té prou memòria, la solució és senzilla.
Actualitzeu la quantitat de memòria que pot usar PHP (CLI – des de línia de comandes) a 1GB o sense límit:
vi /etc/php5/cli/php.ini
Sense límit és:
memory_limit = -1
Si no has fet servir abans vi:
Per a esborrar prem: x
Per a inserir prem: i
Per a sortir prem:
<Esc>:wq<Enter>
wq vol dir guardar (write) i sortir (quit)
O pots fer servir l’editor: nano
S’ha alliberat la nova versió de PHPStorm, que adreça un bon número de bugs.
http://blog.jetbrains.com/phpstorm/2014/01/phpstorm-7-1-1-bug-fix-update-is-available/
Si després d’instal·lar Cassandra per a Linux veieu que no arranca i trobeu al log /var/log/cassandra/output.log el següent error:
The stack size specified is too small, Specify at least 160k
Cannot create Java VM
Service exit with a return value of 1
La solució és ben senzilla, ampliar la mida de l’stack mínim:
Editeu l’arxiu /etc/cassandra/cassandra-env.sh i a la linia on diu:
-Xss128k canvieu el valor per un de més gran, com a mínim 192k, us recomano 256k
De manera que la linia quedarà:
JVM_OPTS="$JVM_OPTS -Xss256k"
Llavors feu:
sudo service cassandra start
I ja ho tindreu
Si et trobes que has fet un git clone d’un repositori anònim que et pertany, hi treballes des de PHPStorm i després vols fer push amb uns canvis, et retornarà un error 403 i no et deixarà.
La solució és tant senzilla com anar a la línia de comandes, entrar al directori del vostre repositori i escriure:
git push
Us demanarà l’usuari i la contrassenya i llestos.
En aquest article explicaré com instal·lar memcache i memcached en Ubuntu/Debian Linux i el seu suport per a PHP.
Per a aclarir els dubtes memcached és la llibreria del sistema operatiu que ofereix el servei de base de dades NoSQL en memòria.
Les llibreries client s’anomenen php5-memcache, la versió més antiga i més estable, i php5-memcached la nova versió amb més funcionalitats.
Assumeixo que teniu apache2 instal·lat i us passo les passes per a instal·lar memcached i tot el necessari per a treballar en PHP.
Per a refrescar els paquets:
sudo apt-get update
En primer lloc ens assegurarem de tenir PHP instal·lat:
sudo apt-get install php5
Instal·larem altres llibreries necessàries per a PHP
sudo apt-get install php5-dev
sudo apt-get install php-pear
sudo apt-get install make
Instal·larem memcached:
sudo apt-get install memcached
Instal·larem el client memcache:
sudo apt-get install memcache
Instal·larem l’extensió per a PHP:
sudo apt-get install php5-memcache
Escriurem l’arxiu per a que PHP carregui la llibreria en iniciar-se l’apache:
echo “extension=memcache.so” > /etc/php5/apache2/conf.d/memcache.ini
I reiniciem l’apache:
sudo service apache2 restart
L’arxiu de configuració és a /etc/memcached.conf
PHPStorm és amb quasi tota probabilitat el millor IDE per a programar en PHP.
El proppassat dia 22 d’Octubre van alliberar la versió 7, que inclou moltes funcionalitats realment interessants al ja prou bo repertori.
Als drupalers que seguiu el bloc us agradarà saber com n’és de bo el suport per a aquest CMS, amb auto-completar per als hooks i identificació de en quin punt es dispara.
Aquí podeu veure moltes de les funcionalitats afegides:
Aquí podeu veure el vídeo:
El proppassat dia 24 d’Octubre s’alliberà la versió 7.0.47 del Servidor Apache Tomcat.
La novetat més important que incorpora és que han manllevat de Tomcat 8 el suport per a WebSockets 1.0 i l’han incorporat.
Back-port the JSR-356 Java WebSocket 1.0 implementation from Apache Tomcat 8.
Cal fer notar que per a aquesta funcionalitat és necessari emprar Java 7.
El proppassat 17 d’octubre foren alliberades les versions 5.5.5 i 5.4.21 de PHP respectivament.
Respecte la 5.4.21, aquesta versió soluciona 10 bugs de la versió anterior.
Per a mi els pitjors són:
Standard:
CLI server:
Datetime:
Filter:
DBA extension:
Els podeu consultar tots al changelog.
Respecte la versió 5.5.5 soluciona uns 20 bugs, podeu veure la llista completa al changelog.
Jo destaco els següents errors solucionats, com els més greus:
Core:
CLI Server:
Datetime:
DBA:
Filter:
FTP:
GD:
OPCache:
Sockets:
SPL:
Standard:
XMLReader:
Si us trobeu amb el problema que no podeu accedir a escriure al porta-papers (clipboard) des de C++ i Qt, i el compilador us retorna aquest error:
error: invalid use of incomplete type ‘class QClipboard’
L’error és molt senzill de solucionar, però he vist persones demanant-ho a Internet, i ningú els ha aportat la solució.
De fet al codi font mostrat no hi ha cap error.
void MainWindow::on_copyButton_clicked() { QString s_copiar_al_clipboard = QString::fromUtf8(ui->textEdit->toPlainText().toStdString().c_str()); QClipboard *clipboard = QApplication::clipboard(); clipboard->setText(s_copiar_al_clipboard); }
Simplement heu d’afegir QClipboard als vostres includes.
#include <QClipboard>
I el vostre codi funcionarà a la perfecció.
Això funciona amb Qt4 i Qt5 sense problemes.
Si des de Smarty volem fer vàries substitucions en una cadena abans demostrar-la podem encadenar modificadors:
{$variable|replace: 'cadena a cercar':'el que hi posarem'}
Per exemple, partint d’aquesta constant definida des de PHP:
define("INDEX_GIMCAMA","La gimcama comença des de ###ORIGEN_CIUTAT_NOM### (###ORIGEN_PAIS###) - ###ORIGEN_CIUTAT_CODI### a ###DESTINACIO_CIUTAT_NOM### (###DESTINACIO_PAIS###) - (###DESTINACIO_CIUTAT_CODI###) i costa ###PREU### ###SIMBOL_MONEDA###");
Aquest és un petit truc per a pàgines multi-llengua, en que les cadenes es defineixen en diferents idiomes, i s’inclou l’arxiu pertinent (require_once).
I tenim present que hem passat a la plantilla de Smarty les variables pertinents des de PHP:
$smarty->assign('s_origen_ciutat_nom', 'Barcelona'); $smarty->assign('s_origen_pais', 'Catalunya'); $s_codi_moneda = 'CAT'; // Aquí hi aniria EUR, USD... en aquests moments polítics en que Europa no s'ha decantat clarament del costat de la Democràcia, perquè no pensar a fer un nou Estat amb moneda pròpia? ;) $smarty->assign('s_codi_moneda', $s_codi_moneda); $smarty->assign('i_decimals', 2); // etc...
Llavors a la TPL (plantilla) faríem:
{$smarty.const.INDEX_GIMCAMA|replace: '###ORIGEN_CIUTAT_NOM###':$s_origen_ciutat_nom|replace: '###ORIGEN_PAIS###':$s_origen_pais|replace: '###ORIGEN_CIUTAT_CODI###':$s_origen_ciutat_codi|replace: '###DESTINACIO_CIUTAT_NOM###':$s_destinacio_ciutat_nom|replace: '###DESTINACIO_PAIS###':$s_destinacio_pais|replace: '###DESTINACIO_CIUTAT_CODI###':$s_destinacion_ciutat_codi|replace: '###SIMBOL_MONEDA###':$s_simbol_moneda|replace: '###PREU###':{$s_preu|money_format:$s_codi_moneda:$i_decimals}}"
Fixeu-vos com al final reemplaço ###PREU### pel preu amb el modificador (modifier) money_format, passant-li |money_format per a que em doni format amb decimals i separadors de milers, i així acabar-ho de brodar.
El proppassat 22 d’Agost s’alliberaren noves versions de PHP.
La 5.5.3 i la 5.4.19.
Aquestes versions arriben prou ràpid, doncs solucionen uns bugs trobats a les versions anteriors certament una mica aparatosos.
Recordeu que PHP 5.3 va arribar a end-of-life al Juliol i ja no el mantenen.
Fa unes hores s’ha alliberat PHP 5.5.2.
Aquesta versió soluciona uns 20 errors, inclós un error de seguretat en el mòdul OpenSSL.
Aquí podeu veure tots els canvis a la 5.5.2 (Changelog).
S’ha alliberat la versió 5.4.18 de PHP. Aquesta versió esmena més de 30 bugs.
Si voleu descarregar els binaris per a windows seguiu l’enllaç.
Us recordo que PHP 5.3 va arribar a la fi de la seva vida “end of life” amb la versió 5.3.27 el proppassat 11 de Juliol.
Tanmateix el 18 de Juliol s’alliberà la versió 5.5.1
Si heu d’afegir l’hora a una plantilla d’Smarty és molt fàcil:
Hora local: {$smarty.now|date_format:"%Y-%m-%d %H:%M:%S"}