タグ

ブックマーク / gihyo.jp (52)

  • 第8回(最終回) 定型作業を自動化するConsul Template | gihyo.jp

    Consul Template これまでの連載の応用として、最後にConsul Templateをご紹介します。SerfやConsulを使えば、複数台のサーバやLinuxコンテナ上で、様々な処理を同時に行うことができます(イベントハンドラ機能⁠)⁠。実行は任意のタイミングで行えるだけでなく、ノードの増減やサービスの増減に応じて自動的に実行できることが特徴です。 自動実行は、増減のタイミングでコマンドを実行するだけでなく、管理用のファイルやロードバランサ等の設定ファイルを書き換えにも利用できます。通常は、設定を書き換えるためのスクリプトやプログラムを準備する必要がありました。 この設定ファイルの自動書き換えに特化したプログラムがConsul Templateです。その名前の通り、Consulクラスタと連携します。あらかじめテンプレート元になるファイルを用意しておくことで、Consul上でのノ

    第8回(最終回) 定型作業を自動化するConsul Template | gihyo.jp
  • 第5回 蓑輪太郎―Twitter本社で働くエンジニアのキャリア | gihyo.jp

    先を歩むエンジニアへのインタビューを通してエンジニアのキャリアについて考える連載、今回はゼロからOSやScheme処理系を作り、現在はTwitter社で働く凄腕エンジニアのhigeponこと蓑輪太郎さんにお話をお伺いしました。 [撮影:平野正樹] 危機感を感じた1社目 ─⁠─higeponさんはいつもさまざまなことを勉強なさっていますが、いつごろから自ら技術を学び始めたのでしょうか? higepon(以下ひ⁠)⁠:2001年に入った初めての会社が大きいSI系で、技術に長けたチームに入れてもらえました。そこではモデルケースになるような優秀な先輩がいて、たとえばトラブルが起きたときに、自分で率先して原因を解明して、周りにも的確に指示を伝えていて問題を解決していたんですよ。その先輩から「しっかりプログラミングを勉強しないとまずいよ」と言われたんですよね。それで自分で実際に勉強をし始めたら、今

    第5回 蓑輪太郎―Twitter本社で働くエンジニアのキャリア | gihyo.jp
    takatoshiono
    takatoshiono 2016/06/24
    限られた時間をどう使うか、のところ参考になる
  • 第10回 ジョブキューで後回し大作戦―TheSchwartz、Qudo、Q4M(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはnekokakさんこと小林篤さんで、テーマは「ジョブキューで後回し大作戦」です。 ジョブキューとは 一時代前は時間のかかる処理もすべてWebアプリケーションで行っていましたが、最近ではいろいろな部分で処理の非同期化が行われるようになってきました。たとえばWebのインタフェース側ではAjaxがその最たるものでしょう。アプリケーションのバックグラウンド側でも今回のテーマであるジョブキューと呼ばれるしくみが多く利用されるようになりました。ジョブキューを賢く上手に利用することで、ユーザにストレスを与えることなく、またサーバのリソースも有効に使えるようになります。 ジョブキューは延々と動き続けるバッチ処理、というイメージが最もわかりやすいでしょう。通常のバッチ処理であればcrondを利用し、一定周期でプログラムを起動して

    第10回 ジョブキューで後回し大作戦―TheSchwartz、Qudo、Q4M(1) | gihyo.jp
  • 第18回 プロジェクトにおけるアーキテクトの役割 | gihyo.jp

    アジャイルな開発でデスマーチは回避できるのか この業界には「デスマーチ」という言葉がある。現実的ではない開発スケジュールを設定してエンジニアに過酷な労働を強い、その結果生産されるコードの品質が落ち、次々に発生するバグのためにますます過酷な状態に陥るプロジェクトのことを指す。 デスマーチの根の原因は、プロジェクトマネジメントにある。現実的ではないスケジューリング、エンジニアの生産効率への過信、過酷な労働環境、非効率な開発環境、ラストスパート型の開発スタイル、などである。 特に日IT企業における「元請けが受注、実際の開発は下請け」というゼネコンウォーターフォール型のプロジェクトにおいて、実際にコードを書かないアーキテクトが机上で設計をするという悪習慣がある。これが、設計時(もしくは計画時)の見積りと実際の開発期間に大きなズレを生じさせ、下請け企業に過酷な労働環境を強いる原因の一つにもなっ

    第18回 プロジェクトにおけるアーキテクトの役割 | gihyo.jp
    takatoshiono
    takatoshiono 2014/11/21
    アーキテクト
  • 第2回 User ScriptsとContent Scripts | gihyo.jp

    こんにちは、株式会社ALBERTの太田です。今回はGoogle ChromeのUser ScriptsとContent Scriptsについて、その仕様とGreasemonkeyとの違いを中心に、実際のスクリプトの書き方を交えて解説します。 ユーザースクリプトとは User Scriptsとは、Google Chrome版のGreasemonkey(ただし、後述の通り互換性はあまり高くありません)です。そもそもGreasemonkeyとは任意のページで任意のJavaScriptを実行し、そのページに機能を追加したり、(⁠自分にとって)不要なものを取り除いたり、異なるサービスとの連携をしたり、といったことをJavaScriptファイルひとつで実現できるようにするFirefoxのAdd-onです。その手軽さと、それに見合わぬ強力なカスタマイズ性能から高い人気を得ています。 しかし、Grease

    第2回 User ScriptsとContent Scripts | gihyo.jp
    takatoshiono
    takatoshiono 2014/10/02
    だいたい把握した
  • 小飼弾のアルファギークに逢いたい♥:#8 達人プログラマー Dave Thomas(中編) 『達人プログラマー』をもし手直しするとしたら?|gihyo.jp

    『達人プログラマー』『プログラミングRuby』などの著書で知られるDave Thomas氏との対談。今回はその中編です。 編集部注) 対談は2007年6月に行われたものです。 原則」はいかに生まれたか 弾:『達人プログラマー』にはいろいろな普遍的な原則が出てきますが、それらの原則はどこから得たのでしょう? Dave:失敗から(笑⁠)⁠。いろんな痛い目に遭ってきました。我々としてはこういうことは繰り返したくない。だから、新しいことは書いてないけれども、そういった知見を結晶化させてみたわけです。 弾:ちなみに、『⁠達人プログラマー』の共著者でもあるAndy Huntさんと仕事上の役割分担はどうされているんですか? Dave:それはもう状況によって違います(笑⁠)⁠。どちらかというと自分がシステムのバックエンドや、Webサイトのことをやって、Andyがプロダクションのほうをやっているんですけど

    小飼弾のアルファギークに逢いたい♥:#8 達人プログラマー Dave Thomas(中編) 『達人プログラマー』をもし手直しするとしたら?|gihyo.jp
  • #22 Gitメンテナ 濱野 純 | gihyo.jp

    今回のゲストは、分散バージョン管理システムGitのメンテナで『入門Git』(⁠注1)の著者、濱野純さんです。Linuxカーネルの開発者、Linus Torvaldsさんから引き継いでGitのメンテナになった経緯から、対談スタートです。 (撮影:武田康宏) Gitに関わった経緯 弾:Gitに関わったきっかけは? 濱:2005年の4月にLinuxカーネルのバージョン管理システムとして使われていたBitKeeperが使えなくなる[2]からということで、Linus君がいろいろありものを探したんだけど、使えるものがなくて、誰かがいいのを作ってくれるまでのつなぎというつもりで、とりあえず自分でもコードを書いた、というアナウンスをしました。それをカーネルメーリングリスト(ML)で見ていたんですが、たまたまボクの業がプロジェクトプロジェクトの合間だったんです。なんかおもしろそうなこと始まってるじゃん、

    #22 Gitメンテナ 濱野 純 | gihyo.jp
  • 第5回 コードリーディングについて | gihyo.jp

    はじめに 「プログラミングに関する雑多な事柄」がテーマの連載、第5回の今回はソースコードを読むこと、「⁠コードリーディング」について取り上げたいと思います。 なぜコードリーディング? 他人のコードを読む場面には、いくつかのパターンがあると考えられます。 チームで開発しているときに、ほかのメンバーが書いたコードをレビューしたり、理解するために読む ライブラリの動作のしくみや設計などのテクニックを勉強するために読む 「こういう処理をするにはどうすれば良いんだろう?」と参考にするために、類似のプロジェクトのコードを読む オープンソースのライブラリを使おうと思ったらドキュメントがないのでソースコードを読む オープンソースのプログラムを使っていたらバグっていたのでデバッグのためにコードを読む 上の3つは、コードを読んで理解しよう、勉強しよう、参考にしようといった、積極的なコードリーディングであるの

    第5回 コードリーディングについて | gihyo.jp
  • 第18回 ロジスティック回帰:機械学習 はじめよう|gihyo.jp … 技術評論社

    前回までに、分類問題のモデルの一つ「パーセプトロン」を紹介して、その実装を行いました。 パーセプトロンはとてもシンプルでわかりやすいモデルでしたが、「⁠線形分離可能」なデータにしか適用できないという難点がありましたね。 今回は線形分離できないデータにも適用できる分類モデルとして、「⁠ロジスティック回帰」を紹介します。 予測の信頼度 分類器を使って、実際の問題を解くときのことを考えてみます。例えば「メールのスパムフィルタ」などが想像しやすいでしょう。 一般的にスパムフィルタでは、データであるメールを「スパム(迷惑メール⁠)⁠」と「スパムではない(通常のメール⁠)⁠」のどちらかに分類します。そこで、ちょうどパーセプトロンのような2値分類器を使えば無事解決……とは、なかなかいきません。 スパムフィルタを通り抜けてしまった迷惑メールを一つ一つ消す、反対に必要なメールが間違ってスパムと判定されてしま

    第18回 ロジスティック回帰:機械学習 はじめよう|gihyo.jp … 技術評論社
    takatoshiono
    takatoshiono 2013/02/13
    なんか面白そうな話 / 機械学習 はじめよう:第18回 ロジスティック回帰 #gihyojp http://t.co/BV4k4wkm
  • 第16回 Perl内部構造の深遠に迫る(2) | gihyo.jp

    前回の(1)はこちらから。 文字化け問題 ─⁠─ Perlの文字列の実装に迫る 次のテーマは文字列です。文字化けは、プログラマの意図したエンコーディングと実際のエンコーディングが異なるときに起きる現象で、どんなプログラミング言語でも問題になります。ただPerlではv5.8.0以降、さらにテキスト文字列という概念ができたため、プログラマの意図をコードに落とす際に少し工夫が必要です。この概念を正しく理解していないと、エンコーディングが正しく見えるときでも文字化けが起きることがあるのです。そこで節では、文字化けをデバッグするという目的のもと、perlの文字列の実装に迫ります。 まず、よくある文字化けを再現するコードがリスト7です。CPANモジュールのEncode::Locale[6]をインストールしておいてください。また、ファイルはUTF-8で保存してください。 リスト7 hello-moji

    第16回 Perl内部構造の深遠に迫る(2) | gihyo.jp
    takatoshiono
    takatoshiono 2012/12/21
    とてもよい記事。 / Perl Hackers Hub:第16回 Perl内部構造の深遠に迫る(2) #gihyojp http://t.co/ZqUnMFym
  • 第40回 プロジェクト管理の課題をアジャイルで解決 | gihyo.jp

    効率的にプロジェクトを管理、またソフトウェアの開発を進めるため、サイバーエージェントではスクラム開発の導入を進めています。今回は、サイバーエージェント社内でアジャイル開発に率先して取り組む、アメーバ事業部 メディアクリエイティブDiv スマートフォンコミュニティグループの寺隆彦氏と、同スマートフォンコミュニティグループの渡辺雄作氏にお話を伺いました。 サイバーエージェントが抱えるプロジェクト管理の課題 現在サイバーエージェントが進めるプロジェクトの1つに、スマートフォン向けプラットフォーム事業である「デカグラフ」があります。これは多数の外部サービスのアカウントを利用できる「コネクト⁠」⁠、ユーザ同士がコミュニケーションするための場を多数提供する「コミュニティプラットフォーム⁠」⁠、そして外部のゲーム会社によるコンテンツ配信を可能にする「ゲームのオープン化」の3つのキーワードを軸に進めら

    takatoshiono
    takatoshiono 2012/10/24
    『進捗状況が数 値として見えるのでブレをなくせるんですね。』 サイバーエージェントを支える技術者たち:第40回 プロジェクト管理の課題をアジャイルで解決 #gihyojp http://t.co/3jvHfKAb
  • 第35回 新卒エンジニアの成長を促す育成プログラムの秘密とは?[前編] | gihyo.jp

    中途採用のみでなく、新卒採用にも積極的なサイバーエージェントでは、アプリケーションやサービスの開発に必要な基礎知識の習得、そしてエンジニアとしてのスキルアップのために、充実した研修プログラムを用意しています。今回は、具体的にどういった研修が行われるのかについて、アメーバ事業部 経営部局 技術人事グループ 齊藤将城氏にお話を伺いました。 エンジニアの基礎を短期間で習得、PCのしくみを学べる自作講座も 「21世紀を代表する会社を創る」という壮大なビジョンを掲げるサイバーエージェントにおいて、重要な取り組みの1つとなっているのがエンジニアの育成です。今年、エンジニア職で80名、クリエイティブ職で30名を新卒で採用、来年以降も同程度の人数の採用を考えているという同社では、彼らが少しでも早く実際の現場で活躍できるように、育成のためのさまざまな施策を展開しています。実際にどういった施策が行われるの

  • 第一弾「GMO Yours」、6月17日にオープン――世界一の福利厚生を目指したプロジェクト始動 | gihyo.jp

    第一弾「GMO Yours」、6月17日にオープン――世界一の福利厚生を目指したプロジェクト始動 GMOインターネットグループ株式会社は、世界一の福利厚生、そこから生まれる世界一のサービスを目指すべく、福利厚生の大幅な拡充プロジェクトをスタートしました。今回、正式オープンに先駆けて記者向けお披露目会が開催されました。ここではその模様をお届けします。 社員が考えた、社員のための設備 今回のプロジェクト推進にあたり、同社代表取締役会長兼社長の熊谷正寿氏は、冒頭の挨拶にて「GMOは創業以来“⁠スピリットベンチャー⁠”宣言をしています。その中の1つに“⁠スタッフは家族である⁠”という考え方があります。その考え方に基づき、世界一のサービスを提供するためには“⁠世界一の福利厚生を提供すること⁠”が大切と考え、今回のプロジェクトが始動しました」と述べました。 「優秀な人材が集まり家族のような関係を作りな

    第一弾「GMO Yours」、6月17日にオープン――世界一の福利厚生を目指したプロジェクト始動 | gihyo.jp
  • 第9回 NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 | gihyo.jp

    Webクリエイティブ職の学び場研究 第9回NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 NHN Japanといえば、「⁠ハンゲーム」「⁠NAVER」「⁠livedoor」を展開する国内最大手のインターネット企業。2012年1月1日には、ネイバージャパン、ライブドアと経営統合し、今後さらなるパワーアップが期待されています。今回は同社を訪問し、ライブドアの前身、オン・ザ・エッヂ時代から技術部門を支えてこられた現NHN Japan 執行役員/CTOの池邉智洋さんにお話を伺います。技術力に定評がある同社ですが、「⁠研修はほとんどやらない」職場環境。「⁠放置」と「無茶ぶり」の裏側に、どんな人材育成の仕組みが隠されているのかを探ってきました。 NHN Japan 執行役員/CTOの池邉智洋氏 大前提は、独特の「Webの

    第9回 NHN Japan執行役員/CTO 池邉智洋氏に訊く(前編)―「放置」と「無茶ぶり」の裏に隠されたNHN Japan流の学習環境 | gihyo.jp
  • 第4回 クックパッド技術部部長 井原正博氏に訊く(後編)―エンジニアの力をもっと活かしたい | gihyo.jp

    「ちょっと無理じゃね?」レベルの目標を立てる 前回に引き続き、クックパッド技術部長の井原正博さんにお話を伺います。前回は、採用段階で「強い個」を集めることへの並々ならぬこだわりを伺いましたが、その「強い個」がきちんと成果を出している状態にするために、どのような取り組みをされているのでしょうか。 クックパッド技術部長の井原正博氏 日々改善を図ったり、新しいものを吸収するといったことは、放っておいても勝手にやっていくし、定期的に場を設けて何かを勉強するといったこともないそう。しかし、半年に1回の目標設定では、個々人が普段の思考の枠組みから解放された頭で目標を考えられるよう、こんな仕掛けが。 井原さん「期の頭には、目標を1個だけ立てるんですね。半年間にやることはいろいろあると思うんですけど、そんなものは皆やるに決まっているので、目標に入れる意味がない。ここで立てる目標は、“⁠おぉ、それはちょっと

    第4回 クックパッド技術部部長 井原正博氏に訊く(後編)―エンジニアの力をもっと活かしたい | gihyo.jp
  • 第3回 クックパッド技術部部長 井原正博氏に訊く(前編)―「強い個」を採用することへのこだわり | gihyo.jp

    僕の仕事は「優秀なエンジニアを採用すること」 いまや月間4.9億PV、1,400万人のユーザを擁するレシピコミュニティーサイト『クックパッド⁠』⁠。同サービスを運営するクックパッド株式会社は、日有数のテクノロジー・カンパニーとしても知られています。今回は、同社で技術部部長を務める井原正博さんを訪ね、お話を伺いました。 現在社員数は100名弱、そのうち35名ほどのエンジニアが在籍しています。その技術部門の部長を務める井原さんの役割は、 (クックパッドでいうところの)優秀なエンジニアを採用すること 優秀であるはずのエンジニアがきちんと成果を出している状態にすること の2点であると言います。 井原さんが「どういうものを作ろう」とか「ああいうことをやろう」といった指示を出すことはほぼないそう。そうしたことはスタッフ個々が当然自分の仕事としてやっている環境のようです。それも、井原さんが担うところの

    第3回 クックパッド技術部部長 井原正博氏に訊く(前編)―「強い個」を採用することへのこだわり | gihyo.jp
  • 第4回 コードレビューについて | gihyo.jp

    はじめに 「プログラミングに関する雑多な事柄」がテーマの連載、第4回は「コードレビュー」について取り上げたいと思います。 コードレビューの方法 コードレビューは、文章のレビューと似ています。文章と同様にコードの場合も、人に見てもらうことで、わかりづらい部分や冗長な部分など、さまざまな問題点が見つかります。 自分の書いた文章を人にレビューしてもらうには、たとえば、文章をメールで送ります。この場合、レビューのフィードバックはメールの返信という形で受け取れます。 コードレビューの場合も同様の方法で行えます。コードレビュー用の市販ツールなどもありますが、人に見てもらってフィードバックを得るということが一番大切ですから、特に方法にこだわる必要はないと思います。 コードレビューのメリット それでは、コードレビューに具体的にどんなメリットがあるのか見ていきましょう。 コメントの充実 コードを書いた

    第4回 コードレビューについて | gihyo.jp
  • 優れたPerlプログラマを見分ける27の質問 | gihyo.jp

    海外のブログ「Modern Perl Books, a Modern Perl Blog」からの記事です。「⁠なぜ優れたPerlプログラマを雇うのが難しいのか?」という記事からの続きで、新たにPerlプログラマを雇いたいときに、試験や面接にてどうやって見分けたらいいのかについて、実践的なPerl 5に関する質問を計27個挙げています。次に一部を抜粋します。 Perl 5で変数を表す記号には何がある? 配列の要素にアクセスする方法で$items[$index]と@items[$index]の違いは何? ==とeqの違いは何? CPANモジュールのテストコードはどこにある? Perl 5ではどうやって例外を捕捉する? ハッシュの値だけにアクセスする方法は? 難しくトリッキーな問題は少なく、普段からPerlプログラムを書いている人であればかなりの割合で答えられるのではないでしょうか。記事では、「

    優れたPerlプログラマを見分ける27の質問 | gihyo.jp
  • 第5回 仕様整理に「デシジョンテーブル」を使ってみよう | gihyo.jp

    はじめに 複雑な仕様を整理する。テスト担当者の仕事の1つはこれです。 ソフトウェアが仕様通りに動くかどうかを確かめるのがテストの役目です。ですが、複雑な条件が絡み合った仕様をテストする場合には、まず仕様を把握し、理解しなければなりません。これがなかなか骨の折れる作業です。 もちろん、この悩みはテスト担当者に限ったことではなく、開発設計者にとっても同じように悩ましい問題でしょう。次から次へとクライアントから降ってくる、追加の要求を、すっきりと仕様に整理して、不具合のないシステムを作ることは決して簡単な仕事ではありません。 とりわけ、やってくる要求は既存のシステムの仕様とは無関係にやってきます。追加の仕様を設計、実装する際には、既存の仕様と整合性をとらなくてはなりません。「⁠とりあえず⁠」⁠、で修正してみたものの、テストをしてみると、不具合が発覚。再度修正したら今度は別のところで不具合が発生…

    第5回 仕様整理に「デシジョンテーブル」を使ってみよう | gihyo.jp
  • 第38回 DBIx::Class:拡張性の高さが売りではありますが | gihyo.jp

    国内では微妙な立ち位置に ずいぶん間が空いてしまいましたが、今回はデータベース話の3回目として、DBICことDBIx::Classについてまとめてみます。DBICは、海外ではMooseやCatalystと並ぶモダンPerl界の三種の神器のひとつとしていまも広く宣伝されていますが、国内では、当初こそClass::DBIからの乗り換えを強力に推進する流れが見られたものの、最近ではあまり名前を聞くこともなくなり、むしろDBICからの脱却が潮流になっているかの印象を受けることさえあります。いったい何がどうなっているのか、例によって歴史を追いかけながら見ていきましょう。 もともとはオブジェクトを永続化するためのもの DBICの立ち位置を理解するには、まずはその先駆けとなったClass::DBIがどういうものであったかを理解しておく必要があります。 連載第36回でも紹介したように、マイケル・シュワーン

    第38回 DBIx::Class:拡張性の高さが売りではありますが | gihyo.jp