February 19, 2009...1:44 am

Two Things: 1 on the desktop and 1 on the web

Jump to Comments

And two questions—

  1. Can a desktop application be cloned (feature-for-feature with the same user experience) on the web? 
  2. Can a web application actually be better than the desktop version? 

Things.app

Things.app?

The delightful answers—

  1. Of course, everything except the menubar (which is pretty much redundant in this application) can be recreated. From drag-drop to undo to instant editing without having to click the “Save” button constantly.
  2. Definitely. A key problem with modern Todo/GTD applications is the lack of integration with email. Half your Todos probably come from your email inbox. But with web APIs, it’s possible to get all emails labelled “actionable” to automatically become Todo items in your GTD application. Similarly, your reading list, Twitter replies and a million other services can be integrated. That’s the power of the web.

Thanks to Christian Sonne (the man in the tutu!) and other folks on IRC for some much needed CSS help.

25 Comments

  • And where can we try this app?

  • @lrbabe The second screenshot is not photoshopped. It’s all XHTML+CSS. But, unfortunately, the app is still pretty rough and not quite ready for public consumption. I’ve got the basic stuff working (dragdrop, tags, editing, today/someday/logbook, search). But scheduling, projects and undo (this alone means I have to do a redesign some parts of the app) are not done yet. When I do release it, I hope to open source it so that development can move much faster. But this also means that I need to document it extensively.

    Another advantage of open-sourcing it is that everyone can add their own features and run it locally or on their own servers. If you look at the long list of feature requests on the Things forum, you’ll know why I’m excited about this. Open source is great!

    Btw, I made use of your jquery plugin for some of the rounded corners in this app. Although I haven’t yet figured how to use it properly, it’s a much nicer alternative to having a bunch of s surrounding every element. It’s very elegant!

  • I’m interested in the problems you might have encountered with this plugin. Have you faced some bugs or are the explanations not clear enough?

  • Nice work, but regarding your answer #2, I think a desktop application is as much able to interact with webservices as a web application, it’s easy to do with some dedicated libraries or even with modern desktop app frameworks.
    Here, you prove that you can have same or better user experience in a web app (with same coding easiness ?) but not that web apps can be richer in features.

  • Integration with Google Calendar and you’re my friend.

    Or even better such extension for (Thunderbird and Lightning) / (Sunbird).

  • Gtdagenda and Nozbe have e-mail functionality and you can send tasks from your email. Gtdagenda even has dedicated inboxes for each context and project.

  • I suggest you check out taskspro – does a good job of this on the web:

    http://www.taskspro.com/

  • @lrbabe I think I’m just being lazy to edit the images properly but it *might* be a bug. Let’s discuss on IRC/email.

    @oursdur I agree that it’s perfectly possible to have a desktop app integrate with web applications. But it would no doubt be tougher to use as it would require the user to download and install (how troublesome!) plugins. Also, developers are more willing to write web mashups. Another important reason why I wanted to write a web app is so that our friends running Windows and Linux can also take control of their lives with this app. And yes, being a JS guy, it’s easier for me to write a web app.

    @Livio That will definitely be possible.

    @dannielo @schrep I really like Things. It has a great workflow that both those who understand GTD and those who don’t can use. Despite having some minor mistakes, on the whole, the UI is fantastic. So, while there may already be services with email functionality (and you must admit the taskspro interface looks rather unpleasant.) , my main aim here is to improve Things and make it more widely available.

  • You are the second person trying to steal from the developers of the desktop app. Why don’t you ask them for a job? Then you might be able to code that stuff you like, develop a web app that syncs and make some bucks out of it, too…

    The first thief, by the way, lives here: http://www.thn.gs – he had to change the layout after he declined to work with Cultured Code, but it is still a clone.

  • Once you finish your web-app, use xulrunner to put it back on the desktop. The best of both worlds.

  • @Abi: This is really awesome!! Looking forward to seeing it

    @Russia: Thief is a bit of a harsh term don’t you think?

  • Thanks Rey! Maybe, a simple initial release in a couple of weeks. Hopefully..

    @Nick That’s definitely possible and it’s probably nicer to run it as a xulrunner app. In fact, I used Fluid to get the screenshot of the web app above.

    @Russia Fuck. I didn’t know someone else had done it before but I checked it out and the UI isn’t great and it doesn’t seem to be actively developed anymore. I’ll talk to both the developer of that webapp and to Cultured Code to see if there’s any possibility of collaboration. Either way, I’m still hoping to open source it.

  • @Rey: No, Russia isn’t too harsh. He directly copied the Things interface (culturedcode.com) wholesale. It’s unbelievably crass.

    @abi: You copied another software developer’s product. You have no right to do that, nor do you have the right to “open source” the copied interface. You would only have the right to start with and modify their interface if they granted it to you–you do not have the right to take it and “open source” it yourself.

  • @john: Abi is no thief nor do I think outright calling someone that with some level of due diligence is okay. So I guess we’ll disagree on levels of harshness.

  • @ Rey: I did not call him a thief, I simply described his actions. Would you prefer the term plagiarist? He copied another application interface and presented it as his own work.

    The interface is identical, not vaguely similar. There is no doubt at all that Abi started with Things and modeled the entire interface on it.

  • To clarify, I have no problems with Abi doing this as an academic exercise, to work on development skills for building a web application. I only have problems with the intent to distribute or “open source” the result, which is based on someone else’s intellectual property.

  • @John: The user Russia called him a “thief” to which I said he was being too harsh. You asserted he wasn’t (“No, Russia isn’t too harsh.”) so for all intents, it seems like you were in agreement. You shouldn’t step in to support someone unless you want to be lumped into the bundle.

    Your last post at least clarifies where you stand in a way that disassociates you from the other user.

  • @Rey Thanks :)

    I emailed Cultured Code and they gave the expected reply —

    “To be clear, we are *not* interesting in collaborating, and want you to know that you are *not* allowed to use our design, concept, or intellectual property.”

    What’s awesome though is that a few developers have offered to help with the coding if I put it up on GitHub. So, I’m still on the fence as to whether to further develop the app or not and still pondering its legality.

    @John To address this whole issue of copying interfaces/ideas, I’m probably going to write another blogpost soon.

    I don’t see how the Things interface is completely original. It is based on so many GTD apps that came before it and The Hit List looks like it’s “inspired” by Things too. And… would you claim that SongBird plagiarised the interface from iTunes (looks pretty similar to me!)? I think it’s tough to trace inspirations and ideas.

  • “What’s awesome though is that a few developers have offered to help with the coding if I put it up on GitHub.”

    Awesome? I guess, if by awesome means they also have no problem stealing.

    “So, I’m still on the fence as to whether to further develop the app or not and still pondering its legality.”"

    You can spin this however you like, and you can give as many examples as you wish. Taking what culturedcode spent time and money to put together, no matter if you make money or not, is stealing.

  • abi said:

    “I really like Things. It has a great workflow that both those who understand GTD and those who don’t can use.”

    “the [Things] UI is fantastic.”

    “I do understand how much work they have done on Things and really hope that I can work with [them]”

    “my main aim here is to improve Things and make it more widely available.”

    “I’ll talk to [them] to see if there’s any possibility of collaboration.”

    “Just imagine the trifecta of awesomeness. Things on the desktop, phone and web!”

    abi – I’ve got to say, it sounds like you think Things is pretty special. So your defense that its interface isn’t original rings pretty hollow.

    There’s nothing wrong with you wanting to develop a web-based to-do manager. That sounds great. But make one that’s yours. Make it better than Things. Copying Cultured Code doesn’t add any new ideas to the community, and doesn’t help you learn anything about developing a good interface.

    As for your still being on the fence about further development – that decision has already been made, when Cultured Code sent their reply. You’re not permitted.

    • “As for your still being on the fence about further development – that decision has already been made, when Cultured Code sent their reply. You’re not permitted.”
      Unless CC has some legal registrations in abi’s country of origin, he doesn’t need their permission. If he tried to sell this, I would call him shady.. maybe a pirate. But the law is a tricky thing. To be sure, he isn’t likely to make many friends at CC, but he could make a really cool product.

  • abi – pay no attention to the peanut gallery. I am NOT a lawyer, but I don’t think any of the other commenters are either. What I do know is that “Intellectual Property” is difficult to define. I mean, some companies still contest that the Linux kernal violates intellectual property and copyright so don’t take what idiots on the Internet tell you (myself included) too seriously. That said, as long as you don’t try to sell this, I don’t think you have too much to worry about except some people will call you a thief and mock you. And you probably won’t make too many friends at CC. Or… maybe your interface will be so good that CC will want to buy it some day. Who knows? I think what you’ve done is quite inventive and I would be very interested in running this on my own machine (I refuse to put my data on someone else’s servers).

    • John – your comments are based on what abi can legally get away with. But I think that misses the point – I doubt anyone here expects to see abi in handcuffs, or even in a lawsuit.

      But there’s a big difference between what you can do and what you should do. And I don’t think you should give away someone else’s work. Even (especially?) if it’s open source and free. I think it’s telling that he did at one point feel compelled to seek their permission.

      You say what he’s done is “inventive,” but I’d say it’s just the opposite. It’s impressive that the copy is so complete, but in the end, it is just a copy.

      I’d be much more impressed if abi developed an online to-do system based on his own ideas and concepts.

  • “I’d be much more impressed if abi developed an online to-do system based on his own ideas and concepts.”
    He’s filling a need… scratching an itch… this feature isn’t available from the vendor. If he made it so the interface didn’t copy Things at all.. maybe it was just an ugly list… would that be ok?

    What if he made it JUST for himself and didn’t let anyone else use it… would that be wrong?

    Is “openoffice.org” wrong for “copying” Microsoft Word?

  • [...] commands alone would do). And that’s simple. And that works.   In my other projects (Things.webapp and “Open Digg”), I’ve made the same mistake. I didn’t focus on the simple [...]


Leave a Reply