iPad App concept based on a fluid layout

I’m going to discuss briefly a concept idea i had recently, replacing full-screen view controllers with a .. fluid layout. Just look at the video first to get an idea of what I’m talking about. Keep in mind that this is in no way a finished/polished app ( and probably will never be one, considering trademarks and stuff ).

Important note: This app and concept is not affiliated, endorsed or sponsored by ikea. But since it’s non-commercial I hope they won’t shøøt me.

iPad fluid app layout concept from Moritz Haarmann on Vimeo.

So, what’s wrong with the classic view controllers on the iPad? Nothing, absolutely nothing. They are fine. I just wanted to try out this idea, and the video is the result. If you want to test it, leave a comment and I’ll get back to you ( or not ). I guess it is obvious that I’ve been inspired by the Twitter-iPad UI to some extent.

Maybe the most important lesson I learned programming this demo was that it’s really hard to create an interface that acts in accordance with the direct manipulation paradigm.. when there is no real counterpart. I thought about a stack of cards or some other stack model, but none of those resize their content or just “move out” if there is not enough room. I am still not fully convinced that every interaction is right, but at least it feels right most of the time now. If you are curious, there can be an arbitrary number of panels around, of course only limited by memory consumption, without affecting the UI or overall perfomance.

Since I don’t have a phone capable of recording videos right now, you have to believe me that the UI is really snappy on an iPad 2 and yes, it’s even fun to use it.

If you are interested in how I got the data you might want to read a previous post that explained how to retrieve the data from IKEA. Was fun :-)

What do you think? Too confusing? Interesting? Let me know!

Update: If you want to test it locally, please enter your UUID here. No guarantee whatsoever, first come, first serve.

Flattr, a great idea, a great video, great people behind

Flattr is exactly what I dreamed of when I wrote my post about the donation-button-dilemma on open-source projects. Flattr, by the creators of the pirate bay, is a service that let’s you specify an amount you want to spend monthly, I don’t know what they plan, but let’s say 10€, and you can flattr any project you like, very much like digging, and they will get a share of your money. Of course, this only works because the money adds up.

There are some unknown variables to me so far. I don’t know how much of the money reaches the designated receiver after all, how privacy and security is ensured, how money can be transferred to flattr and so on, yet, this idea opens up new horizons for people who want to invest time in software they don’t mean to sell, but still be able to live a life worth living.

I mentioned the video, it’s a well-made one, see below

( note: I’m using the logo without permission, hope the pirate-bay guys won’t mind that. )

impressive, prezi and other ways to kill PowerPoint

I’ve to admit, I haven’t used PowerPoint for 4 years, mostly because no one wanted me to present anything. Times have changed, I had to do 4 presentations in one week lately. Being forced to communicate through slides, I experienced a bit, and here’s my conclusion.

The first presentation was built using Keynote, which is part of iWork, Apple’s Office counterpart. Creation was really simple, the look is just amazing ( especially the transitions ), but there is one problem: I don’t have a mobile Mac at the moment, so I needed to use a friend’s MacBook to do the presentation. This is definitely a bit of a pain, considering the fact that he’s most likely not always around, and exporting to PowerPoint kills all the USPs. There is a workaround though, you can export presentations as .mov files, movies that halt on every transition and continue only after you press a key.

Second presentation, Latex Beamer producing PDFs. The ugly part is the creation, certainly. Unless you are fluid in a text editor, command line and the reading of technical documentation, this might not be your premier choice. After you’ve gracefully managed to create some slides, the output looks great and the best point about it is that any netbook will do just fine for the presentation. I used my Ubuntu-equipped machine and it worked well using the default PDF-Viewer.

Sven showed impressive to me today, a great way of tuning your PDF-only presentations by adding transitions, overview pages and other handy accessoires to finished PDF-Presentations. It’s written in python, has some dependencies ( nothing that easy_install couldn’t fix ) and works really well.

The third presentation kicked off using Google Docs. The presentation ( about Google Go ) had no style, no transitions, was built in about 10 minutes and.. worked. Nothing more, nothing less. It clearly did it’s job, yet there are, at least by now, a bunch of more pleasing ways to get the job done available.

Because a lot of people are really excited about Prezi at the moment, I decided to give it a shot. The presentations created are really different from what presentations have been in the past, it looks.. amazing, is easy to use, features a free plan. It depends on flash, which is somewhat a drawback and is, at least for me not a choice at the moment. Why? Well, first of all, there is no way to create custom styles, you are basically limited to what Prezi offers. The next problem is the lack of a free offline editor ( Google Docs is able to do that ). And of course, what you create looks create, but either I missed the feature that says “copy region from one Prezi to another” or it’s not there. Either way, without it, reuse seems impossible. Still, if you have only 3 minutes and need to deliver a stunning performance, you should go with Prezi. ( Edit: Benny just posted something about Prezi a few days ago, too )

