Sia io, sia Giuliano, viviamo in Canada, dove c'è l'usanza di mostrare il prezzo al netto delle tasse (si pensi all'IVA italiana). È un sistema un po' scomodo a dire il vero, perché bisogna sempre fare i conti a mente per sapere qual è il prezzo reale di un oggetto che si intende comprare. I primi tempi è facile farsi ingannare e spendere più del voluto. C'è anche da dire che viviamo in Ontario, dove le due tasse (provinciale e federale) ammontano al 13%, un numero non sempre semplicissimo da calcolare a mente. Di solito si arrotonda al volo e si fa una stima ad occhio del prezzo effettivo.
La cosa buffa è che ogni qualvolta vi sia stato un tentativo di cambiare le cose in materia di prezzi mostrati ai clienti, i sindacati dei consumatori canadesi si sono opposti, per paura che il governo alzasse le tasse e i consumatori non se ne rendessero conto. Vaglielo a spiegare che l'approccio europeo di includere l'IVA (o più in generale la cosiddetta VAT) è sicuramente più semplice, conveniente e trasparente nei confronti dei clienti.
Ma non scrivo questo post per raccontarvi del paese di adozione di due terzi del team di ThinkCode Labs, Inc.; veniamo perciò subito al dunque.
Abbiamo citato diverse volte come, per le nostre esigenze di e-commerce, ci affidiamo con fiducia a FastSpring. Non rasentano la perfezione, ma sono una buona scelta e ci lasciano avere sonni tranquilli. Purtroppo, essendo un'azienda statunitense, hanno creato un sistema software che mostra ai clienti il prezzo al netto delle tasse (l'IVA per i clienti italiani).
Nostro malgrado, abbiamo dovuto accettare questa loro convenzione sin dall'inizio. Fortunatamente, da pochi giorni hanno aggiunto l'opzione di avere i prezzi inclusivi di IVA. Abbiamo subito colto l'occasione e siamo lieti di annunciare il passaggio a un sistema di prezzi inclusivi di IVA, come solito in Italia.
Questo significa che abbiamo aggiustato i prezzi mostrati nel nostro sito, così da includere l'IVA. Chi ha la partita IVA, potrà sottrarre l'IVA dal prezzo finale durante il checkout, come di consueto.
I nostri prezzi IVA inclusa, saranno i seguenti (fai click per allargare l'immagine):
Ci auguriamo che questo cambiamento all'insegna della trasparenza sia gradito ai nostri clienti.
martedì 23 febbraio 2010
lunedì 8 febbraio 2010
Ich bin ein Smalltalker!

Iniziamo con una nota: scrivere un blog che ha a che fare con le differenze tra vari linguaggi di programmazione e sugli approcci da tenere nei loro confronti è un po' come andare allo stadio e dire che l'arbitro ha ragione => qualcuno si arrabbierà per forza. Nonostante tutto, vediamo se riesco a dirvi qualcosa su alcuni linguaggi senza offendere nessuno e dover mettere immediatamente la mutanda di ghisa. :)
Uno degli aspetti più sorprendenti degli ultimi anni è stato il progressivo affermarsi del poliglottismo nel mondo dello sviluppo di software. Se nei bei tempi andati, che tanto belli non erano, ci trovavamo di solito a lavorare con un solo linguaggio, oggi lo scenario è cambiato completamente. Questa babele linguistica è sicuramente interessante, ma anche un po' disorientante. Va da sé che noi di ThinkCode.TV ci proponiamo di aiutarvi in questo senso.
In particolare, è indubbio che nell'ultima decade si siano affermati decisamente i linguaggi orientati agli oggetti, Java e C# innanzitutto, preceduti di qualche anno da C++. Una delle critiche principali che ha sempre afflitto questi linguaggi è stata una sorta di tradimento, un peccato originale da parte dei rispettivi autori: il non essere abbastanza a oggetti, troppo legati alla sintassi e allo spirito originario del padre di tutti loro, il linguaggio C. Ciò è ad esempio evidente in alcune scelte di compromesso, soprattutto a favore delle performance su hardware dell'epoca, come il dualismo tra tipi primitivi e oggetti in Java e C++, l'uso dell'ereditarietà multipla in C++, il subtyping solo tramite ereditarietà in ognuno di essi, la comune mancanza di rappresentazione di null come un oggetto - classico retaggio di C - e così via.
Nonostante tutto, ognuno di questi gloriosi linguaggi ha un debito di riconoscenza verso un lontano e anziano parente: Smalltalk. Smalltalk infatti è stato il primo linguaggio a oggetti puro ad affermarsi sulla scena, scatenando un certo hype nella prima metà degli anni '80. Pur senza mai diventare un linguaggio mainstream, ha però acceso l'interesse di una comunità che si stava spostando da mainframe verso minicomputer prima e PC poi. Come spesso accade ai precursori, sono loro ad aprire la strada verso l'innovazione, ma poi a godere dei frutti sono coloro che vengono dopo, in grado di costruire sugli errori che hanno condizionato i primi innovatori.
D'altro canto, l'ambiente di sviluppo di Smalltalk, basato sul concetto di immagine, riesce a coniugare un totale dinamismo dei tipi con l'efficacia di strumenti come il refactoring browser. Quando Java ancora non esisteva e gli ambienti integrati di lavoro in C++ muovevano i primi passi, gli Smalltalker godevano di un ambiente estremamente produttivo, che a tutt'oggi il meglio dei vari Eclipse, IntelliJ IDEA e Visual Studio non è in grado di uguagliare in modo compiuto.
Pur non essendo un esteta dei linguaggi di programmazione non posso che riconoscere l'estrema eleganza ed espressività di Smalltalk. L'accento sul message passing ne fa una gemma tra i linguaggi a oggetti. È paradossale che Smalltalk abbia avuto la sua chance maggiore quando l'hardware non era all'altezza delle prestazioni richieste da un linguaggio talmente dinamico, mentre oggi che quella potenza è a disposizione, il linguaggio è stato relegato in una posizione di secondo piano, a voler essere ottimisti.
Eppure, nonostante tutto, Smalltalk rimane un linguaggio fondamentale per ogni sviluppatore che si interessa di programmazione a oggetti. Perché?
Non so quale parabola avete seguito nella vostra formazione, ma nel mio caso io ho sofferto molto del distacco abissale tra mondo universitario e sperimentazione da una parte, industria, business e progetti concreti dall'altra. Mi ci sono voluti svariati anni per arrivare a comprendere appieno il messaggio e la potenza del paradigma a oggetti. Anni in cui le risorse formative per colmare il vuoto erano sì accessibili, ma non in modo talmente interconnesso e conveniente come con la diffusione di internet. Semplicemente mi ci è voluto un po' di tempo per fare click! Al giorno d'oggi è molto più semplice sperimentare con i linguaggi più variegati. Il recente ritorno in voga della programmazione funzionale e la nascita di una serie di ibridi non fa che rendere il panorama ancora più interessante. La potenza di calcolo non manca e la convenienza offerta dai modelli di delivery cosiddetti SaaS non fanno che amplificare le opportunità a disposizione di ognuno di noi. Oggi più che mai una giovane startup con un team molto coeso può puntare su linguaggi e ambienti di nicchia, senza sottostare necessariamente alle logiche generaliste dei linguaggi più comuni.
Il pericolo principale di ogni programmatore, esperto o inesperto che sia, è lo stallo: l'impressione di essere arrivati a un punto in cui bisogna semplicemente seguire la corrente, imparare l'ultima API alla moda del nuovo framework ipertrofico, e vivere di rendita per anni. Intendiamoci, bisogna conoscere quelle API e sapersi muovere su quei framework, ma non ci si può fermare lì. Poi le API invecchiano, i framework passano e quel capitale investito tanto faticosamente negli anni all'improvviso non vale più molto. E uno si ritrova globalizzato in Elbonia.
Ora, ben lungi da me intendere che un corso di Smalltalk metterà al riparo il vostro posto di lavoro da qualunque sommovimento globale, ma quello che posso assicurarvi è che ogni linguaggio che imparerete, ogni passo che muoverete in un mondo diverso da quello a cui siete abituati tutti i giorni, non potrà che arricchirvi. In ultimo, vi renderà dei programmatori migliori nel vostro lavoro quotidiano.
Non solo. Smalltalk in particolare ha il vantaggio di indirizzarvi più naturalmente a confrontarvi in prima persona con i principi fondamentali alla base della programmazione a oggetti. Se le API e i framework svaniscono nel tempo, i principi restano. Conoscere bene e dominare quei principi è dal mio punto di vista un dovere per chiunque si consideri un professionista dello sviluppo di software.
Ho avuto il piacere di lavorare svariati anni con Davide Varvello, il nostro autore del corso di Smalltalk. Al di là del piacere umano del lavorare assieme, nel tempo ho visto crescere in lui l'interesse verso Smalltalk. Un interesse che l'ha portato anche a fare scelte personali drastiche e avventurose e a investire in un'esperienza di lavoro significativa in una di quelle aziende di successo che da lungo tempo puntano su Smalltalk. Il suo punto di vista sul linguaggio è pertanto prezioso e concreto, di prima mano, non teorico e fantasioso.
Penso che sia un'occasione unica e importante, quella di farsi guidare da Davide in un percorso di avvicinamento a un linguaggio talmente piacevole e trascurato nel panorama attuale. Ma soprattutto penso che sia un'esperienza che può cambiare in positivo e in modo permanente la vostra prospettiva sui linguaggi a oggetti. Poi starà a voi: pillola rossa o pillola blu?
Per tutti questi motivi e molti altri ancora anch'io, parafrasando JFK, non posso che dirmi uno Smalltalker. E voi?
lunedì 16 novembre 2009
A una settimana dal lancio
È passata ormai una settimana dal lancio di ThinkCode.TV e devo dire che è stata veramente una prima settimana esaltante. La vostra risposta è stata generosa ed è andata ben al di là delle nostre più rosee aspettative. Giusto per farvi capire, le mie ridicole previsioni di vendita per il primo mese sono state raggiunte già al secondo giorno!
Qualche numero
Concedeteci per il momento di mantenere riservati i termini assoluti di vendita (sia in quantità che in revenues), però qualche dato possiamo rilasciarlo comunque. In termini di percentuali sul fatturato, questo è il contributo dato da ogni corso/screencast a catalogo:

