作業効率

5分でできる!Python3を利用した自動リンクチェッカーの開発

こんにちは。QAチームでマネージャーをしているエンジニアの斉藤(@saik1010)です。

弊社QAチームで品質向上を目的として取り組んでいる、PythonWebスクレイピングを使用した自動リンクチェッカー(HTTPステータスコードのチェック)について、
環境構築〜実際にリンクチェックを実行するところまでご紹介しようと思います。

環境

環境 バージョン
macOS Sierra 10.12.6
Python 3.6.4
pyenv 1.2.1

続きを読む

Redash と Superset を比較検証してみた

こんにちは。SREチーム エンジニアの阿久津です。
今回は Redash と Superset という2つのツールを比較検証してみましたので
それについて記事にしたいと思います。

ツールについて

両者はオープンソースのダッシュボードツールです。
簡単に言うと、DB等のデータを可視化(表やグラフ)してくれるツールになります。

■Redash

公式サイト : https://redash.io/

■Superset

公式サイト : https://superset.incubator.apache.org/index.html

比較したこと

  1. データソース連携
  2. データ操作
  3. グラフ
  4. ダッシュボード
  5. 比較まとめ

続きを読む

PHP_CodeSniffer+GitHub+CircleCIでコードレビューの自動化

こんにちは。サーバーサイドエンジニアの@akane_256です。

今日は、PHP_CodeSniffer+GitHub+CircleCIを使って、PHPのコードレビュー(コーディングルールの徹底)を一部自動化したことについて書きたいと思います。

目次

  • 興味を持った背景
  • 今回やったこと
  • 利用ツールについて
  • 実装の流れ
  • ハマったところ
  • まとめ

興味を持った背景

開発が進むにつれて、他の人が書いたコードと自分が書いたコードで、統一感を保つのが難しくなってきたな、という実感があったのとコーディングルールにあっていないコードを自動で見つけられたら便利だよね、と同僚と話す機会があったので試してみました。その他にも、下記のようなメリットがあるのではないかと考えました。

続きを読む

Redmineをしっかり活用してチーム運用改善したら、チーム力がグンと上がった話

こんにちは、SREチーム エンジニアの西脇(@yasuhiro1711)です。今日は、チーム運用改善の話をしたいと思います。これからチーム運用をしていく方々に少しでも響けばいいな、参考事例になればいいな、と思って書いておきます。ちなみに、テーマを変えて続編も書く予定ですので楽しみにしてもらえればと思います。

チームに課題が出て来た

私のSREチームはこれまでは2人と少数精鋭でした。そこに昨年全く違う背景を持つメンバーが入って来ました。(ちなみにSREチームに改名した件も近々どこかで書こうと思います。)最初は仕事のやり方を変えずにやっていたものの、仕事が増えて連携する場面が増えると、2人のときの阿吽の呼吸だけではどうしても回らなくなることが増えてきました。他にも思考のすれ違いなど幾つか課題が出始めました。項目にするとこんな感じです。

  • 少数メンバーのため、人に依存したタスクが多かった。
  • チームメンバー同士での現状把握が出来ていない。
  • タスクの可視化や優先度の把握が不十分。
  • ロードマップの優先度付けも弱い。

それぞれこれまでやれてなくて出て来た課題なので、向き合って進めればいいのですが、
さて、どうやって解決していくのが楽しいか。やるなら楽しく進めたいものです。

そうだ!

うちはRedmineを使ってるので、
Redmineをフル活用すれば、「あーして、こうして」、結構いいかも。

と思いつきました。思いついたら吉日。即日動きました。

続きを読む

Headless Chrome でブラウザテスト自動化入門

こんにちは。サーバーサイドエンジニアの@akane_256です。

今日は、Headless Chromeを使ったブラウザテストの自動化(入門)について書きたいと思います。

目次

  • Headless Chromeとは?
  • 興味を持った背景
  • 今回やったこと
  • 実際のソースコード
  • まとめ

