Saturday, November 23, 2013

Version 2.0.6 is released!

Version 2.0.6 was released today.

The previous version, version 2.0.5 was done in a bit of a hurry in order to get LuckNews working for customers who had upgraded to Mavericks.  Since I wanted to get that release out quickly, I didn't add very much to the release.

Version 2.0.6 is a slightly larger release, although I suspect that most customers won't really notice any differences.  There was a lot of activity 'under the hood' of LuckNews.  The application is more solid in some important areas - even though you probably won't notice any difference, its just better.


One of the visible changes in this release is the addition of an Activity Window.  This window can be brought up by selecting the menu item in the Window menu.  The Activity Window gives you some insight into what LuckNews is doing when it goes to the network to do its work.  If you are finding a refresh very slow, this should give you insight into what the offending subscription is that is causing the slowness.  This is more or less an aid to help when things so wrong or for those who are technically minded - use this to help diagnose network problems.

A change you may or may not notice is that LuckNews has changed the way it saves its changes to its database.  In older versions, the database was updated infrequently.  If you forced LuckNews to quit (using the Force Quit menu item, not the normal Quit method) you might have lost changes such as the article 'has been read' status not being stored properly.  Now LuckNews saves its changes to its database continually.  You probably won't notice this...but its better now.

The refresh performance has been improved.  If you only have a few subscriptions, you may not notice anything.  If you have a lot of subscriptions, you may notice that refresh is faster now.  The refresh for my copy of LuckNews with the slow network I have where I am now went from taking over a minute to around 15 seconds.  You may or may not experience similar results.

I have also had complaints from some users that the in-app purchase process wasn't working correctly.  I've made a few changes and some improvements in this area.  One thing I've found is that if the in-app purchase process isn't working for you...sometimes it helps if you quit LuckNews, restart and try again.  I have no idea why this sometimes solves the problem.  It seems like this may be a problem in the Apple in-app purchase framework.

One last thing I'll mention is that there have been improvements made to the update process.  I found that there were a few subscriptions which would constantly create new articles even though I had already read the article.  This is different from an article being updated by the author - some feeds were behaving poorly and the same article would generate multiple copies in LuckNews.  After examining what was going on in more detail, the problem turned out to be bad RSS data for some subscriptions.  But knowing it is bad RSS data doesn't really help users who are annoyed by the same article appearing multiple times.  I think I have found a way to deal with these bad feeds now.  If the RSS (or Atom or RDF) subscriptions you subscribe to follow the standards properly, they will work properly in LuckNews, as always.  If the subscriptions violate the standards, they should work better now.  Perhaps not perfectly, but much better...


There are a few other improvements in many areas.  There are also some major changes internally in some areas which I won't go into.

This is now the 14th release of the application.  Its come a long way since version 1.0 was release early this year.  Of those 14 releases, 12 were done in Seattle and this is the second in a row from California.  This will be the last USA version for some time - the next update will come from Mexico!

Enjoy the new release!

Thursday, October 31, 2013

Version 2.0.5 is now released!

Version 2..0.5 was approved and has been released to the App Store.

The biggest feature of this release is that it now works on Mavericks.  I had many reports from customers who pointed out to me that LuckNews wasn't working properly on Mavericks.  I was able to download Mavericks a week ago and was able to fix the application quickly.  I submitted version 2.0.5 to the App Store on the 26th and it was approved today, the 31st.  That was a pretty quick turnaround by Apple.

Thanks you to everybody for being patient.  Many of you offered positive feedback about the app to me when you sent your note pointing out that there was a problem.  It was nice to hear from all of you!

In the last release I suggested that you needed to restore your in-app purchases in order for them to take effect.  It appears this may no longer be the case.  If after opening the LuckNews in-app store you see the product you previously purchased is being recognized, then you don't have to do anything else.

I have had two reports that restoring the in-app purchases has damaged the application causing the user to have to reinstall LuckNews.  This problem is out of my hands!  The in-app purchase restore functionality is handled by Apple.  If you run into this problem, please read this page so that you can copy your subscriptions to a backup location before re-installing:
    http://lucknewsapp.blogspot.com/p/help-opml-backup-files.html

So please, if your in-app purchases are present, do not try to restore them again.

The problem with LuckNews being reported as being damaged is out of my control.  The restore functionality is handled by Apple.  I've reported this as a bug to them.


