タグ

コードに関するamagasa99のブックマーク (9)

  • ヤマハ | コードについて学ぶ

    この講座で取り上げるテーマはハーモニーです。 ハーモニーは一般に、I、IV、Vなどと表しますが、それらをコードネームでほとんど書き表すことができます。 この講座では、「三和音のコードネーム」、「四和音のコードネーム」を中心に学習します。 5回の講座になっていますので、その1回1回を楽しんで見て下さい。 それといっしょに実践して欲しいことは、音楽を聴いて、ハーモニーを聴き取ろうと努力すること。 また、自分でメロディーを作り、学習したハーモニーを、そこでどんどん使ってみることです。 それがハーモニー、コードネームを身につける最良の方法となるでしょう。

  • 同期エンジンの心臓部を書き換える

    0 0 719 0 この 4 年間、Dropbox では、デスクトップ クライアントの同期エンジンを白紙の状態から再構築しようと懸命に取り組んできました。同期エンジンは、デスクトップ パソコン上の Dropbox フォルダの陰に隠れた魔法です。これは、Dropbox で最も長く使われているコード部分であり、最も重要なコード部分の 1 つでもあります。今回、新しい同期エンジン(コードネーム「Nucleus」)をすべての Dropbox ユーザー向けにリリースさせていただくことを、ここに発表いたします。 同期エンジンの書き換えは当に大変な作業で、多くの環境でマイナスともなりうる構想であったことに鑑みると、手放しで祝う気持ちにはなれません。結果的には Dropbox にとって素晴らしいアイデアであったわけですが、それは、私たちがこのプロセスにどのように取り組むべきかを熟考したからこそ、たどり着

    同期エンジンの心臓部を書き換える
  • 私のコードリーディング術

    はじめに 私はプログラムを書くよりも読む方が好きです。最近になって「プログラムは文学だ。作者の心情がそこに表れている」と思うようになりました。 というわけでいろんなソフトウェアを読んできたわけですが、代表的なものとしては以下があります。 C言語 CRuby(1.9初期) mruby(2012年当時) CPython(3.5.1、3.6.3) Ruby Ruby on Rails(1.2.3) Mastodon(1.3.2) Python Django(1.10.5) 読んだソフトウェアの読解記事は個人サイトに上げています。10年近く前に読んですでに過去の遺物(失礼)なものもありますが。 さて、そんな感じに多くのソフトウェアを読んできたわけですが、どうやって読んできたか(ツール、方法)を紹介していきたいと思います。 コードリーディングのツール まずは読む際のツールです。 なおOSはWindo

    私のコードリーディング術
  • 【実例付き】〜リレイテッドⅡm7〜 コードが分かると作曲が出来る!「ダイアトニック以外のコードを使ってみよう!」編 その3 - おとてく

    「コードが分かると作曲が出来る!」シリーズ、 今回は「ダイアトニック以外のコードを使ってみよう」の3回目として、リレイテッドⅡm7というものを紹介します! このシリーズの記事一覧 ①  「作曲に使うコードを知ろう!」編 ②  「作曲にはコードの順番が大事!」編 ③  「コードを楽器へ割り振ろう!」編 ④-1モーダルインターチェンジ ④-2セカンダリードミナント ④-3 リレイテッドⅡm7 ←今回 ④-4パッシングディミニッシュ ④-5分数コード ④-6sus4 ④-7aug ④-86thコード リレイテッドⅡm7 「リレイテッド・ツーマイナー・セブン」と読みます。 前回紹介したセカンダリードミナント のコードをⅤとみなしたときに、そのみなしⅤへツーファイブ進行が出来るⅡm7のことです。*1 ツーファイブについては、コードが分かると作曲が出来る!「作曲にはコードの順番が大事!」編をどうぞ!

    【実例付き】〜リレイテッドⅡm7〜 コードが分かると作曲が出来る!「ダイアトニック以外のコードを使ってみよう!」編 その3 - おとてく
  • 一夜漬け音楽理論

    ■コードの覚え方(全15回)■ ┣1.ドレミとアルファベット ┣2.基となるコード ┣3.真ん中の音が変化する ┣4.真ん中の音がさらに変化 ┣5.ここまでのまとめ ┣6.右の音が変化する ┣7.3つの音のまとめ ┣8.音を付け足す ┣9.特殊な例 ┣10.4つの音のまとめ ┣11.さらなる音を付け足す ┣12.さらに、、、 ┣13.音を移動しちゃう ┣14.ベースの音が変わる ┗15.まとめ ■キー・スケールのお話(全6回) ■ ┣1.メジャースケール ┣2.ナチュラルマイナー ┣3.ハーモニックマイナー ┣4.スケールのまとめ ┣5.メジャーキー ┗6.マイナーキー ■コード進行のお話(全13回)■ ┣1.重要な3つのコード[1] ┣2.重要な3つのコード[2] ┣3.重要なコードのまとめ ┣4.簡単な進行 ┣5.グループ分け ┣6.カデンツ ┣7.進行においての規則 ┣8.忘れてお

  • C/C++プログラマのための開発ツール - Cybozu Inside Out | サイボウズエンジニアのブログ

    サイボウズ・ラボの光成です。 先日、社内で主にLinux上でC/C++を用いている開発者向けの講義をしました。 「こんなことができる」と知ってもらい、興味を持てば各自で勉強してもらおうと広く浅くツールを紹介しました。 gtags, ASan, Valgrind, addr2line, cppcheck, SystemTap, perfなどです。 興味があれば講義資料「C/C++プログラマのための開発ツール」をごらんください。 コンパイラオプション 受講者には新人やサイボウズ・ラボユースの学生もいたので基的なところから紹介しました。 C/C++コンパイラを使うときはできるだけ警告オプションをつけるのが望ましいです。 警告が出るのは自分のコードの書き方に不備があることが多いからです。 gccやclangでは-Wall -Wextraは基としてそれ以外にも有用なオプションがあります(C++

    C/C++プログラマのための開発ツール - Cybozu Inside Out | サイボウズエンジニアのブログ
  • mrubyでテキストエディタ書いてる - スペクトラム

    大体動くようになってきたので公開。 github.com きっかけは、まず最初にkiloがあった。 github.com kiloはredis作者が作った、C言語で書かれた超ミニマムなテキストエディタだ。*1 「このコードを読めば、ベーシックなテキストエディタの実装方法が分かるはず」 と思って実装を読み、大体わかったので試しにRubyで書いてみるかとはじめてみたのが始まりだった。 そのうち「mrubyでも動くようにしてみるか〜」と思って、 必要そうなmruby-io-consoleを書いた。 というわけで、riloはkiloを参考にして、rubyでもmrubyでも動く(ように今のところなっている)超ミニマムなテキストエディタ。という感じだ。 今後の展望は ワンバイナリで動くようにする riloはriloで書く 対応プラットフォームを増やす カラースキーマをプラグインで書けるようにする vi

    mrubyでテキストエディタ書いてる - スペクトラム
  • 誰もが知ってるけど敢えて言わない確実に身につくプログラミング学習法

    誰もが知ってるけど敢えて言わない確実に身につくプログラミング学習法 The kings road to be a programming ninja 2016.04.27 Updated by Ryo Shimizu on April 27, 2016, 08:34 am JST 学問に王道なしと言いますが、プログラミングを上達するために最も効果的であるにも関わらず、いまや誰もその有効性を指摘しなくなってしまった方法がひとつだけあります。 それは「写経(しゃきょう)」です。 写経・・・文字通り、教科書に書いてあるプログラムリストをそのまま書き写すことです。 「そんなバカな。そんなことで上達が早まったら苦労しない」 と思うかもしれません。 しかし、実際には写経ほど効果的な学習法はないのです。 例を示しましょう。 たとえば、プログラミングの授業で、サンプルプログラムの半完成品がファイルで配られ

    誰もが知ってるけど敢えて言わない確実に身につくプログラミング学習法
  • 物理エンジン「Tiny2D.js」のソースコード詳説

    物理エンジン「Tiny2D.js」の全コードは250行程度です。どのような構造になっているのか順番に見ていきましょう。 はじめに 記事では、物理エンジン「Tiny2D.js」のコードを見ながら、どのような構造になっているのかを見てゆきます。まずは、こちらからTiny2D.jsのコードをダウンロードしてください(JSGameRe_Physics.zip)。記事とコードを見比べながら読み進めることで、より理解が進むでしょう。Visual Studio Codeをインストールしていない人は、拡張子をhtmlやtxtに変換することでコードを見ることができます。 物理エンジン「Tiny2D.js」のコード詳細解説 それでは、さっそくTiny2D.jsのコードを見てみましょう。たった250行程度しかありません。順番に解説していきます。 定数の定義 まず、先頭でさまざまな定数を定義しています。 定数

    物理エンジン「Tiny2D.js」のソースコード詳説
  • 1