Technology Experience
.NET WorldSoftware

Catture screenshot dall’emulator WP7! Ecco il tool!

Se siete sviluppatori di app per Windows Phone 7, non potete perdere questa utility free liberamente scaricabile da questo url:

http://www.innovativetechguy.com/?p=13

Questo tool permette semplicemente di catturare screenshot dall’emulatore WP7, senza dover far tutto in manuale. Mi spiego meglio. Per poter pubblicare un’applicazione sul marketplace, è assolutamente obbligatorio avere almeno uno screenshot (fino ad un massimo di 8) della vostra app: questo screenshot apparirà su Zune o direttamente sul telefono, e consente all’utente finale di dare un veloce sguardo all’applicazione prima di scaricarla ed acquistarla.

Prima dell’arrivo di WP7 Simulator Cropper questa operazione andava fatta a mano, cioè: ALT+PrintScreen per catture il desktop, poi un bel Paste nel vostro programma di grafica preferito, poi un ritaglia della porzione di schermo relativa alla vostra app nell’emulatore, poi su Resize in 480×800, ed infine salvare l’immagine finale da qualche parte sul vostro PC.

Con WP7 Simulator Cropper avviene in pratica tutto in automatico. Avviate l’emulatore, deployate l’app, lanciare il tool e cliccate sul pulsante Take Screenshot per ottenere direttamente un bel .png. Fantastico! L’unica cosa a cui prestare attenzione è assicurarsi di aver attivato l’opzione “Marketplace” e di aver settato lo zoom level dell’emulatore a 100%, perchè il crop dell’immagine – ovviamente – deve avvenire con determinate dimensioni.

Insomma, secondo me un tool di questo tipo accelera notevolmente l’operazione di “cattura screenshots per il marketplace” Sorriso e – visto che Microsoft non ci ha pensato – thanks to Cory Smith per il suo lavoro.

Send to Kindle
Community

Piloti Virtuali Italiani nel prossimo weekend

Da qualche anno ormai faccio parte dell’associazioni Piloti Virtuali Italiani. Di cosa si tratta? PVI è un’associazione no-profit che ha lo scopo la promozione, la diffusione e l’approfondimento della cultura aeronautica. E lo fa sfruttando molti canali. PVI dispone di sedi locali sparse sul territorio nazionale: Milano (quella a cui appartengo), Torino, Piacenza, Verona, etc. etc. Abbiamo simulatori che vanno dal classico PC con Microsoft Flight Simulator X, a simulatori estremamente più complessi e realistici come questo che ho fotografato qualche mese fa a Verona. Ci incontriamo settimanalmente per volare assieme, voliamo virtualmente, partecipiamo a fiere & mostre. Il tutto con l’unico scopo di volare seriamente, esattamente come farebbero piloti reali – rispettando tempi, piani di volo, quote, velocità, etc. etc. Insomma, anche se voliamo davanti al PC in Rete, studiamo i normali libri di aeronautica, che sono mattoni enormi (ndr: altro che WPF, WCF e simili).

E’ davvero troppo complesso cercare di spiegare tutto ciò che riguarda PVI in poche righe, perciò arrivo al dunque.

Il prossimo weekend (sabato 26 e domenica 27) Piloti Virtuali Italiani parteciperà all’Hobby Model Expo alla Fiera di Novegro (MI).

Il sito ufficiale è http://www.parcoesposizioninovegro.it/. Avremo un nostro stand con un certo numero di simulatori di volo, dal più semplice al più complesso, disponibili a tutti coloro che vorranno provarli. Vi faremo decollare da Linate e sorvolare (forse!) la città di Milano. Vi faremo provare l’ebbrezza di volare con il Cessna oppure con un bell’Airbus A320.

Fino a qua non c’è alcuna novità, visto che PVI ha già partecipato a questa manifestazione. La vera grande novità è che il prossimo weekend saremo affiancati dalla scuola di volo AirWolf di Dovera (LO), che si occuperà di elargire – a chi avrà la pazienza necessaria – tutta una serie di lezioni teoriche riguardanti il volo. Perchè l’aereo vola? Perchè l’aereo ha bisogno di prendere velocità per staccare le ruote da terra? Quando l’aereo non vola più? Perchè il comandante siede alla sinistra, ed il copilota sulla destra? Cosa sono quei rumori che si sentono durante il decollo di un volo di linea? E molto altro ancora…

