KAEDE Hack blog

カエデのブログです。開発進捗や勉強会の記録。インターンに落ちた話などを書いています!w

Solved CakePHP intl ERR

installation

  • In cakePHP quick start, I stocked.
  • this is how I solved the problem and made a Cake Project.

php composer.phar create-project --prefer-dist cakephp/app cms でスケルトンを作成しようとした macOS: 10.14.3 PHP 7.1.23 (cli) in /usr/bin/php/

Err

Your requirements could not be resolved to an installable set of packages.

Problem 1 - cakephp/cakephp 3.7.6 requires ext-intl * -> the requested PHP extension intl is missing from your system.

と出てしまい - Installation request for cakephp/cakephp 3.7. * cakePHPのinstallができない?intlが必要?になってしまった

yum

No yum in MacOS.

homebrew reinstall

次に (https://qiita.com/machio77777/items/ffed4c214ad6ea493cec)

の記事を見て とりあえずhomebrewからのphp intlのinstallをしてみた。

しかし

Error: No available formula with the name "php71-intl" ==> Searching for a previously deleted formula (in the last month)... Warning: homebrew/core is shallow clone. To get complete history run: git -C "$(brew --repo homebrew/core)" fetch --unshallow

Error: No previously deleted formula found. ==> Searching for similarly named formulae... Error: No similarly named formulae found. ==> Searching taps... ==> Searching taps on GitHub... Error: No formulae found in taps.

となってしまった。

この記事によるとHomebrewをre installするらしい。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)" /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

なおこれをやるとVimで" * y yのコマンドが動かなくなる。

=> vim --versionをするとVim8.0になっている。
また:terminalも
"E319: Sorry, the command is not available in this version"
と出てしまう。 blog の記事でやった通りにupdateをした。今回はPATHを書かなくても
which vim

/usr/local/bin/vim
に通って、
vim --version
VIM - Vi IMproved 8.1 (2018 May 18, compiled Apr 11 2019 17:46:54) macOS version でVim8.1に戻せた。

PATH

brew install php71を使って /usr/local/optにvim@8.1と同じようにphp@7.1が入っている状態にします。

これでしてみたがまだ which phpをすると usr/bin/になってしまう。 usr/local..にならない。

solved

Teratailで回答を頂いて解決した。 teratail

export PATH=$PATH:/usr/local/opt/php@7.1/bin/php
になっていたのを
export PATH=/usr/local/opt/php@7.1/bin/php:$PATH
で逆にして

export PATH=/usr/local/opt/php@7.1/bin:$PATH
で最後のphpという実行ファイルの指定を消してintlが動いた。 kabaoさんありがとうございます。

確かにパスを通すのにfileを指定するのは変だ。

new PB

need SQL PATH

  • Incremented /App/XAMPP/etc/my.conf
    • port 3308
  • but don't work.
  • add export PATH=/Applications/XAMPP/bin:$PATH$
  • will not work.

  • Running XAMPP again solved this Problem.

No php intl