Aside from the Mavericks fix, I was also able to fix a problem in displaying HTML web pages for some sites in non-english languages.  For example, this is an example of a German subscription shown as HTML in the previous version, 2.0.4:

Note all the black question marks, which indicate text encoding errors during rendering.  The same page now renders correctly in 2.0.5:
The text for this site is rendered correctly when not viewed as HTML in both versions.

There are a few other small fixes as well.

As always, if you have any suggestions or improvements to LuckNews, please let me know.

Wednesday, October 23, 2013

LuckNews 2.0.4 and Mavericks

I've received a number of reports that LuckNews is not working correctly in Mavericks, Apple's latest version of OS X.  I will be upgrading to Mavericks in the next few days and will work on a fix.  Just to set expectations - the fix likely will not be available for a few weeks.

A partial explanation for the delay - I recently left Seattle where I was living for the last year and have been sailing down the west coast of America toward Mexico.  I am currently in Oxnard, California on my sailboat Luckness.  The wi-fi connection I have here is slow, it is going to take two days to download the 5.2G bytes of Mavericks.  Once that is complete, the Xcode update will take some more time.  While I am here in Oxnard I am also working on boat projects and my sailboat/home is currently torn apart inside to the degree that I barely have a flat surface to work on.  By early next week the boat will be back in the state where I should be able to work on programming projects again.

I remain committed to LuckNews, but as I travel over the next few years there will be periods when I won't be able to respond as quickly as I have in the past.

Sorry for the inconvenience and thanks for your patience.


ps.  Its cool that Apple released Mavericks for free!  Way to go Apple.


[update 10/26/13] I have just submitted an update to LuckNews, version 2.0.5, to the AppStore.  This version works on Mavericks and has a few other changes that some people have asked me for.  The normal review process for Apple has been a week long, and I expect that they are busy after Mavericks came out and so the app may take longer than a week for them to review it.  I expect the new version to be available sometime around November 4th?

Friday, September 6, 2013

Version 2.0.4 is out - how to restore your In-App purchases

Version 2.0.4 of LuckNews was released today.  This is a small update to LuckNews, containing:


  • Changes to help improve the performance of large Subscription/Article databases 
  • Fixes a bug with Notification Center integration related to the window being closed or minimized 
  • Other minor changes 


If you had earlier purchased additional subscription capacity in LuckNews, you will need to restore your In-App purchase in order for LuckNews to recognize your purchase.  To do this:

  1. Open the File menu and select the 'Open In-App Purchase Store...' menu item
  2. In the dialog window which is presented, press the button labeled 'Restore In-App Purchase' in the lower left corner
  3. Continue with the dialog's, verifying to the Apple App store that you are who you say you are
  4. At the end of this (short) process, you will have your prior purchases restored
There is no charge for restore an earlier purchase - once you upgrade the capacity in LuckNews once, that purchase is good for all future updates.

Enjoy!




Monday, July 8, 2013

Version 2.0.3 is now out!

Version 2.0.3 was released on July 3rd.  This is now the 11th version of LuckNews.

Google Reader has now been turned off.  This is a little unfortunate for those people who have been using it.  If you've been using Google Reader and are looking for an alternative - try LuckNews!  Its a free download.  Try LuckNews with up to 8 subscriptions for free.  Beyond 8 subscriptions there are in-app purchases available to expand the capacity.  In the US you can purchase an unlimited download capacity for only $1.99 - its inexpensive.  Give it a try.

Version 2.0.3 is a bug fix release not a feature release.  The changes in this version is fairly minor.  Anybody who has been using an earlier version without any issues won't find anything new in this version.

All of the changes in this version are there as a result of feedback I have received from customers.  I had a customer in Australia report a number of problems when he imported his Google Reader data.  He was kind enough to provide me with his data and it is all importing very well now.  I also had a customer who ran into problems with articles he had read which were re-appearing as unread articles.  I have modified the rules for how and when articles are deleted from the database to avoid this problem in the future.

The fixes are:

• Fixes a bug where a subscription containing articles which had absolutely no content would cause a problem when updating the database
• Improvements to OPML import. Google Reader is providing some interesting data, which is now handled
• Subscriptions imported from OPML which refer to invalid feeds are now imported rather than being ignored. I decided it was better to let the user deal with this error rather than ignoring the errors
• Improved the article deletion rules


As a reminder - if you are a user of LuckNews, and like it, please add a comment to the Apple App store.  If you like the app and have other friends who use Mac's - help spread the word :-)


Thank you for your support!


Cheers,
  Craig.