Quindi, uniremo le forze per rendere Piloti Virtuali Italiani un po’ più interessante nell’ambito di quella fiera: loro si occuperanno della teoria, mentre noi Piloti Virtuali vi metteremo alla prova, in base alle vostre capacità o a quello che ci chiederete.

Se volete venire a trovarci, noi saremo lì!

Vi aspettiamo!

Send to Kindle
.NET World

Windows Phone 7? Un ecosistema che cresce sempre di più

In uno dei miei precedenti post ricordo di aver assegnato un punto di vantaggio a WP7 rispetto ai concorrenti (Android e iPhone), quando dicevo che il contributo non solo di Microsoft, ma anche di tutti gli altri developers esterni avrebbe prodotto in poco tempo un gran numero di apps, ma anche di librerie, che avrebbe permesso a sviluppatori come me (che sono in fondo alla pipeline, il developer finale) di produrre applicazioni sempre più interessanti ed appetibili al consumer.

Ora, se teniamo a mente che WP7 è arrivato – almeno per noi in Italia – neanche sei mesi fa (eravamo a metà settembre), tutto questo sinceramente lo trovo stupefacente e meraviglioso. Ecco un breve elenco di varie componenti/librerie riguardanti l’ecosistema WP7 che sono disponibili in questo momento (e sicuramente, al 100% me ne sto dimenticando qualcuna). L’ordine è ovviamente sparso, e dipende da come le cose mi vengono in mente.

  1. Si parla già di un update dell’OS – che inizialmente ci si aspettava a Gennaio, mentre dovrebbe arrivare fra qualche settimana
  2. Nokia ed Acer hanno annunciato un loro telefono WP7 entro il 2011
  3. Libreria su CodePlex : Silverlight Toolkit
  4. Libreria su CodePlex : Windows Phone 7 Isolated Storage Explorer
  5. Libreria su CodePlex : My WP7 Brand (che include classi per leggere i feed Twitter degli utenti)
  6. Libreria : Windows Phone Shake Gestures Library
  7. Documentazione : Building User Interfaces for Windows Phone 7
  8. Libreria : Windows Phone 7 Status Indicator Control
  9. Libreria su CodePlex : Windows Phone Controls
  10. Libreria su CodePlex : Windows Phone 7 Extension Framework
  11. Libreria su CodePlex : Caliburn Micro- A Micro-Framework for WPF, Silverlight and WP7
  12. Libreria su CodePlex : MVVM Light Toolkit
  13. Libreria : Windows Phone GPS Emulator (segnalato da Matteo Pagani)
  14. Libreria su CodePlex : WP7 GPS Simulator (utile per sviluppare applicazioni gps-enabled senza dover scorrazzare per la città)
  15. Libreria su CodePlex : Windows Phone Cryptographic Storage
  16. Libreria su CodePlex : Coding4Fun Tools
  17. Libreria su CodePlex : Windows Phone 7 database
  18. Un gran numero di librerie non comunque dedicate specificatamente a WP7, ma comunque utilizzabili senza problema: PlayMe, Beintoo, e non solo

Ho la completa e sicura certezza di aver elencato un numero esiguo di tutto il materiale disponibile. Se qualcuno ha qualcosa da segnalare, e mi mette un commento, mi impegno a mantenere nel corso del tempo l’elenco qui sopra: sarebbe proprio bello avere una raccolta complessiva in cui trovare questo o quello, a seconda delle proprie necessità.

Un piccolo consiglio? Indipendentemente dal client Twitter, che utilizzate (io uso TweetDeck), tenete sempre attiva la ricerca sugli hashtag #wp7 e #wp7dev: a costo zero e senza alcun impegno verrete in pratica notificati di nuove app disponibili, e più in generale di tutto ciò che riguarda WP7.

Per concludere: tutto questo in meno di 6 mesi di vita effettiva. Cavolo! Cosa volere di più, in ambito WP7?

