Category Archives: Opinions

OUYA vs Raspberry Pi as a home media center

A lot of people use Raspberry Pi as a media center and I did the same for a while. It worked pretty well in most cases (I used OpenELEC flavour of XBMC), but I kept having WiFi issues. And given that using Ethernet was not an option for me I decided to look elsewhere.

In comes OUYA! The low cost Android bases gaming console can do a pretty good job as a media center too. OUYA comes unlocked, and gaining root access to it is very easy and after installing Google Play on it you have access to a lot more apps, not all of them will work, but a lot of them do. XBMC can do what it does best, play videos from your media server while you can leave the task of accessing Spotify, iView etc to dedicated Android apps which work a lot better than XBMC plugins. Not to mention that it is a lot faster than the Pi!

The only downside (for those who crave it) is limited access to terminal. But you can do that too (within limits) since you can install one of the terminal apps for Android.

The Pi still lives though, but it has been relegated to a small home web server.

NDC Oslo; day 3

Final day of the conference and there were two interesting talks by Andy Hall, not strictly developer talks but very informative talks about how our brain works and how we can make it work better. Interesting stuff!

On developer side of things it was cool to listen to Jon Galloway as he presented the new bits coming out in VS2013. It can be summed up in three words; one ASP.NET and in nutshell it means that they tweaked it all a bit and made it a lot easier to mix different technologies from ASP.NET stack, such as Web API, MVC etc.

Overall, I can say that NDC is good value for money. This year there is going to be another NDC in London, where N will stand for “New”, that is happening between December 2nd to 6th, and the original NDC is on next June between June 2nd and 6th. Recommended!

NDC Oslo; day 2

Today I attended talks about RequireJS, UX, OAuth2 and JavaScript development done properly. It is amazing how we often don’t apply the same good practices we use when developing in traditional languages to Javascript. But the tools are there, testing and CI is possible and has been for a while.

The talks I most wanted to hear today were about gaming. And they did not disappoint. I am all pumped up to start working on the game idea I had.

And finally I should forget Gojko Adzic talk about impacts. Too often we focus on technical excellence rather than on what is really needed. He pointed out that a lot of metrics we use can be meaningless in some cases and that we should be better at determining what we need to measure. A very entertaining talk too!

NDC Oslo; day 1

NDC Oslo is living up to the expectations so far! Some awesome talks today and this is on a day where I had some difficulties picking what interests me the most. The next two days should only get better as I had no such problems with those two when I looked at the agenda last week. Looking forward to some talks about game programming tomorrow.

Today we had everything. From a talk about drones, lightning talk about cloud controlled plant watering system to enthusiastic descriptions of various  laser pointing devices.

The talk that takes the cake for today must be the drones talk. Turns out, RX extensions for JavaScript are perfect for processing the information from a drone. A hackatonish atmosphere and lots of jokes and laughs. Definitely worth watching again when videos of talks are online.

“Uncle” Bob Martin didn’t dissapoint either as he explained everything about laser pointers. He said something about components too. I think I’ll need to read his “Clean Code” book now. But the book is the next subject of our book club at work anyway. Convenient.

There was a really nice talk about AngularJS basics that helped me understand it a lot better now. Then there were two talks about continuous deployment that didn’t uncover anything surprising but they still provided some good takeaways and a nice talk about Instagram clone written in node.js and using RabbitMQ – interesting from architectural point of view.

Microsoft Surface

At work we have a few Microsoft Surface devices that anyone can borrow and it was my turn to play with it over the last 4 days :)

I never owned a tablet and if you are wondering if I am itching to buy one now then read on 😉

The truth is that I mainly write apps for Windows ecosystem, mainly because I am good at C#, having said that I could be using C# to write apps for iOS and Android as well, but I find the license costs for MonoTouch and Mono for Android a bit prohibitive. Anyway, this is why I am more inclined to buy a Windows 8 tablet. Not because I would think that iPad or Android tablets are crap, purely being pragmatic here.

So I had Microsoft Surface at my disposal for the last few days and I realized I don’t really need a tablet. Whether I want one is a different question though 😉

I still found myself using my laptop more than the tablet. I suppose I am more of a creator than consumer and for someone who creates content the tablet world is still lacking. And TouchCover cannot replace a good keyboard and a great touchpad or a mouse.

