SlideShare a Scribd company logo
1 of 59
Download to read offline
基礎勉強会忘年会
PDF開発の基礎
合同会社フィールドワークス
梶田健史
自己紹介
梶田健史(かじたけんじ)
仕事 合同会社フィールドワークス プログラマ兼代表
Blog http://field-notes.hatenablog.jp/
Twitter @field_works

!

合同会社フィールドワークス / Field Works, LLC.
設立 2007年5月
業務内容
PDF関連ソフトウェア製品の企画・開発・販売
ソフトウェア受託開発
URL http://www.field-works.co.jp/
所在地 愛知県春日井市
本日の発表内容
PDF開発ツールの現状
PDF開発の基礎
PDFの概要
PDFファイルの構造
PDFの構成要素
弊社製品のご紹介(PR)
まとめ
PDF開発ツールの現状
PDF開発ツールの選定
システム開発において,まだまだ紙の帳票が必要とされる場面があります。
納品書・請求書
銀行のステートメント
チラシ・DM
⇒タブレット端末・PCを持たないユーザが少数でもいる分野では,
 紙での出力手段も用意せざるを得ない。

!
現在,帳票の出力形式としてはPDFが一般的です。
PDF帳票を作成するには,どんな方法があるのでしょうか?

!
!
(1) 既存アプリケーションの力を借りる
PDF生成機能を持ったアプリケーションを使う
OpenOffice.org
Adobe Illustrator
⇒API・スクリプトにより自動処理を行う。
PDF仮想プリンタドライバを通して印刷を掛ける
オフィスソフト(Word, Excelなど)

⇒スクリプトでコントロールして,差し込み印刷を行う。
組版ソフトの利用
Apache FOP(XSL-FO処理系)
TEX→PDF

連続運用は難しい

・ライセンス契約
・エラー回復性
(2) 帳票開発ツールを使う
非常に種類が多いが,ほとんど商用製品。
Crystal Reports(ビジネスオブジェクツ社)
Super Visual Formade(ウィングアークテクノロジーズ社)
InterstageList Creator(富士通)
ThinReports(株式会社マツケイ;OSS,サポート有償)

!

ノークリサーチ社調査(2008年)
(3) PDFライブラリを利用して自力で実現
描画API

グラフィック・テキストを描画するAPIを提供
Haru,Prawn(Ruby),iText(Java, .Net)
Cairo
PDF編集ライブラリ

PDFファイルを操作するためのローレベルな機能を提供
CamlPDF (Coherent Graphics社,OCaml; 弊社で採用)
PDFMiner (Python)
結局どれを使えばいいんだろう?
定番はどれ? なんでこんなに種類があるの?
⇒ひょっとして玉石混淆状態?
どうやって絞り込めばいいんだろう?

⇒選定基準がわからない。

⇒価格と性能は比例しているんだろうか?
PDF開発の現実
本当は怖いPDF開発
PDF開発の罠
出力するPDFの品質は,ツールによってまちまち

⇒(運が悪いと)互換性の問題に遭遇する危険性

 ex. Macで開いたらレイアウトが崩れた。
ツールによって,PDF仕様の実装レベル(カバー率)も様々

⇒期待していた事ができない!

 ex. 開発終盤になって,PDFにセキュリティを掛けてくれと言われたが

   機能がなかった。
なぜ互換性の問題が発生するのか?
•

•

•

•

PDFは最終的な出力結果がイメージなので,機械的な検証が困難

⇒Adobe製品で問題なければきっと大丈夫だろう。
ところが!
Adobe Readerは間違ったPDFに寛容(ex.初期のWebブラウザ)
そのため
間違ったPDFを生成するツールが世の中に氾濫!
けっきょく
生成したPDFを他のソフトウェアと交換する際に,しばしば問題が発生
非互換性の発生事例
Adobe Readerでは問題ないが,弊社製品で処理するとエラーになる例
相互参照がずれている!
詳しくは後述

ストリームオブジェクトのLengthが合ってない!
endobjがない!
PDF仕様には適合しているはずなのに,Adobe製品ではエラーになる例
Adobe Readerが電子署名を認証してくれない!
写植機に送ったら停止してしまった!

