March 14, 2010

Recent Additions

Some small additions recently, so let’s get to it:

Twitter

Twitter sign-in is active, although we are still keeping this on the low. Today, a Twitter bridge was enabled which allows existing users to connect their twitter accounts and send ActionStatus updates (or any update) to their twitter account. Reachable on the dashboard.

Lime

Lime derivation from the Melative core is still currently under heavy development. Just as the derivation of the entire Nuclear api kit came out of Melative for open-sourcing, so will LightMeta. This is one project offshoot we have high hopes for, as it has proven very useful in creating an open, categorized/typified library based on media-types, but that’s not to say it is restricted to any typing specifics, and that’s the kind of light organization that makes it useful.

Kronblr

Kronblr, the federated micropublishing platform, hit version 0.1 early in the year, and we are still looking to push to 0.2, which will include some square revisions. Integration of Kronblr with Melative is presently stalled, as we look for options on structuring the ActionStatus format.

ActionStatus

ActionStatus is what we’ll be calling the format birthed from Melative action-updates, or textual scrobblings. ActionStatus has similarities to the increasingly popular ActivityStreams specification, and we want to make it as easy as possible to transform ActionStatus updates into ActivityStreams format.

Some might question why we don’t use the ActivityStreams spec and end there, and the answer is that ActivityStreams has limitations in comparison to ActionStatus. ActionStatus, for one, has no verb limitations and a format which fits better with Lime entities and attributes. Secondly, ActivityStreams is an Atom extension, and we do not use Atom as a native API format. Having a similar but slightly less specific format offers the advantage of maintaining native API structure with simple conversion to Atom when necessary.

Nuclear

Last but not least, Nuclear deserves a mention as it is largely what makes it easy to hack on Melative. Nuclear has seen good changes since Autumn 2009, many of which have enabled it an abstract federated core. This means that Nuclear can store users and social relations between users, regardless of domain. This high-level relation-building is something we believe is crucial for the future of Melative and web applications in general. Regardless of the success in our specification, we feel comfortable opening up to other simple, high-level relation protocols should they grow into feasible solutions.

Nuclear is a fun project to work on, and we have our eyes set on natively integrating some rising protocols such as WebFinger, XRD, RSD, Salmon, and more as the come.

That seems about it for now.

November 29, 2009

Segment Ratings

After suggestions from @kokuun and @chikorita157, segment ratings were considered and the schema was modified to allow such ratings. Today, a hook was added to the microblog which checks for rating text within an update on a segment.

Microblog Parse

In order to make a rating through the microblog, the update must include ‘rating:’ (case-insensitive) followed by a rating. The format for segment rating varies, but the rules are basic.

Rating Format

First, it should be addressed that segment ratings are normalized to a 100-tier system, s.t. 88% = 88/100, 8.8/10 = 88/100, etc. The numbers which are used in the rating do have effects, especially when the /Max is not included.

When /Max is included:
The rating is calculated as Value/Max and normalized to Max=100. If rating 8/10, this will equate to 80/100.

When /Max is not included:
If the Value is less-than or equal-to 10, the base is considered to be Max=10, then normalized. If the Value is greater than 10, the base is considered to be Max=100.

Unless your Max is always out of 10 or 100, it is best to use the /Max for accurate ratings.

Valid Rating Examples:
6/12 = 50/100
5/15 = 33/100
18/20 = 90/100
47/50 = 94/100

8.1/10 = 81/100
3.51/10 = 35/100

Note: If a decimal results, the value is floored.

What is a segment? A segment is a sub-section of a context, or title, such as a track to an album, an episode to a tv/anime series, or a chapter to a book/manga.

October 4, 2009

Micros in Federation

As previously noted, Micros is the microblogging running inside Melative, and one of the major goals is cross-domain compatibility and fluidity; aka Federation. Rather than build something similar to OpenMicroBlogging protocol, we decided to design a specification protocol which the microblog will use to solve this problem of cross-domain following. (Just for reference, any publishing software can use the specification, it’s open and being fleshed)

Here, I’d like to address 4 aspects of the service to help enrich the understanding of this Federated specification, as well as the solution and benefits it provides.

