Categories
various

Il telelavoro su Radio Pianeta

Domani sera (21 Luglio 2010) parteciperò al programma radiofonico VERy LAUd, condotto da Laura e Veronica, su Radio Pianeta FM 96.350 Mhz.
L’argomento che tratteremo sarà il telelavoro:
si parlerà delle possibilità che offre, gli strumenti, i vantaggi e gli svantaggi per l’imprenditore che si avvicina a questo genere di svolgimento delle mansioni. In passato ho avuto esperienze come pioniere del telelavoro. Il mio progetto di tesi, ad esempio, era stato realizzato per il 90% tramite telelavoro assieme a Cédric Guillemet, a quel tempo programmatore per Sony PlayStation 2.
Durante il 2009 ho usufruito di questo sistema di affidamento degli incarichi e ho avuto diverse impressioni, più o meno positive. Se volete sapere di cosa si tratta non vi resta che seguire il programma alla frequenza indicata o tramite i link qui sotto 🙂
Ovviamente un grande ringraziamento per l’opportunità va a Valentina Barreca.
Attualmente Valentina è al lavoro su un docufilm che tratta l’argomento del telelavoro, cercando di sviscerarne tutti i vantaggi, dalla comodità alla tutela ambientale. La mia presenza in radio è stata organizzata interamente da lei.

Buon ascolto!
Link:
WinAmp/VLC
Media Player
iTunes

RealPlayer
Toolbar per Firefox

Categories
development graphics various

How to Develop Apple iPhone and iPad application

IMPORTANT: WE CAN WRITE A CUSTOM STEP-BY-STEP TUTORIAL, RECORD A DETAILED VIDEO OR HELP YOU REMOTELY TROUGHT THE iPHONE DEVELOPMENT PROCESS.
CONTACT US FROM THE AGENCY WEBSITE:
www.playsys.it
I would like to write something about my experience as iPhone developer, because it was an interesting and useful experience.
I (or we, because it was a team work at PlaySys) spent about 30% of the development time to become registered Apple Developers, then we spent 20% to practically develop the App and then we finished with a long 50% to compile & upload it on App Store. 
 
Yes, these were the timings, and it’s not a joke. I don’t want to say that Apple is wrong, it’s not great or other things like this, I want only to write about my experience, maybe it can help someone else.
Before starting I would like to thank two key people that made the development of this App possible: Andrea Benedetti and Valentina Oggioni. 
   
So let’s begin! 
The ingredients of the recipe to obtain an iPhone App are:
– a customer
– clear ideas of the final result
– clear idea on what you’ll have to modify at the end of the project
– a skilled and motivated team (programmers+graphician)
– lot of motivation
– knowledge between Objective-C and Photoshop (not so much, the team will manage them, but to manage it you should know a bit of everything)
– XCode, iPhone SDK, Snow Leopard, a Mac and so on…
– a sad life to spend in a office, behind a monitor

The first thing to do is to become a registered Apple Developer
, so you have to apply to be recognized by them. In this phase you have to prepare some legal/economical information about your agency, and have to prepare your bank account. This phase requested us about 2 weeks or maybe a little more because a little misunderstanding with Apple. 

After this step you’ll have a new account to access at the registered developer area. You’ll find some good stuff there inside:
– iPhone SDK
– XCode

– Utilities
– lot of step-by-step guides and videos
– references, tech manuals and discussion areas 

I suggest to read the more as possible about the process of development. It’s a bit different from Windows, were you download your copy of Visual Studio Express and the .NET framework, you develop and post your executable online somewhere. 

Now with XCode you only limit is your imagination, and of course your budget and your knowledge
. In my specific case I can do more with a piece of rope. Helpfully Andrea helped us a lot, writing the 99.9 % of the code; the remaining part was completed by me with some //copyright information 🙂
Now some questions:
Q- Do I need some coding knowledge to develop this kind of App?
A- Of course a lot OOP knowledge is required.

Q- Do I need to know a lot about Photoshop or other graphic program? A- No. There is the Interface Builder that can visually help you to place in the canvas your elements. If you are planning to develop a videogame the answer would be completely different.
Q- Do I need an iPhone to develop my App?
A- No, at least at the beginning of the development. The device could be necessary depending on the App you are developing. For a simple calculator you can manage everything without an hw device. Remember that you can use an iPod Touch to develop App for the iPhone, at least if you don’t use the phone, the microphone, the camera and the 3G connectivity. 
While your programmer is developing and your graphician is creating cool stuff, you as project manager, have to prepare the certificates.
It’s important to know that there are 2 different kind of certificates: Development and Distribution. The Distribution one is split again in 2: AppStore and Ad hoc. Remember that you don’t need only the certificates, you will need Provisioning file too. 
  
