タグ

Programmingとdevelopmentに関するuzuki-firstのブックマーク (18)

  • コードの品質を維持したまま開発スピードを上げる | POSTD

    高品質のコードベースは、反復作業やコラボレーション、メンテナンスを簡単にすることで、長期的な開発のスピードを上げてくれます。Quoraではベースコードの品質は重要だと考えます。 高品質のコードを維持することは利点がありますが、その反面かなりのオーバーヘッドが発生し、実際の開発のサイクルに時間が掛かってしまいます。このオーバーヘッドと利点の折り合いを付けるのは難しい問題です。この場合、2つの選択肢しかないように思えます。低品質でコードスピードが速いか、もしくは高品質でスピードが遅いか。スタートアップは素早い開発サイクルに最適化しているので、多くの人は低品質で進めたほうがいいと思っています。 このジレンマは解消できます。ツールやプロセスを工夫することで、コードベースの品質を維持したままスピードを速めることができるのです。この投稿では、コードの品質に関しての私たちの考えや、2つの世界を共存させる

    コードの品質を維持したまま開発スピードを上げる | POSTD
  • プログラミングで変数名や関数名のネーミングに迷ったときに便利なカンニングペーパーまとめ

    関数名によく使われる英単語(動詞)の意味とニュアンス 関数名によく使われる英単語(動詞)の意味とニュアンス | PHP Archive プログラムで、よく利用される動詞の種類が豊富なリストです。 動詞を見つけるなら、一覧になっているのでcodicで検索するよりも手軽かもしれません。 以下のような、よく利用される単語の、主な用途と細かい意味、ニュアンス、使い分けについてリストアップされています。 追加・作成保存・出力読み込み・解析・取得編集・変更・修正削除検索検査許可・禁止その他プログラミングに出る!英単語 C言語編 – プログラミングに出る!英単語 名詞なども含めて、一般的に関数名などで使われる英単語を百数十個まとめてあるページです。 C言語編と書かれていますが、どのような言語でもよく利用されている単語ばかりなので、ここにある単語さえ押さえておけば、自分以外の人にも理解されやすい名前をつけ

    プログラミングで変数名や関数名のネーミングに迷ったときに便利なカンニングペーパーまとめ
  • EditorConfig

    What is EditorConfig? EditorConfig helps maintain consistent coding styles for multiple developers working on the same project across various editors and IDEs. The EditorConfig project consists of a file format for defining coding styles and a collection of text editor plugins that enable editors to read the file format and adhere to defined styles. EditorConfig files are easily readable and they

  • Martin Fowler's Bliki in Japanese - 犠牲的アーキテクチャ

    @@ -0,0 +1,37 @@ +http://martinfowler.com/bliki/SacrificialArchitecture.html + + +会議の席であなたは考えている。自分のチームが二年間かけて書いてきたコードのことを。そして決断に至る。いま打てる最善の手は、あのコードをすべて投げ捨てまったく新しいアーキテクチャを再構築することだ。死にゆくコード、それに費やした時間、自分が下し続けてきた判断。この決断は、あなたはどんな気持ちにするだろう? + +多くの人にとって、コードを捨てるのは失敗の証だ。ソフトウェア開発の探索的な性質を考えれば、わからない判断ではないかもしれない。けれど失敗には違いない。 + +ところが、いま書ける最良のコードは二年経ったら捨てるつもりのコードだということはよくある。 + +私たちは長命なソフトウェアとして偉大なコードを思

    Martin Fowler's Bliki in Japanese - 犠牲的アーキテクチャ
    uzuki-first
    uzuki-first 2014/11/28
    とてもおもしろい/ 式年遷宮アーキテクチャーとはうまい言い方!/ あの式年遷宮は、先代の秘伝のタレを開いて、作り直してまた引き継ぐという役割もあるとか。そこも似てる!?
  • コードコンプリートを再読した - $shibayu36->blog;

    以前職業プログラマーなら必ず読むべき「Code Complete」 - $shibayu36->blog;や補足 - 職業プログラマーなら必ず読むべき「Code Complete」 - $shibayu36->blog;で紹介したコードコンプリートを再読した。 Code Complete 第2版 上 完全なプログラミングを目指して 作者:スティーブ マコネル日経BPAmazonCode Complete 第2版 下 完全なプログラミングを目指して 作者:スティーブ マコネル日経BPAmazon 一年前はどちらかというと、コードのスタイルの話とか、条件をどうやって綺麗に書くのかとか、コメントはどう書くのかということを学びたくて読んだけど、今回はクラス設計をどうしていくべきかとか、チームでのエンジニアリングをどうしたら良いかとかを中心に読んでいった。 やっぱり学びたいと思っている内容が違うとそ

    コードコンプリートを再読した - $shibayu36->blog;
  • HashiCorp Cloud Platform

  • スタートアップで働くプログラマが、非プログラマの皆さんにお願いしたいこと - Line 1: Error: Invalid Blog('by Esehara' )

    はじめに 自分の基はプログラマとして、サーバーサイドのサービスをゴリゴリ書くのが仕事だ。しかし、仕事をするとなると、いろいろな人が絡んでくる。もちろんマーケティング担当や戦略担当の人もいる。そして、僕はそういう人たちが実際にやっていることはわからないけれど、それはたぶんそういう人たちが「プログラマってどういう仕事なのか?」ということがわからないのは一緒なのだろうと思う。もちろん、お互いに相手の仕事を理解して、それに合わせてどういう風なことを共有して作ってもらうか、というのを話し合う機会は重要だ。 たぶん、自分たちがどのように仕事をしていて、どのように情報を共有してもらえれば、仕事がスムーズにいくのか、ということを説明しないことには、たぶん「プログラマが理解されない」ということを嘆いても仕方ないと思う。なので、まず自分が「プログラマとしての自分」が考えていることを共有する必要があるなあとい

    スタートアップで働くプログラマが、非プログラマの皆さんにお願いしたいこと - Line 1: Error: Invalid Blog('by Esehara' )
  • プログラミングもクラウドへ―― 学習&開発環境Webサービス23選まとめ

    プログラミングもクラウドへ―― 学習&開発環境Webサービス23選まとめ:安藤幸央のランダウン(67)(1/3 ページ) オンラインのプログラミング環境や、オンラインでコードを書いて学べる学習サイト9選、ビジュアル(子ども向け)プログミラングWeb環境5選を紹介する。 道具としての開発環境 今となっては昔のことですが、机の上でノートに鉛筆でソースコードを書いてプログラミングしていた時代がありました。現在のプログラミング環境から振り返ると、そういう作業はアルゴリズムを考え、頭で想像したコードを書き下ろしており、脳内エミュレーターのようなものだったのかもしれません。 最近のプログラミング環境は、規模も複雑さも肥大化しつつ、プログラミングに関する情報もツールも大変充実したものです(マイナーな環境の情報が少ないことや、新古の情報が混在している問題はありますが)。 Web上の情報も書籍も豊富で、自分

    プログラミングもクラウドへ―― 学習&開発環境Webサービス23選まとめ
  • チーム開発とクソコード - tototoshi の日記

    今までパッケージソフトとかWebサービスの開発をしてきた中で、ビジネス上の納期や要求を満たすためにひどいコードを書くっていうのは自分の経験ではあまりなかった気がします。なにかひどいバグがあって、とりあえずのパッチを当てて間に合わす、ということはたまにあるけれど。SIの世界は知りませんよ。 そもそもコードを汚くかけば納期に間に合うということもないし、ビジネス上の近道になるということもない。コードをきれいに書こうが汚く書こうが無理なものは無理。第一汚いコードを意図的に書くというのも意外に難しいということは、普段まあまあきれいなコードを書いている人ならわかってくれるんじゃないかと思います。 仕様変更に設計がついていけてなくておかしいとかならともかく、関数が1000行あるとか、newした瞬間全てが終わるとか、変数のスコープがびっくりするくらい広い、みたいなコードについてははビジネス上の要求ではなく

    チーム開発とクソコード - tototoshi の日記
  • てめえらのRailsはオブジェクト指向じゃねえ!まずはCallbackクラス、Validatorクラスを活用しろ! - Qiita

    ちょっと煽り気味のタイトルにしてみましたが、Railsで開発する時は意識的にOOPに寄せないとオブジェクトの力が活かせなくなるよってことと、Railsが提供しているクラスの責務を分割することを支援してくれる機能について話をします。 ActiveRecordの性質 Rails開発においては、モデル層にロジックを書いてコントローラーは薄くしろ、というのはしつこく言われているので、概ね浸透してきていると思います。 それに加えて、最近私が結構しつこく主張しておきたいのが、モデル = ActiveRecordでは無いよ、ということです。 ActiveRecordは成り立ちから言うと、ロジックとDBへの永続化をまとめてカプセル化するアーキテクチャパターンから来ています。(詳しくはエンタープライズアプリケーションアーキテクチャパターンという書籍を読むと良いです) この方法はロジックが複雑でない場合、つま

    てめえらのRailsはオブジェクト指向じゃねえ!まずはCallbackクラス、Validatorクラスを活用しろ! - Qiita
  • 「技術的負債」とは何か。原典とその対応策を探る

    負債とは要するに借金のことですが、システム開発においても技術的な借金、つまり「技術的負債」(Technical debt)がある、という表現がしばしば使われます。お金の借金をすると利子を払い続けなければならないのと同じように、技術的負債を抱えると、そのツケを払い続けなければならなくなる、という比喩です。 「技術的負債」という表現は、WikiWikiの発明者で著名なプログラマとして知られるウォード・カニンガム氏が1992年に使ったのが原典とされています。しばしば目にするこの「技術的負債」というのはどういうものなのでしょうか? 調べてみました。 カニンガム氏とファウラー氏による「技術的負債」 カニンガム氏が「技術的負債」という表現をはじめて使ったのは、1992年に行われたACM主催のイベント「OOPSLA '92 」(Object-Oriented Programming, Systems,

    「技術的負債」とは何か。原典とその対応策を探る
    uzuki-first
    uzuki-first 2013/07/30
    技術的なコストが高くなっていることに気づかない、コスト意識の低い会社はよくありますね・・ / コードとは資産ではなく、負債である っていう言葉も、このパターンではまさにその通り
  • Github の楽しみ方 | そんなこと覚えてない

    みなさん Github を楽しんでいますか? まだ利用してない場合は、利用しましょう。 「利用しはじめたけど、もう一歩進みたい…」という人のために、私なりの楽しみ方を紹介しておきたいと思います。 今回は以下の遊び方について書きます。 友人のリポジトリにちょっかいを出す 有名なリポジトリに名前を残す 毎日活動して Longest Streak の記録を更新する 友人のリポジトリにちょっかいを出す Github は 「SNS」 です。 SNS なのでは人とコミュニケーションをとって遊びましょう。 なので、コミュニケーションをしましょう。 Github ではユーザ同士がコミュニケーションを取る主な方法は コミットへのコメント Issues Pull Request があります。 こういったものはまずは友人に対して行うのが気軽で、オススメです。 しかし、リポジトリを作成したことや、コミットされたこ

  • 同僚の外国人プログラマ観察記録 - rinu's blog

    概要 1ヶ月くらい一緒にお仕事している外国人プログラマさんを観察した記録です。 スペック 性別: 男性 仕事内容: うちの会社のプログラマは、ざっくり JS 等のフロントエンドと、 Java 等のバックエンドエンジニアにわかれているのですが、彼はどちらもやっているようです。 好きなべ物: はちみつ たまに、くまさんのようにはちみつを舐めていました。 性格 彼はめんどくさがり屋です。 同僚の Windows ユーザの手伝いをしている時、 "C:¥Program Files¥..." みたいなパスを打ちながら、「めんどくさい。 ああ めんどくさい」 と 100回くらいつぶやいていました。 (普段の彼の環境は mac なので /usr/local/bin) パスワードを覚えるのもめんどくさいので 1Password で管理しているようです。 PC スペック マシン: Macbook Pro メ

    同僚の外国人プログラマ観察記録 - rinu's blog
  • 近頃の開発環境 : Mosh、z、tmux、Emacs、Perl について - naoyaのはてなダイアリー

    昨日は年始の挨拶ついでに ELPA について脈絡もなく突然書きましたが、引き続き近頃の開発環境についてもだらだらと書いてみよう。 Mosh mosh というと一部の人間はひげなんとかさんが開発しているモナー的なあれを思い浮かべるかもしれないがそうではなく、mobile shell のことである。 思い切り簡略化して言うと「快適なssh」。回線が不安定な所でもエコー遅延など全く気にせず使えるし、Mac をスリープさせて復帰させたときもリモートホストにそのまま繋がりっぱなしのように見せかけてくれたりする。 詳しくはこの辺を。 mosh: MITからモバイル時代のSSH代替品 - karasuyamatenguの日記 インストールはリモートとローカル両方に必要ですが、まあ大概パッケージがあると思います。EC2 の Amazon Linux でも yum レポジトリの EPEL を有効にすれば y

    近頃の開発環境 : Mosh、z、tmux、Emacs、Perl について - naoyaのはてなダイアリー
  • 下から目線のコードレビュー - steps to phantasien

    WEB+DB の新しいやつがちょっと前にでてます. コードレビュー特集だそうな. 時が経つのは早い. まだ次の原稿書いてないのに… そういえば前にコードレビューの話を書いた気がして, 見なおしたところ かきかけ だった. せっかくなので続きを書いてみることにします. といっても何書くつもりだったか覚えてないのでだらだらと. WEB+DB PRESS の特集は, 主にこれからコードレビューを導入したい人に向けて書かれている. 幸か不幸か私はコードレビューを義務付けれたプロジェクトで働いているため, 導入には苦労していない. かわりにレビューをちょろまかせない面倒はある. ある意味でコードレビューを <やらされている>. もちろんこの言い分は大げさだ. 必要性に異議を唱える気はない. ただ異議はさておき自分の意向とは無関係にコードレビューに参加している気分を書いた話は あまり目にしないので,

  • Rubyistよ、irbを捨ててPryを使おう | Webシステム開発/教育ソリューションのタイムインターメディア

    Pryは結構前からgithubのリポジトリを追いかけている人達には認知されていましたが、RailsCastsでも紹介されたことから、Ruby界で一気に広がりを見せています。 ちなみに発音はpra'i(ぷらい)です。英単語で「覗く」などを意味します。 今回はそんな便利なPryについて少し紹介したいと思います。 Pryはirbの代わりになるREPL Pryを一言で説明すると、irbと同様にREPL環境を提供してくれます。 では、さっそくインストールしてみましょう。

    Rubyistよ、irbを捨ててPryを使おう | Webシステム開発/教育ソリューションのタイムインターメディア
    uzuki-first
    uzuki-first 2011/12/27
    使ってます。便利です。
  • Life is beautiful: 私のとっておきのプログラミングスタイル

    404 Blog Not Found の「LiveCoding に学ぶプログラミングの三原則」を読んでいたらどうしても書きたくなったので。あくまで私のスタイルなので、参考にするもしないもご自由に。 1. スタードダッシュでできるだけはやくめどをつける 学生時代から夏休みの宿題は7月中に終わらせていた私とすれば、ラストスパートよりはスタートダッシュで勝負する。どのみち、どこかで思いっきり頑張らなければならないのであれば、締め切り間際ではなく、スタート間際に頑張るべきというのが私のポリシー。十週間のプロジェクトであれば、最初の二週間が勝負。そこで八割がたのめどをつけておき、後は流す。最初の二週間がめどが立てられなければ、十週間で完成できる可能性は低いと考える。常にそういう姿勢でいれば、締め切りぎりぎりになって致命的な欠陥が見つかって痛いめにあったり、当は大幅な設計変更をすべきなのに応急処置で

    uzuki-first
    uzuki-first 2007/09/17
    中島さんは、やはりプログラマとして非常に優秀な方だと思う。
  • 1