エラーには大抵「エラーメッセージ」が付いています。 自分は過去に、エラーメッセージの内容を雑にしてしまい後悔することがよくありました。 その経験から、良いエラーメッセージの書き方を考えました。 エラーメッセージを2つに分類する まず、エラーメッセージといっても次の2つのパターンで大きく異なってきます。 (1) ユーザーが見るエラーメッセージ (2) 開発者が見るエラーメッセージ (1) ユーザーが見るエラーメッセージ 内部実装のことは書かないようにする
はてなのアプリケーションエンジニアのid:shiba_yu36です。社内技術勉強会で「新機能作成時に開発ブランチに細かくmergeしていく戦略」という発表をしたので、資料を公開します。 speakerdeck.com 以下、簡単に文字でまとめておきます。 戦略 ユーザーに新機能が見えないようにする工夫をし、新機能のbranchもどんどん開発ブランチにmergeしていく mergeされたものは随時本番にリリースされるが、ユーザーに見えない工夫をしているので問題なし PRは可能な限り細かくする 機能が完成したら最後にユーザーに新機能を見えるようなPRを作り、mergeしてリリースする なぜこの戦略を使うのかいろんな失敗を経験して、この戦略を最近使っている。 失敗パターンその1: 巨大PRパターン 失敗パターンその2: 新機能リリースブランチパターン 失敗パターンその1: 巨大PRパターン 新機
(追記1:2016/7/11 7/7以降のブログ記事などを追加) (追記2:2016/11/24 延期発表の記事を追加) こんばんは。SE兼PM見習いです。 例のみずほ銀行の次期システム開発が話題になってますね。 blog.livedoor.jp blog.livedoor.jp 毎年この時期に、みずほ案件がグダグダだよね、という情報が出てくるのはもう恒例行事となってますが、開発工程終盤を迎えていよいよヤバイ状況が隠しきれなくなっているようです。 趣味が悪いと言われますが、デスマウォッチャーでして、特にこのみずほ銀行案件をウキウキとウォッチングしているのですが、ここでブックマークしている過去の情報を時系列に振り返ってまとめてみたいなと思います。 2002年〜合併時のシステム障害〜 次期システム案件の話に入る前に、みずほ銀行合併時の大規模システム障害に触れておく必要があります。 https:
コードレビューで土日に安寧を ソーシャルゲームは、ユーザアクセス集中と、それに伴うユーザデータ増加によって劇的に負荷が上がり、(主に土日に)サービスに影響を与えがちです。 問題があるコードは、たとえ負荷テストを行っても、作成したシナリオによっては見つけられない可能性もあります。 そういった見えない不安を払拭するという意味でも、コードレビューは重要だと思っています。 【ステキポイント】 ・ ソースを見ることにより、時限爆弾が土日に爆発するのを解除 ・ スキル共有によってメンバーがレベルアップすることにより、土日に爆発する時限爆弾の設置確率低下 まぁまとめると これに尽きます(4歳の息子談) 今は、gitのプルリクエストという強力なレビューツールもあり、敷居がかなり低くなったのでオススメです! チェックするポイントは5つ コードレビューを行うにあたり、「どんなところをチェックすればいいのか分か
課題管理/バグ管理とは、チケット駆動開発とは、概要やチケットの処理フロー、重要性、導入と運用の仕方、バージョン管理や継続的インテグレーションとの連携も含めて5分で解説します。おまけで使えるITS/BTSも6つ紹介。 0分―― ITS/BTSとは、課題管理/バグ管理とは 近年のソフトウェア開発は複雑化しており、さまざまな役割の人間が大人数かかわることも少なくありません。ソフトウェア開発を円滑に進めるためには情報の管理、共有がとても重要です。そこで活躍するのがITS/BTSです。 ITS(Issue Tracking System)、BTS(Bug Tracking System)は、それぞれ「課題管理システム」「バグ管理システム」と呼ばれますが、最近では両方の機能を併せ持つ場合も多く、ITS/BTSを明確に区別することは少なくなっています。 ITS/BTSは、簡単にいうと、課題管理、バグ管理
先日、2013/3/23(土)に弊社でチケット駆動と開発環境に関するイベントを開催しました。リンク先には資料も上がっていますので参照ください(※アトラシアン製品関連のイベントです)。 基調講演にはチケット駆動開発を推進されている関西XPUGのあきぴーさんをお招きして「チケット駆動開発をパターン言語で読み解く」という話をしていただき、最終枠ではパネルディスカッションをしました。 チケット駆動開発とウォーターフォール パネルディスカッションでは、僕が「チケット駆動開発を作業計画に使うのは難しく、WBSとの併用が現実的」と話し、あきぴーさんが「作業計画をチケット駆動開発で回していくには」というノウハウを紹介されていました。 この違いは僕がウォーターフォール的な新規案件を、あきぴーさんがアジャイル的な開発/保守運用案件を前提にしているためです。 僕自身はBTS(Bug Tracking Syste
ステップ数で評価が決まる現場では全く役に立たないテクニックではありますが、ソースコードの減らし方について紹介したいと思います。 開発Div. エンジニアのayasudaです。 2014年の夏にジョインし、会社名と同じサービス、クラウドワークス の開発に携わっています。 ご覧の通り、消したソースコードの方が多いので、ステップ数換算だとマイナスの働きしかしてませんね! 本記事では、特に Ruby on Rails の運用されているプロダクトコードにおける、ソースコードの減らし方について紹介していこうと思います。 基本的な考え方 ソースコードを減らすときの大原則は「ボーイスカウト・ルール - プログラマが知るべき97のこと」です。 普段、ソースコードを触るときに、一つでも良いので簡単な改善を入れる。これを積み重ねるのが大事です。 一度に一気に直そうとするのはあまり良くありません。大抵の場合、デグ
うちの会社が開発会社なのと会社名からちょいちょいサービス立ち上げの相談を受けます。そこでどういったサービスを立ち上げるのかなど色々お伺いしていくんですが、結構な確率でお断りすることが多いんですね。その際に 「それ、開発しないほうがいいですよ」 と伝えさせてもらってます。うちは開発会社なので、仕事として請けたほうがメリットも大きいんですが、多分結果誰も幸せにならないだろうなーと思って止めさせてもらってます。 割と同じような話を何回もさせてもらっているので、今回は改めてまとめてみたいと思います。 開発はお金がかかる まず、ここの認識を持ってもらいたいのですが、開発をはじめてしまうと非常にコストがかかるんです。今時はサービスを立ち上げる場合、ローンチして終わりではなく、継続して改善し続けないと成長しないどころか立ち上がってもきません。ですのでリーンスタートアップにも書かれているように小さく立ち上
プロダクトマネージャーには共通した悩みと、それに対する処方箋がある。 日本最大のプロダクトマネージャーコミュニティ(参加者約800名)「PMJP」。のなかで 「プロダクトマネージャーとしてキャリアを始める際にどんな本を読めばよいか」というトピックが非常に盛り上がった。 そこで、まず新米プロダクトマネージャーがまず直面する課題を4つに分類し、それに対する処方箋となるような本を他薦・自薦含め12冊ほどピックアップしてみました。 決してMECEではないが、特に関心度の高いと感じるセクションについてまとめてみます。 プロダクトマネジメントという概念は形式知としてそこまで蓄えられているものではないため、これらの本が新米プロダクトマネージャーを救うことを心より祈っています。 1 / プロダクトマネージャーの原点とは? 日本においてはプロダクトマネージャーというポストの存在自体がまだまだ認知途上。新米の
人は、新たな環境で経験を積んでいくと、少しずついろんなことが出来るようになり、そのうち、その環境では、何でも自分の思った通りに出来るようになります。 「おら、強ぇ」状態。 これは、素晴らしいことなのですが、一つ問題があります。成長が止まってしまうことです。 人は、知らないことを経験したり、つまずきを乗り越えたときに、成長します。知らないことがほとんどなくなったり、つまずくことがなくなったりすると、成長が止まってしまうのです。 Seasar2.4、S2JDBC、SAStrutsと開発してきて、通常のサーバーサイドJavaは、十分にやりきった感がありました。このままこの場所にいるのは、心地いいんだけど、成長が止まってしまうのが不安でした。 人って不思議なもので、一定の能力でとどまるってことが出来ないんだよね。成長が止まると、能力は落ちていく。 自分はどこか、ドラゴンボールの悟空に似ているところ
Windowsでテキストエディタといえば、ほとんどの人が同じものを思い浮かべるのではないだろうか。もちろん「秀丸」である。いまも多くの人がPCをセットアップするときにまずインストールするソフトウェアの1つだ。 1990年代半ばに生まれ、20年以上にわたって使われてきている。開発者の斉藤秀夫さんは秀丸があまりに売れたため、当時勤めていた大企業を退職して独立した。元祖ソフトウェアスタートアップともいうべき存在である。 そんな斉藤さんにいろいろ聞いてみた。Mac版は出ないのか? 秀丸御殿がたったのは本当? いまはスタートアップが成功しやすい? 自然体で答えてくれた斉藤さんのお話をどうぞ。 秀丸が好調で、「フェラーリに乗ってる」という噂も –「秀丸」シリーズの売上はピーク時で1億円を超え、「秀丸御殿」が建ったとか。 斉藤:Windows 95が出てきて世の中みんながWindowsを使うようになった
Gitでやらかした時に使える19個の奥義を書いてやらかしたときになんとかリカバリできるようにした。 今回は、そもそもやらかさないようにしたいよねっていうお話。 コミット編 .gitignoreを細かく指定しておく .gitignoreを指定しておけば余計なファイルをコミットしちゃうことを予防できます 過去に似たようなプロジェクトがあるのならそれを流用しましょう。 ないのであれば.gitignore.ioで生成してそれをカスタムしましょう。 ワイルドカード指定やディレクトリまるごとの指定は副作用ある可能性があるので慎重に。 コミットメッセージのフォーマットを決めておく コミットメッセージのフォーマットを決めておけば書き直したいということも減ります コミットメッセージをやらかして直したいと思うことはよくあります。 そういうのって案外コミットメッセージが自由すぎることが問題だったりします。 ある
体裁厨 「お♪ ここだけフォント違うくない? それからなんか間隔せまいし。」 用語統一厨 「"お問い合わせ"は"お問合せ"と表記することに決まってるので」 箇条書き過剰 「箇条書きにして。その方が分かりやすいよ。」 物忘れ激しい系 「こここんな仕様だっけ? え、設計書に書いてる? 作成者だれ? オレ? 決めた覚え無いけどなぁ…」 レアケース厨 「UUID? 100%衝突しないと言えない? じゃあダメじゃん。」 ショートカット厨 「Ctrl + Shift + T、Ctrl + Shift + T。あぁそれやるならCtrl + Shift + Rだ。」 遅れてくる系 「なんかここおかしくない? えっもう指摘された? ごめん、もう一回ちょっと説明して」 指摘曖昧系 「なんか分かりにくいなぁ。色付けたりするとかあんじゃん?」 寂しがり 「ちょっとなんか寂しいな。ここ説明書き足したら。いやこれだけ
最近開発で利用している、デプロイをチャット経由で行うフローについて説明します。 要点 開発者はmasterブランチで開発する 開発者はデプロイしたいときにBotにお願いする Botはmasterブランチからproductionブランチに対してPull Requestをつくる 開発者はPull Requestを確認してmergeする CIはproductionブランチが変更されるとサーバにデプロイする ChatOps masterブランチからproductionブランチにPull Requestを出す作業は面倒なので、チャット経由で行っています。Heroku上で動かしたRubotyにruboty-githubとruboty-aliasというプラグインを入れて、「デプロイしたい」と発言するとPull Requestを作成するように設定しています。チャット経由で物事を行うようにすると、周知や教育
・2023年03月 (1) ・2023年02月 (1) ・2023年01月 (2) ・2022年12月 (1) ・2022年11月 (3) ・2022年10月 (1) ・2022年09月 (1) ・2022年08月 (1) ・2022年07月 (1) ・2022年05月 (2) ・2022年04月 (1) ・2022年03月 (1) ・2022年02月 (1) ・2022年01月 (1) ・2021年10月 (1) ・2021年08月 (1) ・2021年07月 (2) ・2021年05月 (1) ・2021年04月 (1) ・2021年03月 (1) ・2021年02月 (1) ・2021年01月 (1) ・2020年12月 (1) ・2020年11月 (1) ・2020年10月 (1) ・2020年09月 (1) ・2020年08月 (2) ・2020年06月 (2) ・2020年04
最近タスクがどのくらいで終わるか見積もることが多いんだけど、そのたびにうまく見積もりができてなかったり、思ったより長引いてしまってすごく忙しくなってしまったり、といったことが何度かあった。このままじゃ良くないなーと思って、「アジャイルな見積りと計画づくり」を読んだ。 アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~ 作者:Mike Cohn,マイク コーン毎日コミュニケーションズAmazon 実際読んでみると今の状況に非常にぴったりで良い本だった。この本を読んでいくと、最初から正確な見積りをするのは不可能で、作業をしながら見積りの精度をあげるといったり、変更やリスクに強いスケジュールをうまく作るということをしていく必要があるということが分かる。なんとなく自分がタスク管理をしないといけなくなったけど、なんかうまくいかないと思っている人には非常に参考になると思う。あと
Selenium automates browsers. That's it!What you do with that power is entirely up to you. Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should) also be automated as well. Selenium WebDriver If you want to create robust, browser-based regression automation suites and tests, scale and di
みずほ銀行が2016年春をめどに計画していたシステム統合が、1年程度遅れる見通しとなったことが27日わかった。みずほグループは、11年3月の東日本大震災後のシステム障害を機にグループ銀行を再編し、古いシステムの刷新を進めてきたが、開発に手間がかかっているためだ。 新システムが障害を起こすことがないよう慎重に開発を進めた結果、想定以上に時間がかかっているという。開発費は2500億~3千億円と見込んでいたが、数百億円規模でふくらむ可能性がある。富士通など大手電機メーカーなどが開発している。 みずほはシステム統合で事務を効率化し、新たな金融サービスを展開する計画を立てていた。こうした計画も修正を余儀なくされ、収益に影響が出かねない。
渡辺です。さる方面からテスト系のエントリーがまだか…と催促されたので、ユニットテストについて少し考えてみたいと思います。 最近、TwitterのTLをチェックしていると、JUnitを利用しているにも関わらず違和感のあるTweetや、原因をJUnitにして本来解決すべき問題から目をそらしているようなTweetを多く見かけます。そこで、JUnitをによるユニットテストに関するありがちな勘違いをまとめてみました。 なお、JUnitの部分は、RSpecでもNUnitでも適当に置き換えて読んでも構いません。 1.JUnitを使うことが目的という勘違い JUnitを利用すること自体を目的にしたところで何も得る事はありません。 ありがちな話ですが、「納品物としてJUnitのテストコード(または実行結果)を求められている」ことが理由でJUnitを利用しているならば、それは足かせでしかない可能性があります。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く