As I mentioned before, I am making small abstraction FW.
For giving the task a vista, I want to make a list of the requirements in advance.

  • Abstract Model (I hope the ActiveORM will be)
  • Basic HTML tag helpers (such as "tag", "url_for")
  • Starting up hook to modify others
  • Way to register helpers
  • Way to read/write configuration of plugin

In particular, abstract model is quite important.
There are already several efforts, but they all are probably not succeeding.
I think the reason of the failure is what most of them had been concentrating to make abstraction of models for models.
It must be designed for agnostic plugins.

Suppose you are an application developer and you are writing some code.
Obviously, the FW and ORM have already been chosen.
So you have no need to treat various ORMs for making the app.
Only agnostic plugins need the abstract model.

What is the requirements of the plugins?

  • read_many with options for specifying :limit and :offset
  • read_one, create, destroy, update
  • read/write access to attributes
  • counting, searching, association and so on.

Is it the DataMapper?
Yeah, it is nearly equals to. But it must have more flexibility.

In conclusion, we should not make an abstraction of models but an abstraction of plugin's requirements to FW.

posted by genki genki on Thu 23 Jul 2009 at 20:41 with 0 comments

Today, there are many web application frameworks such as RoR, Merb, Ramaze, Sinatra and so on.
And then, most of them have original plugin system respectively.
It opens curtain of the tragedy entitled "Combinatorial explosion" upon plugin developers.

Just think.
FW hackers tend to be opinionated.
It is obvious. Because it is the source of energy of his/her great works.
But it is a reason of the tragedies as well.
Is that a fate of us? It would never be changed?

No, it isn't.

There is a hope we already have. Its name is Rack.
Rack is called meta-framework. Most of FWs exploit it today.
It saved tons of time of FW hackers to make original HTTP interface for their FW.
It must happen for also plugin developers.

I think what they need is not another meta-framework.
meta-framework is for FW hackers.
Abstract framework is for plugin developers.

I began to make an abstract framework on github.
Here is.

http://github.com/genki/agnostic/tree/master

If you have idea, please let me know.

posted by genki genki on Thu 23 Jul 2009 at 18:00 with 0 comments
Contents rssrss
Leading Smart TV App Development Companies | USA | 4 Way Technologies
Apple TV Developer | TVOS Development | USA | 4 Way Technologies
光ファイバーを二次元振動させて走査するAR用ディスプレイ
因果の取り違え
Value Transformer
Swift2's defer for CoffeeScript
mongodb-3.0からcreateIndexのdropDupsが無くなったらしい
mongodb-3.0以降のWiredTigerの設定を動的に変更する方法
一般楕円の高速生成アルゴリズムへの道標
farro mantecatoのレシピ
Tags
agnosticpluginthoughsthought
Comments rssrss
瀧内元気 瀧内元気: MacOS版は以下にあります genki/ViMouse 01/16 05:40
KingofSmack KingofSmack: Here also good reads for this mobile application d... 05/10 18:02
Spencer Spencer: You don't have to re-compile it, this version work... 04/08 07:15
staiano staiano: Any chance we can get a recompile for 10.9? 01/10 01:47
dsjf dsjf: https://gist.github.com/6bf1bf2c3cbb5eb6e7a7 これでも出... 01/08 23:23
yoku0825 yoku0825: nkfの方が使いやすいですが、glibcに含まれているiconvの方が 確実にどの環境にも入っている... 06/11 07:03
falsefalse falsefalse: @tiancongxin try using this one https://github.com... 02/14 08:04
瀧内元気 瀧内元気: おお、チェックしてみます。thx! 12/24 05:23
Services from s21g
YOMU Web小説リーダー
Web小説を音声で楽しむ読み上げリーダー
補助探
公開されている補助金・助成金情報を集約し、条件に合う制度を探しやすくするサービスです。
jotter.me
個人開発者のためのホスティング一体型ノートサービス
ハンドミラー
iPhone向けの手鏡アプリ
ツイプロ(twpro)
Twitterプロフィールの高速検索エンジン