フクの非日常

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

書き初め

友人から「毎年正月には(PCの)ツールを作ることにしている」という話を聞いて以来、自分でもやってみようと思っていた。つまりソースコードの書き初めである。新年にあたり、こうして新しい気持ちでキーボードに向かうのは良いものだと改めて感じたりする。

さて、と本格的にツール作りに入る前に、以前から不便でしかたが無かったことを解決しようと考えた。それはMacのキーボード操作である。これまでWindowsしか使ってこなかったのだがMacを使うようになって思うように操作ができず困っている。最も気になっていたのは、アプリケーションの切り替え。例えば、ブラウザを複数のウインドウで立ち上げているとき、ウインドウ間の切り替えができないことに不便を感じていた。もちろん、マウスを使えば切り替えはできるのだが、ショートカットでパチっと切り替わって欲しいのである。Windowsの操作だと「CTRL+TAB」。これをMacで動かすとアプリケーションの切り替えになる。つまり、Finder > Safari > Xcode...という具合に切り替わるのだ。そうではなく、Safari内で画面の切り替えがしたい。

調べてみればすぐに答えは見つかるのだが、「Command + F1」が正解のようだ。ただし、Macの機種によって「Command + fn + F1」。我がMac Book Airの場合は後者の要fnのパターン。必然的に、右手でCommand+fn、左手でf1または、shift+f1を担当することになりそう。ついでに覚えたのが、「Command + N」で新規ウインドウ作成。つまり、Safariで調べものをしていて別ウインドウで検索したい場合、「Command + N」で新しい画面を出して検索、その後「Command + fn + F1」で戻ってくるということがようやくマウス操作無しでできるようになった。確かにマウスは便利だけれどやはりキーボードショートカットは習得必須。人がコンピュータに向かっていられる時間(集中力)には限りがある。ショートカットを使って少しでも作業の流れを妨げない工夫をしたいところ。

ということで、これまでの悩みであったアプリケーションの切り替えはできるようになった。ところでツールの書き初めは?どうやらブログの書き初めのほうが先にできてしまいそうだ。
スポンサーサイト

-2 x -2 はなぜ4?

2 x 2は4。
-2 x -2は4。
どうして?

リンゴが2個ある。2個が2グループあれば全部で4つ。
リンゴが-2個?それが-2? となるとちょっと理解が難しい。。。

ちなみに2 x 2 =4を英語で読むと、
Two times two equals four.
かけ算を「times」というのと「How many times~」という言い方をするのは
なんだか同じことを言っている感じがする。
つまり、リンゴ2個が2回あったら、と言っているのではないか。

2 x 2=4 → 「リンゴ2個をもらった」が2回「あった」ので4個増えた
-2 x 2=-4 → 「リンゴ2個をあげた」が2回「あった」ので4個減った
2 x -2=-4 → 「リンゴ2個をもらった」ことを2回「なかったことにする」ので4個減った
-2 x -2=4 → 「リンゴ2個をあげた」ことを2回「なかったことにする」ので4個増えた

「リンゴをもらわなかった」というのは、0回。
マイナスは一度やったことを取り消す感じ。
「あげた」ことを「取り消す」と、手元に残るからプラスになるのかな。。。
ちなみに、数学的にはマイナス掛けるマイナスはプラスになる証明ができるとのこと。

我が家に光が来た日

インターネットは長いことADSLを使っていたがこの度光に乗り換えることにした。普段Webやメールを使う分にはそんなに大量にデータを使うことはなかったのだが、ドでかい開発ツールをダウンロードしたり、インターネット配信の動画を見たりすると帯域不足を大いに感じるようになったためである。

昨年から光に変更するべく、いろいろ手続きをしていた。まず最初のハードルはマンションに光回線が来ているかどうか。回線はあったのだが、加入者がいっぱいで退会待ち?という状況であったが、今年になり回線の拡張工事がはいることにより解決することになった。いろいろあっておよそ3ヶ月ほどかかっただろうか、ようやく今日回線の工事が完了した。

