![本当にあった怖い脆弱性の話](https://cdn-ak-scissors.b.st-hatena.com/image/square/8f59226912920ec35604d9405fa5e4826ebe867a/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2Fe9d51fa18f5a445a8411aa401dc828af%2Fslide_0.jpg%3F21043718)
セガは6月15日、社内勉強会で使った線形代数の教材を、公式ブログで無償公開した。ページ数は150以上。ゲーム開発に必要な3DCGの技術的基礎となる知識を学び直すために使ったものという。 2020年に行った社内勉強会向け教材の一部をPDF形式で公開。全8部構成で、ベクトルや行列、3次元での回転を計算するときに使う「クォータニオン」について教える。ただし簡潔に分かりやすく学べるよう編集したため、用語の定義が一般的なものと異なる場合があるとしている。 ゲーム制作では、キャラや背景を3次元で回転させたり、ゲームエンジンそのものを作ったりするときに線形代数を使うという。セガは教材について「興味のある方は参考にしてほしい。“大人の学び直し”をしてみたい方はぜひ」としている。 関連記事 任天堂がSwitch向けにプログラミング学習ソフト 作ったゲームの共有機能も 任天堂が、Nintendo Switch
こんにちは。たかぱい(@takapy0210)です。 本日は自然言語の可視化を手軽にできるようにしたパッケージnlplotをPyPIに公開したので、これのご紹介です。 nlplotとは? nlplotで何ができるか 使い方 使用データ 事前準備 ストップワードの計算 N-gram bar chart N-gram tree Map Histogram of the word count wordcloud co-occurrence networks sunburst chart まとめ nlplotとは? 自然言語の基本的な可視化を手軽にできるようにしたパッケージです。 現在は日本語と英語で動作確認済みです。 基本的な描画はplotlyを用いているため、notebook上からインタラクティブにグラフを操作することができます。 github.com (スター★お待ちしております🙇♂️)
Sourcetrailは、開発者が他人の書いたソースコードを理解し、生産的にコーディングを行えるよう支援する。開発者は既存のソースコードを理解することに多大な時間を費やすが、一般的なコードエディタは、こういった作業にはほとんど役に立たない。 Sourcetrailの主要開発者であるEberhard Gräther氏は、「Google Chrome」のグラフィックスチームにインターンシップとして参加した2012年時点の経験を次のように語っている。 「割り当てられた単純に見えるタスクに着手し、具体的なコードの改善に取り組み始めるとすぐに、Chromiumの巨大なアーキテクチャを理解する機会が全くないことに気付いた。ドキュメントはあまり役に立たず、開発チームのメンバーは非常に友好的だったが、コードベースについて質問するインターンに邪魔されることを好まないことも分かった。そこで、ソースコードを読ん
はじめに 私はこれまでにアルバイトやTA (Teaching Assistant)を通して小学生、中学生、高校生、大学生にプログラミング教育をしてきました。また、予備校に通って一浪して大学に入学したという経歴もあります。これらの経験から、「教育とはどうすべきか」「学ぶのに必要なものは何か」「プログラミング学習の特別な点はなにか」などを自分なりに悟りました。 本記事ではこれらのことを踏まえながら、「プログラミングが上達しない人の傾向」や「よく陥るエラー」などを紹介しつつ、プログラミング教育者がすべきことのヒントを示せたらいいかなと思います。 ※本記事はプログラミング教育のハウツーをまとめたものではありません。 プログラミングが上達しない人の傾向 検索力が低い、検索の仕方を知らない、知ろうとしない 調べる癖がない、分からなかったことを分からないままにしていても生きていられる 説明文を読まない、
先日、気持ちのいいジャンプを目指してというQiitaの記事を見かけました。記事中では、マリオのジャンプについても触れられています。マリオというと、マリオブラザースやスーパーマリオブラザース等々、色々あるのですが、これはおそらくスーパーマリオブラザースの事だと思われます。ジャンプアクションゲームといったらスーマリですね。 そのマリオのジャンプの仕組みは「マリオの速度ベクトルを保存しておいて座標を計算するんじゃなくて~」と書かれていて、別サイトのブログへのリンクが張られています。 マリオのジャンプ実装法とVerlet積分 ただ、この記述については不正確であるという別のブログもあったりします。 マリオの完コピvol.28 ジャンプの解析と修正 ホントのところはどうなんでしょうか?世界で最も有名なゲームのジャンプがどのように処理されているのか気になったので調べてみることにしました。 原典にあたる
If you have some experience with Android development, Architecture Patterns may sound like an old-fashioned concept, which some smart guy has brought to the table just to put you down mercilessly. If I add the word VIPER to the discussion, you might think this sounds like a scam or click-bait. However, I assure you that once you get in-the-loop, you will appreciate how valuable it is to have prope
Posted by Jocelyn Becker, Senior Program Manager, Google Developer Training Want to learn to build Android apps in Kotlin? Get started with the Kotlin Bootcamp for Programmers and Developing Android apps in Kotlin codelabs courses. Google and Udacity currently offer video-based courses for Kotlin Bootcamp and How to build Android apps in Kotlin. To help people that learn in different ways, we have
目次 プログラミングの変数・メソッドの命名でよく使う英単語 ログイン・認証 許可・権限 ネットワーク ファイル操作 外部入出力 データ入出力 データベース操作 オブジェクト操作 生成・構築 削除・破棄 変更 変換・結合・排除 分割・切り出す(スライス) 登録・設定 検索・置き換え 状態・状態変更 計算 プロセス操作 処理サイクル 確認(1) 確認(2) 比較 その他対で使う単語 コード・ID・引数(変数) 機械学習関連 その他(未分類) データベーステーブルのカラム名の工夫(変数) 変数の頭につける接頭語 プログラミングの変数・メソッドの命名でよく使う英単語 プログラミング時の「メソッド名」「変数名」の命名で使いそうな英単語を「同じ意味でもニュアンスによって使い分けされるもの」あたりを注意してまとめます。 ログイン・認証 単語 意味 log_in/log_out ログインする/ログオフする
今回はソケットプログラミングについて。 ソケットというのは Unix 系のシステムでネットワークを扱うとしたら、ほぼ必ずといっていいほど使われているもの。 ホスト間の通信やホスト内での IPC など、ネットワークを抽象化したインターフェースになっている。 そんな幅広く使われているソケットだけど、取り扱うときには色々なアーキテクチャパターンが考えられる。 また、比較的低レイヤーな部分なので、効率的に扱うためにはシステムコールなどの、割りと OS レベルに近い知識も必要になってくる。 ここらへんの話は、体系的に語られているドキュメントが少ないし、あっても鈍器のような本だったりする。 そこで、今回はそれらについてざっくりと見ていくことにした。 尚、今回はプログラミング言語として Python を使うけど、何もこれは特定の言語に限った話ではない。 どんな言語を使うにしても、あるいは表面上は抽象化さ
Cプログラミング講座 0.参考にした書籍内のページ 1.構文解析の重要さ 2.数式の構文解析プログラム 3.プログラムの流れ及び主要関数eval,calc,checkの解説 4.まとめ、反省点、より良いプログラムなど 0.参考にした書籍内のページ 今回の講座は、「プログラミング言語C、第2版」P.92〜96の逆ポーランド記法解析プログラム及び、P150〜152のCの宣言文解析プログラムを参考にしています。 当該ページを読み、それでは実際の数式を構文解析するにはどれぐらい大変なのか、と考えました。 実際に作成し、作成中に気付いた注意点や、苦労した点を交えつつ、解説をしています。 1.構文解析の重要さ 構文解析というのは、定められた文法や規則に基づき、文章を理解することを指します。 プログラムにおいて大きな分野であり、かつ様々な形で利用され、その有用さは私たちが普段身をもって体験していると思い
とあるエンジニアの技術勉強法 (インターン学生向け) というスライドを先日 @iwashi86 が書かれていました。 インターン学生向けとありますが、新人プログラマ向けとしても素晴らしい資料だと思います。 ここでは「即、役立つわけではないが後から効いてくる」という「基礎知識」に絞って教材を紹介します。 目の前の仕事のために必要なことと並行して基礎知識を学ぶのは、長期的には良いと思います。 なお「基礎」==「簡単」というわけではなく、無理せず自分のペースで付き合うのがおすすめです。 自分で読んで、かつ、とても良いと思ったもののみを紹介するので、全分野をカバーしてはいません。 基礎にどのような分野があるかは新卒準備カレンダー2011や情報科学科カリキュラムが参考になります。 以下はどれも有名な本なので、ググれば感想なども見つかるでしょう。 気になった本、読もうと思う本については、ググるのも良い
マネーゲームとしての仮想通貨は興味はないのだが、技術的に興味があって自分で簡単なコードを写経しながら勉強した。 定義 ブロックチェーンの実体はブロックを繋いだリスト構造 ブロックはいくつかの入力値(生成日時など)と、自分自身のハッシュを持っている 前のブロックのハッシュ値と、入力値を元に自分自身のハッシュが決まる。その手順は公開されている。 要はハッシュ値とそのメタデータが連続するただの配列なりの LinkedList。面白いのはここから。 ネットワークに参加するそれぞれが任意に新しいブロックを追加することができる ブロックチェーンは検証結果が正しく、より長いものが信頼される なのでビットコインみたいな仮想通貨は、生成コストが重く、検証コストが軽いものが好まれる。 他のネットワーク参加者からブロックチェーンの更新を受け取った時、手元のブロックチェーンとそれを比較し、より長いものを自分のブロ
static int s1 = 0x7fffffff; static int s2 = 0x12345678; int main(int argc, char **argv) { s1 = 0x7f7f7f7f; s2 = 0x87654321; return 0; } .symtabは、シンボルに関する属性情報(そのシンボルがメモリ上に実体を持つセクションのセクション番号と、当該セクション先頭からのオフセット、オブジェクトサイズ、シンボルタイプ(変数か関数か))を一元的に管理するセクションである。シンボルが初期値を持つファイルローカルな変数の場合、そのバイト実体は、.dataセクションに作成される。 $ readelf -s main.o Symbol table '.symtab' contains 17 entries: Num: Value Size Type Bind Vis N
まだ完成途中です back 注意: このページの内容には、おそらく多くの間違いがあります。 リンクされているので残しておきますが、利用には注意してください。(2008年3月、新山) ここではおもに make の使い方 と Makefile の書き方について 説明しています。じつは make の種類にはいろいろあり、ここでは GNU make (gmake というコマンド名のこともある) を 対象にしています (BSD の pmake でも基本的な部分は同じですが、 マクロ定義などは違うところもあるので注意してください)。 わかりにくい箇所とか、まちがってる箇所がある場合はメールください。 Contents make はどんなときに使うか Makefile を作る make の実行 Makefile の文法リファレンス 多段 make について (未完成) Makefile の例 (未完成)
ソースはgithub! 書き溜めた分が切れました。チュートリアル第2回はいつになるか未定 「データを読み込む」swift版プログラムには、「なんでか分からないけど動いている」部分がいっぱいあります。Voodooが増えるよ! やったねffmpegちゃん! チュートリアル 01: キャプチャする 概要 動画ファイルはいくつかの基本的な要素からなります。まずファイルそれ自体は「コンテナー」と呼ばれ、コンテナーの種類によってファイル内部の構造が決まります。例を挙げれば、AVIやQuicktimeなどがコンテナーです。 その次に「ストリーム」の束があります。たとえば、大抵の場合には音声ストリームと映像ストリームがあります。ストリームというのは、経時的に利用される一連のデータを比喩した表現です。 各ストリームに含まれるデータを「フレーム」といいます。それぞれのストリームは異なるコーデックによりエンコー
機械学習ブームなどにより、 Python を触り始める Rubyist が増えてきたと思います。その際に問題になりやすいのが環境構築です。Rubyだと rbenv がデファクトスタンダードになっているのに、なぜか Python に… 私の立ち位置もともとは、数年前まで 年に一回Python3でNLTKやらscikit-learnやら機械学習や自然言語処理の環境を作ろうと試みては失敗してPython使うものかと思っていた人でした。それが、Anacondaで環境導入すると、面倒なことは何も考えずに済むということを知り、CookpadではAnacondaを前提に環境構築を勧めていました。 今は、ymotongpooに「郷に入っては郷に従え」と言われたため、pip+virtualenv/venvで全てをこなしていますが、これで困ったことは特にありません。macOS, Windows, Linuxそ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く