New Life, New Work and First book

It is curious how things can change in a short time…

In just one year I moved from Barcelona, Spain to Zurich, Switzerland to work as software developer for Roche Diagnostics, through Accenture Switzerland.

Barely one month before moving I had committed to do one of my goals in life, to write a book. Today I got the great news of its official release and worldwide availability. I have been an author before, for several professional magazines, writing countless articles but as a book, this is a first. 

Microsoft .Net Framework 4.5 Quickstart Cookbook
Microsoft .Net Framework 4.5 Quickstart Cookbook

For me it is a very important step – one well given with good content and quality – and part of a series of steps and goals I have been accomplishing through this previous years. More will come but let’s leave this for further blog posts that, from now on will become more frequently. 

Now, I’d like to copy my acknowledgments of my book as they say communicate properly my feelings and thanks.

“I’d like to first of all thank my girlfriend, Sandra Saenz Gonzalez, for her enormous support in taking on the project that this book was. I am greatly thankful for her constant understanding while having me closed up between four walls as I wrote and developed its contents. Thanks, Sandra, I love you.

Big thanks as well to my friend Jesus Salillas, who helped me with style reviews and guidance.
There are many good people out there who I have to thank, too. Thanks to Alfonso Rodriguez, who encouraged me to get into this “big .NET community world,” and to Cristina Gonzalez, who has been my MVP Lead for—wow!—6 years already; easier said than done. Additionally, there is my good friend Paco Marin, who encouraged me strongly to write for him and his magazine, DotNetMania, now DNM, and during these years of collaboration, while writing for him, we have become good friends; thank you for all your support and care.
On the way, I found great friends out there, versed in the community, who allowed me to jump right at my passion. Thanks to the INETA guys, Damir Tomicic, Tomislav Bronzin, Sander Gerz, Andrej Radinjer, Andre Obelink, Christian Nagel, Dobrisa Adamec, and, of course, Miguel Lopez. Thank you for being there and doing what you do, greatly empowering the European developers’ community. And for letting me take part in it and letting me “live it.” One simple 
word—outstanding.
I’d like to give a big thank you to the staff of Packt Publishing for this opportunity, their support and patience on bringing this together, and for their understanding concerning my move to Switzerland, which had me a bit lost for a while (regarding the book). There you showcased that you are truly valuable, as a company and as people; special thanks to Rashmi Phadnis, Amey Sawant, and Dayan Hyames.
And finally I would like to thank Layla Driscoll, former Product Manager of the .NET CLR team, and Leon Welicki, Program Manager of the Workflow Foundation, both of whom I have had the honor of having as technical reviewers for this book. Thanks! It’s awesome to count on you as reviewers.

I also have some friends who believed in me and encouraged me to write and said “I could do it”—thanks Braulio Diez, David Nudelman, Luis Franco, David Salgado, and Luis Fraile 
for your friendship, belief, and support.
I wouldn’t have been able to write enclosed in the 15 square meters—my home for almost four months of my initial stay in Switzerland—if I couldn’t take my stress out, which I did with my friends at Crossfit Zurich, so I want to give a big thank you to Ozi, all the coaches, and friends I have found at the “box” for being there!
And I will end by thanking those who started it all for me, that is, thanks to my father and mother for giving me birth and making me so curious; love you.
Thank you all!”

🙂

Shape – the App conference

On the 9th of April, yesterday, I attended Shape, the app conference, in Baden, Switzerland.

There, I presented a session regarding Multi Targeting development for Windows Store and Windows Phone apps.

I had a lot of fun while writing the demo App with the surprise that on the night of the previous day, 8th of April, I tested around 23:00 pm my demo and it stopped working. After a while, saw that my demo’s OData provider was off… definitely!

You can read about it here: http://odata.netflix.com/, but to keep it short “as of April 8th, 2013, this service is no longer available.” resumes it pretty well.

Anyway this was good because It took 5 to 10 minutes to plug-in another OData service, even it was never as cool as seeing the latest movies…

My slides and demo are on SkyDrive, available <<here>>

Thanks to Microsoft for the organization and the attendees for their interest!!

Slowing down at KulenDayz

