Twipler script
I’m struggling with a dilemma. Progress with twipler is coming along nicely bearing in mind this project could take 6 months or more until it’s ready for the general public. However, a twitter web client really needs to have direct message, followers and trending information. Public timeline and status update is not enough.
So my dilemma is; do I include “twipler script” as part of the vision statement. Well, I’ll certainly outline it now and who knows, it might get included. It’s a hefty chunk of work.
Script
A user should have the option to write their own twipler script, but most the time a theme would provide the script behind the scenes. Most people know how to write an excel formula, and if there is enough community support and documentation it should be popular enough to warrant spending time developing it.
At its’ core, the script will define certain key entities, for example “Me” being the current logged in user which derives from the User type. Entities/Types would have methods and properties, for example User has Followers and Following properties. The script would also require some lambda type expressions like “where”, “first”, “any”, “contains” etc.
As a theme developer, I could display a dataset of “my followers – who themselves are following 10 times users than they are followed by”
Me.Followers.Where( (Them.Followers * 10) < Them.Following)
This dataset would be displayed using the templating mechanism discussed elsewhere. The page would have a submit button which posts back a request for processing. The template (grid) may have a checkbox per user which has a property like “IfCheckedWhenSumitted”
IfCheckedWhenSubmitted = “Me.Followers.Block(Them.UserId)”
Is this too elaborate?
It’s not unusual for a developer to come up with a complex solution to a simple problem like deleting spam followers on twitter. But the more I think about it, the more I think I’m on the write track.
For example, if I add persistence to an entity like “Me” I could store a list of my current followers using the commands to clear and re-save a list of my current followers;
Me.Clear(“CurrentFollowers”); Me.Save(“CurrentFollowers”, Me.Followers);
At a later time I can retrieve this list and compare it to find users who are no longer following me;
Users[] previousFollowers = Me.Load(“CurrentFollowers”); Users[] notFollowing = previousFollowers.WhereNotIn(Me.Followers);
Save and Load simply use Xml serialization and select or insert into a database table, and Clear just deletes from the table.
Ok, maybe I’m elaborating for the sake of justifying writing twipler script?