光を契約する上で面倒だったのがサービスはNTTとプロバイダーの共同提供というよくわからない仕組みであること。なにやら料金の請求も両方から来るそうだが。。。会社が違うのはわかるけど、サービスとしてはそこを一本化して提供してほしい。サービスは利用者の身になって作ってほしいものである。

それはさておき。PCの設定も終わり、今は新しい光の回線を使ってこのブログをアップしようとしている。やはり、回線速度のアップでいろんなレスポンスが向上している。Webブラウザの切り替えからYouTubeの視聴もストレスフリーになってきた。SpeedTestサイトで計測したら実効2.3Mbpd。かなりスピードアップした。

後はこれから無線環境の設定をしなくてはならない。有線では速いが無線だとどうなるか。iPhoneアプリのダウンロードなどは無線を使っているので、こっちも速くなるとよいのだが。無線がボトルネックになるようだったら無線ルータの見直しをしなくてはならない。よりよいネットワーク環境を享受するためにはなにかと大変なのであるよ。

言語の習得について

プログラミング言語Objective-Cを学び始めてしばらく経つが、つい最近『わかってきたかも!?』という実感が湧いてきた。ここまで来るには結構長い道のりがあった、、、その間どんなことがあったのか記憶に新しいうちに書いてみたいと思う。

最初にObjective-C習得のためにやったことは、書籍に当たること。インターネット上にも入門者向けの記事が上がっているが、最初はやはり本。本の良い点はまず第一に印刷されていること。そして自分のレベルに合わせて選べることである。開発環境からなにから全く分からなかったため、次々と本に当たってみたがその数はそろそろ10冊が近そうだ。最初はわからなかった内容も次第にわかるようになると少しづつと楽しくなってくる。

最初は本の通りにインストールして、コードを書いて、動かしてみるといった「写経」をする。最初はそれすらうまく動かず、入力ミスがないかコードとにらめっこするのである。本が端折って書いていると、行間が埋められずにエラーが取れず、挫折する。それでも何本かプログラムを動かすうち次第にエラーの意味がわかり、成功率が上がってくる。分かる範囲が広がってくると、インターネットの記事を読んでも理解できるようになる。特集記事、ブログなど面白そうなページがあれば読み、動かしてみる。入手できる情報ソースが広がるとまた本とは違った使い方ができる。やはりここは自分のレベルに応じた使い方をしていったと思う。

だいたい動くようになってきたので、次に自分で考えた動きを作ってみようとする。いままで動かしたコードを切り貼りして、こう組み合わせるとできるはずだ、と思って動かすのだが全く動かない。ここで大きな壁に当たった。今まではサンプルコードがあって動くことが保証されていたのだが、少しコードを変えるとコンパイルすら通らなくなってしまう。しかも、自分で処理を変えているのでどこが悪いのかさっぱり分からない。ここで再び書籍に立ち返り、コードの解説を一行一行読み直してみる。ここで最初の頃は分からなかった解説の意味がようやく理解できるようになってきた。使いたい機能によって継承しなくてはならないクラスが違っているなど、チュートリアルに沿って動かしているだけでは気がつかなかったところを少しづつ埋めていく。自分で書いたソースの方も、これまた一行一行動作を確認して、ようやく動くようになってきた。こういったエラーのときのトラブルシューティングはインターネット上に情報が多いので重宝する。自分も遭遇したエラーと解決した方法を残していきたいかな。

今回iPhoneアプリを作るようになるまでは、Objective-Cの言語とXcodeの環境をダブルで知らなかったので相当苦労した。どちらかといえば、InterfaceBuilderなどの環境周りの方で苦戦した。Objective-Cも使っているクラス、クラスごとの役割が掴めるようになると後はオブジェクト指向のCと考えればいろいろなことが応用して使える。「わかった!?」と思えるようになったのは、やはり自分の思った通りの動作をさせようと思い、自分でコードを書き始めた時点。見たものを動かしているうちはまだ、練習。自分で書き始めたら本番。言語の習得にはこういった特徴があるのだと実感した。

そしてこのことは、コンピュータ言語だけではなく、「ことば」の言語にもひょっとしたら当てはまるのではないか?「ことば」のほうも自分がこうしたい、とい意思を持って、「ことば」を話すようになることが習得へのステップなのかもしれない。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。