Adobe製品で動くよ
うに直すしかない!
なぜ,ツールによって実装レベルがまちまちなのか?
PDFの仕様が大きく複雑だから。
(1)レガシー仕様の存在
LZWデコードフィルタ
CCITT Group4, JBIG2
PostScript関数

⇒他にもまず使わないような仕様がたくさんあるので,Adobe以外が仕様
を100%カバーするのは,現実的には(主にコスト面で)不可能に近い。
(2)現在のDTP・印刷技術の集大成だから
フォント
文字コード
セキュリティ

⇒複雑な外部仕様を取り込んでいる形なので,仕方のない面も…
PDFの現実と戦うために基礎を学びましょう
既存プロダクトを評価する際の観点がわかります。
実際に問題に遭遇した場合に,自分で原因の特定ができるようになります。
オープンソースであれば,自ら修正することも可能になります。
市販製品であっても,バグの指摘を的確に行うことができます。
PDF開発の基礎
PDFの概要
PDFの歴史
PostScriptの略歴
1985 PostScript Level 1 ̶ 同年,Apple LaserWriter発売
1990 PostScript Level 2 ̶ 日本語,カラー化対応
1996 PostScript Level 3 ̶ PDFとの整合性確保
PostScriptの特徴
ページ記述言語として設計された汎用プログラミング言語
レーザープリンターに搭載され,DTP普及のきっかけとなった
PostScriptの問題点
実行に多大なリソースを消費(1990年代当時)
ページへのランダムアクセスが困難
後に,EPS(Encapsulated PostScript)という規約を追加したが,

根本的な解決はならず。
EPSの例
PDFの略歴
1993 PDF1.0
1994             Acrobat Readerの無償配布を開始
1996 PDF 1.2, Acrobat 3.0 日本語対応
2004 PDF 1.6, Acrobat 7.0 低価格帯PDF作成ソフトの発売
2006 PDF 1.7, Acrobat 8.0
2008 ISO 32000-1      ISO標準化

PDF派生(サブセット)規格
PDF/A 長期保存のための規格
PDF/X 印刷向けの規格

一言で言えば,
レガシー仕様を省いた規格
PDFの特徴
PostScriptから命令数を大幅に削減


JavaScriptとJSONの関係
にちょっと似ている

(プログラミング言語としての特性も失う)
ページへのランダムアクセスを考慮(目次,リンク)
ファイルサイズを小さくできる(データ圧縮)
文書交換のための仕様
文書メタデータの付与(タイトル,作者)
セキュリティの設定(暗号化)
マルチメディア対応
しおり・リンク・コメント・注釈
アクション(JavaScript),対話フォーム
音声,動画,3D PDF
資料
PDFリファレンス第2版
日本語で読める唯一のPDF仕様書
内容はPDF 1.3版の仕様なのでかなり古い。
⇒英語版のPDF Referenceは,Adobeのサ
イトから無料でダウンロードできる。
PDF構造解説
読んでいないので,内容についてはノーコメン
トで。
ツール
PDFtk

PDFの結合・分解などの加工ができるツール 

圧縮されたPDFを解凍する機能があり,解析の際に非常に助かる。
テキストエディタ

バイナリファイルも開けるものが望ましい。

⇒pdftk.vim:自動でPDFtkを実行して見やすくしてくれる。
バイナリ・エディタ

画像ファイル・フォントファイルなどの中身を確認
プログラミング言語

お好みで。

⇒弊社では,OCamlを使用
PDFファイルの構造
ファイル構造
(1) ヘッダ部
コメント行:

1行目は,PDFのバージョンを示す。

2行目は,バイナリデータを含むことを示す。
8種類の基本型オブジェクト:

論理値(true/false),数値,文字列,名前,
配列,辞書,ストリーム,ヌル(null)
間接オブジェクト:

オブジェクトにラベル付けしたもの

書式:「<オブジェクト番号> <生成番号>
obj ∼ endobj」
間接参照:

間接オブジェクトを参照する場面で使用