Working on this I understood this relation:
Certificates <–> OSX
Provisioning <–> XCode

and of course there is a connection between XCode and OSX 🙂 

So start opening your Keychain and request a new certificate from Authority. This creates 2 keys, a private and a public. Choose a 2048 bit RSA encryption and save it on your desktop. Login on your apple developer page and go in the certificates area. Here you can create your first Provisioning certificate. Simply go in this section of the site, choose to create a new certificate, upload your request and everything will be done automatically.
Now you can save your certificate for provisioning. Do the same thing for the Distribution one. For the first time you need a simple in-house distribution: a distribution file that manage the connection between your device and the XCode project, so you can deploy the project on the physical hardware instead of the simulator. 

Back offline add the certificate inside the keychain and the connection file insider XCode (or iTunes).
You’ll need to setup XCode for the “local” distribution, it’s not difficult and Apple has a nice step-by-step tutorial on the site.
Remember to create at least 2 icons for you App: a 57×57 and a 512×512. These will be very necessary to publish your app on the AppStore.
When you finished your development the troubles will arrive 😉 
  
I really dunno why, but we encountered lot of terrible problems in the last part of the development. It was really frustrating and we loose lot of time: Apple’s automatic system rejected our zipped App, saying it was not signed with a proper certificate. Searching online I found hundred and hundred post about lot of developers that encountered our same troubles. Of course the certificates were valid, we were sure about this, like the other developers were sure about theirs. 

As said I don’t know what happened: someone solved this reinstalling XCode and the SDK, someone create a new project and pasted inside the main work and we, after 7 hours of desperate things solved in this way:
– we inserted a jpg image in Interface Builder
– we compiled the project
– we removed the jpg
– we recompiled again
– worked! 😀 

I think there is an unknown bug inside the website App validation, something that sometime works and sometime not.
We tried with the jpg because watching inside the compiled App we noticed some png files were damaged during the compile process.
This was a simple App, but we are planning a new one in these days and I hope not to encounter these frustrating bugs.
Enjoy App development, it’s really fun and interesting!   IMPORTANT: WE CAN WRITE A CUSTOM STEP-BY-STEP TUTORIAL, RECORD A DETAILED VIDEO OR HELP YOU REMOTELY TROUGHT THE iPHONE DEVELOPMENT PROCESS.
CONTACT US FROM THE AGENCY WEBSITE:
www.playsys.it

Categories
development graphics various

New web site – flash html and mobile (iPhone) version

Yes! we are online with a new website, social network, documents and mobile version.
 
Main Web Site
The new payoff is clear and direct: The wire between virtual and real. What are these “wire”, “virtual” and “real”?
It’s simple: the wire is a link, a connection, a “bridge” that keeps constrained the virtuality and reality. The virtual is everything is done with the computer or every idea inside your head and the real…it’s Matrix 😉
Our work is to take your real idea and to construct a virtual project. At the same time, you can consider your idea a virtual concept, not yet realized…we can help you to make it real!
The web site is hosted on our www.play-sys.com. We have a index.php, that contains a device recognition and relative redirection to the proper html page. This is useful because iPhone, iPad and iPod Touch devices have some troubles with flash player.
The main page is constructed with Adobe Flash (player version 8 + Action Script 2). Our swf is inserted in the page, using Adobe Dreamweaver…simple, quick, cool.

The graphical idea behind the site is something clear, with little text, big renders and images. The site is English language only: who works in this business should speak it, and it sounds better than Italian.
We activated some extra sections:

PlaySys Tech
is a series of simple html pages that explains some technical things behind our work. Actually it’s in Italian because I started these pages some months ago, when we had the previous website version (the actual one is 5.3). Dunno if I’ll translate them, Italian language is better when speaking technical facts to Italian customers.
http://www.play-sys.com/playsystech/index.html

PlaySys Legal
This is really important, it’s the work done by our lawyer staff (that costed lot of money) and that guarantee our legal shield in the case of stolen data, pictures grabbing, pdf sharing, images extraction, watermark removal and so on.
http://www.play-sys.com/legal/playsyslegal_index.html

