タグ

Programmingに関するsasaplus1のブックマーク (54)

  • アジャイル開発 基本のキ - ヲトナ.backtrace

    今、アジャイルの導入のお手伝いをさせてもらっている現場で「他のスタッフにもアジャイルについてざっくり教えてよ」というオーダーで勉強会をやりました。 そこで「アジャイル開発 基のキ」と題し、実際の進め方の説明ではなく、その手前の考え方や心構えにフォーカスして話をしました。 20名ほどの人数向けに作った資料なのですが、普段アジャイルについてのイントロダクションの話をする時にいれるキーワードは大体盛り込んだ感じになったので、もしかすると誰かの役に立つかもしれないので公開しておきます。 ただし、勉強会のターゲットがエンジニアではなかったので、エンジニアリングについては薄くなっているのでご注意を。 Basic of Basics of Agile DevelopmentView more presentations from Nishimura Naoto. あと、話は変わりますが、普段アジャイル

    アジャイル開発 基本のキ - ヲトナ.backtrace
  • 害虫駆除専門家の俺がゴキの姿を見ない家にするアドバイスしてやろう。 : 2のまとめR

    2010年06月14日 ➥ 害虫駆除専門家の俺がゴキの姿を見ない家にするアドバイスしてやろう。 133 comments ツイート 193: アジメドジョウ(愛知県) []:2010/06/13(日) 03:16:56.11 ID:MHVG6sqZ 害虫駆除専門家の俺がアドバイスしてやろう。 とはいえ、プロが使う薬剤や手法は素人には無理。 そこで簡単に購入・使用が出来るもので完全に近い対策を行う。 1.バルサンを焚く。 注意すべきは火を使わないタイプでは駄目だということ。 着火タイプの方が薬剤の粒子が小さく、隙間の奥まで届きやすい。 2.「網戸に虫来ない」とかいう類のスプレーを使う とはいえ、網戸に使うんじゃない。 網戸用のスプレーは薬剤が長期間残留するように作られてるのでこれを応用する。 玄関などの扉や窓、その他隙間の周囲に吹きつける(屋外側) 扉や窓の枠を囲むように幅30cm以上でぐる

    害虫駆除専門家の俺がゴキの姿を見ない家にするアドバイスしてやろう。 : 2のまとめR
  • Introduce Explaining Variable - Strategic Choice

    説明用変数の導入説明用変数の導入どんなとき?複雑な式がある。どうやって?処理の目的を説明するような名前を持つ一時変数に式、または式の一部の結果を代入する。たとえば?Before if (platform.upcase.index ("MAC") && browser.upcase.index("IE") && initialized? && resize > 0 ) # do something end After is_mac_os = platform.upcase.index("MAC") is_ie_browser = browser.upcase.index("IE") was_resized = resize > 0 if( is_mac_os && is_ie_browser && initialized? && was_resized ) # do something en

  • プログラミング言語の速度とアプリケーションの速度がいかに関係ないかがわかるグラフ - kなんとかの日記

    まずは次の表をご覧あれ。これはプログラミング言語のベンチマークとして有名な Computer Language Benchmarks Game のベンチマーク結果。上にいくほど高速で、下に行くほど遅い言語になる。 これを見れば、最速な言語は C/C++ であり、Java や Haskell や OCaml といった静的な言語は軒並み上位に登場する。これに対し、RubyPythonPHP といったスクリプトは全部下のほう (つまり遅い)。その速度差は非常に大きく、このベンチマークで見ると Python3 や Ruby1.9 は C/C++ の約50倍から60倍遅く、Perl は約90倍、PHP にいたっては約130倍遅いことになる。 (ちなみに JIT つきの Lua が驚異的に高速なのが目をひく。この結果が当だとしたら、言語の速度に大きく関係するのは動的か静的かではなく、どれ

    プログラミング言語の速度とアプリケーションの速度がいかに関係ないかがわかるグラフ - kなんとかの日記
  • 新人エンジニアとその先輩たちへ、OJTの前にこの本「ずっと受けたかったソフトウェアエンジニアリングの授業」を

    新人エンジニアとその先輩たちへ、OJTの前にこの「ずっと受けたかったソフトウェアエンジニアリングの授業」を 4月に新入社員として入社した新人エンジニアの方々は、早ければそろそろOJTという形で現場にやってきて、若手の先輩社員が新人の教育担当、あるいはOJTリーダーに任命される時期。 そんな新人エンジニア教育担当におすすめしたいを今回は紹介します。 プログラミングテクニックの解説は一切なし 一般にソフトウェアの開発は、顧客と相談して仕様を考え、それを外部仕様書、内部仕様書といったドキュメントに落とし込み、プログラミングを行い、ソースコードレビューやインスペクションを行い、単体テスト、結合テスト、運用テストといった工程を経て完成します。いわゆる「Vモデル」と呼ばれるものです。そしてこれらは1つのプロジェクトとしてマネジメントされます。 こうしてみると、ソフトウェア開発の中でプログラミング

    新人エンジニアとその先輩たちへ、OJTの前にこの本「ずっと受けたかったソフトウェアエンジニアリングの授業」を
  • Webプログラミング素人が利用者9万人のmixiアプリを作るまで - 毒蛇は急がない

    はじめに 最近、 文系ド素人がmixiアプリを開発〜リリースするまでのまとめ http://d.hatena.ne.jp/kazu0620/20100412/1271071223 というエントリーが話題になりましたね。自分もwebプログラミング素人でmixiアプリを作ってみたので、ちょっと便乗して、自分がmixiアプリを作るまでのプロセスをまとめてみました。 これからアプリを作る人の参考になれば幸いです。 kazu0620さんは、個人で作っていたみたいですが、自分は会社で作りました。会社といっても、自分含め従業員数3人の超零細企業でフリーランスの延長線上みたいなかたちでやっている会社ですが。 ちなみに会社のサイトはこちら。 作ったアプリ 「ふしぎな生き物 ふにゃもらけ」 http://mixi.jp/run_appli.pl?id=9443 リリース日:3/23 実質開発期間:8ヶ月 週間

    Webプログラミング素人が利用者9万人のmixiアプリを作るまで - 毒蛇は急がない
  • 人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。

    さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * ************************** という入力に対し、 ************************** *S* * $$$ * *$* *$$*$ ************

    人材獲得作戦・4 試験問題ほか - 人生を書き換える者すらいた。
  • Administrative Quarantine

    Your system administrator has blocked your computer or device. Please contact the system administrator.

  • デザインパターンの骸骨たち

    『デザインパターン』 うんちくできると、かっこよさそうだよね~。でもあんな分厚い読んでもピンとこないし、だいたいオブジェクト指向ってなに?なにが便利なのかよく分からんのだけど。いいじゃんなんでも。できればいいんだよ、できれば。 な~んて、思っていても、なんとなく オブジェクト指向が気になっている システム開発者は、多いのではないでしょうか?かくいう 私もそんな者の一人でした。 しかし、これだけ もてはやされているオブジェクト指向です。 なんか、便利なはずです。 そこで、私は、GOFのデザインパターン[1]を、できるだけシンプルに表現した、小さな小さなプログラム ~デザインパターンの骸骨たち~ を作ってみました。骸骨達 を骨の髄までしゃぶり尽くつくすせば、オブジェクト指向の真髄まで味わうことができるかも。!? 『デザインパターンの骸骨たち(RE-BONE)』 では、内容を大幅に見直し、Ja

  • オブジェクト指向エクササイズのススメ

    オブジェクト指向では、モデリング(分析)、設計、実装は、切れ目のない一体の活動。初期の分析は初期の設計であり、初期の実装。毎日分析し、毎日設計し、毎日実装しながら、一歩一歩、モデルも実装も進化させていく。

    オブジェクト指向エクササイズのススメ
  • リファクタリング (プログラミング) - Wikipedia

    この記事には独自研究が含まれているおそれがあります。 問題箇所を検証し出典を追加して、記事の改善にご協力ください。議論はノートを参照してください。(2020年10月) この記事で示されている出典について、該当する記述が具体的にその文献の何ページあるいはどの章節にあるのか、特定が求められています。 ご存知の方は加筆をお願いします。(2014年4月) リファクタリング (refactoring) とは、コンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理することである。また、いくつかのリファクタリング手法の総称としても使われる。ただし、十分に確立された技術とはいえず、また「リファクタリング」という言葉に厳密な定義があるわけではない。 リファクタリングが登場する以前は、一度正常な動作をしたプログラムは二度と手を触れるべきではないと言われていた。な

  • TEF有志によるTestLink日本語化プロジェクト - TestLinkJP

    How to Write a Thesis on T-Building A strong introductory paragraph starts with a hook that grabs the reader’s attention. Then, it provides details that lead to the thesis statement. The T Building—formerly the Triboro Tuberculosis Hospital in Queens, New York —is now affordable and supportive housing. It’s also a model for adaptive reuse of historic buildings. Adaptive Reuse of an Historic Buildi

  • fladdict.net blog: OOP全盛期だけど、手続き型がマイブームになってる(前)

    このオブジェクト指向全盛期に、なんか手続き型のプログラミングがマイブームになっています。 いや、マジに手続き型ってさ、超便利じゃないですか??? 「手続き型ってなによ?」って人もいると思うので超簡単に説明しちゃうと・・・ オブジェクト指向は、データと関数(アルゴリズム)1つのクラスとして、まとめてデザインするプログラミング。 手続き型は、データと関数を分離して作成するわけです。いわゆるBasicみたいな昔っぽいプログラミング手法です。 一般的に、「手続き型は古い手法で、OOPのほうが汎用性も生産性も高い」ってイメージなんだけど、最近ほんとうにそうなのかな?って気もしてきた。 というか、(OOP言語で)あえて手続き型やるのって、超柔軟性あるんじゃね? とか思ってしまったり。 例えば、RGB(赤、緑、青)値で色を管理するColorクラスがあるとします。それを拡張して、hsb(色相、彩度、明度)

  • オブジェクト指向エクササイズ - Strategic Choice

    書籍「ThoughtWorksアンソロジー」の「第5章 オブジェクト指向エクササイズ」より。概要優れたオブジェクト指向設計の原理を自分のもにし、実際に使えるようになるためのエクササイズ。ほぼ必然的にオブジェクト指向になるコードを書くように強制する9つのルールを、1000行程度のプロジェクトで適用してエクササイズ。要するに、オブジェクト指向の「理解」を「実践力」にするための『練習』メニューの紹介。注意あくまで「練習」で、普遍的なルールとは限らない。ただし、筆者(Jeff Bay)は実際のプロジェクトで適用して上手く運用出来ているらしい。エクササイズ・ルール一覧ルール1:インデント1段階 1つのメソッドにつきインデントは1段階までにすることルール2:else句禁止 else句を使用しないことルール3:プリミティブ禁止 すべてのプリミティブ型と文字列型をラップすることルール4:ドット1つ 1行に

  • List of programming languages - Wikipedia

    This is an index to notable programming languages, in current or historical use. Dialects of BASIC (which have their own page), esoteric programming languages, and markup languages are not included. A programming language does not need to be imperative or Turing-complete, but must be executable and so does not include markup languages such as HTML or XML, but does include domain-specific languages

  • OpenID & OAuth 仕様書を日本語に翻訳しました - 京の路

    昨年末にOpenIDファウンデーション・ジャパン参加企業の有志数名で翻訳・教育 Working Groupというのを立ち上げて、現在は主にドキュメントの翻訳を行っています。 現在4のドキュメントの日語版を翻訳・教育 Working Group のサイトで公開しています。(この記事の末尾にリンクあり) 翻訳後のドキュメント以外に、githubレポジトリも公開しています。forkもpull requestも大歓迎!原文との比較がしやすいように、各翻訳版のXMLファイルにはコメントアウトの形で原文も残されています。 翻訳版ドキュメントへのコメント・質問は翻訳・教育 Working Group のサイトのコメント欄にどうぞ。 OpenID Authentication 2.0 OpenID Attribute Exchange 1.0 OpenID Simple Registration Ex

  • デザインパターン[モデリング] -TECHSCORE-

    オブジェクト指向プログラミングにおいてデザインパターンを利用することは、開発者に様々なメリットを与えてくれます。 ここでは、「デザインパターンとは何か」というようなデザインパターンの基事項と、GoFの23個のデザインパターンをJavaを利用してわかりやすく解説します。 デザインパターン INDEX

  • 意外と知らないバージョン表記・数字の豆知識

    この記事で分かること ソフトウェアのバージョン表記が示す開発段階や数字の意味 Alpha(アルファ)やBeta(ベータ)、その他特定の数字の意味 マーケティング戦略などに左右されたバージョンアップの例 ちまたにあふれるバージョン表記 少し前に「Web 2.0」「○○2.0」という表記が流行したのを覚えていますでしょうか。よく見かける広告のコピーにも、最近では「バージョンアップ」という言葉が普通に使われています。バージョンや、バージョン表記は、ソフトウェアの世界だけでなく、ごくごく一般化したように思えます。しかし実際には、どういう意味か分からないのが、バージョン表記です。 アプリケーションソフトウェアの開発は、さまざまな状態/段階を経て完成します。その段階/状態と、リリース後の状態/段階を示したのが、バージョン表記です。 例えば、数字以外でも、以下のような表記を見かけたことはありませんか?

    意外と知らないバージョン表記・数字の豆知識
  • あまりに見事に酷いお話 - みねこあ

    いきなりお仕事の愚痴で申し訳ないのです。 私たちが作っている機器の下位ユニットのソフトの出来が酷いです。 どういう風に酷いかというと、ちょっと通信ログみれば一発で(仕様をしらない人間でも「ああ、こりゃコピペして修正を途中し忘れたな」と解るような)バグが普通にあったり、2個同じものをもつ構成なのに片方づつ全く違う挙動をしたり(バグも両ポートで違う^^;)。もちろん(?) コッチを直せばアッチがデグレードで、いつまで経ってもまともに動くようになりやしません。 で、あまりの酷さゆえ、彼らのコードのレビューが開かれたのですが。おぉ、これは凄い。こんなに見事なコードをみたのは初めてでした。 最長不倒関数、芸術的字下げ、strcat の嵐、グローバル変数の多用(しかも同類を構造体に纏める事すらしない)、コメント無し・define 無しで使われる数多のマジックナンバー、strcat の嵐、ナンバリングさ

    あまりに見事に酷いお話 - みねこあ
  • Programming Languages - Google Code University - Google Code

    Programming Languages Google's Python Class This is a complete online introduction to Python programming, including writen materials, lecture videos, and coding exercises. The class is geared for people with a little bit of programming experience, and is used within google to introduce Python. Below are video-taped lectures from Google Video on various technology areas. These videos are great oppo