卒論に迷えるB4生へ 卒論執筆 指南書を授けたい
明けましておめでとうございます🎍 M1のらんです。さて、今年も卒論修論の季節がやってきました。
年明け前のイベントになりますが、12月初旬にサイバーセキュリティ研究室のB4生を対象とした「卒論執筆講座」を開講しました。
開講した経緯としては、サイバーセキュリティ研究室では これまで、特に推奨される論文執筆環境というものはなく、各学生が自由に環境を選んで執筆していました。使いたい環境がある人にとっては問題ありませんが、はじめて論文を執筆するB4生にとって、そもそもどんな手順で、何に気を付けて卒論を書いていけば良いかわからないという悩みにも繋がっていました。そんな課題感から、よりスムーズに卒論を執筆し始められるように卒論執筆指南書を作成し、共有することにしました。
講座の内容としては、👇 を共有しました。本記事では 「1. 卒論執筆 指南書」 について紹介します。
- 卒論執筆 指南書(本記事で紹介)
- 卒論のためのGitHub運用ワークショップ(卒業論文のためのGitHub運用法 にて公開)
⚠️ なお、本 卒論執筆 指南書はサイバーセキュリティ研究室のB4向けに作成したものであり、 研究室の文化によってベストプラクティスは異なることに留意してご覧ください。
講座で共有した”卒論執筆 指南書”
本指南書では,卒論執筆の流れや心得を紹介します.執筆開始前に適宜ご参照ください.
まず,執筆は以下の流れで行います.
- LaTeX 環境の選定
- バックアップ環境の用意
- 執筆
ℹ️ NOTE
ここでの紹介はあくまで推奨であり,強制するものではありません.
使いたい環境がある場合はそっちを使ってもらって大丈夫です.
LaTeX 環境を選ぼう
各々使いたい環境があると思うので研究室としての推奨は設けていませんが,参考までに以下のような選択肢が考えられます.
- LaTeX コンパイル環境:TeX Live,Cloud LaTeX,Overleaf,CyTeXなど
- 編集環境:クラウドコンパイル環境の Web UI,VSCode LaTeX Workshop,Cloud LaTeX for VSCode,LaTeX 専用の統合環境 など
ℹ️ NOTE
クラウドコンパイル環境を採用する場合は,無料枠では Git 管理ができないなどの制限があるので確認すること.
災いに備えよ
絶対に卒研のデータのバックアップを取っておきましょう.
なぜか卒論時期に限ってマシンの故障が頻発します.
提出間近になって PC が壊れてしまい,提出できなくなるという悲惨な事故は起こり得ます.
そうならないように,ローカル環境だけでなく OneDrive や Google Drive,GitHub などのクラウドサービスにバックアップ体制を構築しておきましょう.
これらのバックアップ環境の中でも,弊研では以下の環境を推奨します.
- 「cysec-lab」の GitHub Organization に紐づいたプライベートリポジトリ
(講座では、ここで「卒論のためのGitHubリポジトリ運用」について紹介しました。)
Git の使い方
最低限覚えたい概念
- Git とは何か
- git init: ワークスペースを作成する操作
- git add: 記録する変更を選ぶ操作
- git commit: 変更を記録する操作
- git push: 記録した変更をリモートリポジトリに共有する操作
Git入門資料
困った時は,ChatGPT に「Git で〜したい時はどうすれば良い?」って聞いてみるのもいいかも.
Git の心得
- こまめに push すべし:少なくとも一日の作業終わりには必ず git push.いやいや、一息ついたら git push
- PDF も Git 管理すべし:LaTeX コンパイルが通らなくなるなど,前バージョンの PDF を参照したいときは多い.あと,レビュー時に GitHub から閲覧できるも便利.
- commit 戦略こだわるべからず:実開発であれば commit するタイミングや commit message をこだわるところだが,卒論執筆ではその必要はない.一息ついたタイミングで commit/push しよう.それより論文の完成度を高めることを優先しよう.ちなみに,GitHub Copilot に commit message を生成してもらうこともできるので気になる人はぜひ.
いざ,執筆
まずはこれを読むべし
卒論執筆における心得や文章表現等は以下をぜひ参考にしてください.
速く楽に書くコツは,「広く浅く書いて積み上げる」ことと「人に見せる」ことである.
通常の論文では省くようなこと(社会背景や超基礎的なことなど)も書くことが推奨される
提案手法には一般的なことを書く
実装には実際にどの様にそれを実現したかを書く
先輩たちの資料を見たいときはここにあります.(※サイバーセキュリティ研究室学生のみ閲覧権限があります)
チェック項目
Tips
文章校正ツール
- CyLint: textlint を使って、日本語論文形式の LaTeX フォーマットなのかチェックできる Web サイト(provided by xryuseix)
- textlint: 特定のフォーマットに従った文章なのかチェックしてくれるツール.日本語論文形式の LaTeX フォーマットなのかチェックすることも可能
- Word:意外と文章構成ツールとして優秀.Word にコピペするだけという手軽さがよい.
- ChatGPT:文章校正タスクは得意領域.積極的に使っていこう.
LaTeX
- Create LaTeX tables online: LaTeX の表を簡単に作れるサイト.
- LaTeXify Web: Python のコードを LaTeX 形式に変換してくれるサイト.
- Mathpix: OCR で画像の数式を読み取り,LaTeX 形式に変換してくれるサイト.
- BibTeX entry from URL:閲覧ページの BibTex 項目を自動生成してくれる Chrome 拡張機能.
- LaTeX にソースコードを【美しく】貼る方法 #LaTeX - Qiita
VSCode で執筆する人向け
VSCode では GUI から Git の操作ができる.
デフォルトでも色々できるが,拡張機能を入れるとさらにできることが増える.
- Git Graph:リポジトリの history グラフを見れたり,git の操作ができる.
他にも便利な拡張機能が
- LaTeX Workshop: VSCodeにLaTeXの統合環境を作る拡張機能.コード補完やコードフォーマット, pdf プレビューなどの便利な機能を提供
- Japanese Language Pack for Visual Studio Code:VSCode を日本語化してくれる.
- GitHub Copilot:GitHub Pro への登録が必要(学生無料)
- Code Spell Checker:英単語の綴りミスを見つけてくれる.
おわりに
まとめていく中で感じたのは、修士生として今までに何本か論文を執筆してきましたが、勉強になった項目もたくさんありました。個人ではなく研究室として卒論執筆指南書を作成することで、研究室全体の共有知が広がっていく気がしました。今回の作成で終わらずに、今後も継続して研究室一同でブラッシュアップし、より有益な情報を提供できればと考えています。