Re-post: Beautiful Reading

Note: This is a mirror of Adobe Evangelist Anirudh Sasikumar’s post http://anirudhs.chaosnet.org/blog/2009.09.01.html which has been down due to too much traffic.

September 1, 2009 10:36 PM
I spend a lot of time reading articles on the web. Somehow, I miss the lack of typesetting and pagination especially when the article is captivating as well as long. This is my attempt at making reading content on the web (and the computer to a certain extent) more beautiful. With a lot of help from Flex 4, Readefine beautifies text, RSS and HTML content for easier reading. Text is laid out in multiple columns, sanitized of stray newlines and paragraphs and a nice font is applied.
What is it?

Readefine is a Flex 4 web application (a desktop one is coming soon) that beautifies RSS, text and HTML content by laying text in multiple columns for easier reading. Take a look at the screenshots below:

readefined - door.png

readefine - text.png

It can load content from the web, a file on your computer or via copy-and-paste. Readefine supports content in RSS, HTML or plain text format.

Text settings like justification, ligatures, column width / count, etc. can be fully customized and saved.

Some nice things about it:

  • Removes stray newlines, empty p, br tags.
  • Newspaper like layout for RSS – my aim was for RSS files to look like a newspaper1.
  • Paginates rather than supporting scrolling. I hate scrolling while reading a lot of text.
  • Makes long plain text files beautiful and also sections them for performance.
  • Copy paste or load a file from your computer (load, not upload)
  • Gives a new look to those valuable Gutenberg text files
  • Remembers the last 30 URLs you have visited.
  • Re-flows text according to the available size.
  • Resizes images to fit within the columns.
  • Tries to compute the absolute URL from a relative link.

Some not so nice things:

  • HTML support is experimental. Certain HTML (even from popular sites like the Wall Street Journal) will make it go crazy. Plain text and RSS work best.

For the Flex Community

This is my first full-fledged Flex 4 application. Flex 4 rocks!

The components used in this extend the existing Flex 4 and Text Layout Framework classes to add pagination, HTML cleanup and tolerant HTML import. I’ve also built a Scroller like component for the overflow of articles from top DataGroup to the one on the left side. I will be open sourcing these components shortly for the benefit of the developers out there.

Try it out and let me know. Any feedback is welcome.

Status of Flex Data Visualization Components

There have been some questions over the last few days on the status of the Flex data visualization components and I wanted to make sure everyone knows our intentions.

First of all, you may notice that the 3.4 downloads page has an updated copy of the data visualization components (charts and the Advanced DataGrid and OLAPDataGrid). While we have made it easier to view the source (you don’t have to run the DMV-source.jar anymore), we still consider these components to be under the Flex Builder license, and the source to be considered “Professional Component Source Files” as described in the Flex 3 SDK EULA. So I hope that clears up the licensing question.

The other concern I’ve heard raised is that Flex 4 is not seeing many changes to the data visualization components, and therefore folks are worried that Adobe is not investing in them. Data visualization remains a “core competency” of Flex, and we absolutely plan on further development of these components along with supporting partners who have expanded upon them like the ILOG team at IBM. In the Flex 4 time frame we plan on making some improvements to the GroupingCollection, a fundamental piece of the ADG in the hopes of addressing one of the larger performance bottlenecks. However, we chose to take on 2 significant agendas that preempted doing significant work in the data visualization components.

The first is the data connectivity features in Flash Builder; the way we’re making it even easier to connect your data from the back end into the data visualization components in the front. We hope that this will make the data visualization components even more accessible for developers, making it simple to get up and running and build powerful data-driven applications.

The other agenda is the introduction of the Spark architecture. As everyone knows, this is a significant improvement to the fundamental component architecture in Flex, but it is too much to bring every component forward into the new model in a single release. While the charting components do not need to be modified significantly to fit well with Spark, the DataGrid (and therefore the AdvancedDataGrid) will take significant effort, and that is work we intend to do in the following release. Knowing that a fundamental re-architecture of the DataGrid is coming, we decided not to make significant investment in the current one for this release other than addressing the most important bugs.

So that’s the status and we hope you’ll understand and agree with our prioritization. If you’ve got any questions, feel free to comment here or post to the forums!