8 ms·
Show HN: I made a better interface for Google Tasks and I can't go back
I recently decided to try out Google Tasks as my only task management system, and while I find some things about the interface great, it really isn't suited for someone like me who has multiple lists with lots of elements on each.
So, I whipped this together real fast and I can't imagine using Google Tasks without it anymore.
I realized you might want it too, so I put it on the web.
Enjoy :)
- cmikec 16y agoI recently decided to try out Google Tasks as my only task management system, and while I find some things about the interface great, it really isn't suited for someone like me who has multiple lists with lots of elements on each. So, I whipped this together real fast and I can't imagine using Google Tasks without it anymore. I realized you might want it too, so I put it on the web. Enjoy :)
- robotron 16y agoIt needed a better interface.
- cmikec 16y agoYeah, I really thought so. The old one was just too cramped and constraining. Of course, 99% of the code for the UI here is actually still their code, I just put what I'd like to think is a better wrapper around it :)
- deleted 16y ago[deleted]
- ricefield 16y agoOn one hand, its just a wrapper, so no big deal. On the OTHER hand, this is awesome. Props!
- cmikec 16y agoIt's cuz I got mad wrappin' skillz. . . . Thanks :)
- tkahn6 16y agoI've been doing this with iGoogle for a few years but this is cleaner. Good job.
- ebtalley 16y agoquestion, how did you grab the session and display tasks without authenticating through OAuth or whatever method google provides? Granted I'm logged into gmail but I'm somewhat goosed since it seems your third party domain can pull private data from my account without my explicit permission?
- cmikec 16y agoGood question. It's actually just an illusion. My page simply instructs your computer to connect to Google's servers, and then "wraps" the responses from Google at the page level into frames. I literally cannot see anything at all that you send to Google or receive from Google. In fact, this entire app is 100% client-side, so it never communicates with my server except to download the initial code (ok, fine, and favicon). There was an old trick years ago where mischievous webmasters would "wrap" a file:// URL in their web page to make it look like their page had access to all the files on your computer. Again, it's just a wrapper. No data is transmitted to or from the server about what's in the wrapper.
- Groxx 16y agoIt's a handful of iframes going here: https://mail.google.com/tasks/ig https://mail.google.com/tasks/ig , nothing more. I'll stick to https://mail.google.com/tasks/canvas https://mail.google.com/tasks/canvas though this is quite nice. I wish it could remember the lists I had visible, but I realize why it can't :) To the maker: nice idea! It makes me ponder over what other sites this could be done to... though this is a particularly perfect fit!
- cmikec 16y agoThanks. And yeah, I really wish it could remember the lists. I'm hoping that someone will know an undocumented parameter we can pass to http://mail.google.com/tasks/ig http://mail.google.com/tasks/ig to select a list. Anyone?
- StavrosK 16y agoI snooped around a bit and it seems that you can do it by POSTing a JSON parameter to that URL, although I'm not sure if it includes a nonce.
- troels 16y agoThis is fantastic. Since you're really just framing google code, I take it that there is no way that you can inject code into the frames and enhance them somehow?
- cmikec 16y agoIt's not possible in traditional browsers, given the way browser security is set up these days. I've done exactly the thing you're talking about though with AIR and my own versions of webkit. So, the effect you desire is possible if you're willing to use a separate executable on your machine. Kinda loses part of the charm for me though, since one of the main reasons I moved to Google Tasks is so that I could do more from my browser.
- troels 16y agoAgreed - If I wanted a desktop application, there are plenty of better alternatives. The nice thing about google tasks is that it's there in the browser. And it's tied to your google account, which I have open anyway. Still - Nice idea. I'll use this for the next couple of days and let you know if I find it usable in the longer run.
- cmikec 16y agoPlease do, and if you have any suggestions I'd love to hear them.
- skrebbel 16y agoi'm genuinely wondering how they managed to break something this simple in Opera.
- bajsejohannes 16y agoTo a rendering engine, this isn't any simpler or more complex than any other page. The reason we see this bug is probably that something in the page takes a code path that is taken very seldom, and thus has not been discovered before. I'm not saying it's ok to have this bug, just that it doesn't really make sense to come up with a small testcase and say "How can you break something so simple?". I reported a bug, by the way.
- cmikec 16y agoAgreed. Most pages don't dynamically create framesets in window.onhashchange. Nevertheless, it clearly should work in Opera and they need to fix it. I typically don't test in Opera but I was curious about this one so I fired it up. Seems like the initial page load doesn't work, but if you change the hash (or the settings, same thing), it actually will render properly after that. At some point, if I feel like it, I will write an ugly workaround just for Opera based on this principle. So far 1.81% of visitors from HN are using Opera, FWIW.
- route66 16y agoIn chrome I get a redirect-loop warning... (being logged in in gmail at the same time)
- cmikec 16y agoOdd, I'm unable to reproduce. What version/OS? Just out of curiosity, what happens if you try it in incognito mode? Is anyone else experiencing this?
- terminus 16y agoI'm getting this too. Chromimum 8.0. I'm on Ubuntu 10.10.
- cmikec 16y agoCool. No easy access to an Ubuntu box right now and it's late...I will check in to this when I get a chance. In the meantime, I would be interested to hear: - Is anyone on Chrome/Ubuntu not having this problem? - For those who are having this problem, any more information would be greatly appreciated. - In my own testing, Chrome on OSX and Windows works fine. Has anyone had this problem on either OSX or Windows running Chrome, or in another browser on any platform really? Thanks!
- eustatius 16y agoWorking great here - Chromium 11, Ubuntu Lucid (10.04?) I might actually start using this along with http://en.wikipedia.org/wiki/Getting_Things_Done http://en.wikipedia.org/wiki/Getting_Things_Done, rather than paper lists. We'll see...!
- sankara 16y agoChrome 11.0.686.0. Ubuntu 10.10. No issues here.
- zecg 16y agoChrome 10.0.648.114 beta on Ubuntu 9.10, works fine.
- BasDirks 16y agoI'm releasing something similar soon. This is really helpful :)
- lordlarm 16y agoThis is a great idea. A simple interface for my TODO's. However I do not think iframing Google Tasks is the best idea, why not just create something similar your own? Since you are iframing it I get this bug: http://i.imgur.com/H7Ytb.png http://i.imgur.com/H7Ytb.png I want three list respectivly "Done", "Today" and "Someday". However as I change one, the others change too. I'm running Chrome 11 dev
- cmikec 16y agoIn order to get multiple lists working, you'll need to go down to the lower-right corner of each frame and select a different list to be shown in each frame. Otherwise you are just using the same list in different frames. I'm totally with you that this UI/UX is not ideal. If Google exposed more of a Web API we could do more. There are plenty of good web-based todo lists, what I wanted specifically was to beef up Google Tasks. However, now that you mention it, there may not be a good multi-paned todo app out there. Someone should make it. Maybe me, maybe you! ;-)
- chime 16y agoI made https://zetabee.com/text https://zetabee.com/text (which many HN users currently use) to provide a similar nested-list interface with keyboard shortcuts, copy-paste across lists, and easy read-only sharing. Before that I made http://untodos.com http://untodos.com with 'now', 'soon', and 'whenever' lists but ZetaBee Text is a superset of untodos features so I don't use untodos anymore myself. I haven't made a "done" feature yet because I haven't found a good way to implement it for tasks at arbitrary depths. Check out the demo: https://zetabee.com/text/demo https://zetabee.com/text/demo (save is disabled for demo).
- rocco 16y agoHi cmikec, is you the author of the site? Google does not seem to provide any API for Gtask(1), which system did you use? scraping? By time seeking a way to integrate Gtask in my app. (1) The famous issue 987 http://code.google.com/p/gdata-issues/issues/detail?id=987 http://code.google.com/p/gdata-issues/issues/detail?id=987
- cmikec 16y agoHi, yes, I'm the author. See this reply of mine to another comment: http://news.ycombinator.com/item?id=2278963 http://news.ycombinator.com/item?id=2278963 To answer your question directly, I am not using an API and I am not scraping anything, I'm just framing Google's pages in a way that I found useful and productive.
- duck 16y agoVery cool and an improvement, but I still find Google Tasks too limited. I'll stick with http://todoist.com http://todoist.com
- ssdghjyt 16y agoClick on our website: ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ Website wholesale various fashion shoes, such as Nike, Jordan, prada, also includes the jeans, shirt, bags, hats and decoration. Personality manufacturing execution systems (Mes) clothing, Grab an eye bag coat + tide bag Air jordan(1-24)shoes $30 Handbags(Coach l v f e n d i d&g) $35 Tshirts (Polo ,ed hardy,lacoste) $15 Jean(True Religion,ed hardy,coogi) $30 Sunglasses(Oakey,coach,gucci,A r m a i n i) $15 New era cap $12 Bikini (Ed hardy,polo) $20 accept paypal and free shipping ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯ ╭══════════════╮ http://simurl.com/voblec http://simurl.com/voblec ╰══════════════╯
- jasonlotito 16y agoHe uses frames to pull in tasks. That elementary part of HTML that's been in the spec for some time. I was shocked when loading up comments and I saw many people aghast at how he could have access to their tasks, especially when it's obvious to anyone with a basic knowledge of HTML that the site is using frames.
- rman666 16y agoGTasker is awesome! Now, combine GTasker with WorkFlowy (i.e., 3 panes of WorkFlowy) and I will pay money to use it!
- wilzy 16y agowhat's different... perhaps more than a URL would be useful?
- seltzered 16y agovery cool, thanks! I was using wunderlist until I switched to android, I still feel a need to build a native desktop app for some reason, but this works.
- writeclick 16y agoThis is such a simple, elegant solution. Good job. This really makes my life easier. Thanks!
- x0ner 16y agoI love you.
- workola 16y agoThis is great! Simple, Straight forward and easy to use. A nice compliment to the the desktop utility (HTML5) at http://workola.com http://workola.com. I'll add this link to my desktop.
- Sym3tri 16y agoTo any other potential task hackers, currently there is no API, but google announced they are building one soon. http://gmailblog.blogspot.com/2011/01/top-tasks-for-google-tasks.html http://gmailblog.blogspot.com/2011/01/top-tasks-for-google-t...
- cmikec 16y agoJust added a killer feature many people were asking for that I wasn't sure was possible given the iframe approach. In the latest Chrome and Firefox 4 (but apparently not Firefox 3.6), gtasker.com now saves your selections for which lists appear in each cell. Set up your dashboard once, use it forever. :)
- Groxx 16y agoSince this is your most recent reply: How did you manage it? I see some of the info, but I haven't picked apart the code yet. This makes it massively more useful, I think you may have a convert :)
- wuster 16y agoI know this is a more reputable community than the typical site, but I would be wary of clicking through these links in non-incognito/private mode... it's amazing how trusting people are.