Sunday, March 29, 2009

Back To The Drawing Board

The last two weeks I worked on NewsRob more than ever before. I ripped out most of its guts and replaced the existing, well partitioned implementation with another implementation that was geared for performance.

Unfortunately it seems really hard to get the new, less well partitioned implementation stable again. Taking into account that I can't work on NewsRob on the next weekend it will take at least another two weeks to get it bug free. And I will always keep the penalty of high maintenance costs due to the lack of structure in the better performing implementation.

I just played with NewsRob 1.7.0 on my girl friends G1 and have to say that those high maintenance costs (read less features in the same time frame) don't seem worth the effort. NewsRob is performing quite well in most of the cases that count for me. Yes, the new version would make switching between the Article List and the Show Article screen almost instantly and the scrolling is much smoother, but at the end of the day this is more interesting for demos or people commenting in the Android Market than for the every day use.

Also I got a couple of mails that the performance is at least good enough and there were no lasting complaints on the previous blog entry.

So to make a long story short. I haven't made a decision yet, but I lean towards throwing away the work of the last two weeks and go back to NewsRob 1.7.0. I will think a little more about it though, but there is definitively no release coming out today.

If I have answered your bug reports/mails with "That's fixed in the next release.", well, that isn't exactly true anymore ;) I will go bug hunting in the old implementation then...

Thursday, March 19, 2009

Performance Regression?

Hi,

  I was under the impression that the latest release made NewsRob so much faster that performance shouldn't be my top priority anymore. I also got some user feedback that performance is now ok, but I got some comments in the Android Market now that say otherwise:



  Can anybody confirm that and give me details? Preferably someone with the tendency to communicate in full sentences (pl)?

  If I don't hear anything back I'll assume that those were clown comments and I will work on bugs and functionality instead. 

Saturday, March 14, 2009

NewsRob 1.7 - A Star Is Back!

That was a busy week. Changes from last week:

  • Starring icon is back

    Due to popular and partially loud demand the star is back, at least on the Show Article screen. I got four people writing me that they really need that feature.

    It is now located to the right of the article's header and works the same way as before. The feed title's text can now flow through it though, so that it's very space efficient, but in far less than 10% of the cases the feed's title might partially collide with the star icon. This is only a little cosmetic issue though.


  • New navigation

    After having a lengthy conversation with Shemp DeYoung about the current navigation and other NewsRob issues I concur that users don't want to read documentation or watch videos. They want intuitive to use features.

    So I followed his advise and had a second look at the navigation of Google's pictures manager that is part of the Camera app.

    And meanwhile I found a solution to my bigest gripe I had with it when I saw the navigation for the first time:
    In the pictures app you need to touch the screen once to get the on-screen-controls to show up and then another time to actually select them.

    The new navigation is based on the pictures-navigation, but if you tap on the part of the screen where the navigation will show up (it the same spots all the time) it already executes the tap on the on-screen-controls, so that you can navigate to the next article with one tap, instead of two.

    That sounds more complicated than it is. Try it for yourself.


  • Zoom Controls

    On the heels of the new navigation came the zoom controls.
    You can now use the same controls for zooming that you already know from the Android browser.


  • Larger touch areas

    The new icons (globe etc.) introduced in last week's release are smaller than the ones I used before and as a result they take up less space, leaving more room for actual information. That is a good thing, but as they also should be touchable the smaller size came at a price.

    I therefore enlarged the touch areas of the globe/phone and the star by 100%. So if you click a little to the right of the globe or a little to the left of the star on the right, you should still be ok and launch the action you intended.


  • Performance Improvements

    Marcus Schmidke gave me detailed feedback and suggestions regarding NewsRob's performance. As a result of this motivation it is roughly 50% faster now to open the first article after starting NewsRob. As you may remember opening the first article took very long and now only takes half very long ;-) There is still work to do left.

    Following another suggestion of Marcus the article row on the Article List screen now changes its background color to a shade of yellow to indicate that it recognized the touch, but it still takes a moment to actually change onto the Show Article screen.

    Also the background activities shouldn't be slowing down the phone as noticeable as before. Of course, it still makes a difference if NewsRob is currently performing a synchronization, but at this point I am not sure if I can implement this totally unobtrusively and please keep in mind that this is a mobile phone and not a multi-core desktop machine ;-)

    Let me know what you think about the current performance and which areas hurt you the most. When the current performance is good enough for you, I would also like to hear about it.

    Keeping me on the toes in terms of performance is ok, but it diverts my attention from other functionality to implement. So think about what you want most ;-)


  • Signing in with Google Apps For Your Domain

    Brint Kriebel reported that he couldn't use his GAFYD account with NewsRob.
    I checked with other apps and it wasn't possible there too. Fortunately Brint hooked me up with a test account for GAFYD and I was able to get it working.

    The implementation changes I had to do were a bit strange though. I actually implemented something the other way round as suggested by the documentation, but as it works and the whole API is somewhat unofficial I'll leave the solution in.

    I mentioned this so explicitly, because I want you to be aware of this issue if you suddenly can't login anymore. Let me know right away then and I will back out the change.

    I tested all known cases to me though and am somewhat confident that it is ok.


  • Q-Reports

    You probably noticed Q-Gate this week. As a result now automatic bug reports are collected by NewsRob when it crashes.

    It contains a stacktrace and version information. It is all pasted into a new mail and you can add what you did yourself and then send it.

    It would be great if you would send me all the bugs that occur. Even if it's something I can't fix (because it is a WebView problem for example) or you know that I know about it.
    The Q-Reports will give me qualitative information as provided in the mail and quantitative information as provided by the number of mails.

    I first thought about submitting the information automatically under the hood and directly to my server, but as this may look like a privacy invasion I then changed the idea and now use an semi-automatic approach using mail.

