HCVF : High Conservation Value Forest.

保護価値の高い森林、というのが、WWFとIKEAの提唱をもとに言われているらしい。

世界中のどの森林も等しく価値が高いと思われるが、諸条件によって、フラットに考えると価値の大小が出てきそうではある。

Sustainable Coffee Challenge というサイトがあり、森林破壊がないようにコーヒーを持続させる、という取り組みをしている?ようだ。(英語が堪能じゃないので読み取れてない部分が多いかもだが、だいたいこんな感じ)

これからの時代、全てにおいてこういった「地球環境を意識した、持続性を考えた取り組み」を意識していく必要があると思う。SDGsってやつか。

参考:
HCVF: High Conservation Value Forests=「保護価値の高い森林」 | EcoNetworks | エコネットワークス https://www.econetworks.jp/translationtips/2012/02/hcvf

メモについてのメモ。

①アイデアはいつ舞い降りてくるか分からない。しかし、しっかり書き留めたい。よって、常に携帯できるメモがほしい。

②一方で、自分の予定やログは、目視も容易で俯瞰でき、ある程度の書き込みスペースがほしい。

散々考えてきたことだが、この2つはどうしても相反するので、結局、それぞれ用にメモを用意した方が良さそう、という結論に至りつつある。

①用には、Plotterのナローサイズ。こちらは常に持ち歩く。バインダなので柔軟にカスタマイズできる。月間カレンダ、好きな言葉(偉人の名言、付き合いのある方々からいただいた言葉)、それとメモページ。

②用には、A6 or A5サイズの手帳。月間と週間があるもの。週間は時間を視覚化しやすいようにバーチカルを。東急ハンズのオリジナル手帳が、コスパが良さそう。

あとは、デジタルも活用。①と②(特に①)で、これだ、と思うものはログに残す。蓄積と検索の容易さが、デジタルならではの特長。

今のところ、このような状況。

MeCabで泣いた→最後は笑った。

MacBookでMeCabを使って形態素解析してみた。完了。

事情があって、Windowsでも同じくMeCabを使って形態素解析してみた。というか、GithubでMacBookで書いたコードをそのままもってきてWindows環境で実行。

MeCabがおもうようにインストールできず3回休みくらいの進捗度合い…。(この苦労話は別に投稿する予定)

なんとかインストールできて、プログラム実行するも、全く思わしくない結果が出力。

試行錯誤して、デバッグして、ようやくわかった。

形態素解析した結果を格納する配列の中身の順番が、MacBookとWindowsで違う…。ようするに、Mac(Unix?)版のMeCabと、Wndows版のMeCabが、異なる内容・順番で、形態素解析した結果を返す模様。

これ本当だったら、悲しい。。。

けど、事実並び順がことなるし、当該部分を修正してプログラム実行したら、正常動作した。

これってなぜ?なんか理由があるはず…。知りたい…。

とりあえず、ちゃんと形態素解析できるようになってよかった。コーディングはやっぱりMacBookで実行する方が自分には合うな…。

WindowsでのPython開発環境でつまづいている日々…

MacBookだとすんなりいった開発環境も、Windowsだと色々と面倒くさい。やっぱりUnixベースが良い。Ubuntuが恋しい…。

と言いつつ、諸事情がありどうしてもWindowsで開発環境を整える必要がある。四の五の言ってもしょうがない。

今、具体的にはMeCabのインストールでつまづいている。そして、なぜかPandasのインストールでも手間取っている。

実行ボタン押下→表示されるエラー文とにらめっこするに、C:\Users\[user-name]\AppData\Roaming\Python\Python39\site-packages\pandas といった具合に、AppData/Roaming配下でどうのこうの行ってくる。

このフォルダはなんだ?ということで調べてみると、どうやら pip でパッケージインストールした再のフォルダの模様。

細かい話だけど、こういうことを知るのも楽しい。なんだか時間かかりそうだけど、もう腹をくくって、これを気に詳細まで勉強する気概で臨もう。焦らない焦らない。

pip documentation v21.3
https://pip.pypa.io/en/stable/

MacBook Pro の Touch Bar が故障したっぽい…