Monday, June 24, 2013

Version 2.0.2 is now available

Apple just approved version 2.0.2 of LuckNews, and it will be available on all of the various app stores  within 24 hours (of early June 24th.)

I'm pretty happy with this release.  The changes in the release are:

• Improvements to swiping and the page transitions
• Improvements to the new 'show newest article' mode when selecting a new subsription (or set of subscriptions)
• Improvements to article refresh to avoid duplicated articles
• Improvements to the context menu displayed in the Article view
• Found another subscription which provided malformed dates. They are now handled
• Other minor changes 
I found a problem in 2.0.1 where, if you were viewing unread articles and you swiped to the next article just as the previous one was disappearing from the list, you might view the same article again.  I'm surprised that nobody else reported this to me.  Just as a reminder - if you find a problem with LuckNews, please report it, I'm always happy to hear of problems encountered so that I can fix them.

In 2.0.1 I introduced a new mode which gave you the option of which article to view when you switched to viewing a new subscription.  By default, you always view the most recent article you viewed in that list.  The new option let you view the newest article in the list.  I've modified how the initial article is marked as 'having been read' slightly to allow you to click on many subscriptions in a row and to not mark the article 'been read' until you pause slightly.  I hope this addresses a workflow issue of clicking on the wrong subscription by accident.  Nobody wrote to me complaining about anything, but regardless, I prefer this new workflow.  Its a little subtle, try it out.  Let me know if you like it.

I was also noticing, and had reported, that some subscriptions would sometimes show an old article again.  This was related to the 'keep articles in LuckNews until they expire from the subscription' option.  I believe this is fixed now.

The context menu in the article view pane is now much more complete - it has the types of items that are normally present in applications such as Safari.  So you can now copy a link, copy an image, open an image and other options.  The menu is context sensitive and generally contains more options.

There are also a few other minor things that were fixed.

A short note on the app price.  LuckNews has been out for two releases now in its new format, which is as a free download with an available in-app purchase.  LuckNews comes with the capacity to hold 8 subscriptions, if you need more than that you can purchase additional capacity for a small charge.  Its interesting to me that the vast majority of the downloads of LuckNews have not upgraded to additional capacity.  I have over 50 subscriptions I monitor in LuckNews.  Come on people - there are all sorts of interesting things to read out there  :-)

One last short note.  If you haven't added a comment to the Apple App store, and you like the app, please add a comment.  Developers such as myself depend on favorable comments in order to have the application be more widely accepted and downloaded.  If you add a comment, or already have added a comment, you have my sincere thanks!


Please let me know if you find any problems.  

All in all, its a pretty good deal for free, or almost free for those of you who have upgraded, right?

Enjoy!


Craig.

Thursday, May 30, 2013

Version 2.0.1 is now available

I have been working on a small update to LuckNews.  It was submitted to the AppStore last week and has just been approved by Apple.  Version 2.0.1 should be available to everyone as soon as their respective AppStores receive the update.

For those of you who had purchased an upgrade using the In-App purchase option, you may need to restore the products you have purchased by using the 'Restore In-App Purchase' button in the LuckNews In-App store, which is available in the File menu.  For those of you who haven't yet purchased an upgrade - please consider doing so - rest assured that I'll spend any revenue the app generates wisely (mainly on morning coffee.)


The new version fixes a crash that could have been encountered in rare circumstances, if you had turned off the 'keep unread articles' option for a subscription.  With the update it is no longer an issue.

There is also a fix that when swiping through articles, if you changed you mind about which article you wanted to see just after the swipe was finished and started a new one quickly, you could have been left in a state where you didn't see anything.

Along with these fixes there are a number of small improvements.

I had a number of requests to change the initial article which you view when switching to a new subscription (or set of subscriptions.)  The old behavior was to show you the most recently read article, the request was to show the newest article.  I have added a preference that gives you the choice.

With the old behavior, when switching to a new subscription that had new articles to read, you would read them in the order oldest to newest - you start from where you left off last time and page forward through time to the newest article.  If you select the new preference, then you end up reading new articles in the order newest to oldest.  Its your choice.

