タグ

開発に関するdshimのブックマーク (22)

  • 技術者育成の現場 - 伝説の講義

    このエントリーは『DevLOVE Advent Calendar 2013 「現場」』、44日目の勝又さんに引き続き45日目の記事です。 来のアドベントカレンダーは、12/1に開始して12/24が最終日だそうで、そういう節目の日に担当できるのがちょっと嬉しかったりします。 (ええ…いくら世の中が浮かれていようが、現場はそこにあり続けるんですよ) 自己紹介 yokatsuki(よかつき)です。外資系ベンダーで自社製品の技術トレーナーをかれこれ10年近く担当しています。その他の業務経験としては、福岡の支社でプリセールスエンジニアを4年程やっていたり、更に昔には社内システムの開発運用をやっていたりしていました。 自分にとっての現場 トレーナーにとっての現場とは、講習を実施する教室と考えるのが一般的だと思います。確かに教室で過ごす時間は1日あたり7時間で、それが3~5日続くのですから。 しかし、

    技術者育成の現場 - 伝説の講義
  • 検収

    納入品が要求仕様に合っているかの検査のこと。システム開発においては、納品されたシステムの動作を検証し、仕様を満たしているかどうかを判定する作業を指す。検収が済むと、受注者に費用を支払うことになる。現在、システムを内部だけで開発しているユーザー企業はほとんどない。開発の全部または一部を外部に委託するのが一般的だ。元請けベンダーが下請けに開発を再委託することも多い。外部企業との契約機会が増えるにつれて、検収の重要性はますます高くなっている。 検収は受注者から発注者へ責任が移る分岐点である。検収後に瑕疵(かし)による問題が発覚した場合、あらかじめ定めておいた保証期間内なら、ベンダーが修正作業を行うという契約が多いが、その期間が過ぎれば追加費用を支払わなければならない。発注者は、念入りにシステムの品質や機能をチェックする必要がある。 そのためには、発注者が落ち着いて検収を実施できる環境を整えること

    検収
  • 開発をうまく回したいなと思って僕が意識している40くらいのこと - Mitsuyuki.Shiiba

    自分がこの1年間開発チームを引っ張ってきた中でこういうところに気をつけてたよってこと。 ザーッと勢いで書いてみる。分類はある程度なもんです。組織パターンやFearlessChangeは好きです。 心構え 1 現状を受け入れる 環境に文句を言ってても、何も変わんないし。自分は当はもっとできるはずなんだ、って言ってても、実際アウトプットはでてないんやろ。なるほど、今はこうなんだってことを受け止めて、じゃあそこからどう改善していけるだろう?と考えたい。 2 遷移状態を受け入れる 現状から、理想的な状態にぴょんって飛び移れるわけじゃないんだから、その途中って泥臭かったりごちゃごちゃしてたりするんだけど、それを受け入れる。練習せずにいきなりスポーツがうまくなるわけないのと同じで。 3 正しいことが選ばれるわけじゃない 政治や感情や時期や思惑や抵抗や。そういうのがあるので「正しいこと」が常に選ばれる

    開発をうまく回したいなと思って僕が意識している40くらいのこと - Mitsuyuki.Shiiba
  • 受託開発とサービス開発を同じメンバーが担うことへの挑戦

    パソナテック Find Your Ability 講演資料 「ディレクターにとってのWeb業界って? 」naoki ando

    受託開発とサービス開発を同じメンバーが担うことへの挑戦
  • git による分散作業パターン | GREE Engineering

    分散バージョン管理を華麗に扱いたい堀口です。 GREE Advent calendar 2013 の 14 日目として参加させていただきます。 お二人に続き Haskell の話をしようかと思ったのですが、急遽無難な開発の話に変更しました :o JavaC++ には OOP の概念が必要であったように、分散作業の認識が薄いまま git や Mercurial を使うことは長期的に不幸をもたらします。 とあるプロジェクトにて、その一部を副産物のミドルウェアとして抽出すべく、アプリケーションと分離したい 不具合があったので原因を探りたいが、依存関係が複雑すぎるのでコードを読む量を減らしたい テストやレビュー、提案、リファクタの運用を強化したい よそのプロジェクトに迷惑を掛けないように、そこのツールを改良して使いたい。 いままで何気なく「こんなもんだろう」と思って手間をかけていませんでした

    git による分散作業パターン | GREE Engineering
  • Webサービス開発現場から / 近頃の開発のやり方 ・・・ Github と Pull Request とコードレビュー - naoyaのはてなダイアリー

    先日プレスリリースが出たのですが、KAIZEN platform という会社で技術顧問などをやっています。それから、一昨日自分も出たWebアプリケーション開発に関する勉強会 (資料) を開いたじげんという会社でも少し前から同じように顧問のような形で携わっています。 自分が関わっている会社のPRも含めて、すこし、2013年現在のWebサービス開発の現場感、やり方みたいなものを書いてみたいと思う。ただ、自分の利益があるところの話だけではフェアではないので、Webエンジニアならよく知っているであろう Qiita を運営しているインクリメンツの様子も合わせて紹介する。 KAIZEN platform KAIZEN platform が提供しているサービスは planBCD という A/B テストの SaaS で、Webサイトのコンバージョンだとかを画面の構成要素を変えて効果測定したいとか、そういう

    Webサービス開発現場から / 近頃の開発のやり方 ・・・ Github と Pull Request とコードレビュー - naoyaのはてなダイアリー
    dshim
    dshim 2013/10/26
    devops向けのいろんなサービスで知らないのがいっぱいあった…
  • 「GitHubでつくる、たのしい開発現場」YAPC:ASIA Tokyo2013 | Act as Professional

    YAPC::ASIA Tokyo 2013(2日目)で「GitHubでつくる、たのしい開発現場」というトークをしてきました。 まず、利用した資料を公開します。 伝えたいことコードレビューを習慣化させたいのであれば、GitHubは最適なツールです。 コードレビューを習慣化させたい コードは書いた人以外の目にふれさせるべきと考えている人には特にオススメのツールです。 ですが、GitHubはあくまでツールです。このツールを利用することで、コードレビューの機会や良いコードを書くためのノウハウを学習する機会を生み出すことができます。 その結果、人やチームが行動を起こすことでチームが成長したり、結果として良いソフトウェアができていくはずです。 レビューをすると増えるコスト、減るコストレビューはすべきだけど、現在レビューを習慣化できていないチームにとって、新たにコードレビューをしていくのは単に時間的なコ

    「GitHubでつくる、たのしい開発現場」YAPC:ASIA Tokyo2013 | Act as Professional
  • 僕はプログラマーです。

    僕はプログラマーです。 でも僕のMacBookProには何故かAdobeのソフトウェアが入っています。 iPhoneアプリのデザインをするわけではありません。 デザイナーの人がデザインファイルを.psdや.aiや.fw.pngのまま当然の様に投げて来るからです。 僕はAdobeのソフトウェアに精通しているわけではありません。 ですので複雑なレイヤー構造のファイルを切り出すのにはかなり時間を要します。 でもレイヤー構造の説明をしてくれるデザイナーの人は殆ど居ません。 デザイナー同士だとその複雑な構造でもやり取り出来るのかも知れませんが、僕には大抵よく分かりません。 例えば、Photoshopのエフェクトレイヤーが掛かっているボタンはボタンだけ切り出す時に凄く苦労します。 例えば、薄くシャドーが掛かってるデザインは素敵な質感を表現出来るかもしれませんが説明してもらわないとどこまで切り出したら良

    僕はプログラマーです。
    dshim
    dshim 2013/09/10
  • 伊藤直也氏が語る、モバイルアプリケーション開発のいまとこれから(前編)~Salesforce Developer Conference Tokyo 2013

    伊藤直也氏が語る、モバイルアプリケーション開発のいまとこれから(前編)~Salesforce Developer Conference Tokyo 2013 いま多くの開発者が取り組もうとしているモバイルアプリケーションの開発は、経験の面でも技術の面でも、コンシューマ向けの開発現場が大きく先行しています。 9月6日開催されたSalesforce Developer Conference Tokyo 2013のセッション「B2Cからみたモバイルアプリケーション開発のいまとこれから」では、コンシューマ向けサービス開発の現場に身を置いてきた伊藤直也氏が、モバイルアプリケーション開発を成功させるための方法を、これまでの経験や現在の開発現場で得たノウハウなどを基に語っています。 試行錯誤の回数を増やす、iOSとAndroidは同じように作ってはいけないなど、モバイルアプリケーション開発に関わるエンジ

    伊藤直也氏が語る、モバイルアプリケーション開発のいまとこれから(前編)~Salesforce Developer Conference Tokyo 2013
  • なぜリリース頻度を上げるのか

    サービスのリリースで書いたようにネットのサービスを提供している企業は新バージョンのリリースの頻度を上げるよう常に努力しています。 リリースの頻度を上げる理由は、サービス開発の方向の軌道修正を細かく行いたいからです。少しずつサービスを改良し、その改良がユーザーにどのように受け入れられたかという反応を元に将来の開発を行っていきます。このフィードバックサイクルを短くすることによりこまめな軌道修正が可能になります。 リリース頻度が低く、リリースサイクルが長いと、その期間に加えられた変更の数が多くなり それぞれのリリースでの変更量が大きくなります。変更が多い分、リリース後の不具合発生の可能性が高くなります。また、リリース後の障害発生時の問題の切り分けも難しくなります。小さなリリースを頻繁に行うことにより、一歩一歩問題がないことを確認して次の一歩を踏み出すように、よりリスクの少ないリリースが可能になり

    dshim
    dshim 2013/09/07
  • MVCとRailsの基本構成を学ぼう

    Web開発フレームワークとして人気の高いRuby on Railsの最新版、バージョン3を使ってWebアプリ開発の基を学びます。 人気のフレームワークでWeb開発を学ぶ Ruby on Railsは、いまやWebアプリケーションの開発フレームワークの有力な選択肢の1つとなっています。Ruby以外の言語のWebアプリケーションフレームワークも少なからずRailsの影響を受けているので、現在Rubyを使っていないエンジニアにとっても、Railsを知ることは大いに参考になるはずです。もうすぐRails3認定試験が格的に開始されるということもあり、この連載では、試験範囲の流れに沿って、Railsの基礎についてご紹介していきます(ただし、必ずしも試験対策というわけではありません)。 今回、連載第1回として記事では、Railsを理解する上で基となる考え方であるMVCについて説明した後、Rail

    MVCとRailsの基本構成を学ぼう
  • 開発者がアプリのアイデアをヒラメクための22箇条まとめ

    「アプリやサービスを開発する技術はあるが、アイデアが出ない」という開発者たちのために、@ITで掲載したアイデアの発想につながる記事から抽出して22箇条としてまとめた。 ヒラメキを、すぐ形にできる開発者だからこそ これまで、@ITでは多くのアプリコンテストを行ってきた。そこで、いつも課題となるのは、「アプリやサービスを開発する技術はあるが、アイデアが出ない」という開発者たちの悩みだ。しかし、当にそうなのだろうか。 開発者の方がより良いアイデアを思い付くことがあるのでは、ないだろうか。なぜなら、何気ないヒラメキを、すぐに形にできることは重要なことだからだ。 例えば、ライフレシピ共有サイト「nanapi」のロケットスタート 代表取締役 古川健介氏へのインタビュー記事「伝えることを考え抜く『nanapi』のUIデザイン」(2011年6月29日、聞き手ホシナ カズキ氏)を引用しよう。 デザインに限

    開発者がアプリのアイデアをヒラメクための22箇条まとめ
  • 継続的インテグレーションを始めるための基礎知識

    継続的インテグレーションを始めるための基礎知識:グリーはいかにしてJenkinsを導入したのか(1)(1/2 ページ) 連載では、グリーのサービス開発において導入している継続的インテグレーション(Continuous Integration、以下、CI)と、CIツールであるJenkinsの導入について3回に分けて説明します。Jenkinsのインストールといった“手順”よりも、CI導入の“モチベーション”や“進め方のポイント”を中心に説明します。 グリーの開発と継続的インテグレーション SNSやソーシャルゲームなどを運営するグリーでは、数百名の技術者が日々さまざまな機能やサービスを開発し、リリースしています。このような規模、リリース頻度での開発を支えるには数多くの工夫や仕組みが必要です。この中でも最も大きな仕組みの1つにCIが挙げられます。 グリーでは、開発にCIを格的に導入し始めたのは

    継続的インテグレーションを始めるための基礎知識
  • 「Obama For America」の開発チームが作り上げた大規模な選挙キャンペーンシステムの舞台裏(前編)

    でも選挙活動にインターネットを利用するという議論が始まっていますが、世界でもっとも大規模にインターネットを利用して選挙活動が行われたのが、昨年の米大統領選挙です。 その選挙戦を勝ち抜いたオバマ大統領のチーム「Obama for America」が、どのような選挙キャンペーンシステムを構築したのか。3月15日に都内で行われたAmazonクラウドのイベント「JAWS DAYS 2013」で、語られました。 そこでは、過去の選挙データやソーシャルメディアなどを元に有権者の動向を徹底的に分析し、テレビCMの打ち方からボランティアの働き方まであらゆるものを最適化する大規模なシステムをいかに構築したのか。そして、大規模システムでクラウドを活用するとはどういうことか、ということを学ぶ絶好のサンプルになっています。 国内でこのシステムの舞台裏がこれほど詳しく紹介されることは初めてのはずです。講演の内容

    「Obama For America」の開発チームが作り上げた大規模な選挙キャンペーンシステムの舞台裏(前編)
  • 残念なソフトウェア開発の現場は、沈みかけの巨大な船に乗った航海に似ている。

    残念なソフトウェア開発の現場は、沈みかけの巨大な船に乗った航海に似ている。 船底の穴からの浸水を必死でかき出しながら、どうにか進んで行く。そういう航海だ。 船のどこにどれだけ浸水箇所があるのかは分からない。 ある穴を塞ごうと船底に板を打ち付けたら、 それによって別の場所に新しい穴を空けてしまったりする。 船の構造はあまりに複雑で、膨大な部品の間にどんな依存関係や相互作用があるのか、 誰も完全には把握していない。 それは、はるか昔に組み立てられた太古の船で、 構造把握の手掛かりは、代々伝わる不十分で不正確な古文書だけなのだ。 新任の船員は、出た水に対してとにかく手当たり次第に対処した。 どんな物でも使い、徹夜で穴を塞いで回った。 ひたすら大きな声で号令を出し、 いかに早く穴を塞ぐかが、船員の間で競われた。 何人もの船員が過労と心労で倒れ、 航跡には水葬者が点々と残された。 船員たちが経験を積

    残念なソフトウェア開発の現場は、沈みかけの巨大な船に乗った航海に似ている。
  • 開発サーバに chef を入れるときの 11の方法 - Hack like a rolling stone

    タイトルは釣りです。11個もやり方をしらないまま書き始めます。 最近 chef が流行っていますが、みなさんどうやって各サーバに chef をインストールしていますか? ここでは僕がいままで紆余曲折していた方法を紹介します。 列挙だけするとこんな感じです。 vagrant の VM イメージに入っているもの omnibus installer を使う knife solo を使う OS の ruby 環境に chef を入れる RVM 環境を作って chef を入れる rbenv 環境を作って chef を入れる roundsman を使って chef を入れる vagrant の VM イメージに入っているもの vagrant の VM イメージには、大抵 ruby と chef がインストールされています。 veewee を使ってあたらしい VM イメージを作成すると必ずインストールさ

    開発サーバに chef を入れるときの 11の方法 - Hack like a rolling stone
  • 自分が働きたい会社をつくれ

  • Ruby標準添付ライブラリcsvのCSV.tableメソッドが最強な件について

    ─ 問題1 ─ data.csvファイルには、5人のプレイヤー(Alice, Bob, Jimmy, Kent, Ross)が二種類のゲーム(gameA, gameB)をプレイした結果が次のような形で格納されている。各ゲームの平均点を求めよ。 data.csv player,gameA,gameB Alice,84.0,79.5 Bob,20.0,56.5 Jimmy,80.0,31.0 Kent,90.5,15.5 Ross,68.0,33.0 data = File.read('data.csv') headers, *scores = data.lines.map { |line| line.chomp.split(',') } scores # => [["Alice", "84.0", "79.5"], ["Bob", "20.0", "56.5"], ["Jimmy", "80

  • Xcode 4 でデフォルトになった LLVM って何?

    こんにちは。開発担当の金内です。 Xcode 4 は UI もすっかり変わりましたが、ビルドの要であるコンパイラもデフォルトが変更されています。その新しいコンパイラのキーワードが「LLVM」です。いまいち聞き慣れない方もいると思うので、今回はその LLVM について簡単にご紹介します。 ざっくりとした結論から言ってしまえば、Xcode における LLVM は従来のデフォルトコンパイラである GCC を置き換えるものです。LLVM には次のような特徴があります。 ・コンパイルが速い ・コンパイルされたコードが速い ・エラーメッセージがわかりやすい ・他のツールと連携しやすい いいことばかりですね。 しかし、コンパイラは要となる重要なコンポーネントなので、互換性などへの配慮から、Apple は GCC からの移行を少しずつ段階的に進めています。 実際、Xcode 4.0 でのデフォルトは完全に

    Xcode 4 でデフォルトになった LLVM って何?
  • 身につけておきたいWebサイト高速化テクニック #1|アジェンダ編 | DevelopersIO

    Webサイトの表示高速化対策していますか? 日は欧米諸国に比べWebサイトの表示高速化対策をしているサイトが少ないです。 特に、最近ではスマートフォンの普及によりモバイルサイトの需要も増え、高速化をしなければいけない機会も増えてるのかなと思います。 日のモバイルデータ通信はLTEで高速になりつつあるとは言え、まだまだ「貧弱!貧弱ゥ!」です。 幸いなことに僕も最近鶴の一声によってクライアントからサーバー周りまで包括的な高速化対策を経験する機会を得ることができました。 それまでは、「手間がかかりすぎるからできればやりたくない」というのが音でした。職務怠慢ですね(苦笑)。 でも、できるだけ楽したい!と思うのが人の常。 この連載ではできるだけ楽をしながらできる高速化手法と計測結果を1つ1つ紹介しようと思います。 基的にはすべて受け売りの内容です。やってみた対策を羅列して、連載の中で自分で試

    身につけておきたいWebサイト高速化テクニック #1|アジェンダ編 | DevelopersIO