littlebigtomatoes

Design.Create.Smile.

All Navy Outside and a Pirate Dying to Be Released Inside

| Comments

She was then hired as a senior consultant to Digital Equipment Corporation, a position she retained until her death in 1992, aged 85.

Her primary activity in this capacity was as a goodwill ambassador, lecturing widely on the early days of computers, her career, and on efforts that computer vendors could take to make life easier for their users. She visited a large fraction of Digital’s engineering facilities, where she generally received a standing ovation at the conclusion of her remarks. During many of her lectures, she illustrated a nanosecond using salvaged obsolete Bell System 25 pair telephone cable, cut it to 11.8 inch (30 cm) lengths, the distance that light travels in one nanosecond, and handed out the individual wires to her listeners. Although no longer a serving officer, she always wore her Navy full dress uniform to these lectures.

Grace Hopper invented the compiler and coined the term debugging. The two things I do in most of my professional life. She must be a truly remarkable person and I owe her my job! :)

Stop the Troll

| Comments

What does this sound like? Yes, it’s a textbook case of a protection racket. It is organized crime, plain and simple. It is an abuse of the legal system, an abuse of the patent system, and a moral affront.

In the face of organized crime, civilized people don’t pay up. When you pay up, you’re funding the criminals, which makes you complicit in their next attacks. I know, you’re just trying to write a little app for the iPhone with in-app purchases, and you didn’t ask for this fight to be yours, but if you pay the trolls, giving them money and comfort to go after the next round of indie developers, you’re not just being “pragmatic,” you have actually gone over to the dark side. Sorry. Life is a bit hard sometimes, and sometimes you have to step up and fight fights that you never signed up for.

I think the last sentence is classic and I fully agree with it. Life is a bit hard sometimes, and sometimes you have to step up and fight fights that you never signed up for.

There are some very awfull software patents granted in the past and there are some, who are clearly abusing this system. Let’s stop these trolls together!

Exploring Xamarin iOS on Windows

| Comments

Xamarin not so long ago released the version 2.0 of their product that allows all .NET developers to use C# and .NET libraries to code apps for iOS and Android. Better yet, it allows us to use our bellowed Visual Studio.NET to code for these platforms.

I love to try out new things, so I decide to figure out if it is really possible to create very basic application for iOS and for Android purely from Visual Studio.NET.

Getting Started With gridster.js

| Comments

I am looking into to learn more about web client side programming, but whenever I find an interesting project I am overwhelmed with the unknown names of different libraries and technologies mentioned, while reading the project’s page. Consider Dashing for example. They mention Sinatra, Heroku, jQuery.. These are the ones that I have at least a slight idea what they are good for. But the list continues: Sprockets, Gridster.js, Server Sent Events and batman bindings.

This is nuts, I do not understand any of these. So I decided to divide and conquer the problem and try to focus on one unknown technology at a time. The aim is not to master the library, but to construct a minimum viable sample that helps to understand what it is good for.

Let’s start with Gridster.js.

Gridster demo page

The project page describes this library as:

OverConsumerizing

| Comments

Microsoft has the tendency to overdo things. It happened before with .NET around the 2000s. They started to call all of their product ending with .NET. Do you remember Windows Server.NET or Windows CE.NET? Now, they are back with overdoing other stuff such as secrecy, not listening and neglectic developers with Windows Phone and Windows 8. Hal nails it again:

Let me contrast three strategic thrusts going on at Microsoft. Windows, Windows Phone, and Azure. Windows and Windows Phone are in the “shut up and ship” camp. Azure is in the ENGAGE camp. It seems like every week Scott Guthrie is announcing new Azure technology previews or releases. Everything about Azure is exciting. Amazon, Salesforce, and a few others defined cloud computing. Azure is displacing them. It has the Big Mo. Let me make this clear, AZURE IS GOING TO WIN the cloud computing infrastructure and platform battle. Meanwhile Windows and Windows Phone continue to alienate their ecosystems. It is unclear if Windows Phone will ever amount to a significant third ecosystem. It is unclear that Windows will be able to halt an overall market share decline against IOS and Android tablets. Azure developers are excited. No, it’s beyond excitement. Windows and Windows Phone developers? Not so much. They are, at best, conflicted. Azure is doing platforms right. Windows and Windows Phone? They prefer to “shut up and ship”, even if it risks no one caring what they ship….

Git and Visual Studio Are Awesome Together

| Comments

I love Visual Studio and I love git too. What can be even better than this? Visual Studio 2012 integrated with Git. The two together are pure awesomeness and I fell in love with them.

Git Source Control Provider

There is a provider that you can install in visual studio 2012 and you will get git integration. It can talk to tfs, if you use git there. IT can create local git repos and even can clone repositories from github or from other git hosting servers.

Fixing the SelectedItems Property Binding for the Silverlight Listbox Control

| Comments