A second change is to slightly alter what the article list view shows as you page between the articles.  It continues to show the selected article - the one you are viewing.  The change is that if you have elected to only view the unread articles in that list, the previous article (the one you have just finished reading) is also retained momentarily in the list.  This allows you to swipe back to the previous article if you choose to do so.  If you don't swipe back to the previous article within a few seconds, then it is removed from the list.  This fixes something that I found annoying - when I was quickly swiping through articles I would occasionally see something on an article just as it started to go away - but getting back to it was tedious as it would be removed from the unread list.  Now if you quickly change your mind you can swipe back to it and continue reading.  Give it a try - it will be easier to understand as you use it than it is to describe.  It may look a little odd at first seeing two unread articles in the list momentarily, but I hope its a good change.  Let me know what you think.

A third change is that there is now a context menu on the article view.  This is the 'right click' menu, which you get to with either a two finger click on the article, or an option click.  There are no items in the menu which aren't available via different means in the application, but the items are easier to access with this method.


There are a few other small changes, but nothing dramatic.


If you have any suggestions for future improvements, please let me know.

Thursday, May 9, 2013

Importing data from Google Reader

As many people are now aware, Google Reader is going to be going away on July 1st.  If you have a Google Reader account and want to get your subscriptions into LuckNews, its relatively painless.


1) Go to Google Takeout and either select the 'Choose Services' link at the top of the page, or simply follow this link

2) Press the 'Create Archive' button
3) Google now prepares your download.  When it is finished, press the 'Download' button.  You may need to sign in to Google Reader at this point, and you may need to press the 'Download' button again
4) Now that the file is downloaded to your Mac, go back to LuckNews
5) In the File menu, select the 'Import Subscriptions...' menu item
6) Navigate to the file Google downloaded for you.  It may be in your Downloads folder off of your home directory.  In the Downloads folder, look for an item with your email address followed by '-takeout'.  Open that directory which should contain a Reader directory.  Open the Reader directory and select the file named 'subscriptions.xml'
7) You are then presented with a dialog in LuckNews, simply select the subscriptions you wish to keep, and then accept them

You now have all of your Google Reader subscriptions in LuckNews, ready to read.

Enjoy!

Thursday, April 25, 2013

Version 2.0 is available!

LuckNews version 2.0 was released today, April 25th.  There is one large change in this release, along with several bug fixes and a few other improvements.

The largest change to LuckNews is that it is now free!  If you use 8 or fewer subscriptions in LuckNews, then you will have access to all of its features and power and yet pay absolutely nothing.

LuckNews has moved to a new sales model.  You are able to purchase subscription capacity through an in-app purchase.  If you use more than 8 subscriptions, then you will be able to purchase additional subscription capacity through two in-app purchases.  You can purchase the capacity to hold up to 20 subscriptions, or you can purchase an unlimited number of subscriptions.  Its hard to talk about prices, as LuckNews is available for sale world wide and the price point is different in all of those countries.  In the USA, the first level of capacity is available for $0.99 and the unlimited capacity product is available for $1.99 - the App Stores in other countries should offer similar affordable prices.



I expect that many customers will not need to purchase any additional capacity at all.  For all of you that fall into this category, enjoy!

If you need to purchase additional subscription capacity I think you will find the process fast and easy.  In the File menu, there is a new item at the bottom called 'Open In-App Purchase Store...'  If you invoke this menu item you will see the in-app purchase store.  Once you have selected a product from that window and pressed the 'Continue' button, you will proceed to the Apple store dialog's.  Apple controls the actual in-app purchase, the process is secure and reliable.


If you are a customer who has purchased LuckNews prior to version 2.0, and you have more than 8 subscriptions, this change is a little unfortunate.  In earlier versions of LuckNews, you always had an unlimited number of subscriptions available.  When you upgrade, you will find that your current set of subscriptions is completely functional, however you will not be able to create any additional subscriptions.  I apologize for this.  Unfortunately, Apple runs the App Store and I do not have access to a customer list or the ability to provide existing customers with free upgrades to the new unlimited subscription product.  This means that if existing customers want to continue to create new subscriptions that you will need to purchase the additional capacity.  I'm sorry about that.


I hope that everybody enjoys the new version of LuckNews.  I look forward to continuing development on this product in the future.


Feedback on this change is welcome.

If you have suggestions for improvements, please forward them.

Saturday, April 13, 2013

LuckNews up to version 1.2.3 now

Since version 1.2 was released around February 19th, there have been three new versions released.

Version 1.2.1 addressed an defect which could cause the application to crash.  I found the problem within a few hours of the 1.2 release being available for sale and submitted a fix immediately.

