はじめに 4月まで残すところ2ヶ月と迫り、新卒などを対象とした新人研修の準備が始まっている頃かと思います。 新人研修の中でgitを教える際に、筆者はtigの活用をおすすめしています。 講師の立場からすれば、短い時間に高効率でgitの本質を伝えることができます。 研修生の立場では、tigを利用して簡単で直感的にgitリポジトリを閲覧・操作することができます。 tigを使うとどうしてそうなるのか、いくつかの理由を以下に紹介します。 セットアップが簡単ですぐ使い始められる tigは依存関係が少なくポータブルな実装でありインストールが簡単です。 会社から提供する開発サーバーであっても、社員ひとりひとりが所有するPCやMacであっても、 yumやbrewなどのパッケージマネージャから少ない手順でインストールすることができます。 一例: CentOS6.4にgit tigインストールと使い方 - Qi
「アジャイル」という言葉が一人歩きしてしまっていて、たまに話をしていても通じないときがあります。 それくらいアジャイルという言葉が広く知られるようになったんだと思う一方で、かえって話が通じなくて、もどかしく感じることもあります。だからといって、そこで「正しいアジャイルとは」みたいな議論をしたい訳でもないのです。 広まれば広まるほど、そういった言葉の認識の齟齬が出るのは仕方ないですね。その正しい定義みたいなところを追求するのもナンセンスなので、そんなつもりはないですが、ただ自分がどう考えているかについては書いておいても良いかな、と考えました。ここは私のブログですしね。 そこで、この記事では、私の考えるアジャイル開発の本質について、そしてウォーターフォールとの違いについて書きました。 アジャイル開発では機能を全部つくらない これまで私の中で、アジャイルと言えば当たり前の前提がありました。それは
前々回の「ついに1.0がリリース! Dockerのインストールと主なコマンドの使い方」、前回の「Dockerfileとdocker buildコマンドでDockerイメージの作成」と、Dockerイメージの作り方として、「docker commit」コマンド、「docker build」コマンドを紹介しました。 Dockerは開発のスピードが速く、8月22日にはバージョン1.2.0がリリースされています。詳細はブログ「ANNOUNCING DOCKER 1.2.0」を参照してください。 今回は、Dockerイメージをシェアするための「Dockerレジストリ」と公式レジストリである「Docker Hub」の利用方法を紹介します。 Dockerイメージの共有方法 手元の開発用PCと本番用クラウド環境など複数のマシンで共通のDockerコンテナーを実行するために、Dockerイメージを共有できま
Tweet 12月25日 9:30更新 「ライドと椅子のマッチング」の実装例のコードを修正しました。 ---- こんにちは、ISUCON14の作問チーム・NaruseJunのとーふとふです。この記事では、ISUCON14の問題として出題した「ISURIDE」の解説と講評をお届けします。今回の問題は、NaruseJunのメンバーが所属するポケットサインが作問を担当し、LINEヤフーの皆さんにフロントエンド実装でご協力いただきました。さらに、アドバイザーとしてfujiwaraさんにも参加していただき、非常に充実した作問体制を整えることができました。 それでは、ここから「ISURIDE」全体の構成や狙い、ボトルネックの仕掛けなどを順を追って解説していきます。 「ISURIDE」とは競技当日流したサービスの概要紹介動画は以下からご覧いただけます。 今回の問題では、いわゆるタクシー配車・ライドシェア
Node.jsを触って勉強してたらWebサイトができました。 結婚式の余興.jp - 結婚式の余興を考えるときに参考になる動画を集めました Youtubeから結婚式の余興の動画を集めてくるサイトです。Web開発は初めてだったので、つくった流れや勉強の方法などをまとめてみます。 9/14追記)スマホ対応をやりました! 普段はiOSアプリを書いています 普段はiOSアプリ開発者をやっていて、仕事と趣味でObjective-Cを書いてます。とても楽しくて2年くらい続けてるのですが、サーバーサイド書けたら幅が広がっていいな、とずっと思ってました。 普段の週末は個人アプリを作ったりしてるのですが、夏休みだし新しいことやろうと思ってNode.jsを触ってみました。 つくったもの 結婚式の余興.jp - 結婚式の余興を考えるときに参考になる動画を集めました 結婚式の余興動画がまとまっていて、だら見できる
初めまして! 7月よりエウレカにJOINしました、エンジニアの二川です。 エウレカではCouplesのAndroid開発を担当しています。 前職では、Android向けのゲーム開発を行っていました。それまでゲームしか作ったことが無かったので、エウレカに入社するにあたり、練習を兼ねて簡単なサービスアプリを開発しました。今日はそのアプリについて話をしたいと思います。 ある程度の開発経験があれば10時間程度で作れる、かなりシンプルなアプリです。 Androidアプリ開発に興味はあるけど、まだ作ったことはないという方、この夏なにか新しいことに挑戦しよう!と思っていたけどまだやっていない方、このアプリを作ってAndroidエンジニアデビューしてみませんか? 今回作るアプリの概要 今回作るのは、Dribbbleという世界中のデザイナーが作品を投稿するSNSサイトを閲覧するためのアプリです。 UIは、デ
english セマンティック バージョニング 2.0.0 概要 バージョン番号 MAJOR.MINOR.PATCH を前提として、 あなたが互換性のない API の変更を行うときに MAJOR バージョンを、 後方互換性のある方法で機能性を追加したときに MINOR バージョンを、 そして、後方互換性のあるバグ フィックスをしたときに PATCH バージョンを、 インクリメントします。 追加のラベルとして、プレリリースとビルド メタデータが MAJOR.MINOR.PATCH フォーマットへの拡張として利用することができます。 序論 ソフトウェア マネジメントの世界には「依存関係地獄」と呼ばれる非常に恐ろしい場所が存在します。 あなたのシステムがより大きくなるほど、あなたのソフトウェアの中へより多くのパッケージを溶け込ませるほど、いつかこの絶望の底にいるあなた自身に気づく、そんな可能性が
最近、こういう事例が増えてます ネイティブゲームアプリもグリグリアニメーションする昨今 🐤俺らもブラウザゲームの限界を目指そうぜ! 🐤盛るぜー盛るぜーー超盛るぜーー 数ヶ月後… 🐤来月リリースだけどカクカクします助けてーー 🐲きさまら何度やったらわかるんだ…そこに正座しろ…(ゴゴゴゴゴ) #こうですか?— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19 🐲なぜ作ってる途中で実機で動作確認をしなかったんですか? 🐤え、あの、CreateJS なら大丈夫かとおもって… 確認してませんでした 🐲(イラッイラッ #こうですか— コラーゲンたっぷりさん (@uupaa) 2014, 8月 19 🐲(はぁ…)とりあえず実機動作とコードを見たいので開発サーバ名やログインする為の情報ください …2日後… 🐤…これで💦 🐲…動かない…あとminify解除してない状態な
去る11月23日、あるイベントが開催された。「秋のエンジニアぶつかり稽古 2013」という。何を目的にしたイベントなのか誰も(主催者側ですらも)わからないまま始まったこのイベントは、しかし、最後までその目的が明らかにならないままに、なぜか大成功の余韻だけはしっかり残して終わった、異常な「事件」と呼ぶ他ないものとなった。 事の発端 そもそもの始まりからして意味不明だったのである。発端はこれだ。 @__kan こんにちは、ペパボです。YAPC::ASIA参加者スペシャル特典にご応募いただき、ありがとうございます ! @kentaro とのぶつかりげいこをぜひ開催したく思います。ご都合のよろしい日をいくつかご連絡下さい! pic.twitter.com/uoj2uExHBU— ペパボ(paperboy&co.) (@pepabo) October 2, 2013 2ヶ月ほど前、YAPC::Asi
デキるプログラマだけが知っているコードレビュー7つの秘訣 7つの秘訣の1〜5は本当にそのとおりだと思います。 「怒り」って言葉を使っているところはなかなか画期的だと感じた。というのも僕は前から「人格攻撃に思われて」しまうような、コードで人を殴るようなことをしてしまう人が出てきてしまうのは何故かということを考えた時に、そこには「コードに対する怒り」があるからだろうなと思っていたからである。怒りがあるからこそ強く指摘しすぎてしまうことが起こりうる。 「怒り」というのはつまり「感情」である。であれば、「その『怒り』はコードに向けられたものであり、書いた人に対してのものではないので、その人に対しての攻撃ではない」というのは、理屈ではかろうじて通るかもしれないが、書いた人の「感情」的には通らないこともあることは理解したほうが良いと思う。 じゃあ怒らなければ良い、という話にはしたくなくて、どうしても怒
まえがき データにIDを持たせたいとき、単純な方法としては、DBの提供するauto incrementを使う場合やUUIDを利用することがある。それぞれの方法の利点欠点は以下の通り。 データベースのauto incrementを使う場合 利点: 特別な実装が必要ない 欠点: DBを1台で運用するとデータベースがパフォーマンス・障害のボトルネックになる DBを二台にするとIDのユニークさや順序の保証が困難 UUID(v4)※1を利用する場合 利点: 分散環境で各々がIDを生成しても衝突しない IDを公開したくない場合に、推測されにくいIDを生成できる 欠点: 128ビット必要、DBのインデクシングやプログラミング言語で扱うときに不利なことがある IDから時間の情報が失われる、例えば2つのIDを比べてどちらが古い投稿か判断できない 世界の大企業がどうしてるか 調べてみると多くの企業がブログなど
最近、サーバーを一から構築する必要があって、chefを使ってみることにした。 CIしたいのでまずはJenkinsを入れる。 Chef: 11.12.4 Vagrant 1.5.4 Vagrant この辺のコマンド $ vagrant box add centos http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.5-x86_64-v20140110.box $ mkdir vagrant_chef $ cd vagrant_chef $ vagrant init centos で環境構築。 Vagrantfileに config.vm.network :private_network, ip:"aaa.bbb.ccc.ddd" を追加する。 起動。 $ vagrant up sshコマンドで接続できるように $ vagra
弊社では毎年インターンを受け入れているのだけど,いまもインターンが来てて,テスト先に書きたいけど油断すると先に実装を書いてしまう,とか話してた. 個人的には,テスト先に書くのが大事というよりかは,意識して仕様を先に考えるのが大事だと思っている.テストを先に書くと,先に仕様を考えざるを得ないので,良いスタイルが身につく. 僕がよくやるのは,関連しそうなクラスの絵をひと通りノートに書いてみて,その図だけで,うまく動くことを説明できるくらい考えてみる.その時点でおかしかったら,コード書いてもおかしくなる.ノートに方眼ついてるとクラス図書きやすい.UMLとかじゃなくても,自分で見て分かるくらいでもいいと思う. 紙でうまくいったら,外部仕様だけソースコードに書いてみる.クラス名と,メソッドの定義と,メソッドの上くらいに,ひと通りコメントでも書いてみて,この関数はこういうことをするんです,こういう引数
はじめに 2014年8月11日の晩に放送されたソニックガーデンのweb勉強会、SonicGardn Studyでは「いつまでクソコードを書き続けるの? 〜出来るプログラマだけが知っているコードレビュー7つの秘訣〜」というタイトルで、弊社ソニックガーデンの西見さん(@mah_lab)が講演してくれました。 デキるプログラマだけが知っているコードレビュー7つの秘訣 from Masahiro Nishimi いつまでクソコードを書き続けるの? 〜出来るプログラマだけが知っているコードレビュー7つの秘訣〜 - YouTube この放送の中でも触れられていたように、ソニックガーデンではコードレビューを大事にしています。 ただ、勉強会のスライドの中では具体的なコード例や指摘の例がほとんど出てこなかったので、「実際どんな感じなの?」という疑問を持った方もいたんじゃないかと思います。 そこで今回は「入社
みなさんお仕事の進捗どうですか? 今日は ふと今こそ保守性・管理性が劇的に上がるPHPのスマートなコードの書き方まとめを俺が書くときじゃないだろうか。 — そーだい@初代ALF (@soudai1025) 2014, 8月 12 こんな軽はずみな発言をしてしまったが故にネットで触れては行けない3大炎上案件について触れる。 ※ネットで触れては行けない3大炎上案件とは? Excel関連(スクショとか) 宗教(エディタとか) PHP のこと。 で今話題の元ネタを既に@sue445さんが魚拓してくれてる。 「Hello! my name is 404 お探しのページはありませんでした!申し訳ありません。。」 http://t.co/MS8Xy0bCMz 魚拓とっててよかったw http://t.co/UvG3gzsPul — sue445 (@sue445) 2014, 8月 12 (炎上したら即
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く