Ovviamente i corsi Guida al Test-Driven Development e Programmare in Python hanno un peso maggiore rispetto allo screencast singolo Introduzione a MacRuby e HotCocoa per via della possibilità di preordinare tutto il corso.
Con nostro grande stupore, abbiamo avuto vendite significative anche al di fuori dell'Italia: il 17.89% delle vendite è dovuto ad acquisti effettuati da Inghilterra, Svizzera, Lituania e Brasile.
Nella stragrande maggioranza dei casi, chi ha acquistato un video ne ha poi acquistato almeno anche un altro, il che è ovviamente indice di fiducia e apprezzamento di quanto stiamo facendo.
Non è mai troppo presto
Personalmente vorrei fare una breve riflessione, trattandosi della mia prima startup vissuta da cofondatore. Quando Antonio mi propose di mettere in piedi quest'idea assieme a Marco il mio primo pensiero è stato "Accipicchia, è un'idea fantastica!" (potete immaginare che non ho usato proprio il termine "accipicchia", ma rende l'idea - diciamo che nella realtà ho usato una colorita espressione del dialetto siciliano).
Da quel momento ad arrivare a questo punto sono passati diversi mesi, mesi nei quali abbiamo corretto il tiro diverse volte, coinvolto svariati autori (Renzo Borgatti è il primo di una nutrita schiera che a poco a poco vi sveleremo), valutato diversi service provider, registrato screencast, sviluppato il sito, creato l'azienda e così via.
L'impegno è stato non banale, soprattutto a ridosso del lancio vero e proprio. Il nostro obiettivo è sempre stato fin dall'inizio quello di mettere sul mercato i primi video nel minor tempo possibile e con il minor investimento, senza che ciò andasse in alcun modo a scapito della qualità. Si è fatto un gran parlare di Lean Startup in tempi recenti e devo dire che fino a questo punto possiamo considerare con orgoglio ThinkCode Labs, Inc. - di cui ThinkCode.TV è il primo progetto - un esempio significativo di come mettere in piedi una startup dalla concezione iniziale fino alla validazione del mercato in condizioni di tempo e risorse estremamente limitati.
Se c'è una cosa che questa esperienza mi ha insegnato fino a questo punto è come sia fondamentale sottoporsi al giudizio del mercato nel minor tempo possibile e imparare da esso.
Qualunque previsione, in quanto tale, è spesso sbagliata e senza un feedback concreto è troppo facile accumulare errori su errori. Le previsioni sulle vendite, in particolare, assomigliano di più alla lettura dei fondi del caffè che a stime vere e proprie. Per cui ancora una volta, cofounder di startup all'ascolto, buttate fuori il vostro prodotto nel minor tempo possibile e correggete continuamente il tiro strada facendo.
Feedback, feedback, feedback
A questo proposito, vorrei segnalarvi due aspetti che hanno segnato qualitativamente il feedback raccolto da tutti voi:
Nessuna magagna?
Siccome come diceva mia mamma, chi si loda s'imbroda, questa marcia trionfale non è esente da magagne. Nei nostri piani l'anteprima Flash avrebbe dovuto essere presente sin dall'inizio, ma una serie di intoppi più che altro burocratico-legali ce ne hanno impedito l'adozione dal lancio.
FastSpring, che fin qui ha svolto un egregio lavoro, purtroppo non è stata in grado di mettere in produzione le nostre correzioni al carrello, con risultati a volte molto buffi sui messaggi che compaiono a schermo.
Agile Day
Vorrei chiudere ricordandovi che venerdì 20 novembre si svolgerà a Bologna il sesto Agile Day. Fino al 22 novembre compreso, se acquistate un video o anche un corso completo con coupon BARRAVERDE il 20% della vendita al netto delle spese verrà devoluto come donazione all'organizzazione dell'Agile Day. Questo riguarda qualunque corso/screencast ovviamente, non solo la Guida al Test-Driven Development e infatti Marco sarà presente all'Agile Day per cercare di convincervi che Programmare in Python è molto più bello, produttivo e soddisfacente che fare TDD. Non ascoltatelo! :) In compenso, fategli tutte le domande che volete e non mancate di sostenere l'Agile Day anche attraverso l'acquisto di uno screencast, una lezione o un corso completo di ThinkCode.TV.
A presto!
Qualche numero
Concedeteci per il momento di mantenere riservati i termini assoluti di vendita (sia in quantità che in revenues), però qualche dato possiamo rilasciarlo comunque. In termini di percentuali sul fatturato, questo è il contributo dato da ogni corso/screencast a catalogo:

