タグ

関連タグで絞り込む (374)

タグの絞り込みを解除

programmingに関するKasabutaのブックマーク (200)

  • 今の子供達にどうやってプログラミングの楽しさを教えたらいいのか?

    うちはとても貧乏だったというのに、なぜか俺が小学三年生のときに、親父がパソコンを買ってきた。 親父は電気工事屋をやっていたから電気製品が好きだったんだろう。 当時小学六年生だった兄貴も機械いじりが好きだった。 電子ブロックなんてのが家にあった。 とはいえ、二十万円もするパソコンをコンビニでウーロン茶を買うかのように買ってきた親父が、あとでオカンになんて言われたのか、いまとなっては知るよしもない (いや、親父もオカンもまだ生きてるので、聞こうと思えば聞けるが) 。 ともかく、俺が小学三年生の時には家に MZ-2000 というパソコンがあった。 三年生のときはそもそもパソコンとはなにかも知らなかったし、親父も兄貴も壊れものを扱うかのように大事に触るので (実際壊れものだ) 、俺には触らせてもらえなかった。 親父や兄貴の背中越しに見ているだけだった。 当時はパソコン用のソフトなんてのがそこらに売

    今の子供達にどうやってプログラミングの楽しさを教えたらいいのか?
  • 伝えたければ、もう語るのをやめてください。

    d:id:shi3z:20070913 言いたいことはわかりますよ。スタックを知っていれば、レジスタを知っていれば、メモリ管理の仕組みを知っていれば… そういう知識があればあるほど、問題に遭遇したときの解決が早くなる。 そういった事の体験学習の道具としてマシン語(というかアセンブリ)を薦めたい気持ちもわかりますよ。 でもね。煽りすぎなんです。あなたの文章は、「これは、こういう仕組みになっています。これの意味は、こういう事です」の後に必ず「こんな事も知らない奴は」「絶対に知っておくべきだ」という脅しをかける。だから攻撃的でイヤミになるんですよ。 あなたは、その文を読んだ人が「チクショウ!」と思って勉強することを期待しているんでしょうが、現実は「こんなイヤミな奴の言うこと聞きたくない」の方じゃないですか? そうして若い人たちがマシン語に背を向けてしまったら悲しくないですか。 思い出してください

    伝えたければ、もう語るのをやめてください。
  • ウノウラボ Unoh Labs: 正規表現の勉強法

    bokkoです。 テキストの整形処理を行う上で正規表現は非常に重要です。正規表現なしでテキストの整形処理をするくらいなら自分で正規表現ライブラリを書いてやるという人がいるのかどうかは知りませんが、実際、相当大規模なWebソフトウェアのプロジェクトならそっちの方が早いかもしれません。なんだか自分で書いてて何が言いたいのかわからないような文章になってしまいましたが、私が言いたいのは正規表現はそれくらい強力で、習得して使う価値があるということです。 ただ、正規表現にはじめて触れる場合、非常にとっつきにくく思う方もいると思います。私も最初、意味のわからない文字の羅列に圧倒されたような気がします。 このように最初の段階でとっつきづらく思ってしまうのは大抵慣れの問題なので、とりあえず、正規表現を使ったプログラムでも書いてみるのが一番の近道です。何かしらのテキストを整形するというのがいい題材ですが、私が

  • Pythonを始めよう:CodeZine

    はじめに こんにちわ、hirataraです。 稿では、オブジェクト指向のスクリプト言語であるPythonの紹介をしたいと思います。と言っても、実は私がPythonを勉強し始めたのは数ヶ月前のことで、まだPythonに関してさほど詳しいとは言えません。それでもこの記事を書こうと思い立ったのは、ある言語が他の言語に比べて面白い部分と言うのは、その言語にどっぷり漬かってその言語を使うことが当たり前になっている人間よりも、その言語を好きになり始めたくらいの人間の方が見つけやすいのではないかという思いからです。 そのような事情で、もしかすると当のPythonistaからお叱りを受けるような内容も含まれるかもしれませんが、その点はTBやコメントでご教授頂けると幸いです。この記事で、少しでもPythonに興味を持ってくれる方が増えることを願っています。対象読者他言語でのプログラミング経験者Pytho

  • 404 Blog Not Found:マシン語読みの言語知らず

    2007年09月11日22:20 カテゴリArt マシン語読みの言語知らず もうこの話題が登場して何度目になるのかは知らないが.... shi3zの日記 - マシン語を知らない子ども達 あまりも当たり前過ぎて21世紀に入ってから言葉にだしたことはあまりないのですが、当然のことながら、プログラムというのは、マシン語を理解して初めて「書ける」と言うのです。 そんなことは、ない。 私の上の娘は、まだ日語文法を習っていないが、日語で彼女の母や父である私や妹や級友と話すことが出来る。まだ辞書さえ知らない下の娘も同様だ。 確かに、「下の事」を一通り習った者は、「底まで知っていて」やっと「知っている」と言って「下の事」を知らない者を下に見がちだ。しかし、知識を深さでしか測れない者は、往々にして知識を広さを測ることが出来ない。「一段下の階層を知らなければそのことを知らない」という人に限って、そのことの

    404 Blog Not Found:マシン語読みの言語知らず
  • ゲームのしくみ研究委員会 ゲーム開発 ゲームデザイン ゲーム企画

    このサイトに来るあなたは、ゲームデザイン、ゲームプランニングに興味がありますね? もしそうなら、このサイトはあなたに大いなる示唆を与えることと自負しております。 自分のゲームを開発したいあなたへ:至急ここを読んでください。 ゲームのしくみでは、世界に熱狂のゲーム・ムーブメントを起こすべく活動しています。 日を「世界一のゲーム大国」にするべく、「ゲーム会社100社プロジェクト」も立ち上げ準備中。 今後のゲームのしくみにご注目ください! TOPICS ■超初心者のためのゲーム開発! これからゲームを作ってみたい!という方向けの特集です。 ゲームが作れない理由を考えます。 ●ゲーム作りの障害(1) ●ゲーム作りの障害(2) ●ゲーム作りの障害(3) ●ゲーム作りの障害(4) ■面白いゲームの3要素! 面白いゲームを作るための基要素を考えます。 ●(1)ゲーム・メディアとしての3要素 ●(2)

    ゲームのしくみ研究委員会 ゲーム開発 ゲームデザイン ゲーム企画
  • Unicode の文字列をソースコードに埋め込む方法 - bkブログ

    Unicode の文字列をソースコードに埋め込む方法 Unicode の文字列をソースコードに埋め込む場合、直接 UTF-8 などで文字列を書く方法と、\uXXXX などのようにエスケープして表記する方法があります。後者の方法についてまとめてみました。 \uXXXX 形式の場合 Java, JavaScript, Python, C++, C (C99から) などの多くの言語では \uXXXX という表記 (universal character names) でUnicode の文字を文字列の中に埋め込めます。たとえば、「あいう」は "\u3042\u3044\u3046" となります。 \uXXXX で埋め込んだ文字がどのように解釈されるかは言語や処理系によって異なります。 gcc/g++ の場合、 -fexec-charset オプションで、実際に使う文字セット・エンコーディングを指

  • はじめてのJSONPプログラミング

    前回の「ブログの☆の総数を取得できるAPIを組み込みました」では、はじめてJSONPを使ってみました。以下、実際にJSONPを使ってみての覚え書きと、これからJSONPプログラミングをはじめる方へのTIPSです。 ブログの☆の総数を取得できるAPIは、はてなスターに登録されたブログの情報を取得できるJSON形式とJSONP形式で提供されているAPIでした。 はてなスター日記 - ブログの☆の総数を取得できるAPIを追加しました JSONとは、JavaScriptにおけるオブジェクトの表記法をほぼそのまま利用したデータフォーマットのことで、JSONPはJSONにちょっと記述を加えて、クロスドメインのJSONデータを非同期で読み込ませて処理するための手法のことです。(詳しい定義については、自分で調べてみてください) 通常、Webブラウザでは他ドメインのJavaScriptのデータを読み込んで実

    はじめてのJSONPプログラミング
  • MOONGIFT: » Windows操作を一元化「NirCmd」:オープンソースを毎日紹介

    これはナイス! Windowsの開発を行っていると、こんな機能がほしいといわれる事はないだろうか。“ボリュームを消してほしい”、“ログオフしてほしい”、“ファイルをコピーしてほしい”、“ウィンドウを透過に”、“ウィンドウを閉じてほしい”などなど。 これらを実装する場合、大抵Win32 APIを調べたり、Shellで実行、またはSendKeyでキーを送るといった対応が考えられる。だが、一つ一つ調べていたら大変だ。これを使うのが良い。 今回紹介するフリーウェアはNirCmd、Windowsのコマンドユーティリティだ。 NirCmdはコマンドプロンプトで実行するツールなので、Windows系のプログラム言語はもちろん、WSHやPHPRuby等でも実行できるのが利点だ。 できることは数多い。列挙すると、スクリーンセーバの実行/停止/有効化、ドライブのイジェクト/クローズ、ボリュームの変更/ミュー

    MOONGIFT: » Windows操作を一元化「NirCmd」:オープンソースを毎日紹介
  • ユメのチカラ: デバッグ方法論

    実践的なデバッグ方法論(デバッグの仕方、事例研究)も強く求められている。デバッガーというツール依存のTipsではなく、ソフトウェアのデバッグというプロセスそのものの形式化である。 人々は誰に教わるでもなく自分のデバッグのスタイルを持っている。自分なりな定石を獲得している。しかしそれを明示化して人に伝えようと試みる人は少ない。伝承がまったく不可能なような議論も少なくない。 わたしはオープンソースの時代こそデバッグの方法論を広く共有できるチャンスに満ちた時代だと考えている。いくつか事例を紹介しつつ解説する。 優れたプログラマは優れたデバッグ方法論を持つ。そのデバッグ方法論をぜひ共有化したい。そのためには情報公開が要である。 デバッグとはプログラムの不具合を修正するプロセスである。テストなどによって発見された何らかの不具合を期待する結果に修正する作業である。テストとデバッグの区別が十分ついていな

  • IT戦記 - JavaScript で数式パーサを書いてみた。

    背景 いままで、ちゃんとパーサというものを書いたことがなかったので勉強のためにアレコレ考えながらやってみようと思って、簡単な数式を木にするパーサを書いてみようと思ったのです>< 今回作るパーサの仕様 パースする数式の演算子は二項演算子 + - * / と単項演算子 + - だけ。 括弧とかは使わない。 演算の優先順位は * / のほうが + - より高い。つまり、 1 + 1 * 1 は 1 + (1 * 1) 単項演算子は二項演算子より優先順位が高い。つまり、 - 1 + 1 は (-1) + 1 で、作ってみた! ソースコード filter 関数とか使ってるので、 Firefox only です。 var parse = function(source) { var tokens = source.match(/[-+*/]|[^-+*/\s]+|\s+/g).filter(/^[^\

    IT戦記 - JavaScript で数式パーサを書いてみた。
  • プログラマ1年生に、先輩がアドバイス:アルファルファモザイク

    「ゼリーのみ規制…モチはいいのか?」→野田聖子氏「モチは喉に詰まるものというのが常識」…消費者庁構想に暗い影

  • MOONGIFT: » ビジュアルプログラミングの世界へようこそ「Lily」:オープンソースを毎日紹介

    まだリリースされていないソフトウェアだが、要注目。 幾つものソフトウェアやサービスがリリースされていく中で、時折その動作原理が分からず唸ってしまうものが存在する。このソフトウェアもその一つになるだろう。 今回紹介するオープンソース・ソフトウェアはLily、Webベースのビジュアルプログラミング開発・実行環境だ。 LilyはJavaScriptで作られているソフトウェア開発環境だ。だが、プログラムソースを書くことは無く、パーツをビジュアル的に組み合わせてサービスを作り上げる。まさにビジュアルプログラミングだ。 Webベースとあって、flickrの画像を呼び出すのはお手の物、他のWeb APIについても各種利用できるだろう。そしてその結果を並べて表示したり、画像クリック時の拡大表示をその場で機能を付け加えて動作させてしまう。 デモムービーが幾つか登録されているのでぜひ見てみてほしい。何だこれは

    MOONGIFT: » ビジュアルプログラミングの世界へようこそ「Lily」:オープンソースを毎日紹介
  • Amazon.co.jp:Code Reading―オープンソースから学ぶソフトウェア開発技法: 本

    Amazon.co.jp:Code Reading―オープンソースから学ぶソフトウェア開発技法: 本
  • ユメのチカラ: ソースコードの読み方

    ソフトウェア工学の標準的なカリキュラムにソースコードの読み方というのがあるのかないのか知らないが、プログラマとして最も重要な資質の一つにコードの読解力というのがある。 ついでに言えば、大学や専門学校であまり教えられているとはいえないけど、実践では常に必要とされているものとして、テストの方法論、デバッグの方法論、性能向上の方法論、メモリなど各種資源の削減方法論などなどがある。国際化、移植性なども重要な単元であるがソフトウェア工学の中で教授されていると言う話はあまり聞かない。コードのハック一般についてどこかで議論されているのだろうか。経団連あたりで議論しているのだろうか? 閑話休題。 ソースコードの読み方ということで、最近では「コード・リーディング」というそのものずばりの教科書も出ているので状況は好転しつつある。コードの読み方はオープンソースの時代になり、間違いなく広く情報を共有できるようにな

  • リコメンドの裏側 : LINE Corporation ディレクターブログ

    『livedoor グルメ』の根岸です。今日はlivedoor グルメにも実装されている「リコメンド(=お勧め)」機能の話です。 マクドナルドの「ご一緒にポテトもいかがですか?」という店員の接客コメントは、誰もが知っている典型的な決まり文句ですよね。でも、誰にでもポテトをオススメするのは、芸がない。「俺はイモが嫌いなんだ!」っていう人だって絶対にいます。 インターネットでOne-to-Oneマーケティングの時代になると、ユーザーの動向を分析し、各ユーザーごとに興味を持ちそうな商品を予想して、お勧めするようになりました。たとえば、『Amazon』にログインして「マイストア」を選ぶと、それまでの購買履歴をもとにお勧め商品がリストアップされます。 僕のマイストアだと、 『笑う大天使(ミカエル)』 『ウォーターボーイズ』 『リンダリンダリンダ』 などのDVDが、リストアップされています。上記はいず

    リコメンドの裏側 : LINE Corporation ディレクターブログ
  • http://www.hirax.net/articles/2004/04/12/dekirukana8_atokperl

  • Swarm

    News 2022-10-25: Quasi-Endowment Now that we're re-instated as a valid 501(c)(3) with the IRS (thanks to Charitable Allies for their help), we are pursuing a "quasi-endowment". Our intention is to invest the remaining funds and use any dividends from that investment to support ABM community members with conference registration fees, travel, etc. We will need to supplement that with donations, as w

  • 生年月日から年齢を計算する簡単な計算式:ITpro

    私の個人ブログに掲載したら好評でしたので、こちらでもご紹介してみます。 最近知ったんですが、生年月日から年齢を計算する簡単な計算式というのがあるそうです。 (今日の日付-誕生日)/10000の小数点以下切捨て。 PHPで書くと echo (int)((20070823 - 19850101)/10000); Perlで書くと print int ((20070823 - 19850101)/10000); JAVAで書くと System.out.println( (int)((20070823 - 19850101)/10000) ); という感じになります。 日の法律を確認してみました。誕生日の前日が終了する瞬間(すなわち誕生日をむかえる午前0時00分の直前)に1歳を加えることになる。ただしうるう年など、年によって期間を定めた場合において最後の月に応当する日がないときは、その月の末日を

    生年月日から年齢を計算する簡単な計算式:ITpro
  • PHPプログラミングのベストプラクティス:phpspot開発日誌

    PHP Best Practices - Common solutions to PHP programming issues This guide is meant to give you solutions to common PHP design problems. PHPプログラミングに関するベストプラクティスがまとまっていました。 以下にダイジェストをまとめます PHP開始タグには <?php のみ使い、<?=や<%のようなタグは使用しない DB接続設定、メールアドレス、デバッグスイッチ、アプリケーション定数などの設定は1つのファイルにまとめる グローバル関数は使わず、できるだけクラスに閉じ込める。グローバル関数を使う場合は、プレフィクスを付ける。 データベース抽象レイヤを使い、MySQL用関数などは使わない 値を格納するValue Objectを使おう class Person