エンジニアが断捨離するとこうなる

最近、持ち物を断捨離しました。カッコは買値です。

-iphone(10万)
-apple watch(2万)
-金庫(忘れた、2万くらい)
-デスク(1万)
-スーツ全部(20万くらい?)
-Yシャツ全部(不明)
-ネクタイ全部(1万くらい)
-革靴(3万)
-ベルト(忘れた)
-プログラミング関係の本(不明)
-服、ジャケット、ビンテージジーンズ(不明)
-抽象画の絵画(忘れた)
-万年筆(5千円)
-名刺入れ(千円?)
-香水(数千円)

iphoneとApple watchは売った。普通に捨てようかなーと思ってたんだが、じゃんぱらがサクッと30分くらいで買い取ってくれました。
apple watch シリーズ1を2万で買って1年以上使って、バンドや本体など使用感がありましたが1万5千円で買い取り。お得感あるね。iphone 6Sは画面が割れてたので1万3千円くらい。両方ともケース、仕様書などはそろってました。箱を取っておくといいですね。
■じゃんぱら: http://www.janpara.co.jp/
HPページに参考価格が出ますが、商品の状態や付属品などによって値段が変わってくるので、実際にお店に持っていった方がいいと思います。見積りを出してくれるので、気に入らなければ、売らない、と伝えることもできます。

ネクタイはdunhill、Armani、Lanvinなどブランドものばっかりでしたが、費用対効果的に数千円の為に売るのめんどーなので捨てました。万年筆、絵も小銭にはなったのかもしれんけど、特にいいかーって感じで破棄。Pythonの機械学習などの本はamazonに中古で出品してもだいたい定価とほぼ同じ値段で売れますけど、これも手間を考えると、まーいいかなって感じ。
例えばこれ。中古3350円と新品3450円と、100円しか変わらない!これ、ほかの業界からみたら凄いよね。

金庫は一人では持てないくらい重すぎたので、業者呼んで1万5千円払って、机と一緒に処分してもらいました。
昔はお金払って不用品処分するのってかなり抵抗あった。3~4万くらい払って買ったのに、金払って処分って阿保ちやうか、もったいないし、普通に捨てればよくない、と思ってた。
でも最近は考え方が変わって、捨てた方がメリットが大きいと感じたら、金払ってでも処分した方が、長期的には利益になる、と思って、思い切って捨てました。
相見積とったけど、地域の即日対応の業者を選択。全国対応の業者は、050-XXXX-XXXXの電話番号で、かけると数十分後に折り返しかかってくる。値段は1万強で大して変わらない。

絵の価値ってのはよくわらないな~ 個展とか行っても、なんでこの絵がこの値段なのかさっぱりわからない。ぱっと見、いいなと思って買うんだけど、感性が違うから、ぱっと見た印象と値段が合わない。だから売り方も難しい。その曖昧さがいいのかもしれないけど、私には理解できん。昔、ドバイから絵を数十ドルで買って、1万円強で売ったりしてたけど、なんか、手間の割にはって感じで別に面白くないんだよね。

リストの中ではスーツが一番高い。1着10万のスーツがあるからね。エンジニアってスーツいらないけど、スーツ着る機会はありそう、と躊躇して、断捨離するのもこのリストの中では一番最後。しかも、スーツって、基本2万以上で売ってるくせに、aokiや青山など、スーツ小売店は下取りだけで、買取やってないんだね。下取りやって、割引券を渡しているだけ。これっておかしくない?価値の減り方が尋常ではない。aokiとかを見てると、2万のスーツも5万のスーツも10万のスーツも同じ扱いなんだ。しかも、みんなスーツ着てるくせに、スーツ買取業者って極端に少ない。悩んだけど、結局スーツ買取業者に買取りの見積もり取ってもらうことに。
Webフォームで、写真とスーツの詳細を入力すると、数営業日でメールにレスが届く。
なんか、ブランドの買取相場の理由が色々書かれていたが、見積結果は、じゃーん、2着が200~400円、2着が買取り不可。 ※ちなみに10万のスーツは、需要はあるけど値段がつかないって言われた。
は?? え、これ、なにかの冗談でしょ? 400円って。。どういう商売なんだろうこれ。
流石にこれはあかんと思って、オークションに出したら、サクサクっと1万7千円で売れた。そうだよね、俺の感覚はそんなにおかしくない、と少し安心。
それにしても、スーツ業界って闇が深いな。そういえば、ユニクロもカジュアルなジャケットは売ってますが、スーツには深く手を出してないですよね。柳井さんって、非常にロジカルな経営者なので、なんかあるんだろうなーこれ。そーいえば、1着2万円で、2着目千円の利益のカラクリが未だによーわからん。