Ovviamente i corsi Guida al Test-Driven Development e Programmare in Python hanno un peso maggiore rispetto allo screencast singolo Introduzione a MacRuby e HotCocoa per via della possibilità di preordinare tutto il corso.
Con nostro grande stupore, abbiamo avuto vendite significative anche al di fuori dell'Italia: il 17.89% delle vendite è dovuto ad acquisti effettuati da Inghilterra, Svizzera, Lituania e Brasile.
Nella stragrande maggioranza dei casi, chi ha acquistato un video ne ha poi acquistato almeno anche un altro, il che è ovviamente indice di fiducia e apprezzamento di quanto stiamo facendo.
Non è mai troppo presto
Personalmente vorrei fare una breve riflessione, trattandosi della mia prima startup vissuta da cofondatore. Quando Antonio mi propose di mettere in piedi quest'idea assieme a Marco il mio primo pensiero è stato "Accipicchia, è un'idea fantastica!" (potete immaginare che non ho usato proprio il termine "accipicchia", ma rende l'idea - diciamo che nella realtà ho usato una colorita espressione del dialetto siciliano).
Da quel momento ad arrivare a questo punto sono passati diversi mesi, mesi nei quali abbiamo corretto il tiro diverse volte, coinvolto svariati autori (Renzo Borgatti è il primo di una nutrita schiera che a poco a poco vi sveleremo), valutato diversi service provider, registrato screencast, sviluppato il sito, creato l'azienda e così via.
L'impegno è stato non banale, soprattutto a ridosso del lancio vero e proprio. Il nostro obiettivo è sempre stato fin dall'inizio quello di mettere sul mercato i primi video nel minor tempo possibile e con il minor investimento, senza che ciò andasse in alcun modo a scapito della qualità. Si è fatto un gran parlare di Lean Startup in tempi recenti e devo dire che fino a questo punto possiamo considerare con orgoglio ThinkCode Labs, Inc. - di cui ThinkCode.TV è il primo progetto - un esempio significativo di come mettere in piedi una startup dalla concezione iniziale fino alla validazione del mercato in condizioni di tempo e risorse estremamente limitati.
Se c'è una cosa che questa esperienza mi ha insegnato fino a questo punto è come sia fondamentale sottoporsi al giudizio del mercato nel minor tempo possibile e imparare da esso.
Qualunque previsione, in quanto tale, è spesso sbagliata e senza un feedback concreto è troppo facile accumulare errori su errori. Le previsioni sulle vendite, in particolare, assomigliano di più alla lettura dei fondi del caffè che a stime vere e proprie. Per cui ancora una volta, cofounder di startup all'ascolto, buttate fuori il vostro prodotto nel minor tempo possibile e correggete continuamente il tiro strada facendo.
Feedback, feedback, feedback
A questo proposito, vorrei segnalarvi due aspetti che hanno segnato qualitativamente il feedback raccolto da tutti voi:
- a qualcuno di voi non è piaciuta l'anteprima in formato QuickTime MOV e devo dire che non avete tutti i torti;
- altri ci hanno chiesto se pensavamo di concedere la possibilità di preacquistare corsi completi a fronte di un risparmio significativo.
Nessuna magagna?
Siccome come diceva mia mamma, chi si loda s'imbroda, questa marcia trionfale non è esente da magagne. Nei nostri piani l'anteprima Flash avrebbe dovuto essere presente sin dall'inizio, ma una serie di intoppi più che altro burocratico-legali ce ne hanno impedito l'adozione dal lancio.
FastSpring, che fin qui ha svolto un egregio lavoro, purtroppo non è stata in grado di mettere in produzione le nostre correzioni al carrello, con risultati a volte molto buffi sui messaggi che compaiono a schermo.
Agile Day
Vorrei chiudere ricordandovi che venerdì 20 novembre si svolgerà a Bologna il sesto Agile Day. Fino al 22 novembre compreso, se acquistate un video o anche un corso completo con coupon BARRAVERDE il 20% della vendita al netto delle spese verrà devoluto come donazione all'organizzazione dell'Agile Day. Questo riguarda qualunque corso/screencast ovviamente, non solo la Guida al Test-Driven Development e infatti Marco sarà presente all'Agile Day per cercare di convincervi che Programmare in Python è molto più bello, produttivo e soddisfacente che fare TDD. Non ascoltatelo! :) In compenso, fategli tutte le domande che volete e non mancate di sostenere l'Agile Day anche attraverso l'acquisto di uno screencast, una lezione o un corso completo di ThinkCode.TV.
A presto!
domenica 1 novembre 2009
Nove inviti Google Wave disponibili per i nostri lettori

