Yesterday in the morning, Alessandro invited me to join a meetup targeting the Hololens. As the Hololens is very rare outside the US, I just needed to join the event.
When I arrived, already one of the meetup attendees was introduced to the Hololens. After some time, it was then my turn. The first “challenge” one has to take is to adjust the device on your head. The Hololens has quite some weight – it is a full PC you are wearing on your head, so not much a surprise.
After I mounted the Hololens on my head, I needed to start the calibration app. You have to adjust four corners you are seeing on the display. This is quite a challenge, but once you have it done, you’re ready to go.
GianPaolo recommended me to play level one of the space shooter game “Project X-Ray”, to get a better feeling for the device. You may probably know this from various Microsoft demos already (if not, click here). The game first scans the environment, and then you have to shot down all the alien robots that are coming out of the wall. As much fun as it is, it is challenging (at least at my age). Here is a shot of what I (and others) saw:
After that, I tried the Galaxy Explorer app. It is amazing, you can zoom in and out of the point of interests in the 3D galaxy map, pretty much like we know already from some science-fiction movies. Here’s a shot of me in action:
One thing needs to be clear. The Hololens does no longer interact with any object like we all are used to. It takes user interaction to a whole new level. You’ll have to learn some gestures, like the “bloom”-gesture to open the start menu. But that’s only how you control the device. We all will be able to add our own ways of interaction in our apps (that we will write one day, I bet!). I have already some ideas what I could do (well, also thanks to my kids and wife, tbh). One of them is a holographic version of my first app I ever wrote (which is a fishing knots tutorial app with animated step-by-step guide).
What about you? Do you have ideas for Hololens apps/games? Sound off in the comments, if you want to share your ideas. You can also find more info on Hololens development here on MSDN.
To close this post, I want to thank the team of IBV Solutions for this absolutely awesome opportunity. Thank you, guys!
2015 was once again a year where a lot happened. My year began with the start of a new job – I am now employed as a full time developer at the Swiss Shareholder register ShareCommService AG. The first days in Switzerland where full of trouble, as I needed to start from scratch in a new country. I found a room in a shared appartment, which was quite ok for me alone. Internet, phone, insurance, pass port – these were the things I had to do in the first weeks besides learning all the new things that you usually do when entering a new company.
As part of my new job, it was also heavily demanded that I finally get deeply into MVVM. I always read a lot about that, but avoided it because I wanted to get things done in my private projects. My MVVM learning project was a WPF timer app that supports resuming, multiple timers and more. I learned it in the only right way: without any frameworks/toolkits, which helps a lot to understand what is going on. Needless to say that I am happy to be past this point, as we are using MVVM Light a lot in our LOB applications. LOB (Line-of-Business) applications are different from what I have done before. They are used only internally and directly affect our daily business. I also learned more about SQL and databases, and also SignalR took a big part of my learning curve.
I have the luck to learn from Roman Müller, who has a gigantic amount of experience in programming and also has always some funny programming story to tell from his past. Together with Reto, the second programmer in our team, he teached me a lot – not only programming things, but also better ways to analyze and think about situations where you can end in programming. I am really thankful to be part of this team. Our system administrator Stefan, which I like to refer as a ‘BOFH with the heart on the right place’, makes the team complete.
During the year, I participated also in several Annual General Meetings (AGM) of our customers. This was very helpful for me to understand my new job, as we are responsible for all things regarding the votings on their agenda.
My first private project this year was to rewrite Voices Admin as a universal (Windows 8.1) app. Of course I did it as plain MVVM app, and it helped me a lot to get even deeper into it, and also boosted my learning curve in my daily job. I updated my UserVoice library as well to be fully portable in the meantime. Currently, I am working on the UWP version of UniShare.
My family stayed in Germany for several private reasons in the first month of the year. Beginning in August, we moved completely to Switzerland. I am happy that we passed this point as my family is very important to me and is giving me a lot of power. I have to thank my wife and also both of my kids for their understanding, as being a programmer is often very time consuming.
I also discovered a completely new area: the Internet of Things. With the Rasperry Pi2 supporting the Windows 10 IoT Core, I played around with it, learned a few new things about building hardware – and build a prototype for internal testings.
You see, I had a year full of action, and I tried to make this post as short as possible. I am looking forward to 2016, where my developer story will continue. I did also blog only a few things this year, and I am trying to keep things up and post more frequently next year.
For now, I whish everyone all the best for the end of this year and also for 2016!
We are close to the end of this year 2014, time for a little review.
At the beginning of the year, I was mostly busy with working on my UserVoice library that makes it easier for me and other developers to integrate UserVoice into Windows Phone apps. I also launched Voices Admin, the companion app for the library. I will start to rewrite this library in 2015 to make it a true Universal library for Windows, Windows Phone as well as Xamarin (and make it return objects instead of naked JSON strings).
I also had some troubles with my former hoster, which lead to a total domain chaos and finally ended in January, too. Thanks to Azure Websites, the transition should have been without problems. At Telefónica, I was busy finishing the internal App “Friends & You” for Android and Windows Phone. I learned a lot using Xamarin for the Android version, and even more about corporate rules and requirements. In the beginning of December, I also finished the iOS variant of the app (using Xamarin.Forms) – which is sadly set to be not launched for the moment (mostly because of my departing of Telefónica).
During the year, we also received the Windows Phone 8.1 Developer Preview. It removed the ability to cross post on social networks on Windows Phone. As this was one of my most used features, I decided to solve this problem for myself and started to write my own cross posting solution. As some of my followers recognized this, I continued my efforts to a more public and polished version, the result is UniShare for Windows Phone.
Since the first WP8.1 Developer Preview, we also have Cortana. Cortana is an awesome piece of software – if you are willing to use your phone with English and US region settings. I tried the UK version as well as the Italian and German version, but was only satisfied with the US one. I truly hope that the other countries will be on par in 2015.
I also updated my very first app ever (Fishing Knots +) to a Windows Phone 8 only version, leaving the old version for WP7 users. Also my NFC Toolkit received some love (and will receive even more in 2015). On top, I started to work on a Universal library for WordPress, which I will also continue to work on in 2015 to make it even better.
One of my saddest geek moments was when the screen of my Intel developer Ultrabook broke shorty before Christmas. As I need to be able working while on the go, I needed a replacement. I found it in the ASUS TP300L Transformer Flipbook, which is an awesome piece of an Ultrabook. On top, Santa (aka my wife) gifted me an HP Stream 7 tablet, that perfectly fits my needs for a tablet use (reading, surfing, playing some games). And so this part also turned well.
The most significant thing happened in September, when I read about a job as a C# Junior developer in Switzerland. I am truly happy about the fact I got this job (read more on it here), and already learned some new things in WPF. Currently, I am also working on my first WPF application, that is a practicing project for my new job I am going to start next year. Which leads me to the end of this short review.
2014 was a year with ups and downs like every year. I had some trouble in “first world” that we were able to solve as family (and friends), but made some good success in my geek and dev world. I am looking forward to 2015, where I am starting a new chapter in my dev story (with becoming a full time developer). But there are also some nice side projects, like maybe porting some apps to Android as well as the Internet of Things, which I am looking forward to dive in deeper. And of course, like any other MS fan, I am looking forward to the next evolutions of Windows 10!
What are you all looking for? How was your 2014? Feel free to comment below.
Yes, you read that right. Today was my last work day at Telefónica, where I worked since June 2007. During that time, I learned a lot about how good customer service should be, and even more about mobile networks and mobile devices (phones, tablets and more). During that time, I also started my dev story in my spare time – all because there was not a single fishing knots application available for Windows Phone (read more here).
This lead to get recognized also within Telefónica as a developer, and so I was asked to concept and develop the application Friends & You (nope, you can’t download it as it is an internal app). I learned a lot about how corporate apps aren’t that easy to concept and build during that time, as well as as how restrictive corporate rules can be. After all, I had a few challenges to complete. Thanks to Friends & You, I was also able to dive into the world of Xamarin, where I learned a lot about the application structures of Android and iOS (which will be helpful for eventually porting some of my Windows Phone apps to those two).
I want to say thanks to my colleagues, you´re awesome! Keep up the great work you´re doing in Customer Service.
Back in September then, I opened up my Twitter app and the first tweet I read was this one:
I opened the attached document and read the job description. As an self-thought developer, I first was about to close it and put it aside as “read and done”.
Due to the head count freeze at Telefónica after acquiring e-Plus from KPN, there are no chances to become a real full time developer within Telefónica for the next time. But that is what I want to do. After reopening the document and reading it again, I decided to get in contact with Roman Mueller (who I knew from Twitter already).
We talked about the job itself and the circumstances behind the announcement. After a few talks and a visit in Switzerland, the decision was made. I am starting the next chapter of my developer story in January, moving to Switzerland, where I will add deeper SQL knowledge, WPF and a lot more to my development knowledge.
At this point, I want to thank ShareCommService and especially Roman for all the help I received already to make this all happen and get started.
It is going to be an exciting journey for me (and my family), and we are ready to go.
Last night, the news were full of the decision of the grand jury in Ferguson (USA) (because of a young black man that got killed by a white police officer) and the following riots. A lot of discussions took place, be it at work or also on social media. The common bottom line: racism just sucks. I normally avoid such harsh words or decorate them with an asterisk, but today I need to write it out.
the prejudice that members of one race are intrinsically superior to members of other races
discriminatory or abusive behavior towards members of another race
What I learned is that both are closely tied together. If one thinks that his race is superior, it leads to bad behavior against those from the other race.
My Family and me are experiencing this quite often. Being an Italian family living in Germany, we often got discriminated because of this. I do not want to got to deep into details, because drilling into old (and not so old) wounds isn’t helpful for the message of this post. The only comment I am leaving: it can be quite challenging to overcome this.
During our history, a lot of racism took place. Be it the Roman empire or the Spanish conquistadors, the early Americans or the Germans (this could be an endless list): they all have behave racist. This needs to come to an end. No race on this planet is truly superior in all aspects to all others. All races have their own aspect where they are superior to others. But instead of discriminating the other race and search for the point where your race is better than mine, we should look into where we can learn from each other.
We are all strangers here, no matter where we are born or live.
I like how my wife thinks about this:
We are all strangers here, no matter where we are born or live. We don’t own this planet. We are only guests that are tolerated on this planet. Instead of being violent to each other because of different races, we should more collaborate to continue being tolerated at this planet.
She is right. It does not make any sense that we fight against each other because of the color of our skin, our language, our nationality or religion. It does not make any sense to be abusive against each other because a few people scream out loud that they think they are better because of their race. In fact, they are screaming out that they think to be better than everyone, even those of their own race. There will always be people that follow blindly just because they want to live as convenient as possible. But it is up to everyone of us to change that.
I can’t help, but at this point of writing I feel in the mood for “We are the world”. One of the lines is “We can’t go on pretending day by day that someone somewhere will soon make a change.”
Everyone is responsible for his/her behavior. Everyone is responsible to NOT be a racist.
2013 was a year with a lot of surprises. It was a year full of community work for me as well as a huge learning year in development. But my year had also dark clouds on heaven. This post is my personal review of 2013 – you can like my impressions or not.
I started the year with releasing my first Windows 8 app ever, along with an huge update to my blog reader app for Windows Phone. I wrote several blog posts and started also development of my NFC Toolkit app for Windows Phone (Archive: January). I also ran a beta test for my NFC Toolkit, and finished my series about the parts that should help other developers to write a blog reader app for both Windows and Windows Phone (Archive February & Archive March).
Then in April, the first time I had dark clouds hanging deeply in my life, affecting all parts – family, community work and also my 9to5 job. My wife had once again problems with her back, caused by slipped discs. It went as far as she needed to rest in hospital for a pain therapy. Luckily this therapy was helping her and our life went back to normality (knocking on wood).
I also started a new series on the WinPhanDev blog – Why we started developing (WWSDEV). We are collecting stories from developers, and posting them over there to motivate other developers and keep the community spirit alive. Just have a look, we have really great stories over there.
In the last days of April/beginning of May, Iljia engaged me to start using Windows Azure Mobile Services to make an app idea reality: TweeCoMinder was born. It is a very special and unique app, interesting for those that don’t want to miss their special counts on Twitter, supported by real push notifications via WAMS for both Live Tiles and Toast Notifications. I learned a lot during setting up my WAMS for the app, and I did also write some blog posts about that (AzureDev posts).
Because of TweeCoMinder, I stopped developing my NFC app for that time, and did only bug fixing updates to my other apps.
In August (at least in the spare time I had), I moved my blog completely to run in a Windows Azure VM. I did it to get more control over the whole system and to learn more about running a web service. I still need to write my blog posts about setting the VM with LAMP on Azure, but I just didn’t have time for that until now. In August/September I also had again very very dark clouds hanging around, with my wife was very ill (you can’t even imagine how happy I am about the fact she has this part behind her). But our daily live is still affected by this – we just learned to arrange us with the new situation.
In October, I got back to my NFC Toolkit to finish it finally. The app has some cool and unique features utilizing NFC tags, and I am quite satisfied with my download numbers. NFC Toolkit is my main project for the moment.
But also on my 9to5 job I came to write code. I was asked to write an internal app for Windows Phone (Telefónica has a partnership with Microsoft, and so the company is flooded with Windows Phones). I used this to learn more about speech recognition on Windows Phone, as this is part of the application (Make your app listening to the user’s voice).
And finally, I also started with my very first Android app using Xamarin while porting the Windows Phone app I wrote before. I recently started to blog about my experiences with Xamarin (read more here).
In between all those projects, I made a basic reader app for the fan blog “This is Nokia”, using a PCL project for both Windows Phone 8 and Windows 8. I also wrote a simple car dashboard app to integrate it in my NFC Toolkit app as well as Mix, Play & Share, which was written on a lonely Saturday night while my kids where sleeping an my wife was at her best friend.
Through the year, I learned a lot of coding, but also a lot about people. I made some very positive experiences – but also bad ones. I am always willing to help (if my still growing knowledge enables me to do so) – but sharing a feature rich app to another person isn’t helping – if you want to learn about development, there are plenty ways to do so. We have really great developers that blog about their experiences in our community, and by understanding how to code, you truly learn. Just using an already working app and restyling it, is the wrong way.
Well, that is what my year was about – a lot of coding, learning and again coding.
Dear followers, friends, WinPhans & WinPhanDevs – thank you for being with me this year. Let’s make 2014 an even more exciting year.
I wish you all “a good slide into the new year”, as we say here in Germany. May god bless you and your families also in the new year.
The year is coming to an end soon, so I wanted to write a short summary of my 2012 with Microsoft and MSicc.net.
I started the year with a clean install of the Windows 8 preview, and was using it since then as my main PC OS. Everyday I felt more in love with the speed of Windows 8 and the idea of using apps on a PC. Microsoft constantly updated their previews over the year, until the final release.
Also Windows Phone was getting new attraction with the awesome Lumia 900. Nokia and Microsoft started a big ad campaign to support the launch of this device. Surely some of you will remember of “The smartphone beta test is over”.
Over the year, Microsoft did tease us a few times with Windows Phone Apollo. We all thought in the beginning that our existing devices will be getting the Apollo treatment, until MS unleashes some more details about Windows Phone 8. Windows Phone 8 shares a lot of the OS with Windows 8, so naturally there has to be new hardware. Windows Phone 7 will get 7.8, which will bring at least the look of the start screen to older devices.
Another beta program was launched for the Xbox Dashboard, which had better voice functionality, and of course another big thing: Internet Explorer on Xbox! That is really awesome as we are now able to surf the web with Kinect support as well as the Smart Glass app on your phone/tablet/PC.
Which leads me to another fantastic release from Microsoft. The Smart Glass apps, no matter on which platform you will use it, extends the experience of films, games and also your Music experience.
Talking about Music, Microsoft finally launched their Music Pass in Germany. Personally, I was waiting for this since the initial release of Windows Phone 7, and now they finally launched it. I did not wait a second to cancel my Spotify subscription, and switched to the Music Pass. And I love the experience, be it on WP7, WP8 or Windows 8/ Xbox, my collection is synched across all devices. I can choose which Songs I ‘ll keep in the cloud for streaming and which I download, so there is always a growing collection for me now.
I was also attending several developer days from Microsoft, which helped me in some parts of my own dev story. I updated Fishing Knots SE and plus several times this year and created I learn to tie my shoes, which is getting really good reviews all over the web. If you want to take a look at these apps, they all come with a test version, just type MSiccDev in the search, you will get a list with all of my apps.
Sadly I have a bit trouble with the updated version of MSicc’s Blog for Windows Phone, I hope I can release it in early 2013, so you all can read and discuss or share articles from your phone.
Of course all of my Windows Phone apps will receive a special Windows Phone 8 update while keeping the work on the WP7 version.
I have also started development of a Windows 8 app for MSicc’s Blog, which I will submit in the early 2013 days to Microsoft to get it approved for the Windows 8 store.
My personal highlight this year was to attend a keynote of Steve Ballmer himself, which was absolutely motivating as user and even more as developer. He really knows how to keep the crowd attending, and I really have to thank Microsoft Germany for this unique experience.
I want to thank Mark and Sean for joining me here on MSicc.net to entertain and inform you all, I bet we will see some awesome articles of both next year!
A big thanks also to the WPDev & Win8Dev community out there (you all know who you are). Keep up your great work and please keep the community alive!
Now I will come to an end with this post, as I want to further play around with my awesome Lumia 920 which Santa (aka my lovely wife) gifted me this year at Xmas.
What were your highlights this year? Leave a comment below!
As here in Germany is said for the new year wishes in advance: “Have a good slide into the new year”, stay safe and enjoy your time!
As some of you know, Microsoft CEO Steve Ballmer himself visited Berlin a few days ago. First I want to apologize for the delay this post has, but sometimes there are things that can push things back. I am still amazed about the fact that I was able to attend this event.
The evening started with a short introduction of the recent Milestones Microsoft achieved, presented by Microsoft Germany CEO Peter Jaeger. The second part was about to show the integration of cloud services, presented my MS Germany Developer Evangelist Gunter Logemann. He reminds us developers to use the advantages of this integrated services.
At some point Steve Ballmer entered the room, and we all got a bit more nervous (yes, I was only two meters away from him!)
He was introduced with his own Windows Phone screen ad video, and started with a little joke that he was wondering who was talking while he enters the stage. Great start for his exclusive keynote.
He then switched to do what he is very good at: talking about Microsoft products and the possibilities they offer. He started with some numbers and feedback about Windows 8. In only 14 days, there were more than 4 million upgrades to Windows 8, and the press and blogosphere was positive about Windows 8. He was absolutely charmed about J. Topolsky`s comment: “Who have thought that in 2012 Microsoft would be the company with the boldest phone and software design?”. And of course we all were charmed about that, too.
Then he introduced the ecosystem “Windows” to us. No matter which device, Windows will be the core experience. And this experience is alive with activity – the user’s (our) activity. No matter if you are on your PC, tablet or on your phone or Xbox.
He continues that Microsoft is “All In” with the new Metro design language (well, he called it Windows 8 style, but we all know he wanted to say Metro). All main products where updated to the new design language to make a unique UX across all devices.
Steve is still amazed about how fast and fluid content is synchronized across devices via the Microsoft cloud – even though Microsoft created this whole experience. And every developer is invited to use it to create amazing apps!
Nearly at the end of his speech some developers where honored for Windows 8. Their apps were created in the Darkside Bakery project and are already available on the Windows Store.
Sadly I did not have to opportunity to talk to himself or at least shake his hand. But it was amazing enough to see and hear him live and in person. Thank you, Microsoft, for this very unique experience I do not want to miss! Steve’s speech was really motivating, and I will go “All In” with Microsoft. How about you?
I did not plan this post, but as I received an email yesterday from another developer, this changed. This post will be an Editorial about the relationship between developers and users.
Users and developers do have a problem. Users have expectations for our apps. We developers have to fulfill these expectations. Here is an image I found on the web, that describes the situation quite well:
Of course, this is a funny Picture. But in the last few weeks sadly this image turned out to be kind of true. I talked also to other developers, and they made similar experiences. I will try to explain why feedback is important to us developers.
It all starts with an idea. The idea can come from a friend, a family member or from a situation your life. For my very first app the situation was simply the app I searched was not out there in the marketplace and it is no pleasure to use the mobile web in some situation (e.g. while fishing). For another app a discussion on my primary work was the reason.
If you are an app developer, you now sit down and create a concept. You have to think about a lot of things:
which features do I want in my application?
do I already know all to get this features into my app?
where can I learn about features that I want but do not know how to code them?
How does the UI have to look?
How much time will it cost to create a first running application?
what are the limitations of the OS I am coding for?
how can I promote my apps?
and certainly a few other things
Until now, we do not have written one line of code, but already spent a few hours if not days only in planning phase. At some point, of course we start coding. The coding and designing process is followed by ups and downs, where you have to reconsider features, sometimes even have to rethink your whole attempt on how to create the app.
I have a very good example for that. Initially I tried to use animated gifs in my app “fishing knots +” . It turned out that Windows Phone does not support this image format natively. So I searched a way to achieve my goal and let Windows Phone learn it within my app. There are some solutions out there, but I was not satisfied with the result. So I started to search for alternatives and found one that suites it very well: a storyboard for each animation. But then I had another problem: For a storyboard animation, you need single images, not a finished gif animation. Luckily one of my co-workers could help me out and created the images for me, so I was able to use it. But it took also some time for him to create the images (12 knots with at least 10 images). I created the basic images, and he did his magic. The result was great.
Now we have a very basic version of our app that runs, and can also be shown to some people. And of course, friends, coworkers and family are your first “customers” that give you some feedback. You should be grateful for the feedback they provide, as it often offers you sights on which you do not think while developing the app. Also if that means you have to rewrite a bunch of your code. They are no developers (in most cases). They are just users. Let them play around with your app (best on a real device!), and do write down every single point they tell you. Feedback is good, and helps you to evolve.
Now that we have done this, our app at some point reaches the state of being submitted to the Marketplace/Store. You should never start with a final version number like 1.0 for that. 1.0 suggests a user that it is a finished product with nearly no error. And they errors will come. I did not see a single app that was without issues on the first release, neither on the following updates. This counts for my apps as well as for apps of other developers. But that is not a bad thing. Once you have published your app, you have the possibility to obtain more feedback. This time from real end users.
To achieve this, you should offer a way to give feedback within your application. Here is my attempt that I have in every of my apps:
As you can see, I integrated a few ways to obtain feedback. I created a twitter handle, where users can give feedback and follow for actual announcements for my apps. Nowadays a Facebook page is also an advantage, and then users have the ability to send me an email to provide more detailed feedback. And one thing you never should miss: a direct link from your app to the review section of your app in Marketplace.
So from our part, we did all to get some feedback. Now to you, user of our app! We want you to give us some feedback! What we want is feedback that helps us to understand what you expect.
Sadly a lot of users are rating an app with less stars, providing no feedback or only harsh words for the app. A rating for an app was delivered with less than 5 stars because the app is not free. Another one gave me 1 start and as comment: “great”. That is not feedback that can be used to improve the app.
Another example is glƏƏk! for Windows 8. It is an really fast and fantastic twitter app. I use also their Windows Phone version, and I am absolutely happy with it.
The first versions of the Windows 8 app had some problems and was crashing a lot. Users, of course, wrote that into their reviews. But how many of them did give them feedback to improve the app? As I am in contact with the developers, I know that they did not get a lot of feedback to iron out all those issues. Feedback is important to us developers. We need to know in which cases you, the users, have the issues. We have to reproduce the error, but that is nearly impossible without your feedback.
I understand that you give a bad rating to an app if it crashes a lot or if you are constantly facing other problems. And we developers try to iron out every single point you tell us. If you see that the experience has improved, you also should honor the work we do for you and update your rating and review. glƏƏk! had some issues like all other twitter clients on Windows 8, too. In the meantime, glƏƏk! was updated nearly every day to iron out other issues, and finally we have a non crashing version. But no one updated their reviews and ratings. Sure, some may have uninstalled the app, others are having it still but do not updated their rating/review. This is frustrating for developers who do not get a lot of feedback via email or other channels but only via the ratings.
Please, do not take this as advice to not rate our apps. We want your ratings. But be fair. If something is wrong with one of our apps, please tell us! But I beg you to understand that we only can work with quality feedback, so please use twitter/Facebook/email, whatever we offer you. Give us as much information as you can, answer to our questions if we have them to you. And please update your ratings after we have ironed out your issues.
Please not also that we are no aliens. We are humans like you after all. And we are also users.