Facebook Page
We created a Facebook page to connect all our friends and customers, and to let them discuss about us. This raise our “transparency” that is one of our most important aspects.
http://tinyurl.com/playsys-facebook

Youtube Channel
Of course a Youtube Channel is important to explain our projects, and to explain what we can do with CG. A video explains things better than thousand words.
http://www.youtube.com/user/playsysstudio

PDF
Each section of our web site has a downloadable PDF file, that contains lot of images, descriptions and so on. Image extraction and PDF disassembly is strictly forbidden: they must be used for personal reference and for PlaySys future references.
http://www.play-sys.com/downloads/PlaySys_3D_Portfolio.pdf
http://www.play-sys.com/downloads/PlaySys_Publishing_Portfolio.pdf
http://www.play-sys.com/downloads/PlaySys_Development.pdf

Categories
various

Weekend al Grand Hotel di Tremezzo

Due settimane fa ho passato il weekend presso il Grand Hotel di Tremezzo. Tremezzo è un paese sul lago di Como con una veduta mozzafiato. L’Hotel è fantastico e dispone di 4 piscine (di cui una all’interno del lago), una spa favolosa e delle camere da relax totale.
Il personale è molto gentile anche se, a causa della clientela esigente, è a mio avviso eccessivamente formale e invadente.
La cena è sublime: portate estremamente ricercate con eccellenti disposizioni delle pietanze nei piatti, nulla è dato al caso.
È bello vedere l’attenzione che queste persone mettono nel loro lavoro. La precisione e la cura dei dettagli sono d’obbligo, e devo dire che apprezzo molto questo genere di approccio al lavoro. Negli ultimi mesi sono stato veramente seccato da persone che non sanno fare il proprio mestiere, o che lo fanno semplicemente per tirare sera e portare a casa una ricevuta in più: il lavoro deve essere un piacere, solo così si possono avere risultati da Grand Hotel! 
   
Consiglio vivamente un’esperienza di relax totale in questo Grand Hotel!

Categories
development graphics

PlaySys Renderer


Finally, after a long development period we are near to the end 🙂
I’m speaking about our new internal renderer, based on a hybrid CPG+GPU technology. Our system can manage complex scenes with a scalable quality, based on your hardware configuration and on your quality/timing needings.
The engine is based on a triple core (realtime, raytrace and unibiased) and innovative solutions for the “recycle” of precomputed data. The last one was the most difficult part, in fact we had to define a way to reuse the information obtained by a previous computation. One smart thing is the emission power, that is always equal to the sum of all the energies variation in the scene.
The realtime engine is still not stable and is the most raw thing in the entire software. We are spending lot of time in the translation of material parameters between realtime and offline.
We have no direct link between 3ds Max and the engine, at the moment we are working with some obj files. Finalmente, dopo un lungo periodo di ricerca e sviluppo, siamo in dirittura d’arrivo.
Mi sto riferendo ovviamente al nostro nuovo renderizzatore interno, basato su tecnologia ibrida CPU+GPU, in grado di elaborare scene complesse con una grandissima rapidità. Oltre alle normali caratteristiche, il motore vanta di un triplo core (realtime, raytrace e unibiased) e innovative soluzioni per il “riciclo” delle scene già elaborate. Il passaggio più complesso è stato ottenere una serie di dati riutilizzabili dall’engine. In pratica il motore frammenta la scena e suddivide il numero di poligoni, rendendoli conformi alla risoluzione dello schermo. Successivamente viene calcolata l’emissione di energia da ogni singola fonte luminosa e il dato finale equivale sempre alla sommatoria delle emissioni. In questo modo possiamo modificare i parametri dopo aver eseguito il render.
Per quanto riguarda l’engine realtime stiamo facendo diversi passaggi per consentire l’interpretazione ed elaborazione degli shader. Attualmente si tratta del modulo più grezzo del software e la stabilità è ancora molto bassa.
Infine manca completamente un esportatore diretto da 3ds Max. Per il momento stiamo elaborando file in formato obj.

Categories
development graphics

PLAYSYS | Q(af)SSS

This is the implementation of the shader I developed two weeks ago. It’s a complex node system, obtained in Autodesk 3ds Max, mental ray and Slate ME. The original image measures 28.347 x 21.261 pixels (603 Megapixels) and required less than a day to be rendered on one of PlaySys’s dual Xeon E5345 @2.33 Ghz machine. The image has been resized a little, but you can still appreciate it’s details (and a small error, try to search it ;))

