Wednesday, August 26, 2009

Insider's portal - why we need it

I've just made a presentation.

As a system(or network or everything) admin, I thought that user literacy is the key to administration.

(Disaster-)Preventive education (to get LITERACY) is more important than incident response. (Of course incident response is important. But preparation of it is more important too.)

But, how?

Here is my plan. Make an attractive portal site for insiders of your company.

In the site,
administrators can hide some tricks to kick them to be educated.
both user and administrators can get immediate response.
user could know who is in the server, and hopefully be friend.
we can centralize resource.
we can simplify client-environment enough to keep them clean.

anyway, if you were interested in, please click my presentation.

Friday, August 21, 2009

feedchat - chat in valid RSS format

This is inspired by the sample code of chat server from "Programming Erlang" by Joe Armstrong

Chat Server -> as the sample is
feed view -> tail -N of feed history
           or,   tail -f -N =:= friendfeed

chat server process : implemented by CouchDB
    RSS entry = document
    DB = history (w/ time stamp)

this is cheapest implementation of friendfeed


Map-Reduce (query against CouchDB) view point
    Map : crunch feed via XMPP or Pubsubhubbub...

    Reduce: tail -N of (feed history)
    Reduce: tail -f -N of (feed history)


Wednesday, August 12, 2009

Quest for Quality Without A Name

from the aftermath of FriendFeed acquisition

This entry is translated from my Japanese blog(diary) entry やや感傷的なex-日記オヤジの繰言 Maybe too long, and pointless, sorry. But, it is required to describe my thought exactly (diary is used for).

--------------------------------------------------------------------------

My first impression on the news of friendfeed acquisition by facebook was, "Congrats, Good Exit".

Because I know a bit about exhausting life in start-ups. I've been a programmer of venture software company just for a half a year. But a half a year is enough for me. Money burns down every second, heavy pressure, too tight schedule, anxiety about future... Venture company almost always stuck in the mud of shortage of money to run. For both growing, shrinking, too little money to survive. Even if you have growing/promissing business, it's too hard to maintain cash flow to catch up growth.

So, every venture company would be broken in some sense.
Change itself from slim/beauty deer to fat cash-cow, or, just vanish.
Anyway, stop running is a relief. I thought. -- I had a point of view from inside of start-ups.

But, soon I noticed the "not-welcome" comments from USERs. I don't know claiming users are majority or not, but they are impressive and they are like a flood of voices.
(I just remembered the article on realtime-riot on friendfeed)
If you saw that in real-time-line, it would be overwhelming.

I just wondered, were "Friendfeed is coolest service, but NO ONE USE" true?  But, Look, here so much people crying for help and showing disbelief within friendfeed!

It's not only because coolest toy taken away. I guess. They are serious about something more important. What's that?


So, here is my thought.


Friendfeed is open-architecture. Not only open, they welcome to questions, requirements, and ready to offer rich API. Only a few guys challenged raw API hacking, but even average users (if active), enjoyed making groups, special feeds based on rich API. Little tweaks they made, would become little treasure of themselvs. So, they invest their small hacks into the friendfeed, and made virtual money(value). Like a sort of SECOND-LIFE without 3D avator, and its value is not money, but rich communication/fun.



Once dived into friendfeed and soaked, then you can find out people just like yourself. Even if you are minority in real life, here you have friends. This is common phonomena when the network shrink size of the world. (I've experienced some times. When I made my homepage(Diary) around 1996, its content was very nitch/minor one,, my daily life... But soon, I could found out people like me!)



Thus, in friendfeed, communication made community, and flexible system enforced eco-system of value-creation among users.



But, no one(very few, maybe), recognized that. Anyway, such a recognition itself would help too little in value-creation, might be :-p


Then, the crisis on the basis of community enlightened people. They noticed the existence of community, value of community, and realizing how the system enforced the process of creation.



Sooner or later, system itself would be bored by people, then people abandon the system. Thus, divorce of system/user is inevitable.

So, I'm asking to myself. What happens next? What's the next friendfeed? I don't know. But one thing is certain.
People wouldn't vanish.
They will make another community in the long run.
Linkage among people also survive for long time.
Then, next edge-community may looks drastically changed, but the same face you can find out, I think.
Because, My experience assures.

In Japan, on Sep 15, 1995, a meeting held which named "Second Summer of Web", it's a milestone event in internet users and Web-diary("NIKKI in Japanse, ancient hand-made blog) community in Japan. Since then about 15years, now I can see some in the front of network community "BENKYO-KAI" in Japan.


So. Folks, once you recognized the situation, please be calm down. Still, you think you need to take action, go ahead.
Then, see you again, in another space, another time, at edge of the net.

-------------------------------------------------------------------------------------

Addendum


Witing nn community and creation, I remembered the name Christopher Alexander. And his book on Design Pattern. "A Pattern Language: Towns, Buildings, Construction". In that book, key phrase "Quality Without A Name(QWAN)" also remembered.
Now I don't have enough time to explain it. But it would be interesting to what corresponds to QWAN in friendfeed system/community, I think.

Saturday, August 8, 2009

FriendSync service design

Now, FriendFeed is the best twitter client. But there is a missing-link.
Who use twitter, hostiled their follower, are nailed down to twitter.
If you can maintain follows automatically on FriendFeed, you'll have Smarter-Twitter.

So, I imagined follower-synchronize service. FriendSync.
To prove inconvenience FriendFeed user who has so much Twitter followings.

But! oH My gOd! FriendSync already exists (2009 Aug 7) ... so I need to change name to Merge2it2ff or Invi2ff
FriendSync - Sync w/ Facebook
http://appup.net/item/detail/288348190


FriendSync syncs your existing iPhone Contacts with Facebook!Syncs your
iPhone's contact pictures, names and birthdays with Facebook.


Anyway, here is a memo on security key features.

Key feature : use OAuth (3-legged!)

To invite followers from Twitter to FriendFeed, the service need to have authorized to access follow information and register follower.
For such a process, OAuth is desined.
And, OAuth's "easy-to-use" is already proved by Mobster World :)

Service programs can be located on VPS, but secure info (Request Key) is encrypted|digested, and shall be stored in more secure place.
So, service system deployment starts from SSL key signing.
Every step needs SSL communication between VPS (application server) and secure storage server.
If you using trustfull (using all by yourself, and all well-known ports are protected neatly) server, both application and secure storage server can be the same one :-)
This would be low performance, slow in latency, but this is not so much frequently used application that it has no problem.

Key feature : Informed concent before OAuth steps.


It's partly because of complexity of registration step. You want to be informed enough to keep motivation during long way.

Usecase
  • registration
    • Inform the risk
    • Inform how to reboke
    • force to check reboke page
    • guide how to use
      • add/remove follow from this application
      • automatic sync follow status on every 30 minutes
      • manually sync follow status
    • guide registration step (2 step)
    • start registration
      • declear that your id is the same as FriendFeed
  • login
    • use FriendFeed OAuth (OpenID of twitter might be straight forward to explain, :-)
    • need cookie (expires shortly,,,, mmm,