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
技術ブログをCLI管理する
Search
m-narin
May 29, 2024
Programming
0
94
技術ブログをCLI管理する
技術ブログ2大巨頭であるQiitaとZennに関して、CLI管理する方法とメリットについて述べます。
m-narin
May 29, 2024
Tweet
Share
More Decks by m-narin
See All by m-narin
AI x 開発組織 Summit レポート
narin0520
0
6
プロになるためのWeb技術入門
narin0520
0
31
転職後のキャッチアップで工夫したこと
narin0520
0
550
技術ブログのすゝめ
narin0520
0
24
新卒研修振り返り
narin0520
1
110
Other Decks in Programming
See All in Programming
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
830
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.3k
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
670
CSC509 Lecture 06
javiergs
PRO
0
260
CSC305 Lecture 05
javiergs
PRO
0
210
『毎日の移動』を支えるGoバックエンド内製開発
yutautsugi
2
240
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
180
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.6k
Le côté obscur des IA génératives
pascallemerrer
0
140
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
120
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
0
150
Software Architecture
hschwentner
6
2.3k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
339
57k
Documentation Writing (for coders)
carmenintech
75
5.1k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Building Applications with DynamoDB
mza
96
6.7k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
The World Runs on Bad Software
bkeepers
PRO
72
11k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Building an army of robots
kneath
306
46k
Transcript
技術ブログをCLI管理する 開発3部 那仁満徳 2024.01.25 - Tech Talk 1
年末年始暇だなぁ〜何しようかな そうだ!技術ブログをCLI管理してみよう!💡
アジェンダ きっかけ 01 始め方・使い方 02 やってみて 03 最後に 04
4 そもそも技術ブログをCLI管理するってどういうこと? • 2023年までは、Web GUI上で執筆していた。一般的な方法?
5 そもそも技術ブログをCLI管理するってどういうこと? • 記事を手元のmdファイルで管理する • CLIで記事を投稿、更新する
6 そもそも技術ブログをCLI管理するってどういうこと? • 記事をCLIで管理することによってたくさんのメリットが生まれる✨ ◦ GUIで編集するのは面倒 ▪ 編集画面に辿り着くまでは億劫 ▪ 一括編集ができない
▪ 誤って編集データが消えるリスクがある ◦ オフラインでもローカルサーバーでプレビューを見ながら記事を書ける ◦ GitHubと連携して、CIから記事の自動デプロイができる ◦ 特定の媒体に依存せずに言語化資産を持てる ◦ 記事の移行や文章の使い回しが楽
7 年末の自分の状況は、、、 • 元々Qiitaで30本くらい記事を書いていた • X(Twitter)でブログはCLI管理すると良いよとの投稿を見る • たくさんのメリットがあることを知り、CLI化を決意 ◦ ついでにQiita記事の何本かをZennに移行してみよう
8 この発表では • QiitaとZennにはそれぞれCLIで管理できる仕組みがあることを知る • 触ってみてどうだったかの紹介 ◦ すでに記事を書いている人やこれからブログを始めたい人向け🙌 ◦ (すでにCLI管理しているよ〜という方は退屈かも🥺)
• Qiita CLIは2023年8月にリリース • Zenn CLIは、Zennがリリースされた2020年9月リリース当初からあるっぽい
Qiita CLIの使い方 1. 基本的には公式の説明に添えば良い a. TokenでQiitaアカウントと紐付け b. npx qiita pullでQiitaアカウントとローカルを同期
c. ローカルサーバーでPreview機能がある d. 差分を自動検知する仕組みがある(後述) e. 新記事や編集分の反映はpush時にGitHub Actions が自動でやってくれる ▪ 記事の変更が無かったら何もしない f. 安全のため削除機能は無い https://github.com/increments/qiita-cli
Qiita CLIの差分の取り方 • 差分はファイル中に書かれるメタ情報のidで見ている ◦ idが無かったら新記事をpush ◦ 既存IDの中身が変わっていたら編集をpush ◦ ファイル名は関係ないので自由に編集OK
※GitHub Actions実行後に、メタ情報のidが書き込まれるのでgit pullする必要がある。
Zenn CLIの使い方 1. 基本的には公式の説明に添えば良い a. GitHubアカウントとZennのアカウントを紐付け b. ローカルサーバーでPreview機能がある c. 差分を自動検知する仕組みがある(後述)
d. 新記事や編集分の反映はpush時にGitHub Actions が自動でやってくれる ▪ 記事の変更が無かったら何もしない e. 安全のため削除機能は無い https://zenn.dev/zenn/articles/zenn-cli-guide
Zenn CLIの差分の取り方 • 差分はslug(ファイル名にも紐づいている)で見ている ◦ 新しいファイル名の記事がある場合は新記事をpush ◦ 既存のファイル名の記事の中身が変わっていたら編集分をpush ※ファイル名を変更すると別記事として投稿されてしまうので注意
Qiita CLI vs Zenn CLI • Preview画面
Qiita CLI vs Zenn CLI • 差分の取り方 ◦ Qiitaはメタ情報中のIDで管理 ▪
記事投稿後、同期のためgit pullする必要がある ◦ Zennはファイル名で管理 ▪ ファイル名を書き換えられない(並べ替えなどができない)
Qiita CLI vs Zenn CLI • その他の特徴 ◦ 共通点 ▪
画像はURLベタ貼り。どちらも画像アップロード機能がある ◦ Zenn特有 ▪ updated_atを過去の日付で投稿できる • 記事移行を想定している ▪ 本形式の投稿もできる ▪ 収益化がある
Qiita CLI vs Zenn CLI • 運営元 ◦ Qiita ▪
2011年に大学生だった海野弘成さんが開発 ▪ 2017年にエイチームが買収 • 名古屋にあるスマホやインターネットコンテンツを作っている会社 ◦ Zenn ▪ 2020年にcatnoseさんが開発 ▪ 2021年にクラスメソッドが買収 • クラスメソッドは言わずもがな、techブログが有名
CLI化(記事のコード管理化)してみて • 記事管理がめちゃめちゃ楽になった ◦ 下書きとかを書き溜めておいて、好きなタイミングで公開できる ◦ 複数の記事を一括編集できる ◦ エディターのgptプラグインと併せると至高の執筆体験 •
記事の移行などもすぐ終わる • 同じ記事を両方に公開できる ◦ 例えば比較してみたり
CLI化してみて • 同じ内容の新記事を(ほぼ)同時公開してみた
CLI化してみて • 同じ内容の新記事を(ほぼ)同時公開してみて1ヶ月経った結果 項目 Qiita Zenn PV数 840 124 いいね数
4 5 いいね/PV 0.5% 4% • PV数はQiitaの方が8倍多いが、いいね数は同じくらい • 一般的に言われているのは ◦ QiitaはSEOが強いのでライト層も多いということ
20 • 技術的に新規性、有用性に拘らなくても書くこと自体にメリットがある。プライドを 捨てて今日から書く。小さな成功体験を✨ ◦ 日々考えたことなどの思考がまとまる ◦ ドキュメント力が上がる ◦ 話せるネタが溜まっていく
▪ 思考跡を言語化した資産を増やす ▪ 技術記事はエンジニアとしての資産になる • 巡り巡った機会、振り返って見て新たな発見 • 技術だけでなくアイデアやポエム的な記事も専用のタグがある 技術ブログ仲間増やしたい
CLIで極上の執筆体験を今日から味わってみませんか?