I recently had to implement a feature in our silverlight app, where the user can remove multiple items selected in a listbox. The project uses the MVVM pattern, so all logic and state is handle in the ViewModel class. When trying to implement the multiple selection, I needed to add a property to my viewmodel that would be a reflection of the items selected on the view. It turns out the ListBox control does not support binding against the SelectedItems property for some reason.

This article describe, how the problem has been solved.

Mass Customization of Apps

| Comments

But in the past couple of months we’ve noticed another category of customers, and that group is growing fast.

I call the trend the “mass customization” of apps, to borrow the manufacturing term. This group creates app templates designed for a particular industry and then customize those templates for each end customer. The customization could be as simple as different branding but more often includes adding differentiating features also.

This article is a total eye-opener for me. With this trend, non-native apps (HTML-CSS-JS have now an edge over native mobile apps. The common source code base. With this common code-base, you can provide customizable apps that can be built and packaged from a web page and deployed much faster. Obviously, you will not build cutting edge racing games or first person shooters in html, but it does not matter. You can build awesome apps to large customers on all platform using the same codebase.

This is totally awesome!

The 5th Recommendation to Get Better at Designing Windows Phone Apps

| Comments

It seems I am unable to count to 5. In my last blog 5 ways to get better at designing apps for Windows Phone I promised 5 ways and I delivered only four. This is the follow up, where I try to give one last piece of advice.

Write apps for yourself

You need to scratch your own itch. You need to solve your own existing problem, so find something you truly miss from your phone and then solve it! This way you will have an app that make your life better. Also, you will use this app every single day, so bugs and problems with your app surface much quicker and it will be easier to fix them as you are the one, who designed and coded it. But be very careful….

Do not write apps that no one will use…

I am guilty as charged. I had this idea of sending emails to myself and wrote the app. It took me three months of hard work and when I finally released it, there were only a few downloads. This is not the end of the world, because I use the app myself several times a day and learned lot of stuff, while designing and coding it! But when I started to promote my app, no-one seemed to understand what problem of theirs that my app will help to solve.

I found a solution to a problem, that seemingly no other person on earth had. Frustrating, but the key lesson I learned is this - similar to designing your app - you should start promoting your app, before you start coding it! Go out and explain the idea behind your app and the problem it tries to solve. Find out that others are having this problem too and pitch your app to them. Embrace the feedback and in the end you will have a much better app. Learn from my mistake and do not create your app in vacuum…

5 Ways to Get Better at Designing Apps for Windows Phone

| Comments

I am constantly trying to improve the quality of apps that I am publishing on the market for Windows Phone and Windows 8 or to other platforms in the future. In the last couple of days I try to think ways how I can get better at designing and creating apps. My primary device at the moment is a Lumia 800 and my primary desktop OS is Windows 8. These are not the dominant platforms yet, but I am hoping they get more popular over time.

Buy an iPod Touch

If you try to sense what is the golden standard of apps on today’s prime platforms in terms of speed, design or popularity you really need something that you can try these apps on. Cheapest and best is to buy a used iPod Touch. This way you will feel what are the popular todo apps doing in the productivity category, if you are planning to write one for Windows Phone. Once you have the device, try as many apps as you can. Feel the speed and the attention to details that went into the app. Feel the love that went into the app. This is the quality you should aim for with your apps too!

For extra kudos buy a cheap android phone or tablet or both if you have the money. This is money well spent as you can start writing apps for those devices as well.

Say no to the cookie cutter approach

You have an app idea that will rock the world and make you rich. You need to move fast. Launch Visual Studio and quickly create a new project using the pivot app template. Code like crazy. Test, Test, Test and upload to the market place.

Just slow down for a second. This is how you create an app that does nothing to differentiate itself from the tens of thousands of other apps that are already on the marketplace. There must be a better way to differentiate it. Think about using different colors than the system accent color.

I know that the metro design guidelines are saying that we need to honor the user’s choice of accent color and theme, but honestly as a user I need to puke when I see one more cookie cutter pivot style app that looks like all the other apps on my phone. I need opinionated apps! I need apps that stands out and they have personality!

Animation, Animation, Animation

Same here with the default controls. Pivot was great two years ago and remains very useful today, but now it feels a little tired to me. If you have an idea just to spice up a little the pivot the it is great. If you can come up with new interactions even better.

The other one is the animation between page transitions or other interactions in the apps. Expression Blend is such a wonderful tool and animation is so easy there. I need more of that.

Best Windows Phone App award

This one is for Microsoft. They have a cash. They have a yearly developer conference. For the love of god, take a page from Apple book and copy their app awards at WWDC. Each year on your developer conference you need to do app awards too. Give out prizes. Recognize the best designed apps for Windows Phone and Windows 8. Recognize the developers and help community. Give them prominent place on the event site, maybe mentioned them in the keynote on day one! Announce these apps to your developers, so they know what the direction is going forward and what is the quality bar for apps. Raise the bar for everyone! It would do more good than coming up weird technology demos showcasing features of unreleased technology.

Ok, this post turned out to be more of a rant, where my Windows Phone user side addressing the Windows Phone developer side in me, but I think they are points and I am going to follow them!