First Impressions from Google I/O

Hey! I’m currently located in session room 09 and learning on how to code thee for android. Back to the headline.

After being opened by Eric Schmidt, the whole Keynote thingy mainly concentrated on HTML5 features. These features are really impressive, be it a video-tag, the canvas element ( max :-) ), background-worker processes and other related stuff that is quite handy and really capable of improving every developers live. It’s also nice to see that every major browser vendor, excluding Microsoft, seem to be well-prepared for the upcoming changes.

The clear development towards web-based everything not being distinguishable form “normal” locally-ran applications is also supported by new caching mechanisms and subsequent possibility of using e.g. gmail even with no connection, a  highly useful feature certainly leading to a broader acceptance of web-based applications.

Another thing remarkable is google’s view on android and it’s wide market adoption. In contrast to popular tech opinion, they seem to be quite satisfied, and predicting a strong year for android to come. An indicator may be that this session room I’m sitting in is overcrowded. Another is the wide range of apps presented, including gmote, a remote control application working on all platforms providing a simple to use remote control feature for your desktop, including touchscreen-to-mouse translation, remote media control and even the possibility to watch movies and pictures ( in fact, everything renderable ) stored on your computer on your handset. Nice.

I’m looking forward to the rest of this day, especially, tada, for my free htc magic. Stay tuned.

Rails Development: Comparing platforms

And I know what I’m talking about! I’ve been doing heavy rails development lately, on all three major platforms. Start with OS X.

It seems every serious Screencast for Rails was recorded using the famous Textmate Editor on OS X. At first sight, Textmate may seem to be a pretty ordinary Text Editor. Well, it isn’t. It’s very powerful and highly customisable. It’s one of the products I’d buy always again, simply because it’s worth it’s price. Development is rather flawless, not only because of Textmate, but also because OS X is based on a Unix System, giving one the ability to run all utilities natively, avoiding perfomance issues. It’s absolutely my favorite.

After my MacBook commited suicide, I was forced to use XP. I wasn’t happy. There are good code editors for sure ( I used vim nevertheless ) but the overall speed of testing tasks and so on is .. poor. Very poor. Those perfomance problems are well-known, though no one knows the exact reason ( at least I wasn’t able to figure it out ). I don’t want to flame here, but Windows is just not suitable for serious Rails development.

After deciding that the above mentioned system was a pain in the ass rather than a solid solution, I switched to Ubuntu. And I’m amazed, really. Gedit with a few plugins seems to be a good alternative compared to TextMate, and all the packages run like a charm. And it’s free and runs everywhere. It’s my recommendation for every Windows+Rails developer. Install VMWare or VirtualBox and develop there, it’s faster. Trust me.

Tomorrow ( assuming UPS isn’t lying ) my new iMac will arrive, and I’m so looking forward to it. What is your prefered platform for developing with rails?

Still working on usabilitizing the Web: ideas, cont’d

Hello, today I continue my list of ideas which would make the Web and Computers in General way more easier and safer to use. Although it won’t change anything, I just want to make you think about it and let me know your opinion.

I’m still a bit frustrated that there is nothing like a general file metadata format. While every OS nowadays has its own metadata-supplying filesystem, there doesn’t seem to be a way to exchange that information or reuse it. Neither to publish it online, in a useful manner. I was thinking about a format that enables one to store almost arbitrary information in for a file. Album art, MD5-hashes, Author information, keywords. Anything that helps to categorize a file. Thus, a download would start by clicking on the metadata file, a nice screen would popup showing the file type, the supplied information, giving you the ability to get a quick overview about a file.

This could help to prevent the download of malicious software etc.. And it would help to store files correctly without user interaction. As a teacher of mine noticed correctly, it’s impossible to store and organize files in a useful way using the old-school directory-filename scheme, plus the good old 3-char extension, e.g. avi or txt. Something more sophisticated is needed, and would add a bit more usability to this web.

This is once again just a rough idea, and I would love to hear your comments.

A real open-source, usable, photoshop replacement?

Good morning, folks! Now I’m back in germany, still busy getting used to all this luxury again, including my Ubuntu-desktop. I also have Windows installed, but for some reason i prefer Ubuntu. Anyway, I’m really missing a real, free and usable Photoshop replacement here. For me, GIMP is just a nice little tool enabling one of small edits, but not as sophisticated and well-designed as Photoshop. This is sad because it’s still a big point for many web-doing people not to switch to an open system. And there are plenty of examples where open software can beat the original, look at Open Office.