Ecco, un’idea ce l’avrei – forse un marketing migliore (ma qui noi developer, CodePlex, librerie possiamo fare poco o nulla), perchè se la gente non conosce il prodotto, non lo acquista (o è più restio a farlo). E se nessuno lo acquista, nessuno scaricherà ed acquisterà le nostre app, e quindi…è il cane che si morde la coda!

Insomma, lunga vita a Windows Phone 7!

Send to Kindle
CommunitySoftware

Qualche statistica dalla dashboard del mio marketplace

Ieri pomeriggio ho speso qualche minuto con Lorenzo per dare un’occhiata alle statistiche di vendita delle mie 9 applicazioni Windows Phone 7 attive in questo momento sul marketplace. Sono rimasto piuttosto soddisfatto.

Il numero totale venduto è 12.622. Le mie 9 app in questo momento sono le seguenti:

  • Prova del Cuoco (ITA) (freeware)
  • Nove Colli (ITA/ENG) (freeware)
  • FSX Viewer (ENG) (freeware)
  • RPG Roller Dice (ENG) (payware)
  • Keyzard Saloon (ENG) (payware)
  • Quiz – Province (ITA) (payware)
  • Quiz – Capitali (ITA) (payware)
  • Keyzard (ITA) (freeware)
  • Bank Finder (ITA) (freeware)

Tra parentesi ho messo la localizzazione dell’applicazione. Da notare che tutte quante le ho messe in vendita worldwide, anche se sono italiane, perchè…voglio dire…non ci vedo nulla di male se uno in Germania o in Indonesia vuole scaricare un’app in italiano, no? Ho evidenziato in blu quelle a pagamento, mentre in rosso ho messo quelle freeware (5, che è il limite massimo). Da notare che TUTTE quelle a pagamento hanno la trail, che è funzionalmente identica a quella paid, solo che ogni tanto appare qualche pubblicità, qualche attesa, oppure l’app si chiude dopo n minuti di utilizzo, etc. etc.

Il primo Keyzard fa sicuramente la parte del leone. Ecco il grafico:

Ho messo un filtro piuttosto largo (fin troppo!), prendendo dal 1° Settembre 2010 fino al 31/01/2011. Ricordo tuttavia che l’apertura del marketplace è avvenuta intorno al 9 Ottobre (che è il punto dove il grafico comincia a salire).

L’altro Keyzard, Keyzard Saloon, che – lo ripeto – secondo me è nettamente superiore da tutti i punti i vista rispetto al primo, è piuttosto inferiore. Ricordo che questo è sia in italiano che in inglese, che ha classifiche on-line, che è molto più intelligente ed utile come gameplay. Però evidentemente è passata più inosservata.

Ed infine, giusto per curiosità, ecco la mia prima app, Prova Del Cuoco, che risulta installata su 442 device Windows Phone 7 (222 in Italia, 73 negli USA, 25 in Germania, 24 in UK e via via tutti gli altri). Da considerare che è un’app prettamente italiana, che probabilmente interessa ad un pubblico particolare e sicuramente non tecnofilo, insomma, lo considero un buon risultato.

Che ne dite?

Send to Kindle
Community

Partecipazione all’HackItaly, una giornata da raccontare

Chi di voi mi segue su Twitter, con tutta probabilità sa già quello di cui sto per parlare. Ieri ho partecipato alla prima edizione di HackItaly, a Milano. Di cosa si tratta? Beh, tenetevi forte, perchè fra tutte le giornate di tipo community alle quali ho preso parte negli anni scorsi, quella di ieri è sicuramente la più “fuori dagli schemi”, la più originale e la più coding-oriented.

Tagliamo corto. L’HackItaly di ieri era a tutti gli effetti un contest della durata di 10 ore circa, nelle quali i team dovevano sviluppare un’applicazione di qualsiasi tipo, ovviamente sulla piattaforma su cui ci si sente più skillati. Io, Matteo Pagani e Giorgio Formica abbiamo realizzato un’app per Windows Phone 7, ma ovviamente altri hanno lavorato su iPhone, su Android o sul più classico Web. La location era la Blend Tower, a Milano, a due passi (ma veramente due) dalla Stazione Centrale. Un’altra particolarità del contest HackItaly era la possibilità di utilizzare alcune API esterne, per espandere le capacità della propria app: nella nostra app Hack-A-Banda, per esempio, abbiamo utilizzato le API di:

La prima libreria consente di ricercare artisti, musiche, di mandarle in streaming, di visualizzare copertine dell’album, etc. etc. La seconda libreria consente di migliorare la user-experience per quanto riguarda il gaming, quindi: gestire classifiche on-line, assegnare reward al giocatore, etc. etc. Hack-A-Banda è stata ideata e realizzata in circa 10 ore di programmazione.

Alle ore 20:00 circa tutti i team hanno presentato le proprie app, sia che fossero Web o Mobile. Oltre a questa presentazione pubblica, abbiamo compilato una pagina sul Wiki ufficiale dell’HackItaly di ieri, indicando le features principali della nostra app, quali API sono state usate, etc. etc.

E alla fine, Microsoft ci ha premiato. Il buon Giorgio si è portato a casa (rullo di tamburi) un LG Optimus 7, pienamente meritato, anche perchè era l’unico del nostro team che non aveva WP7, per cui… Smile Io e Matteo, già possessori sin dal primo giorno del telefono, ci siamo portati a casa uno splendido Microsoft Arc Mouse, davvero ottimo, considerando che nello zaino avevo un vecchio mouse Logitech che ormai stava passando a miglior vita! Oltre chiaramente a magliette, spillette, una magnifica chiavetta USB da 16GBytes ed un adesivo “Make Web Not War!” appiccicato sul mio notebook! Wow! Smile Ma il premio migliore – e non è una frase fatta – sono le belle risate che mi sono fatto durante la giornata, mentre si programmava e si creava.

I punti di forza di una giornata come quella di ieri
La giornata è stata sicuramente positiva, sotto molti punti di vista. Innanzitutto, c’erano rappresentanti e developer delle API citate sopra (che non sono tutte – per una lista completa andate qua), quindi in caso di dubbi, richieste particolari, si poteva interloquire con i diretti interessati. Inoltre, cosa che in passato non avevo mai fatto, scrivere codice con gli amici di community è sempre divertente. Mi auguro sinceramente che questo approccio venga adottato anche dalle classiche community .NET, anche in un giorno non lavorativo, anche senza premi, perchè secondo me ne vale la pena.

In secondo luogo, vedere le idee che sono nate nella testa di altri developer a me lascia sempre uno strano effetto, una sorta di “ma perchè non ci ho pensato io?” – e a me ‘sta cosa entusiasma.

Insomma, per concludere, davvero grazie a tutti. Grazie a chi ha organizzato la giornata di ieri, grazie a tutti i partecipanti, grazie ai componenti del mio team, grazie a Microsoft ed a Lorenzo, grazie a RedBull, grazie al catering. E’ stata davvero una gran bella giornata, spero di poter ripetere in futuro altre giornate così, organizzate bene o male allo stesso modo, perchè ne vale veramente la pena!

Send to Kindle
My personal life

Breve riassunto del 2010

Dunque, vediamo un po’ di ricapitolare e di riassumere quello che mi è accaduto durante quest’anno.

  • non sono andato in ospedale, come invece è accaduto nel 2009, nel 2008 e via dicendo…
  • ho visitato le Isole Tremiti per la seconda volta
  • sono diventato dipendente (esattamente dall’11 Gennaio)
  • ho decisamente ripreso a scrivere più frequentemente sul mio blog
  • ho visitato Roma, Barcellona ed Amsterdam (e Morbegno, non dimentichiamolo!)
  • lavorativamente parlando, non sono mai stato così vicino al Lato Oscuro Web della Forza della Programmazione
  • ho diminuito drasticamente il numero di km percorsi con la mia macchina
  • ho cambiato cellulare
  • ho spostato dopo moltissimi anni il mio “ufficio” da camera mia alla mansarda (voto di questa manovra: 10)
  • ho assistito ad una trasmissione streaming in diretta
  • sono stato intervistato
  • ho scritto davvero un buon numero di applicazioni, da quelle semplici per wp7, a cose più complesse, riguardanti tanti “domini” diversi
  • ho preso il mio primo e-book reader
  • ho assistito ad un “vero” colpo di cannone
  • non ho fatto shopping per i regali di Natale, cosa che non mi è mai accaduta – e spero che non accada mai più, perchè mi ha un po’ intristito Triste
  • come penso moltissimi di voi, ho visto il mio primo film in 3D
  • ha sentito la voce di una cugina lontana

