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
Lambdaで勤怠連絡
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
k-kurikuri
April 17, 2018
Technology
1.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Lambdaで勤怠連絡
Go(Un)Conference
k-kurikuri
April 17, 2018
More Decks by k-kurikuri
See All by k-kurikuri
Awesome goにあるOSSをGithubStar数高い順に出力するツールを作った
k_kurikuri
0
750
Laravel Sparkでサービス開発に注力する
k_kurikuri
0
1.3k
GKEとGaurunで作るPush通知サーバ
k_kurikuri
3
520
Starting Laravel Spark
k_kurikuri
0
480
[Laravel5.6]CHANGELOGを斜め読み
k_kurikuri
0
5.3k
GoビギナーがGCPでGoアプリをリリースした話
k_kurikuri
1
960
英語で質問した話を 聞いて欲しい
k_kurikuri
0
280
Laravel5.5 - Package Auto Discoveryを理解する
k_kurikuri
0
1.2k
Laravelで乙女ゲームを開発した話
k_kurikuri
2
650
Other Decks in Technology
See All in Technology
スクラムで身についていた動き方を、XPで捉え直してみた
codmoninc
PRO
1
310
GoにおけるFFIのこれまでとこれから
goccy
3
910
Code4Lib JAPANカンファレンス2026 開会挨拶 / Code4Lib JAPAN Conference 2026: Opening Remarks
ykiyota
0
200
Claude Code本って、 読む必要あるの?
oikon48
1
100
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
0
740
AI時代に、プロダクトの数だけ積み上がる所有コストをどうエンジニアリングするか / Engineering the Cost of Ownership
kzkmaeda
1
1.1k
AI-DLCって実際どう? 〜聞きたいこと全部聞いてみる〜
news_it_enj
0
240
Microsoft 365 Copilot chat -tekoälypalvelun tietosuojaongelmat
hponka
0
550
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
150
深夜のクラウド懺悔室 1:29:300 or 1:0:0
kazzpapa3
0
190
10分で知る最近のOmarchy
komagata
0
120
[DroidKaigi 2026] Making UI specifications visible: Android UI development in the AI agent era supported by Compose Screenshot Testing and galleries
syarihu
0
610
Featured
See All Featured
Un-Boring Meetings
codingconduct
0
410
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
Darren the Foodie - Storyboard
khoart
PRO
3
3.9k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
410
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Curious Case for Waylosing
cassininazir
1
500
Transcript
AlexaͱLambdaͰ ۈଵ࿈བྷΛ͔ͨͬͨ͠… Go(Un)ConferenceLTେձ@k-kurikuri
ΞδΣϯμ • AlexaͱAWS Lambda(Go)Ͱۈଵ࿈བྷ͍ͨ͠ • Ͱ͍᪴ͨͷͰஅ೦ͨ͠ • ͰସҊͰ։ൃͨ͠ͷͰৼΓฦΓ • σϞ
• TODOͳͲɺ·ͱΊ
։ൃʹࢸΔ͖͔͚ͬ • Amaozon EchoΛߪೖͨ͠ • Alexa Skill։ൃΩοτ͕͋ΓɺΧελϜεΩϧ ΛAWS LambdaͰ࣮Ͱ͖Δ •
2018/01ʹެࣜαϙʔτ͞ΕͨGoΛ͍͍ͨ
AWS Lambdaͱ? • ͍ΘΏΔαʔόʔϨεΞʔΩςΫνϟ • EC2ͷΑ͏ʹৗ࣌αʔόΛՔಇ͢ΔͷͰͳ ͘ɺΠϕϯτۦಈͰඞཁͳ࣌ʹॲཧΛߦ͏ • ඞཁͳ࣌ʹػೳΛ༻͢ΔͨΊඅ༻͕҆͘͢Ή •
Python, Java, Node.js, C#, GoͰ࣮Ͱ͖Δ
͔ͤͬ͘࡞ΔͳΒ ࣗͷʹཱͭͷΛ
ۈଵϝʔϧΛૹΔͷ͕ ࠷ߴʹμϧ͍
ஂͷத͔Βۈଵ࿈བྷ͍ͨ͠ • ʮΞϨΫαɻମௐෆྑͰࠁ(or ܽۈ)͢Δɻग़ࣾ 12:00ͷ༧ఆʯ • ͬͦ͘͞Amazon Developer͔ΒLambdaͱAlexaΛɹ ࿈ܞͤͯ͞ΈΔ •
Alexa͕εΩϧͷԻೝࣝͯ͘͠Εͳͯ͘υϋϚϦ • ͦͦงғؾ։ൃ͕ྑ͘ͳ͍
ͬ͞͞ͱAlexaஅ೦ʂ
ํస • ͱʹ͔͘LambdaͰGo͍͍ͨΜ • APIGateway + LambdaͰGmailૹ৴͠Α͏ • ػೳͷ࣮͓͚ͯ͠ΠϕϯττϦΨʔɹ ޙͰ࿈ܞͰ͖Δ
ཧ
ݱ࣮
։ൃπʔϧ • serverless (npm) • goenv • aws-lambda-go • oauth2/google,
api/gmail/v1 • IntelliJ + FileWatcher + go fmt
serverless (sls) module • CLIͰLambdaͷ։ൃ͕ग़དྷΔnpmϞδϡʔϧ • sls create, sls deployͰςϯϓϨʔτϓϩδΣΫτ
࡞͔ΒσϓϩΠ·Ͱ • σϓϩΠͷϑϩʔCloudFormation, S3, Lambda • Node.js, Python, JavaϩʔΧϧ։ൃՄೳ
Goͷ࣮Ͱ٧·ͬͨՕॴ • Golang͔ΒGmailΛૹ৴͢Δ࣌ʹɺSubjectͷຊޠ͕จࣈ Խ͚͢Δ • DotenvͰ༻͢ΔϑΝΠϧϏϧυʹؚ·Εͳ͍? • depͰ “golang.org/x/oauth2/google”Λensureͯ͠ࢀর Ͱ͖ͳ͍
• Go1.9vͰϏϧυͨ͠ޙʹɺbrew upgrade goͰ1.10ʹ্͛ ͨΒϏϧυ͕௨Βͳ͘ͳͬͨ
σϞ
TODO • ग़ࣾ࣌ؒͱࠁཧ༝͕ܾΊଧͪͳͷͰɺΦϓγϣϯ ͰࢦఆͰ͖ΔΑ͏ʹ͢Δ • GoͰ٧·ͬͨՕॴ1ͭͣͭղফ • ஂ͔Βۈଵ࿈བྷ͢ΔͨΊɺAlexaͷεΩϧ։ൃΛ ଓ͚͍ͨ •
։ൃίετ8hҐ (֓ࢉ)
github.com/k-kurikuri/lambda-send-mail
͝੩ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