Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
![InfoQ: TDDを根づかせる:導入の問題と解決策](https://cdn-ak-scissors.b.st-hatena.com/image/square/b4110e9ea11d99e1834a1d1e68276660ccf41ce2/height=288;version=1;width=512/https%3A%2F%2Fcdn.infoq.com%2Fstatics_s2_20220824065033%2Fstyles%2Fstatic%2Fimages%2Flogo%2Flogo-big.jpg)
自作絵、Netscape 7/Mozilla用XULアプリケーションの配布、W3C子など。
ロング・テール理論の名付け親で、雑誌「Wired」の編集長としても知られるクリス・アンダーソン氏が3月12日付けのブログでオープンソースソフトウェア(OSS)プロジェクトの運営体制に関する誤解を指摘をしている。 アンダーソン氏によれば、多くの人はオープンソースプロジェクトというのは草の根から立ち上がり、自律的に組織化し、民主的に運営されているという誤った認識を持っている。ところが現実はまったく逆で、1人か2人の「慈悲深い独裁者」によって運営されている、という。 これはオープンソースプロジェクトに参加していたり、あるいは日常的に成果物を利用している人であれば、そういうものだと首肯するかもしない。メーリングリストで客観データに基づいて議論したり、リーダーを民主的に選ぶようなプロジェクトもあるかもしれないが、おおかたのオープンソースプロジェクトには、それを開始し、中心に位置し続ける“独裁者”がい
2009/04/10 ソフトウェアは工業製品ではない――。Rubyの生みの親としてしられるまつもとゆきひろ氏は2009年4月9日、InfoQ主催のイベント「QCon Tokyo 2009」の基調講演で、ソフトウェアと何であり、何でないのか、それはどういう性質のものであるのかを雄弁に語った。 コードとは設計である 「ビューティフルコード」と題した基調講演を行ったまつもと氏は、2007年に共著者の1人として出版した同名の書籍に書いたエッセイに込めた思いを、次のように語る。 「世界に冠たる日本の製造業のノウハウを適用することで生産性を上げることができるに違いないという発想がありますが、ソフトウェアは工業製品ではない。そうした誤解を正していきたい」。 ソフトウェア産業界では、よくエンジニアが何十万人足りないということが言われる。しかし、まつもと氏は、これは工業生産と同じ方法論を当てはめることから来
やっと、Yコンビネータが何を意味するものなのか、どういう意義があるのかがわかりました。 名前を使わず再帰ができますよ!というだけのものじゃなかったのですね。 まずλありき 関数の話をしたいのです。 そのとき、いちいち hoge(x) = x * 2 としてhogeを・・・、とか名前をつけて話を進めるのがめんどうなので、関数を値としてあらわすと便利ということで、λという値を定義するのです。 そうすると、上のhoge関数なんかはλ(x)(x*2)などとあらわせますが、引数をあらわすのに()を使うといろいろまぎらわしいので、 λx.x*2 のように表記します。 というのがλ。 このとき、λになにかわたされたら、引数としてあらわされる部分を単純におきかえます。 (λx.x*2)y とあったら、xの部分をyでおきかえて (λx.x*2)y → y * 2 となります。λの引数部分を与えられた引数で置
2009年04月09日00:15 カテゴリLightweight LanguagesCode バイナリとテキストの本当の違い うーむ、Wikipediaですら「見た目」の違いしか説明していない。 バイナリ - Wikipedia コンピュータが扱うすべてのデータはバイナリデータ(バイトの並び)であり、プレーンテキスト(または単にテキスト)もバイナリデータの一種ではあるが、通常バイナリとテキストは対比して用いられる。テキストとはデータの内容すべてを人間が読んで理解できる (human-readable) 表現形式を指し、バイナリとはそうでない表現形式を指すことが多い。 Binary file - Wikipedia, the free encyclopediaA binary file (.bin) is a computer file which may contain any type
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
最近出た Twitterville というアプリを教えてもらったのですが、唖然としました。どうやら github に上っている NatsuLion for iPhone のソースコードをそのままコンパイルして、名前とアートワークとクレジットだけを変えて、ほか機能いじらずに販売されてしまっているようです。ライセンス的には New BSD License ですので、もちろん第三者がコンパイルして(改変してもソース公開なしに)売ることも可能ですが、アプリのクレジットが明確に消されてしまっています。(購入して確認しました。ついでに返金請求してみた。) あと個人的には、起動画面のやっつけ具合もちょっと無いんじゃないかなあ、と。。 クレジットのところは明確に New BSD License 違反なので、この Twitterville の作者に入れるようにとのメールを出しました。残念なことになってしまい
CPUの気持ちは大事だけど、VMの気持ちも考えようよ CPUの気持ちになってプログラムを書くということ Kansai.pm#11 参加記その1 - プログラマになりたい ちなみに、下記のコードはデータハザードを解消する為のコーディング例です。データハザードは、命令が利用するデータ間に依存関係がある場合に発生します。前の命令が終わらないと後ろの命令が実行できないとか。ですので、それを解きほぐしてやれば、並列で処理が出来るようになります。という感じでnaoyaさんもぶこめで loop unrolling は perl でもちゃんと効果があるって書いてるけど、それforブロック(スコープ)が一段増えてる事で差が出てるんじゃないかと思うわけです。はい。 以下検証コード use strict; use warnings; use Benchmark qw(:all); cmpthese(500000
2009/03/25 オープンソースムーブメントの立役者の1人で、その開発モデルを分析した論文「伽藍とバザール」の存在で知られるエリック・S・レイモンド氏が、われわれ(オープンソースコミュニティ)は、「もはやGPLを必要としていない」という論議を呼びそうな自説を主張している。 GPLはデメリットが大きい GPLは、もはやメリットよりデメリットが大きいという持論を「異端の説」としてレイモンド氏が唱えたのは「LILUG」(ロングアイランドLinuxユーザー会)での講演。レイモンド氏を招いたLILUGが、2009年3月10日の講演内容をブログで伝えている。ブログには講演の動画へのリンクがあるほか、主張のポイントとなる個所が全文引用されている。 レイモンド氏は、オープンソースコミュニティ全体を代表しているわけではないが、優秀なハッカーとして、また文筆家として広く尊敬を集めている。レイモンド氏は、1
プログラマーの方か、プログラミングから逃げ切ることに成功した方はイラッシャイマセンカ? 暇がありましたら、お助け下さい。 生まれつき、生活保護が下りない程度の知能障害を持っている者です。 (診断書はないですが) なぜかプログラミングを始めてしまいました。ここで変に夢を持ってしまったのが過ちでした。 それからというもの、失敗する度に落ち込み激しい鬱状態になり、できないことがあるたびに自傷衝動が起きてしまいます。 数百時間は勉強しましたが、クラス、オブジェクト、public/private、コンストラクタ、グローバル、継承 その他数え切れないほどの専門用語が何一つわかりません。なんであんなものを理解できる人がいるのか不思議でなりません。 そして、それでもプログラミングがやめられません (決して楽しいという意味ではありません!) 向いていない、鬱になるだけとわかっていて一々試し、ますます死にたく
はてブを中心としたblog界隈でイケている言語使いと言えば、perl, rubyだろう。phpは、かつてのVisual Basicと同じような扱いを受け、C++はアセンブラと言われて久しい。 Javaは大手SIer、アジャイル、OOP系ではもちろん主流だが、どちらかというと、かつてのCOBOLのようだと言う過激な意見もある。 しかし、そんな風潮と社会の評価が一致していないのが、プログラマーの職業観に微妙な悩みを抱えてはいないだろうか?! 求人数はJava、年収はC#がトップ――ワークポートが調査 - @IT 求人数ランキング 1位:JAVA 683 2位:C 653 3位:C++ 345 4位:PHP 272 5位:C# 223 6位:VB 189 7位:Perl 162 8位:JavaScript 110 2009年収ランキング(単位:万円) 1位:C# 627 2位:C 550 3位:
インクリメント演算子は、どうも言語によってかなり扱いが違うことに気がついた。 後置インクリメントまず、実行しようと思うコードの擬似表現は以下。このコードを実行すると、どのような結果が出力されるだろうか? まずは頭の中で考えてほしい。 なお、「a++」の部分は「後置インクリメント」と呼ばれ、式自体の評価値はインクリメント前の値になる。つまり、「a++」の評価値はいずれの言語でも1になる。 a = 1; print (a + a++); 計算し終わっただろうか。では上記コードを各種言語で実行した場合の結果を見てみよう。 C言語の場合 http://codepad.org/VXw0Uo2IJavaScriptの場合 ↓をアドレスバーに貼り付けてEnterで実行できる javascript:var a=1; alert(a + a++);PHPの場合 http://codepad.org/Ho7p
FUDを広げるのは誰の特にもならないと思うんだ。 以下、まぁ書き散らかしです。あんまり推敲してません。すまそ。ちなみに、下記記事に対するブクマはDISも多いけど、素直な反応もちらほらあるようで興味深い。 僕にとってのJavaは2001年に終わってますが・・・。同じ事何回も書かなくちゃいけない言語なんて死んだも同然ですよ。ライブラリもちらばってて何がどこにあるのかわかんないし。 って、書くのは簡単です。多分元記事をテンプレ化してほぼ同じ事をどの言語に対しても僕は書けます。 ただ、エンジニアという職種の人がそんなことしてるのはどうかなぁ、と。エンジニアの使命を問題を解くことです。何でつまづいたかとか、なにがむずかしかったとか、何ができなかったとかそういう事をちゃんと書いて欲しいなと思う。CPANのアップロードとかも状況に対しての認識もなく、「回数」という一面だけで判断をばっさりしてていいのでし
javascripter's gist: 64615 — Gist をテストしている時に気がついたこと。 最も一般的な var hashtable = {}; var key = "foo"; if (key in hashtable) { // has key } hashtable[key]; // lookup hashtable[key] = "bar"; // add は、keyがObject.prototypeに登録されているメンバ名だった時(例えば"hasOwnProperty"や"propertyIsEnumerable")、in演算子がtrueを返して失敗する。 次に、hasOwnPropertyを使ってプロトタイプチェーンを辿らないようにする方法。 var hashtable = {}; var key = "foo"; if (key.hasOwnProperty(k
アツいエントリなんで思わずTBうってみる。 この業界の問題、それはプログラムが、新人〜3年目の作業と位置づけられていることだ。 プログラマーの誇りを見せ付けろ - 山本大@クロノスの日記 正確に言うと上級プログラマも初級プログラマも同じ値段で評価されるってことが弊害である、ってことだと思います。予めXXX万円で作ってねという予算が決まっていて、その予算をオーバーしないことだけが成果の基準にあることが問題だと考えます。このルールにおいては、極論ですがコード品質が高くても低くても大差が無くねっていう力学が働きます。 基本的にニッポンの受託開発のプロジェクトの場合は、大きく2つのプレイヤーがいます。 案件を立ち上げてお客さんへのコミット権限がある人・会社 立ち上げた案件をシステム化してデリバリする人・会社 ですが、今の流れでは工程が分断されちゃっているので、案件を立ち上げる人とシステム化してデリ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く