I am in fact, writing this blog post on the TouchCover keyboard. I do think what Microsoft has done with it is ingenious, but still a compromise. Good for quickly typing away some notes, but a bit frustrating when writing longer texts. Still I think they have done a great job, good to see innovation like this coming from Microsoft, they have been horrendous at marketing their innovations in the past. And if you follow them a bit more closely there is lots of interesting things Microsoft Research is working on.

I think it would be nice if Surface had 3G or 4G connectivity as well and personally I see more value in a tablet running on Intel Atom Clover Trail platform.

No major complaints about the rest of the tablet. Windows 8 is a smooth OS, the build quality is awesome and the Windows store is growing fast in size too. Even though I never really understood the bragging about app numbers from all players in the market. I mean, how many of those apps are actually any good? Writing a good app is actually not that easy. It is not just about being a good developer, you have to know a thing or two about UX and marketing too.

My major complain is actually about the price of this thing and the price of tablets in general. I just don’t think a 32GB 10′ tablet should be priced above $400. And that extends to Apple products as well, while Android does have some products in this price range.

And I am unhappy about the unavailability of Windows 8 tablets in stores. I’ve read that Microsoft is unhappy with sales, but then again, even if you want a tablet (talking about tablets other than Surface here) they are incredibly hard to find. Some say this could be down to some issues Intel is having with their new Clover Trail SOC, OEMs say that the demand is low, others say that retailers just want to clear old Windows 7 stock first. Personally I think it is just a load of bullshit and Microsoft and OEMs need to get their act together.

So yeah, I won’t be buying a Surface. But I do want a tablet so I can test my creations. But I’ll resort to eBay in search of a bargain or just wait until there are some cheaper options on the market. I do hope someone comes up with a 7′ tablet in the near future. If it is priced between $300 – $400 I would buy one, that would be an ok price even though it would not see a lot of use apart from app testing and a little bit of browsing and video watching when I don’t have my laptop near me.

An overdue first post

This should have been the first blog post here, but nevertheless.

Up until now I have been too lazy to start a blog, most projects I start at home eventually fizzle out and I never end up finishing them or they just aren’t polished enough, but after reading Scott Hanselman’s blog a while ago where he encouraged everyone to start blogging I decided to give it a shot and start blogging about things I mess around with at home. If you find the content here helpful then great, if not then let me know how I can improve (and by that I mean in a nice civilised manner, trollish comments will be deleted).

Some of the things are going to feel a bit outdated (like the WCF Dynamic Proxy post today), but I still see those things as relevant or else I wouldn’t be putting a post up about them. WCF might not be hip but it still is a technology that is used a lot in the enterprise.

I consider myself to be a jack of all trades, can do most things but I am not necessarily very good at everything and this blog is going to be a mix of everything.

Now let’s get it going!

Windows 8 Productivity

Windows 8 is released. I have been running it in a virtual machine as my main development for 2 months now, ever since it RTM-ed. And yesterday I installed it on my old laptop too.

I have to say I found it easy to get to grips with the new UI (on an unrelated note; I have recently bought a MacBook for the first time and found the learning curve on OS X and Windows 8 to be about the same) and I certainly disagree with those who claim productivity will suffer. If you use a mouse you will need to learn a few keyboard shortcuts as well as get into a habit of pinning frequently used desktop apps to Taskbar and it won’t slow you down at all.

Personally I don’t find myself switching between Metro (oops, Windows Store) apps and desktop applications very often. If I need to do some proper work I stick mainly to Desktop environment and if I am doing something light I can easily do all things in Desktop. The one exception is when I am debugging my Metro apps.

To take it further, I think you can learn to use Windows 8 very quickly as long as you keep an open mind. I am about to give my old laptop to my mum soon, which is why I installed Windows 8 on it. I think she won’t have any issues learning how to use it and Windows 8 is going to be perfect for her as she only needs her computer to browse the internet, read email and play puzzle games and that is where Metro UI excels.

The strategy Microsoft has taken is a brave one, going all touch is a big change, their direction is clearly to converge towards one OS for all devices. As a geek I am excited about the possibility that one day all my devices will be running one OS, my smartphone, tablet and laptop, well a VM on laptop since I am firmly in MacBook camp now – part of the perception people have about Windows being clunky is certainly down to Microsoft’s hardware partners, my old laptop looks ridiculous next to my MacBook and the build quality… let’s not go there. Anyway I digress a bit, the point is that one day us developers could be able to target three different device types with a single app and that is something to be excited about.