Come potrete immaginare in questi giorni siamo parecchio impegnati per il lancio italiano di ThinkCode.TV che avverrà a novembre (probabilmente nelle prossime due settimane).
Volevamo però condividere con i nostri lettori, e futuri clienti, degli inviti per Google Wave. Sappiamo che questi sono ancora molto ambiti e Wave è un tool che abbiamo iniziato ad usare sempre più per la gestione della comunicazione all'interno dell'azienda (a proposito, la nostra startup è incorporata in Canada, dove risiedono 2/3 del team, e si chiama ThinkCode Labs, Inc.).
Abbiamo nove inviti disponibili. Le prime nove persone che commenteranno questo post indicandoci il loro indirizzo email (anche offuscato), riceveranno l'invito. Non possiamo garantire che Google vi inviti subito, ma questo tipo di inviti ha solitamente una priorità molto alta per cui è probabile che riceverete un account Google Wave nel giro di una settimana o due al massimo.
martedì 6 ottobre 2009
Pubblicità sul nuovo numero di DEV
Pochissimi sanno che DEV, rivista storica del gruppo Infomedia, è ora disponibile online (per i sottoscrittori delle riviste) con una cadenza di pubblicazione bimestrale (la rivista è anche disponibile in formato cartaceo su Lulu). Il mio articolo "L'erede di Java" apre il numero appena uscito, dedicato al mondo dei linguaggi alternativi per la JVM.
Siamo anche lieti di annunciare che questo numero include una pubblicità a tutta pagina per ThinkCode.TV. Abbiamo scelto uno stile minimale e moderno, come piace all'alieno. :)
Sappiamo che aspettate con ansia l'avvio del sito e siamo davvero in dirittura d'arrivo. Nel frattempo, fateci sapere cosa ne pensate di questa campagna pubblicitaria.
Iscriviti a:
Post (Atom)