I’m convinced that there are enough people to start up a project dedicated to building a graphics suite, open, based on already existing tools. Have you heard of Scribus, a great publishing tool for Linux, free? Amazin software, and I dare to speculate that GIMPs codebase isn’t bad, it’s just some frontend stuff that is. By creating a cool team and spending some time on unifying the user interfaces among these, a great step towards permanent switching would be made.

Still, what are you’re experiences with GIMP or do you know any other, comparable tools?

Sharer, Giver, whatever, Filesharing

A short note on a previous post where I talked about my project of a simple File-Sharing applications that basically works using drag’n'drop and some zeroconf to find other peers. I wasn’t exactly surprised to find something that matches that description pretty well, but here it is, it’s called giver and should run on any platform that has support for some kind of .net/mono framework. I haven’t tried it yet, but I’ll sure give it a shot and tell you about it.

I’m already thinking about dropping the Java-project and instead do a client for the giver-protocol in Cocoa. I would be excited to have someone reporting about the actual use of giver! Moritz.

Windows 7 Superbar vs. Mac OS’ Dock

In case you haven’t heard about, since today, Microsoft’s Windows 7, the successor of Vista is available as a free download. Of course, it’s just a beta, and maybe they do it to distract a bit from not-so-well performing Vista, but anyway, if I had a PC, I’d certainly give it a try. But because I don’t, and I’m not sure whether bootcamp supports Windows 7, I was forced to simply read some reviews and build up an opinion.

And there was this one thing. Imagine a system-wide menu bar featuring all your current apps, plus the one you are using most often. Of course, it’s up to you to decide what you want to place in that amazing menu-bar. You can even use a very, very hot ability to place items using the mouse called “drag and drop”. Finally, after using an application and closing it, the corresponding icon will just disappear. Unbelievable, I know. There is one other amazing ability this dreambar, as I call it, offers. The grouping of windows belonging to the same application. This is indeed something total new, something I have dreamed about for years, and now it’s finally happening. 

Well, in case you thought it sounds like the Mac OS Dock. It’s not. It’s the new taskbar in Windows 7, called “superbar”. It seems people at Redmond are a bit desperate these days, instead of being creative.. 

But let’s be serious, just for a moment. I’m really wondering where the innovation is. Even searching for “Windows 7 Innovation” doesn’t return much. There is the mentioned superbar ( wuhhzza ), some eye-candy and a multi-touch interface ( if I got that rumor right ). The multi-touch interface is a gift for hardware manufacturers, but not for people with ordinary PCs eating French Fries while surfing the web, the superbar is pretty much a bad copy of several already existing concepts and the rest? Is there still this ridiculous Flip-3D thingy that is so not boosting productivity? Oh it’s so spacy I can’t see the contents of the other windows..

Windows definitely has some fields where no one is at the moment able to compete with it, but not because of the superior technology but rather because of hardware manufacturers still keeping that platform up, and game vendors still building mainly for it, too.  

But actually, this hasn’t necessarily to be something bad. Mac OS simply is the best system when it comes to usability, consistency of an interface etc.. And Windows can only profit from … reinventing some stuff already present there. Calling it Superbar seems a bit exaggerated, but after the Zune disaster I guess it’s to polish some Egos.

Improving your Software efficiently: Talking to users.

Yes, I know, it sounds very, very odd. Users, bah, just keeping everyone from doing really useful stuff. Users, always finding bugs that turn out to be not-so-well implemented features. Users, not understanding the big ideas powering the programs we develop and the time we spend. Users, still using that outdated 5-year-old version of a product just because they are used to it. Users, not willing to switch just for the sake of having switched. I don’t understand it. 

But it’s users using ( and sometimes even buying ) software. And maybe you are involved at building a software product. I bet you consult your friends or fellow colleagues from time to time seeking input for a form, text, feature whatsoever. People who are just like you are the worst giving you advise on how to do something. I do have friends who are still pretty happy using zsh and rocking the world using the shell. But that’s just not the majority. 

Everytime I’m thinking about something cool in terms of a new project, I talk to my strategic consultants. I meet them when I’m at my parents house at dinner. They consist of: My father, my mother and my brother. And it sounds odd again, but explaining something to people who are potentially end-users, you’ll get a clue about how useful your software idea is considered in an instant. And that’s the kind of feedback I’m looking for. I know that most of my fellow students are used to the most weird kinds of application, expecting valuable feedback from them considering anything computer-related is like asking a priest for his opinion about the existence of god. 

So my message at the end of the year is simple: Talk to users. Not only when it comes to usability testing ( which is also crucial ), but at just every step of your project. That’s where the focus should be. For me that means: having dinner regularly. Nice, hm?