Errore aggiornamento Fallout 3
Tentando di aggiornare Fallout 3 alla versione 1.7, tramite relativa patch, può capitare di incappare nel seguente errore:
“The ordinal 5360 could not be located in the dynamic link library xlive.dll.“
Questo problema si presenta qualora non si ha installata la piattaforma Games for Windows LIVE di Microsoft.
Una volta installata anche l’applicazione della patch andrà a buon fine.
link:
Fallout 3 – Patch ufficiale 1.7
Piattaforma Games for Windows LIVE
Script intervista alle piante
Intervista alle Piante
La natura è integrata nelle grandi città? Molti esperti hanno detto la loro a riguardo, hanno studiato il problema e hanno proposto progetti. Ma qualcuno si è mai preoccupato dell’opinione delle piante? Lo abbiamo fatto noi.
Stream video FLV in Windows 2003 Server
Tentando di accedere via browser ad un Flash video presente all’interno di un Microsoft Windows 2003 Server, esso funzionerà solamente se avrà l’estensione SWF mentre se si tratta di un file FLV si potranno incontrare svariati problemi.
Come ad esempio può capitare utilizzando il player flash flowplayer, con l’errore:
200 stream not found netstream.play.streamnotfound clip
Soluzione:
Queste modifiche devono essere apportate all’interno del server.
1. In Windows 2003 Server, aprire Internet Information Services Manager.
2. Aprire Local Computer Server.
3. Click destro e selezionare proprietà.
4. Selezionare la scheda MIME Types.
5. Aggiungerne una nuova con New ed inserire le seguenti informazioni:
- Estensione associata: .FLV
- MIME Type: flv-application/octet-stream
6. Selezionare ok.
7. Riavviare il servizio WWW.
(via: http://kb2.adobe.com/cps/194/tn_19439.html)
Map – Standard Template Library – C++
Dato che da qualche tempo sto lavorando a stretto contatto con il C++, per la precisione in ambiente Borland C++ Builder, IDE che personalmente reputo pessima ma, a quanto pare, la politica aziendale non è del mio stesso parere, ho deciso di inaugurare una serie di post legati a questo ambito. Di volta in volta prenderò in esame elementi del linguaggio, funzioni e algoritmi utilizzati e soprattutto problem solving di vario genere.
Dopo una breve introduzione è giusto il momento di iniziare. Come primo post prenderò in esame una struttura dati che sto utilizzando in questi giorni, la map (o mappa), contenuta all’interno della Standard Template Library (STL) di C++, libreria che definisce un insieme di strutture dati generiche, Iteratori ed algoritmi.
La classe template map è un contenitore standard C++ e consiste in un array associativo ordinato di chiavi uniche e valori ad esse associati.
std::map<Key, Data, Compare, Alloc>
Dichiarazione:
map <key_type, value_type [, comparing_option [, memory_allocator] ]> map_name
La dichiarazione base necessita solamente del tipo della chiave e del tipo del valore ad esso associata. Mentre comparing_option e memory_allocator sono parametri opzionali.
Esempio:
map<int, int> mappa;
In questo caso sarà creata una mappa che ad ogni chiave di tipo intero associa un valore sempre di tipo intero.
Inserimento dei dati:
map[key] = value;
L’inserimento dei dati può avvenire in maniera diretta indicando la key della mappa e il valore da associare all’elemento corrispondente.
Esempio:
mappa[10] = 5;
Considerando la mappa dichiarata nell’esempio precedente, cioè di tipo , assegno il valore 5 alla chiave 10 della mappa.
Lettura dei dati:
map[key];
Analogamente all’inserimento, anche la lettura può avvenire in modo diretto, sarà sufficiente indicare la chiave della mappa della quale si vuole conoscere il valore ad essa collegato.
Esempio:
mappa[10];
Facendo riferimento all’esempio precedente, nel quale veniva inserito un elemento nella mappa, l’istruzione qui riportata restituirà il valore della mappa associato alla chiave 10, in questo caso 5.
-
Iterator:
Un ottimo metodo per accedere, sia in fase di lettura che in fase di scrittura, ai dati presenti in una mappa è mediante l’uso degli Iterator. Un Iterator è un oggetto che consente di visitare tutti gli elementi contenuti in un altro oggetto, tipicamente un contenitore, senza doversi preoccupare dei dettagli di una specifica implementazione.
(Nota: prossimamente verrà pubblicato un approfondimento riguardante gli Iterator nello specifico)
Dichiarazione di un Iterator relativo ad una map:
map<key_type, value_type>::iterator iterator_name;
Esempio:
map<int, int>::iterator it;
Viene creato un iteratore di nome it facente riferimento ad una mappa di int.
Accesso agli elementi:
Grazie agli iteratori si può scorrere la mappa ed aver accesso ai valori degli elementi di cui essa è composta. Questo avviene indicando il numero dell’elemento di cui è composta la mappa.
(*iterator_name).element_number;
oppure
it->element_number;
La coppia di elementi, posizionata in corrispondenza dell’Iterator, sarà sempre disponibile è corrisponderà a:
(*it);
Esempio:
(*it).first; it->first; (*it).second; it->second;
Nel nostro caso il primo esempio ritornerà il valore della chiave stessa, mentre il secondo ritornerà il valore questa volta associato alla chiave.
La “navigazione”, ovvero lo scorrere degli elementi di tipo mappa, mediante l’Iterator è eseguito tramite l’incrementazione it++ o la decrementazione it– dell’Iterator.
breve esempio riepilogativo:
#include <map>
#include <iostream>
int main ( )
{
typedef std::map< int, int > Map;
Map map;
map[ 0 ] = 1;
map[ 2 ] = 3;
Map::iterator p = map.begin( );
std::cout << "map[ " << p->first << " ] = " << p->second << ";\n";
}
SEO Keywords come e dove posizionarle
La ricerca delle keywords è un’attività fondamentale per chi vuole cimentarsi nella Search Engine Optimization (SEO), lo scopo principale è quello di trovare sempre valide e rilevanti referenze per i vari motori di ricerca. Per un sito internet già funzionante è utile scoprire quali parole portino già alle proprie pagine e, partendo da questa base, cercarne delle altre per aumentare sempre di più il traffico verso il proprio sito.
Le Keywords si possono raggruppare, in modo molto generico, in due sottogruppi:
- popolari, cercate spesso, ma con una maggior concorrenza
- rare, cercate meno, ma con minor concorrenza
Quando si devono scegliere le keywords è importante aver ben chiaro quale sia il target del nostro sito, se si vuole puntare sulla quantità o sulla qualità delle vesite. Ad esempio se ho a che fare con un sito che guadagna in base al numero delle visite, la priorità sarà quella di aumentare il numero di accessi e per far questo l’uso di parole chiave popolari potrebbe essere utile, se invece il mio scopo è vendere dei prodotti, allora sarà di maggior importanza puntare sulla qualità degli accessi e quindi una scelta accurata di parole chiave potrebbe essere la mossa vincente.
Dove posizionare le keywords
Cosa di fondamentale importanza è sapere che l’uso di buone keyword non si applica solamente alla parte testuale della pagina, bensi anche ad elementi quali:
- Domini e più in generale tutti gli URLs delle pagine
- link in entrata ed in uscita
- campi alternativi di descrizione del contenuto (es. l’attributo alt nelle immagini)
- header (elementi del tipo <h1></h1>)
Keywords nel Tag <title>
Il titolo delle pagine è ciò che viene mostrato nei SERPs (Search engine results page in italiano pagina dei risultati del motore di ricerca), quindi deve necessariamente essere conciso e rilevante. Vanno evitati titoli generici, come ad esempio introduzione, o limitazioni al semplice nome del sito, vanno invece indicate le caratteristiche peculiari della pagina e ciò che serve a tipizzarla rispetto alle altre. Il titolo delle pagine dovrebbe contenere specifiche e mirate keywords formanti una frase atta a descrivere, nel modo più accurato possibile, la pagina stessa, senza però eccedere con il numero di parole, anche perchè in questo caso potrebbe non apparire per intero all’interno dei risultati di ricerca. Altrimenti si può valutare di utilizzare un titolo lungo, però facendo attenzione ad inserire in testa le keywords di maggior peso.
Keywords nell’URL
Indicare le keywords anche all’interno delle URLs può risultare molto utile. I motori di ricerca indicizzano le pagine anche ai link che portano ad esse, di conseguenza se il link che porta alla pagina contiene delle parole chiavi rilevanti, sia a livello di testo che di URL, la possibilità che vengano trovate raddoppiano. Non è da sottovalutare anche il fatto che il link ad una pagina che contiene delle keywords che la descrivono è sicuramente più facile da ricordare di una che contiene dei riferimenti alle key di un database. Ultimo ma non per questo meno importante è il fatto che, una volta visualizzata la lista dei motori di ricerca, anche il titolo della pagina è mostrato e,se evidenziato, attira maggiormente l’attenzione dell’utente.
Keywords nel Tag <meta> Description
Il testo contenuto nei Tags <meta> non viene visualizzato dal browser quando una pagina viene mostrata, invece è ampiamente utilizzato dai motori di ricerca, sia come campo con alta rilevanza in cui effettuare le ricerche, sia come testo visualizzato all’interno delle SERPs. La scelta di una buona description è fondamentale, sia per dare un’idea precisa all’utente, che scorre la lista dei risultati della ricerca, di cosa contiene il sito, sia perchè gli algoritmi dei motori di ricerca danno particolare peso alle keywords trovate in questo elemento.
<meta name="description" content="Ottimizzazione delle descrizioni inserendo keywords specifiche. Questo testo può essere un breve paragrafo. Ricordarsi di inserire le parole chiavi più importanti in testa alla descrizione.">
In alcuni casi può capitare che la descrizione contenuta nel Tag Description sia ignorata a favore di quella contenuta in siti web di directory quali Dmoz.org o Yahoo! Directory. Per risolvere questo problema è stato appositamente creato il Tag <meta> Robots, esso infatti ha il compito di indicare quali directory ignorare, questo per “vincolare” la ricerca all’interno dei propri Tag Descrioption.
<!-- Dice ai motori di ricerca di non usare la OPD description di Dmoz.org--> <meta name="robots" content="noodp" />
Keywords nei Tag Header
L’utilizzo di keywords all’interno dei Tag Header è consigliabile, oltre per consentire una maggior accessibilità alle pagine, in quanto la presenza di parole chiave in questi elementi assume un maggior valore rispetto a quelli contenuti nel semplice testo. E’ sempre opportuno non abusare di tali Tag, ad esempio all’interno di una pagina è buona regola mantenere solamente un Tag di tipo <h1></h1>, in quanto l’uso sconsiderato, oltre a minare la buona struttura della pagina, può portare ad una penalizzazione di page ranking.
Keywords nei Link
Quando si parla di link vanno sempre considerate due categorie inbound ed outbound, cioè link che portano dall’esterno al proprio sito e link che portano dal sito ad altri siti esterni. Le keyword trovate nei link hanno un buon peso, se poi questi link sono anche abbinati a URL con a loro volta altre keywords il valore può solo essere incrementato. Di conseguenza è opportuno scegliere oculatamente le parole chiave da inserire sia nei link che negli URL, tenendo però presente che questi collegamenti, oltre che dai motori di ricerca, dovranno essere leggibili anche dagli utenti. Un accorgimento molto utile per gli inbound link può essere quello di evitare l’utilizzo di titoli poco significati (ad esempio avanti, indietro o leggi tutto), a favore di link semanticamente corretti e contenti specifiche keywords.
Adozione licenza Creative Commons
Dato che il blog sta rapidamente incrementando il suo numero di accessi e dato che qualche giorno fa è stata postata la traduzione di un mio articolo nel forum spagnolo di Drupal, credo che sia arrivato il momento di incominciare ad utilizzare una licenza per tutto quello che è stato, che è e che sarà pubblicato all’interno di questo blog. Chiaramente la licenza in questione sarà libera ed orientata alla condivisione dei contenuti creativo/intellettuali.
Per questa ragione ho deciso di appoggiarmi alla licenza Creative Commons
e per la precisione la BY-NC-SA.
Di conseguenza ognuno è libero di riprodurre, distribuire, comunicare al pubblico, esporre in pubblico, rappresentare, eseguire e recitare quest’opera, alle seguenti condizioni:
CC-BY Attribuzione (Attribution)
Bisogna sempre indicare l’autore dell’opera (attributo obbligatorio) in modo che sia possibile attribuirne la paternità.
CC-NC Non Commerciale (Non Commercial)
Non sono consentiti usi commerciali dell’opera creativa.
CC-SA Condividi allo stesso modo (Share Alike)
Si può modificare l’opera ma l’opera modificata deve essere rilasciata secondo le stesse condizioni scelte dall’autore originale.
Per approfondire rimando alla pagina ufficiale italiana dell’organizzazione Creative Commons.
Traduzione articolo su Drupal.org.es
Con mio stupore, qualche giorno fa, è apparso all’interno del forum di Drupal.org.es, punto di riferimento della comunità spagnola di Drupal, la traduzione integrale di un mio articolo di problem solving legato all’istallazione in locale del CMS.
La discussione relativa è visualizzabile a questo indirizzo: http://drupal.org.es/node/9196.
Colgo l’occasione per ringraziare l’utente fradague, artefice di tale traduzione, e ne riporto il testo integrale:
Durante la instalación de Drupal, el primer arranque del navegador, puede ejecutar en este error:
Function ereg() is deprecated in C:\Web\includes\file.inc on line 926Al parecer el problema se produce porque la versión actual de Drupal, a 6,17, no admite la versión 5.3 de PHP (ese problema será resuelto con el lanzamiento de la versión 7 de la CMS).
Para resolver este problema basta con añadir un @ a un comando en el archivo file.inc. A continuación, abra un editor de texto el contenido del archivo dentro de la carpeta / include / y buscar la siguiente línea de código:
elseif ($depth >= $min_depth && @ereg($mask, $file)) {En mi caso fue en la línea 926, que sin embargo se muestra tras la pantalla del error. y añadir una @ antes del comando ereg ($ máscara, $ archivo).
Usted debe obtener la siguiente línea de código:
elseif ($depth >= $min_depth && ereg($mask, $file)) {Guardar y cargar la página para instalar Drupal y verá que todo está funcionando correctamente.
Nokia 5230 e Mac OS X – Sincronizzare iSync
Tentando di sincronizzare il proprio Nokia 5230 con iSync su Mac OS X ci si accorge che il dispositivo non è riconosciuto dal sistema operativo. Questo perché Nokia, al momento in cui sto scrivendo, non ha ancora rilasciato un driver specifico per questo modello di smartphone.
Per risolvere questo inconveniente, in attesa che Nokia rilasci un plugin ufficiale, è possibile utilizzare una versione modificata del file creato originariamente per 5800XM, disponibile per il download a questo indirizzo.
Per installarlo è sufficiente estrarre il file
Nokia_5230_isync_plugin_2v1.phoneplugin
e posizionarlo nella cartella
/Library/PhonePlugins
A questo punto sarà possibile vedere e, di conseguenza, sincronizzare iSync con il proprio Nokia 5230.

