% cat

弊社CTOが執筆!RAISIをテーマにしたSoftware Design 2018年6月号の特集内容を勝手に紹介する!

CTOが本書きました ✍️

Software Design 2018年6月号|技術評論社

Software Design 2018年6月号|Amazon

Webサービス開発 5つの心得!!! 🎉

せっかく本出したのですからこちらでも取り上げないと行けないですよね!

更に、購入意欲を煽りたいので、私が勝手に解釈して、紹介したいと思います😃

🙌 さっくり内容紹介! 🙌

CTO執筆の特集は、Software Design 2018年6月号の第1特集として組み込まれております。

「RASIS」 という品質の良いWebサービスを作るための考え方に基づき、どうすればそれが実践できるのか。
というのをサンプルコード(弊社でも多くの場所で使われているRailsやrubyなど)を含め、50ページにも及ぶの圧巻の容量で紹介しています。 最高ですね。買おう。

章立ては以下の通り!✍️

  • 序 章 Webサービス開発の心得
  • 第1章 信頼性をあげよう
  • 第2章 可用性をあげよう
  • 第3章 保守性をあげよう
  • 第4章 保全性をあげよう
  • 第5章 機密性をあげよう

僕が思うに、 「エンジニアとして、プログラミングを仕事にするぞ!」 と思い始めた人がバイブルにしたくなるような内容です!

第1章 信頼性をあげよう

この章では 「こちらは何をするにしても安心して作業できる環境を作ろう!」 というのに注目しています。👀

  • アプリケーションのデプロイ
  • ライブラリやモジュールの更新
  • テストコード

記載があります。普段から触るようなものだからこそ、信頼性を担保、保守しないといけないですよね!

第2章 可用性をあげよう

不備が起きたらすぐに動かなくなってしまうシステムなんて、とんでもない!土日ゆっくり休むためにも、新しい技術を勉強するためにも、明日の自分のためにも1つの障害で死ぬ訳にはいかない!😡

ということで、この章では仮に障害が起きたとしても、すぐにHPが0にならない方法を紹介してます。

もう少し中身に触れると、AWSのELBやAuto scale、Redis等などを使った冗長化についてがメインになりますね。

AWS CLIを使ったサンプルが乗ってますので、操作に馴染みがない人も面白いのかなって思います。

第3章 保守性をあげよう

最終的には人が管理しますからね。ヒューマンエラーは避けられない。大事においておいたデータでも簡単な操作ミスで飛んでしまうことだってあります。🙄

そんなとき、マニュアルだったり、バックアップからのリストア方法を複数用意しておくなどすれば問題ないはず!

この章では、ドキュメントを残すノウハウと、安全なバックアップ方法の一例を紹介しています。こういう手段っていうのは散らばりがちなので、一貫した手法を用意できると安心ですよね。🤗

第4章 保全性をあげよう

保守性とは違って、これはデータベースの中身がちゃんとしている状態を作ろう!という話です。

というのも、データベースの中身はちゃんと設計しないと予期しないデータを持ちがちです。重複してほしくないデータが重複するようになっていたり、計算された数字が入ってほしいのに、なぜか違うデータが入ってしまったり。それをアプリケーションで使おうとすると、それはそれは大変なことになります。🤢

そうならないために、 トランザクションやユニーク制約という基本的なところ から、 デッドロック回避をするための考え方、やり方 について等など紹介しています。

プログラムを仕事にするならお客様のデータをちゃんと持つ技術は身につけておかないとですね!

第5章 機密性をあげよう

WebサイトをSSL化しよう、というのも最近の話ですね。🗝

この章では、 いかにセキュアーにwebサイトを使ってもらうかについてになります。 機密情報を安全に保つ方法や、自身のサーバーの欠陥を調べるサンプルに関して記載があります。

🖌 編集後記

はい、ということで、 詳しくは買いましょう。 という感じの内容でしたがどうでしょう?

50ページとは言いましたが、それでもかなり内容がもりもりのように感じられたのではないでしょうか!?(ゴリ押し)

もし、この書籍を購入して、内容にもしPIN📌と来た方が入れば、弊社までご一報ください!

Enjoy Hacking! そのための挑戦と工夫を一緒にしていきましょう | wantedly

弊社では一緒に叩くメンバーを募集してます😄

それでは👋

最新記事

BananaCI というツールを運用しています

こんにちは。[@endotakuya](https://github.com/endotakuya) です。 突然ですが皆さんは CI/CD 、してますか? オンプレミス型の Jenkins や Drone 、クラウド型の Cir...

endotakuya
2018年12月06日

シグナルと kill コマンドについてちゃんと調べてみた

開発中にプログラムが固まった時に `kill プロセスID` って打ったことがある方は多いかと思います 僕もそうで、 kill コマンドはプロセスを強制終了するためのコマンドだと思っていました ですが puma のログ...

tkhr0
2018年12月06日

Rails における弊社の CSS 設計

Hi. [rigani_c](https://twitter.com/rigani_c) です。 本記事では Rails における弊社 CSS チームの CSS 設計を、私の思想と併せて話します。 Sprockets を使うケ...

rigani
2018年12月02日