Mobile First Strategy

These days it is not enough to have a website, oh no, those days are long gone. Even for business geared apps, it is expected not only good online presence, but also apps for major phones and tablets. This obviously puts a lot of pressure on founders of new companies as it requires effort times 3, often more to get to same place as before.

#Mobile First
Some popular startup thinkers suggested mobile first strategy for several reasons. First one would be that you get into hands of potential customers, target audience quickly, so if you have to develop something, do it mobile first, that way you will always have that essential mobile presence and you can always develop website later.

For a large number of startups this makes sense.
Another argument in favor of this approach is that mobile first also provides best experience on mobile devices, as it was developed for them first, not as a copy of the website.

Another advantage with this approach is, that is very hard finding mobile developers who are good, so once you are done with that, other things are much easier.

In essence, mobile experience is very unique format and developing specifically for it does bring better experience for end user whoever that might be. Also, features like location, position, snapping pictures, these are all things that are natural for phone or tablet and not so much for desktop.

Main dissadvantage is that still most activity is happening on the web a.k.a. desktop and not having a website can put you at disadvantage when you need to be discovered. It is much harder making people install new app on their already overcrowded phones and tablets.
If you app is genuinely unique, it would be very hard to explain that without good website.
Another really worrying trend for all the mobile apps is that people don’t stick with them, they use it for a short while and then abandon for next thing. It has to be really super useful to stay on the phone or tablet.

#Middle ground
So far middle ground is to develop webapp with responsive design. Responsive design even with frameworks that aid it’s development is hard to do right, because it is simply one site to serve two different platforms.

For some apps, this will work well and it will be just fine. For some, not so much.

Also, for games, making it mobile first will make it very addictive as customers can play it at any moment in time. On the other hand, making it like facebook app would allow this app to be spread virally much easily. FB apps can be mobile as well, but it is much easier to notice others playing and be inticed into playing if you are on the desktop.

I personally like responsive design that adjusts to mobile, tablet or desktop. It allows me to orchestrate user experience from single point. There are apps that simply require well done mobile app.


ActionMethod update

I have update on my previous post about ActionMethod. TL;DR I use orange to mark in progress actions.

A lot of people suggested other tools that would somehow help me better. I appreciate all sugestions sent and all of them were good. While some have some of the aspects better, Omnifocus, Things, they are bound to Mac platform and it is always better to have your actionable items with you everywhere. Also I’ve seen those tools and tried them long time ago. If I would pick one, I would take HitList as great tool and while using it, I remember I enjoyed it quite a bit.

I don’t believe it is a to-do manager I need, ActionMethod is a tiny bit more which is why it is so valuable to me.

Issue I had with ability to mark actions that are in progress or the ones I would like to do next or in immediate future, I resolved. ActionMethod has three colors to mark your actions. I started using orange to mark things that are either in progress or I plan to do soon. I’ve been doing this for few days already and it seems to be working well.

I wish they would address that, also, my critique of ipad app stands, they can do much better.

One last, very important thing. You should not jump from tool to tool and always get next shiny thing. I managed to do quite a bit of really good work using actionmethod and I will continue to do so. I wish it would expand in parts that would help me with planning, but I will not go on and create another to-do app :), that is for sure, I have better things to do.

Celebrating Failure is Wrong

Enterpreneurs, especially wanna-be ones, as well as first time startup hot heads often will promote this as a way of encouraging themselves in the face of failure: “It is OK to fail, we learned a lot”

If you are doing a startup, or starting any business, you want to succeed and you want that badly. Also, you should learn everything possible to make this true. It will never and I will repeat this, It WILL NEVER BE OK TO FAIL. You will fail and you should pick it up and try again, but you should never think that it is OK to fail.

Steve Blank and Eric Ries don’t say that it is OK to fail, on the contrary, they want you to use systemic process in order for you not to fail. Being organized and having systems in place, kind of going back to my previous posts about ActionMethod and Behance, these things are super important to get you to a point of success.

