Thoughts on and questions about the (terrific) iPad SDK

4 views
Skip to first unread message

Joshua Benton

unread,
Nov 28, 2010, 1:21:18 PM11/28/10
to Beta TapLynx for the iPad
Hey Brent & Co.,

First off, thanks for a really nice SDK. I've spent most of the last
couple of days building a NiemanLab iPad app and I'm really, really
happy with it. I like how you've come up with a new set of visual
metaphors instead of just blowing up the old ones. Here are some
screenshots so you can see the direction I'm moving in with my app:

http://www.niemanlab.org/ipad/hometop.png
http://www.niemanlab.org/ipad/homemiddle.png
http://www.niemanlab.org/ipad/homebottom.png
http://www.niemanlab.org/ipad/articletemplate.png
http://www.niemanlab.org/ipad/articletemplate2.png

As I've been working on it, I've had a number of questions and issues
pop up, so I thought I'd just dump them all here. (I don't have access
to the Lighthouseapp page, so let me know if this is the wrong place
to be raising these.)

I've found one thing that I think qualifies as a bug. If you are
reading the oldest visible item in a feed and change the orientation
of the iPad from vertical to horizontal, it will switch to a different
item in the feed. So, go to the last item, rotate the iPad from
vertical to horizontal — you've jumped to another item in the feed.
Sometimes the immediately previous one, sometimes one several items
earlier.

The rest are really just questions, in decreasing order of importance
(to me, at least):

- Is there a reason none of the items or external sites are zoomable?
Even after deleting the meta name="viewport" line from the default
template, it doesn't appear that any can be pinch-zoomed. It's a
particular issue when in portrait, since webpages don't seem to load
at full width (as they do in Safari) — so you end up with people
having to scroll horizontally to see the entire width of a page when
it could easily fit.