Headless Chromeとは?

  • Chrome59(2017/6月頃)から搭載された機能
  • ChromeをGUIなしでコマンドラインから実行できる
  • DOMのノードを取得したり、画面キャプチャを撮ったりできる
  • ツールと組み合わせて自動テストに使ったりする

ブラウザを開いて、特定のページを開き、自分で目視確認しなくても、
あらかじめ作ったプログラムをコマンドから実行をすれば
自動でキャプチャをとったり指定の要素を取得したりすることができます。

続きを読む

作業ミスを減らすFirefoxアドオンを公開

結婚写真を撮影できるスタジオ検索サイト「Photorait」担当エンジニアの武田(@takedajs)です。

先日、自分が担当しているPhotoraitでスタジオを探し実際に結婚写真を撮影してきました。自分が携わってるサービスをユーザとして使うのは、感慨深いですね!一つ夢が叶いました涙

さて本題です。
最近Firefoxの大きなバージョンアップ(Firefox Quantum)があり、ページ読み込み速度の大幅な改善などありましたが、その一方で最新の開発手法(以下、WebExtensions)ではないFirefoxアドオンが利用できなくなりました。僕の場合、利用していたFirefoxアドオンが全て利用不可に。。。マジか。。。

そこで今回は、最新のFirefoxでも利用できる、作業ミスを減らすFirefoxアドオンを開発し公開しましたので紹介します!ターゲットユーザが少ないと思うので、かなりニッチなアドオンです笑

続きを読む

Windows 10 Creators Update に Bash 環境を構築してみました

こんにちは,エンジニアの久保です。

先月開催された Microsoft Build 2017 では,Bash on Windows で,
これまでの Ubuntu のほかに,FedoraopenSuSEサポートが発表されました。
この機能は,2017 年秋にリリース予定の Windows 10 Fall Creators Update に含まれるようです。楽しみですね。

今回は,現在利用可能な Bash on Ubuntu on Windows について,Windows 10 Creators Update 環境で導入してみました。

環境

  • Windows 10 Pro 64 bit
    • バージョン:1703(Creators Update)
    • OSビルド:15063.0

続きを読む

【DB設計入門|ER図|MySQL】コンビニレシートから学ぶ!データモデリング手法

はじめに

こんにちは、岩橋です。
今回は私が実務で行っているデータモデリング手法(実際手法とは名ばかりですが…)を紹介いたします。

データモデリングは、ご存知の通り、その後のシステム開発や拡張スピード、またシステム自身のパフォーマンスにも深く関わってきます。ここをどのように設計するかが開発プロジェクトを進める上で大きなカギになります。

なぜレシートなのか

モデリングする上で、その対象となるサービス・システムのビジネスロジックや仕様を深く理解する必要があります。レシートの背景にある「物を買う」という行為は至極身近なものであり、誰しもがそのレシートが発行されるまでの流れを経験で知っています。またレシートは、その小さな紙の中に「店舗」や「商品」など、WEBサービスで馴染みがある概念も多く含まれており、訓練をする上で非常に手頃なものです(「コンビニ」なるフレーズは掴みに使わせていただきましたw)。

今回の話のエリア

スクリーンショット-2017-03-20-12.02.47 (1)

今回は概念設計〜論理設計の前半までの内容を対象としています。具体的には「ある特定日のレシート一覧を出力できるシステム」のデータモデリングを行っていきます。

続きを読む

phpDocumentor でドキュメント自動生成してみた

こんにちは、エンジニアの榎本です。

チーム開発において、ファイル数やクラスが増えてくると、新しいメンバーに説明をする際など、ドキュメントがないと説明が難しくなってくることがあります

しかし実際のところ、ドキュメントを作成する工数を確保できず、せっかく作ったドキュメントがあってもどんどん陳腐化している現場も多いのではないでしょうか

そのため、今回は phpDocumentor を用いて PHP のコードから自動でドキュメントを生成する方法を紹介したいと思います

作業環境

  • CentOS 7.2
  • PHP 7.0.12
  • Composer 1.2.2

続きを読む