Don’t be fooled, even with all their wisdom you and I will fail, a lot. I learned to embrace the risk over the years, this doesn’t mean I will ever think it is OK to fail. And you know what, if I am doing it with my own money and time, it can be OK. If I take moneyz from other people… well, I am failing myself and I am failing them.

Richard Bandler would say, thank you but I pick to be successful, let other people fail.

It is never OK, it is time and effort wasted. If you see that your project is not going the way it should, do your best, but cut your losses if things don’t go well.

Anyhow I felt a need to ge tthis off my chest.

Ubuntu – all the missed chances

If God existed, we would all be using lovely open source operating system called Linux. And we would be happy ever after. Unfortunatelly, there are those evil corporations that want to make us dependent on them.

What is really sad in this situation is that Linux and Ubuntu as one of better representatives of it makes it so easy. My main reason for writing this rant is that there is not a major distribution of linux that is geared towards developers! How weird is that?

Why do I, as a developer have to spend time installing and figuring out all the kinks (each time) when I have to use ruby or python or php. Gvim is not installed by default, hell, vim is not installed by default, let alone some version that is half-way configured.

Then when you start, you don’t get some developer friendly super productive environment, you get an environment that tries to mimic windows in the past and OSX now. Are developers really that unimaginative (this is rethorical question, you have to be creative and smart to write code by default)?

Only distribution that somehow is breaking this pattern is ArchLinux, unfortunatelly, as much as I agree with goals of this distribution, I didn’t have much luck using it, as it would break very easily and fixing it… well it takes time that I don’t have.

Here is what I would like. Simple distribution with latest packages, I want to be able to use java (if possible), ruby, python, mono, php, perl. All latest version, even for python. Let me have working nginx with wiki installed and maybe some other tools. Let me start in gui but with terminal taking whole screen. Give me some productivity apps as well. No need for office suite, thank you very much, I can always install one if I need it. Oh yes, please make sure git is installed as well as ack and other tools that make life easier. Zsh by default would be totally fine. Vim and emacs has to be present otherwise it is not developer distribution. Is this too hard to make?
I think any developer would agree that he would use such configuration and maintaining it shouldn’t be such a chore. I would start this project, but I am afraid that I don’t have the skills for it.

My thoughts on Windows 8

I’ve used Windows in the past quite a bit, lately I have to say, I am using mostly OSX in past few years. It is professional requirement and it’s been fun to use macs frankly. OSX is good for work, however for fun, you have to have Windows machine.

I expect new Windows to be huge, it will have an uphill battle as there are a lot of detractors, but since it is the future of how interfaces will be, I believe people will use it and like it.

My personal experience with it, was very interesting, what I liked about interface is that it helps you focus on task at hand, it doesn’t distract you too much with im’s and other windows. That alone is worth a lot.

Another thing is touch. I wasn’t sure how that will play until I went with my son to Microcenter the other day. He couldn’t let his hands off new Lenovo desktops. This thing has beautiful 27″ touch aware monitor. You could open Paint and it would register each of your fingers, which is awesome. They look amazing and I am genuinely tempted, especially seeing how my kids liked it, however, I am kind of guy who assembles his own machines, so however beautiful new Lenovo’s are, we will have to build our new machine ourselves.

Aside from Lenovo, I think there will be a lot of issues with Windows, I’ve seen Acer announcements and machines they offered are so unimaginative that there is no way people will buy that crap. I suspect other manufacturers will follow with equally unimaginative solutions, so it will take a while until we get more decent machines that run win8.

I believe touch will redefine how we interact with computers and there will be a lot of changes, which will be both frustrating and wonderful at the same time.

For example, I loved ipad, it was something I believed should be made long time ago, yet I didn’t understand the power of it until I saw my kids playing with it. Now, it is expensive toy and they do bang on it quite a bit, but it is also engaging educational tool unlike anything else. I believe new Windows with a little luck will be like that.

