タグ

Programmingに関するtksmdのブックマーク (20)

  • JSX - a faster, safer, easier JavaScript

    JSX is a statically-typed, object-oriented programming language designed to run on modern web browsers. Being developed at DeNA as a research project, the language has following characteristics. faster JSX performs optimization while compiling the source code to JavaScript. The generated code runs faster than an equivalent code written directly in JavaScript. The gain may vary, but even the optimi

  • ぼくはこうしてプログラミングを覚えた

    オリジナルはココです。フェイスブックのエンジニアでで史上ベスト3に入るといわれるEvan Priestley氏への質問「どうやってプログラミングを覚えましたか」に対する人からの答えです。 手短かに言えば 何年もの歳月の賜物というか。ぼくはただひたすらプログラミングが大好きで、(フェイスブックで働いていた)過去4年間、ほとんど他のことをしていない。その前も2.5年ほどプログラマーとして働いていたし、そのさらに前も6年くらい趣味でプログラミングをしていた。ぼくは高校も大学も中退しているので、それで空いた時間もプログラミングに費やした。つい最近フェイスブックを辞めたけど、未だに起きている時間のほとんどはプログラミングだ。 もっと詳しく言えば 月並みだが、ぼくはちっちゃい頃からコンピューターが好きで、我が家にあったヤツで(最初はMac Plusで途中からIIsiになった)で散々遊んだ。8歳か9歳

    tksmd
    tksmd 2011/07/20
    質v.s.スピードという二律背反の関係は、局所的なものでしかない。大域的には、片方を犠牲にした場合、知らぬうちにもう一つも犠牲にしているということをお忘れなく。
  • 非同期I/O Linux

    非同期I/O 概説 Introduction to Asynchronous I/O AIO, I/O Multiplexing… 2007年8月6日 KLab 株式会社 Kラボラトリー 廣瀬 正明 Copyright © KLab Inc. All rights reserved. 今日の目的 非同期I/Oとは何かを知る 非同期I/Oを使うと何がうれしいのかを知る 非同期I/Oを実現する手段(複数)を知る Copyright © KLab Inc. All rights reserved. アジェンダ 非同期I/Oを使う理由 非同期I/Oとは? AIOの実装を紹介 AIOの使い方 落穂ひろい Copyright © KLab Inc. All rights reserved. アジェンダ 非同期I/Oを使う理由 非同期I/Oとは? AIOの実装を紹介 AIOの使い方 落穂ひろ

    tksmd
    tksmd 2011/05/16
    非同期 I/O と I/O 多重化について
  • 病みつきになる「動的計画法」、その深淵に迫る

    数回にわたって動的計画法・メモ化再帰について解説してきましたが、今回は実践編として、ナップサック問題への挑戦を足がかりに、その長所と短所の紹介、理解度チェックシートなどを用意しました。特に、動的計画法について深く掘り下げ、皆さんを動的計画法マスターの道にご案内します。 もしあなたが知ってしまったなら――病みつきになる動的計画法の集中講義 前回の『アルゴリズマーの登竜門、「動的計画法・メモ化再帰」はこんなに簡単だった』で動的計画法とメモ化再帰を説明しましたが、前回の説明ではまだ勘所をつかめていない方がほとんどでしょう。そこで、これらを完全にマスターするため、今回はもう1つ具体例を挙げながら練習したいと思います。 どういった問題を採用するかは悩みましたが、非常に有名な「ナップサック問題」を取り上げて説明します。 ナップサック問題とは以下のような問題です。 幾つかの品物があり、この品物にはそれぞ

    病みつきになる「動的計画法」、その深淵に迫る
    tksmd
    tksmd 2010/05/19
    動的計画法 後で読む
  • GertrudAndCope - thedciarchitecture

    After 30 years of Model-View-Controller, the other shoe drops To its end user, software is not a product, but a service. Procedural programming made it possible to reason about these services and their logic in which most problems could be found in low-cost but dutiful desk checks. The main building block was the procedure, which could be assembled to collect large numbers of activation record ins

    GertrudAndCope - thedciarchitecture
    tksmd
    tksmd 2010/01/16
    DCI アーキテクチャについて。後で。。。
  • 「天才エンジニア」でIT業界は変わらない | おごちゃんの雑文

    相変らずITProが「勘違い奴隷育成キャンペーン」をやろうとしているように見える。 天才高校生はIT業界を変えられるか? この高校生が偉いんだってことは、まぁそうなんだろうと思うけれど、大変残念ながら彼等がエンジニアになる限り、IT業界なんて変えられない。 彼等がどういったことをやって、どんな成績でどうであったかは「まぁ偉いんだね」とわかればいい。何であれ成果を出すのは良いことだから、そういった意味では評価されていい。まぁこの記事だけでは何が偉かったかまでよくわからないのが残念だけど、リンク先を見ればいい。 というのはまぁいいんだが、問題はこの記者の持っている期待だ。 それでも,マイクロソフトのビル・ゲイツやGoogleのセルゲイ・ブリン,ラリー・ペイジといった天才が世界を変えたように,保坂さんのような天才が将来,日IT業界を変えてくれることを,密かに期待してしまうのだ。 という部分。

    tksmd
    tksmd 2009/09/23
    技術とビジネスの関係
  • プログラマーには、コーディングの生産性で10倍、コードレビューの速度では6倍もの能力差があるという

    プログラマーの生産性をテーマにした有名な著書「ピープルウェア」には、最も優秀なプログラマと最低の成績のプログラマのあいだには約10倍にあたる生産性の違いがある、というデータが出てきます。 これは、1984年から1986年にかけて92社、延べ600人が参加したプログラミングコンテストのデータを分析した結果から導き出された結果で、課題として与えられたプログラミング作業の開始からコンパイル時のエラーを消すところ(第1チェックポイント)へ到達するまでにかかった時間を比べています。 グラフを見ても分かるように、最優秀者と最低者のあいだには作業時間にして約10倍のひらきがあります。また最優秀者は平均の約2.5倍の生産性だそうです。そして、COBOLやFortranのような旧世代のプログラミング言語と、PascalやCのような現代的なプログラミング言語でのコーディングでの生産性はほとんど同じであったそう

    プログラマーには、コーディングの生産性で10倍、コードレビューの速度では6倍もの能力差があるという
    tksmd
    tksmd 2009/09/23
    コーディングの生産性の話
  • dfltweb1.onamae.com – このドメインはお名前.comで取得されています。

    このドメインは、お名前.comで取得されています。 お名前.comのトップページへ Copyright © 2020 GMO Internet, Inc. All Rights Reserved.

    tksmd
    tksmd 2009/09/07
    アジャイルについての考え。ビジネスで捉えるべきという点に同感。契約については、レベニューシェアとか、請負とか委任以外の方式がないもんかとは思う所。
  • [iEXPO2008]“3歳児とペア・プログラミング”,NECがロボットによるビジュアル開発をデモ

    写真1●NECが研究開発中の「体験型共創プラットフォーム」 同社が開発中のロボット「PaPeRo」の挙動を積み木細工のように定義できるビジュアル・プログラミング・ツールと,PaPeRoへの入力をフィードバックできる「タッチ・プログラミング」環境の2要素で構成 子供の創造力を育むと同時に,既成概念にとらわれない子どもの知見をソフトウエア開発に生かす---。NECは2008年11月11日から開催中の「iEXPO 2008」において,子供から大人まで幅広い層のユーザーが開発に参加できる「体験型共創プラットフォーム」を展示。ビジュアル・プログラミング・ツールと同社が開発中のロボット「PaPeRo」を組み合わせ,幼児でも使える開発環境のコンセプトを提示している(写真1)。 体験型共創プラットフォームは,ソフトウエアを含むモノ作りにおける「思う」「つくる」「あそぶ」といった体験の共有を実現するのがコン

    [iEXPO2008]“3歳児とペア・プログラミング”,NECがロボットによるビジュアル開発をデモ
    tksmd
    tksmd 2009/07/13
    子ども向けプログラミング
  • ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室

    ゲームの作り方とアルゴリズムをジャンル別にまとめてみました。ゲーム制作や、プログラミングの勉強用にご活用ください。言語別ゲームプログラミング制作講座一覧もあわせてお読みください。 リンク切れがおきていたものは、URLを表示しておくので、Internet Archiveなどでキャッシュを表示させてみてください。 RPG ゲームの乱数解析 乱数を利用した敵出現アルゴリズムの解説 各種ゲームプログラム解析 FF、ドラクエ、ロマサガのプログラムの解析。乱数の計算など ダメージ計算あれこれ(http://ysfactory.nobody.jp/ys/prg/calculation_public.html) ダメージの計算式 エンカウントについて考えてみる エンカウント(マップでの敵との遭遇)の処理方法いろいろ RPGの作り方 - ゲームヘル2000 RPGのアルゴリズム ドルアーガの塔 乱数の工夫の

    ジャンル別ゲームの作り方とアルゴリズムまとめ - ネットサービス研究室
    tksmd
    tksmd 2009/06/28
    ゲームで使われるアルゴリズム
  • プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ

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

    プログラマーの開発速度は「はまる」時間の長さで決まる : 小野和俊のブログ
    tksmd
    tksmd 2009/05/19
    結論に関しては大きく同意。
  • ソーシャル化するOSS開発者たち - @IT

    ロング・テール理論の名付け親で、雑誌「Wired」の編集長としても知られるクリス・アンダーソン氏が3月12日付けのブログでオープンソースソフトウェア(OSS)プロジェクトの運営体制に関する誤解を指摘をしている。 アンダーソン氏によれば、多くの人はオープンソースプロジェクトというのは草の根から立ち上がり、自律的に組織化し、民主的に運営されているという誤った認識を持っている。ところが現実はまったく逆で、1人か2人の「慈悲深い独裁者」によって運営されている、という。 これはオープンソースプロジェクトに参加していたり、あるいは日常的に成果物を利用している人であれば、そういうものだと首肯するかもしない。メーリングリストで客観データに基づいて議論したり、リーダーを民主的に選ぶようなプロジェクトもあるかもしれないが、おおかたのオープンソースプロジェクトには、それを開始し、中心に位置し続ける“独裁者”がい

  • プログラマー面接時の技術的な質問事項(アプレッソ版) : 小野和俊のブログ

    技術者・SE・プログラマ面接時の技術的な質問事項というエントリをはてブで見かけたのだが、私もjavaプログラマーの面接を割とよくやっているので、よく質問する内容をまとめてみた。 (ちなみに、基的にコーディング面接の形態を取っている) プロジェクトの性質にもよると思うが、私の場合には、情報処理技術者試験的に基礎が満遍なく抑えられているかどうかよりも、 すぐ答えが見つからないような課題に対して、きちんと自分でやり方を考え、対応することができるか 「変な」コードをコミットしたりしないか(見つけにくいバグを混入させるとか、汚いとか、遅いとか)といった点を重視している。 まず、何を知っているかよりも、どんなものを作れるか、どんなことができるか、という質問。 ここで強烈な回答が来る人は、たいていここより下の質問は「あー、はいはい」という感じでサラッと答えてくることが多い。 これまでに携わってきた開発

    プログラマー面接時の技術的な質問事項(アプレッソ版) : 小野和俊のブログ
    tksmd
    tksmd 2009/03/03
    技術面接 プログラミング
  • 今年の目標。あとプログラマ35才定年説について。 - きしだのHatena

    おおまかな今年の目標は、「ちゃんと働く」で「月160時間働く」とか言ってたら、それは無理と満場一致で言われたので、「月120時間働く」にしてる。 で、それはいいとして、勉強的な目標。去年は、自分ができないということがわかったので、今年はできることを増やす勉強をしていかないといけないと思う。 そこで実感してくるのが「プログラマ35歳定年説」という言葉。 もうプログラマとしては定年といわれる歳になるのだけど、今まではそんなんウソやろと思ってたら、その歳が近づくにつれて「プログラマ35歳定年説」という言葉が真実味を増してきた。 もちろん、プログラムが組めなくなるとか、時代についていけなくなるということじゃない。 まあ、新しい流行りものにいつくということをしなくなって、RubyとかJavaScriptとかようわからん状態だったりするので、そういう意味では時代についていかなくはなってきた。けど、よ

    今年の目標。あとプログラマ35才定年説について。 - きしだのHatena
  • InfoQ主催のカンファレンス「QCon」が東京で開催されます

    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主催のカンファレンス「QCon」が東京で開催されます
    tksmd
    tksmd 2009/02/06
    InfoQ のカンファレンス。著名人続々。。。いこうかな。。
  • The Neko Programming Language - NekoVM

    The Neko Programming Language Neko is a high-level dynamically typed programming language. It can be used as an embedded scripting language. It has been designed to provide a common runtime for several different languages. Learning and using Neko is very easy. You can easily extend the language with C libraries. You can also write generators from your own language to Neko and then use the Neko Run

    tksmd
    tksmd 2008/10/09
    nekovm
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
    tksmd
    tksmd 2008/04/03
    関数 Scala
  • 「作っては壊す」過程があってこそ良いものが作れる

    iPhone用の「はてな人気エントリーリーダー」、そろそろ形になってきたのだが、作ってみていろいろと発見した部分もあったので、全面的にクラス構成を見直し、大幅に書き直した。 HTTPで通信をしているコードが二カ所に分かれていたので、それをDataOverHTTP/XMLOverHTTPという二つのクラスにまとめ(XMLOverHTTPはDataOverHTTPのサブクラス)、はてな独自のRSSフィードを読んでいるコードから一般的なRSSフィードを扱うコードをくくりだしてRSSFeed/RSSFeedLoaderという二つのクラスにまとめて、あとで別のアプリケーションで再利用することを可能にした。それに加えて、各種ローダーに非同期通信をさせる主体をController(HotEntryViewController)からModel側(HateneHotEntry)に移すことにより、難解になりが

    tksmd
    tksmd 2008/04/02
    同意/特に新規フレームワーク採択の場合は、最初の使い方間違ったり、よりよい使い方があったりするのに気づかない時もある/設計する人は手を動かすべし・汗を書くべし
  • https://www.cenqua.com/fisheye/

    tksmd
    tksmd 2007/03/26
    FishEye ソースコード閲覧
  • Programming Contests, Software Development, and Employment Services at TopCoder

    Topcoder is a crowdsourcing marketplace that connects businesses with hard-to-find expertise. The Topcoder Community includes more than one million of the world’s top designers, developers, data scientists, and algorithmists. Global enterprises and startups alike use Topcoder to accelerate innovation, solve challenging problems, and tap into specialized skills on demand.

    Programming Contests, Software Development, and Employment Services at TopCoder
    tksmd
    tksmd 2007/03/23
    TopCoder
  • 1