SlideShare a Scribd company logo
1 of 40
JavaScript 
テンプレートエンジンで 
活かすData API 
2014/11/29 
MTDDC Meetup TOKYO 2014 
藤本壱 
1
アジェンダ 
• 自己紹介 
• JavaScriptテンプレートエンジンでData APIを活かす 
• Handlebarsでの例 
• Angular.jsでの例 
• まとめ 
2
自己紹介 
3
自己紹介その1 
• 藤本壱(ふじもとはじめ) 
• 兵庫県伊丹市出身 
• 群馬県前橋市在住 
埼玉 
東京 
山梨 
神奈川 
栃木 
茨城 
千葉 
4
自己紹介その2 
• 本職はPC系のフリーライター 
• 2004年秋からMovable Typeユーザー 
• さまざまなプラグインを開発 
5
自己紹介その3 
• ブログはもちろんMovable Type 
6 http://www.h-fj.com/blog/
テンプレートエンジンでData APIを活かす 
7
Data APIを 
使ったことがありますか? 
8
Data APIの概要 
• 管理画面を使わずにMovable Typeのデータを操作する仕組み 
• アクセスするアドレスとメソッドに応じて操作(REST) 
• データの取得/作成/更新/削除が可能 
• データはJSON形式で受け渡し 
• 各種のプログラム言語でアクセス可能 
• JavaScriptライブラリあり 
9
Data APIにアクセスする例 
• IDが1番のウェブサイトから記事を読み込む 
http://your-host/path-to-mt/mt-data-api.cgi/v1/sites/1/entries 
10
Data APIでできること 
• Web製作では… 
• ページ分割 
• 検索 
• 独自の管理画面 
• Etc. 
• Web製作以外では… 
• スマートフォン/タブレット用アプリのバックエンド 
• Etc. 
11
Data APIの難点 
• プログラミングが必要 
• デザイナー(ノンプログラマー)の方には難しい 
• 開発すべてをプログラマーに任せると… 
• デザインが… 
• HTMLを修正するたびにプログラマーに依頼… 
12
テンプレートエンジンでデザインとロジックを分離 
• テンプレートエンジン=テンプレートを解釈してHTML等に変換 
して出力する仕組み 
• ロジック(プログラム)とデザインを分離 
• プログラマーとデザイナーの分業 
13
JavaScriptテンプレートエンジンを活用 
• JavaScriptならData APIのプログラミングをしやすい 
• JavaScriptのテンプレートエンジンと組み合わせることも可能 
• MTMLとまったく同じではないものの、MTMLに近い形でテンプ 
レートを記述できるように工夫 
14
HandleBarsでの例 
15
HandleBarsの概要 
• http://handlebarsjs.com/ 
• 比較的シンプルなテンプレートエンジン 
• ロジックレス(テンプレートにプログラムを書かない) 
• mustacheの上位互換 
• JavaScriptのオブジェクトをテンプレートに当てはめて出力 
• 機能拡張も可能(ヘルパー) 
16
HandleBarsの基本 
17 
テンプレートJavaScript 
<script id="tmpl" type="text/x-handlebars- 
template"> 
<ul> 
{{#names}} 
<li>Hello, {{name}}</li> 
{{/names}} 
</ul> 
</script> 
<div id="output"></div> 
var src = $('#tmpl').html(); 
var tmpl = Handlebars.compile(src); 
var names = [ 
{ name: 'Taro' }, 
{ name: 'Jiro' }, 
{ name: 'Saburo' } 
]; 
var output = tmpl({ names: names }); 
$('#output').html(output);
HandleBarsの基本 
18 
テンプレート結果 
<script id="tmpl" type="text/x-handlebars- 
template"> 
<ul> 
{{#names}} 
<li>Hello, {{name}}</li> 
{{/names}} 
</ul> 
</script> 
<div id="output"></div> 
<div id="output"> 
<ul> 
<li>Hello, Taro</li> 
<li>Hello, Jiro</li> 
<li>Hello, Saburo</li> 
</ul> 
</div>
HandlerBars+Data APIの例:ページ分割 
• Data APIで各ページの記事のデータを取得 
• できるだけMovbale Typeのテンプレートに近い感じになるよう 
にデータを一部加工 
• テンプレートにデータを当てはめて出力 
19
記事一覧出力部分 
20 
<ul> 
{{#mt:Entries}} 
<li> 
<h2> 
<a href="{{mt:EntryPermalink}}">{{mt:EntryTitle}}</a> 
</h2> 
<p>{{mt:EntryExcerpt}}</p> 
</li> 
{{/mt:Entries}} 
</ul>
ページ移動リンク出力部分 
21 
<ul class="pager"> 
{{#mt:PagerBlock}} 
<li> 
{{#mt:IfCurrentPage}} 
{{mt:CurrentPage}} 
{{/mt:IfCurrentPage}} 
{{#mt:IfNotCurrentPage}} 
<a href="{{mt:PagerLink}}">{{mt:CurrentPage}}</a> 
{{/mt:IfNotCurrentPage}} 
</li> 
{{/mt:PagerBlock}} 
</ul>
記事の読み込みとデータの加工 
22 
DataAPI.listEntries(<$mt:BlogID$>, params, function(response) { 
var o = {}; 
o['mt:Entries'] = []; 
for (var i = 0; i < response.items.length; i++) { 
var r = response.items[i]; 
o['mt:Entries'].push({ 
'mt:EntryTitle': r.title, 
'mt:EntryExcerpt': r.excerpt, 
'mt:EntryPermalink': r.permalink 
}); 
}
ページ移動リンク出力用データの作成 
23 
o['mt:PagerBlock'] = []; 
for (var i = 0; i < totalPages; i++) { 
o['mt:PagerBlock'].push({ 
'mt:CurrentPage': i + 1, 
'mt:IfCurrentPage': (i + 1 == page_num), 
'mt:IfNotCurrentPage': (i + 1 != page_num), 
'mt:IfMoreResults': (i < totalPages - 1), 
'mt:IfPreviousResults': i > 1, 
'mt:NextLink': '#/' + (i + 2), 
'mt:PreviousLink': '#/' + i, 
'mt:PagerLink': '#/' + (i + 1), 
}); 
}
Angular.jsでの例 
24
Angular.jsの概要 
• https://angularjs.org/ 
• Google製/オープンソース 
• MVW(Model-View-Whatever)のWebアプリ開発フレームワーク 
• 多彩な機能 
• テンプレートエンジン 
• 双方向データバインディング 
• URLのルーティング 
• Etc. 
25
Angular.jsの基本 
26 
テンプレートJavaScript 
<html ng-app="SampleApp"> 
<head> 
・・・ 
</head> 
<body ng-controller="SampleAppCtrl"> 
<ul> 
<li ng-repeat="name in names"> 
Hello, {{name}} 
</li> 
</ul> 
</body> 
</html> 
var SampleApp = 
angular.module('SampleApp', []); 
SampleApp.controller('SampleAppCtrl', 
function($scope) { 
$scope.names = [ 
'Taro', 'Jiro', 'Saburo', 
]; 
} 
);
Angular.jsの基本 
27 
テンプレート結果 
<html ng-app="SampleApp"> 
<head> 
・・・ 
</head> 
<body ng-controller="SampleAppCtrl"> 
<ul> 
<li ng-repeat="name in names"> 
Hello, {{name}} 
</li> 
</ul> 
</body> 
</html> 
<ul> 
<li>Hello, Taro</li> 
<li>Hello, Jiro</li> 
<li>Hello, Saburo</li> 
</ul>
Angular.js+Data APIの例:独自の記事編集画面 
• 一覧で編集対象の記事を選択 
• 編集ページで記事を編集して保存 
• Data APIで記事の取得/保存を行い、Angular JSで入出力を管 
理 
28
記事一覧出力部分 
29 
<ul> 
<li ng-repeat="mt in mt.Entries"> 
<h2> 
<a href="{{mt.EntryPermalink}}">{{mt.EntryTitle}}</a> 
</h2> 
<p>{{mt.EntryExcerpt}}</p> 
</li> 
</ul>
ページ移動リンク出力部分 
30 
<ul class="pager"> 
<li ng-repeat="mt in mt.PagerBlock"> 
<span ng-if="mt.IfCurrentPage"> 
{{mt.CurrentPage}} 
</span> 
<a ng-if="mt.IfNotCurrentPage" href="{{mt.PagerLink}}"> 
{{mt.CurrentPage}} 
</a> 
</li> 
</ul>
記事編集ページ出力部分 
31 
<form ng-submit="save()"> 
<p>タイトル 
<input type="text" size="50" ng-model="mt.EntryTitle“ 
ng-disabled="disableFlag" /> 
</p> 
<p>本文<br /> 
<textarea rows="15" cols="80" ng-model="mt.EntryBody“ 
ng-disabled="disableFlag"></textarea> 
</p> 
<p><button type="submit">保存</button></p> 
</form>
記事一覧の読み込みとデータの加工 
32 
DataAPI.listEntries(<$mt:BlogID$>, params, function(response) { 
$scope.mt = {}; 
$scope.mt.Entries = []; 
for (var i = 0; i < response.items.length; i++) { 
var r = response.items[i]; 
$scope.mt.Entries.push({ 
EntryTitle: r.title, 
EntryExcerpt: r.excerpt, 
EntryPermalink: r.permalink 
}); 
} 
});
記事編集画面の表示 
33 
DataAPI.getEntry(<$mt:BlogID$>, $scope.entry_id, 
function(response) { 
$scope.mt.IfLogin = true; 
$scope.mt.EntryTitle = response.title; 
$scope.mt.EntryBody = response.body; 
$scope.$apply(); 
} 
);
記事の保存 
34 
var entry = { 
title: $scope.mt.EntryTitle, 
body: $scope.mt.EntryBody 
}; 
DataAPI.updateEntry(<$mt:BlogID$>, $scope.entry_id, 
entry, function(response) { 
alert('記事を保存しました。'); 
});
テンプレートエンジンの使い分け 
• 案件によって異なる 
• 単純なデータ出力だけ→ シンプルなテンプレートエンジン 
• Webアプリ的な複雑な処理→ フレームワーク 
35
まとめ 
36
まとめ 
• JavaScriptテンプレートエンジンを活用して、JavaScript絡みの処 
理でもロジックとデザインを分離 
• Data APIとJavaScriptテンプレートエンジンを組み合わせることも 
可能 
• テンプレートエンジンでData APIを活用 
37
One More Thing 
38
FreeLayoutCustomFieldプラグインのご紹介 
• HTMLとCSSでデザインできるカスタムフィールド 
• 複数の入力欄を自由にレイアウト可能 
• 同じレイアウトの組み合わせを複数件入力可能 
• 複数のレイアウトの組み合わせから選択して入力可能 
39
ご清聴ありがとうございました 
40

More Related Content

What's hot

20130225 pronet study
20130225 pronet study20130225 pronet study
20130225 pronet study
Six Apart
 
20140228 Movable Type Seminar
20140228 Movable Type Seminar20140228 Movable Type Seminar
20140228 Movable Type Seminar
Six Apart
 
僕がやったXaml戦略
僕がやったXaml戦略僕がやったXaml戦略
僕がやったXaml戦略
Hiroyuki Mori
 
データバインディング徹底攻略
データバインディング徹底攻略データバインディング徹底攻略
データバインディング徹底攻略
Hiroyuki Mori
 
20130626 movable type seminar
20130626 movable type seminar20130626 movable type seminar
20130626 movable type seminar
Six Apart
 

What's hot (20)

20160610 mtsaga handson_public
20160610 mtsaga handson_public20160610 mtsaga handson_public
20160610 mtsaga handson_public
 
詳説 Movable type 7
詳説 Movable type 7詳説 Movable type 7
詳説 Movable type 7
 
20130225 pronet study
20130225 pronet study20130225 pronet study
20130225 pronet study
 
Word Press on Movable Type
Word Press on Movable TypeWord Press on Movable Type
Word Press on Movable Type
 
20141101 handson
20141101 handson20141101 handson
20141101 handson
 
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016
 
20140228 Movable Type Seminar
20140228 Movable Type Seminar20140228 Movable Type Seminar
20140228 Movable Type Seminar
 
Movable Type 7 のすべて
Movable Type 7 のすべてMovable Type 7 のすべて
Movable Type 7 のすべて
 
jQueryを中心としたJavaScript
jQueryを中心としたJavaScriptjQueryを中心としたJavaScript
jQueryを中心としたJavaScript
 
20180709 pronet study
20180709 pronet study20180709 pronet study
20180709 pronet study
 
Wb tokyo 2013
Wb tokyo 2013Wb tokyo 2013
Wb tokyo 2013
 
MediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibanaMediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibana
 
僕がやったXaml戦略
僕がやったXaml戦略僕がやったXaml戦略
僕がやったXaml戦略
 
WordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイトWordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイト
 
Web development fundamental_v2
Web development fundamental_v2Web development fundamental_v2
Web development fundamental_v2
 
データバインディング徹底攻略
データバインディング徹底攻略データバインディング徹底攻略
データバインディング徹底攻略
 
Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」
 
Django 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブAppDjango 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブApp
 
Data APIの背景と活用方法
Data APIの背景と活用方法Data APIの背景と活用方法
Data APIの背景と活用方法
 
20130626 movable type seminar
20130626 movable type seminar20130626 movable type seminar
20130626 movable type seminar
 

Similar to JavaScriptテンプレートエンジンで活かすData API

データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回
Naoyuki Yamada
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJS
Ayumi Goto
 
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15
Hideki Hashizume
 

Similar to JavaScriptテンプレートエンジンで活かすData API (20)

scala+liftで遊ぼう
scala+liftで遊ぼうscala+liftで遊ぼう
scala+liftで遊ぼう
 
JavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData APIJavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData API
 
データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回
 
AngularJS入門
AngularJS入門AngularJS入門
AngularJS入門
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJS
 
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
 
Data API 2.0
Data API 2.0Data API 2.0
Data API 2.0
 
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発
 
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
 
APIMeetup 20170329_ichimura
APIMeetup 20170329_ichimuraAPIMeetup 20170329_ichimura
APIMeetup 20170329_ichimura
 
ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~
 
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15
 
Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)
 
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイドXPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
 
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできるTECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
 
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
 
CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)
 
はじめよう Backbone.js
はじめよう Backbone.jsはじめよう Backbone.js
はじめよう Backbone.js
 

More from Hajime Fujimoto

More from Hajime Fujimoto (20)

Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSIONMovable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
 
コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張
 
PowerCMSとIoTの連携
PowerCMSとIoTの連携PowerCMSとIoTの連携
PowerCMSとIoTの連携
 
Connect with Data API
Connect with Data APIConnect with Data API
Connect with Data API
 
Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
 
Movable Typeの権限と承認フロー
Movable Typeの権限と承認フローMovable Typeの権限と承認フロー
Movable Typeの権限と承認フロー
 
2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable Typeをパワーアップ2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable Typeをパワーアップ
 
はじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオンはじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオン
 
Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.
 
Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
Vagrantのすすめ
VagrantのすすめVagrantのすすめ
Vagrantのすすめ
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)
 
Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~
 
デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散 デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散
 
Amazonec2ではじめるMovable Type
Amazonec2ではじめるMovable TypeAmazonec2ではじめるMovable Type
Amazonec2ではじめるMovable Type
 
MTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘いMTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘い
 

Recently uploaded

Recently uploaded (11)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

JavaScriptテンプレートエンジンで活かすData API