SlideShare a Scribd company logo
1 of 35
Download to read offline
死闘!
OG Mailinglist
2015-02-20 at Drupal Cafe Osaka 28
刀祢邦芳(Tone, Kuniyoshi)
自己紹介(1)
● 元TMUG 名誉会長
● IT業界40年
○ メインフレーム
○ Windows
○ UNIX
● 苦節10年 with Web+OSS 
● Drupalとの再会 in 2014/10
2
自己紹介(2)
● 仕事では
○ Actuate (BIRT)
○ Tableau
○ Pentaho (Spoon)
○ Zabbix
○ PHPRunner
○ その他
■ Wakanda, Ansible, Docker, Redmine, Magento など少々
● 使ってきた言語(順不同)
○ Powershell(最近)
○ JavaScript, Google Apps Script
○ COBOL, FORTRAN, PL/1
○ マクロ・アセンブラ(6502, System/370)
○ C,VB,PHPはあんまり使ってません
3
● 以前から高校の同期生のMLを管理
● MLには問題点が種々あったので「脱ML宣言」後
2011年7月にWordPress掲示板に移行
● しかし多くはROMなので投稿、コメントをIIJのML
サービスで配信(ホスティングサービスからのメー
ル送信は200通/時間の制限あり)
==>掲示板とMLの二重メンテが発生
● メールでの投稿を求める声が大きくDrupalにて実
現することを決意
課題と経緯
4
MLの欠点
● 文字化け・配信漏れ多発
● 添付ファイルの制限が厳しい
● 見栄えがメーラー依存(Webのブラウザ依存以上)
● スレッドが見えにくい
○ MLアーカイブをWebで見ても同様
○ 途中参加の人は議論に追いつくのが面倒
● 引用のゴミが邪魔
● これらの欠点が途中にDrupalを介在させることで
ある程度は改善されるであろう
5
D7でやりたいこと
1. ArticleにWebまたはメールで投稿
2. 投稿をメンバーにメール配信
3. そのメールへの返信メールを該当のArticleのコ
メントとして取り込む
4. Webまたはメールでのコメントもメンバーにメー
ル配信
6
実現案(A)
● Messaging
● Notifications
● Mail Comment
● Feeds
の組み合わせにトライ
(参考:http://www.streamconsulting.nl/index.php?q=node/43)
しかしながら
● メールの件名が尻切れトンボ
● メール返信時の引用を除外する設定がうまく動作しない
● cronでのfeedがうまく行ったりいかなかったり?
● モジュール本体とドキュメントが若干古い?
7
実現案(B)
● Organic groups
● OG Mailinglist(project:og_mailinglist)
の組み合わせにトライ(類似品og_mailing_listにご
注意!)
(参考:https://www.drupal.org/node/938718)
8
What is OG
● 実例
○ http://drupal-seminar.jp/node/160
● 機能
○ 1つのサイトに複数のGroupを定義し、そこに特
定のコンテンツタイプを関連付ける
○ Userは特定のGroupに特定のRoleで加入
(Subscribe)しコンテンツを作成・閲覧できる 
9
OGの構造
10
● グループの雛形となるコンテンツタイプ(複数可能)を作成
<例>運動部掲示板コンテンツタイプ、文化部掲示板コンテンツタイプ
● グループ用コンテンツタイプにグループコンテンツ(複数可能)と
そのメンバーを登録
<例>野球部グループ掲示板コンテンツを登録し、そこに野球部員を登録
● 記事用コンテンツタイプをいずれかのグループコンテンツタイプ
に関連付ける
<例>運動部掲示板用Article、文化部掲示板用News
● 記事用コンテンツ投稿時に投稿者の属するグループに関連付
けて投稿
<例>野球部員が野球部掲示板にArticleを投稿する
グループ用コンテンツタイプ
11
グループ用コンテンツ
12
これをML用のメールアドレスにする
@mg.sample.com
記事用コンテンツタイプ
13
記事用コンテンツタイプ追加フィールド
14
entityreference_prepopulateモジュールが
追加した機能(コンテンツ追加用のURLに指
定した値でGroupを指定するため)
記事用コンテンツの投稿
15
● メールでスレッドを紐付ける
○ Message-IDにノードIDを持たせる
例:Message-Id: <node-35-comment-0@mg.sample.com>
● 引用のゴミの削除
○ 行頭に>がある行は削除
● メール送受信は推奨設定のMailgunを用いる
○ 通常のメールサーバ(QmailやPostFix )も利用可能のよう
だが設定が面倒くさそう
○ GmailやWebホスティングだとSPAM防止のため単位時間
あたりのメール送信数が制限されることがあるが、
Mailgunは制限がない
OG Mailinglistの仕組み
16
Mailgunとは
● http://www.mailgun.com/
○ 参考 http://blog.katty.in/5558
● 商用メールサーバ
○ 10000 mails/month まで無料
○ Next 500,000 mails は$0.0005/mail
● メリット
○ RESTful APIで送受信するのでSMTP/IMAPのcron不要
○ SPAMとみなされにくい
■ uses SPF and DKIM for proper authentication
○ 送信エラーアドレスをMailgunで管理
● デメリット
○ localhostでテストできない
17
Mailgun設定(Account and Domain)
18
Mailgun設定(DNS)
19
Mailgun設定(Routes)
20
forward('http://sample.com/drupal/og_mailinglist/mailgun_callback_mime')
catch_all()
modules/og_mailinglist_mailgun/readme.txt参照
But generally, you will want to setup a catchall router which forwards
all emails sent to your domain to your Drupal site. To do so, click
"Create route", then set the "Filter Expression" to "catch_all()". Then set "Actions" to
"forward('http://BASE_URL_OF_YOUR_DRUPAL_SITE/og_mailinglist/mailgun_callback_mime')"
ここの設定でML投稿メールを受信する
インストールした主要モジュール
● drush en xxxx --resolve-dependenciesで依存関係含めてインストール
○ module_filter
○ admin_menu
○ admin_views
○ og
○ og_mailinglist
7.x-1.1-alpha2+10-dev (推奨版だとPHPエラー)
○ l10n_update
○ backup_migrate
○ views_bulk_operation
○ advanced_help
○ panels
○ entityreference_prepopulate
○ realname
○ save_draft
○ node_edit_protection
21
PHP関係では以下が必要
● PHPMailer
● apt-get install php-mail-
mimedecode
OR
● yum -y install php-pear-Mail-
mimeDecode
<==大変便利です ○ profile2
○ feeds
○ feeds_profile2
Organic groupsモジュールの環境設定
● admin/config/group画面
○ OG mailinglist以外はデフォルト設定で
OK?
● アカウント
○ GroupMembershipフィールドの設定
● 右のモジュールのみONにしている
22
GroupMembershipフィールド
23
チェックボックスの方がデフォルト設定しやすい
OG Mailinglistのセットアップ(1)
24
● 本文の最大サイズ(デフォルト: 100K)
● 1時間あたりの最大投稿数 (デフォルト
20件)
● スレッド化にIn-Reply-Toヘッダを用いる
● 投稿者自身にもメールを送信
などを設定する
OG Mailinglistのセットアップ(2)
25
● デフォルトのコンテントタイプとテキスト
形式
● 添付ファイルのフィールド名
● Mailgunの情報
● メールサーバのドメイン名
などを設定する
Email投稿に関するテキストフォーマットフィルター設定
26
返信メールの引用部分の
先頭に
>
がある場合はその行を削
除して投稿する
デフォルトのOG関係のViews
27
Group専用Panel
28
記事投稿用リン
クの環境設定
実際のパネル
29
最後の仕上げ
30
● Real Nameモジュール
○ ユーザのidではなく「氏名」を表示するため
○ 多分同窓会掲示板特有の要件であろう
● Theme
○ MAYOが色々カスタマイズできて便利
● 日付表示カスタマイズ
○ 「Y/n/j(D) - H:i」書式を全面的に使用
● Save Draftモジュール
○ WordPressでは標準の下書保存機能
● Node Edit Protection
○ 投稿の保存ミスを防ぐ
注意事項・課題
● MAYOのテーマを使うとコメントの日付が正しく表示されずに
@datetimeのまま
● メール投稿された記事をWebのHTMLエディタで編集しようとす
ると改行コードがなくなってしまう
○ CKEditorとテキストフォーマットフィルタリングの関連?
○ HTML記事を書きたい人は最初からWebで
● 画像・添付ファイル付きのメール投稿はメーラーに依存してでき
たりできなかったり。Gmailとの相性は良いが。
=>いっそのこと添付付きはエラーとする?
31
最終目標へ向けて
● ユーザーのフィールドに現在スプレッドシートで管理
しているもろもろの項目を追加する
○ これでユーザー自身がメールアドレスに加えて自分の住所や
電話番号の変更ができる
○ 一覧表のビューを作成し常に最新の名簿を提供する
○ 一応名簿ビューはできたが他のユーザの項目参照がができた
りできなかったり???
● 現在のWordPress掲示板のコンテンツを移行する
○ https://www.drupal.org/project/wordpress_migrate
で可能な限り以降
○ 最悪はコピペでも良いが・・・・
32
My Troubles (勉強になりました)
33
● Mailgunでのメール受信
○ modules/og_mailinglist_mailgun/readme.txtを見つけ
るのに手間取った
● CKEditor
○ Librariesを使うとPHPMailerでエラーになった
● Panelの作成は慎重に!
○ ViewとView Panesを間違った
● 短縮URLを知らなかった
○ Mailgunと繋がらなかった
参考資料・教材(未完も含む)
● Udemy(https://www.udemy.com/courses/)
○ DRUPAL 7 – Beginners to Advanced
https://www.udemy.com/drupal-7/
● Packt Publishing(https://www.packtpub.com/)
○ Drupal 7 Module Development [Video]
● OSTraining(https://www.ostraining.com/)
○ Drupal Videos
https://www.ostraining.com/courses/categories/drupal/
この中”Organic Groups Version 2”が参考になった
34
END
35

More Related Content

Viewers also liked

Post by email for pulse cms
Post by email for pulse cmsPost by email for pulse cms
Post by email for pulse cmsKuniyoshi Tone
 
Economic performance management approach, itc ltd sustainability report 2006
Economic performance  management approach, itc ltd   sustainability report 2006Economic performance  management approach, itc ltd   sustainability report 2006
Economic performance management approach, itc ltd sustainability report 2006varsha nihanth lade
 
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会masayoshi shiraishi
 
Meteor kitchen で楽々ウェブアプリ開発
Meteor kitchen で楽々ウェブアプリ開発Meteor kitchen で楽々ウェブアプリ開発
Meteor kitchen で楽々ウェブアプリ開発Junji Yamada
 
Drupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & DockerDrupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & Docker惠 紀野
 
オフライン行動を支えるメール配送管理 at サイタ
オフライン行動を支えるメール配送管理 at サイタオフライン行動を支えるメール配送管理 at サイタ
オフライン行動を支えるメール配送管理 at サイタYosuke TOMITA
 
2016年を振り返る
2016年を振り返る2016年を振り返る
2016年を振り返るKuniyoshi Tone
 
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App PlatformWhat's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform惠 紀野
 
Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020CEW Georgetown
 
African Americans: College Majors and Earnings
African Americans: College Majors and Earnings African Americans: College Majors and Earnings
African Americans: College Majors and Earnings CEW Georgetown
 
The Online College Labor Market
The Online College Labor MarketThe Online College Labor Market
The Online College Labor MarketCEW Georgetown
 
Game Based Learning for Language Learners
Game Based Learning for Language LearnersGame Based Learning for Language Learners
Game Based Learning for Language LearnersShelly Sanchez Terrell
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakShelly Sanchez Terrell
 
What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?Skillsoft
 
SXSW 2016: The Need To Knows
SXSW 2016: The Need To KnowsSXSW 2016: The Need To Knows
SXSW 2016: The Need To KnowsOgilvy Consulting
 
Digitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and IdentityDigitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and IdentityPaul Brown
 
GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom Brian Housand
 
Connecting With the Disconnected
Connecting With the DisconnectedConnecting With the Disconnected
Connecting With the DisconnectedChris Wejr
 
Responding to Academically Distressed Students
Responding to Academically Distressed StudentsResponding to Academically Distressed Students
Responding to Academically Distressed StudentsMr. Ronald Quileste, PhD
 

Viewers also liked (20)

Drupal補完計画
Drupal補完計画Drupal補完計画
Drupal補完計画
 
Post by email for pulse cms
Post by email for pulse cmsPost by email for pulse cms
Post by email for pulse cms
 
Economic performance management approach, itc ltd sustainability report 2006
Economic performance  management approach, itc ltd   sustainability report 2006Economic performance  management approach, itc ltd   sustainability report 2006
Economic performance management approach, itc ltd sustainability report 2006
 
第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会第二回 クラウドサーバー管理者若葉の会
第二回 クラウドサーバー管理者若葉の会
 
Meteor kitchen で楽々ウェブアプリ開発
Meteor kitchen で楽々ウェブアプリ開発Meteor kitchen で楽々ウェブアプリ開発
Meteor kitchen で楽々ウェブアプリ開発
 
Drupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & DockerDrupal8を体験しよう Drupal8 & Docker
Drupal8を体験しよう Drupal8 & Docker
 
オフライン行動を支えるメール配送管理 at サイタ
オフライン行動を支えるメール配送管理 at サイタオフライン行動を支えるメール配送管理 at サイタ
オフライン行動を支えるメール配送管理 at サイタ
 
2016年を振り返る
2016年を振り返る2016年を振り返る
2016年を振り返る
 
What's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App PlatformWhat's Drupal & Drupal as a Employee App Platform
What's Drupal & Drupal as a Employee App Platform
 
Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020Recovery: Job Growth and Education Requirements Through 2020
Recovery: Job Growth and Education Requirements Through 2020
 
African Americans: College Majors and Earnings
African Americans: College Majors and Earnings African Americans: College Majors and Earnings
African Americans: College Majors and Earnings
 
The Online College Labor Market
The Online College Labor MarketThe Online College Labor Market
The Online College Labor Market
 
Game Based Learning for Language Learners
Game Based Learning for Language LearnersGame Based Learning for Language Learners
Game Based Learning for Language Learners
 
Teaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & TextspeakTeaching Students with Emojis, Emoticons, & Textspeak
Teaching Students with Emojis, Emoticons, & Textspeak
 
What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?What's Trending in Talent and Learning for 2016?
What's Trending in Talent and Learning for 2016?
 
SXSW 2016: The Need To Knows
SXSW 2016: The Need To KnowsSXSW 2016: The Need To Knows
SXSW 2016: The Need To Knows
 
Digitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and IdentityDigitized Student Development, Social Media, and Identity
Digitized Student Development, Social Media, and Identity
 
GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom GAME ON! Integrating Games and Simulations in the Classroom
GAME ON! Integrating Games and Simulations in the Classroom
 
Connecting With the Disconnected
Connecting With the DisconnectedConnecting With the Disconnected
Connecting With the Disconnected
 
Responding to Academically Distressed Students
Responding to Academically Distressed StudentsResponding to Academically Distressed Students
Responding to Academically Distressed Students
 

Similar to 死闘!Og mailinglist

XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用Shinya Okano
 
Opa - Cloud Language
Opa - Cloud LanguageOpa - Cloud Language
Opa - Cloud LanguageTozo Tanaka
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1近藤 繁延
 
Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Kazuto Kusama
 
griffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jgguggriffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jggugkimukou_26 Kimukou
 
Talking with drupal - psyshでの対話型デバッグ
Talking with drupal - psyshでの対話型デバッグTalking with drupal - psyshでの対話型デバッグ
Talking with drupal - psyshでの対話型デバッグTomotsugu Kaneko
 
Windows で拡張モジュールをビルドしてみた
Windows で拡張モジュールをビルドしてみたWindows で拡張モジュールをビルドしてみた
Windows で拡張モジュールをビルドしてみたy-uti
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境yut148atgmaildotcom
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo LinuxについてTakuto Matsuu
 
日本語ではじめるDrupal Console in Sapporo
日本語ではじめるDrupal Console in Sapporo日本語ではじめるDrupal Console in Sapporo
日本語ではじめるDrupal Console in SapporoYoshikazu Aoyama
 
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップYasuhito Yabe
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントMasaki NIWA
 
Osc10do linux nextstep
Osc10do linux nextstepOsc10do linux nextstep
Osc10do linux nextstepsmokey monkey
 
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順Hide Koba
 
coma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworkscoma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworksAtsushi Tadokoro
 
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?Developers Summit
 
ログ解析基盤におけるストリーム処理パイプラインについて
ログ解析基盤におけるストリーム処理パイプラインについてログ解析基盤におけるストリーム処理パイプラインについて
ログ解析基盤におけるストリーム処理パイプラインについてcyberagent
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築Hideharu MATSUFUJI
 
クラウドコラボレーションサーバ「Collabora Online」を構築してみた
クラウドコラボレーションサーバ「Collabora Online」を構築してみたクラウドコラボレーションサーバ「Collabora Online」を構築してみた
クラウドコラボレーションサーバ「Collabora Online」を構築してみたShinji Enoki
 

Similar to 死闘!Og mailinglist (20)

XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用XenServerによるお手軽開発サーバ運用
XenServerによるお手軽開発サーバ運用
 
Opa - Cloud Language
Opa - Cloud LanguageOpa - Cloud Language
Opa - Cloud Language
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
 
Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践Cloudn PaaSチームのChatOps実践
Cloudn PaaSチームのChatOps実践
 
griffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jgguggriffon plugin を 実際に作ってみよう #jggug
griffon plugin を 実際に作ってみよう #jggug
 
Talking with drupal - psyshでの対話型デバッグ
Talking with drupal - psyshでの対話型デバッグTalking with drupal - psyshでの対話型デバッグ
Talking with drupal - psyshでの対話型デバッグ
 
Windows で拡張モジュールをビルドしてみた
Windows で拡張モジュールをビルドしてみたWindows で拡張モジュールをビルドしてみた
Windows で拡張モジュールをビルドしてみた
 
配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境配布用Beginnerならきっと役立つmaster slave環境
配布用Beginnerならきっと役立つmaster slave環境
 
今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて今最もアツイdistribution Gentoo Linuxについて
今最もアツイdistribution Gentoo Linuxについて
 
日本語ではじめるDrupal Console in Sapporo
日本語ではじめるDrupal Console in Sapporo日本語ではじめるDrupal Console in Sapporo
日本語ではじめるDrupal Console in Sapporo
 
「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ「html5 boilerplate」から考える、これからのマークアップ
「html5 boilerplate」から考える、これからのマークアップ
 
ユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイントユーザ・デザイナーから見たPlone CMSのアピールポイント
ユーザ・デザイナーから見たPlone CMSのアピールポイント
 
Osc10do linux nextstep
Osc10do linux nextstepOsc10do linux nextstep
Osc10do linux nextstep
 
もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順もろもろの AI ツールを Windows のローカル環境にインストールする手順
もろもろの AI ツールを Windows のローカル環境にインストールする手順
 
coma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworkscoma - creator’s talk session: Code - openFrameworks
coma - creator’s talk session: Code - openFrameworks
 
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
デブサミ2013【15-E-2】Ruby開発者のみなさん、mrubyで楽しく快適な組み込みアプリ開発を始めませんか?
 
CentOS7にD8を入れてみた
CentOS7にD8を入れてみたCentOS7にD8を入れてみた
CentOS7にD8を入れてみた
 
ログ解析基盤におけるストリーム処理パイプラインについて
ログ解析基盤におけるストリーム処理パイプラインについてログ解析基盤におけるストリーム処理パイプラインについて
ログ解析基盤におけるストリーム処理パイプラインについて
 
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
まっつんチャレンジ OSC出張編 45分でわかる PHP+Eclipseによるテスト駆動開発環境の構築
 
クラウドコラボレーションサーバ「Collabora Online」を構築してみた
クラウドコラボレーションサーバ「Collabora Online」を構築してみたクラウドコラボレーションサーバ「Collabora Online」を構築してみた
クラウドコラボレーションサーバ「Collabora Online」を構築してみた
 

死闘!Og mailinglist