A few weeks ago I had the fabulous chance to attend again at KulenDayz as a Speaker, with the topic of .NET 4.5 Asynchrony. It also happened to coincide with the MVP Summit for CEE (Central and Eastern Europe) so I ended up attending both events thanks to the organizers mainly Bernard Katic and Alessandro Teglia (if you want to know more, check http://www.kulendayz.com and http://belead.me/2012/08/06/regional-cee-italy-mvp-summit/ )

First things first, a big thank-you to the event organizer Bernard Katic and, regarding the MVP side, thanks Alessandro!!!

It was such a great event which is based on slowing down – ironically the contrary of what we do when we attend a conference, as we end up running from one session to another – it was fabulous to see good friends and such an outstanding and vibrant community, seeing good friends, like Tomislav Bronzin, Dobrisa Adamec, Damir Dobric, Bernard Katic, Maja Janic, Alessandro Teglia, Tibi, Catalin, Domagoj, the great Tobiasz!, and much more people that I was surprised to meet there, like Andras Velvart and his wife. Was great meeting all of you guys!!

Well, I also happened to give a session which went pretty well and received a lot of questions and good feedback & congratulations at the end , from some MVP’s and also from some students who were there so I am really happy, as a speaker and as a Toastmaster.

I’d like to give a special thanks to Sandra Saenz, my girlfriend who helped me review and improve the slides and presentation  and to Marion Chevalier, a good friend and excellent toastmaster & speaker who helped me polishing the presentation slides and the session outline. Thank you girls!!

Oh yes, also there were slides and code and here they are!!

Code: http://sdrv.ms/SwbaKY

Slides: http://sdrv.ms/Swbklu

I also promised to give the “recipe” of my cookbook which relates to Async and Await, and here it is too.

The Async/Await recipe: http://sdrv.ms/SwbyZW

You can get all of this directly from the SkyDrive Kulendayz folder here http://sdrv.ms/SwbFEL

Additionally In the next week I expect to put a post of more advanced examples regarding Async/Await and the usage of its combinators. I will put also an example of using asynchronous web services as it is curious to see this behaving the same exact way but with web services. To mention that this is now the preferred way of implementing asynchronous web services, with the TAP (Task Asynchronous Pattern).

Have fun!

.NET 4.5 is on my way

.NET 4.5 is on my way

 

And I mean it. Months ago I was proposed to do one of the things I have always wanted to do in my life: write a book.

And I said YES – to write a .NET 4.5 Book (in fact at the beginning it was a Silverlight book but with the latest Microsoft apathy for what has been named its best creation ever… finally we opted for a .NET 4.5 book).

It was a bit of foolishness because the how wide is the topic (and the effort), but also I decided to take action, step forward and take the chance to do something cool. I accepted :).

Anyway I have done a lot of .NET aspects and touched practically all the flavors of .NET in my professional life.