Version 1.2.2 addressed two issues reported by users.  The first issue was with a URL which could not be added to the app successfully, an ebay link.  The problem was found and fixed.  This release also changed the way the application handled the refresh time interval to allow users to set the refresh time interval to an interval less than 5 minutes.  5 minutes remains the minimum interval you can set using the applications interface.  A back-door method is available if you want a shorter refresh interval, the method for doing this is described in the help section of this blog.

Version 1.2.3 addresses a few more issues reported by users.  When viewing articles displayed as HTML, if the web page contained links which invoked javascript code to open a new window, nothing would happen when you clicked on the link.  After the fix, when you click on these links they open in the default browser the same as non-javascript links.  Additionally, the subscription list widget has been improved somewhat to maintain each folders open/closed state as you reorganize subscriptions using drag and drop.  The widget behavior is improved, not yet perfected.  I also received a suggestion to add an option to allow LuckNews to open links in the default browser 'in the background' rather than bringing the browser forward and making it the new active application.  I added a new preference to control the default behavior when clicking on a link and allow the command key when clicking to alter this behavior.  This now works in a similar manner to how the Mail app works when opening links in mail messages - although LuckNews provides some visual feedback when opening a link in the browser with it remaining the background application, which is an improvement over the Mail app.

Version 1.2.3 also fixes a crash reported related to turning on the cacheing of images for a subscription in certain circumstances.  Lastly, I also came across an RDF style subscription (an older format, RSS or Atom are the newer preferred formats) which was not parsing properly.  This parsing problem is now fixed.


So, there have been three new versions of LuckNews in a little over 2 months, containing a mixture of new features and fixes for problems found.  Please continue to send me reports of issues that you find, or suggestions for improvements.  I'll continue to do what I can to address them.

Tuesday, February 19, 2013

Version 1.2 is now available

The newest version of LuckNews is now available.


This version adds some awesome new features as well as generally improving all areas of the application.  The two biggest new features with this release are Article Search and the ability to view real web pages in the application.

The previous post discussed the ability to view real web pages - check it out.  I've been using this new feature of LuckNews for several weeks now and really like it.  To give it a try, simply open up the Subscription Information window for a subscription and turn on the option.  To open the Subscription Information window, select a single subscription and then in the File menu, select 'Subscription Information…'

Article Search is easy to use and works much as you would expect.  To start a search, select the 'Find Article' item in the Edit menu.  Then simply type words into the search window that has appeared.  Many applications always show the search window, even when you don't need it.  I chose to have the search window appear and disappear so that you can focus on the articles and their content.  I want LuckNews to have a clean, minimal interface.

There is a feature in Article Search which is not obvious - you are able to both search for articles which contain keywords as well as articles which do not contain keywords.  For example, you can find all articles which mention "hilo hawaii" in their content. Or if you wanted to find all articles which mention hilo but not hawaii, you would type: "hilo !hawaii".  The ! character at the start of a word means to only match articles which do not contain the word.

Also new is the ability to have the application cache images which enhances the ability to read articles when you do not have a network connection.  If you plan to read articles when you are not connected to the network, for example when you are on a sailboat in a tropical paradise, or on a plane or train, you can use this option to download all the images so they are available when you need them.


I hope you enjoy this release.

If you have any questions or suggestions, please forward them to:
lucknews.app@gmail.com

If you are enjoying the application, please add a comment in the App Store to help others with their choice to purchase LuckNews.


Monday, February 11, 2013

Version 1.2 is on the way...

I submitted version 1.2 of LuckNews to the AppStore today.  Here is a small preview:


LuckNews is now able to display the actual web page for a news article, rather than the RSS content.  Scrolling down a little in the page above, you see the following:


The page continues with many more images and more text.  The image below is what you would see in a RSS news reader which only shows the RSS content.  This is what you would see in version 1.1 of LuckNews, and most other RSS news readers.

Same article as above.  This is the RSS content.

Notice that apart from the RSS feed not containing any images, it also has much less content.  Many news feeds only send out a short summary of the article, leaving you to click through to the real web page to see the content.

LuckNews is now able to automatically fetch the real web content for an article and present it instead of the RSS news feed content.  In the 'Subscription Information' window, there is now an option you can select to show the web page content rather than the RSS.  There are some other new options as well, more on those later.

I come across many news feeds where the RSS content is much less rich than the real article on the web, this example is not contrived or artificial.  If you read a lot of web news, I'm sure you will have come across this as well.


The new version of LuckNews should be available in around a week or so, expect it to be available by sometime after February 21st.  Customers of version 1.1 or earlier will receive the update for free of course.

