Sunday, August 25, 2013

ANN: Fogcutter Suite Synchronized Release - 418 Teapot

After what seems like an eternity of development work, we are proud to announce the first ever Fogcutter Synchronized Release - "418 Teapot". Named after the (in)famous Hyper Text Coffee Pot Control Protocol as a tribute to the amount of caffeine it took to get here, this synchronized release features the simultaneous release of Quoddy v0.0.0-tpr1 (Tech Preview Release 1), Neddick v0.0.0-tpr4 (Tech Preview Release 4), and Hatteras v0.0.0-tpr1 (Tech Preview Release 1).

The entire team has worked incredibly hard, and we're thrilled with the progress we've made, and happy to release the new capabilities embodied in these releases, to the public at large. We're still not finished and we have tons of plans for each of these projects, as well as Heceta so there will be even more awesomeness coming down the pipe in the days, weeks and months to come. But for now, here's a quick overview of what each project is, and where each is at:

Neddick

Neddick is an Open Source Information Discovery Platform, based on Groovy & Grails, and making up one component of the Fogcutter Suite. Neddick shares an approach to information discovery with consumer facing websites like Reddit, Digg, and other aggregator applications. You could call Neddick "Reddit for the Enterprise" but that would be oversimplifying a bit. Neddick is intended mainly for organizational use and therefore has features that Reddit lacks, but, in turn, lacks certain things that Reddit has. But Reddit was absolutely our inspiration for Neddick and you'll notice the commonality almost immediately.

Relative to Reddit, Neddick adds features like:

  • Channels can subscribe to RSS feeds - any "channel" in Neddick (roughly equivalent to a Sub-Reddit on Reddit) can link to 0 or more RSS feeds, and the channel will automatically be populated from those feeds on a scheduled basis.
  • Tags - Neddick supports the application of arbitrary tags to entries, and provides each user a view of the tags they have used, to enable rapid access to specific content.
  • Channel Filters - Filters allow you to filter your view of a channel based on criteria including: body keyword, title keyword, score, and tags.
  • More powerful "sharing" capability - Neddick supports sharing content by email, XMPP, and HTTP POST.
  • ActivityStrea.ms support - Neddick can HTTP POST entries to remote endpoints in ActivityStrea.ms format. This is how we built our integration with Quoddy - the Enterprise Social Network component of the Fogcutter Suite.
  • Channel Triggers - Triggers allow a user to specify actions to occur when Entry related events occur which match criteria which may include: A new Entry is posted which matches a body keyword or title keyword, an Entry is voted up past a specified score threshold, or a specified tag is applied to an Entry. Trigger actions include sharing via email, XMPP and HTTP post, and in future releases will be extend to include sending JMS messages, launching workflows via BPM integration, and running user provided scripts.

Technology Preview Relese 4 (TPR4) adds substantial new functionality, and many bug fixes, compared to the previous TPR3 release and provides the foundation for our future roadmap and the forthcoming fully certified and supported Neddick Enterprise from Fogbeam Labs.

New Features

  • Access control using Apache Shiro - Shiro provides the capability to implement fine grained, role-based access control.
  • Private Channels
  • Aggregate Channels
  • Channel Filters
  • Channel Triggers
  • "Share to Quoddy" via HTTP POST using ActivityStrea.ms protocol

Bug fixes & enhancements

  • Complete UI refresh - the entire UI has been reworked to be much cleaner, and to be consistent with Quoddy and the other components of the Fogcutter Suite.
  • Update Grails to Grails 2 - The previous code base was built on Grails 1.3.7. We've moved to Grails 2.2.3 now.
  • Update Groovy to Groovy 2 - along with the move to the new Grails, we've also updated to Groovy 2.1.5
  • New "Share" dialog - the UI element for the "share entry" feature has been completely rebuilt and is cleaner and supports new functionality.
  • Bug #94 - Edit Channel Properties page is broken
  • Bug #51 - Problem with excessive file handles - probably a file handle leak

To learn more about Neddick visit the Project Homepage at http://code.google.com/p/neddick

Quoddy

