Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Evernoteを作る
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ninjinkun
September 30, 2012
Technology
1
2k
Evernoteを作る
YAPC Asia 2012 LTThon
ninjinkun
September 30, 2012
Tweet
Share
More Decks by ninjinkun
See All by ninjinkun
買収から2ヶ月でシステム統合した話
ninjinkun
0
130
Designer's and Engineer's Thinking Styles
ninjinkun
0
270
Launchable Webinar テストを効率化して生産性を上げる方法
ninjinkun
2
580
ディープリンクの 設計と実装 - iOSDC2017
ninjinkun
18
10k
スマートフォンアプリ開発における共創的な開発チーム
ninjinkun
61
19k
ReSwiftでアプリの状態管理 / Reactive Swift Meetup
ninjinkun
9
17k
フリルのアプリ開発今昔物語
ninjinkun
3
2.2k
プロトタイピング合宿によるデザインリニューアル
ninjinkun
1
3.1k
デザイナーが仕事をしやすいアプリエンジニアを考える
ninjinkun
4
710
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
1
140
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
920
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
2.7k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
570
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
220
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
220
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
AI駆動開発を事業のコアに置く
tasukuonizawa
1
170
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
350
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Designing for humans not robots
tammielis
254
26k
Site-Speed That Sticks
csswizardry
13
1.1k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
94
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
Testing 201, or: Great Expectations
jmmastey
46
8k
The Curious Case for Waylosing
cassininazir
0
230
The Language of Interfaces
destraynor
162
26k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Transcript
EvernoteΛ࡞Δ ninjinkun
ninjinkun • ͯͳ εϚʔτϑΥϯΤΩεύʔτ • Objecitve-C, Java • Perl࠷ۙͪΐͬͱ…
σʔλΛಉظ͍ͨ͠ • ੈϚϧνσόΠε࣌ • σόΠε͕ϩʔΧϧDBΛ࣋ͭ • σόΠεؒͰDBΛಉظ͍ͨ͠ • ϒϩάͷԼॻ͖ͱ͔ಉظ͍ͨ͠
iCloudͷ͜Ε͡Όͳ͍ײ σʔλΛಉظ͍ͨ͠ • αʔόʔAppleͷఏڙͷΈ • Ϋϥυғ͍ࠐΈઓུ • Զͨͪͷཉ͍͠ͷ͜Ε͡Όͳ͍Μͩʂʂ
EvernoteΈ͍ͨͳͷ࡞Γ͍ͨ σʔλΛಉظ͍ͨ͠ • ͳΜ͔େมͦ͏ͩͳ… • υΩϡϝϯτ͋ͬͨ • Evernote Synchronization via
EDAM Evernote Synchronization via EDAM v1.0.5 March 7, 2011
EDAM • Evernote Data Access and Management • σʔλͷ࣋ͪํͱಉظͷ༷ •
ͻͱͭͷதԝαʔϏεɺෳͷΫϥΠΞϯτ
EDAM • ϞόΠϧΫϥΠΞϯτͷࣄΛߟྀ • 3GճઢͳͲɺϋʔυͳڥఆ • ࣌ܭ͕৴༻Ͱ͖ͳ͍ • λΠϜελϯϓʹཔΒͳ͍
ϦϑΝϨϯε࣮తͳͷΛ࡞ͬͯΈ·ͨ͠ σϞ • Amon2::Liteͬͯ·͢! • https://github.com/ninjinkun/EDAMSync • αʔό • ΫϥΠΞϯτ
• iPhoneΞϓϦΫϥΠΞϯτ • ΤϯτϦͷআʹະରԠ
αʔόʔ EDAM • Update Sequence Number (USN) • ΤϯτϦʔ͝ͱʹ࣋ͭ •
ߋ৽͞ΕΔͱάϩʔόϧʹΠϯΫϦϝϯτ • create($entryA) # $entryA->usn => 250 • edit($entryA) # $entryA->usn => 251 • edit($entryB) # $entryB->usn => 252 • GUID • ΤϯτϦʔΛࣝผ͢ΔID
ΫϥΠΞϯτ EDAM • dirtyϑϥά • ΤϯτϦʔ͝ͱʹ࣋ͭ • Update Sequence Number
(USN) • ΤϯτϦʔ͝ͱʹ࣋ͭ • ΫϥΠΞϯτͰߋ৽͠ͳ͍ • GUID • ΤϯτϦʔΛࣝผ͢ΔID
͓ΘΓʹ • EDAMΛֶEvernote࡞ΕΔ • ΫϥΠΞϯταΠυͷίʔυ͕݁ߏଟ͍ • ͰAlter Table͍ͩͳ… • ࣌ܭ͕৴༻Ͱ͖ΔͳΒλΠϜελϯϕʔεͰͰ͖
Δ͔