タグ

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

タグの絞り込みを解除

Programmingに関するsabroのブックマーク (635)

  • 実践的低レベルプログラミング

    はじめに 学校で習わないが(習う学校もある)、現実に必要になるプログラミング技術に、低レイヤプログラミングなどと呼ばれるものがある 厳密な定義は聞いたことがないし、おそらく存在しないとは思うが、大体のみんなの共通認識として、 「高級プログラミング言語を使わないプログラムを書き、OSで抽象化されないデバイスの機能を使う」といったような認識があると思う。 筆者の経験から言わせてもらうならば、低レイヤプログラミングに関する知識は、プログラミングにおいてあらゆる場面で、常に、少しずつ役立てられる知識だと言えると思う。 普段はRubyPHPなどを書いてる人であったとしても、メモリが足りなくなった場合や、デバッガを使っている場合、性能が足りなくなった場合など、 厳しい環境におかれた時に低レイヤプログラミングに関する知識が必ず役に立つ場面が来ると信じている。 また、役に立つかどうかは置いておいても、「

  • 遠いようで身近なサウンドエンジニアリング

    builderscon tokyo 2018

    遠いようで身近なサウンドエンジニアリング
  • ファミコンエミュレータの創り方

    ------- GND -- |01 31| -- +5V CPU A11 -> |02 32| <- M2 CPU A10 -> |03 33| <- CPU A12 CPU A9 -> |04 34| <- CPU A13 CPU A8 -> |05 35| <- CPU A14 CPU A7 -> |06 36| <> CPU D7 CPU A6 -> |07 37| <> CPU D6 CPU A5 -> |08 38| <> CPU D5 CPU A4 -> |09 39| <> CPU D4 CPU A3 -> |10 40| <> CPU D3 CPU A2 -> |11 41| <> CPU D2 CPU A1 -> |12 42| <> CPU D1 CPU A0 -> |13 43| <> CPU D0 CPU R/W -> |14 44| <- /ROMSEL (/A

    ファミコンエミュレータの創り方
  • Effective Modern C++ メモ - Qiita

    自分にとっての要点メモ。 Effective C++の著者のScott MeyersによるC++11/14の定番(らしい) ※知らずに買ったら英語だったので、なんとか通読しましたが理解は随所怪しいと思われます。誤りは是非ご指摘ください。 2015/11/02追記: 日語版が出ています。稿は日語訳が出る前に書いたのなので目次の訳は一致しません。ご注意ください。 https://www.oreilly.co.jp/books/9784873117362/ 第1章: 型推論 autoやdecltypeによる型推論はコードの冗長性を減らす強力な機構だが、型推論の動きをしっかり理解していないとmodern C++での効率的なプログラミングはほぼ不可能。 1: テンプレート型推論を理解しろ 関数テンプレートtemplate<typename T> void f(ParamType param)

    Effective Modern C++ メモ - Qiita
  • 次世代ゲームにおける自動生成技術

    ゲームの仕様書を初めて作成する人のための足掛かりのスライド ▼以下のスライドを一つにまとめました ・ゲームの仕様書を書こう1 仕様書作成の分業とリストの作成 https://www.slideshare.net/ChizuruSugimoto/ss-173331109 ・ゲームの仕様書を書こう2 仕様書に記載する機能内容 https://www.slideshare.net/ChizuruSugimoto/ss-173332578 ・ゲームの仕様書を書こう3 仕様書に記載するデータと画面 https://www.slideshare.net/ChizuruSugimoto/ss-173333150 ・ゲームの仕様書を書こう4 仕様書作成で楽をするconfluenceの活用 https://www.slideshare.net/ChizuruSugimoto/confluence-17333

    次世代ゲームにおける自動生成技術
  • Microsoft – クラウド、コンピューター、アプリ & ゲーム

    すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox Live Gold Xbox とゲーム PC ゲーム Windows ゲーム 映画テレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform W

    Microsoft – クラウド、コンピューター、アプリ & ゲーム
  • なぜ関数プログラミングは重要か

    John Hughes, Institutionen för Datavetenskap, Chalmers Tekniska Högskola, 41296 Göteborg, SWEDEN. rjmh@cs.chalmers.se この日語訳は原著者の承諾を得て山下がここに公開するものです。 この訳文についての、御指摘などは山下伸夫(nobsun .at. sampou.org)までおねがい いたします。 翻訳最終更新日 : 2011-09-17 原文 "Why Functional Programming Matters" 日語訳PostScript この論文は1984年以来何年ものあいだChalmers大学のメモとして回覧された。 1989年と1990年に幾分か改訂をしたのが[Hug89]と [Hug90]である。この版はもとのChalmer大学のメモ のnroff原稿をもとに

  • Javascriptを使うのをやめろ:Railsの時代遅れ云々についての結論 - Qiita

    結論: Javascriptの乱用をやめるのが一番。 はじめに書いておきますがしょうもない話です。 結論、開発者としてはどのような方向性でやるべきか、を書いています。 JS多い時代でのフレームワークの根的な問題云々のことは書いてません。 さて、現状、モバイルにおいて、Javascriptでまともに動くものを作ることは難しいです。 Twitterから引き抜いた超優秀なWebエンジニアを多数抱えるMediumですら、未だにモバイルで多数のバグを抱えています。 超優秀なエンジニアを世界一抱えているであろうGoogleのGmailですら、モバイル版のWebはすぐクラッシュします。また、自前スクロールに致命的なバグも抱えています。 正確には「UIが不審な挙動をする」ですが、エンドユーザにとっては同じことで、「バグ」です。 サーバサイドで起こるバグと同じ程度、いやそれ以上に、サービスに影響を与えます

    Javascriptを使うのをやめろ:Railsの時代遅れ云々についての結論 - Qiita
    sabro
    sabro 2014/06/30
    元々の設計が、HTTPは静的コンテンツの配信用だし、javascriptはちょっと動作を付ける程度のもの。それを広まっているという理由で後付でアプリ乗っけたのが歪みを生んでる。アプリ用別プロトコル作った方が筋がよかった
  • モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita

    はじめに 他の人が書いたコードを読んでいるときに時々気になるのが、英語の間違いです。 特に動詞、名詞、形容詞の使い分けが間違っていたりすると、かなり違和感を感じます。 そこで今回はモデル(=クラス)やメソッドに名前を付けるときの基的な原則をまとめてみます。 また、英文法的に正しい品詞が選べるようになるための習慣についても最後に説明します。 想定する言語/フレームワーク この記事の説明ではRuby/Ruby on Railsを想定しています。 ただし、基的な考え方は他の言語でも同じように使えるはずです。 モデルの名前は名詞にする 例: 「支払い情報」を表すモデルを作りたい場合 × Pay ○ Payment 「支払う = payか。よし。」でモデルを作ってはいけません! payは動詞で、payの名詞形がpaymentです。 Payモデルではなく、Paymentモデルを作りましょう。 例:

    モデルやメソッドに名前を付けるときは英語の品詞に気をつけよう - Qiita
    sabro
    sabro 2014/05/29
    英語辞書データとか使えばチェックを自動化できそう
  • もし次の常駐先が女子エンジニアばっかりだったら

    paiza独自のプログラミングスキルチェックにより、 スキルレベルを 6段階で 可視化。 JavaPHPRubyPython2、 Python3、 Perl、 C、 C++、 C#、 JavaScript、 Objective-C、 ScalaGoSwiftKotlin に対応

    もし次の常駐先が女子エンジニアばっかりだったら
  • 非同期処理の基礎

    MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。

    非同期処理の基礎
  • プログラミング勉強中の人にオブジェクト指向とは何なのかを何となく伝えたい話 - かまずにまるのみ。

    この文章について OOP(オブジェクト指向プログラミング、オブジェクト指向パラダイム)について プログラミング勉強中の大学生さんに説明する機会が何度かあったので、 自分の中で整理するために書きました。 中には適切でない説明もあります。ばっさり省いているところもあります。 詳細より イメージを掴んでもらうことを優先しているためです。 「それにしてもあんまりだなー」という表現がありましたらご連絡いただけると嬉しいです。 大学生さん 大学生さんたちはいろんな背景を持っています。 プログラミングを始めたばかりの人 独学で Objective-C や JavaScript を書いた経験がある人 Web やコンピュータの仕組みについてもこれから勉強する予定の人 使用言語 大学生さんたちはプログラミングの第一歩として JavaScriptPHP を使っています。ここでは説明に PHP のコードを使

    プログラミング勉強中の人にオブジェクト指向とは何なのかを何となく伝えたい話 - かまずにまるのみ。
    sabro
    sabro 2014/04/07
    オブジェクト指向の良さより、先に手続き型の短所を教えたほうが、必要性が理解されやすいとおもう
  • プログラマの生産性と報酬 - アスペ日記

    追記: 続編を書きました。マッチョとの戦い 最近、プログラマの生産性が話題です。 いろんな意見があるものの、個人的には 10〜100倍の生産性の違いはあると思います。 いや、それは違う、生産性の高いエンジニアは生産性の低いエンジニアに作れないものが作れるのだからそういう話ではない、という意見もあります。 しかし、実際には生産性の低いエンジニアができもしないことをしようとして結局できないで終わるということがあったりしつつも、何らかの貢献をするというのが普通だと思いますので*1、最終的には 10〜100倍の違いといった形に落とし込めると思います。 で、この生産性の違いはどこから来るのか。 個人的には才能だと思っています。 ぼく自身は、自分のことを中間レベルのエンジニアだと認識しています。 平均の 3〜10 倍できて、トップより 3〜10 倍できないくらい。 でも、自分が平均から抜け出るために何

    プログラマの生産性と報酬 - アスペ日記
    sabro
    sabro 2014/02/23
    その3つの原因だとアメリカで給与が高いことが説明できないので、もっと日本独自の原因だと思う。具体的にはプログラマを交換可能な人材として扱うのが大きい(現実は交換無理だが)。交換不可能な人ほど給与が高い
  • VB6からVB2008 への移行に関して

    VB6(Visual Studio6.0)がWindows7や8で使えずいずれサポート打ち切り、最悪はそのEXEも次期OSでは動かなくなる恐れから止むをえずVB2008へ変換を試みていますが、余りにVB2008は利用者泣かせよくもこのような製品を世に出したなと言わざるを得ません。VB6で便利に使えていた機能をことごとく排除、オブジェクト指向と言う単に技術者の傲慢、自己顕示欲を示すだけの製品になっている。オブジェクト指向になってどこがどう便利になったのか複雑怪奇にしただけで便利さや機能の優れている点等どこにも見えない。VB6の便利な機能排除の主な物は以下の通り。 Inetコントロール、Winsockコントロールの排除、コントロールの配列機能排除、ポップアップメニュの左クリック排除、フォームのUnloadの排除等等 その他枚挙にいとまない。またこれを代わりの方法で実現する方法等にも書いてない

    sabro
    sabro 2014/02/10
    たしかに、企業は利益をださないといけないので計画的陳腐化みたいなことして必要でもない機能のせるようなところもあるけど、MSのC#はバージョン上がるごとにちゃんと書きやすくなっててすごい
  • プログラムに証明が付く日 | RANDMAX

    この記事は「Theorem Prover Advent Calendar 2013」6日目の記事です。 http://qiita.com/advent-calendar/2013/theorem_prover 神田「野らぼー」にて、地下の薄暗い店内で… 「そう言えばこないだ隣で起こってたポインタオーバーラン、対応大変そうだったですけどちゃんと家に帰れてたんでしょうかね、新婚なのに…」 「ヌルポとかポインタオーバーランとか、どうして無くならないんだろうね。その時はみんな手を抜いてるつもりなんて毛頭なくて、一生懸命考えて大丈夫だと思ってるはずなんだけどね。レビューもして、それでも起こった後でみんなでソース見てみると、なんで気づかなかったんだよ!ってことになる。」 「人間って、そういうの苦手なんでしょうねきっと。ほら、『何かほかにありませんか』って聞かれても出てこないじゃないですか。静的な解析っ

    プログラムに証明が付く日 | RANDMAX
  • Domain Parked With VentraIP Australia

    Domain ParkedThis domain name currently parked with VentraIP.

    sabro
    sabro 2013/11/07
    ぼくは、クッソ下手なイラストも書くけど、そっちだと中断余裕。思考をそのまま描けて記憶に残す必要がないイラストと、機械用言語に翻訳が必要で一度頭で整理しないといけないプログラムの差か
  • ゲーム開発者のための C++11/C++14

    2019/9/25-6に開催されたUnite Tokyo 2019の講演スライドです。 河合 宜文(株式会社Cysharp) こんな人におすすめ ・C#を極めたいエンジニア ・パフォーマンスに興味のあるエンジニア ・プログラミング言語マニア 受講者が得られる知見 ・structに関する深い知識 ・パフォーマンス向上のヒント ・C#の新しい文法と活用法 Unityのイベント資料はこちらから: https://www.slideshare.net/UnityTechnologiesJapan/clipboards

    ゲーム開発者のための C++11/C++14
  • 初心者レベルの言い訳をしない: 柴田 芳樹 (Yoshiki Shibata)

    出来上がったコードの可読性も含めた品質の悪さを、時間がなかったとかプロトタイプだからと言い訳する人がいます。スキルが高い人の場合は、同じ時間制約でも高い品質のコードを書きます。それは、ある程度無意識になるまで、訓練を重ねているからです。無意識になるまで意識して普段から活動するのです。 ソフトウェア開発ではないですが、熟練者と初心者の差を比較するために短時間でどれだけの成果が出るかを競うテレビ番組を時々見かけることがあります。必ず熟練者の方が量も質も圧倒的に初心者を凌駕しています。つまり、時間がなかったとかプロトタイプを言い訳にした時点で、経験年数に関係なく、初心者レベルだということです。 1988年に米国への赴任前の送別会で今は亡きS.Uさんに言われたのは、「与えられた仕事をこなして初めて次の難し仕事が与えられる」と言われたことがあります。逆に言えば、できないと判断されたら、仕事を与えない

    初心者レベルの言い訳をしない: 柴田 芳樹 (Yoshiki Shibata)
    sabro
    sabro 2013/09/12
    無意識でできるようになっているということは、日々新しいプロダクトを取り入れていないということでもある。新しいライブラリを取り入れていたらもっと検証作業も入るはず。慣れたやり方だけではいつか行き詰まる
  • 僕はプログラマーです。

    僕はプログラマーです。 でも僕のMacBookProには何故かAdobeのソフトウェアが入っています。 iPhoneアプリのデザインをするわけではありません。 デザイナーの人がデザインファイルを.psdや.aiや.fw.pngのまま当然の様に投げて来るからです。 僕はAdobeのソフトウェアに精通しているわけではありません。 ですので複雑なレイヤー構造のファイルを切り出すのにはかなり時間を要します。 でもレイヤー構造の説明をしてくれるデザイナーの人は殆ど居ません。 デザイナー同士だとその複雑な構造でもやり取り出来るのかも知れませんが、僕には大抵よく分かりません。 例えば、Photoshopのエフェクトレイヤーが掛かっているボタンはボタンだけ切り出す時に凄く苦労します。 例えば、薄くシャドーが掛かってるデザインは素敵な質感を表現出来るかもしれませんが説明してもらわないとどこまで切り出したら良

    僕はプログラマーです。
    sabro
    sabro 2013/09/09
    いざとなったらイジれるので自分の場合はPSDでもらったほうがうれしい。デザイナー側もそう考えてるんだとおもう
  • LLVMによるプログラミング言語の実装 – 日曜研究室

    最近の投稿 問題: 積み木を10個積み上げるのにかかる時間は 2020/8/20 木曜日 Google の G Suit Team から “[Action Required] Remove internal links to the G Suite Domain Contact page for your organization” ていうメールが来た 2020/8/14 金曜日 NZXT H1 と ROG STRIX B550-I GAMING で組んでみた 2020/7/17 金曜日 花粉症対策2019 2019/3/16 土曜日 マルチディスプレイ時のDisplayPort問題を何とかしてみた 2019/1/12 土曜日 REALFORCEソフトウェアがインストールできない(解決済) 2018/12/6 木曜日 GeForce RTX 2080 Founders Edition を買