I will likely (no promise though) start something new this week. I will post a video of the new/changed features later on this week to illustrate them.


Feature-wise we are nearing completion of the initial need. Working on performance and optimization often means lots of research and trying out different implementations, only to through away all of them, but the one that works. So there is lots of work without much to show for.
Therefore, and because my personal life is too much on the backburner right now, I will go from a weekly release schedule to bi-weekly.

Thursday, March 12, 2009

Does NewsRob keep force closing on you when signing in???

Bug Report?

Well usually I am happy when somebody takes the time to comment on or rate NewsRob in the Android Market, but now I got this wonderful comment/rating (see on the right) and meanwhile believe that it might be fake. As I don't have any way of contacting the commenter and he didn't contact me, I'd like to know, just in case, if anybody else experiences NewsRob force closing (when signing in)?

If you do, please let me know. If you have any other issue, please contact me at newsrob.support@gmail.com. I might need your help to reproduce the error, but will look into that issue then.




Next Release


This weekend's release will be faster again, restore the star, will double the size of the touchable areas of buttons (star, globe), support Google Apps For Your Domain accounts and introduce a simpler navigation between articles.




Update to "Bug Report?"

As Quentyn isn't fake and subscribed to this blog, a line of communication opened and he is quite the nice gentleman. We were able to solve the situation quickly and will all live happily ever after.

One consequence from this encounter is that the next version of NewsRob will have an error reporting facility that makes it easy to let me know about crashes. I will call the reports I collect with this new facility: Q-Reports ;-)

Sunday, March 8, 2009

NewsRob 1.6

Changes from last week:

  • Downloading is much more stable and resilient now

    I literally looked at hundreds of downloads and its errors and made NewsRob much more resilient. This should make a huge, noticeable difference.
    Feedback is appreciated.


  • UI changes

    As suggested by Julian Felke I thought again about the icons that indicate if an article is downloaded.
    Now a world globe represents a downloaded web page, a solid phone represents the downloaded feed content including the images, a hollow phone an article that still needs to be downloaded and a hollow phone with a red dot an article that NewsRob tried to download but failed with an error that NewsRob believes is not recoverable with another attempt.

    I also changed the layout and the "star" button is removed. Instead starring and unstarring is now available from the context menu accessible by a long press on the article.

    As a result of the new layout scrolling in the list is faster now.

  • Alternate content is now shown properly

    Also reported by Julian was a bug regarding the alternate content. NewsRob now picks the right alternate content. Before sometimes enclosures, e.g. an image, were used.

    This affects the download of the web page content as well as the result of launching the browser with "Show in Browser".

  • Display of umlauts fixed

    In some cases umlauts were not displayed properly.
    Please let me know if you still find examples for umlauts that are rendered incorrectly.
Let me know how you like it.