書式:「<オブジェクト番号> <生成番号> R」
ファイル構造
(2) ファイルトレーラ
相互参照表:

xrefから始まるテーブル
startxrefの次の数値:相互参照表の位置
テーブル要素:

間接オブジェクトの位置を示す。
トレーラ辞書:

キーワードtrailerの後の辞書
Infoエントリ:文書情報辞書を示す。
Rootエントリ:文書カタログを示す。
Sizeエントリ:間接オブジェクトの総数
IDエントリ:ファイル識別子(ハッシュ値)
ファイル構造
(3)ページ辞書
ページツリーは「平衡木」構造を構成する。
平衡木の「葉」の部分にページ辞書がある。
ページ辞書の主な内容:
MediaBox

物理媒体のサイズを示す。
Resources

フォント,画像などのリソースを定義
Contents

ページの内容を描画する命令列
増分更新(1)
通常PDFを変更する時は「増分更新」を行う。
メモリの少ない動作環境への配慮
変更・追加の発生した間接オブジェクトを
「%EOF」移行に追記していく。
CD-Rを追記するイメージ
増分更新(2)
トレーラ辞書のPrevエントリは「前」の相互
参照表の位置を示す。
相互参照表のリンクリストを構成する。
同じオブジェクト番号が出現した場合は「後
ろ」のオブジェクトを使用するルール
「前」「後ろ」は物理的な位置関係とは独立
Web表示用に最適化
PDFのダウンロード中でも先頭ページの表示が
できるようにするための仕様
相互参照表を先頭に配置する。
PDFの構成要素
フォント
PDFは,フォントのサポートが手厚い。
⇒他のフォーマットと差別化できているポイントかも
PDFで使えるフォントの種類
単純フォント
Type 1フォント - 欧文PostScriptフォント
TrueTypeフォント - 欧文TrueTypeフォント
Type 3フォント - PDFグラフィック命令で定義したフォント
コンポジットフォント
Type 0フォント - CJK OpenTypeフォント
フォント = エンコーディング + メトリックス情報 + グリフ(字形)
エンコーディング
エンコーディング = 文字コード→CID(グリフ名)変換テーブル
単純フォント
MacRomanEncoding, MacExpertEncoding,

本来はフォントに内蔵
されているものだが,PDF内
に取り込んでいる形に

WinAnsiEncoding, 内蔵エンコーディングから選択
コンポジットフォント
定義済みCMap:

(マルチバイト系)83pv-RKSJ-H, 90ms-RKSJ-H, EUC-H, H,…

(Unicode系)UniJIS-UCS2-H,UniJIS−UTF16-H,…

(CID直接指定)Identity-H,Identity-V
*-V は縦書きを示す
CIDとは?
CIDフォントが内蔵する字形(グリフ)毎に
振られた一連の番号
アドビ社は,言語毎に文字コレクションを
定義している。
日本語用は,Adobe-Japan1-*
CIDフォント: GID=CID
TrueTypeフォント:GID=独自体系
グリフメトリックス情報
グリフ(字形)の幅(高さ)の情報
本来はフォントが内蔵している情報だが,PDF内部に取り込んでいる。

⇒指定フォントがない場合(代替フォント)にレイアウトが崩れないよう配慮
グリフデータ
•

•

PDFに劣らぬ厳しい現実が待ち受けている。
PostScriptフォント
Adobeが開発したアウトラインフォントの規格(PostScriptで記述)
バイナリ形式 ⇒CFF(Compact Font Format)
CJK向けにCIDフォント形式を開発 ⇒Adobe-Japan1
TrueTypeフォント
Apple, Microsoftが共同開発 ⇒Appleの独自拡張規格(ATT)も
PCのOSに標準装備されて普及
OpenTypeフォント
TrueTypeフォントとCFFフォントを統合した仕様
実態は,TrueTypeの器にCFFを丸ごと放り込んだ感じ
フォントサブセット
PDFにフォントデータを埋め込むこと
ができる。
日本語フォントはサイズが大きいので,
サブセット化が必須
サブセット化するには,フォントデー
タから,必要なグリフデータだけを抽
出して再編集する必要がある。