And I remembered that quote that I personally love of “Life is a daring adventure – or nothing”, from Helen Keller (http://en.wikiquote.org/wiki/Helen_Keller ). which my friend MA Garcias is making me remember from time to time.

What I didn’t know is that at the middle of writing it my life would change (see http://silverlightguy.com/2012/09/22/a-new-life/) and all my clients when notified of my change kindly asked me to finish all the projects before moving on to Switzerland…

Oh my…

I guess that May 2012 is the month I have worked more hours in all my life, closing three projects for three different clients, all scared of me not being able to finish everything in time and pulling me.

Felt god. Got tired. Finished everything. Felt better. Moved on.

 

Meanwhile, I did nothing regarding the book… and when I arrived to Switzerland I had a whole new world to “setup and configure”, get used to it, to the new work and well, for a month and a half could not do much…

But I moved on, adapted, got everything solved and my publisher, Packt publishing, was quite understanding of my situation and supported that “time off” as a necessity…

Thanks Rashmi and Packt Publishing for your understanding!!! That is really appreciated!! It has definitely been a bumpy road but a worthy one of traveling with such a great team as you… so Thanks!!

 

This weekend, if the stars do not fail me, I am finishing the book – at least the drafts will be, pending some revision work – and the main and most complicated part of this book will be over…

 

It’s been a long road, looking for inspiration, for the most important things to say, how to say them and make them as practical and knowledge–full as possible. I really believe the book is a high quality one and will truly deliver very valuable information in a very short time. And in a very practical way.

So, hopefully I will finish it this weekend… and see it soon on somebody else’s hands. That would make me very happy; see others benefiting from my creativity and work.

After this book is finished I will translate it to Spanish as I have written it from the start in English and for this I have had a good friend of mine, Jesus Salillas, who has an incredible level of oratory in English. He is an outstanding Speaker, a highly recognized member of the Toastmaster’s international community and an even better photographer. Thanks in advance for your great help and support on this project – I owe you a lunch at Switzerland… and maybe some Gin Tonics, of course!.  The other person who has – and is – helping here is my girlfriend Sandra Saenz, who is helping me with formatting support, design and image processing, thanks a lot for your great support and patience!!

Well, guess you already know why .NET 4.5 is on my way. Hopefully I will find more obstacles worth surpassing in a near future but for now I can tell you that .NET 4.5 is such an outstanding technology which if you are a developer, coder, software architect or just curious in .NET technology, you have to check!!! It’s evolution is simply amazing and the fact of having the “portable libraries” feature makes it worth every learning effort.

I want to give additional thanks also to Layla Driscoll and Leon Welicki for becoming technical reviewers of my book, this is truly an honor. And I have worked hard to be able to deserve it, hopefully the end results will stand up to having such great reviewers. I want to make you know that having you as reviewers has made me do double efforts to make the book as best as possible.
I also would like to give a big thank-you to my friends at Crossfit Zurich who have helped me much in burning my obviously increased levels of stress, and well, in the way, losing quite a few pounds of fat… Thanks Ozi, Roberta and Stephen

Thanks!!!

A new life

Yes, I have been pretty much silent for the latest months, so first things first, sorry for this!!

Second, I had a very important reason as I was offered quite a change in my life, I’ve recently joined the Accenture team in Switzerland to come to Zurich for working for Roche Diagnostics.

I just can say that I am extremely happy, the people here is simply amazing, amazing developers, project managers and also really interesting projects that, without being able to speak anything about them I can tell you clearly that is outstanding and is using the latest of the latest in technology, both in medical and development.

Also here the development quality is highly valued, so everything is done well, very well.

It’s highly satisfying being here, also there are challenges, a healthy culture of recognizing quality work and talent so I can truly say that I should have done this before. I am having great times and becoming an even better professional thanks to my colleagues in Roche.

Thank you guys, I am really enjoying being here with you.

Oh, and for those who might be interested, give me a touch. We are hiring… 😉

Geek-a-Palooza!! Geek Speaking!! Windows 8 Development!!

Well, starting strong, I am collaborating on the definition and also speaking of a really cool event called “Geek-a-Palooza”, picture below self descripting:

Imagen

There I will be speaking about Windows 8 Metro style development explaining the attending geeks on how to code the “One Tile” that gathers it all, Portable applications included as a surprise 😉

The session will happen at the beautiful country of Andorra, between Spain and France and is focused for IT & Developers.

For more information, there’s the website of the event, http://www.geek-a-paloozaaa.com/

The only point is that the sessions will be in spanish and catalan…  well you can’t have it all!!

Be Geek my friend!

Windows 8 Metro Application AppBar trick

I’ve been toying around with Metro Applications and have found that there isn’t much information, at least not for .NET XAML applications nor here http://msdn.microsoft.com/en-us/library/windows/apps/xaml/hh781232.aspx nor in the sample application which is located here http://code.msdn.microsoft.com/windowsapps/XAML-AppBar-control-sample-2aa1cbb4

There we have two methods, one we declare an application bar for a page – first thought here is that if it’s an application bar we should be able to declare it globally – and from then, override it on each page…

Well, we can’t do that so what this sample proposes is to do it on every page or to create a container Page control that its function is only to contain the “AppBar” and a Frame that is where we load the different “real” pages. Note that for overriding this we have to code and add buttons programatically to each of the AppBars. 

I hope you will comply that having this this way is a bit ugly, given the beauty of data templating and styling that we do have at this day and time. 

So I came out with a cleaner solution that still requires some coding but is nicer :). 

First we do add an AppBar to a page like:

<common:LayoutAwarePage.TopAppBar>

   <AppBar HorizontalContentAlignment=”Stretch” Height=”88″ VerticalContentAlignment=”Stretch”>

         <Grid>

               <Grid.ColumnDefinitions>

                     <ColumnDefinition/>

                     <ColumnDefinition/>

               </Grid.ColumnDefinitions>

               <StackPanel Grid.Column=”1″ Orientation=”Horizontal”/>

               <StackPanel Orientation=”Horizontal” >

               <Button Click=”GoHome” HorizontalAlignment=”Left” IsEnabled=”{Binding Frame.CanGoBack, ElementName=pageRoot}” Style=”{StaticResource HomeAppBarButtonStyle}”/>

               </StackPanel>

         </Grid>

   </AppBar>

</common:LayoutAwarePage.TopAppBar>

Then, we add a Resource Dictionary and, from the AppBar we select “Edit Additional Templates –> Edit Generated Content –> Create Empty..” for creating a global ContentTemplate for our “global” AppBar.

Imagen

Then we create it on our just created ResourceDictionary..

Imagen

After this we will only need to copy the resulting AppBar code on all of our pages:

<common:LayoutAwarePage.TopAppBar>

    <AppBar ContentTemplate=”{StaticResource DataTemplate_AppBarGlobal}” />

</common:LayoutAwarePage.TopAppBar>

And, if we want to change the default/global AppBar, we do only need to edit one file.  And this without architecting our application nor complicating it more than necessary.

Hope this helps.

Design contest for winning a Lumia 800!

Yes, I know… I am a developer participating in a design contest… So what? 😉

Since the beginning of my career I have thought of design as a very important skill to have, at least a bit, regarding fundamentals of design, color theory, and most important, user interface design, that fits well with “pure design” and usability & all the related knowledge… with this “base” skillset you can be creative and evolve a creativity process for whatever you want to.

Also I have always loved to create things and this is not limited to software architecture and I love to design & conceive things, it’s a pretty satisfying process.

It happens that Nokia Spain is organizing a contest for creating a design inspired by the colors of the new Nokia Lumia 800 mobile smartphone which is not limited in any aspect. You can read (in Spanish) about this contest here: http://eldadodelarte.blogspot.com/2012/01/demuestra-tu-creatividad-en.html?spref=tw and here: http://www.facebook.com/note.php?note_id=349720035043739#16064

So… we can do whatever we want! Yay!

Guess what!? I decided to participate and I started some days ago to let my mind wander around for a cool idea!!

To say that I am a proud Windows Phone Geek and I can tell I was there when Windows Phone was presented 1st time at the World Mobile Congress and also I was also at the presentation of Mango… so I have the Tiles & METRO design language very close to my heart… and with this idea I started thinking of a design that I could wear close to my heart and that revived the Nokia Lumia 800 colors – everything all together!!!

After giving a lot of thought and lots of designs in paper I come to a “Tile scenario” over black that went well with the Nokia Lumia 800 design & showcased its colors properly, and went alltogether with the METRO feeling. It has been designed to wear it close to the heart – you will see why in short 😉 – and clearly showcase the love I have for this outstanding device the Nokia Lumia 800 is and its operating system, Windows Phone.
After a lot of designs, tests, playing with tiles, symbols, I came to this:

ImagenTo mention that I tried to create the tiles using a plastic material on my own buying vinyl plastic tiles of 5cm x 5cm but I failed terribly, tried other materials and well, they did not look good as they reflected too much light (or none at all) so I decided, after trying paperboard & vinyl, to go and order 5×5 tiles at Zazzle.es.
They arrived me the last day of the contest and the quality was good, without flash I have been able to have a clear picture of the creation, which was attached to the sweatshirt through pins – in fact each Tile is a pin.
There is a lot of message in the tiles which are designed to be placed over the heart, meaning clearly “I love Nokia & Windows Phone”.

Imagen

Additionally I envisioned another design were this design would be well placed and also close to our heart, warm and close to our right hand (or the hand that we most use) and did this other variation of the tiles design:

Imagen

Obviously, these logos are trademarked and exclusively created for the purpose of this design contest so please do not use them outside of the contest. For this I have created alternative versions without the logos & trade marks that make them unusable outside the scope of the contest.

Imagen   Imagen

Hope you like them!!