I hope you enjoy this new feature.  I do!

Monday, January 28, 2013

Version 1.1 is now available

The second release of LuckNews was made available at the Apple App store today.  There were many changes made to LuckNews for this release, and since submitting the app on the 21st, development has been continuing and I expect to have a third release out toward the end of February.


The user interface of LuckNews has been given a pretty large facelift for this release.  There are three main views in the application: the subscription list; the article list and the article view.  Each of these views has been improved in many ways.



In addition to the changes in appearance, there is a really nice change in how you can now navigate the articles you are reading.  The article view now supports the swipe gesture to allow you to navigate to the next and previous articles in the article list very easily.  This means you can use just your finger tips to scroll through an article to read it, and then swipe the article away to advance to the next one.

LuckNews now supports your being able to organize subscriptions into folders which allows you to group related subscriptions together.  More than one level of folders are possible - you can put a folder inside of another folder.  Moving subscriptions around is easily done in the standard Mac way, using drag and drop.  Folders also have two settings that give you control over how newly arrived articles for the subscriptions a folder contains interact with both the Notification Center and the number of unread articles count which appears on the application badge.  You can selectively disable both of these traits for a folder, although by default they work as normal.  Use the new 'Folder Information...' menu item in the File menu to control them.  In addition, the existing functionality that was in place for the OPML subscription interchange format has been improved to also support folders.

Also new is the ability to flag an article.  It is easy to view only the flagged articles for any subscription or set of subscriptions.  In this way, if you read an article you want to come back to later, you can simply flag it and when you want, have LuckNews show it to you again.

Normally, articles expire and are deleted when they are no longer present in a subscriptions feed.  This can be changed using the settings in both the Application preferences dialog as well as for individual subscriptions via the 'Subscription Information...' menu item.  The article expiry logic has changed slightly to never delete an article which you have flagged.  This means that you can let articles expire normally and flag the ones you like - all the flagged articles will remain forever and the others will go away when the expiry criteria are met.

There is now also some online help for LuckNews available on this web site.


I hope you enjoy this new release.  Feel free to forward comments and suggestions to:  lucknews.app@gmail.com

Tuesday, January 8, 2013

First release!

Welcome to LuckNews!


The little story behind LuckNews is that...  I upgraded my MacBook Pro to Mountain Lion (10.8) a few months ago and found that the blogs that I had been reading through the Mail program were no longer working.  Apple had dropped support for RSS feeds from Mail and Safari in Mountain Lion.  I went to the App Store to look for an app to read the blogs and bought one and tried it out.  I didn't like it, so bought a second.  I didn't like that one, so I bought a third.  I didn't like that one either.  I didn't try them all and there may be an amazing RSS/Atom/News reader on the App Store that would have done exactly what I wanted...but hey, I'm a software developer with time on my hands so I decided to write my own.

I'm a retired software developer.  I worked professionally at Alias (which became Alias|Wavefront, then Alias Systems, then Autodesk) for 20 years.  Those were 20 good years but by the end I wanted a change and I had discovered sailing.  I had bought a sailboat a few years earlier and decided to go cruising - sailing around, here and there, exploring.  That story is described in my other blog.  As I'm currently back in Seattle after having been out cruising for a year, waiting for the summer to arrive so I can take off south again on my next journey I have some time to work on fun projects.

I hadn't programmed since I retired from Alias/Autodesk before leaving on my first cruise.  I had forgotten how much fun programming can be, and I've had a lot of fun creating LuckNews.

Version 1.0 is ready for consumption.  I have a list of things I plan to add over the next little while, but this version provides all the functionality needed in a simple RSS/Atom/News reader I think.  The things I hope to add will be bonus features, not strictly necessary.  I welcome suggestions and comments on the app of course.

The app only works on Mac's and only on those mac's running version 10.8 (Mountain Lion) or higher.  (There is nothing higher as I write this, but at some point there will be...)  Its cheap!  Its simple.

As an added bonus, if you recently upgraded to Mountain Lion and had been reading RSS news feeds in Mail and are annoyed that you can no longer do that, you may be wondering what happened to all those news subscriptions?  As long as you didn't do a clean install of the OS, they are still around and LuckNews can get them back for you.  Use the 'Import Subscriptions..." menu entry and follow what I hope is an easy set of steps to get them back.