⇒実装は,かなりめんどくさい!
PDFを構成するその他の要素
グラフィックス

PostScriptのモデルを引き継ぐ

⇒アフィン変換,ベジェ曲線,色(RGB, CMYK, …),シェーディング
イメージ
非可逆形式画像(JPEG, JPEG2000はネイティブ対応)
可逆形式画像(PNG様の形式で画素データを格納)
対話機能
ナビゲーション
注釈,フォーム(JavaScript)
暗号,電子署名
弊社製品のご紹介(PR)
PDFテンプレートエンジン Field Reports
2011年3月より販売しているPDF帳票開発ツール
【用途】中小規模の業務システム・Webサービスでの帳票出力

⇒マルチプラットフォーム/マルチ言語対応(特にLL言語)
【機能】PDFテンプレートにテキストや画像を動的に配置する 

⇒PDFテンプレート:オフィスソフト+Acrobatで作成

⇒動的に配置する値:JSONベースのパラメータ(DSL?)で記述
【仕組】共有ライブラリとして実装

⇒OCamlで開発

⇒PDFに特化することで,シンプルさと高性能を両立
Field Reportsの主な特長
(1) PDFテンプレート+パラメータ→PDF帳票
(2) 強力なグラフィックス表現
(3) 組版処理

!
•

•

•

•

•

•

【開発目標】日本的な帳票をストレスなく開発できるようにしたい。
既存帳票・外部設計資料をテンプレートとして流用可能
規定の枠内にテキストを精密にはめ込む(ex.郵便番号,振込用紙)
見た目の美しさへのこだわり
(1) PDFテンプレート+パラメータ→PDF帳票

手順1:AcrobatでPDFにフィールドを配置
手順2:プログラミング言語でパタメータを生成
手順3:プログラムを実行
PDF生成時にフィールドはテンプレートのコンテンツと統合される。
(2) 強力なグラフィックス表現

PDFの多彩な表現力を活用
透過表現(画像,テキスト)
アフィン変換(回転,拡大/縮小,変換行列)
ブレンドモード
(3)組版処理
日本語の禁則処理・均等割付
毛筆フォントを縦書き表示
多漢字フォントへの対応

サロゲートペア
異体字セレクタ
グリフ名またはGID/CIDによる直接指定
内部構造

LL言語からは拡張ライブラリとして利用できる。
レンダリング機能本体は,関数型プログラミング言語OCamlで実装
言語Bridgeは,言語毎にCで実装(ソースは公開)
Field Reports 2.0の新機能
2013年末リリース予定(α版?)
組版機能を大幅に強化
リッチテキスト対応
縦組テキストの改善
リッチテキスト機能

PDFテンプレートに流し込む値をXML形式で指定する。

利用可能な要素:body, p, span, div, br, ruby, img
スタイル指定(1)

要素のstyle属性として,

フォント・フォントサイズ・色などの書式指定が可能

例:style= font:KozGoMin; font-size:12; color:red
スタイル指定(2)

font-stretch属性により「長体」の指定が可能
ruby要素
img要素
実際の利用例
業務システムでの帳票出力
➜納品書・請求書など
飲食店向けメニュー作成サービス
➜某飲料メーカーが提供する会員制サービス
オンデマンド印刷(web to print)システム
➜Web上でデザインした名刺などのPDFを直接印刷所に送付
デモ
http://labs.field-works.co.jp/atena/

時間があれば…
まとめ
PDFの現実と戦うために,PDFの基礎を学びましょう。
PDFは様々な要素技術の集合体であり,

関心のある技術がいくつかあれば,きっと楽しいはず。
でも,時間を節約したい時は,Field Reportsの採用もご検討ください!
ご清聴ありがとうございました。

More Related Content

Recently uploaded

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 

Recently uploaded (8)

Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 

Featured

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationErica Santiago
 

Featured (20)

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 
Barbie - Brand Strategy Presentation
Barbie - Brand Strategy PresentationBarbie - Brand Strategy Presentation
Barbie - Brand Strategy Presentation
 

PDF開発の基礎