2016/06/13
2016/06/10
2016/06/09
結局、dockerは一体何が嬉しいんだろうなとトライする
docker、大分名前が知れ渡ってきた感があります。
dockerとは…仮想環境でハイパーバイザー型のコンテナがなんやかんや。。。
2016/05/29
GitHubのStreakを表示するChromeプラグイン作った
Chromeのプラグイン作るの超簡単だなぁって話。
GitHubの変更
最近、GitHubに変更がありCurrent streakとLongest streakが表示されないUIに変更しました。 https://github.com/blog/2173-more-contributions-on-your-profile Current streak = 現在のGitHubリポジトリへのコントリビュートが継続している日数 Longest streak = GitHubリポジトリへのコントリビュートが継続した最長日数
2016/05/23
JJUG CCC 2016 Spring参加してLTとかしました #jjug_ccc
JJUGの開催するカンファレンスJJUG CCC 2016 Springに行ってきました。
今回もたくさんのセッションがあり、自分の身体を分身させて複数みたい気持ちが高まりました。
なので、見なかったやつもホント苦渋の決断という感じで。
しーばさんのやつとかmakingさんのやつとかぜろゆさんのやつとかおれきゅーさんのやつとか若者のやつとかじゅくちょうさんのやつとかきつねさんのやつとか。
つまり、全部見たかったですね、で、実際見たのは以下のセッションでした。
それぞれの方のスライドは毎度のことながらyujiさんがまとめてらっしゃるのでこちら参照でw
JJUG CCC 2016 Spring ( #jjug_ccc ) - セッション資料の一覧 - 地平線に行く
2016/05/17
[Java]BigDecimalというやつ、意外と知らないから見つめなおす
java.math.BigDecimalは、扱う場面になればなるほど
「あれ、なんだっけ?」とか「そうだったのか…」とか新たな発見があります。僕は。
ごめん、BigDecimalのこと全然知らんかったわ…と毎回思うので、BigDecimalのソースを呼んだりしてみた。
Oracleのjdk1.80_51です。
2016/05/04
2016/04/30
2016/04/29
Skinny Frameworkの素振りをする(1スイング目)
なんかplayもliftもサンプルコード見て、なんとなく使うのやだなぁーってなって、
一番良いかなぁって思ったskinny使ってみよう!っていうブログエントリです。
2016/04/23
SIerという名のバズワード
SIerはバズってる
最近、というか毎度毎度SIerについて話題が上がる。。
のでなんだかモヤモヤとウンザリを書いてみることにする。
言いたいのは、SIerって言葉が便利すぎるということ。立派なバズワードだと思う。
2016/04/09
【書評】KotlinスタートブックはKotlin開発の基準になる
今回は書評記事です。Kotlinスタートブックに関して。
献本してもらいましたので、まぁ書評書かないとなぁっていう強迫観念で書きます。
嘘です。良い本なのでちゃんと書きます。
Kotlinスタートブック -新しいAndroidプログラミング
Android以外でも充分通用する
タイトルにはAndroidという言葉が含まれていますが、
特にAndroidに興味がなくてもKotlinという言語に興味があれば買うメリットは有ると思います。
多分Androidって入ってるのは出版社的に売れやすいからってところとまぁKotlinという言語のターゲットが少なからずAndroidになっているという事実があるからだと思います。(サーバーサイドでもKotlinはもちろん使えます。SwingでもJavaFXでも使えます。)
Androidに関しては本の3分の1ぐらい。なので、基本的に言語部分をがっちり書いてあります。勢いでAndroidを始められちゃうかもっていうぐらいの気持ちで良いんじゃないかなぁ。
Kotlin開発の基準になる一冊
基本的な部分は全て網羅されているといっても過言ではないです。
これまで、Kotlinの日本語書籍がない中での1冊です。
「本が無いしなぁ〜」みたいなのはもう言えないわけですね!(ニヤニヤ)
Kotlinの情報は増えてきたとはいえ、これまではネット上にバラバラにあるような感じでした。(公式ドキュメントでも個人的には結構大丈夫なんですが)
そんな中、まとまった情報が書籍になったということで。
確実にこれが基準になってくるだろうなと思います。
概ね、これに従っておけば良いのですが妄信的にならないようにしてほしいなと僕、個人としては思います。
javapして欲しいし、生成されたクラスのデコンパイルとかして欲しい。
KotlinでAndroid開発を始める場合はこの本があれば怖くないんじゃないかなぁと思います。
基本的な知識を習得する目的にも使えますし、リファレンス的に利用するのもありでしょう。
サーバーサイドとか、Android以外で使う場合は言語の基礎は抑えられます。ただ、どういうフレームワークを使うかとかの選定、使っていくうえでのハマりどころの克服とかは自分たちでしないとダメですね。
Kotlin導入の手立てになる
ということで、「この本があるから導入してみましょう」とかネタになると思います。
まぁプロジェクトの問題とかマネジメントの問題とか色々あるとは思うのですが、それはKotlinに限らず、ですね。Javaでも、なんでも。
Kotlinという言語に関して2016/08現在、ハマりどころとしてはJSR269の絡むもの。例えばDatabindingとかDagger2とかそんなやつです。
ですが、それも本書内で説明がありますので多分なんとかやれるんじゃないかなぁと思います。
Kotlinを使ってみたいと迷っている方は実際に読んでみて確かめてみて欲しいですね。
もし、本に書いてない内容ハマったとしてもKotlinのSlackで質問してくれれば、みんなが答えてくれます。
http://kotlinlang-jp.herokuapp.com
言語の思想も含まれている
筆者のngsw_taroさんはKotlinという言語の発表当初からずっとこの言語を追いかけてきています。
したがって、今現在のKotlinのメジャーバージョンの表面部分だけが語られている本ではないです。著者自身の考えによるところもあるとは思いますが。
たとえば「Kotlinのこの言語設計はEffective Javaのこういう部分が・・・」など設計思想が書かれていたりします。これは単純に公式リファレンスを読むだけでは気づけなかったりする部分もあると思います。
愚者は経験に学び、賢者は歴史に学ぶというやつですね。
チームでみんな1冊持てば怖くない
この1冊あればAndroid開発は出来るか?考えたところ
基本的なJavaの知識とAndroidの知識があれば出来ると思います。
なのでみんな1冊買って開発すればいいと思います!w
気になるところ
褒めすぎましたかね、なんか嫌ですね。
ということで、あえて気になるところを出すとすればKotlinとScalaでtailrecの仕様が違うのに言及してほしいとか、3章のKotlinガイドツアーはしょっぱなから結構勢い出てるなぁって思ったこととか、です。
重箱の隅的なやつです。
まとめ
Kotlin気になるなぁという人、取っ掛かりがほしい人、もっと詳しくなりたい人におすすめです!
Androidで使いたい人は後半部分(本の後ろ3分の1ぐらい)を立ち読みしてテンション上がったら買えば良いと思います。
Androidじゃない人はパラパラと流し読みしてオモシロイと思ったら買えば良いと思います。
2016/04/03
2016/03/29
プロジェクト型組織とナレッジシェアリング
プロジェクト型組織
確か、経営論だか組織論的に言うと、プロジェクト型組織というものがある。
これはなんだか、とても身近な感じがする。
「プロジェクト型組織」とはプロジェクトを実施する上での組織形態の1つ。 特定のプロジェクト専門のチームを作り、各々のプロジェクトで独立して事業が動かされる。 この「プロジェクト型組織」ではプロジェクト内のマネジメントはプロジェクトマネージャーが責任を持って行う。 各プロジェクトメンバーは定まったポジションはなく、プロジェクトが終了すれば別のプロジェクトに所属する。プロジェクト型組織とは
プロジェクト終了とともに解散するのがミソである。
2016/02/27
Kotlin Birthday Partyに行ってきた、あとLTしてきた #jkug
サムライズムにて開催されたKotlin Birthday Partyに行ってきました!
大盛況で40人ぐらいキッチリ入ってたと思います。楽しかった!!
Togetter
http://togetter.com/li/943457
2016/02/23
チケット管理のアンチパターンとベストプラクティス
主語がでかいタイトルですが、自分なりに考えようという目的です。
自分の思考の整理。
何か意見があればガンガンコメントなりツイートなりして欲しい。
前提として、
チケット管理システムは2つぐらいしか使ったことがないので、そちらに偏ってしまうかも。
ちなみにRedmineとBacklog。
(今がRedmineだから多分それに偏る気が)
2016/02/02
ドラクエと転職
そこにいるのはまだ宝箱があるからか
ドラクエが好きだ。
みなさん、ご存じだろうか。ドラゴンクエスト。
主人公は突然旅立つことになり、色んな家を物色して強盗したり、
外に出てモンスターを殺したり、なんとなく南に行って洞窟でイベントをクリアして王様に
褒美をもらったりするゲームだ。
僕は昔からドラクエが好きで、あれは色んな街を渡り歩く。
隅々まで色んな町人と話して、宝箱を物色して、イベントをやりきったか確認する。
そして次へ進む。
2016/01/23
知らないと地味に困る現場ランゲージ
はじめに
なんだか、いつの間にか使ってるけど、「どこからやってきたか分からない言葉」というのが現場にはあります。
ここで言っているのは、カタカナ語とかああいう類のものです。
こういうやつ。
【使い過ぎるとカッコ悪い】 IT業界のルー語 BEST40
一見こういうの、馬鹿にしがちですが、使う人も多いし説明する際に便利だったりします。
確かに使いすぎるとダサいんですが、覚えておいたほうが情報共有の観点では便利だと思います。
僕の個人的な会話の聞き方としては、脳内変換かけるとともに、カタカナ語好きやなぁとしみじみする感じです。
で、今回特に考えてみたいのが日本語のそういう言葉。分かりますかね。
日本語なだけにみんな無意識に使ってて、一般的な用語として混在しがちな気がするのですが、
これらも知らないと困る気がするのです。
ということで、それらを「現場ランゲージ」として勝手に命名し、考えてみようと思います。
2016/01/17
【Kotlin】BooleanフィールドはisXXXという命名が推奨されている
はじめに
らしいです。
元々はKotlinのbooleanのアクセスって変じゃない?って話で。
Kotlinの勉強会に行ってきて、その時の懇親会でJetBrainsの@yanex_ruさんと@ngsw_taroさんの間でそういう話が繰り広げられました。
(勉強会のレポはまた別で書こうかな)
@yanex_ruさんはJetBrainsでKotlinコンパイラとKotlinのAndroid対応をやっているそうです。
どういうことか
話題として、Kotlinのbooleanのプロパティアクセス変じゃない?ってなってたのは2点です。
1.JavaのbooleanのクラスフィールドがKotlinからisXxxというプロパティとしてアクセスされる
JavaとKotlinでフィールド名が変わっちゃうのは違和感ありますよ、って主張ですね。
ソースで言うと、こういうことです。
Java
public class JavaBooleanSample { private boolean hoge; private boolean fuga; public boolean isHoge() { return hoge; } public void setHoge(boolean hoge) { this.hoge = hoge; } }
Kotlin
val sample = JavaBooleanSample() // setterアクセス sample.isHoge = false // getterアクセス sample.isHoge
2.KotlinのbooleanプロパティはJavaからgetXxx、setXxxと見える
KotlinでbooleanのフィールドはisXxxになって欲しいのにsetXxx、getXxxになっちゃうよって話です。
ソースで言うと、こんな感じです。
Kotlin
class KotlinBooleanSample {
var hoge = true
}
Java
public class AccessToKotlinBooleanAccessor { public static void main(String... args) { KotlinBooleanSample sample = new KotlinBooleanSample(); // Kotlinではvar hoge = true sample.getHoge(); sample.setHoge(true); } }
Kotlinとして推奨されるのは
こういうことなんだそうです。
Kotlin
class KotlinBooleanSample {
var isFuga = true
}
Java
public class AccessToKotlinBooleanAccessor { public static void main(String... args) { KotlinBooleanSample sample = new KotlinBooleanSample(); // Kotlinではvar isFuga = true sample.isFuga(); sample.setFuga(true); }
つまり、Kotlinではbooleanのフィールド変数は
isXxxと宣言するのが正しい。
そしてJavaのフィールドのxxxはKotlinからはisXxxとしてアクセスされる、という仕様らしいです。
なぜこういう言語仕様になっているか
@yanex_ruさんによると
・isXxxというアクセスが英語の文法的に自然
・Javaとの相互互換性を考えると、やりやすい
といった理由らしいです。(懇親会でさらっと聞いたので間違ってたらすみません)
確かに、よくよく考えてみるとJavaがbooleanのアクセサメソッドの命名規約を特別扱いしてるとも考えられますもんね。
と考えるとKotlinがこういった対応をとるのは自然なのかなぁとか思いました。
サンプルソース的なもの
一応作って検証しました。
ちなみにですが、こんなことをすると競合するのかコンパイルエラーになりました
class KotlinBooleanSample { var isFuga = true // コンパイルエラー var fuga = true // コンパイルエラー }
まとめ
今まで、KotlinはなんでJavaから見る時にbooleanのアクセサをgetXxx、setXxxって
しちゃうのかなぁと思ってたんですが、謎が解けてスッキリしました。
他の言語でもこういうアプローチとってたりするらしいですね。
言語を作ってる人の話を聞くのは貴重でした。
楽しい勉強会でした!
2016/01/09
「プロジェクトを成功に導く 人を動かす調整力」を読んだ
この本を読みました。結構すんなり読めたかも。
プロジェクトを成功に導く 人を動かす調整力
良い本だったので、僕なりに思うところ、興味を持ったところをピックアップしてみようと思います。
あんまり書きすぎると本の中身を並べるだけになるので難しいですね。
ちょっとでも興味持ったら買って読んでみてほしいです!
特に中堅の人、中間管理職、現場リーダー、マネージャーの人など。