e chissà quante altre cose ancora!

Auguri di un Felice Anno Nuovo, cari lettori, a voi e alle vostre famiglie!

Send to Kindle
Software

Qualche suggerimento su cosa migliorare in Windows Phone 7

Windows Phone 7 è un prodotto totalmente nuovo, questo ce lo siamo detti ormai un miliardo di volte. Ha sicuramente un margine di miglioramento devastante un po’ su tutti i fronti. Siccome non so bene a chi scrivere (o dove scrivere) per proporre i miei consigli e cosa vorrei vedere nei prossimi mesi/anni su WP7, li scrivo qua sul mio blog, sperando di suscitare qualche interesse. E magari fra i miei lettori c’è qualcuno che ha il potere di segnalare le cose che scriverò!

Smile

I miglioramenti riguardano tutti un unico punto, ovvero: cosa succede all’usabilità del nostro telefono se si installa un numero elevato di applicazioni? Con elevato intendo un numero maggiore di 100. E lo dico basandomi su quello che ho visto su un iPhone neanche tanto tempo fa. Immaginatevi di installare 100, tra applicazioni e giochi, sul vostro WP7.

Microsoft DEVE assolutamente migliorare la usability in questo senso. Un mero elenco delle app installate, in ordine alfabetico, ahimè non è sufficiente. Innanzitutto, in un ordinamento alfabetico obbligatorio se voglio recuperare un’app devo ricordarne il nome: e vai tu a ricordarti che magari il programma di Repubblica.it si chiama esattamente La Repubblica Mobile, oppure che se voglio leggere i blog devo avviare Flux, etc. Insomma: quell’elenco va pensato meglio, secondo me.

  1. Sarà possibile trascinare le icone dell’elenco per ordinarle come piace a me, esattamente come accade sulla Start Page?
  2. Oppure, cosa che sarebbe fighissima ma più complicata, poter creare tante pagine in cui organizzare le proprie apps. In questo momento le pagine sono solo due: la Start Page e le Apps Page (scusatemi, io le chiamo così). Sarebbe bello che magari in Zune, o direttamente sul telefono, si potessero aggiungere tante pagine, così da poter trascinare e sistemare le icone come si vuole, organizzandole per categorie come “Notizie”, “News Reader” (se volessi installarne più d’uno), “Utility”, etc. etc.

Vedo queste due opzioni le uniche che in questo momento mi vengono in mente. La (2) ricorda molto iPhone, ma è francamente la più interessante. La (1) invece risolverebbe qualche problemuccio, ma la navigazione rimarrebbe comunque difficoltosa. Ripeto: se ho 100 app installate, e devo avviarne una che si chiama “ZZTown”, lo scrolling fino alla Z può essere un po’ noioso. E anche la voce Impostazioni finirebbe sempre più in fondo, per cui attivare/disattivare certe componenti del sistema diventa sempre più lungo.

Dal punto di vista prettamente developer, mi piacerebbe sicuramente avere più API per accedere all’OS sottostante: leggere la rubrica, poter attivare/disattivare le comunicazioni (ad esempio, vorrei avere/fare un’app che – messa come prima icona in alto a sinistra sulla Start Page – mi permetta di attivare/disattivare il WiFi, o il GPS, o il BT, etc.). Oppure un’API per regolare il volume: sogno un’app che possa ammutolire il telefono nel modo più veloce possibile.

Tutto questo non è solo usability, attenzione, perchè se è scomodo avere 100 app installate su WP7, l’utente finale dovrà fare delle scelte per limitarle. E qui ci perdiamo noi developers, perchè magari – supponiamo – nessuno installerà mai i miei giochi o le mie app, perchè preferirà quelle più blasonate. Tutto nell’ottica di voler limitare il più possibile il numero di apps installate. Insomma, una soluzione secondo me va trovata: voglio un WP7 che possa gestire senza problemi non 100, ma 300 applicazioni installate. Storage permettendo.

Send to Kindle
Software

Video presentazione di “Keyzard Saloon”