ついでに書類も色々整理。Web系のドキュメントは大体ネットに落ちてるので、思い切って捨てることに。
世の中、紙の取引は減ってるのに、行政関係は未だに紙ベースが主流ですね。公共サービスはペーパレス化がかなり遅れている気がします。
ということで、大分整理されました。

断捨離まとめ
– デジタル関係は欲しい人に売れば、想像してた値段より売れる、他のものに較べて減損しにくい
– 同じジャンルの商品を大量に扱ってる人に価値を見てもらえば市場価格で売れる
– スーツや洋服は袖通したら価値が減る、今後高値で買う必要は全くない
– サイズが大きな家具類は捨てにくい、買い取ってもらうにも、持ち運びのハードルが高く、売り方もわからない

知識があるものは、価値がわかるけど、知識がないと価値がわからんってことか。

エンジニアの聖地 渋谷Freeman cafe

エンジニアの聖地、Freeman cafeに行ってきた。隣との席が近いね。
エージェントの営業っぽい人が、フリーランスのメリットを力説してエンジニアを口説いて笑えた。
見た感じ、IT系の客が3~4割ってところか。コーディングするのはルノアールとかより心地よいかも。

ただ、客が多いから、本当に集中するなら、潰れそうなガラガラのカフェの方が集中できる。

Intel Xeon E312xx

Intel Xeon E312xx
インテルが作っている
https://ark.intel.com/ja/products/52269/Intel-Xeon-Processor-E3-1220-8M-Cache-3-10-GHz-

メモリサイズ:32 GB

パフォーマンス
コアの数
4
スレッド数
4
プロセッサー・ベース動作周波数
3.10 GHz
ターボ・ブースト利用時の最大周波数
3.40 GHz
キャッシュ
8 MB SmartCache
バススピード
5 GT/s DMI
TDP
80 W

CPUの性能を比較するには、コア数、スレッド数、プロセッサー・ベース動作周波数、ターボ・ブースと利用時の最大周波数、キャッシュ、バススピード、TDPなどを見ればよいのか。プログラミングの技術が重要かと思ってたけど、CPU、メモリなどコンピューターサイエンスの基礎知識はプロジェクトの意思決定していく上で、やはり重要なんだな。秋葉原いきたくなりますね。

Devopsとは何か?

DevOps(デブオプス)は、ソフトウェア開発手法の一つ。開発 (Development) と運用 (Operations) を組み合わせたかばん語であり、開発担当者と運用担当者が連携して協力する(さらに両担当者の境目もあいまいにする)開発手法

来型のソフトウェア開発と、インフラストラクチャ管理プロセスを使用するよりも速いペースで製品の進歩と向上を達成し、企業がアプリケーションやサービスを高速で配信できるように、文化的な基本方針、プラクティス、ツールが組み合わされている。

アジャイルみたいなものか。

Scrum Allianceとは

アジャイル開発手法には複数の手法あるいはプラクティスと呼ばれるものがありますが、その中で「スクラム」はもっともよく使われている手法として知られており、マイクロソフトやIBMをはじめ多くの企業がソフトウェア開発の現場で採用している。

そのスクラムを実践するための「スクラムガイド(Scrum Guide in Japanese)」が、スクラムの普及促進のための団体「Scrum Alliance」から公開

スクラム入門
正しくは、様々なプロセスや技術を取り込むことのできるフレームワークである。スクラムの役割は、複雑なプロダクト開発が可能なフレームワークを提供することで、開発プラクティスの効果を相対的に浮き彫りにし、改善することである。

スクラムの内容
スクラムフレームワークは、スクラムチームとその役割、タイムボックス、成果物、およびルールで構成される。
スクラムチームは、柔軟性と生産性の最適化を目指すものである。チームは、自己組織化しており、クロスファンクショナルであり、反復的に作業をする。
(略)
スクラムがタイムボックスを採用しているのは、規則的なリズムをつけるためである。タイムボックスには、リリース計画ミーティング、スプリント計画ミーティング、スプリント、デイリースクラム、スプリントレビュー、スプリントレトロスペクティブが含まれる。
(略)
ルールは、スクラムのタイムボックス、役割、および成果物を結びつけるものである。