Categories
development graphics

P.UV.E. – A simple script

There are really complex and really useful scripts, like TexTools, SolidRocks, RappaTools, SnowFlow, Batch Camera Render and lot other, and there are sometime
simple scripts that can do a single operation, apparently stupid, in short time.

This is the case of P.UV.E. a simple/stupid 200 kb script I wrote yesterday
and that let me save lot of time (or at least, lot of click).

The script simply extract a 2048×2048 UV texture from a selected object, it
does nothing more and nothing less. It’s force is in the simplicity and in the
quick accessibility. It is fired from a button on my UI and permits me to save
an UV in 1 click respect the traditional method that requires 7 clicks. You can
say that I’m lazy, and sometime it’s right, but when I have to manage about 250
UV per day, this become a useful thing.

probably this is one of the most stupid thing I developed in the latest
months, but I think I’ll use it more than other things I did in the past(except DMRB) 🙂

Categories
development

PlaySys | iPhone Development

We released our new commercial App for iPhone, specifically developed for a customer that increased the satisfaction of his customers. The App is simple and I’m not here to talk about it’s obvious and specific features. The important thing is that this App certifies us as mobile developers, not only specialized in mobile websites but in App too.

PlaySys App for iPhone

We already developed applications for Windows platforms like Windows XP, Windows Vista, Windows Seven and Windows Mobile (plus two projects for Microsoft Xbox360). I’m really proud to announce this new area of PlaySys, in which we can develop specific applications for various kind of customers:
Even if you are a mechanic, an engineer, a nurse, a housewife, a student, a pilot or whatever, PlaySys can develop the application that suits perfectly to your business (or life style).
Contact us for more information at info[at]playsys[dot]it or visit our website www.playsys.it

Categories
development graphics

Quick (and fake) Sub Surface Scattering

After a really long time I finally found a way to obtain a shader as it’s in my mind. It’s like a sound for a musician, it’s really clear in my mind but I was not able to find the correct way to represent it. I got this idea while I was rendering one of our project that you can see here. PLAYSYS TURBINE PROJECT The idea is to obtain a sort of Sub Surface Scattering effect, without using it’s computation.
In Mental Ray I found a really cool way to mix the parameters that gives me the possibility to forge it. There are some things I need to fix to improve the usability, and after these I will add the DirectX shader support (with Mental Mill). The cool idea is to redistribute it as a custom .mi .dll and .xmsl shader suite. MY TRANSPARENT MATERIAL STANDARD TRANSPARENT MATERIAL I’m still working on it, this is a simple screen of how the shader network looks at the moment. I have to say that the new Slate Material Editor, introduced in Autodesk 3ds Max 2011, helps me a lot.

Categories
various

Il (doppio) rischio imprenditoriale

