圧倒亭グランパのブログ

30年後の自分にもわかるように書くブログ

技術書典6に向けての Re:VIEW+CSS組版 環境構築

前回の技術書典5では、Re:VIEW+CSS組版にチャレンジしました。

at-grandpa.hatenablog.jp

今回もこの構成で行こうと思っていますが、docker周りが複雑で分かりづらかったのと、自分のリポジトリとして公開してもいいかなと思ったので取り組みました。また、Re:VIEWがちょうど3.0.0になったので、良い機会だと思いました。

 

目次

  • 目次
  • リポジトリ
  • 説明書PDF
  • 執筆の流れ
  • フィードバックをお待ちしています
  • 技術書典6に向けて
続きを読む

「依存性逆転の原則」の自分なりの解釈

「依存性逆転の原則(DIPDependency Inversion Principle)」に関して考える機会があり、自分なりに言語化できそうなのでまとめます。ご指摘は大歓迎です。

目次

  • 目次
  • TL;DR
  • 考えるきっかけ
  • 具体例から紐解いていく
    • べた書きのモジュールA
    • モジュール分割による依存性の出現
    • モジュールの安定性
    • 安定依存の原則 (SDP: Stable Dependencies Principle)
    • 間違った「依存方向の逆転」
    • DIPに基づいた「依存方向の逆転」
  • まとめ

 

TL;DR

  • より安定したモジュールの方向へ依存するよう設計し、ソフトウェアの安定性を高めることが重要
  • 不安定なモジュールが 依存されている と修正範囲が大きくなるため、 依存されない ようにしたい。そのために、依存方向を逆転させたい
  • DIPは「モジュールへの依存方向は逆転可能」ということを示し、「その方法」を解説している
続きを読む

プログラミング言語 Crystal の解説書同人誌「Introducing Crystal Programming Language」

この記事は Crystal Advent Calendar 2018 の15日目を埋める記事です。

Crystal言語を触ってみたい方に、技術書典5で頒布された同人誌「Introducing Crystal Programming Language」をおすすめします。日本語で書かれており、Crystalの基本的な文章から開発方法まで網羅しています。

crystal-jp.github.io

トップページの説明を抜粋します。

Crystal の基本的な文法から Web アプリーケション・ CLI 開発の方法まで解説したこの一冊があれば、Crystal での開発を今日から初めることができるでしょう。

Web上でも閲覧できますし、PDF版もダウンロードできます。Crystalに興味のある方はぜひご参考にしてください!

Crystalの自作CLIビルダーライブラリを使ってgitコマンド風のCLIツールを作ってみる

この記事は Crystal Advent Calendar 2018 の3日目の記事です。

 

自作のCrystalのCLIビルダーライブラリをアップデートしたので、AdventCalendarに便乗して紹介します。

githubは以下です。 clim と言います。簡潔に、直感的にCLIツールを書けることを目指しています。

github.com

過去に紹介したブログ記事はこちらです。

at-grandpa.hatenablog.jp

この記事が古くなったのでupdate記事です。

 

目次

  • 目次
  • gitコマンドっぽいものを作ってみる
    • 前準備
    • versionを表示する
    • helpを充実させる
    • オプションを追加する
    • サブコマンドを定義する
    • 全コード
  • その他の機能
  • たまにupdateします
続きを読む

技術書典5でチャレンジしたこと・うれしかったこと

おつかれさまでしたー!めちゃくちゃ楽しかったですね!

次回に向けてのメモと感想を書いていきます。ブログを書くまでが技術書典。

  • まとめたスライド
  • うれしかったこと
  • 「何事も早めに」
  • 締切駆動開発
  • Re:VIEW+CSS組版
  • ワンオペ
  • 印刷部数
  • 被チェック数の意味とは
  • 当日までの準備や運用
  • 初参加80部完売現象
  • みなさんとお会いできる
  • まだまだ続く技術書典
続きを読む

【技術書典5】執筆から入稿までをちょっとまとめておく

長かったーーーーー。

無事、入稿が終わって 10/08 には物理本を頒布できます。

台風25号さんには来場をご遠慮願いたいです。(来たら来たで「やっぱり技術書典だな」となりますが)

目次

  • 目次
  • 頒布情報
  • 締切駆動開発
  • Re:VIEW+CSS組版
  • 印刷部数
  • ちょっとしたこだわり
  • 楽しみましょう!
続きを読む

Re:VIEW+CSS組版の執筆環境を簡単に構築できるようにしました

【追記(2019/02/10 9:53)】

現在開いているこの記事は技術書典5に向けての記事です。 技術書典6に向けての最新記事は以下をご参照ください。 使いやすくなったり、Re:VIEWなどのバージョンが更新されています。

at-grandpa.hatenablog.jp

【追記おわり】

Re:VIEW+CSS組版の環境は、わかめさんの vvakame/review-css-typesetting で整いつつあります。今回は、個人的に欲しい機能を追加した、という話です。いい感じに回っているのでブログにまとめることにしました。

 

目次

  • 目次
  • Re:VIEWとは
  • CSS組版とは
  • Re:VIEW+CSS組版
  • 環境構築
    • 使い方
    • やってること
  • デザインの変更
    • CSSを編集する
    • htmlを編集する
  • 完成したPDFは印刷所で印刷可能か(確認完了)
  • まとめ
続きを読む

crystal.tokyo #7 で Concurrency について話しました

2018/07/18 に crystal.tokyo #7 を開催しました。

crystal.connpass.com

前回の「Crystal勉強会」から名称を変えて「crystal.tokyo」としました。 crystal-jp.slack.com でご意見を募ったところ、「crystal.tokyo」が一番票を得たので変更しました。「登壇者&聴衆」という勉強会スタイルに縛られずに、もっといろんな形で交流できたら良いなと思っています。

続きを読む

Crystal 勉強会#6を開催しました!

2018/06/21 に行われた Crystal 勉強会が大変楽しかったのでレポートです。

crystal.connpass.com

 

目次

  • 目次
  • 開催経緯
  • 全体の流れ
  • Crystal in production
  • LT
    • Crystalでツールを作ってみた
    • Crystalに再びRailsの夢を見る Amber編
    • Macroについて
    • Rubyのライブラリを移植した話
    • Exhaustiveness Check in Crystal
  • 懇親会
  • 今後の勉強会
  • 最後に
続きを読む