読者です 読者をやめる 読者になる 読者になる

Septeni Engineer's Blog

セプテーニエンジニアが綴る技術ブログ

研修でscala-dddbaseを使って掲示板作ってみました

Scala

はじめまして、新人のno_sugiyamaです。
研修でscala、PlayFramework、ドメイン駆動設計(DDD)を使って掲示板を作りました。
実装する際に使ったscala-dddbaseライブラリがDDDで実装するときに非常に便利だったので、実際にどんな感じで使ったかをご紹介したいと思います。

続きを読む

モナド(clojure.algo.monads)よくわからないからとりあえずいじってみた

clojure Monad

こんにちわ、k_imaizumiです。

関数型の言語の情報を見てるとよく目にするモナド。 なんかこいつを説明するためにいろんな記事がわんさかありますが、結局よくわからない。 すごいHaskellたのしく学ぼう!を読むも難しくてよくわからない。

よくわからなすぎて手がでないままってのもアレだなぁということでとりあえずいじってみたってのが今回の記事です。 HaskellだとHaskellそのものの理解がアレなので今回はclojureでいじることにしました。

続きを読む

Chefテスト始めました!

テスト インフラ

こんにちは、貴子です。
インフラチームでchefのテストを導入して、運用フローまで落とせてきたので
何が問題でどう改善したかをまとめました。

テストを導入する前の問題点

テストを始める前のrecipeにはたくさんの問題がありました。
* bash・executeを多様している
* ダブルコーテーションとシングルコーテーションの使い分けができていない
* recipe通りに動いているか確認が漏れがある
* CentOSだと動くけれどAmazon linuxだと動かない
..etc

これらの問題は2つに分類することが出来ました。
1. コードの書き方に統一されていない
2. 動作チェックが甘い

続きを読む

Androidでのモジュール分割

どうも、@ugdarkです。

現在、Android学習をしているのでその時に気がついた事や あまり記事がなくわからなかったモジュール分けなどを紹介

Android LibraryとJava Libraryを試して。 ※ 正しいやり方なのか合ってるのかはわかりません。

Android Library

[Android Studio] メニューから、File -> New -> New Module -> Android Library を選択。ファイル名やら、ActivityはなしとかでもOK

特徴としては、通常のAndroid applicationと同様だった。 違いは

build.gradle

apply plugin: 'com.android.application' => apply plugin: 'com.android.library'

特にapplicationとの差はない感じで同様だった。

Java Library

[Android Studio] メニューから、File -> New -> New Module -> Java Library を選択。クラス名を設定

build.gradle

apply plugin: 'java'

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

こちらはまー予想通りのandroid側と違い android {}の設定が ごっそりなくなっています。

プロジェクトとの関連付け

どっちのLibraryを設定しても、自動で追加されますが、 rootのプロジェクト側の

settings.gradleに各モジュールが追加されます。

include ':app', ':mylibrary', ':lib'

まとめ

Javaなどで開発する場合ではモジュール分け=コンパイル速度の短縮に繋がるので 是非開発の際には、モジュール分けをして作業の効率化してみてください。

マイクロベンチマークツールのsbt-jmhを使ってみた

越です。

最近すごく暑さが気になってきたので、夏休みを利用して、地元の長野で避暑地でも行ってゆっくりしようかと考えています。

scalaベンチマーク

scalaの勉強のためにscalaベンチマークを測る方法を調べていて、 scala.testing.BenchmarkがScala 2.11で廃止されていたのでsbt-jmhを試しに使ってみました。 Deprecate unmaintained/old classes for removal in 2.11

続きを読む

Chrome Extensionで本番環境での誤操作を防止する

こんにちは、SEPTENI TECHNOLOGYの平井です。

ちょっと前までハノイは灼熱だったんですが、先週辺りから急に涼しくなりました。 今は日本の方が暑いみたいですね。

というわけで、本題です。

本番環境でヒヤッとしたくない

web開発をするにあたって、本番環境・ステージング環境・開発環境等、複数の環境がある場合がほとんどだと思います。

テストや確認等は基本開発環境でやるのが普通かと思いますが、実データを見たい等の都合で本番環境を触る必要がある場合もあると思います。

そんな中で、「開発環境だと思ったら本番だった!!!」となると、とても恐ろしいことになりかねません。

本番と開発環境を同時に開かないようにしたり、都度アドレスバーを確認しながら作業するようにすればいいんですが、なんかもっと一目で本番だと分かる方法がないかなと思っていたらchrome extensionでそれらしいことが出来そうなのでやってみました。

続きを読む