Quoddy is an Open Source Enterprise Social Network, based on Groovy & Grails, and making up one component of the Fogcutter Suite. Quoddy shares a common "look and feel", and substantial functionality, with consumer facing Social Networks like Facebook or Google+ as well as proprietary Enterprise Social Network products like the products from Jive Software and Yammer among others. You could call Quoddy "Facebook for the Enterprise" but that would be oversimplifying a bit. Quoddy is intended mainly for organizational use and therefore has capabilities which make it uniquely suited to provide the social fabric to support organizational knowledge sharing, knowledge transfer, collaboration and decision support.

Relative to consumer Social Networks and other Enterprise Social Networking products, Quoddy adds features like:

  • Calendar Feed Subscriptions - Quoddy supports subscriptions to any calendaring server which provides an iCal feed, so you can see your upcoming events rendered in your feed alongside other important events. Future releases will support CalDAV and interactive editing of Calendar Events from right in the stream.
  • RSS/Atom Feed Subscriptions - Quoddy supports subscriptions to any arbitrary RSS feed, so you can find crucial information in your feed. Subscribe to internal blog servers, document management systems, wikis, and any other repository which provides RSS, or subscribe to your favorite blogs, Google Alerts, and other external information sources.
  • Business Events Subscriptions - using the Hatteras Business Events Subscription engine, Quoddy allows users to define subscriptions to business events right off of the enterprise SOA/ESB backbone. Find out exactly what is going on in your enterprise, in real-time with Quoddy and Hatteras.
  • BPM Integration - Quoddy supports subscribing to User Tasks from BPM / Workflow engines. We currently only support Activiti, the leading Open Source BPM offering, but support for other workflow products will be coming in future releases.
  • Fine-grained User Stream definitions. Quoddy provides robust support for creating different "user stream" definitions, which filter content by type, source, group, or other criteria, and makes it trivially easy to quickly change the current Stream. For example, you may tke a quick peek at an enterprise-wide view of all the activity from every user, and then quickly switch back to a personalized view which includes only your BPM User Tasks. Quoddy emphasizes putting *you* in control of the content which is rendered in your stream, helping avoid information overload.
  • ActivityStrea.ms protocol support using REST. Quoddy exposes a HTTP interface for external systems to post ActivityStrea.ms messages. This allows our integration with Neddick as well as other 3rd party products.

Technology Preview Release 1 (TPR1) is the first Quoddy release and provides a solid foundation for our future roadmap and the forthcoming fully certified and supported Quoddy Enterprise from Fogbeam Labs

To learn more about Quoddy visit the Project Homepage at http://code.google.com/p/quoddy.

Hatteras

Hatteras is an Open Source Business Events Subscription Engine, written in Java and making extensive use of Apache Camel, which makes up one component of the Fogcutter Suite. Hatteras works with Quoddy to provide the capability for users to create Subscriptions to Business Events on the organizations ESB infrastructure. Hatteras connects to Quoddy, downloads all defined Subscriptions, and then listens for matching messages. Messages which match a Subscription are persisted to an XML database and Hatteras then sends a notification to Quoddy which creates a Subscription Item record which can be rendered in the user's stream. Quoddy and Hatteras thereby provide seamless access to important business events, alongside other import pieces of content the user has selected.

Future versions will focus on better administrative tools, and more hooks to provide interoperability in your unique environment. Over time, Quoddy, Hatteras and other Fogcutter products will add a powerful Event Stream Processing / Complex Event Processing capability to correlate events and provide deep analysis for powerful business insights. Over time, we will surface the capability to provide correlation between Events, People, and Content (Documents) and will offer the ability to quickly navigate in any direction, between the nodes in a graph of related entities which have causal, topical, or temporal relationships with each other.

To learn more about Hatteras visit the Project Homepage at https://github.com/fogbeam/Hatteras.

Used together, the components of the Fogcutter Suite provide powerful capabilities to solve real-world business problems involving the creation, transfer, and re-use of knowledge within the organization, and enable the fingertip access to relevant contextual information needed to foster meaningful collaboration, support better and faster decision making, and provide organization-wide "situational awareness".

Of course this release by no means marks the completion of any of these projects. Our roadmap for each includes a tremendous amount of new functionality and enhancements. Follow this blog, or our twitter account for the latest updates and news as we continue to build a kick-ass suite of tools for managing information and knowledge.