- Related: when an external link is clicked in landscape, the popup
window doesn't fill the entire screen -- which leads to more
horizontal scrolling. (a), would it be possible to make external links
open up in the same window as the item itself? It seems artificial to
me that the first tap goes into one window and then all further taps
go into a separate window. Can that be an option? (I'm skipping the
item page on a number of feeds and going straight to the url, using
Javascript -- so the first tap shows a full webpage in the item view
window. I'd love for future taps to be in the same window.) If not,
(b) can we control the width of that popup that doesn't fill the
screen?

- I see from a past message here (although not in the docs) that
[[permalink]] works in article templates. That's great, but it
includes the url as the link text. Meanwhile, what isn't working yet
is [[startPageLink]] and [[endPageLink]], which would be very useful
in making item titles into links to the webpage. Will those come back?
I hacked together something in JS to pull our the url from [[title]]
to get around, but it's really hacky.

- Is there any thought being given to reverting to the iPhone behavior
of having the description start wherever the title ends in list view?
Unless I'm misunderstanding, the iPad SDK seems to require us to set X/
Y coordinates for the start of the description -- which means we have
to guess ahead of time how much space the title will take up. But most
feeds will have a lot of variation in how much space the titles take
up -- some are one line, some are three. In the iPhone SDK, that's
fine, because if the title takes up three lines, the description takes
up one, and vice versa. But here, it creates some really ugly
whitespace when you guess incorrectly -- or cuts letters off halfway
through vertically. Both of those happen in the demo app. In my app,
I'm just abandoning descriptions on the home page, because I don't
think there's anyway to make it attractive. Any chance of going back
to the iPhone behavior?

- Would it be possible for the sharing tools to live in the toolbar
instead of/in addition to in that big left column? In my app, I'm
stripping away the sharing column on the left and the title bit from
the top to design my own templates, but it would be good to be able to
(as in the iPhone SDK) have something like Post to Twitter, Open in
Safari, etc. available from a toolbar button. And, related, can we get
sharing tools also on *webpages*, not just on RSS items — in the
toolbar along with the back/forward buttons? Again, this is as in the
iPhone SDK.

- It might be nice to have something like
Tab_ArticleBackgroundPressedImage, which would be another image to
swap in when an item is being selected, to provide some visual
feedback, a la Article_SharingButtonPressedImage.

- Will we be able to format dates? All home page dates seem to be in
the form "Wednesday, November 24, 2010," which means that unless you
want an ugly ellipsis, you really can't have an article frame any
narrower than those words. And on article pages, they're stuck at "Nov
22, 2010 2:30:14 PM," which isn't particularly attractive — no way to
get to just the date and not the time, for instance. Can we have
something like the PHP date formatting?

- Is there some way to turn off the behavior of an item going straight
to any linked-to video or audio? It's great when you have a video
feed, as with the Discovery feed in the demo app. But, for example, I
have a feed in which each item has a dozen or so links to other
things. On one of my current articles, one of the links -- the seventh
one down -- is a link to a .pls audio stream. But TapLynx won't show
the actual item -- it skips directly to the audio stream. Can that be
turned off, either app-wide or on a tab-by-tab basis?

- Will we be able to install Flurry or other analytics in our iPad
apps? I assume so, given the iPhone SDK, but thought I would check.

- I see Toolbar_Style is, by default, "default." Are there other
toolbar styles?

- Is it possible to turn off the Articles button on a tab-by-tab
basis? Some of my tabs don't have "articles" per se, and I wouldn't
mind getting rid of that button on them.

Finally, I know that the correct answer to this is "when it's done,"
but: do you have any sort of idea on when you expect this to get out
of beta? In other words, do you have an idea when we might be able to
submit our apps to the App Store?

Again, it's a terrific SDK, well worth the money, and I'm looking
forward to playing with it some more.

Josh

Brent Simmons

unread,
Nov 29, 2010, 1:13:21 PM11/29/10
to beta-taplynx...@googlegroups.com

On Nov 28, 2010, at 10:21 AM, Joshua Benton wrote:

> Hey Brent & Co.,
>
> First off, thanks for a really nice SDK. I've spent most of the last
> couple of days building a NiemanLab iPad app and I'm really, really
> happy with it. I like how you've come up with a new set of visual
> metaphors instead of just blowing up the old ones. Here are some
> screenshots so you can see the direction I'm moving in with my app:
>
> http://www.niemanlab.org/ipad/hometop.png
> http://www.niemanlab.org/ipad/homemiddle.png
> http://www.niemanlab.org/ipad/homebottom.png
> http://www.niemanlab.org/ipad/articletemplate.png
> http://www.niemanlab.org/ipad/articletemplate2.png

Cool! Thanks, Joshua. I love seeing screen shots. It's totally love when I first start seeing apps that we ourselves didn't create.

> I've found one thing that I think qualifies as a bug. If you are
> reading the oldest visible item in a feed and change the orientation
> of the iPad from vertical to horizontal, it will switch to a different
> item in the feed. So, go to the last item, rotate the iPad from
> vertical to horizontal — you've jumped to another item in the feed.
> Sometimes the immediately previous one, sometimes one several items
> earlier.

Good catch -- I'll check it out.

> - Is there a reason none of the items or external sites are zoomable?
> Even after deleting the meta name="viewport" line from the default
> template, it doesn't appear that any can be pinch-zoomed. It's a
> particular issue when in portrait, since webpages don't seem to load
> at full width (as they do in Safari) — so you end up with people
> having to scroll horizontally to see the entire width of a page when
> it could easily fit.

Web pages should be zoomable. It's a bug.

> - Related: when an external link is clicked in landscape, the popup
> window doesn't fill the entire screen -- which leads to more
> horizontal scrolling. (a), would it be possible to make external links
> open up in the same window as the item itself? It seems artificial to
> me that the first tap goes into one window and then all further taps
> go into a separate window. Can that be an option? (I'm skipping the
> item page on a number of feeds and going straight to the url, using
> Javascript -- so the first tap shows a full webpage in the item view
> window. I'd love for future taps to be in the same window.) If not,
> (b) can we control the width of that popup that doesn't fill the
> screen?

I didn't anticipate that you'd find a way to show external web pages on the article screen. The way it works right now is that there's a clear separation between articles that are part of the app (that come from the feeds) and external web pages. (Unless, that is, you do as you've done to load web pages in place.)

The thing about opening web pages in place is just UI stuff. What would we do about title, back/forward buttons, activity indicator, etc.? (Consider that the article view will be getting more controls in its toolbar, such as smaller/bigger fonts.)


> - I see from a past message here (although not in the docs) that
> [[permalink]] works in article templates. That's great, but it
> includes the url as the link text. Meanwhile, what isn't working yet
> is [[startPageLink]] and [[endPageLink]], which would be very useful
> in making item titles into links to the webpage. Will those come back?
> I hacked together something in JS to pull our the url from [[title]]
> to get around, but it's really hacky.

Is there a reason why the standard title on the article pages won't work for you? We didn't do the start/end page link tags since we have that fixed title at the top of the screen. (Which is actually done outside the HTML.)


> - Is there any thought being given to reverting to the iPhone behavior
> of having the description start wherever the title ends in list view?
> Unless I'm misunderstanding, the iPad SDK seems to require us to set X/
> Y coordinates for the start of the description -- which means we have
> to guess ahead of time how much space the title will take up. But most
> feeds will have a lot of variation in how much space the titles take
> up -- some are one line, some are three. In the iPhone SDK, that's
> fine, because if the title takes up three lines, the description takes
> up one, and vice versa. But here, it creates some really ugly
> whitespace when you guess incorrectly -- or cuts letters off halfway
> through vertically. Both of those happen in the demo app. In my app,
> I'm just abandoning descriptions on the home page, because I don't
> think there's anyway to make it attractive. Any chance of going back
> to the iPhone behavior?

This is a big tradeoff, for sure. We figured people would want more control over layout on the iPad, so we decided to go with the layout rectangles. But I'm aware that there are times you really wish you could re-flow.

I couldn't just make it do it, because you might have titles and descriptions side-by-side, or titles below descriptions, or staggered, or whatever.

There are two ways I can think of to solve the problem:

1. A plugin for writing your own display for the articles on the home page. (This is the easy solution for me, since it offloads everything to the developer. But it means you'd have to write some Cocoa code.)

2. Define a set of themes of some kind that are programmatic, that do the re-flowing. You'd lose some control, since you'd be choosing a them, but you'd get text reflowing. (I'd probably just do these as a set of sample plugins for #1 above.)


> - Would it be possible for the sharing tools to live in the toolbar
> instead of/in addition to in that big left column? In my app, I'm
> stripping away the sharing column on the left and the title bit from
> the top to design my own templates, but it would be good to be able to
> (as in the iPhone SDK) have something like Post to Twitter, Open in
> Safari, etc. available from a toolbar button. And, related, can we get
> sharing tools also on *webpages*, not just on RSS items — in the
> toolbar along with the back/forward buttons? Again, this is as in the
> iPhone SDK.

I've added both as feature requests. Good thinking.


> - It might be nice to have something like
> Tab_ArticleBackgroundPressedImage, which would be another image to
> swap in when an item is being selected, to provide some visual
> feedback, a la Article_SharingButtonPressedImage.

Tab_ArticleHighlightedBackgroundImage

For a quick tap, you usually don't see it. (This has to do with the fact that touches are delayed by the iOS when there are two layered scrollviews under the article -- it has to wait till it decides you're not scrolling. By that time, it decides to show the article and bypasses updating the display. But for a longer press you should notice the background highlighting.)

(Yes, there are more mystery keys like this. We're working on documentation.)

> - Will we be able to format dates? All home page dates seem to be in
> the form "Wednesday, November 24, 2010," which means that unless you
> want an ugly ellipsis, you really can't have an article frame any
> narrower than those words. And on article pages, they're stuck at "Nov
> 22, 2010 2:30:14 PM," which isn't particularly attractive — no way to
> get to just the date and not the time, for instance. Can we have
> something like the PHP date formatting?

It's important that date formatting match the user's locale -- which means a PHP-type string won't do the trick.

Instead, I'd probably make it match the Cocoa API: you'd specify long, medium, short, or none for each of date and time. This way the system handles localization issues.


> - Is there some way to turn off the behavior of an item going straight
> to any linked-to video or audio? It's great when you have a video
> feed, as with the Discovery feed in the demo app. But, for example, I
> have a feed in which each item has a dozen or so links to other
> things. On one of my current articles, one of the links -- the seventh
> one down -- is a link to a .pls audio stream. But TapLynx won't show
> the actual item -- it skips directly to the audio stream. Can that be
> turned off, either app-wide or on a tab-by-tab basis?

We have a plan for this -- but it's not do-able at the moment.

> - Will we be able to install Flurry or other analytics in our iPad
> apps? I assume so, given the iPhone SDK, but thought I would check.

We're evaluating analytics systems. They all seem to have fallen down. We did make it so that you could plugins that talk to a system of your choice -- but we realize that's not practical for everybody. (We use that plugin system to talk to Omniture for a partner app.)

> - I see Toolbar_Style is, by default, "default." Are there other
> toolbar styles?

"black" is the other style. (But if you specify a tint color or image, you'll see that color or image.)

> - Is it possible to turn off the Articles button on a tab-by-tab
> basis? Some of my tabs don't have "articles" per se, and I wouldn't
> mind getting rid of that button on them.

I've added it as a feature request.

> Finally, I know that the correct answer to this is "when it's done,"
> but: do you have any sort of idea on when you expect this to get out
> of beta? In other words, do you have an idea when we might be able to
> submit our apps to the App Store?

The plan is to say that this Friday the SDK will be in good enough shape that you can upload to the App Store. (It may still be labeled as a beta at that time, and of course you'll have to make the cool as to whether or not you're ready to upload then.)

> Again, it's a terrific SDK, well worth the money, and I'm looking
> forward to playing with it some more.

Thanks!

-Brent

PS It's been a lot of fun to work on. The bigger canvas means we can do so much more.


Joshua Benton

unread,
Nov 29, 2010, 3:20:48 PM11/29/10
to Beta TapLynx for the iPad
Brent, thanks for the lengthy and engaged reply. A few thoughts:

> > - Related: when an external link is clicked in landscape, the popup
> > window doesn't fill the entire screen -- which leads to more
> > horizontal scrolling. (a), would it be possible to make external links
> > open up in the same window as the item itself? It seems artificial to
> > me that the first tap goes into one window and then all further taps
> > go into a separate window. Can that be an option? (I'm skipping the
> > item page on a number of feeds and going straight to the url, using
> > Javascript -- so the first tap shows a full webpage in the item view
> > window. I'd love for future taps to be in the same window.) If not,
> > (b) can we control the width of that popup that doesn't fill the
> > screen?
>
> I didn't anticipate that you'd find a way to show external web pages on the article screen. The way it works right now is that there's a clear separation between articles that are part of the app (that come from the feeds) and external web pages. (Unless, that is, you do as you've done to load web pages in place.)
>
> The thing about opening web pages in place is just UI stuff. What would we do about title, back/forward buttons, activity indicator, etc.? (Consider that the article view will be getting more controls in its toolbar, such as smaller/bigger fonts.)

I'm using a version of the Javascript I saw referenced months ago in
the iPhone group -- it skips right over the item. Many of the RSS
items I'm pointing to are partial feeds (or have screwy image
representation or whatever). I'm also using it on our Twitter feed --
I built a Yahoo Pipe to change the item.link in the Twitter RSS to the
shorturl linked in the tweet, rather than the twitter.com/niemanlab/
xxxxxx link to the individual tweet. Makes a lot more sense to me than
tapping on the tweet to see...the tweet again, this time in RSS item
form, then tapping again to get to the link you want to get to, in a
smaller popup window.

I get the idea behind keeping them separate, but for me that's just
adding an unnecessary tap -- so in all but about three of my tabs, I'm
going straight to the link to get the full web page. For me, it would
be ideal if the back/forward buttons and the like could appear in the
RSS item frame whenever there's a webpage displayed there. (I'm also
stripping away the sharing and title bars, so the entire frame of the
item is functioning as a browser window, not just the lower right
section.)

The lack of an activity indicator for RSS items is, btw, one of the
more jarring things I saw once I installed on a real iPad. Even when
I'm not doing my little auto-forward-to-web-page thing -- when it's
just an RSS item using an article template -- it can take a few
seconds to load, and without the spinner in the title bar, it looks
more locked-up than it has to, I think.




> > - I see from a past message here (although not in the docs) that
> > [[permalink]] works in article templates. That's great, but it
> > includes the url as the link text. Meanwhile, what isn't working yet
> > is [[startPageLink]] and [[endPageLink]], which would be very useful
> > in making item titles into links to the webpage. Will those come back?
> > I hacked together something in JS to pull our the url from [[title]]
> > to get around, but it's really hacky.
>
> Is there a reason why the standard title on the article pages won't work for you? We didn't do the start/end page link tags since we have that fixed title at the top of the screen. (Which is actually done outside the HTML.)

Basically, I wanted to make it as webpage-like as I could, and I
wanted to give the content as much room as I could. I also have the
same issue with the title bar as I do on the home page: some titles
are one line, some are four lines, and you can't plan an attractive
design for those cases when you have a fixed amount of space set aside
for the title. I think it looks awkward if you give the title bar too
much space for a short headline or too little space for a long one.




> > - Is there any thought being given to reverting to the iPhone behavior
> > of having the description start wherever the title ends in list view?
> > Unless I'm misunderstanding, the iPad SDK seems to require us to set X/
> > Y coordinates for the start of the description -- which means we have
> > to guess ahead of time how much space the title will take up. But most
> > feeds will have a lot of variation in how much space the titles take
> > up -- some are one line, some are three. In the iPhone SDK, that's
> > fine, because if the title takes up three lines, the description takes
> > up one, and vice versa. But here, it creates some really ugly
> > whitespace when you guess incorrectly -- or cuts letters off halfway
> > through vertically. Both of those happen in the demo app. In my app,
> > I'm just abandoning descriptions on the home page, because I don't
> > think there's anyway to make it attractive. Any chance of going back
> > to the iPhone behavior?
>
> This is a big tradeoff, for sure. We figured people would want more control over layout on the iPad, so we decided to go with the layout rectangles. But I'm aware that there are times you really wish you could re-flow.
>
> I couldn't just make it do it, because you might have titles and descriptions side-by-side, or titles below descriptions, or staggered, or whatever.
>
> There are two ways I can think of to solve the problem:
>
> 1. A plugin for writing your own display for the articles on the home page. (This is the easy solution for me, since it offloads everything to the developer. But it means you'd have to write some Cocoa code.)
>
> 2. Define a set of themes of some kind that are programmatic, that do the re-flowing. You'd lose some control, since you'd be choosing a them, but you'd get text reflowing. (I'd probably just do these as a set of sample plugins for #1 above.)

I understand your point, but this is the main reason I'm not using any
descriptions or thumbnails on the main page -- because I think it's
really hard for it to look good with the blocky whitespace. I'm fine
with that for my app, but I think you might run into trouble with
other TapLynx users.




> > - Will we be able to install Flurry or other analytics in our iPad
> > apps? I assume so, given the iPhone SDK, but thought I would check.
>
> We're evaluating analytics systems. They all seem to have fallen down. We did make it so that you could plugins that talk to a system of your choice -- but we realize that's not practical for everybody. (We use that plugin system to talk to Omniture for a partner app.)

That would be great. My of-the-moment hack is just installing Google
Analytics code in the article templates and then creating a filter in
GA to look for the URL it uses and an iPad device. Seems to be working
so far.



> > Finally, I know that the correct answer to this is "when it's done,"
> > but: do you have any sort of idea on when you expect this to get out
> > of beta? In other words, do you have an idea when we might be able to
> > submit our apps to the App Store?
>
> The plan is to say that this Friday the SDK will be in good enough shape that you can upload to the App Store. (It may still be labeled as a beta at that time, and of course you'll have to make the cool as to whether or not you're ready to upload then.)

That's much sooner than I was expecting! Great to hear. For me, the
main bug stopping me from submitting is the not being able to zoom
webpages. My other big wishlist item would be the webpage-inside-the-
article view issue, but I sense that's probably further off.



Thanks again, Brent (and other Newsgators) for all your work on this.

Josh

Jay Goodman Tamboli

unread,
Dec 3, 2010, 4:48:39 PM12/3/10
to beta-taplynx...@googlegroups.com
On Nov 28, 2010, at 13:21, Joshua Benton wrote:

If you don't mind me asking, how are you doing the black-line section separators? I can set a Tab_ArticleBackgroundImage and TabImageName for the last tab in a section to an image with a black line at the bottom, but then if the user drags right or left they see a gap in the line (short video at http://cl.ly/3Uf0 if that's not clear).

I considered making one big home-screen image with the lines in it, but that seems like it would be difficult to maintain—make a new one every time I add or remove feeds.

Is there a better way?

Thanks.

/jgt
--
http://tamboli.cx/, PGP key ID 2BC5D9A9

PGP.sig

Joshua Benton

unread,
Dec 6, 2010, 4:32:33 PM12/6/10
to Beta TapLynx for the iPad
The section separators? Those are an image. I created a new row and
set the same background image for both the tray and the source. I'm
not at my development Mac, but I'm pretty sure they're
Home_SourceBackgroundImage and Tab_TrayBackgroundImage.

One thing I'd *love* would be if the source width was editable by row
-- in other words, if you could zero out the source pane for one feed
and then make the tray itself take up the entire width. That way you
could just omit the RSS feed and use a tray background image as a
header image for the group of rows below it. But without that ability,
you can't use a text image across both segments, and you're stuck with
a weird indent on each header.

One of the cooler things (I think) about how I've set it up is that
(or real rows) I used the tray background image as an explainer for
the row. In other words, if you don't know what Romenesko is in my
fourth row, if you pull the tray left-to-right, it exposes the tray
background image, which is an image of explainer text. It's kinda
cool.

Josh


On Dec 3, 4:48 pm, Jay Goodman Tamboli <j...@tamboli.cx> wrote:
> On Nov 28, 2010, at 13:21, Joshua Benton wrote:
>
> >http://www.niemanlab.org/ipad/hometop.png
> >http://www.niemanlab.org/ipad/homemiddle.png
> >http://www.niemanlab.org/ipad/homebottom.png
>
> If you don't mind me asking, how are you doing the black-line section separators? I can set a Tab_ArticleBackgroundImage and TabImageName for the last tab in a section to an image with a black line at the bottom, but then if the user drags right or left they see a gap in the line (short video athttp://cl.ly/3Uf0if that's not clear).
>
> I considered making one big home-screen image with the lines in it, but that seems like it would be difficult to maintain—make a new one every time I add or remove feeds.
>
> Is there a better way?
>
> Thanks.
>
> /jgt
> --http://tamboli.cx/, PGP key ID 2BC5D9A9
>
>  PGP.sig
> < 1KViewDownload
Reply all
Reply to author
Forward
0 new messages