Reek を使って嫌な感じのコードを取り除きましょう
コードを書いたり、読んでいて、何となく嫌な感じのするコードに出くわしたことはないでしょうか。そういったコードの存在はシステムの保守性や可読性を損なうものになります。Reekというツールではそれをコードスメル(悪臭のするコード)と呼んでいます。Reek...
View ArticleDockerで素早くRubocopによる自動コードレビューを実現する
RuboCopを使えばRubyのコードを静的解析してコードレビューを他の人にして貰う前にいくらかの内容を機械的にチェックできるようになります。RuboCopのインストール自体はRubygemsでできるのでさほど難しいものではありませんが、ローカル環境の変更はなるべく控えたい方もいるでしょう。そこでDockerを使ってローカルの環境に依存せずにRuboCop環境を整える方法を紹介します。Dockerに...
View ArticlePHP_CodeSniffer 3.0への移行のご案内
PHP_CodeSnifferはPHPのコーディングスタンダードのチェックを自動化し、チームで統一するための非常に優れたツールです。SideCIでは、バージョン2.9.1をサポートしており、既に多くのお客様にご利用いただいております。先日、PHP_CodeSniffer...
View ArticleGo言語用のあらゆるLinterを丸っと並列実行する、gometalinterを使いこなそう
多くのプログラミング言語でもそのコードの静的解析を行い警告を出すツール、いわゆるLinterが存在します。特に最近出てきたプログラミング言語ではLinterがよく作られているようです。Linterがあることによって、良いコードの書き方がLinterのソースコードに蓄積され、それを使うことで、より良く開発を進めていく事が出来るでしょう。Go言語でも同じく、Linterが存在しています。ただし、他の言語...
View ArticleTypeScriptの静的コード解析ツールTSLintを使い、コードレビューの前工程でコードをチェックしまいましょう
素のJavaScriptをチーム内でそのまま使うのを嫌がる方は少なくありません。型の定義ができなかったり、括弧が多く、分かりづらいコードになりやすいといった問題がよく言われます。そこで注目されているのがMicrosoft社がメインで開発を行っている代替言語のTypeScriptです。TypeScriptは変換処理を行うとJavaScriptになります。そんなTypeScriptであってもチーム開発に...
View ArticleBrakeman を使って Rails プロジェクトのセキュリティインシデントを防ぎましょう
Rails の登場によってRubyが世界中のWeb開発に使われるようになっています。Rails はとても高機能で便利なフレームワークですが、何でもやってくれる安心感からか、セキュリティに気を配らずに実装されてしまうケースも見受けられます。適当な書き方をしてしまうと、 容易にセキュリティインシデントの原因となるコードを産んでしまうでしょう。そこで使ってみたいのが...
View ArticleJSHintを使ってJavaScriptのコードを自動レビューしよう
JavaScriptは一つの実行内容に対して複数の書き方が存在します。また、コールバック地獄と比喩される非同期処理の積み重ねなど、ソースコードが分かりづらくなる要因が多数存在します。一人で小さなスクリプトを書く分には構いませんが、多人数で大きなWebアプリケーションを作り上げる際には問題が起こりやすいプログラミング言語です。そこでまずコードを自動レビューして、悪い部分を修正していきましょう。そこで使...
View ArticleSCSSの静的解析、改善にscss-lintを使いましょう
コードレビューというとプログラマ向けの仕組みに感じますが、そんなことはありません。Webデザイナーにとっても役立つケースがあります。例えばCSSはテキストで書かれるものなので差分が取れます。更新部分だけをコードレビューできれば、日々の運用の中でメンテナンス性を維持できます。CSSを拡張して書けるようにしたSCSSはWebデザイナーの中でも広く使われています。開発の中でSCSSを使われているのであれば...
View ArticleCoffeeScriptのコードを静的解析器のCoffeeLintにレビューしてもらおう
素のJavaScriptが書きづらいと感じる方は少なくありません。波括弧や普通の括弧が多く、読みづらいと感じてしまいます。そんな中作られたのが代替言語のCoffeeScriptです。CoffeeScriptは変換用のコマンドを介して素のJavaScriptになります。CoffeeScript自体はRubyやPythonから学び取った点の多い、可読性の高いシンプルな構文となっています。CoffeeLi...
View ArticleSideCIはレビューにフォーカスするため、負債カンバンを廃止しました
こんにちは。今日は私たちSideCIのメンバーにとって、また、ユーザの皆様にとって、大きなアナウンスをさせて頂きます。2016年8月末より技術的負債を可視化し、その返済を支援する機能である「負債カンバン」を提供しておりました。本機能はベータ版として、Ruby on...
View ArticleRailsを書き始めたばかりの人に特にオススメ。Rails流のコードの書き方を教えてくれる rails_best_practices を使ってみましょう
Ruby on Rails を使ったシステム開発では The Rails way や Rails 流と言った開発手法に沿って行うことで高い生産性を保持できるようになります。つまり流儀をきちんと学び、それに従って開発するのが大事です。そうした流儀、ベストプラクティスをチェックできるツールが rails_best_practices...
View Articlebundlerのoutdatedコマンドを使ってGemfileの古いライブラリをチェックしましょう
RubyプロジェクトではBundlerを使って依存ライブラリの管理を行うのが一般的です。ライブラリのインストールは簡単にできますが、その後適切に最新バージョンを追いかけないとセキュリティ上のリスクが発生することや、アップデートの差分が大きくなりすぎてアップデートしたくでも難しくなりがちです。bundle...
View ArticleGoのソースコード解析に標準ツールのgo vetを使ってみましょう
企業内においてGoを利用するケースが増えています。コンパイル系であり静的型付けの言語で、実行速度も速いのが特徴です。さらに仕様がシンプルなので習得が容易、かつ書かれたプログラムはマルチプラットフォームで動作します。人気が出るに従ってチームでGoプロジェクトを進めるケースも多くなるでしょう。そうした中でコードの品質を保ち、保守性を良くするために、ソフトウェアを使ってコードをチェックしましょう。。幾つか...
View ArticleSideCIはPull Requestにコメントできるようになりました
SideCI は従来、Pull Request を解析し、指摘があった際はコミットステータスを fail にして、sideci.com 上で指摘事項を確認し、対応していただいておりました。今回、それに加えて新たに Pull Request にコメントを行う機能を追加しました。これにより、Pull Request...
View ArticleSideCIでのクラシックモード廃止のお知らせ
SideCIは、2017年10月31日をもちまして、サービスの正式リリース時より稼働しておりました、クラシックモードを廃止することをお知らせいたします。お客様にご登録いただいておりますリポジトリは、11月1日以降すべて強制的に新規モードに切り替わります新規モードは既に稼働しており、2017年9月6日時点で移行することが可能です...
View ArticleSideCIでMisspellが使えるようになりました🎉
こんにちは。id:Pockeです。SideCIで新しい解析器がご利用いただけるようになりましたので報告させていただきます。今回追加された解析器は、Misspellです。Misspellを使用することで、ソースコードやその中のコメント、ドキュメントなどに含まれる英単語のタイプミスを検出することができます。SideCIでの使い方SideCI上で設定を行っていただくことで、Misspellをお使い頂くこと...
View ArticleJavaのコーディング規約チェックツールCheckstyleの使い方、CIとの統合、オープンソースプロジェクトでの活用事例
目次Checkstyle概要CheckstyleとIDEの統合Checkstyle標準のチェック項目のカテゴリーCheckstyleとビルドツールの統合Checkstyle標準のチェック項目のカテゴリー標準で配布されているコーディング規約オープンソースプロジェクトとCheckstyleElasticSearchプロジェクトでのCheckstyleの利用まとめCheckstyle概要Checkstyl...
View ArticleCode Review Meetup #1 コードレビューで集まろうを開催しました。
少し珍しいコードレビューをテーマにしたMeetUpを当社主催で実施しました。今回はその記念すべき第1回目です。金曜日の夜にもか関わらず、約40名のコードレビューに興味があるユーザに参加いただきました。概要開催日時 2018年1月19日(金) 19:00 - 20:45開催場所 東京都渋谷区 Voyageグループ大会議室パンゲア参加人数 約40名主催 SideCI社講演1 :...
View Article