—–
スクラム(英: Scrum)は、ソフトウェア開発における反復的で漸進的なアジャイルソフトウェア開発手法の1つである。この方法論は「柔軟かつ全人的なプロダクト開発ストラテジーであり、共通のゴールに到達するため、開発チームが一体となって働くこと」とされる。この方法論は、製品開発における伝統的な、シーケンシャルなアプローチとは大きく異なる。この方法論は、チームが自発的に組織だって行動することを可能にする。この自己組織化を実現するのは、すべてのチームメンバーが物理的に同じ場所にいること、あるいは密なオンライン共同作業を通じ、全員が日々直接会ってお互いにコミュニケーションをとり、プロジェクトにおける規律を守ることである。

スクラムのカギとなる基本原則は、プロジェクト開発の途中で、顧客は、要求や必要事項を変えられるという認識である。予想できない変更について、計画に基づく方法で対処することは、容易ではない。したがって、スクラムは経験に基づくアプローチを採用する。問題を十分に理解することも、定義することもできないので、現れた要求へ素早く対応するためのチームの能力を最大化することに集中する、というアプローチである。
—–

開発途中での仕様変更を認めるということでしょうか。こういう資格があること自体知らんかった。

apacheとnginxの比較

まず、nginx
[vagrant@localhost local]$ nginx -v
nginx version: nginx/1.14.0

あれ、入ってますね。
起動してみます。
[vagrant@localhost local]$ sudo service nginx start
nginx を起動中: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
[失敗]
あ、ポート80はapacheが使ってるからか。

比較
Apacheは、プロセス駆動アーキテクチャでマルチプロセス。これは、各リクエストをプロセスに割り当てて処理を行う。リクエストが大量に来た際、プロセスが同時に起動するのでオーバーヘッドが非常に大きくなるというデメリットがある。

nginxは、イベント駆動アーキテクチャ、シングルスレッドモデル。 シングルスレッドでループ処理をまわし、キューに溜まったイベントを処理していく処理方式(イベントループ方式)(node.jsなどでも採用)。プロセス数はCPUコア数と基本的には同じに設定。

=>リクエストが多い場合は、単純にマルチプロセルの方が速そうだが。
>nginxの方が、処理が軽く、大量のリクエストを処理するのに向いている。
なに?なぜだ?

>nginxは、CPUリソースがたくさん必要な処理には向いていない。処理時間が長くなる処理を実行した際、そこでプロセスがブロックされてしまい処理能力が落ちてしまう。
これはシングルだから、納得できますね。

>NGINXは大量処理、スピード重視を徹底的に追求
同時アクセスはnginxの方が良いと書かれている。
う~ん、イマイチ納得いかない。

コマンドを変えてみるが、
[vagrant@localhost local]$ sudo nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

あかん

matlabとは

>>MATLAB(マトラボ)は、アメリカ合衆国のMathWorks社が開発している数値解析ソフトウェアであり、その中で使うプログラミング言語の名称

なるほど、機械学習に強いエンジニアだと、matlab使ってる人多いなー、という印象。
とりあえず、python行きましょうかね。

[vagrant@localhost ~]$ python -V
Python 2.7.14

[vagrant@localhost ~]$ python
Python 2.7.14 (default, Mar 12 2018, 22:03:33)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 3 + 2
5
>>> exit()

bluetooth mouseを使ってみる

Blue tooth 案外使いやすいかも。

M336はカチカチ音がうるさいので、気になりますが。

そういえば、次のiphoneは$700らしいですね。まー xよりiphone 8 64gbの方が売れてますからね~

ファイルのルーティング

例えば、電話のXX-YYYY-ZZZZのうち、YYYY(市内局番)によって、読み込むディレクトリを変えたいとする。
その場合、ファイルをインクルードする際に、フォルダを指定すればよい。

以下のように、6832と6833のフォルダを作る。

$_SERVER[‘PATH_INFO’]でパスを読み込んで、市内局番のフォルダから、加入者番号のファイルを読み込めばよい。

$path = explode('/', $_SERVER['PATH_INFO']);

require "function.php";
$number = format_phone_number($path[1]);

$num1 =  strstr($number, '-', true);
$num = preg_replace("/".$num1."-/","", $number, 1);
$num2 =  strstr($num, '-', true);
$num3 = str_replace("".$num2."-","", $num);

include("".$num2."/".$num3.".php");

0368320900

0368330900

例えば、市内局番が2264件、それぞれ加入者番号が9999件あったとすれば、2264個のフォルダ(ディレクトリ)をつくり、そこから加入者番号のファイルを読み込めばいいので、フォルダを分散させて、フレームワークのルーティングのようにインクルードすれば、理論上、2000万ファイルを作ることは可能ということになる。