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
Liveterm
Search
KOBA789
April 07, 2012
Programming
2
590
Liveterm
LT slide about liveterm sharing the terminal with the speaker note.
KOBA789
April 07, 2012
Tweet
Share
More Decks by KOBA789
See All by KOBA789
時の流れが許せない
koba789
0
47
ついに生産が終わったけどZ80でまだまだ遊びたい
koba789
5
4.2k
ISUCONの練習を楽しくたくさんやる方法
koba789
2
1.3k
Z80をRustで動かすまで年が越せない
koba789
0
190
ISUCON練習環境を最も簡単に用意する方法
koba789
2
3.2k
音をアレする
koba789
0
900
メガネとBluetooth Low Energyでお喋りする
koba789
0
1.6k
Rustでon-diskなB+Treeを作ったときの細かな話
koba789
11
1.8k
音の出るCPUを作っている途中
koba789
5
4.7k
Other Decks in Programming
See All in Programming
A2A プロトコルを試してみる
azukiazusa1
2
1.2k
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
150
エラーって何種類あるの?
kajitack
5
320
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
330
Cline指示通りに動かない? AI小説エージェントで学ぶ指示書の書き方と自動アップデートの仕組み
kamomeashizawa
1
590
DroidKnights 2025 - 다양한 스크롤 뷰에서의 영상 재생
gaeun5744
3
330
High-Level Programming Languages in AI Era -Human Thought and Mind-
hayat01sh1da
PRO
0
620
C++20 射影変換
faithandbrave
0
550
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
150
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
510
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
530
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
330
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
A better future with KSS
kneath
239
17k
For a Future-Friendly Web
brad_frost
179
9.8k
Writing Fast Ruby
sferik
628
62k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
680
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
How STYLIGHT went responsive
nonsquared
100
5.6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
940
Transcript
Liveterm KOBA789 1 124݄7༵ *%,0#"Ͱ͢ΑΖ͓͘͠ئ͍͠·͢ɻ
about me koba789.com 2 124݄7༵ Ұ෦Ͱා͍ͱ͔νϟϥ͍ͱ͔ݴΘΕͯ·͕͢ɺ࣮ࡍී௨ͷߴߍੜͰ͢͠ɺࣗݾհཁΒͳ͍ͱ ࢥ͍·͕͢ɺඞཁͰ͋ΕLPCBDPNΛݟ͍ͯͩ͘͞ɻ
black frame 3 124݄7༵ ͯ͞ɺຊͰ͢ɻΈͳ͞ΜίʔσΟϯά͖Ͱ͔͢ɻࢲେ͖Ͱ͢ɻ࠷ۙɺؒҎ্ίʔυΛ ॻ͍͍ͯͳ͍ͱېஅঢ়͕ग़ΔΑ͏ʹͳΓ·ͨ͠ɻͦΜͳίʔσΟϯάͻͱΓͰͭ·Βͳ͍͜ͱ ଟ͍ͷͰɺͦΜͳͱ͖ʹΩϟϓνϟΛىಈ͓ͯ͠ΉΖʹੜ์ૹΛ࢝ΊͪΌͬͨΓ͢Δਓଟ͍ ͱࢥ͍·͢ɻϥΠϒίʔσΟϯάָ͍ͬͯ͠ΜͰ͢ΑɻͰɺແବʹωοτϫʔΫͷଳҬ৯͏͠ɺΩϟ ϓνϟॏ͍͠ɺ৴ը໘ͩͱจࣈ௵Εͯݟ͑ͳ͍͠ɺ͍Ζ͍Ζෆຬͳ͜ͱ͋Δͱࢥ͍·͢ɻͦ͜ Ͱɻ
would you like to share your terminal? 4 124݄7༵ λʔϛφϧΛڞ༗Ͱ͖ͨΒૉఢͩͱࢥ͍·ͤΜ͔ɻͯ͞ɺͲΕ͘Β͍ૉఢͳͷ͔Έͳ͞ΜͷͰ͝
֬ೝ͍͖ͨͩ·͠ΐ͏ɻ
pronama14.koba789.com demo 5 124݄7༵ ࠓϞόΠϧͬΆ͍ۭؾͩͬͨΒ͍͠ΜͰ͕͢ɺΨϯແࢹͯ͠·ͨ͠ɻͰ͖ͬ͞0QFSB.PCJMF ͰݟͨΒͳΜ͔ಈ͍ͨͷͰɺؾʹͳΔਓ͓खݩͷͰݟ͍ͯͩ͘͞ɻ
black frame 6 124݄7༵ ͯ͞ɺ͍͔͕ͩͬͨͰ͠ΐ͏͔ɻจࣈ௵ΕͣɺԆͳ͘ɺշదʹϥΠϒίʔσΟϯά͢Δ͜ͱ͕ Ͱ͖·ͨ͠ɻͻͱ௨Γָ͠Μͩͱ͜ΖͰɺ
technical overview 7 124݄7༵ λω໌͔͠ͷ͓࣌ؒͰ͢ɻத৺ͱͳΔٕज़ͱͯ͠࠷ۙͷͪ͜Βɺ
Node.js Socket.io 8 124݄7༵ /PEFKTͱ4PDLFUJPɻ·͊ɺఆ൪Ͱ͢Ͷɻ
architecture 9 124݄7༵ ࣍ʹߏͷํΛݟ͍͖ͯ·͠ΐ͏ɻͪ͜ΒগʑτϦοΩʔͰ͢ɻ
browser server (Node.js) master terminal 4PDLFUJP caster file server 10
124݄7༵ ਤʹද͢ͱ୯७Ͱ͕͢ɺ͜ͷΑ͏ʹͳ͍ͬͯ·͢ɻΩϟελʔ͕ૹ৴ͨ͠γʔέϯείʔυΛαʔόʔ ͕ड͚औΓɺαʔόʔ্ʹ͋ΔϔουϨεͷλʔϛφϧΤϛϡϨʔλɺNBTUFSUFSNJOBMʹॻ͖ࠐΈ· ͢ɻͦͯͦ͠Εͱಉ࣌ʹϒϥβʹରͯͦ͠ͷγʔέϯείʔυΛҰ੪ૹ৴͠·͢ɻNBTUFS UFSNJOBMɺҰݟ͢ΔͱແବͳΑ͏ʹݟ͑·͕͢ɺ࣮͜Ε͕ϛιͰɺ৽نʹࢹௌऀ͕૿͑ͨ࣌ʹॏཁ Ͱ͢ɻ<$>λʔϛφϧͷγʔέϯείʔυͱ͍͏ͷ͍ΘΏΔࠩૹ৴ͳͷͰɺ৽نଓޙਖ਼ৗʹ ը໘ΛදࣔͰ͖·ͤΜɻͦ͜ͰɺNBTUFSUFSNJOBMͷঢ়ଶɺ͢ͳΘͪεφοϓγϣοτΛૹΓ͚ͭ· ͢ɻ<$>͢Δͱɺ࠷৽ͷλʔϛφϧͷঢ়ଶΛ్த͔ΒͰ෮ݩͰ͖Δͱ͍͏Θ͚Ͱ͢ɻ
browser server (Node.js) master terminal 4PDLFUJP caster file server browser
10 124݄7༵ ਤʹද͢ͱ୯७Ͱ͕͢ɺ͜ͷΑ͏ʹͳ͍ͬͯ·͢ɻΩϟελʔ͕ૹ৴ͨ͠γʔέϯείʔυΛαʔόʔ ͕ड͚औΓɺαʔόʔ্ʹ͋ΔϔουϨεͷλʔϛφϧΤϛϡϨʔλɺNBTUFSUFSNJOBMʹॻ͖ࠐΈ· ͢ɻͦͯͦ͠Εͱಉ࣌ʹϒϥβʹରͯͦ͠ͷγʔέϯείʔυΛҰ੪ૹ৴͠·͢ɻNBTUFS UFSNJOBMɺҰݟ͢ΔͱແବͳΑ͏ʹݟ͑·͕͢ɺ࣮͜Ε͕ϛιͰɺ৽نʹࢹௌऀ͕૿͑ͨ࣌ʹॏཁ Ͱ͢ɻ<$>λʔϛφϧͷγʔέϯείʔυͱ͍͏ͷ͍ΘΏΔࠩૹ৴ͳͷͰɺ৽نଓޙਖ਼ৗʹ ը໘ΛදࣔͰ͖·ͤΜɻͦ͜ͰɺNBTUFSUFSNJOBMͷঢ়ଶɺ͢ͳΘͪεφοϓγϣοτΛૹΓ͚ͭ· ͢ɻ<$>͢Δͱɺ࠷৽ͷλʔϛφϧͷঢ়ଶΛ్த͔ΒͰ෮ݩͰ͖Δͱ͍͏Θ͚Ͱ͢ɻ
browser server (Node.js) master terminal 4PDLFUJP caster file server browser
TOBQTIPU 10 124݄7༵ ਤʹද͢ͱ୯७Ͱ͕͢ɺ͜ͷΑ͏ʹͳ͍ͬͯ·͢ɻΩϟελʔ͕ૹ৴ͨ͠γʔέϯείʔυΛαʔόʔ ͕ड͚औΓɺαʔόʔ্ʹ͋ΔϔουϨεͷλʔϛφϧΤϛϡϨʔλɺNBTUFSUFSNJOBMʹॻ͖ࠐΈ· ͢ɻͦͯͦ͠Εͱಉ࣌ʹϒϥβʹରͯͦ͠ͷγʔέϯείʔυΛҰ੪ૹ৴͠·͢ɻNBTUFS UFSNJOBMɺҰݟ͢ΔͱແବͳΑ͏ʹݟ͑·͕͢ɺ࣮͜Ε͕ϛιͰɺ৽نʹࢹௌऀ͕૿͑ͨ࣌ʹॏཁ Ͱ͢ɻ<$>λʔϛφϧͷγʔέϯείʔυͱ͍͏ͷ͍ΘΏΔࠩૹ৴ͳͷͰɺ৽نଓޙਖ਼ৗʹ ը໘ΛදࣔͰ͖·ͤΜɻͦ͜ͰɺNBTUFSUFSNJOBMͷঢ়ଶɺ͢ͳΘͪεφοϓγϣοτΛૹΓ͚ͭ· ͢ɻ<$>͢Δͱɺ࠷৽ͷλʔϛφϧͷঢ়ଶΛ్த͔ΒͰ෮ݩͰ͖Δͱ͍͏Θ͚Ͱ͢ɻ
pty iTerm server UUZ 4PDLFUJP Node.js QUZKT 11 124݄7༵ ࣍ʹΩϟελʔ෦ͷߏͰ͢ɻ͜Εൺֱత୯७ͰɺQUZ͔Βͱ͖ͬͯͨσʔλΛJ5FSNʹॻ͖ग़
ͭͭ͠ɺTFSWFSʹTPDLFUJPͰૹͬͯΔ͚ͩͰ͢ɻͪΖΜɺJ5FSN͔ΒͷΩʔೖྗQUZʹॻ ͖ࠐΈ·͢ɻ
black frame 12 124݄7༵ ͯ͞ɺ͜͜·Ͱฉ͘ͱΈͳ͞ΜͬͯΈͨ͘ͳΔͱࢥ͍·͢ɻ
for public 13 124݄7༵ ͱ͍͏Θ͚Ͱɺ-JWFUFSN৴ܥͷΣϒαʔϏεͱͯ͠ެ։༧ఆͰ͢ɻ
comment voice streaming etc... 14 124݄7༵ Γίϝϯτͱ͔ԻετϦʔϛϯάͱ͔ඞཁͳͷͰɺͦΕΒ࣮༧ఆͰ͢ɻ
coming soon 15 124݄7༵ ԻετϦʔϛϯά·Ͱͯ͠ΔαΠτσβΠϯ͚ͩͳͷͰɺ͏͠Β͓ͪ͘Լ͍͞ɻ
thx 16 124݄7༵ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻͱऴΘΓ͍ͨͷͰ͕͢ɺ࠷ޙʹ͏Ұͭݴ͓͔ͬͯͳ͚ΕͳΒͳ ͍͜ͱ͕͋Γ·͢ɻͦΕɺ
EP/05VTF /PEFKT 17 124݄7༵ ܾͯ͠/PEFKTΛ͍͚ͬͯͳ͍ͱ͍͏͜ͱͰ͢ɻ͜ͷ-5ʹΠϯεύΠΞ͞Ε͍ͯܰϊϦͰ৮Δ ͱී௨ʹࣗͷΛܸͪൈ͖·͢ɻ/PEFKTʹ৮ΔͷμʔΫαΠυʹඈͼࠐΈ͍ͨํ͚͓ͩئ͍͠ ·͢ɻ