What problem does Federated micro-publishing solve?

  • Social services may only be used with valid usership
  • Social relations may not be established without mutual usership (centralization)
  • Social services are closed, by nature (one must have an account)
  • Social services are centralized (e.g. thedomain.com)
  • Users are following other rules (e.g. site agreements)
  • There is no freedom, as there are always requirements (e.g. usership)

How is this a unique solution?

  • Decentralized (users on any domain may be part of the social-sphere)
  • Federated (users may establish relations without regard for central usership)
  • It’s a specification
  • It’s an open protocol
  • It’s adaptable and customizable

We are only implementing a version of what is possible through the API specification. Other developers may create their own platforms which will interact in the same fashion. The aim with Micros is a publishing platform, similar to a blog, but extensible through theming and plugins. The core of Micros will be a hooking environment in which 3rd party scripts may execute.

Is there evidence that this works?

What sort of business model does it cater?

  • No central ownership
  • Specification provides an infinite platform
  • Open development
  • 3rd party applications
  • 3rd party features
  • Potentially massive user-base (the Internet)

The importance in the business model is that the specification allows developers/vendors to create their own pay/private services, which still enables interaction with the social-sphere. Also open is the area of customizations, similar to Wordpress’s flourishing theme/plugin base.

In summary, we are modularizing the microblog to fit this specification in hopes of building a larger, open social publishing network that may be used regardless of usership and domain.

September 19, 2009

Micros, Melative’s Microblog

For now, the name is Micros.

The microblog on Melative is perhaps one of the most familiar features for users, but with the amount of attention and development that goes in, there must be something more.

What is the Micros?
Micros is a textual interface for micro-updates, which also allows inline commands on context-types, or what we call textual scrobbling. Textual, for the scrobbled update (e.g. ‘listening to /music/Crooked Rain, Crooked Rain/track/Gold Soundz.’) may also have a message appended to the event (e.g. ‘listening to /music/CRCR/Range Life. We should all strive for a range life.’).

It may be seen as a status-update type interface, but there is special nuance between “status-update” and “microblog” (here is a clear explanation which I find handy). When we consider textual scrobbling containing message content, it is much more fitting to be called microblogging than status-update. The key here is “content,” or more specifically publishing content.

At the top level, Micros aims to be more akin to WordPress, in that it allows content publishing, but in a micro manner. This similarity also is aligned with the notion of being open-source and allowing decentralized installations.

Why is Micros important?
As we develop this feature more, we are aiming to extract and modularize it as a standalone application, while still allowing interface commands to have value on the Melative experience engine (organizing, categorizing, interacting with a user’s media library).

At the same time, the system will be built for near-real-time notifications across domains, yes cross-domain following/subscriptions/@replies.

We feel, that in this age of communication, there is little reason to centralize micropublishing to a few large, closed1 channels (Facebook, Myspace, and Twitter), where there is no inter-channel communication without valid usership on each service.

Simply put, Micros is a blog which will notify subscriptions in near-real-time, without the need for centralization (those who are subscribed on various domain/nodes will receive the content directly).

Notes
1 – Closed in the sense that non-users may not interact, this is the opposite for Wordpress, which allows non-user commenting. Micros will allow non-user following, where the event (an XML packet) is sent to subscribed nodes.
-There are other features behind the system, such as scrobble-anything and exact context-referencing, but they are slightly more specific to the experience engine (allowing logging, linking, rating, tagging, wishlisting all from the microblog).

August 28, 2009

Tutorial: Using twhirl with the microblog

We should be able to sum this up in 4 images, but just in case, grab a cuppa-java for the ride. Isn’t coffee so delicious.

1) In accounts, select laconi.ca as the service for a new account.
Select laconi.ca service

2) Enter name@melative.com for the screen name, where name=your user name
Enter username@melaitve.com

3) Add the account, and hit Connect
Add account, and Connect

4) Enter password, and Login to enjoy
Enter password, Login

^_^

Notes

For more information on how this works, see the laconi.ca Twitter API documentation. Note: we are not using laconi.ca, but simply built an interface almost to the specifications.