Se per caso avete perso i miei tweet, lo ripropongo anche qui attraverso il mio blog.

Presentazione sul mio LG Optimus 7

 

Ecco un nuovo episodio della serie Keyzard, Keyzard Saloon. Nelle settimane scorse qualche fortunato (o sfortunato, dipende dai punti di vista) aveva assistito ad una piccola demo. Rispetto a quella versione le cose sono un po’ cambiate. Keyzard Saloon è un gioco a pagamento, con supporto della trial: le limitazioni della trial sono fondamentalmente due:

  • dopo tre minuti di utilizzo si chiude automaticamente
  • prima di cominciare una partita vedete una piccola pubblicità su VivendoByte.net

Sono comunque cose che spiego anche nel video qui sopra. Ecco due cose che invece nel video non dico per dimenticanza:

  • mi piace molto il discorso delle classifiche on-line!!!, specialmente divise in assoluta/mensile/settimanale: credo che – indipendentemente dal successo del gioco in sè – aggiunga comunque molta voglia di rigiocare e di continuare a sfidarsi: idea totalmente promossa che metterò in pratica anche nei miei prossimi giochi per wp7
  • i livelli dal 1° al 20° sono preimpostati da me: quindi in ogni partita al 1° livello avrete sempre lo stesso numero di boccali di birra, e il tipo di round sarà sempre lo stesso (crescente, decrescente, etc. etc.)
  • dal 20° in poi le cose sono completamente casuali
  • dal 20° in poi avete meno tempo a disposizione per completare ciascun round, e guadagnerete più punti

Buona visione e soprattutto Buon Divertimento!

Sorriso

Send to Kindle
Software

Video presentazione di “Quiz Capitali”

Se per caso avete perso i miei tweet, lo ripropongo anche qui attraverso il mio blog.

Presentazione sul mio LG Optimus 7

 

E’ anche questa una piccola applicazione/gioco per testare le vostre conoscenze sulle capitali di tutti gli stati del mondo. E’ piuttosto semplice, e non ha grandi pretese. Quiz Capitali è un’applicazione a pagamento (€.0,99), ovviamente con supporto della trial, che ha due limitazioni:

  • dopo la terza domanda l’applicazione vi avvisa che siete in modalità trial e vi propone l’acquisto
  • dopo il 2 minuto di utilizzo l’applicazione si chiude

Buona visione!

Send to Kindle
.NET World

Occhio se usate il MediaElement nelle vostre app wp7

Seguendo le ultime specifiche per la pubblicazione delle vostre app per Windows Phone 7 – disponibili a questo url – si legge una cosa molto importante. Il succo è questo:

se l’utente sta ascoltando qualcosa attraverso il lettore multimediale del telefono (quindi podcast o qualche canzone), l’avvio della vostra app NON deve MAI interrompere questo stream audio (sezione 6.5.1)

In cosa si traduce tutto ciò? In una bella rottura di scatole, perchè nel momento stesso in cui definite uno XAML come questo:

<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
    <MediaElement Visibility="Collapsed" x:Name="MediaPlayer" />
</Grid>

 

allora tutto bene, ma se lo XAML diventa questo:

<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
    <MediaElement Visibility="Collapsed" x:Name="MediaPlayer" Source="Start.mp3" />
</Grid>

 

l’eventuale stream audio dell’utente, l’mp3 o il podcast che dir si voglia, si interrompe e siete fregati. La vostra app viene inesorabilmente bocciata. Come risolvere? Qualche consiglio.

  1. Nello XAML non preimpostate la proprietà Source – lo farete da codice solo se serve
  2. quando serve? Potete controllare il valore di Microsoft.Xna.Framework.Media.MediaPlayer.GameHasControl; se vale false, significa che c’è già un audio che sta andando, e quindi all’interno della vostra app
  3. Ricordo che NON si può usare la classe SoundEffect per la background music: quest’ultima è specifica per gli effetti sonori, dal momento che qualsiasi cosa mandiate sullo stream viene miscelato comunque con altri suoni già presenti

Ecco un url che spiega questo problema: http://blogs.msdn.com/b/oren/archive/2010/12/02/wp7-dev-tip-detecting-whether-or-not-the-user-is-playing-music-in-the-background.aspx.

Send to Kindle