Hatena::Groupprogram

ひとり開発日記。 このページをアンテナに追加 RSSフィード

2016/03/18 (Fri)

マイクロサービス

| マイクロサービス - ひとり開発日記。 を含むブックマーク はてなブックマーク - マイクロサービス - ひとり開発日記。

もう二年前の記事ですけど。

でも、今、フツーにサービスを小規模で立ち上げようとすると、まぁ、基盤(IaaS/PaaS)は、AWSかHerokuですよね? と、するならば、やっぱ The Twelve-Factor App*1を意識しないといけない訳で、フツーにマイクロサービスになっている、と言えるのでないでしょうか?*2


なんでこんなことを書いたかというと、いま自分自身が、ここら辺のパラダイムの違いに困ってるからですよ(笑)

プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)

*1:The Twelve-Factor App (日本語訳) http://12factor.net/ja/

*2:マーチン・ファウラー氏による「マイクロサービスの前提条件」 - Publickey http://www.publickey1.jp/blog/14/post_246.html

トラックバック - http://program.g.hatena.ne.jp/halflite/20160318

2016/01/01 (Fri)

2016年に求められていること

| 2016年に求められていること - ひとり開発日記。 を含むブックマーク はてなブックマーク - 2016年に求められていること - ひとり開発日記。

2015年は、チーム開発に入っちゃったので、途中からあんま日記を書かなくなりましたね…。

以下は、中小企業/予算少ない、ちょっと硬めのドメイン領域の開発/運用改善で、これから意識しなくちゃいけないだろうなぁ、と言うところです。*1

モダンレガシー

こう言うの、多いんじゃないでしょうか。 ここら辺を、モダンに、スマートに再設計/再構築する必要がありますよね。*2

作らない開発

IaaS/PaaS/SaaSなんかは、普通に使うことになるでしょうね…。 と言うか、社内に閉じた運用ツール云々は、全部Google AppsとかAWS Lambda辺りに移行しても良いんじゃないでしょうか。

勿論、そういうクラウド/揮発性のリソースに、システム置くことを、エンジニアの思考の中心に置かなければいけないので、そういうパラダイムの変化についていけない人も出てくるかもですね…。

業務アプリUI/UX

そういう箇所に予算割けないのは、重々承知なんですが、これで、業務効率全然違ったりするので、専門家とのコネ作っておく必要あるんじゃないかな…。

*1:個人視点です

*2Seasar2サポート終わりますしね http://itpro.nikkeibp.co.jp/atcl/column/15/031800050/031800002/

トラックバック - http://program.g.hatena.ne.jp/halflite/20160101

2014/07/30 (Wed)

Virtualbox + CoreOS + Dockerと格闘中

| Virtualbox + CoreOS + Dockerと格闘中 - ひとり開発日記。 を含むブックマーク はてなブックマーク - Virtualbox + CoreOS + Dockerと格闘中 - ひとり開発日記。

基本、JavaベースのWebアプリケーション技術者なんですけど、最近ではサーバー周り、と言うか、(所謂)「仮想環境」周りを、どーにかこーにかする役回りになってきてて…。と言うか、それって(所謂)「運用SE」「ネットワークエンジニア」の仕事なんじゃね…???

まぁ、JavaベースのWebフレームワークや、ORマッパー、ビルドシステムが成熟してきて、あんま手をかけなくても、ちょろっとググれば、ベストプラクティス(っぽいようなもの)が見つかるようになったので…。 後、こう言う仮想環境周りを従来の(所謂)「運用SE」「ネットワークエンジニア」に任せても、一向に何も出来上がらんので…*1

でも、自分のPCに箱庭的にサーバー環境がコマンド一発で入ったり、更地になったりするの、すごく楽しい!!! こういう試行錯誤の末に何かが出来上がるのが、(所謂)「エンジニアリング」の醍醐味だよなぁ!!、って思い出したりも。

*1:個人の感想です。

トラックバック - http://program.g.hatena.ne.jp/halflite/20140730

2014/03/26 (Wed)

ひとりで開発しているのに、割とマジメにTDDしてる

| ひとりで開発しているのに、割とマジメにTDDしてる - ひとり開発日記。 を含むブックマーク はてなブックマーク - ひとりで開発しているのに、割とマジメにTDDしてる - ひとり開発日記。

レガシーコードとは、単にテストのないコードである

「レガシーコード改善ガイド」のススメ 第1回:レガシーコードの定義、テストの重要性とは (1/2):CodeZine(コードジン)

別に、一人で開発していると、UTテスト要らないんですよね。 アタマの中に設計全部入ってるんで。

ただ、やっぱこれだと、後でレガシー化しちゃうよねぇ、って気になったので、まずC0 100%*1を目指して*2、jUnitでテストを書きはじめました。

  • UTテストを書いていると、色々直したくなる
  • テスト容易性を考えると、どんどんシンプルな実装になっていく
  • モックフレームワークの機能にばかり詳しくなる

まぁ、特にオチは無いです。

*1:「テストを普通に実行するとどの命令も一回は動く、というのがC0で、C0くらいにはしようと。」 http://www.publickey1.jp/blog/14/cicross_2014.html

*2g:program:id:halflite:20131016:coverage

トラックバック - http://program.g.hatena.ne.jp/halflite/20140326

2014/01/07 (Tue)

自分プロジェクトでの .gitignore ファイルの記述

| 自分プロジェクトでの .gitignore ファイルの記述 - ひとり開発日記。 を含むブックマーク はてなブックマーク - 自分プロジェクトでの .gitignore ファイルの記述 - ひとり開発日記。

自分は、プロジェクトは、全てbitbucketにコミットしてます。*1 で、VCS(バージョン管理機構)に、MercurialGitが選べるのですが、Gitを選択してます(Git 対 Mercurial: なぜ Git を選ぶのか? | Atlassian Blogs)。

で、リポジトリに登録しないファイル/ディレクトリを指定しておく、 .gitignoreファイルには、以下のように記述しています。

/target
.settings/
.classpath
.project

Mavenの成果物が作られる /targetディレクトリEclipseの設定ファイル等々ですな。

後でコピペかもしれないので、ここに記述する次第です。

*1:ほぼ一人プロジェクトなので、無料でプライベートリポジトリ作り放題なのがありがたい…。

トラックバック - http://program.g.hatena.ne.jp/halflite/20140107