Blog

May
30
2007

Non bastava andare SOPRA le città… adesso Google ci porta DENTRO le città! Google Maps si arricchisce di una nuova modalità: Street View!!!

In pratica si vede la mappa della città, con un pupino piazzabile in un punto a piacere… alla fine dello spostamento si apre una finestra in cui è possibile vedere quel preciso punto del mondo in 3 dimensioni e… navigare all’interno dello spazio, grazie alle frecce che consentono di andare avanti e indietro nelle strade!!!

Al momento Street View è attivo solo nelle maggiori metropoli americane (San Francisco, New York, Las Vegas, Miami e Denver), come del resto è stato per tutti i servizi che adesso sono disponibili globalmente.

Non mi resta che lasciarvi il link…

Buon divertimento!!!! :D


Può sembrare strano, ma nell’informatica, come nel linguaggio comune, ci sono dei “nomi propri” ben precisi anche per i concetti “generici”… e ho scoperto che è anche una convenzione ben definita ed ordinata! Si chiamano variabili metasintattiche!

Inoltre, a seconda del contesto, esistono dei nomi per “una cosa”, “due cose” e “tre cose”. Ecco qualche esempio: se dovessimo indicare una persona generica, diremmo Tizio; se ne dovessimo indicare due, Tizio e Caio; tre persone invece sono Tizio, Caio e Sempronio.
Nessuno ha deciso che deve essere così, ma intanto è accettato unanimemente e – cosa più importante – capito da tutti.
Nominare soltanto Caio implica la presenza di Tizio… mentre il povero Sempronio non può esistere senza i primi due (da questo post potrebbe nascere un’associazione per la difesa dei Semproni…).
Analogamente, in matematica si utilizzano sempre x, y e z… usarne altre genererebbe confusione! Nessun libro o nessun prof usa a, b e c… perchè?

Beh, ho cercato un po’ in giro e ho visto che questo vale anche per l’informatica… ed anche in tutte le lingue del mondo! :D
Quando dobbiamo codare una variabile “temporanea” oppure fare un esempio di codice, le variabili che si utilizzano (e che si trovano massicciamente in letteratura) sono sempre (in ordine) pippo, pluto e paperino… e chi, come me, ha seguito il corso di Sistemi Operativi nel CdL in Informatica di Palermo, ha visto con i propri occhi che se ne fa largo uso! :P
La cosa strana è che esistono queste “convenzioni non scritte” in ogni parte del globo: in inglese si usano foo, bar e baz, oppure fee, fi, fo, fum… in francese toto, tata, titi, tutu…. in finlandese huu, haa, hahaa, hihii, hohoo (chissà quante se ne trovano nel codice del kernel linux :)).
Ho letto che in America hanno anche qux, quux, quuux, quuuux,…, ma credo si usino soltanto negli istituti di igiene mentale! :P

Poi ci sono i contesti specifici… ad esempio, in letteratura, quando si devono descrivere i protocolli di rete e le comunicazioni server-client, si utilizzano sempre Alice e Bob per indicare mittente e destinatario dei pacchetti; sempre nello stesso contesto, Sam è un “trusted server” (dal famoso “zio Sam” dei manifesti propagandistici americani) e Trudy è un intruso nel sistema informatico.
Ci sono particolarità anche nei diversi linguaggi di programmazione: in Python si usano spam, ham, e eggs, con riferimento ad uno sketch famosa commedia “Monty Python” che ha dato il nome al linguaggio; nella documentazione di PHP, invece, si trovano sempre needle e haystack (ago e pagliaio), quando si parla di funzioni di ricerca.

Qualcuno si è anche preso la briga di proporre uno standard internazionale, RFC 3042: le RFC (Request For Comments) sono il primo passo per cominciare ad introdurre l’idea di uno standard internazionale nel consiglio dell’IETF (Internet Engineering Task Force).. se la RFC viene approvata, dopo tutte le correzioni possibili, diventa effettivamente uno standard. La prefazione della RFC in questione dice "Finora sono state proposte 212 RFC, a partire dalla [RFC269], contenenti i termini ‘foo’, ‘bar’ o ‘foobar’ come variabili metasintattiche senza alcuna spiegazione precisa o definizione. Questo può sembrare banale, ma gran parte di nuovi arrivati, soprattutto se non di madrelingua inglese, hanno avuto problemi nella comprensione dell’originie di questi termini. Questo documento rimedia a questa mancanza.
L’articolo spiega con assurda precisione l’origine di queste parole apparentemente senza senso. :|

Però… che nome strano! Cosa significherà esattamente “variabili metasintattiche”? Dalla relativa voce del Jargon File (il dizionario del gergo hacker):
Metasyntactic variables are so called because (1) they are variables in the metalanguage used to talk about programs etc; (2) they are variables whose values are often variables (as in usages like “the value of f(foo,bar) is the sum of foo and bar”). However, it has been plausibly suggested that the real reason for the term “metasyntactic variable” is that it sounds good.
(le variabili metasintattiche sono così chiamate perchè (1) sono variabili nel metalinguaggio usato per parlare di programmi ecc; (2) sono variabili i cui valori sono spesso variabili (in esempi come “il valore di f(foo, bar) è la somma di foo e bar”). Comunque, è stato verosimilmente proposto che il vero motivo per l’uso del termine “variabili metasintattiche” è che suona bene. (ndr: :lol: ))

Ehm… adesso è il momento di spiegare da dove è nato il mio interesse sull’argomento:

Nick : compà, perchè non vieni a lavorare in Francia?
Bruno: mmmm no, io odio il francese. poi mi obbligherebbero a programmare con i commenti e le variabili francesi… pippò, plutò… :P
Nick : lol… no, qua si usano toto e tata
Bruno: … :| mi****a flash!

A volte diamo troppe cose per scontate… ;)