タグ

ブックマーク / zariganitosh.hatenablog.jp (23)

  • ASCIIコードの秘密 - ザリガニが見ていた...。

    当はエスケープシーケンスのことを調べていたのだが、その前にASCIIコードについて調べることになってしまった...。文字コードの基として知っているつもりだったASCIIコードについて、あらためて見直してみると、実は当の意味をよく分かっていなかったことに気づいた。 ASCIIコード表 ASCIIコードは、7ビット(2進数7桁)の文字コードであり、全部で128のコードが定義されている。 最も基的な文字コードであり、その他多くの文字コードはこのASCIIコードと互換性を維持している。 00 10 20 30 40 50 60 70 00 NUL DLE SP 0 @ P ` p 01 SOH DC1 ! 1 A Q a q 02 STX DC2 " 2 B R b r 03 ETX DC3 # 3 C S c s 04 EOT DC4 $ 4 D T d t 05 ENQ NAK % 5

    seneca
    seneca 2015/02/10
  • なるべく書かないawkの使い方 - ザリガニが見ていた...。

    awkという、古くからのスクリプト言語がある。(1977年生まれ。読み方は「オーク」である。エイ・ダブリュ・ケイではない)man awkをPDFに変換してみると、たったの3ページ強しかない。 $ man -t awk|pstopdf -i -o ~/Downloads/awk.pdf とてもシンプルな言語仕様ではあるが、awkには必要十分な表現力がある。特にテキストを処理する場面においては、最小限のシンプルな記述で、気の利いた処理を素早くこなす。無駄のないawkワンライナーを見ると、ある種の感動を覚える。awk以降に生まれたスクリプト言語は、少なからずawkの影響を受けていると思われる。 awkを知ることで、間違いなく幸福度は上がると思う。いつかきっと「知ってて良かった」と思える時が来るはず。もっともっと、awkを知りたくなってきた。 基動作 awkの基動作は、とってもシンプルである。

    なるべく書かないawkの使い方 - ザリガニが見ていた...。
    seneca
    seneca 2013/12/09
  • UTF-8にもいろいろある - ザリガニが見ていた...。

    前回からの続き。 改行コードの違いを体感してみる - ザリガニが見ていた...。 文字エンコードとロケールを体感する - ザリガニが見ていた...。 改行コードの違いも知った。文字コードとロケール、ターミナルの言語環境との関係も知った。これで文字にまつわる悩みとはおさらばできると思ったら、まだダメだった...。 実験環境 OSX 10.8 Mountain Lion以前((OSX 10.9 Mavericksでは、Mac仕様なNFDのUTF-8を表示しようとするとエラーになってしまったため、10.8以前の環境で実験した。Assertion failed: (width > 0), function conv_c, file /SourceCache/shell_cmds/shell_cmds-175/hexdump/conv.c, line 137. ** ** Abort trap: 6

    UTF-8にもいろいろある - ザリガニが見ていた...。
    seneca
    seneca 2013/11/25
  • Retinaよりも大切なもの - ザリガニが見ていた...。

    その後の関連日記あり Retina+Mountain Lionのスクロール - ザリガニが見ていた...。 Retinaのほんとうの力 - ザリガニが見ていた...。 Retinaなら3840x2400の超広大なデスクトップを体感できる! - ザリガニが見ていた...。 MacBookのRetinaディスプレイを縦2880pxにした壮観な眺め - ザリガニが見ていた...。 発注 WWDCの翌日、MacBook Pro Retinaモデルを発注してしまった。2880×1800の魅力にとり憑かれてしまったのだ。発注したモデルは... 2.6GHzクアッドコアIntel Core i7プロセッサ メモリ16GB フラッシュストレージ512GB 値段は今まで使っていたMacBook2台分以上だが、このスペックなら今後5年以上はそのまま使い続けられるのではないか、と考えての発注であった。 実際過去

    Retinaよりも大切なもの - ザリガニが見ていた...。
    seneca
    seneca 2012/06/22
  • なるべく覚えないviエディタの使い方 - ザリガニが見ていた...。

    viというエディタがある。長い歴史のあるエディタである。ユーザー視点で見ると、コマンドモード・入力モードという二つのモードがあって、モードを切り替えながらテキスト編集するスタイルである。GUI全盛のモードレスなエディタに慣れきってしまった自分には、かなり面らったエディタであった。初めて起動した時、文字も入力できず、終了の仕方も分からない...。何じゃこれは? そう思って調べてみると、viには非常に多くのショートカット的コマンドがある。その多さにまず面らう。とても覚えきれないと。以下は、自分で調べて理解できた使い方である。軽く100以上の操作がある。(これでもなるべく行を節約して書いたのに)しかも、以下の表でもすべてを網羅できている訳ではない。 どうにか、これらのコマンドをなるべく覚えないで、そこそこ使えるようになりたい。何を覚えて、何を覚えなくていいのか、探ってみた。 viエディタの使

    なるべく覚えないviエディタの使い方 - ザリガニが見ていた...。
  • 最高の電子書籍はどこにあるのか? - ザリガニが見ていた...。

    伝記スティーブ・ジョブズ1・2、ようやく読み終わった。今回は電子書籍で購入した。かつて、アラン・ケイが夢見たDynabook、それを実現してしまったジョブズ渾身の傑作iPadで、長編書籍(しかもジョブズ自身の伝記という内容)を果たしてどこまで快適に読めるのか、身を持って体感するため。 iPadで、伝記スティーブ・ジョブズが読める電子書籍リーダーにもいろいろある。このブログを書いている時点で7つの電子書籍リーダーを選択できた。果たして自分はどの電子書籍リーダーで読めば良いのだろう?探ってみた。 一覧比較 最初だらだらと調べていたのだけど、いろいろな要素があって非常に分かりにくい...。 とりあえず、iPadで伝記スティーブ・ジョブズを読む状況に限定して調べてみた。 ebiReader Kinoppy honto パブリ BookLive Voyager アプリ 価格 1995円 2000円

    最高の電子書籍はどこにあるのか? - ザリガニが見ていた...。
  • MacBookで64ビットカーネルの使い心地 - ザリガニが見ていた...。

    OSX 10.6(SnowLeopard)では、標準添付されるほぼすべてのソフトウェアが64ビットに対応した。アクティビティモニタ(/Applications/Utilities/Activity Monitor.app) で確認してみると、「種類」の列項目がほとんど「Intel(64ビット)」となっている。(でも、iPhoto・iTunesは未だ32ビットなんだけど) さらに、SnowLeopardではOSの核であるカーネルまでも64ビットに対応したらしい。アクティビティモニタでPIDが常に0で表示されるkernel_taskさえも、64ビットに対応したのだ。しかし、デフォルトでは多くのマシンが未だ32ビットカーネルで起動するらしい。64ビットカーネルで起動するには「6」と「4」のキーを押しながら起動する必要があるそうだ。 Mac OS X v10.6:32 ビットまたは 64 ビットカ

    MacBookで64ビットカーネルの使い心地 - ザリガニが見ていた...。
  • カメラの知識(露出について) - ザリガニが見ていた...。

    灯台下暗し。カメラの基的な知識は、メーカーのサイトで親切、丁寧、体系的に解説されていることが多かった。 デジタル一眼レフカメラの基礎知識 | ニコンイメージング レンズに関する基礎知識 | デジタル一眼レフカメラ“α”(アルファ) | ソニー デジタルカメラ講座 | デジタルカメラ LUMIX(ルミックス) | お客様サポート | Panasonic レンズのF値 レンズの焦点距離とF値(第十一回) | デジタルカメラ講座 | デジタルカメラ LUMIX(ルミックス) | お客様サポート | Panasonic F値 = 焦点距離 ÷ レンズ口径 50mm F1.0のレンズは、口径50mmの大きさということ。(面積:25^2*3.14=1962.500) 50mm F2.0のレンズは、口径25mmの大きさということ。(面積:12.5^2*3.14=490.625) F値が2倍(F1.0→

    カメラの知識(露出について) - ザリガニが見ていた...。
  • そんなに速くないけど快適なMacBookにしておく - ザリガニが見ていた...。

    今更だが、最新のMacBookAirの起動時間は速い!15秒だそうだ。 新しいMacBook Airの起動時間はたったの15秒! | Macin' Blog ところで、自分のMacBookの起動時間は一体何秒なんだろう?計ってみた。 MacBookが起動するまでのタイムテーブル デスクトップが表示されるまでなら53秒、ログイン項目まで完全に起動するには92秒だった。 00秒後、電源ボタンを押す。 03秒後、起動音ジャーンが鳴る。 10秒後、画面にリンゴマーク表示される。 53秒後、デスクトップが表示され、ログイン開始。 92秒後、ログイン項目もすべて起動完了。 ターミナル・MinimumMenu・What's Up!・iTunesも起動している状態。 MacBookが終了するまでのタイムテーブル ちなみに、終了する時のタイムテーブルも計測してみた。 00秒後、システム終了ボタンをクリック。

    そんなに速くないけど快適なMacBookにしておく - ザリガニが見ていた...。
    seneca
    seneca 2010/12/18
  • sed・grepで濁点と改行をまともに扱う方法 - ザリガニが見ていた...。

    前回、Automatorの「シェルスクリプトを実行」アクションに以下のスクリプトを設定して喜んでいた。 #sed 's/^/-/g' # 行頭に-を付加する #sed 's/$/-/g' # 行末に-を付加する #sed 's/\(xxxx\)/[\1]/g' # xxxxを[]で囲う #sed 's/xxxx/oooo/g' # xxxxをooooに置き換える 必要なコマンドラインのコメントマーク#を削除して、便利に使うつもりでいた。 さらに、これは便利と思い、気を良くしてgrepバージョンも作って喜んでいた。 grep -i 'xxxx' #-i 大文字と小文字を区別しない #-v パターンに一致しない行を表示する #-n パターンに一致した行のファイル内での行番号を表示する #-c パターンに一致した行の行数のみを出力する #-b パターンに一致した行の先頭からのバイト数を表示する

    sed・grepで濁点と改行をまともに扱う方法 - ザリガニが見ていた...。
  • radikoのflvから取り出したAACはなぜiTunesで読めないのか? - ザリガニが見ていた...。

    http://radiko.jp/ は既存のラジオ放送をWebで同時配信(サイマル放送)してくれている。 その番組をradikoroを使って録音すると、20100905220904.flvのようなフラッシュビデオ形式のファイルとして保存される。 保存されたファイルは、大体1時間番組で20MBくらいのサイズ。 flvではiTunes・iPodが再生してくれないので、radikoroの録音設定でmp3に変換するようにしている。 ところが、変換後のmp3は50MBくらいのサイズになってしまう。およそ2.5倍に膨れ上がっているのだ。 今時のハードディスクは、テラバイトが標準になりつつあるので大した問題はない。でも、気分が良くない。 調べてみるとradikoの音声は、HE-AAC 48kbpsのステレオ品質*1らしい。(着うたフルと同等レベル) 上記のHE-AACは、flvというコンテナ*2に収めら

    radikoのflvから取り出したAACはなぜiTunesで読めないのか? - ザリガニが見ていた...。
  • MacBookでラジオを録音する - ザリガニが見ていた...。

    今やインターネットにはあらゆる情報が流れている。http://radiko.jp/というサイトに行くと、そこでは既存のラジオ放送が聴けたのだ。(但し、NHK-FMが参加してなくて残念)音質も良いと思う。さらに、radikoroというradikoを聴くアプリケーションもあった。radikoroを使えば聴くのはもちろんのこと、録音までできる。予約画面もかなり使いやすい。 スリープ状態から復帰して録音、録音終了してスリープに戻るなんてこともできる。 曜日を指定して繰り返し設定もできる。 radikoroをインストールするのは簡単で、ダウンロードしてアプリケーションフォルダにコピーするだけでOKだ。 radikoroを起動して、好みのラジオ局を選択すれば放送が開始された。 ところが、録音機能使うためにはMacPortでrtmpdumpとffmpegのインストールが必要だった。 rtmpdumpのみ

    MacBookでラジオを録音する - ザリガニが見ていた...。
  • 本の基本性能を考える - ザリガニが見ていた...。

    iPadを利用するようになってから、電子書籍というものを実際に何冊か読んでみた。意外にも紙のと同じ感覚で引き込まれて、最後まで読書することが出来た。これは、iPadが極めての特性に近い感覚を作り出している為と考えた。 それでは、の特性とは何か?と考えると、あまりにも身近過ぎて、空気のように当り前の存在で、その特性がなかなか思い浮かばないことに気付く。これはヨハネス・グーテンベルクの活版印刷以降、5世紀以上にわたって洗練され続けてきた「」というシステムのUIが非常に優れている証拠と思える。当然のように感じて、誰もが何の迷いもなく使える仕組みは優れているのだ。 参考:お知らせ : 講談社「おもしろくて、ためになる」出版を 改めて、の基性能を絞り出してみた。(これ以外にもあるかもしれない) ディスプレイ性能 最低でも300dpi以上の超高解像度。かなり小さな文字でも、にじみなく判読で

    本の基本性能を考える - ザリガニが見ていた...。
  • iOS4の気になる機能と対策 - ザリガニが見ていた...。

    iOS4にアップデートして実際に使ってみて、気付いたことやその対策をメモってみた。 利用環境 iPhone 3GS & iOS4 メモ IMAPアカウントを利用して、無線経由で同期可能になった! これまでは、USBに接続して、iTunesで同期していた。 カレンダー Gmail・Yahoo Mailでも、無線経由で同期可能になった! これまでは、MobileMeのみ、無線経由の同期が可能だった。 Wi-Fi 感度が良くなった!(個人的な感覚として、アンテナ1メモリくらい) 特に、スリープ中でも可能な限り接続を維持するようになった気がする。 おかげで、スリープ中のプッシュ通知も確実になった。(モバイルデータ通信がオフの状態) これまでは、スリープして暫くすると切断されてしまう場合が多かった。 モバイルデータ通信 3Gパケット通信をOS標準の設定によって、自由にコントロールできるようになった。

    iOS4の気になる機能と対策 - ザリガニが見ていた...。
  • iPadの使い心地 - ザリガニが見ていた...。

    5月28日からiPadを使い始めた。iPadは、ハード仕様から考えれば画面の大きなiPhoneである。あるいは画面の小さなMacBook Touchとも言えるかもしれない。 iPhone iPad MacBook (プログラミングRuby) 画面px 480 × 320 1024 × 768 1280 × 800 画面アスペクト比 3:2 4:3 16:10 画面解像度ppi 163 132 113 画面対角インチ 3.5 9.7 13.3 画面サイズcm 7.4 × 4.93 19.71 × 14.78 28.65 × 17.9 体重さg 135 680 2130 750 体大きさcm 11.55 × 6.21 × 1.23 24.28 × 18.97 × 1.34 33.03 × 23.17 × 2.74 23.4 × 18.2 バッテリー駆動時間*1 9 10 3.5 参考:D

    iPadの使い心地 - ザリガニが見ていた...。
    seneca
    seneca 2010/06/05
  • 迷路の最短経路を求めるには? - ザリガニが見ていた...。

    相当、出遅れた感はあるが、以下の試験問題をやってみた。(Rubyで) さて試験問題です。 内容は、壁とスペースで構成された迷路が与えられたとき、スタート地点からゴール地点に至る最短経路を求めよ、というものです。 たとえば、S:スタート G:ゴール *:壁 $:解答の経路 としたとき、 ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * * *********** * * * * ******* * * * * * **************************という入力に対し、 **************************

    迷路の最短経路を求めるには? - ザリガニが見ていた...。
  • 麻雀の「待ち」を出力する その3 - ザリガニが見ていた...。

    さらに前回の続き。 メソッドを再帰呼び出しすることで、ループ(再帰呼び出し)回数はかなり節約できた。 しかし、puts @outs.uniqに頼っている現状では、まだ無駄な検索をしていることになる。 順序違いの組み合わせは、最初から無視すれば、一石二鳥だ。 無駄なループ処理を節約できる。 重複を取り除く処理も不要になる。 uniqで誤摩化すということは、自分で書いたコードのアルゴリズムを読み切れていない証拠だ。 処理の流れを徹底的に理解して、無駄な処理を排除してみる。 class Tehai def initialize(input) @in_text = input @outs = [] @count = 0 end # 対子を取り出す def toitsu(loc, n, rest, pick, head) new_rest = rest.sub(/#{n}#{n}/, '') gen

    麻雀の「待ち」を出力する その3 - ザリガニが見ていた...。
  • 麻雀の「待ち」を出力する その2 - ザリガニが見ていた...。

    前回の続き。前回は他人のコードを一切参考にせずに書いて、試行錯誤してようやく出来上がった。見直してみると無駄が多い。 ループ回数は節約したと言っても、常に2100回も繰り返されてしまう。どんな単純な「待ち」であっても。 問題は、手牌の状態に関係なく、1から9までの対子・順子・刻子をチェックしているところ。来は手牌に無ければ、チェックの必要がないのに。 自分がテンパイを認識する時は、頭・刻子・順子を、手牌の先頭から順に当てはめて、可能な限りの組み合わせを探していると思う。 手牌に存在しない組み合わせは、当たり前だが全くチェックしていない。 自分の思考と同じ仕組みでチェックすれば良いのだが、それをコードとしてどうやって実現すれば良いのか、結構悩ましい。 すでに多数の、麻雀の「待ち」を出力するプログラム、が発表されているので、そこからヒントを探すことにした。 http://b.hatena.n

    麻雀の「待ち」を出力する その2 - ザリガニが見ていた...。
  • 麻雀の「待ち」を出力するプログラム - ザリガニが見ていた...。

    既に時間は経ってしまったが、以下のような問題が出題されていた。 麻雀の手牌が入力として与えられたとき、「待ち」を出力するプログラムを書いてください。 字牌なし・萬子のみの想定、つまり、いわゆる「チンイツ」限定で結構です(プログラミングの質的にはこの限定でまったく問題ないため) 1〜9の数字13個からなる文字列を受け取り、できている順子・刻子・アタマを()、待ちの部分を[]でくくって出力してください 面前かつ槓子は存在しない前提でOKです ()[]の出力順は自由ですが、順序だけが違うものは同一視してください(例:111222を刻子2つで構成するとき、(111)(222)が(222)(111)に入れ替わるだけのものは同一解答とします) 多面待ちのときも含めすべての待ちを出力してください 待ちがないときは何も出力しないでください http://www.itmedia.co.jp/enterpr

    麻雀の「待ち」を出力するプログラム - ザリガニが見ていた...。
  • ベジェ曲線がわかった! - ザリガニが見ていた...。

    今までいろいろな説明を見てみたけど、頭では直感的に理解できていなかった。 制御点を動かした時、曲線がどのように変化するのか、イメージできなかった...。 そもそも、制御点と曲線の関係性が全く分かっていない...。 でも、てっく煮ブログさんid:nitoyonを一目見て、今までのモヤモヤが一瞬でクリアになってしまった!特に1と3の解説で使われている図やフラッシュを実際に操作してみると、難しい話は抜きにして、制御点を操作した時の曲線の心が分かってしまった気になる。 ベジエ曲線の仕組み (1) - 昔話 ベジエ曲線の仕組み (2) - 2次ベジエ曲線を詳しく ベジエ曲線の仕組み (3) - 3次ベジエ曲線 ベジエ曲線の仕組み (4) - ActionScript 3.0 でベジエ曲線を描く おおっー、感動!こんなにシンプルな方法で作図できるとは!(√2や円周率πを単純な数列から計算できることを知

    ベジェ曲線がわかった! - ザリガニが見ていた...。