タグ

ブックマーク / hyoshiok.hatenablog.com (22)

  • ローカルで作ったリポジトリをgithubに初めてpushする方法 2013-05-05 - 未来のいつか/hyoshiokの日記

    例えば以下のようにローカルにgitで管理していて、ふとgithubあたりで公開したくなったとする。はじめからgithubにレポジトリを持っていた場合は、それを $ git clone して、ローカルでごにょごにょして $ git push すればいいのだけど、その順番が逆の場合。 $ git init $ git add . $ git commit -m "initial commit" ... ここで、あー、githubにpushしたいなーとふと思う。 おもむろにgithubにsign inしてrepositoryをnewする。仮にユーザ名がuser-nameでリポジトリがrepositoryというのを作ったすると、ローカルからのpushは下記のような感じになる。 $ git remote add origin git@github.com:user-name/repository 最

    ローカルで作ったリポジトリをgithubに初めてpushする方法 2013-05-05 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2015/01/26
  • Linuxとgitを作ったLinus - 未来のいつか/hyoshiokの日記

    誰でも知っていることだけど、LinuxというOSというかカーネルはLinus Torvaldsが学生のときに趣味で作ったのがはじまりだ。それは1991年ころの話で彼が21歳の頃だ。個人の趣味で作ったものが、いつの間にかに世界中のコンピュータだけでなく、携帯や家電や様々な機械の制御に使われている。 Linus Torvalds - Wikipedia 1994年ころには、PCで動く個人向けOSとしては十分な機能を持っていた。Xもあるし、gccなどのコンパイラもあるし、GNU Emacsやbashもあるので、ちょっとしたプログラムを作るには十分な機能を持っていた。 当時、勤め先のマシンはSunのワークステーションで仕事Linuxを使う機会は全然なかったのだけど、自宅のPCSlackwareのCDを入れてみたりした。日常的に使うことはなかったけど、1998年にOracleLinux版を出し

    Linuxとgitを作ったLinus - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2014/07/28
  • エンジニアの英語化戦略 - 未来のいつか/hyoshiokの日記

    あなたが現役のエンジニアならば英語から逃れることは出来ない。エンジニアというプロフェッショナルな職業を選択した以上、自分の職業に誠実になるならば、学び続けなくてはならないし、その場合、英語を避けて通ることはできない。 まあ、50代以上で、もう引退だとか言う人であれば、ぎりぎり逃げ切るということは不可能ではないかもしれないが、それは現役エンジニアというカテゴリではないので、除外する。もちろん、50代だろうが60代だろうが現役であるならば英語から逃れることはできない。 少なくともインターネットの業界とかIT業界とかそーゆーところで飯をっている人であれば、ほとんどすべての情報は英語でやり取りされていて、一次情報の質と量については英語のそれは日語それを圧倒している。もし、そのような認識を持っていないとしたら、それはそれで相当ヤバいと思う。 もちろん英語を学ぶとか学ばないとかは余計なお世話である

    エンジニアの英語化戦略 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2014/04/08
  • 社内が英語化してよかったこと - 未来のいつか/hyoshiokの日記

    なんだか、ネガティブなことばかり世間では書かれているので、個人的によかったことなど感想を一つ二つ書く。 どーでもいいことから 英語への抵抗感がなくなる。どっかで英語で話しかけられても怖くない。へらへら対応できる。切符を買えなくて困っている外国人とお友達になれる自信ある。 30分くらいの英語の会議だったら集中力が持続する。 外国籍の友達が増えた。会社に外国籍の人がいっぱいいるので、顔見知りがいっぱい増えた。英語で雑談するのが好きだ。仕事で絡みがなくても気さくに話しても大丈夫である。 海外情報がいろいろ回ってくるような気がする。翻訳される前の情報がいろいろ出回っているような気がする。(まあ、気がするだけかもしれないけど) インターネットで流通している技術情報のほとんどは英語であるということを確信した。日語の情報は遅い、古い、不正確で、量も少ない。ググるときに日語じゃなくて英語のページを見た

    社内が英語化してよかったこと - 未来のいつか/hyoshiokの日記
  • 昔DECという会社があった。エンジニアとして必要な事はDECで学んだ。 - 未来のいつか/hyoshiokの日記

    大学を1984年に出て、新卒で入社した会社がDECという会社だった。その当時日デジタルイクイップメント研究開発センター株式会社というのが日にあってそこに新卒バリバリで入社した。その会社は米国のDigital Equipment Corporation (以下DECと称す)の日子会社であった。当時はDECの販売子会社日ディジタルイクイップメント株式会社と別会社で、後に合併して日ディジタルイクイップメントになる。 エンジニアリング部門の子会社なので、トップはPhD(博士号)を持っているし、米国社からの出向者もいて、技術系の外資という感じだった。一方で、新卒入社ということもあり、同期も少ないながら(6名)いて、日DECの同期と合わせれば、200名近くいて、日企業的な感じもあった。 DECをコンピュータ産業史的な観点から眺めると、当時コンピュータ産業を支配していたメインフレーム、す

    昔DECという会社があった。エンジニアとして必要な事はDECで学んだ。 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2011/02/13
  • LinuxCon Japan 2010、第106回カーネル読書会、U-20プログラミングコンテスト、PHP祭りなど - 未来のいつか/hyoshiokの日記

    先週は、LinuxCon Japan 2010から始まって、第106回カーネル読書会、U-20プログラミングコンテストの最終審査会、そしてPHP祭り(PHPmatsuri)へ参加とコミュニティ三昧の一週間だった。 英語三昧 コミュニティ三昧ではあったが、英語三昧でもあった。 LinuxCon Japanは日で開催されるカンファレンスであるが、公用語が英語になっていて、日人の発表も英語、当然質疑応答も、日人同士でも英語である。キーノート以外には通訳はつかない。 昨年のLinux Symposium Japan以来の英語でのカンファレンスで、当初は英語の発表で大丈夫かという声もあったが、やってみたら、意外とどーにかなったというのが実状である。日人にとっては、英語での発表は相当敷居が高いが、Linuxの世界では、避けて通れないのでしょうがない。 海外からカーネルハッカーが来るので、彼らと

    LinuxCon Japan 2010、第106回カーネル読書会、U-20プログラミングコンテスト、PHP祭りなど - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/10/08
  • テストを書くこととテストをすることの違い - 未来のいつか/hyoshiokの日記

    会社でレガシーコード改善ガイドの読書会をやっていて、次回で読了だ。4月に入ってから週に1回くらいのペースでやっていて、2ヶ月半くらいかかった。途中、ゴールデンウィークや所用で開催しないこともあったので、10回くらいで完走したことになる。 一人当たり、1章ないし2章くらいを担当して、その章に書いてあることを説明した後にみんなであーだこーだ議論をする。気になったことを質問したり、どうも良く分からないことをみんなで考えたりする。 テストがないコードはレガシーコードだ!というキャッチフレーズはわたしの心をとらえた。 参加者の皆さんとその価値観を共有できた事はうれしい。 現場での開発の実情をいろいろ教えてもらった。テストを書くことはあまり一般的ではないということにわたしは衝撃を覚えたのであるが、この読書会を通じて、テストを書かない開発というのがレガシーコードを作っている事に他ならないという共通の認識

    テストを書くこととテストをすることの違い - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/06/14
  • テストは誰が書くのか - 未来のいつか/hyoshiokの日記

    昨日のエントリの補足的なもの。id:hyoshiok:20100612#p1 テストは誰が書くのか。もちろんコードを書いた人が書く。コードは誰が書くのか。設計をした人が書く。誰が設計をするのか。要求を分析した人がする。このように一つの機能について一人が責任を持って行うのがベストプラクティスになっている。 ところが、日のソフトウェア産業の8割以上は受託開発と言われているが、そのような現場では誰かが一貫してすべての工程に責任を持つということは普通行われていない。工程を上流下流とわけ、いわゆる一次受けと呼ばれる大手SIベンダーが要求分析をし、その下に設計実装する下請け、孫請けを持つという多重構造になる。 要求分析をして、仕様にまとめるわけであるが、実装のコスト(実装のしやすやしにくさ、実装工数の大きさ)はほとんど考慮されない。契約文書として、これこれを実装することみたいなものがあらかじめ取り交

    テストは誰が書くのか - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/06/14
  • 社内公用語を英語にすること - 未来のいつか/hyoshiokの日記

    最近楽天の社内会議を英語でやっているということをおもしろおかしく伝えられているが、中の人として一言ふたこと。http://mainichi.jp/select/biz/news/20100513mog00m300020000c.html まあ、言うまでもないことだけど、日のGDPが今後全然増えないなかで企業が成長していくとしたら、海外にでなければいけないことは火を見るよりもあきらかなので、外に出て成長するか、外にでないで成長を放棄するか極端に単純化するとそのようなお話になる。いやいや、日国内でも十分成長余力はあるという立場ももちろんあるが、それ以上に海外の成長が大きかったとしたら、限りある経営資源を有効活用するために、どっちの方に投資するかということである。 日のサービス業で海外で成功した事例というのはほとんどない。製造業であれば、SONYやトヨタなどいくらでもあるし、かつての日

    社内公用語を英語にすること - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/05/26
  • 達人プログラマーの思考法と学習法 - 未来のいつか/hyoshiokの日記

    無理してベストセラーを読む必要はない。自分にあったを自分にあったペースで読んでいけばいい。GW中に昔(1年くらい前)献された「リファクタリング・ウェットウェア」を読んだ。 達人プログラマでお馴染みのAndy Huntの著書である。正直言って、こののタイトルにぐっとこなかったので、書を1年近く寝かせておいたのであるが(献いただいた宮川さんすいません)、ふと思いたち、読んだ。面白かった。副題の「達人プログラマーの思考法と学習法」が書の内容を的確に表現している。 情熱プログラマーを読みながらも感じたことなんだけど、プログラマーとして、どのように学ぶかという問題にはもちろん正解はない。だけど、人間は弱いものなので、そのような正解を求めてを読む。様々な自己啓発書が屋にあふれているのがその証拠だ。私自身、そのような自己啓発書の類の書籍にはあまり興味がないので、買うことも読むこともほとん

    達人プログラマーの思考法と学習法 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/05/11
  • 自分にとっての情熱プログラマー - 未来のいつか/hyoshiokの日記

    先日、情熱プログラマー読書会が楽天であったので、参加した。LT(Lightning Talks)で発表もした。発表スライド 情熱プログラマー 自分にとっての情熱プログラマーってなんだろうと考えた。 この「情熱プログラマー」という書籍は、ソフトウェア開発者の幸せな生き方という副題がついているのだが、純粋な技術書というよりもプログラマーにとっての自己啓発書みたいな位置づけの書籍だ。 ソフトウェア開発におけるプログラマという役割を取り替え可能な部品のような立場から見れば、プログラマはコストであり、どのようにしてそのコストを削減するかということになる。コストを安くするという考えで行けば年功序列的な賃金体系の中ではベテランより若いひとを使った方が安く上がる。数字でソフトウェア開発を見ていけば人月工数がすべてであり、開発コストは工数*人月単価になる。 そのような立場で言えば人件費の高い日で開発するの

    自分にとっての情熱プログラマー - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/05/02
  • Rubyベストプラクティス - 未来のいつか/hyoshiokの日記

    オライリージャパンの高さんより献をいただく。ありがとうございました。 Rubyベストプラクティスをざっと拝見して、コミュニティが持つ価値観を明示的に言葉にする事の価値を再確認した。コミュニティの価値観というのは、通常はどのようなコミュニティであれ、その構成員によって明示的にしろ暗黙的にしろ共有されるもので、外のものからはなかなか伺いしれない。 そのような価値観は一子相伝で奥義を決して外部に漏らさないというものから、広く世間に流通しているものまで様々なものがある。閉じたコミュニティというのは、その奥義がなかなかコミュニティ構成員の外に伝わらないもので、一方で開いたコミュニティというのは、その逆である。 コミュニティというのは、一人一人の人によって構成されるので、その人が移動することによって、少しずつその奥義が伝承することになるのだが、一子相伝のコミュニティでは、人の出入りというのは極めて限

    Rubyベストプラクティス - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/03/29
  • 2010-03-20

    なんでもかんでも、お疲れ様。メールの挨拶も、「お疲れさまです。hyoshiokです」朝でも昼でも夜でも「お疲れ様です。hyoshiokです」。飲み会で乾杯するときも「お疲れ様で〜す」、ジョッキをがちゃーん。会社でプレゼンする時も「お疲れさまです。開発部のhyoshiokです」。そして退社するときも「お疲れさまです〜〜」。飲み会での最後の挨拶も「お疲れ様でした〜」 みんな、お疲れなんだなあ。大変なんだなあ。そんなにお疲れしないように、肩のチカラ抜きましょう。もみもみ。凝ってますね〜皆様。 コードはHOW、テストはWHAT、ドキュメントはWHY。 先日のソースコードリーディングワークショップ2010でそんなようなことをお話した。 これは文字通りの意味だ。コードは実装の詳細HOWを表現している。どのように問題を解いたか。プログラマの数だけ表現がある。一方テストはWHATだ。何を実現するかを表して

    2010-03-20
    taka222
    taka222 2010/03/21
  • そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト 2010-03-12 - 未来のいつか/hyoshiokの日記

    会社の勉強会で自分の今までの経験からテストについてお話をした。その資料を公開する。自分が関わった、Oracle8、DEC Rdb、日COBOL、そしてSamba3.0国際化プロジェクトでのテストやディリービルドなどについて紹介した。 テストファースト開発など、最近広く知られるようになってきたが、ディリービルドとリグレッションテストの実行という方法論は昔からソフトウェア製品開発の現場では行われていたベストプラクティスである。そのリズムとか雰囲気を伝えたかった。 テスト勉強会よしおか100311 1View more presentations from Hiro Yoshioka. テストがある開発現場ってのは、こんな感じなんだ〜という雰囲気が伝われば幸いだ。 アジャイル開発方法論としてXPの手法とかいろいろ知られているが、このディリービルドとリグレッションテストというプラクティスもその

    そろそろ大規模ソフトウェア開発に一言いっておくか。デイリービルドとリグレッションテスト 2010-03-12 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/03/12
  • 2010-02-14 - 未来のいつか/hyoshiokの日記

    例えば、次の言葉の意味を知りたい、聞いたことがあるけどよく分かっていないプログラマにとって、お勧めの書籍だ。Unicode/UTF-8/UTF-16/USC-2/JIS X0208/JIS X0212/JIS X0213/SJIS/EUC-JP/CP932/ISO-2022-JP/ASCII/Latin-1/ISO 10646/ISO 8859-1/サロゲートペア/文字化け/機種依存文字/半角カナ/絵文字… JIS X0208やJIS X0213の解説などは圧巻である。書籍にはWebにない利点がある。Webには即時性があるが、文字コードの解説においては、即時性はそれほど求められない。字体ないし字形の差異についてWebではその字体ないし字形がなければ表現しようがないが、書籍であれば細部までこだわって表現できる。 例えば、包摂された「辻」という字の一点しんにょうと二点しんにょうの字体の差はWe

    2010-02-14 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/02/15
  • ロートルの嘆き、アジャイル開発って何 - 未来のいつか/hyoshiokの日記

    20数年前に大学を卒業しプログラマになって、この変化のとっても早い業界でまだ禄を得ている。最近でこそコードを書くことはないが(今でも職業としてコードを書きたいと強く思っている)、それでも、ソフトウェア開発について20数年前に得た知識、経験、スキルが役に立っているように思える。 日進月歩で日々新しいバズワードが登場し、若い人たちはそれをフォローするのにひーひー言っている。クラウドだアジャイル開発だなんだかんだ。 プログラマの一日は、会社に来て、テストを書いて、テストをして、不具合があればコードを修正し、またテストをして、問題がなければコード管理システムにチェックインする。その作業を淡々と日々こなす。この日常の流れというのは、使う道具立てこそ変わったとしても、基的に変化がないように思える。コードを書くのは20数年前も今もプログラマだし、テストを書くのもそうだし、テストを自動化することは20数

    ロートルの嘆き、アジャイル開発って何 - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2010/02/12
  • ソースコードリーディングワークショップ2010に行ってきた。 - 未来のいつか/hyoshiokの日記

    ソースコード理解と勉強会というタイトルでお話をした。ソースコードを読むことの意義などを話した後、わたしのしょぼいテクニックを恥ずかしながら披露した。 Sourcecode Reading Workshop2010View more presentations from Hiro Yoshioka. ワークショップは下記にあるようなプログラムになっている。 http://se.naist.jp/events/srw2010.html Javaアプレットのコードがあって、それぞれのパッチをあててよいかというのを判定するというのを実際のコードを読みながら行う。当初、コードを読むというハンズオンには参加するつもりもなかったのだが、2時間ほどぼーとしているのもヒマだし急遽参加することにした。ソースコードをPCにダウンロードしておけばよかったのであるが、ダウンロードしていなかったので紙でソースコードを

    ソースコードリーディングワークショップ2010に行ってきた。 - 未来のいつか/hyoshiokの日記
  • 入門Gitを読んだ - 未来のいつか/hyoshiokの日記

    入門GitはGitのメンテナである濱野さんが書いただけあってGit質がわかりやすく記されている。 バージョン管理システム(VCS--Version Control System)としてCVSやSubversion(SVN)があるし、分散型VCSとしては、Git以外にもいろいろあるが、まあGitでいいのではないかと。なんといってもLinuxで利用されているという圧倒的な実績。数千人規模のプロジェクトで利用できるスケーラビリティ。そのような規模では、もはやSVNのような集中型VCSではスケールしないというのはあきらかだろう。 VCSの解説は、細かい機能というよりも、そのツールを利用してのプロセスやワークフローあるいは利用しているコミュニティの文化なんていうものを、わたしは理解したいので、その意味で書は濱野さんの経験からでる貴重なノウハウがつまっている。 Gitなどを使った共同開発の基

    入門Gitを読んだ - 未来のいつか/hyoshiokの日記
    taka222
    taka222 2009/10/12
  • ムーアの法則を理解しているということ(第98回カーネル読書会) - 未来のいつか/hyoshiokの日記

    第98回カーネル読書会は、はてなの田中さんによる、はてなでのハードでの性能の引き出し方というお題で思う存分お話をいただいた。 1年半で半導体の集積度が2倍になるというムーアの法則は誰でも聞いたことはあると思うし、IT系の技術者であれば、知っていて当然の「法則」である。問題は知っていることとそれを理解していることというのはまったく別のことである。将棋のコマの動かし方を知っていたとしても名人にはなれない。ムーアの法則を知っていても、それが自分の仕事にどのような意味を持つかということを理解し、実践している人は驚くほど少ない。 田中さんは数少ないムーアの法則を理解し実践している技術者の一人である。 1年半で様々なコストが半分になるとしたら、それを前提にシステムを組むことによって、どのような競争優位性をもたらすのか。それを自社のサービス戦略にどのように組み入れるか、ということをムーアの法則の文脈の上

    ムーアの法則を理解しているということ(第98回カーネル読書会) - 未来のいつか/hyoshiokの日記
  • TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記

    昨日、TOMOYO Linuxメインライン化記念合同勉強会(カーネル読書会、セキュアOSユーザ会、まっちゃ445)に行ってきて、小崎さんが匿名掲示板でガチでレビューしていたお話を聞いたので、早速過去ログを読んでみた。http://tomoyo.sourceforge.jp/2ch/thread-2.txt (追記:2009/7/4 21:03 なぜか後半部分、アスキーアートの後が切れてしまったので、前半部分を若干カットして(略)の部分、その2を追加しました。) LKML (Linux Kernel Mailing List)というのはLinuxカーネルの技術的なことを議論するもっとも権威(?)あるメーリングリストで、ここで議論され合意されたものがLinux体に取り込まれることになる。このLinux元の体(くどいな)のことをメインラインと呼ぶ。Linuxを創ったLinusさんに

    TOMOYO Linuxに学ぶ説得術 - 未来のいつか/hyoshiokの日記