If you haven't upgraded to Mountain Lion yet, and have been reading RSS news feeds in Mail, and plan to upgrade to Mountain Lion - then in order for LuckNews to retrieve your old RSS subscriptions you need to do an upgrade, not a clean install in order to easily get them back again.


I hope you enjoy!

Craig.

Recovering RSS Subscriptions from Apple Mail prior to Mountain Lion (10.8)

I'm posting this article hoping that Google may find it and show it to people who are searching for a way to solve this problem.

If you had been reading RSS subscriptions in the Apple Mail app prior to upgrading to 10.8, Mountain Lion, then you may have discovered that this is no longer supported.  If you knew about losing this capability and have been holding back on upgrading so as not to lose this capability, I believe this app may be for you.  If you have already upgraded to Mountain Lion and want to retrieve your old subscriptions, this app may be for you.  If you're already running Mountain Lion and read RSS and Atom news Subscriptions, this app is also for you - its a good little news reader.

If you have not yet upgraded to Mountain Lion and want to be able to retrieve your RSS Subscriptions, be sure that you perform an upgrade, not a fresh install.

If you fall into the group of people who want to retrieve your old Mail RSS News Subscriptions, the directions to retrieve them in LuckNews is this:

  • launch LuckNews
  • in the File menu, choose the 'Import Subscriptions..." menu entry
  • you are presented with a dialog asking what you want to import.  Choose the second item, importing previously subscribed RSS subscriptions from Mail and press the 'Continue' button
  • you are now presented with some directions.  Read them and continue.  Briefly, you will be presented with an Open dialog and you need to navigate to where the old Mail Subscriptions are located.  The location is given in the title bar of the Open Dialog, so just read the title bar and navigate to the folder it describes.  When the proper folder is selected, press the 'Open' button
  • at this point LuckNews will search for your old Subscriptions and present you with the list it found.  Look through the list and accept them by pressing the 'Save' button

That's it!  The old RSS Subscriptions should be in the LuckNews Subscription list and the current articles retrieved.


* Note that LuckNews does not support retrieving RSS subscriptions from Safari prior to 10.8 - I never used that capability and so didn't build it into LuckNews - sorry if you fall into that camp.

LuckNews is a Signed and Sandboxed application. What does that mean?

This article is a little technical and provides some insight into the technology Apple is providing in order to make their platform more secure.  I'm publishing this article in order to make my customers more comfortable in running applications they download from the Apple App Store, including LuckNews.


In order to publish application on the Apple App store, Apple requires that the applications be signed and that they "run in a sandbox."  What does that mean and why are they enforcing these requirements?

If you have been using computers for a while you will be aware of the problem with computer viruses and malware.  I won't go into any detail about these pieces of software aside to mention that they are bad and you want to avoid downloading them.  The Apple platform has generally avoided most of the virus and malware problem - this has largely been a Windows issue.  However, time moves on and the developers of these corrupt pieces of software continue to advance.  Apple clearly wants to stay ahead of the game by trying to make their platform more secure, hoping to avoid the problem in the future as well as they have done in the past.

The two pieces, signing and sandboxes, are related in that they provide for a more secure environment, although the problems they address are separate.  I'll take each one in turn.

Application Signing.  Apple requires that all applications submitted to the App Store be code signed by their developers.  Signing is a process that results in your knowing that the application you are running is exactly the same application the developer submitted to the store.  Signing an application is a process where a strong cryptographic signature is calculated for all of the different pieces of the application and recorded in the application bundle.  For example, there are more than 20 files that make up the LuckNews application and each of them has a cryptographic signature stored in the application bundle.  What this mean is that once an application is signed the operating system is able to compare the application as it exists on your system with the signatures and if any single byte has been modified it will know and refuse to run the application.  This means that nobody is able to modify the application in-between the developer publishing it and your running it.  If a file is modified the application and signatures won't match and the application will refuse to run.  If someone tried to remove all the signatures the application will refuse to run.  Essentially - if the application is modified at all, the operating system won't run it.  If the application is properly signed (and all App Store apps are), and it runs, then you (and I) know it has not been modified.  The signature also identifies the developer.  Once an application is signed Apple would be able to trace the application back to the developer who signed it which means anonymous developers can't get software onto your system (unless you explicitly allow unsigned applications to run, which is not the default setting.)

This is cool.  If you only run properly signed applications then you know no third party has been able to get into the middle of the process and modify a program in some manner the developer did not intend.  I want to write the most stable and safe programs I am able, and code signing makes me feel good in that if an application has my signature on it, I know it hasn't been modified by anybody else.