Ci sono migliaia di manuali che insegnano ad essere imprenditori, tra le pubblicità di Facebook ne trovo un sacco e spesso mi divertono le frasi con cui sono promossi.
Indubbiamente per essere imprenditori e dirigere un’azienda bisogna avere svariate nozioni di marketing ed economia, bisogna sapere quello che si sta facendo, i limiti legali e morali, la sicurezza nei locali di lavoro, le tipologie contrattuali, le percentuali di tassazione e così via…ma ci sono due cose da tenere sempre a mente, che pochi libri insegnano: Rispettare sempre le richieste del cliente e imparare a farsi pagare! Le richieste del cliente sono la prima cosa da tenere in considerazione. Quando lavoravo come designer, assunto come dipendente, ero convinto di avere idee migliori rispetto alle richieste dei clienti e qualche volta facevo di testa mia. Non era rilevante che le mie idee fossero geniali o pessime, se non rispettavano la volontà del cliente, venivano scartate o viste come negative.
Se dovessi tornare indietro sicuramente starei più allineato alle direttive: se il cliente chiede un interno capovolto, una figura umana appiccicata nel render in Photoshop, o un prato rosa, quella è la cosa giusta da fare.
Non rispettare le richieste del cliente (o del superiore) significa, in un certo senso, affermare che la propria opinione è la migliore; nulla è più irritante di dover pagare per sentirsi dire che la propria opinione sia migliorabile, e trovarsi di fronte un lavoro diverso da quello che ci si aspettava.
Se ordino una Maserati rosa significa che la voglio rosa; se mi viene consegnata nera o cromata non va bene, perché io la volevo rosa…e solo per quel colore sono disposto a pagare!
Un altro punto che viene spesso tralasciato è il fatto di farsi pagare, ossia concretizzare la monetizzazione del proprio tempo, offerto sotto forma di capacità lavorative specifiche. A differenza di quanto si possa pensare, essere pagati per un lavoro svolto, non è una cosa così immediata, specialmente in questi tempi di crisi, in cui tutti vogliono ottenere, ma nessuno è disposto a dare. Entrano così, sempre più spesso, in gioco procedure legali per sottolineare che, oltre alla retribuzione del lavoro svolto, debba essere corrisposta una percentuale pari alla mora, accumulatasi nel periodo tra il trentesimo giorno dopo la scadenza della fattura ed il pagamento della stessa. Sembra una stupidaggine, ma sempre più di frequente stiamo diventando vittime dei “buonismi” di concedere pagamenti a 30, 60 o 90 giorni. Nelle scuole non insegnano che a volte viene richiesto il pagamento differito di un certo numero di giorni.
Più di una volta mi è capitato di sentire “noi siamo abituati ad effettuare il pagamento a 60 giorni”, dove per 60 giorni si intende la fine del mese che contiene il 60° giorno dopo la consegna del lavoro finito…nella peggiore delle ipotesi 3 mesi di attesa.
Il significato è molto semplice: l’imprenditore, oltre al proprio rischio imprenditoriale, deve farsi carico del rischio del cliente, e se dopo la scadenza il cliente non vuole pagare, è libero di farlo (fermo restando i rischi a cui andrà in contro).
Attenzione però, perché da quando viene emessa la fattura, questa entra nel trimestre fiscale e bisogna anticipare allo Stato l’IVA.
Vogliamo fare due conti? Come imprenditore devi sostenere ovviamente delle spese tra cui affitti, rifiuti, 626, inail, spese accessorie, stipendi e relativi contributi, pulizie, inps, materiali, ammortamenti, cancelleria, connessione a internet, riscaldamento, acqua e così via…senza contare che, essendo un essere umano, sono presenti delle necessità di vario tipo (senza scendere nel dettaglio personale almeno un letto, un pasto al giorno, una doccia, un abito…i famosi beni impignorabili, almeno quelli).
Supponiamo quindi di effettuare un preventivo da 10.000 € (e notare bene che se vengono preventivati 10.000, questi devono essere!)
Nell’importo si trova la sommatoria di tutte le spese più un minimo di ricavo…diciamo 9.500€ di spese e 500 € guadagno.
Una volta finito il lavoro, viene emessa la fattura, ma nel frattempo, visto il pagamento in differita, è necessario anticipare i 9.500€ ai dipendenti e alle varie istituzioni (non è possibile evitare di pagare l’INPS solo “perché il cliente non mi ha ancora pagato”, così come non puoi pagare l’elettrauto in differita, lui i soldi GIUSTAMENTE li vuole subito, vedi diritto di ritenzione art 2756 del Codice Civile).
Se inoltre passa il trimestre, è necessario versare anche l’IVA, che di fatto non è un costo, ma è veramente una grande seccatura! L’IVA ammonta al 20% della fattura di 10.000 €, ossia equivale a 2.000€ (che comunque non entrerebbero nelle nostre tasche), ma che dobbiamo tirare fuori ancora prima di prendere la nostra misera fetta di 500 €.  Come tutelarsi?
Personalmente io mi sono studiato un po’ di legge ed economia e, per sicurezza, in casi delicati sono tutelato da tre legali che fino ad oggi hanno brillantemente risolto i “disguidi”.
Consiglio una grande cautela quando si gestiscono capitali grossi, così come quando si gestiscono quelli piccoli (nessuno ha voglia di pagare centinaia di migliaia di €, così come nessuno ha voglia di intraprendere procedure legali per somme minuscole). Abbinare lo studio alla pratica è la migliore delle lezioni, nessun libro ti insegna bene a lavorare, perché non contiene il lato pratico, ed in modo analogo, nessuna esperienza formerà più di un tot, perché è priva della teoria di base. È inoltre indispensabile una buona dose di voglia di fare, per non lasciarsi scoraggiare dopo la prima fregatura.