Sunday, February 12, 2012

Screenshot of the new polymorphic event stream

Quoddy is getting a polymorphic event stream!


The big news from Quoddy land currently is that support for polymorphism in the event stream is largely in place. "What," you might be asking, "does that mean, exactly?" Well, simply put it means that different "kinds" of events can show up in the event stream now, and each event will render (display) differently (and appropriately) based on it's attributes.


For example, one event might be a simple text based status update from a friend. That will display the words the friend wrote, their profile avatar and the time they posted and that's about it. But the next event in the stream might be a link to a scheduled event from your Meetup.com iCal feed. Since it's a calendar event, it will render with a an iCal icon, the start date/time of the event, the end date/time of the event, the location, and a hyperlink to the Meetup.com event.


Similarly an event might be a document shared from Google Docs or something, and it would, again, render seamlessly into the event stream, but with the exact details, links and controls that are appropriate for the event. This is really slick stuff, and coupled with AJAX callbacks to the server, allows us to embed any manner of interactivity right into the event stream.


Somewhere down the road we might look at incorporating GoogleApache Wave functionality here, so you can do collaborative editing "in place" from the stream.


We'll have some screenshots of this stuff up soon.

Sunday, December 25, 2011

Just In Time For Christmas: Neddick TPR3 is Released!

Neddick Technology Preview Release 3 (tpr3) is available, just in time for Christmas! See https://github.com/fogbeam/Neddick/tree/tpr3 and enjoy!

Merry Christmas and Happy Holidays to all, from the Fogcutter team and Fogbeam Labs.

Saturday, July 23, 2011

New Batch of Quoddy Screenshots

Believe it or not folks, progress is being made on the Quoddy project, and the progress over the last 2-3 weeks has been substantial. I've just posted a big batch of screenshots over at G+. Check 'em out here:

https://plus.google.com/u/1/114301088526097505896/posts/3NVEkHxRVUY

Thursday, February 24, 2011

Fogcutter Update 02-24-2011

Activity around Fogcutter has been frantic since our last update. Neddick release TPR2 was finally released and that code has been pushed to the demo server. TPR2 features UI improvements, bugfixes related to the tagging feature, the introduction of scheduled jobs, and the addition of scheduled jobs for rebuilding the entry cache and populating channels from RSS feeds


On the Quoddy front, the user-profile support has been radically improved and the UI for editing profiles has been cleaned up considerably. A preliminary preview release should be out soon. The main feature that we want to get in for a TPR1 release of Quoddy is basic "activity stream" support (think the "Wall" feature on Facebook.)

We've also started digging into the Mahout clustering code, and are starting to look into implementing some of the neat stuff that you can do with Machine Learning and Text Mining. An "auto tagging" feature and a better "related links" feature for Neddick are on the drawing board.

See the roadmap page for more on what's coming in the short-term.

Thursday, January 13, 2011

What's New With Fogcutter?


Since the last post, we've made a ton of commits to Quoddy - our Open Source Enterprise Social Networking platform (which is receiving most of the attention right now.) The most recent batch of changes have been focused on LDAP integration and User Profile editing.


Specifically, we've made all use of LDAP optional (the first pass at adding LDAP support actually assumed LDAP would always be present) by finishing up the "Local Accounts" support. We also added LDAP User Import, and we now fully support a mixed authentication mode where both "Local Account" users and (optionally) external LDAP users may log in. We've also started adding some (very) primitive support for editing User Profiles, and we added the very first UNIT TEST! Yes, the intent is to have a comprehensive test suite, but we'd been neglecting that stuff while doing a lot of exploratory programming earlier.


Yeah, it's considered bad form to write the code first and retrofit the tests, but in this case we think it's going to be OK. There isn't *that* much code to test.


On that note, after cloning the repo, if you want to see the current test coverage metrics, just

[user@somehost quoddy]$ grails install-plugin code-coverage
and then
[user@somehost quoddy]$ grails test-app unit: -coverage
to generate the coverage report.


Other changes: rev'd the Grails version to 1.3.6, and switched to using Groovy 1.7.6 for development.


And that about covers it. Check the TODO or the roadmap for more on what's coming down the pike.