今更ながらですが。全然眠れないので。
LINEが出たとき、うっかりダマされて、電話帳データを攫われて以来、ぜってー使うもんかと思ってたんですが、相変わらず流行ってるみたいですねLINE。ウチのオカンとか基本連絡がLINEベースです。
アプリ開発してると、”人様の電話帳データに触るのはちょっと…”とか”データの扱い間違えたらセキュリティクラスタにフルボッコやで”とか思って自主規制してしまいますし、同じ文脈でLINEが叩かれてるのをよく見ます。
でも、正直言って、そういう自主規制こそがウンコだと思いますし、現実問題としてあれだけ受け入れられているのを見ると、全然アリなんだなと思ったりします。うん。セキュリティクラスタの人が叩く程は悪く無い。むしろ、そういう言説で自主規制を求めてイノベーションを阻害している事の方が害悪じゃねーかなと思ったりね。
嫌いは嫌いなのは全然変わらないんだけど、電話帳データを攫うのも自由なんですよね実際。良い悪いはユーザーが決める事ってのもごもっとも。嫌なら使わなきゃいいだけ。俺は使わないけどね。
って思うと、変な自主規制で縛られてる事って意外とあるよねと思ったりします。
来年はそういう既成概念を超えて頑張る所存。
つか、テクノロジーは進歩しても人間って意外とやってる事、進化してねーんだなと最近凄く思う。もうちょっとコモンセンスを身につけたり色々知恵を絞りたいです。
2013年12月21日土曜日
2013年12月12日木曜日
CoreDataでドはまり。
Objective-CのCoreDataは独自仕様のO/Rマッパー的な物で、上手に使えば便利そうなのにイマイチ流行っていない。今回は、ドはまりした事で、その流行らない一端が垣間見えたので、メモ。
CoreDataの正体はアプリ内で管理されるSQliteを上手い事覆うO/Rマッパーな訳だけれども、以下の便利な点がある。
・一貫してObjective-Cで書ける。(SQL文を書かなくていい)
・モデル構造を視覚的に設計する事が出来る。
・実装の際、データのマイグレーションなどを気にする場合は管理がナンボかラク。
大体こんなイメージである。間違ってたらゴメンナサイ。
一方、使ってみて非常に不便だなと思ったのが、
・DB内の値の確認がやりにくい。
・データ構造が簡単だとコード量が増える(SQL直書き比で)
で、今回ハマった点は、
・プロジェクトに後からCoreDataを追加する場合、非常にめんどくさい。
というのも、CoreDataはNSManagedObjectContextというのをAppDelegateで生成して引き回して各クラスからCoreDataにアクセスするんだけれども、独自仕様な上に、初期から使う事が決まっていればコードがある程度自動生成される所が、後から追加しようとするとコレが非常に面倒だった。一応出来たけど。
CoreDataを生成した生のプロジェクトとAppDelegateを比較したりして、地道にやりました。でも、理解の浅い所なので非常に手間取った。
もう何となくお作法は理解したので、今後は大丈夫かとは思うけど、CoreDataを使う場合は設計の初期段階から使うって決めウチした方が楽です。
作り始めてから、データの永続化の仕組みなどが必要になった場合は、とりあえず他の手段を検討してみる事をお勧めします。
CoreDataの正体はアプリ内で管理されるSQliteを上手い事覆うO/Rマッパーな訳だけれども、以下の便利な点がある。
・一貫してObjective-Cで書ける。(SQL文を書かなくていい)
・モデル構造を視覚的に設計する事が出来る。
・実装の際、データのマイグレーションなどを気にする場合は管理がナンボかラク。
大体こんなイメージである。間違ってたらゴメンナサイ。
一方、使ってみて非常に不便だなと思ったのが、
・DB内の値の確認がやりにくい。
・データ構造が簡単だとコード量が増える(SQL直書き比で)
で、今回ハマった点は、
・プロジェクトに後からCoreDataを追加する場合、非常にめんどくさい。
というのも、CoreDataはNSManagedObjectContextというのをAppDelegateで生成して引き回して各クラスからCoreDataにアクセスするんだけれども、独自仕様な上に、初期から使う事が決まっていればコードがある程度自動生成される所が、後から追加しようとするとコレが非常に面倒だった。一応出来たけど。
CoreDataを生成した生のプロジェクトとAppDelegateを比較したりして、地道にやりました。でも、理解の浅い所なので非常に手間取った。
もう何となくお作法は理解したので、今後は大丈夫かとは思うけど、CoreDataを使う場合は設計の初期段階から使うって決めウチした方が楽です。
作り始めてから、データの永続化の仕組みなどが必要になった場合は、とりあえず他の手段を検討してみる事をお勧めします。
2013年11月28日木曜日
スターエンジニアに関する考察
いろんな所のCTOやスターエンジニアと呼ばれる人たちを見て、最近こんな事を思う様になった。
僕は1994年、理系の単科大学に入学した。で、その中で色々、コイツはスゲぇって人を見ているんだけど、一般的に出来るプログラマと言われるレベルの人は、理系の単科大学の電子、情報あたりにはそれこそゴロゴロ居た。
大学生の時からLinuxのコミッタをしていたり、限られたメモリで職人的なプログラムを書く人がいたり、シュミレーションを書かせたら右に出る物は無いとか。
僕自身も、ポケコンの性能を最大限引き出したツールを書くのが得意で、NANDを並べて論理回路を組むのには天賦の才があると思うくらい、出来たしすんなり頭に入って来た。
何が言いたいのかというと、多少の差こそあれ、各人何かしら得意なフィールドがあって、その分野なら第一線っていう事をよく見たという事。
今、スターエンジニアと言われている人たちを見ると、各人それぞれ得意な分野がある中で、得意分野が今関わっている業務内容とマッチしていて、甘んじず他の分野に枝葉を広げた結果であるんだろうなと思った。
技術の世界は積み重ねの結果であり、今注目されていてもそれは誰かの作った成果物の上に成り立っているんだって事は、忘れてはいけないって思うんだよね。
確かに相当大手に行かないとNANDを並べて論理回路を組む才能は発揮出来ないかもしれないけど、そういうのが得意な人の成果が今のコンピューターを縁の下から支えてる訳で、スターエンジニア扱いでは無いけれども同じ様に重要でスゴい仕事をしている事には変わりがないんだと思う。
という訳で、エンジニアは自分の得意な分野を見極めて、それを生かす戦略を考えたらいいんじゃないかなと思いました。
技術の世界は積み重ねの結果であり、今注目されていてもそれは誰かの作った成果物の上に成り立っているんだって事は、忘れてはいけないって思うんだよね。
確かに相当大手に行かないとNANDを並べて論理回路を組む才能は発揮出来ないかもしれないけど、そういうのが得意な人の成果が今のコンピューターを縁の下から支えてる訳で、スターエンジニア扱いでは無いけれども同じ様に重要でスゴい仕事をしている事には変わりがないんだと思う。
という訳で、エンジニアは自分の得意な分野を見極めて、それを生かす戦略を考えたらいいんじゃないかなと思いました。
2013年10月28日月曜日
SM-B-80TE発掘
レトロPCっていうか、その前段階のZ80のワンボードマイコン。押し入れの中から出てきました。
高校時代、親戚から貰った物で、解らないなりにアセンブラでポチポチとプログラムを打ち込んだりして動かして喜んでおりました。
恐らく、アセンブラの学習環境としては基本じゃないかな。今だったら恐らく他のいろんな使い方を試すかなと思うんですが、いかんせん8ビット。
ちょっとしたシーケンサーの方が余程高機能かなとも思います。
外観
電源入れてみます。
動くんだなコレが。
当然Flashメモリなど無いので、イニシャライズのロム読むだけですが、モロにステップ実行しますね。
まぁ、使い途ほぼないんすけどね。
コンピューターの進歩って結構スゴいな。保証書に昭和62年って書いてあるんですが、ざっと大体27年前ですか。
待てよ。apple IIが昭和52年だから、購入日はその10年後すか。意外と新しかった。
Z80は何気にまだ現役だったりするCPUなので、学習用途だと意外といけちゃったりするかもですね。超特定分野ですが。
あとビックリなんですが、マニュアルまでフルにありました。回路図も乗ってるので、ハードの勉強には最適ですね。
高校時代、親戚から貰った物で、解らないなりにアセンブラでポチポチとプログラムを打ち込んだりして動かして喜んでおりました。
恐らく、アセンブラの学習環境としては基本じゃないかな。今だったら恐らく他のいろんな使い方を試すかなと思うんですが、いかんせん8ビット。
ちょっとしたシーケンサーの方が余程高機能かなとも思います。
外観
電源入れてみます。
動くんだなコレが。
当然Flashメモリなど無いので、イニシャライズのロム読むだけですが、モロにステップ実行しますね。
まぁ、使い途ほぼないんすけどね。
コンピューターの進歩って結構スゴいな。保証書に昭和62年って書いてあるんですが、ざっと大体27年前ですか。
待てよ。apple IIが昭和52年だから、購入日はその10年後すか。意外と新しかった。
Z80は何気にまだ現役だったりするCPUなので、学習用途だと意外といけちゃったりするかもですね。超特定分野ですが。
あとビックリなんですが、マニュアルまでフルにありました。回路図も乗ってるので、ハードの勉強には最適ですね。
2013年10月24日木曜日
紙とペンの相性について。
普段、手帳にはMDノートの新書サイズを使用しています。
以前モレスキンを使用していたんですが、モレスキンはサイズ、質感は良いけど、紙質がダメで裏写り、にじみがヒドくて使い物にならず、色々試した挙げ句、紙質とサイズ、開いた時の置き易さでコレになりました。価格は若干高いかもですが、モレスキンに比べると安価で、裏写り、にじみは全くナシ。紙質に関してはほぼ満足な感じで、3ヶ月に一冊のペースで消費しています。
で、普段愛用のペンが、ペリカンの万年筆の安いヤツなんだけど、今日まであんまり意識しないで使っていました。
今日、何の気なしに、普段使いで無い方の万年筆で書いた所、引っかかるわ乾かないわで散々な目に逢いました。インクが紙に吸収される速度が圧倒的に遅いのです。ペリカンもモンブランも同じロイヤルブルー。でもインクの質自体は全く違います。
モンブランの方は、普通の大学ノートなんかに書く場合は非常に書き易いので、やっぱり紙とインクの相性って奥が深いんだなと思った次第。
ボールペンとかだとあまり意識しない所の話なんですが、そう考えるとコンビニで100円で買えるボールペンの優秀さには頭が下がる思いです。
相性気にしなくて良いってのは、技術力の高さの証明でもあると思うので。
でも、そもそも何でボールペン辞めたかというと、保管性の悪さに起因してたりするので、この辺はしょうがない感じはします。
6年前のボールペン+モレスキンは既に解読が難しいレベルで劣化しています。
という事で、最近はペリカン押しです。M400とか欲しいなー。そのうち買います。
やっぱり、ある程度手書きで文字を書く習慣を意識的に残して行きたいなと思った所存です。
以前モレスキンを使用していたんですが、モレスキンはサイズ、質感は良いけど、紙質がダメで裏写り、にじみがヒドくて使い物にならず、色々試した挙げ句、紙質とサイズ、開いた時の置き易さでコレになりました。価格は若干高いかもですが、モレスキンに比べると安価で、裏写り、にじみは全くナシ。紙質に関してはほぼ満足な感じで、3ヶ月に一冊のペースで消費しています。
で、普段愛用のペンが、ペリカンの万年筆の安いヤツなんだけど、今日まであんまり意識しないで使っていました。
今日、何の気なしに、普段使いで無い方の万年筆で書いた所、引っかかるわ乾かないわで散々な目に逢いました。インクが紙に吸収される速度が圧倒的に遅いのです。ペリカンもモンブランも同じロイヤルブルー。でもインクの質自体は全く違います。
モンブランの方は、普通の大学ノートなんかに書く場合は非常に書き易いので、やっぱり紙とインクの相性って奥が深いんだなと思った次第。
ボールペンとかだとあまり意識しない所の話なんですが、そう考えるとコンビニで100円で買えるボールペンの優秀さには頭が下がる思いです。
相性気にしなくて良いってのは、技術力の高さの証明でもあると思うので。
でも、そもそも何でボールペン辞めたかというと、保管性の悪さに起因してたりするので、この辺はしょうがない感じはします。
6年前のボールペン+モレスキンは既に解読が難しいレベルで劣化しています。
という事で、最近はペリカン押しです。M400とか欲しいなー。そのうち買います。
やっぱり、ある程度手書きで文字を書く習慣を意識的に残して行きたいなと思った所存です。
2013年10月22日火曜日
DjangoをMacにインストール
手元にDjangoの開発環境が欲しかったので、インストールしてみた。
必要な物
pip
vertualenv(お好みで。)
んでもって、
vertualenvでお好みの環境にしたあと、(ワイは2.7)
とすれば、mysiteが生成される。
あとは、ゴリゴリ書くだけ。
簡易確認は
これは、あくまで確認用に生成されるwebサーバでセキュリティなど考えられてないので、動作環境では使用しない事とドキュメントにあった。WSGIでサーバが確認用に立つらしい。この辺は、Apacheとかとのつなぎ込みもWSGIでやる様な事をどっかで見た。
あとは、ゴリッと書いて煮るなり焼くなりお好きに。
コイツはローカルで形を整えてHerokuで動かそうと思ってるんだけど、herokuはCUIツールがあって、コイツがrubyで書かれてるんだけど、デフォのrubyが1.8で1.9でないと動かず、rubyのバージョン上げるのにえらい苦労した。
というのも、昔、色々よくわからんなりに弄ってて、いざrbenvが動かなかったり、環境変数がおかしな事になってたりで、結局環境変数を色々再設定して何とか動いた。
反省点としては、Macportで色々入れると、/opt/local/bin/とかに色々展開しやがるので、brewでインストールした物と色々と相性が悪い。なので、Macportは極力使わない感じが今後望ましいんじゃないかなと思ったりした。以上。
必要な物
pip
vertualenv(お好みで。)
$ easy_install pip
んでもって、
$ sudo pip install django
vertualenvでお好みの環境にしたあと、(ワイは2.7)
$ django-admin.py startproject mysite
とすれば、mysiteが生成される。
あとは、ゴリゴリ書くだけ。
簡易確認は
$ python manage.py runserver Validating models... 0 errors found October 21, 2013 - 12:23:10 Django version 1.5.4, using settings 'mysite.settings' Development server is running at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
これは、あくまで確認用に生成されるwebサーバでセキュリティなど考えられてないので、動作環境では使用しない事とドキュメントにあった。WSGIでサーバが確認用に立つらしい。この辺は、Apacheとかとのつなぎ込みもWSGIでやる様な事をどっかで見た。
あとは、ゴリッと書いて煮るなり焼くなりお好きに。
コイツはローカルで形を整えてHerokuで動かそうと思ってるんだけど、herokuはCUIツールがあって、コイツがrubyで書かれてるんだけど、デフォのrubyが1.8で1.9でないと動かず、rubyのバージョン上げるのにえらい苦労した。
というのも、昔、色々よくわからんなりに弄ってて、いざrbenvが動かなかったり、環境変数がおかしな事になってたりで、結局環境変数を色々再設定して何とか動いた。
反省点としては、Macportで色々入れると、/opt/local/bin/とかに色々展開しやがるので、brewでインストールした物と色々と相性が悪い。なので、Macportは極力使わない感じが今後望ましいんじゃないかなと思ったりした。以上。
2013年10月16日水曜日
10月の近況
日付をよく見たら、9月をすっ飛ばしてもう10月半ば。
外は台風でスゴい事になっていますが、年々異常気象が更新されてる気がします。今年なんか最早、熱帯気候でしたもんね。という訳で皆様お加減如何でしょうか。
ここの所、iOS7対応案件と、EC絡みの案件を主にこなしており、それなりに忙しくしていたんですが、兎に角儲からない。貧乏ヒマ無しを地で行っております。ちょっと仕事の仕方考えないとダメだなーと思う次第です。
という訳で最近のトピックを幾つか。
外は台風でスゴい事になっていますが、年々異常気象が更新されてる気がします。今年なんか最早、熱帯気候でしたもんね。という訳で皆様お加減如何でしょうか。
ここの所、iOS7対応案件と、EC絡みの案件を主にこなしており、それなりに忙しくしていたんですが、兎に角儲からない。貧乏ヒマ無しを地で行っております。ちょっと仕事の仕方考えないとダメだなーと思う次第です。
という訳で最近のトピックを幾つか。
CakePHPを覚えた。
ぼちぼちやってたんですが、まとまった時間が取れたので、ガッツリやったらある程度使えるレベルまで来ました。やっぱフレームワークは上手に使うと便利すなぁ。
とは言え、PHPのそこかしこにある落とし穴を把握してないと痛い目に合うのは確かなんで、平である程度書ける様になったら手を出す事をオススメします。
この件に関しては後日まとまった形で書こうかなと思います。
Pythonでテスト書く様になった。
今更感がありますが、やっぱテスト書ける様になるとテスト書かないとコワイですね。
Pythonの場合標準ライブラリにテストユニットが入ってるので、環境構築に取られる工数が無く、割と簡単に書けるので、テスト駆動開発の入門用には最適かなと思いました。
Jenkinsとかも使える様になる為に、テストフレームワークとか導入を検討しています。
このへんも追々まとまった感じにしたいです。
このへんも追々まとまった感じにしたいです。
ゲームキューブでピクミン。
2013年ですが、倉庫の奥からゲームキューブ引っ張りだしてピクミン(1)をやってます。知らない星に不時着して一人とか、30日で生命維持が切れて死ぬとか、悲壮な世界観が好きだったんですが、結局終わってなかったのでリベンジです。ゲームキューブはほぼ6-7年振りの稼働だったんですが、普通に動きましたね。すげぇ。時計も大体あってたのがビックリです。
業務フロー見直し
先日、市役所から住民税の事で郵便が来てて、結局問題無かったんでいいんだけどビックリしたので、お金絡みの管理方法を一新しました。方法は今までGoogleDocにフォーム作って入力してたのを、領収書を100均のノートにひたすら日付別に貼るっていう原始的な方法になりました。メリットはパソコンが無くても引ける事と、主にキーが日付だけなんで、日記形式の領収書帳での管理が入力ミスとか気にしなくて良いかなーと思った訳です。A4の書類は張りにくいけど、折って貼れば大丈夫だし、まあ、大体いい案配です。
ドキュメントは分散させないで一括管理。検索は時系列という基本に立ち返った戦略です。
あと、設計関連のノートもついでに見直し。こちらも極力分散させない方針を取ってます。ノートカバーが超便利です。
デメリットは折角買ったiPad miniが若干無用の長物となりつつある所。使うんだけど、実際の管理は紙ベースになりつつあるし、入力やら諸々の作業はPCなので。まぁ、iOSのデバックとかで必要な物なので、いいんです。コレで。
そんな感じで割と楽しく毎日過ごしております。
今後の課題としては、物を減らす。コンパクトにする事を目標にしたいと思ってます。
そんな感じ。
登録:
投稿 (Atom)