Running in a Sandbox.  The second piece of the puzzle answers the question: Ok, I know you wrote the program and it hasn't been modified, but how do I know it won't wipe out my system anyway?  Applications that run in a sandbox run in a constrained environment where they have limited access to the system.  A sandbox is a special directory that has a name related to the application.  (Look in your home directory for the Library/Containers directory, this is where the sandboxes reside.)  The sandbox directory contains all the files the application is able to directly access without your explicit permission.  The sandbox is where LuckNews stores its RSS Subscription list and the Article contents.  Anything outside of the Sandbox, which includes the whole rest of the system, is not accessible by LuckNews unless you give it permission via the Open or Save File dialogs.  This means that if some malicious developer signed an application and you ran it thinking it was safe, as long as it ran in a sandbox (i.e. was downloaded from the App Store) it would not be able to alter your files or read them and send them across the network - it just doesn't work and this is enforced at the Mac OS kernel level.

The sandbox is designed to limit the damage an application is able to do, either accidentally or by intent.  LuckNews runs with two sandbox exclusions, called entitlements: it can access the network and it does so in order to update its RSS/Atom subscriptions, and secondly it is able to access files outside of the sandbox as long as you have allowed this via the Open or Save File dialogs.  For example, LuckNews is not able to access the camera, your photos, music, movies, address book, calendars, bluetooth, firewire, microphone, USB or your location (the actual list is longer, LuckNews is very constrained.)  Some applications can do those things as that makes sense for some applications, but in order to get outside the sandbox the developer needs to explicitly request the capability required and this request is reviewed by Apple to ensure that it makes sense.  The capability is encoded into the application and is therefore covered by the application signature which enforces that the capabilities not change.

LuckNews performs a very limited set of file and network operations, and I have been careful in its development.  However it essentially contains an entire web browser - when viewing news articles I am  using a large piece of software that I didn't write, which is included and supported by Apple, that you use when running Safari, but which must be multiple millions of lines long.  If something in that software decided to go berserk and try to attack your system (this is extremely unlikely, I only raise it as an example,) it wouldn't be able succeed in an attack as the sandbox limits the files it is able to access to only the files you allow via the Open and Save file dialog.  That is pretty cool.


I generally like the sandbox constraint, although it does make developing some applications difficult.  This can be seen for example in how LuckNews accesses old RSS Subscriptions that may may be present in the Mail application before an upgrade to Mountain Lion (10.8.)   In the old days, when I wrote that feature it would be an easy matter to simply test for the presence of the old RSS subscription files and if they were present offer to import them into LuckNews.  However, since these files reside outside of the LuckNews sandbox, I am not able to perform that test.  This meant that I had to find another way to solve the problem which is the rather awkward approach where you are presented with an Open File dialog and you need to navigate to the proper directory - this is how LuckNews obtains permission to read those files.  Please try to see the positive in that awkwardness (the sandbox working to ensure your safety) rather than its lameness.


In summary:
  • signing ensures that the application you run is the application I worked on and published
  • the fact that an applications run in a sandbox should give you comfort in that the application is not able to exceed the restricted set of permissions set up by the operating system, unless explicitly requested by the developer and approved by Apple.  
The first is straightforward 100% awesome, the second can be awkward but is generally good, in my opinion.

Hopefully these technologies will keep the Mac free of viruses and malware for many years to come.

Wednesday, January 2, 2013

Welcome to LuckNews!

LuckNews is a simple, elegant, fast RSS News reader, available for the Mac.

To get started with LuckNews you simply need to start creating Subscriptions.  You can add a new Subscription in a number of ways:
  1. From the 'File' menu, select the 'New Subscription...' menu item
  2. Use the keyboard shortcut for the above menu item, command-N
  3. Click on the little '+' icon at the bottom of the Subscription list, the left hand window pane
  4. From Safari, click on an RSS feed icon on a web page.  If you have allowed LuckNews to become the default RSS News reader on your Mac, LuckNews will then launch and offer to add the Subscription you have clicked on
For example, you can subscribe to Apple News as simply as following these steps:
  1. Select the 'New Subscriptions...' menu item from the 'File' menu
  2. When the window asking for a URL appears, type in:  apple.com
  3. LuckNews will then detect where the actual RSS News feed is located, load its contents, and then present you with a window that allows you to rename the Subscription if you should wish to do so
I hope you enjoy using LuckNews.  Feedback is welcome.