しばらく放置するとTouch Bar は真っ黒になる(スタンバイ状態?)のだが、その際に右端が点滅するようになった…。

Netflixを見ているときだけか、、と思っていたが残念ながらそうではなく、何をしていてもスタンバイ状態になったら点滅しだす…。

デフォルトではTouch Barを無効にすることはできない。外部アプリで対処するか、修理に出す必要がありそう…。

できるだけデフォルトで使うことを心情としているから、修理に出す方向で考える。経験上、外部アプリは結局使えないものが多いくて、デフォルトに戻ってしまうから、できるだけ入れたくない。(例えば、メモはiOS標準のメモが結局一番自分に合っている)

残念ながら、気づいたのが今日(日曜日)の夜…。来週末まで、これで我慢するか。

結構なストレスだから、もっと早めに対処するかも…。

[Twitter Developer] {‘code’: 32, ‘message’: ‘Could not authenticate you.’} との戦い

ハマった…。

Twitter APIでデータ引っ張ってくる部分をモジュール化して、メインから呼び出すようにしていることが影響しているのか、と思って、散々、モジュール呼び出しとか、グローバル変数・ローカル変数とか調べまくった…。

結果、「クエリをURL中に指定する q が重複しているだけ」だった…。

全く別件だけど、Class化してインスタンスを作って呼び出す方法と、メソッドとして呼び出す方法の2つがあって、モジュール単体でもテストできるように 「__name__ == “__main__” : 」を使ってメソッド呼び出ししたのと、メインであインスタンス化して呼び出した部分でアンマッチがあってハマったから、

なんとなく、今回もモジュール呼び出し部分でなにか悪さしているのかな、と思っていた。

(Twitter Develperのサイトから取得するAPIキー各種は問題なかったし、ネットで漁っても「APIキーが一文字違っとか、変な空白やカンマが入っているのが原因だった」という情報が散見されたから、一応調べてみたものの、問題なかったから、てっきり…)

なんてことはない、クエリの q をメインでもつけていて、それをモジュールに渡していて、そしてモジュールでも引数に対してさらに q をつけてGET用のURLを生成していたのが原因だった。

はぁ、スッキリ。分かってよかった。そして、原因究明のために調べまくったのが、結果的に勉強になった。

やっぱり、地道だけど、頭抱えながら、一つ一つのバグを自分で解決していくのが、上達への道なんだな、と思う。

Pythonで with の使い方を学ぶ

with で囲った部分(with のブロック)部分は処理が完結される。

一番分かりやすいのはファイル操作。オープンしたらクローズが必須だけど、結構忘れがち。

with だとオープンするだけで、その処理ブロックが終了したら自動的にクローズしてくれるから便利(クローズ忘れがなくなる)。

with open('test.csv', w) as f:
    writer = csv.writer(f)
    writer = writer.writerow([1,2,3])

# fのクローズは不要!

概要だけでな分かりづらい内容は、具体例があれば分かりやすくなるな、やっぱり。

人に教えていると思いつつ自分にも教えている。

資料作成について後輩に指導。

1ページ1メッセージ、何を伝えたいか、ページ構成と1ページに書く情報・構成、などのポイントにしぼりつつ指導。

指導していると思いっていたが、同時に自分自身にも指導していることに気づく。特に、後輩が意見を述べてショートディスカッションが発生した時は、おかげで気づいていなかった点にも気づくことができたりする。

自分ひとりの力は小さいと思うと同時に、メンバと連携したらシナジーが生まれる、ということも実感。良い経験だった。

何でもデータとしてとらえると分析する楽しさが倍増する

今日は営業の仕事でお客さんと会話。数人のお客さんと対応したが、仲の良い人とそうでない人では、当然だけど反応が異なる。

仲良くなっている場合とそうでない場合を簡単に比較すると、会話する機会の差や、メールや電話などでの連絡チャンスの差も影響していると思った。

もちろん、相手の性格とか他の要因もあるけど、そういった定性的な要因ではなくて、できるだけ定量的な要因を見つけてデータ化して分析すると、きっと楽しい。

データってとても大事。そして楽しい。

今更ながらだけど、定量化することの楽しさが分かって、とても嬉しかった。さて、今日はどういうデータを見つけようか。