タグ

プログラミングに関するyou_gotのブックマーク (25)

  • ASCII.jp:Twitter APIとGAEでおもしろWebサービスを作ろう! |Twitter&Google App Engineで始めるWebプログラミング入門

    みなさんこんにちは。ふむふむソフトの飯島です。 さっそくですが、みなさんはTwitter APIを使ってプログラミングしていますか? すでに星の数ほどTwitterアプリやWebサービスはありますし、バリバリ使っている方も多いと思いますが、「知っているけれど、なかなか触るチャンスがなくて……」という方もたくさんいるのではないでしょうか? そこで今回から5回にわたって、Twitter APIを使ったWebサービスのプログラミングについて解説したいと思います。ただAPIの使い方を解説するだけでは面白くないですから、Webサービスを公開するサーバーとしてグーグルのクラウドサービス「Google App Engine(以下GAE)」を使い、自分でサーバーを用意することなく全部無料で遊んでみましょう。 連載では、サンプルコードのダウンロードはもちろん、Twitter APIの準備からGAEの準備、

    ASCII.jp:Twitter APIとGAEでおもしろWebサービスを作ろう! |Twitter&Google App Engineで始めるWebプログラミング入門
  • テスト駆動開発の効果はどのくらいある?

    ソフトウェアの開発を行うときに、まずテストケースを先に作ってから機能を作り込む「テスト駆動開発」(Test-Driven Development:TDD)。これにより、ソフトウェアの開発工数や品質にはどの程度の変化があるのでしょうか。 TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ この疑問について調査した論文を、奈良先端科学技術大学院大学 助教の森崎修司氏が3月10日のブログ「国立大学法人奈良先端科学技術大学院大学 助教」のエントリ「TDD(テスト駆動開発)の適用評価を紹介した研究論文 - エリクソンはじめ3社」で紹介しています。 開発時間はやや増えたがコードの品質は上がった 論文全文は有料なので読めないものの、森崎氏のブログによると次の知見が得られたとのことです。まず、ソフトウェ

    テスト駆動開発の効果はどのくらいある?
  • JavaScript基礎文法最速マスター - gifnksmの雑多なメモ

    続々と増え続ける基礎文法最速マスターシリーズ(あまりにも増えてきたので他の言語記事へのリンクは別の記事に移しました)。 JavaScript 版は誰も書いていなかったようなので書いてみます。こういう解説記事的なものを書くのは初めてなので変なところがあったら指摘して頂けるとありがたいです。 JavaScriptの基礎概念についての解説はこちら:JavaScript概念最速マスター - TechTalkManiacs 1/31 23:58追記 コメント欄のos0xさんのご指摘を基に一部追記・修正を行いました。 2/2 2:52追記 switch文・正規表現・例外処理について追加しました。 2/2 6:44追記 コメントでfavrilさんにご指摘頂いた点(typo & コメント・サンプル追加)を修正・加筆しました。 2/2 7:15追記 トラックバックでLiosKさんにご指摘頂いた点(cal

    JavaScript基礎文法最速マスター - gifnksmの雑多なメモ
  • http://neta.ywcafe.net/001023.html

  • O'Reilly Media - Technology and Business Training

    More than 5,000 organizations count on our digital courses and more to help their teams learn the tools and technologies that drive business outcomes. We can help yours too. New AI policy for O’Reilly authors and talent O’Reilly president Laura Baldwin shares the company’s ethical approach to leveraging GenAI tools and ensuring O’Reilly experts are compensated for their work. Read it now It’s time

    O'Reilly Media - Technology and Business Training
  • 最強最速アルゴリズマー養成講座:あなたの論理的思考とコーディング力は3倍高められる (1/2) - ITmedia エンタープライズ

    全世界で20万人を超える凄腕のコーダーが集うプログラミングコンテスト「TopCoder」。稿では、アルゴリズム部門のSRMで取り上げられる問題を考えながら、論理的思考力およびコーディングのテクニックを養っていきます。 はじめに はじめまして。高橋直大です。連載「最強最速アルゴリズマー養成講座」では、全世界で20万人を超える凄腕のコーダーが集うプログラミングコンテスト「TopCoder」について、そこで出題される数学・アルゴリズムのパズルを考えることで、コーディングのテクニックおよび論理的思考力を磨くことを目的に開始するものです。ここで扱う技法は主にアルゴリズムのそれですが、その根底にはロジカルな思考術が存在します。そうした能力を養いたい方にとって少しでも役に立てれば幸いです。 なお、稿は必要に応じてコーディング例も紹介しますが、TopCoderで出題される問題の中から比較的やさしい問

    最強最速アルゴリズマー養成講座:あなたの論理的思考とコーディング力は3倍高められる (1/2) - ITmedia エンタープライズ
    you_got
    you_got 2009/08/02
    コンテストで切磋琢磨
  • IT系でも活用しなければ損。論文を読んで広がる知見 - @IT

    Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部) 論文は、難しくない 読者の皆さんの中には、「論文」と聞くと身構えてしまう方も多いのではないでしょうか? 論文というと、書くのも読むのも大変で何だか小難しいことが書いてあるもののように思えるものです。それどころか、「論文とは縁がない」「プログラムがすべてだ」と思う方もいるかもしれません。しかし、ある特定分野の技術や研究を詳しく知るためには、論文は手軽で確実な情報源です。 よく論文が持つ意味について「巨人の肩の上に立つ」と例えられることがあります。これは、万有引力の研究で知られるニュートンも好んで引用していた言葉だそうです。「現代の学問は多くの研究の蓄積の上に成り立っている」ことを示す言葉

    IT系でも活用しなければ損。論文を読んで広がる知見 - @IT
  • クローラーを作るためのフレームワーク·Anemone MOONGIFT

    RSSフィードやWeb API、Mashupなどの単語が注目を集める中、Webクローラーを通じて外部のWebサイトにあるデータをかき集め、それを解析して別な形にするというのはよく見られるものになってきた。 あるURLを指定し、そこからリンクされているURLを一覧表示できる そうした数々のシステムの中で、クローラーとなる基盤は大きな違いはない。Webサイトのデータを取得し、次のリンクを洗い出して取得していくようなものだ。そうした共通動作部分を切り出したフレームワークがAnemoneだ。 今回紹介するオープンソース・ソフトウェアはAnemone、Webクローラを開発するためのフレームワークだ。 Anemoneは任意のWebサイトにアクセスし、その内容を解析するWebクローラーだ。例えばあるURLに付けられているリンクを一覧で取得するようなことも簡単にできる。外部サイトなのかどうかも区別できるの

    クローラーを作るためのフレームワーク·Anemone MOONGIFT
  • 電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた! : akiyan.com

    電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた! 2009-06-07 『電子工作』 なんとなく興味はあるけど、電気回路なんてまったくわからないし、はんだごてとか使うのもやたら危なそうだし...というイメージが(少なくとも個人的には)ある電子工作の世界。 そんなイメージは、とあるセミナーでぶっ壊されました。 なんと、最近の電子工作の世界は「プログラミング未経験でもperlCGIやPHPぐらいならできそう」と同じくらいのところまできていたのです。 たとえば、PCを使わずに「人が通ったことをセンサーで感知して、自動的にtwitterにpostする機械」を、電子工作経験がほぼゼロの僕でもちょっとがんばれば作れそうと思えるぐらいでした。 「できたらいいなあ」が「やればできちゃう」ぐらいになってて、なんだか、視野がぐぐっと広がった感じがしてかなりテンションがあがりました。

    電子工作の経験がなくても、誰でもハードウェアを自作できる時代が来ていた! : akiyan.com
  • 本当はすごい、知られざるGoogle Maps APIたち!!

    「商業利用もOK! Google Mapsについて知りたいこと」に続くGoogle Mapsインタビューの後編は、数多く存在するGoogle Maps関連のAPIや機能のうち、あまり知られていないものや新しいものをグーグルのソフトウェアエンジニア、淺川浩紀さんに聞いた。 Code Playgroundでオンライン編集 まずは、即効性のあるものからいこう。 Googleが持つ多くのAPIは、Webブラウザ上からJavaScriptによって呼び出せる。JavaScriptはコンパイルの手順なしに書けば実行できるので手軽である。しかし、だからAPIを試すのも簡単だとは限らない。例えば、Google Maps APIなら正しいGoogle Maps APIキーを用意したり、適切な文書にプログラムを埋め込んだりする作業を行い、それをWebブラウザで開かねばならない。

    本当はすごい、知られざるGoogle Maps APIたち!!
  • 大都会の夜景をコンピューターによって完全自動で描画するムービー

    ハリウッド映画CGシーンは何人ものCGアーティストが、高価な機材を何台も使って手作業で作成されるために、予算が高騰している要因の1つにもなっているほどですが、これらのCGにも勝るとも劣らない大都会の夜景をどこにでもあるコンピューター1台だけで生成してみた人がいます。 手作業でテクスチャーを描いたり、グラフィックボードに搭載されているピクセルシェーダーのように、外部のプログラムを用いて特殊な効果を与えるなどの手間をかけることなく、内部のプログラムが自動で生成するポリゴンとテクスチャのみを用いて壮大な夜景が生成されています。いかに単純な仕掛けで人間の目をだましてものすごい映像を作り出すか、よいヒントになるかもしれません。 詳細は以下。 Twenty Sided >> Blog Archive >> Procedural City, Part 1: Introduction このプログラムはS

    大都会の夜景をコンピューターによって完全自動で描画するムービー
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ

    プログラミングを始めてから今日に至るまで、 様々なタイプのプログラマーと開発を共にしてきたが、 驚くべき速度で高い品質のソフトウェアを作り上げるプログラマーには、 一つ共通の特徴があるように思える。 それは、「はまる」時間が極端に短い、ということである。 風のプログラマー」を指向しており、開発速度を重要視している。 例えば平成14年未踏ソフトウェア創造事業「PICSY」では、 発表直前に知人でプロジェクトリーダーの鈴木健にレスキュー隊として呼ばれて 2,3日でGUI全般と、クライアント/サーバー通信部分の設計と実装を終わらせたのだが、 このときなどは、大体の要件を口頭で聞いた後は、 ほぼまったく手が止まらずコードを書き続ける感じで開発をしていた。 「はまる」時間の長さは開発速度に直結するわけだが、 プログラマーが「はまる」場合にはある程度の傾向があると思うので、 今日は「はまる」プログラマ

    プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ
  • きれいなソースコードを書くために必要な、たったひとつの単純な事 - よくわかりません

    「構造のきれいなプログラムを書けるようになるためにはどうすればいいのか?」という質問を受けたので、「はて?どうしているだろうか?」と考えてみました。あ、形式知にきちんとなっているようなテクニックみたいなもんじゃなくて、モノローグなので、あまり凝ったものは期待しないように。 http://blog.shibu.jp/article/28983162.html 自分なりにもっと凝縮版を。渋川さんが言っている事全体もその通りとは思うけど*1、もっと簡単で、しかも射程が広い、と自分が思っている事。 渋川さんはちょろっと触れてるだけだけど、自分はこれが最も基的で汎用的、かつ、ソースをきれいにする原動力となる上にバグをも減らしてコードの汎用性まであげる、コーディングのエンジンみたいなものと思ってる。それは、 「すべてに正しい名前を付けて、そして、正しい名前であることを維持する」という鉄の意志 クラス

    きれいなソースコードを書くために必要な、たったひとつの単純な事 - よくわかりません
  • 【2009年度版】.NET開発者のためのオンライン・リソース・ガイド - @IT

    特集:フレッシュマン企画 【2009年度版】 .NET開発者のためのオンライン・リソース・ガイド デジタルアドバンテージ 一色 政彦 2009/04/21 稿は、これから.NETでプログラミングを始めようとしている方や、新しく.NETでの開発に携わることになったフレッシュマンに贈るオンライン・リソース・ガイドの2009年度版である。インターネット上に数ある.NET関連サイトの中で、.NET開発者がまずは押さえておくべきWebサイトについてまとめている。 ●稿がまとめているサイト&ジャンル分けについて .NET開発者がよく利用するサイトの代表は、やはり.NET Framework & Visual Studioを提供するマイクロソフトのサイトだろう。だがひとくくりに「マイクロソフトのサイト」といっても、マイクロソフトが運営するサイトは当にたくさんあり、それぞれのコンテンツも膨大となって

  • ラムダ計算とチューリングマシンの違い 2009-04-13 - きしだのはてな

    ぼくもYコンビネータがわかるようになるまではそうだったのだけど、Yコンビネータを使うとどのような処理ができるのかがよくわからなくて悩んでいる人が多いように思う。他の人のブログを見ても、名前をつけずに再帰ができるのがすばらしいとか書いてあったりするのだけど、それによってどういう処理ができるのかわからずにいた。 結論をいえばYコンビネータには、なにかの処理を便利にする能力はない。関数であらゆる計算ができるということが示せれば、あとは用なしだ。理論の礎としてうまってしまえばいい。 結局、Yコンビネータによってどのような処理ができるかというのは、ラムダ計算の要素のメリットをチューリングマシンの中に見出そうとしてるといえる。 ラムダ計算とチューリングマシンは、どちらも計算モデルという点では一致しているけど、全く違う。 無限であるか有限かの違いといってもいい。 チューリングマシンでは、データの量と処理

    ラムダ計算とチューリングマシンの違い 2009-04-13 - きしだのはてな
  • 「ソフトウェアは工業製品ではない」、Rubyのまつもと氏が講演 - @IT

    2009/04/10 ソフトウェアは工業製品ではない――。Rubyの生みの親としてしられるまつもとゆきひろ氏は2009年4月9日、InfoQ主催のイベント「QCon Tokyo 2009」の基調講演で、ソフトウェアと何であり、何でないのか、それはどういう性質のものであるのかを雄弁に語った。 コードとは設計である 「ビューティフルコード」と題した基調講演を行ったまつもと氏は、2007年に共著者の1人として出版した同名の書籍に書いたエッセイに込めた思いを、次のように語る。 「世界に冠たる日の製造業のノウハウを適用することで生産性を上げることができるに違いないという発想がありますが、ソフトウェアは工業製品ではない。そうした誤解を正していきたい」。 ソフトウェア産業界では、よくエンジニアが何十万人足りないということが言われる。しかし、まつもと氏は、これは工業生産と同じ方法論を当てはめることから来

  • Undo,Redoの実装って何十回もやってる気がする - あしあと日記

    undo,redoの実装って何十回もやってる気がする。毎回同じパターンだ。undo,redoが登場するような編集ソフトは大体同じパターンに落とせる。フレームワークも作った。ブログにそういう内容を書きたいが面倒くさい。需要があれば面倒でも書くんだけどなあ http://twitter.com/youpychan/status/994486992 という発言をしたら何人か反応を頂いたので書いてみることにする。 需要があるなら書こう。undo,redoだけじゃなくてグラフィカルな編集ソフト全般の話をいつかまとめたいと思っていたので、ちょいとシリーズで書いてみようかとおもう http://twitter.com/youpychan/status/994636764 書こうと思う。 まずUndo,Redoについて。 Unod,Redoってみなさんどういう風に実装しているでしょうか? 私はコマンドパタ

    Undo,Redoの実装って何十回もやってる気がする - あしあと日記
  • いいコーディング規約、悪いコーディング規約? | スラド デベロッパー

    格的なソフトウェア開発企業で働くとき、最初の頃にまずコーディング規則や慣習などのガイドラインに目を通したかと思う。基的なガイドラインとして、gotoは原則使用禁止だとか、インデントにはスペースではなくタブを使用すべきであるとか、またはその逆などがあっただろう。ひょっとしたらcontinue禁止や、複数リターン値禁止など、ちょっと変わってるように思える慣習や、あまり直感的とは言えないルールといったものもあったかもしれない。 可読性を高めたり、メンテ性を向上させるには、どんな規約が有効だっただろうか? ドキュメント上では一見良さそうに見えたが、実際はイマイチだったものなどあるだろうか? /.J諸氏が実践してきたコーディング規約で特に有効だったのはどんなものだろうか? 逆に規約のせいで問題が起きてしまったケースなどあるだろうか? 他にも、使える「自分ルール」などもあれば是非。

  • [ThinkIT] 第1回:Webブラウザを使ったテストツールSeleniumとは (1/3)

    この連載は、WebアプリケーションのテストツールであるSelenium(セレニウム)についてサンプルを用いながら概要と基的な使い方を解説していきます。連載第1回の今回は、Seleniumの概要について紹介します。 Seleniumとは、Webブラウザを使ってWebアプリケーションをテストするツールです。この「Webブラウザを使って」というのが非常に大きなポイントで、人が手でWebブラウザを操作する代わりにSeleniumがWebブラウザを操作してくれるのです。 そして単純に操作するだけでなく、例えばエラーメッセージが正しく表示されているかといった検証も行うことができます。つまり、今まで人手を必要としていたWebブラウザを使った試験が自動化できるものなのです。そのため数百項目もあるテストも、クリック1回で実施できます。 より重要なことは「自動化することによって試験を繰返し実施できる」こと