In my env,
/Applications/XAMPP/xamppfiles/etc,
php.ini exists.
This article said to add extension=intl.so to php.ini.
(http://tusukuru.hatenablog.com/entry/2016/05/31/024601)

I changed this, deleted comment mark and changed.
intl.dll to intl.so
but it just changes this err msg

kaede$ php -i | grep intl
PHP Warning:  PHP Startup: Unable to load dynamic library '/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/php_intl.so' - dlopen(/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/php_intl.so, 9): image not found in Unknown on line 0
Warning: PHP Startup: Unable to load dynamic library '/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/php_intl.so' - dlopen(/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/php_intl.so, 9): image not found in Unknown on line 0 

This is php err.

  • Of cousrse, deleting this line in php.ini causes:
bin/cake server
PHP Fatal error:  You must enable the intl extension to use CakePHP.
 in /Users/kaede/code/cake/cms/config/requirements.php on line 31

Finding intl

sudo find / -name *intl.so 2> /dev/null

returns (Mac)

/opt/local/lib/php71/extensions/no-debug-non-zts-20160303/intl.so

returns(WSL Ubuntu) (did not need anything)

/opt/lampp/lib/preloadable_libintl.so
````

### Move to the proper place

sudo cp /opt/local/lib/php71/extensions/no-debug-non-zts-20160303/intl.so /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/

I renamed intl file name.   
´mv intl.so php_intl.so´  
* because this is in warning, so I changed intl file name.  
Then I run....  
`php composer.phar create-project --prefer-dist cakephp/app cms`    


It worked!!!!!

### What caused this, まとめ,なぜ起きたか.
XAMPP php71 will not provide intl.so,  
but PHP requires php_intl.so.  
So I needed to bring intl from brew-made php,  
and change the name as PHP wanted.  

Special thank: stmt.  


<EOF>

Tmux Cheat Sheet

tmux cheatsheet

what is tmux?

  • A terminal open in terminal.
  • I use this in MacOS, Ubuntu in WSL
  • It can make virtual windows, and name them.
  • Also the char color updated much lighter.

starts

tmux
* This starts tmux terminal. tmux a * This starts tmux with last session. tmux new-session -s <name>
* Starts with new name? this does not work.

end

ctrl-b + d
* Get back your normal terminal.

Window Operate

ctrl-b + c
* make new window. ctrl-b + n * move to the next window. ctrl-b + , * rename window * default: bash exit`
* can close window. * closing last window ends the session.

session (there is problem)

  • using only upper command, the session's number ex. [11]
    tmux ls
  • can print all sessions.
    • you can see there are many sessions left.
  • ending every tab by exit and starting tmux by tmux a can reduce increased sessions one by one. tmux kill-server
  • kills every session had spread.
  • Now this is the only way of solving increasing session probelm.

pain

  • deviding window. I am not ready for this yet.

Refered

Thanks to: * Qiita, Mr. @suisuina I always use this command in tmux * TASK NOTES Basic tmux commands

GIT CHEAT SHEAT

Git Cheat Sheet

  • git add のように全てgit をつけて実行しますが省略してます.

BASIC

とりあえず全部足す, Add All add .
一個だけ管理下に置く, Add just the file
add hoge.md
管理下においた操作を取り消す redo adding
reset
recode the commit, and push. It may be your routing work. 内部に記録して,githubにpushするいつもの処理
commit
push
githubの方が新しい場合,その内容をパソコンの内部に 引っ張ってくる
pull

URL操作

Confirm current URL
今のpush先の URLを確かめる:
remote -v
Initialize (make .git file)
init
Adding. URLの追加
remote add origin URL
Change. URLの変更
remote set-url origin NEWURL

CONFIG設定

The .git folder exits in the same directory.
.git という設定ファイルがあるが,ls -aとかでみれる.git folder にあるよ. Open vi, like this vi .git/config
vi で開いてみよう
config user.name
とかで設定しているはず 入ってなかったらこんな感じで書き込めば動く筈
EX.

    [remote "origin"]
        url = https://kaede0902@github.com/kaede0902/C_lang.git  
        fetch = +refs/heads/*:refs/remotes/origin/*  
    [branch "master"]  
        remote = origin  
        merge = refs/heads/master  
    [user]  
        name = kaede0902  
        email = kaede0902js@gmail.com  

samples. URL: https://github.com/username/rep.git
is BAD. NEED //usrName@github.... なぜか私の環境ではこうしないとERRがでた....

適宜追加する.

第3回プランクトンサミットに参加しました

第3回プランクトンサミットに参加しました

どこ?何時?

  • at cyboz, Nihonbasi, by Uchan, Vane11ope
  • 13:00 ~ 21:00

交流で得られた学び

(何か書いてはいけない事があったらリプかDMいただければすぐ消します) * Summer Intern, Cyboz LabUseを受けようと思う.

Rain

Bigger Company

スタートアップと比較して,大きな企業の研修体制が如何に充実しているか 教えてもらった.パソコンもセットアップしてくれるし 何よりエンジニアが二人ずっとついてくれるらしい.

Penta

Arch

Archがどういうものか聞いた. * 最小構成でできている.言語でいうとC. Ubuntuでは最初からできているものを 自分で組み直すかライブラリを探す必要がある. * UbuntuはVaneさんも使ってるし 普通に極めて行って良さそうだ.信頼ができる.

Tutoya

turminax

Turmaxがどんなものか聞いた. Androidでsandboxを作り、そこでPythonなどをvimで書き、gitでgithubにpushする。 それでパソコンが使えるときはパソコンで編集する。

Vane

Alacritty, tmux

AlacrityというGPUを活用した高速表示Terminalを入れてもらった. Prefereceが存在しないのでHOME直下の.config/Alacritty/Alacritty.yml にfontsizeやbackground colorが存在することを教えてもらった.

TmuxというTerminalに入れるtoolを入れてもらった. Tab機能の存在しないAlacrittyのために下部に名前をつけたbashのタブを 何個でも作れる拡張. あとで使い方の記事をあげよう.

S-You

command line

Alacrittyのタブが存在しない仕様を受けて,Alacritty1.App, Alacritty2.app, ...といったコピーアプリを作る方法を学んで みっつ一緒に作ってもらった. cmd line toolのopendiffでdirectoryごと差分を抽出する方法と tar cmdで権限を持たせたまま圧縮して送る方法を学んだ. 全てUnixであるからいかにUnixが素晴らしいかわかってきた.

今日かえでがやった事

そもそもXcode, Epic, UE4, VS2019を入れてUE4の開発をやるつもりだったんだが VaneさんにそんなものよりもVimでやりましょうと勧められてVimに夢中だった. 詰まったところで即誰かに聞けたので作業速度が一人の時とは段違いだった. みなさん本当にありがとうございます.

得た学び

  • 丸一日お茶を点てられていたおもちさんの姿勢が最後までピンとしていて格好良かった 姿勢で人間はあそこまで美しくなれるものなのかと強く感動した

  • 今回はあまり雑談に夢中になりすぎずに,知己達に自分の言葉で理解できる 用に聞きながら,作業, 仕組みの理解, 新しい自分が活用できるコマンド, 実際の尊敬するエンジニアが良いと思っているものなどを聞き出せてとても 成果が高かった.

to improve

  • 逆に言えば雑談はあくまでも雑談で実りはあまり残らないので,次回は 少しでも自分に近い技術的な話やツールの話になるようにやっていこうと思う. 習ったツールについては一定の分量にしてドキュメントとしてこのブログで 使い方を解説することで私なりの貢献をしようと考えている.
  • でもかえではもっと人の話を楽しそうに聞ける人間だったと思う. 次はもっと笑顔で話を聞くように心がけよう.意味が全くわからない難しい話 の時は,なるべく自分にわかるように近そうな例を挙げていって,少しでも形を 理解できるように頑張った.セキュリティの世界だけはどうしてもカケラも 理解できないが.....
  • vaneさんにGPU terminalの紹介で「何かコード,大きいコードありますか?」と言われた時に Canvasのアニメのサンプルくらいしかなく,特に何も大きなコード,プロジェクトを 持っていない人間だということを自覚してしまった.勉強はしているけど何か大きなものを 作ろうとはしていなかった.作らなければ!!

再確認

  • 10:30 東京から横浜までの横須賀線では,隣に人もいない環境でこのブログを 45Lineかけて非常に生産的な時間を過ごせた.
  • 何回か会っている人だといかに話しやすく,向こうも教えてもらいやすく なるかがわかった.回数は大事だ.もちろん私が求めていることを教えてくれるし.

最後に

会場のcyboz様,Uchanさん,vane11opeさん, かえでが詰まったり疑問発言したらすぐ教えてくれた皆様, 気軽に声をかけてくれた皆様楽しかったです!! 本日はありがとうございました!!! ゼッケンシステム素晴らしいですね,声かけてもらいやすかったです〜

株式会社T2LABを退職しました(2019.01.31)

株式会社T2LABを退職しました

なぜ受けて、何故やめたか

  • TownWorkで " プログラミング バイト 土日OK " で調べたら出てきたので 面接を受けて働いてみた。具体性のない大言壮語に騙された。

どこで?

西新宿、iPadをインターホンに埋め込んでるセキュリティガバガバのイカれた レンタルオフィス. 10万のコーヒーメーカが使えるのは嬉しかった。

どんな仕事なの?

  • "某有名サービスの某社の画期的なサービスを作る"と具体的な名前は一切出されずに, その為の準備でPythonや"全ての基本となるC"を勉強してレポートを出していた。
  • 木,土に4hずつしか働けなかったので全然金にはならなかった。

やったことは?

本を写経した * python入門 * django girls tutor (website) * Cの絵本(誤植だらけ)

クソだった点

  • gitなどが使えないらしくファイルを探すのに「このパソコンのココのファイルだっけな..」とマウスをカチカチやっていて失望した。c
  • 未経験なPythonの入門書を写経して日報を書く業務を16hしたところ 会議室に呼び出されて 「なぜお前はポインタの理解をしていないんだ?慶應理工の同期は一ヶ月でPythonの入門書を 読んだだけでpointerの働きまで理解できたのになぜお前はできないんだと会議室で20分詰められ、 「このままじゃ難しい」と言った後40分沈黙する。時間の無駄すぎるし
  • ギリギリ三人分のスペースしかないレンタルオフィスで高校生の息子に八つ当たりで怒鳴ってるのを隣で聞くのが精神的に死んどすぎた
  • 業務のためのCの書籍の誤植の質問で(私から見ても引数の話かコンソールの話かわからなかった) 「それ俺のなんの特になるの?間違い探ししてるんじゃねーんだよ!!」などと終日キレまくっていた。
  • 社会的には当たり前かも知れないが贔屓が少ししんどかった。
  • 私にはPythonでpointerを理解してないのおかしいと詰めたのに、私より技術力が低い、コード書けない女子には何も言わなかった
  • Macに偏見が強かった。世間様が使っているのはWindowsなのだから開発もWindowsを使うべきとこだわっていた。
  • C言語mallocというlibraryがMacだとstdio.ioに入っているのを見て、(私はそこで少し詰まっていた) 「なんだこのセキュリティの甘さは!おいお前これがMacのどこのheader fileに入ってるか出してみろ!!ほら出せないだろ!」 「header fileの位置も理解してないってことはセキュリティに問題があるプログラムしか作れないんだよ!だからWindowsを 使わないとダメなんだ!」と全く見当違いのことを言われた。
  • 一々全部のheader fileを把握しないと信頼性のあるプログラムが書けないことはないと思う。そんなことを言っていたら いくらレイヤを下げてもキリがない。

退職!!

  • 高単価コンサルを名乗ってる割に金がないからと8h使ってくれないし、 PythonとCの件、fileを苦労して毎回探している件, header fileの件などから見切った。
  • 狭いレンタルオフィスで、隣で子供に怒鳴ってる声を聞きながら 業務するのは精神的に無理。 完全に八つ当たりだし。辞める気だから何度もその理論はおかしいと割って入ったが 聞く気がないようだった。
  • だから2019.01.31で退職をしました。そして歌舞伎での退職エントリに続く........

歌舞伎町のアフターバーを退職した (2019.03.15)

歌舞伎町のアフターバーを退勤した

なんで受けて、なんでやめたの?

  • 新宿でサービス開発のバイトをしていて、次はバーテンダーでもやってみるか!と新宿でTownWorkで探して受けてみた
  • 労働条件が悪かった(後述)

どんなところ?

新宿歌舞伎町。ホストや風俗の客引きが多い。 会員制バー。アフターがメイン。会計は平均15万。

上司と同僚

  • オーナー: 金髪パーマの36のオネェ。見た目は27. 性格はキツイし人使いが荒い。遅れて出勤してきてお客を連れてくる。そもそも客が大体オーナー目当て。カラオケがめちゃくちゃ上手いしいくらでも歌える。インスタ強い。
  • 店長: 22の金髪ショートカット美少女。口調がいちいち可愛いしルックスがカンストしてる。タバコの吸い方とか本当にかっこいい。えくぼがめっちゃ可愛い。スレンダー。自分のことを「アチキ」「ワシ」と呼ぶ. 歌舞伎町四年目. アル中なので酒が切れると手がプルプルしてる.
  • バイト: 待遇が悪いのですぐ「飛ぶ」(給料すらもらわずバックレる)

仕事内容

  • 掃除をして、お客くるまでソファで待機して、きたらアイス灰皿出して、注文とって灰皿一本交換して、お酒注いでしながらのトーク, カラオケ, タバコのお使いなど。もちろんお客の注文したお酒を店員も進めながら。

クソだったところ

  • 往復交通費940 * 2 が自腹
    • 夜の仕事はみんなそうだからと
  • 00:00 ~ 07:00 契約なのにお客さん居ないと05:00に返されて 時給が5h分しか出ない。
  • 身内トーク(主にキャバの話題)全然入れなくてつらい
  • 暇な時もそれはそれでつらい
  • ドアが開けっ放しなので冬は相当つらい。なぜか上着着るのが禁止。
  • メンソールタバコくさい
  • バイトが三人の時は出勤5h前に人多いからと休みにされる。
  • お客さんが30代以上だからか、カラオケのラブソング?歌ってても全然わからない, もちろん全く好きじゃない
  • 時給1.3kで交通費も出さないくせに「高級店の対応をしろ」とうるさい。

よかったところ

  • 店長?の22の服飾科専門卒の子の見た目の良さとオシャレさがカンストしてた。本物の美を見れた.
  • 売れてるカマ野郎のオーナーから一応プロの接客を学べた。
    • 大袈裟に手を叩いてリアクションする
    • 目をぱっちり開けて話を聞く
    • 常に口角上げておく
  • これらのおかげでめちゃくちゃコミュ力が上がって器量が良くなった。

PostgreSQL Cheat Sheet

brew remove , brew installで無事MacbookAir012にもPostgreSQL, psqlを起動できた。

この2019.05のGW, 成果はあったのだ。

それを示すためにも使うコマンドのチートシートを記しておこう。

DataBase関連

  • userNameでDBにログインする
    psql -U userName DB
    defaultはpsql

  • DBを作る
    CREATE DATABASE hoge

  • DataBaseを出てターミナルに戻る
    \q

  • DBを変える
    \c DB

  • DBをprint
    \l
    えるです

TABLE関連

  • TABLEを作る( 一例 )
    CREATE TABLE hoge ( id CHAR(4) NOT NULL, name VARCHAR(200) NOT NULL, price INTEGER, PRIMARY KEY ( id ) );

  • TABLEをprint
    `` \d ```

  • TABLE の中身を全てprint
    select * from hoge;

  • TABLEのcolumnNameをPrint
    select columnName from hoge;

  • COLUMNを後から追加 ( 一例 )
    ALTER TABLE hoge ADD COLUMN columnName VARCHAR(100);

  • COLUMN を後から削除
    ALTER TABLE hoge DROP COLUMN columnName;

  • TABLE を削除
    DROP TABLE hoge;

COMMIT関連

  • columnに内容をまとめて入れる時、これを書いてから始めると途中で 終わった時に内容が破棄される
    BEGIN TRANSACTION
  • これを最後に書くと内容が保持される。
    COMMIT

  • これで前のcolumnのinsertを無かったことにできる。イッツオールフィクション!
    ROLLBACK

今の所以上です.#############

2019.05.06