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
アンケートWebアプリを作りました!/Creation of survey web appli...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
saba
April 23, 2024
Programming
250
0
Share
アンケートWebアプリを作りました!/Creation of survey web application
saba
April 23, 2024
More Decks by saba
See All by saba
部の基幹システムを開発しています/Developing the Department's mission-critical systems
sabana
0
75
Other Decks in Programming
See All in Programming
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.1k
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
4.7k
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
240
事業会社でのセキュリティ長期インターンについて
masachikaura
0
230
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
3
700
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
440
感情を設計する
ichimichi
5
1.3k
飯MCP
yusukebe
0
490
Swift Concurrency Type System
inamiy
0
290
Codex CLIのSubagentsによる並列API実装 / Parallel API Implementation with Codex CLI Subagents
takatty
2
860
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
2
260
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
160
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
410
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
How to Ace a Technical Interview
jacobian
281
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
110
Transcript
アンケートWebアプリを 作りました! 〜実装と今後の展望〜 さば
⽬次 ‧⾃⼰紹介 ‧制作の経緯 ‧具体的な実装 ‧苦労したところ/まだ出来ていないこと ‧今後やること
⾃⼰紹介 ‧「さば」と申します! ‧東京電機⼤学 システムデザイン⼯学部 情報システム⼯学科 = 情報学部 4年 ‧23年度 ソフトウェア研究部
部⻑ 23/24年度 Webアプリ班 班⻑ ‧趣味:Webアプリの個⼈開発とセキュリティ
制作の経緯
イベントでカジュアルなアンケートを取りたい ‧例えば学園祭の来場者に「どこから来ましたか?」 ‧試⾷の場で「AとBどちらが好きですか?」 ‧展⽰会で「この製品に欲しい機能はどれですか?」
じゃあ作ろう!
欲しい「カジュアルさ」とは? ‧アンケートを作る側 -簡単にアンケートを作れる ‧アンケートを受ける側 -ササッと回答できる
絶対に欲しい機能 ‧アンケートを作る側 -質問⽂と選択肢を記⼊してアンケートを作る -作ったアンケートをQRコードでシェアする -アンケートの結果を集計してグラフ表⽰(重要) -アカウントは不要(重要) ‧アンケートを受ける側 -QRコードでシェアされたアンケートに回答する
逆に犠牲にする機能 ‧1つのアンケートに⾊々な質問項⽬を載せられる⾃由度 -Googleフォームの様に万能ではない ‧⾃由記述欄 -回答は選択肢のみ
Googleフォーム等と何が違うのか ‧GoogleフォームやMicrosoft Formsとの違い -集計結果は回答者に表⽰されない -仕様としての共有QRコード⽣成機能はない ‧LINEの投票機能‧Discord/Slackの投票Botとの違い -よりオープンで不特定多数の⼈が回答する想定 -集計結果が表⽰できるという意味でやりたいことに近い ‧⼀番の違い -アカウントが要らない!!
具体的な実装
機能をまとめると ‧⼀瞬で作成できて、⼀瞬で共有できて、⼀瞬で結果表⽰できるアンケートWebアプリ ‧作成 -アカウントは不要、メールアドレスだけ -メールアドレス宛に集計結果と共有QRが表⽰されるページリンクが送られる ‧共有 -⾃動的にQRコードが⽣成されて、モニターに表⽰しておけば読み取って回答できる ‧結果表⽰ -回答がリアルタイムに反映される視覚的なグラフ表⽰ -共有QRも⼀緒に表⽰
技術的な実現⽅法 ‧バックエンド(+フロントエンド) -Django(PythonのWebアプリフレームワーク) ‧メールサーバー -Postfix ‧Webサーバ -Nginx ‧WSGI -Gunicorn ‧デプロイする場所
-VPS
全体的なフロー フロントエンド バックエンド HTML CSS JavaScript ユーザー
まずはご覧ください
live-poll.net(プロトタイプです!)
live-poll.net(プロトタイプです!)
live-poll.net(プロトタイプです!)
live-poll.net(プロトタイプです!)
live-poll.net(プロトタイプです!)
live-poll.net(プロトタイプです!)
苦労したこと まだ出来ていないこと
苦労したこと ‧デプロイ部分で⼤苦戦(1週間以上費やす) -当初WSGIとしてDjango公式が推奨しているuWSGI(導⼊経験あり) を使おうとしたが、なんでか分からないけど動かなかった=知識不⾜ -なのでGunicornに鞍替え -正しい設定をしたはずなのにNginxが起動に失敗 -なんとOS再起動で復活 ‧ドキュメントには載っていないおま環トラブルが多発
まだできていないこと ‧凝ったUIにしたい ‧レスポンシブ(スマホ)対応していない ‧Webアプリに必要な利⽤規約やプライバシーポリシー‧問い合わせフォームなどなどがない ‧論理設計をブラッシュアップする -どこまでをアンケート作成者だけが⾒られるようにするか、などなど ‧アンケートのグラフ軸に⼩数点が付いている ‧アンケート結果の反映を⾮同期処理にしたい ‧本当にセキュリティが⼤丈夫なのかの検証(セルフペネトレーションテスト) ‧他多数‧‧‧
今後やること
まずはUI ‧良さげなUIだけでも先に完成してたら開発のテンションが上がりません? ‧ということで、Reactでフロントエンドの制作中です ‧今まで⾏き当たりばったりでUIを作っていたが、今回初めてFigmaでデザイン を作ってからコーディングすることを学ぶ -デザイン通りにコードを書いていくので、⽣産性が段違い!
Figma
React
ということで鋭意制作中です!
ご清聴ありがとうございました さば @pin__saba__ Webサイト https://sbskn.com