サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
logrepo.blogspot.com
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 前回、Ruby で書いた「アプリのかけら」を Python で書き直すにあたって、言語による記述の差というか特徴を調べてみることにした。実際には差を調べるというよりは、Ruby でどう書けば Python への書き直しが楽になるかを考えた、というのが正しい。 題材として、正規表現を使った処理を選んだ。正規表現こそ、テキスト処理の真髄だと思うからだ。これが書き直せるなら、他の部分だってどうにかなる(に違いない)。処理の内容は、HTML から class 属性のついたタグの一覧を作る、というものだ。 Ruby で書いてみる 最初の実装の問題点 Ruby では正規表現は言語に組み込まれた型であり、リテラルとして記述することができる。さらには正規表現を使ったパターンマッチに専
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 恥ずかしい告白をしなければならない。今日、「初めてのPython」の 「23 章 クラスのコーディング (基礎)」を読むまで、Python におけるクラス変数とインスタンス変数の記述の仕方を混同していた。というより、class ステートメントの内側に記述した(代入した)変数は、すべてインスタンス変数になると勘違いしていたのだ。 ここで、「クラス変数」とは、クラスのインスタンスにではなく、クラス自体が(つまりクラスオブジェクトが)持つ変数のことで、そのクラスのすべてのインスタンスオブジェクトで共有されるものを指す。一方で「インスタンス変数」は、それぞれのインスタンスオブジェクトに固有の変数のことだ。「初めてのPython」では、変数ではなく属性という言葉で表現しているが
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 ローカルで(つまり、手元の Mac や PC で)すでに git 管理しているディレクトリを github に公開する方法をメモしておく。単純な手順だし、ヘルプにも詳しく書かれているからそれを見れば良いだけなんだが、いずれ自分視点での記録も重宝するはず。 以前に書いた記事の続きになる。よって、ここでは Github へのユーザ登録はもちろん、SSH 公開鍵の登録も完了しているものとする。 手順 公開までの手順を段階に分けると以下のようになる。 github に新プロジェクトを登録する。 ローカルのリポジトリで、Github のプロジェクトリポジトリをリモートリポジトリとして追加する。 ローカルからリモート(github)に既存のコミットを push する。 1. プロ
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 port がアンインストールできない きっかけは、Ruby 1.9.2p0 のインストール(とアンインストール)。ターゲットマシンは Mac mini と iMac だ。 どちらの Mac でも ports を使ったインストールには問題なかった。ちょっと試したいことがあったため、mini の方から一度アンインストールすることにした。ところが、ここでつまづいた。アンインストールが失敗したのだ(↓)。 [mini] mnbiwa% sudo port uninstall ruby19 [~] ---> Deactivating ruby19 @1.9.2-p0_1+mactk ---> Uninstalling ruby19 @1.9.2-p0_1+mactk Error
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 雑感: 256GB は小さいか? 2010 Mid のアップデートでは、iMac (の一部) そして(8 月発売開始予定の) Mac Pro で、Apple Online Store のカスタマイズオプションとして SSD が選べるようになった。iMac では 256GB の SSD と 1TB または 2TB の HDD の組み合わせにできる。この構成で発注した場合、SSD に OS とアプリをインストールした状態で出荷してくれる。高価なので迷ったが、SSD + HDD(1TB) で発注した。 実際に届いた iMac を見ると、SSD が Macintosh HD、HDD が Macintosh HD 2 となっている。OS やら何やらはすべて SSD (Macin
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 以前、MacBook と Mac mini Server の間で git clone しようとして失敗したことがあった(→「MacBook にも Git を (あるいはリモートリポジトリの準備)」)。原因は、リモート側のシェルの PATH 設定だった。git でリモートリポジトリから SSH 経由で clone しようとする場合、リモート側で(SSH 経由で) git コマンドが実行される。リモート側のシェルのパスに git コマンドをふくむディレクトリが入っていなければ、git コマンドが見つからずエラーになる。 シェルは起動時に設定ファイルを読み込む(実行する)ことで実行環境を整える。このとき、たいていのシェルでは実行モードによって読み込む設定ファイルが変わる。実
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 前回の記事で書いたように(→「オフライン機能の実現 #2」)、フィードデータの保存、読み込みは、FeedManager と呼ぶ管理用のクラスを作り、ネットワークからのデータの取得と合わせて、その詳細を隠すことに決めた。 今日は、その FeedManager を作っている。残念ながら FeedManager はまだ完成していない。今回は、この実装の過程で気付いた注意点を 2 点ほど書き留めておく。 シングルトン・パターン FeedManager にはシングルトン・パターンを使う。Cocoa でシングルトン・パターンを使うには少し注意が必要だ。簡単に言うと、NSObject で定義ずみのいくつかのメソッドを上書きしなければならない。また、シングルトン・パターンには付きもの
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 (「アジャイルソフトウェア開発の奥義」p.34) テストを最初に書くことによって、これまでとは違った視点で物事を見ざるをえなくなるということだ。テストを書こうとすれば、呼び出す側の立場でプログラムを見るようになる。[...snip...] テストを最初に書くことは、ソフトウェアを呼び出しやすい形式に設計することにつながるのだ。 その上、テストを最初に書こうとすれば、プログラムをテスト可能な形式に設計しようと努力するようになる。[...snip...] テストを最初に書くという行為は、ソフトウェアの分離を強いるのだ! もうひとつの効果は、テストそのものが有益なドキュメントになるということである。[...snip...] この「ドキュメント」はコンパイルも実行も可能である
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 Github のリポジトリにアクセスするためには、あらかじめこちらの SSH 公開鍵を登録しておかなければならない。公開鍵は ssh-keygen コマンドで作れば良い。ウチの環境では、LAN 内の他の Mac へのリモート接続等に公開鍵を使っているため、今回 Github へ登録するものは、それとは別に作ることにした。そのための手順は以下のようになる。 公開鍵生成時に鍵ファイルの名前を指定する。 Github への SSH 接続では標準とは異なる鍵ファイルを使うように設定する。 SSH 公開鍵の生成 以下が実際の公開鍵生成の実行結果。参考にしたのは help.github にある「Generating SSH keys (OSX)」。また、鍵のファイル名を変更する方
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 必要に迫られて Snow Leopard での ACL の取り扱い、とくに ACL を付けたり取り除いたりといった最低限の操作について調べた。ググってみても、「これだ!」という情報には出会えなかった。結局、一番実用的なのは man chmod だった。 chmod のマニュアルページには "ACL MANIPULATION OPTIONS" というセクションがあり、操作の具体例を挙げつつコマンドオプションとACL属性の説明が書かれている。ACL で困ったら、まずは man chmod を見るべき。 ACL を見る ls に表示用オプションが増えている。ls -l で表示させたとき、許可ビット欄の一番右に + が付いていたら、そのファイルやフォルダに ACL が付いてい
iPhone 4 のピクセル数は 3G/3GS の 4 倍(縦横が2倍)だが、(iPhone 4 の Safari は)画面幅のメディアクエリーに関して旧機種と同様に振る舞うらしい。このため、iPhone 4 を 3G/3GS と区別するためには、画面幅ではなく -webkit-device-pixel-ratio という特性を使うようだ(→ 詳細は「iPhone 4 の CSS を切り替える方法」を参照)。いかんせん、iPhone 4 をまだ手に入れていないから試しようがない。 デバイスの向きを検出する ウェブページのほとんどは縦方向へのスクロールを前提にして作られているため、縦のサイズよりも横のサイズがレイアウトにとっては重要だ。iPhone や iPad のように向きを変えることで横(画面の幅)が変わるデバイスでは、向きに合わせてスタイルを指定したくなる。そのための特性が orien
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 現行の Mac に搭載されている OS、Snow Leopard は 64 ビット OS だと言われる。この 64 ビットって、いったいどれぐらいの数なんだろう? 64 ビットの「ビット」は 2 進数で 1 桁のこと。普段、わたしたちが日常生活で使う 10 進数では 1 桁で 0 〜 9 までの整数を表現できる。2 桁なら 99 まで、3 桁なら 999 まで、...。一般に、10 進 n 桁で 10n - 1 までの整数を表現できる。同様に、2 進 n 桁では 2n -1 までだ。つまり、64 ビットなら 264 - 1 が最大の数となる(符号なしの場合)。 では、この 264 (あるいは 264 - 1) って、いったいどれぐらいの大きさなんだろう? (プログラマ
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 "programming"というよりは、"development"寄りの話題。自分用のメモ。 iPhone SDK をダウンロード(してインストール)すれば、iPhone シミュレータを使った開発ができるようになる。一方、iPhone や iPod touch の実機を使ったテストやデバッグをするためには、iPhone デベロッパプログラム(有料; 個人の場合、年間参加費10,800円)に参加しなければならない。 プログラムに参加した後、実機での開発をするための具体的な手順は、iPhone Dev Center からダウンロードできる "iPhone Developer Program User Guide" というドキュメントに書かれている。 以上を踏まえ、個人で(
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 ふと思い立って、Maxima をインストールしてみることにした。 まずは Mac mini (Server) でやってみた。 ちなみに、Maxima っていうのは GPL で配布されているフリーな数式処理システムだ。「はじめてのMaxima」によれば、 Maxima は 1960 年代の MIT の MACSYMA プロジェクトで開発された「MACSYMA」(MAC's SYmbolic Manipulation system) の「DOE(エネルギー省)版」を、Texas 大学のシェルター氏 (Schelter) が「Common Lisp: The language 第一版」に対応した「gcl」に移植したものです。 ということだ。手元にあるかなり古い雑誌(「インタ
身の周りで起きること、起こすことの記録、それが lifelog。 自分で作るモノの置き場所、それが repository。 わたし自身もそうだが、一般にキーボードに対する「こだわり」は大きく 2 つある。まず何より配列。次がキータッチ。どんなに心地良い叩き具合であっても、慣れた配列でなければ、しょっちゅうイラッとくる。だから配列が最優先。 パソコン用のキーボード配列には大きく 2 種類ある(PC であれ Mac であれ)。1 つは US 配列とか英字配列と呼ばれるもの。もう 1 つは JIS 配列あるいは日本語配列と呼ばれるもの。わたしは前者を好む。っていうか後者は使わない。「イラッとくる」から。最下段に変換、無変換のような時代遅れのキーが配置されているだけならまだしも、最上段の記号の位置が微妙に異なる。Enter キーの形状もおかしい。とにかく、JIS 配列は使わない。 キータッチにはい
このページを最初にブックマークしてみませんか?
『lifeLOG + REPOsitory』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く