Here is what I see going for it. First they really made new interface fresh, it is well made, a lot of kinks to be worked out, but potential is there. Microsoft is company always focused on developers and with tools that surpass those avalable on other platforms. If it is true that native apps will have to be built, MS is in better position as Visual Studio makes building apps super easy.

Action Method review

I read few months ago ‘Making Ideas Happen’. This book is authored by people behind website Behance. Ideas in the book supposedly are represented by tool ActionMethod. Oh, and let me add, I am not related to Behance people and they didn’t offer me anything to write this.

First, book is really good, anyone interested in productivity should read it. I enjoyed reading it, it did open my eyes a little on several topics. For example, I always believed that messy desks are sign of people working… well maybe, but organized desks are sign of people accomplishing things.
They also tout that tools you use should be beautiful tools. And they do provide some.

So, naturally after going half-way through the book, I had to try ActionMethod (I did try it before once and didn’t use it). This time I tried it and decided to give it a chance. I bookmarked website in all my machines (desktop and laptop), I bought app for ipad as well as my android phone. This last one is really nice touch as it helps add actions when I am away from other computing devices.

Before saying anything about ActionMethod, I did try a number of productivity tools and systems. I’ve been fan of Getting Things Done for a long time. I am still surprised when people have email in their inbox etc. However even with all this, lately, with three kids, I’ve been having trouble getting done anything. And most of the time, I didn’t even know what I should do.

One of the first impressions I had about ActionMethod, is that I finally could organize things in a way that makes sense and feels natural. What I did before is either tried to make multiple lists, or single large one that would have everything mixed up. This is just very poor way to keep track of things. Also, some tags, just not disciplined enought to use them properly I guess.

ActionMethod has a way to organize projects in groups, so I have for example, my big client group with all projects going on there, I finally don’t have to dig through the mail when someone calls me up about something we talked month ago, since it is a project that is on-going, I would look it up in action method, see what was left to do. So that way of organizing your tasks brings a lot of clarity in what needs to be done and where are those areas where tasks are present.

I have lists for learning and list for articles I would like to read. So having those is really beneficial and helps me feel in control.

What I think is missing from action method is that tasks that are in progress are not well accounted for. Book suggest we mark it done when we shoot someone email and recreate task. This is total bullshit honestly. Another thing that is not good is that I can’t plan my day by selecting which tasks I would like to do and work off that. There is focus group but it is limited to 5, which is great kanban like principle, however in practice I have things I am waiting on and would like to have more available for me to work on. So, I would like to have ability to mark things as in progress.

Another thing that annoys me is that ActionMethod on ipad is actually very ugly app, so it breaks principle that tools we use are beautiful. Where website provides organized view of work, Ipad app feels very cramped and I am never sure where my tasks are. I don’t have issues with phone app mostly as I use it for adding tasks.

I keep using actionmethod for now, as it does bring clarity and organization to my daily work, however, there are some frustrations with it that I feel the need to address.

Only good way to develop apps II

I would like to clarify some of the points I made in my previous post. It might sounds that any app has to be developed in 2-3 days by single guy. Kind of, it does.

# About time

What you are doing is that initial development is really in short period of time, like before mentioned 2-3 days. Now, some apps are simply more complex and have a lot of small quirks. Then you develop skeleton app and work on details in next month or two.

I am not really a big fan of projects that require 6 months. Six months in internet time is huge. I prefer things that can be made faster. Also, this is very intense work, you will not be able to sustain it for more then a week and 2-3 days is optimal.

After initial development, then a lot of time can be spent doing a/b testing, adding meat to the bones of skeleton app.

For most webapps, initial timeline is all it is needed.. Games as a rule need 2-3 months at least, or that is impression I got. Anything else, corporate software, can be done faster, but due to corporate bureaucracy, most likely will take very long time and cost a lot of money.

Again, this is a good way to develop apps for startups.