投稿

2018の投稿を表示しています

php_modが非推奨になったのね

昔のバージョンのphp環境でphpバージョンを上げるという対応中。 apache + PHP8のインスタンスを構築してドキュメントルートまで到達を確認。 対応する人にドキュメントルートまで到達するからプロジェクトのファイルを置いてバージョンアップのエラーを確認してもらうため依頼しましたが HTTP 503 Service Unavailable のエラーが出ているとのこと。 HTMLファイルはアクセスできているからPHPの実行ができていないと思い調べると Apache HTTP サーバーで使用するために PHP に提供されている mod_php モジュールが非推奨になりました。 php-fpmをインストールして起動し、リクエストを流してphp-fmpでphpを実行するようにして解決。 しばらくPHPを触っていなかったのでモジュールが非推奨になったことに気づかずでした。

ベースをはじめてみました!

イメージ
忘年会のノリでベースを買う。。 お酒の力をかりてはいけませんね。。 最近全く趣味がないので何かやりたいと思っていましたが、忘年会で楽器の話になりベースを弾けるようになりたいと以前から思っていたのでやりたいといったら、おもむろにAmazonを開いていました。 amazon商品ページへリンクします 初心者なので15,000円弱のこちらを購入 本日到着したんですが、気づきました。。 チューナーがないと音を合わせられない! と言うことでまたAmazonさんのお世話になることに… 不器用な私ですが上手くなるのかな。 まずはチューナーが来たらYouTubeにお世話になって練習してみようと思っています! 音はあっていないと思いますが持ってみて弦を弾いた感じはまずまず 初心者にはちょうどいいんではなかろうか? つまみの昨日とかまだわかりませんが上達するようにやっていこう! 全く技術とは関係ない話でしたが仕事ともにプライベートを充実させるためにいっちょ頑張ってみます!!

Linuxのdiffで改行コードを比較対象に含めない

Linuxのdiffで改行コードを比較対象に含めない 大した話のものではないです、いつもコンソール上でdiffを使って差分を見るのですが、改行コードの差分が多く出るとついついファイルをダウンロードしてきてついつい慣れた差分ツールを使ってしまっていました。 差分があまりにも多いとそうしたほうがいいのですが、稀に変更箇所は少ないのに改行コードで見る場所が多くなってしまいそれを確認する時間ももったいない気がして、更に差分を見る気がなくなることもしばしば なんで今まで調べなかったんだろうと思ってしまったんですがdiffコマンドで改行コードを無視する方法を調べてみました。。 本当になんで今まで調べなかったんだろう。。。 --strip-trailing-cr このオプションをつければいいみたい # diff --strip-trailing-cr ファイルA ファイルB こんな感じで比較すればいいようです。 本当に今まで知らなかった(調べなかった)のが悔やまれる。。。

ELBで80番ポートアクセスをしていたのですべてのアクセスを443番ポートにアクセスさせる

WEBサービスで80番ポートアクセスをができるのがセキュリティ上よくないので443にアクセスするようにしたら少しハマったのでメモ 先日に担当しているサービスを見ていたら、社内の共有ツールに記載していたリンクURL(ログインページ)がHTTPになっていて、HTTPSに書き換えてみたら何故かログインページでリダイレクト→HTTPでログインページ表示というおかしな挙動をしていたのであれ?っと思い、そのままログインしてみたらHTTPのままページが表示されていた。 やばい!! と思い調べてみたらどうやら社内共有ツール記載のサービスログインページURLが間違っておりリダイレクトしてHTTP→そのままHTTPでページ遷移してもアクセスし続けるという危ない状態。。 利用側へ配っているURLはHTTPSでURLも間違っていないのでひとまずホッとしたが、社内の人間がアクセスしていたものはログインから情報ダダ漏れというお粗末な始末… 昔はログインページはHTTPでログイン実行時のアクセスはHTTPSにするなんてこともしていましたが、基本的に今はログインサービスすべてのアクセスはHTTPSにしたほうがいいと思います。 そんなこんなで、コードの記載なおそうかと思ったんですが1箇所直せばいいのかと思いきやどこを直していいかわからない。。フレームワークでちょいちょいと思っていたんですがね。。 ということで以前にapacheの設定ですべてのHTTPアクセスをHTTPSにリダイレクトしていたので同じ対応をしようと思いました。 書き方忘れちゃったので調べてみると <ifModule mod_rewrite.c> RewriteEngine On LogLevel alert rewrite:trace3 RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L] </ifModule> こんな感じの記載は見かけるんですが、これを対象サービスのvirtualhost.confに記載してgracefulしてみると。。。 ERR_TOO_M

サービスが日の目を見るように!!

サービスを作って日の目を見るように! エンジニアとして新規開発のプロジェクトに携わるとリリースに向けてのそれぞれのタスクをこなすことが目的になってしまいがちですがもう少し先を考えて会社を盛り上げられないか考えてみました。 今の時代サービスって作っても競合ひしめいていたり、よっぽど差別化できてなければ利用ユーザーも増えずになかなか長く続いていくサービスはなかなか難しいですよね。。。 その中でも、作ったサービスを表に露出させるのがまず一歩だと思い 自分の作ったサービスが少しでも表に出て使われるようにまずは会社のブランディングやサービスのブランディングを作るにはどうしたらいいかを今回考えてみました。 ありきたりな考えですが考えて動くことは大事かなと思うので自分メモ程度に残したいと思います。自分が何かをやるときにきっと役にたつはず!! 自社ブランディングを作る上で一つの手段は広報活動かと思います。 そもそも広報活動って何だ?? 私も詳しく知らなかったので調べてみました。 広報って社外に向けた広報と社内向けの広報があり 前者は自社ブランディング、後者は社内の人のコミュニケーションを円滑にして社内を活性化させる。こんな効果を目的に活動をするようです。 じゃあ今の会社で何をしていこうと考えて見ようと言うことで これは自分でやるかはわかりませんが 前職の広報がやっていたのですが他社との広報とつながりを持つ 他社との広報とつながりを持つことで、SNS関連のシェアやメディア取材など自社に内容がマッチしないものを断るのではなく、他社へ流して紹介することでメディアとの関連性も保ち他社との関係も良くなりということが生まれる。 広報のfacebook友達は2,000人近くいる人もいて、シェアしてもらえればインパクトは少なくないかと思います。またfacebookの繋がりがある人のシェアとなると広告もターゲティングしているとはいえ効果は大きいかと思います。 ただ他社のシェアなど協力はしていかなければならないので関係性を保つコストは出るでしょう。 つながりを持つのは『広報セミナー』などそういったところから前職の広報はつながりを増やしていました。 SNSを活用する 社内

転職をいたしました!!

転職しました! まぁもう転職して3ヶ月経つんですが。。。 皆さんは転職ってなんのタイミングで決意したりするんでしょうか?? 最近では終身雇用なんてありえない話で、業績や時代の流れで給与が減ることや、もちろん増えることも、配置転換や退職勧告など会社としては必要であれば何らかの形で行使しなければならないときもあるかと思います。 また雇用されている側も、この会社で一生をと思っている人は少ないのではないでしょうか?? 私は、終身雇用も必要ないと思いますし、入社したときからこの会社で今後やっていくなんて考えなくていいと思っています。 何故か? 入社時点では、入社する人に、入社する会社に何らかの魅力があって採用を決め働くことを決めたわけですが、それはあくまで入社時点の話です。 社員は常に自分の提供しているリソースが正しいのか考え続け、会社は労働側に価値(給与なのか、目的なのか)を与え続けてこそ会社が成り立ち成長し続けると私は思いっています。 ということで私は前社は価値がないと(会社が与える価値がない)と思い転職をしました。 実は起業という選択肢もあったのですが、上司にあたる人の行動が規則に反し、それを代表取締役が容認するような発言をしたので、2年位の準備を経て企業をもくろんでいたところでしたが急遽で転職先を探すことにしました。 結局2ヶ月位で転職先は決まりました。 条件面は年収ダウン(数十万)、残業手当なしの管理職扱い まぁ急いで転職して条件悪くしてなんて思うかもしれませんが ここ3ヶ月働いて、今が楽しく思えています。 はじめの1ヶ月はなれないせいもあり、自分のリソースに対する給与ももっと低くていいのではないか?(この会社では低くていいのではないか?)なんて感じる節もありましたが2ヶ月目からは力を発揮できているかなと思えるようになりました。 ちなみに給与なんて、同じ仕事していても会社によって給与が違うのは当たり前だと思っています。やってる仕事は同じでも得ている利益が違うのであれば給与は変わるのは当然ですよね? 正直なんですが会社選びなんてそれぞれの価値に依存しています お金 内容 ポジション 未来性 などなど様々な考えで人の希望や幸福度

おうちの引越しをしました!

イメージ
最近10年住んだ家から引越しをしました 久々の投稿ですが技術的なことでもなく。。 ここ数ヶ月バタバタしていまして、転職活動そして転職・これをきっかけに10年以上住んでいたところを引越しする決意をし、今の職場付近に引越しをしました 転職などのことはまた記事にするとして、引越しをして部屋で唯一のストレスだったキッチンの流しのパイプが低くて使いづらかったことを解決してスッキリしたので記事にしちゃいました!! 今回は人生で2回目の引越しです 前回は自分で引越し作業をしたのですがいい歳だし、腰にきたらあかんと思うのと、あの労力を考えると業者に頼んだ方がいいと思い サカイ引越しセンターにお任せ! 昔は、ドライバーの人がやんちゃな人が多く助手のアルバイトをこき使うなんていう噂もありいい印象は持っていなかったのですが、最近はテレビCMを出しているだけあり、営業の方の対応とドライバー・助手の方ともに対応がとても丁寧で、いろいろ話しかけてくれて時間を持て余すこともなくとても満足でした 自分でやったら車借りて友達に手伝ってもらってと時間も合わせたら安いなって思いました! 土日は昼間だと高いらしいですが夕方にしたので安くなり、もし平日にできたらなお節約はできた感じですね さて引越しをすると内見では気づかなかったことが気になってきます。。 部屋自体には大満足していますが一点… キッチンの水道パイプが水平過ぎて使いづらいこと 例えば1リットルのペットボトルを洗おうとしても低くて入らない ブリタの浄水ポットも斜めにしないと入らない   こんな感じですね・・・ なんとかならないかなぁっと探していたら 水道 蛇口 パイプ で検索! モノタロウ でそれらしきパイプを発見しました!! 浄水器専用Sパイプ ※ちょっと水道のデザイン重視で浄水器専用Sパイプを選択してしまったのですが取り付けても問題なかったです (普通の水道っぽいのは 上向きパイプ こちらがいいかもしれませんね) 記事にするつもり無かったので開封後の写真です。。 想像以上にパイプは細かったんですが、水量も問題なく こんなに上に出口をすることができました 出口の先は

スーツの月額制プラン

イメージ
月額でスーツを借りるのいいな また技術系とは離れていますが。。 amazonページへリンクします よく日経TRENDYを購読しているんですが、今回で気になったのが定額サービス。 LINEミュージックを使っていたのですが、家にスピーカーがなくて買おうか悩んでいたAmazonのecho plusが先日のprime dayで安くなっていたので衝動買い! 音楽もAmazon Music Unlimitedに変更してサブスクリプションや月額制が旬な感じな私はペラペラとながめていると 男性用スーツ これが月額制であるじゃないですか!! 仕事柄私服が多いので着ることはないのですが、、、 ではなんで気になったかって言うとだいたいスーツは必要なときに量販店でサイズの合うのを買うんですが店員のいいなりの私は広告に出ているような19,800円では収まらず。。 たいてい4〜5万かかってしまうんです… 先日も作ったのですが(転職する際の役員面談で必要になり泣く泣く。。) おそらく1回しか着ないムードが漂ってきます 仕事のときに職場にマッチしない出で立ちで現れることは別にいいのですが、クリーニングやらの手入れが億劫なので気が進みません。 しかしこの月額サービスは、サービス種類にもよりますが一月に一着の交換が可能だったり、クリーニングしなくて返却可能だったり、持っている靴などに合わせたスーツを選んでくれたりと普段着ない私には面倒な部分をかなり補ってくれるサービスだなと思いました。5万のスーツを購入したとして月額制を利用した場合に6着のスーツが着回せるなんてなかなかいいサービスだと思います。多分1着のスーツを半年着ることは記事の劣化もあり多分ないと思うので私自身が利用したいと思い記事を書いてみました。 毎日着る人でも所有数着でプラスアルファで月額での利用を合わせてもありですよね。 普段着れないやつや試したい形や色なんかにもいいです。 次の職場は顧客折衝しそうだからスーツ着ようかな。

英語 3人称単数

イメージ
英語 3人称単数 私は現在ですが恥ずかしながら中学英語を学び直しています。 これはエンジニアとして仕事上、ドキュメントのが英語などということもあり、更には変数などの命名やテーブル設計時にネーミングで悩んでいる時間がもったいないなと思い学び直すことを決意しました。 amazonにリンクします こちらの本を購入したのですが、私は中学時代に英語はあまり得意ではなく(正確には暗記でできる範囲はこなせていましたがそれ以上は無理でした。。)苦手意識があってやりたかったのですがなかなかどうやって学び直すかわかりませんでした。 そこでこの本を買ってみたのですが、こちらの本がわかりやすくとても勉強になっています。 しかし、今回は本の紹介というよりも、変数やテーブル設計のときに使うであろう命名や、英語自体の個人的メモを残すことにしたので書いています。 今回は3人称単数のes iesの付け方 o, s, x, ch, sh で終わる動詞はesをつける(go goes, teach teaches  など) a, i, u, e, o 以外の文字 + y で終わる動詞はyをiに変えてesをつける。 (study studies, try triesなど) という法則がある。 思えば中学時代にstudyはstudiesだからとしか教わっていない記憶があってこんな法則があるんだと関心したのでメモ。 ※私が聞いていなかっただけかもしれませんが。。

はじめてrubyを業務で使ってみました

はじめてrubyを業務で使ってみました 先日に携わっているサービスでメールが届かないというお問い合わせを頂いたとのことで調査してみることにしました。 まずは、メールの送信ログですよね。 該当のアドレスに送信されているのかを確認するとログには残念な結果が書かれていました。。。 blockされている。。。 対応自体がはじめてだったのでいろいろ調べてみるとメール送信先のサービス側ではじかれていて、そのメール送信先のサービスが利用しているブラックリストサービスでブラックリスト登録されたということらしい。 解決策は登録されているホストの解除依頼をブラックリストサービスに依頼すればいいみたいなんですが根本的になんで登録されたのかもわかっていない、、 更にはネットで調べた解除フォームにたどり着けないということでまずはなんでかを確認することにしました。 結果は意外と簡単でサービスに登録されていたアドレスが適当なものでもアドレス形式であればOKだったので、結果的に宛先不明メールを送っていることになり、それでスパム扱いで登録されたんだと思われます。※サービス作りが悪いですね。。 であれば宛先不明のメールを送信しないようにサービスに導入しないとまたブロックされてしまう。。 そこでバウンスなどの管理をできないかと調べて出てきたのが sisitoとsisimai というツール sisitoは獅子唐のアイコンで気に行ってしまったのですがこちらはsisimaiで解析した結果を表示して管理するグラフィカルツールで結果的には使いませんでした。 sisimaiはバウンスメールなどをインプットして解析してアウトプットしてくれるのでこちらを使うことに。 sisimaiがrubyかperlなのでrubyを選択した結果、抽出後のアドレスに対して処理は書かなければならないのではじめて実践的なrubyを使ってみる事になったというなんとも前置きが長くなりましたが、以下は今回使ってわかったrubyの箇条書き程度のメモです。 今回は特の難しくはなくまずは宛先不明メールの解析がバウンスのメールボックスにはなく、deferredのフォルダにあったため、これをそのまま解析できなかったのでテキストファイルにして

書籍購入 イシューからはじめよ -知的生産のシンプルな本質-

イメージ
書籍購入 イシューからはじめよ -知的生産のシンプルな本質- amazon商品ページ  amazon商品ページへリンクします 最近、在職中の会社でプロジェクトメンバーが増え、今までの少人数でそれぞれある程度の裁量行動型の開発でなんとかなっていたものが通用しそうではなくなっています。 そこでマネジメントする人はいるんですが、あまりにも機能していないので私がなんとかしないと崩壊するなと思い、何をすべきかを考えてみました。 そこで手にしたのがこちらの書籍 イシューからはじめよ ー知的生産のシンプルな本質ー マネジメント論的な書籍の方がいいのではとなりますが、そもそもマネジメントってなんだ?と考えると管理する人なんて思い浮かびますが、管理するにも様々な見方ができます。 経営的な数字の管理、プロジェクトの進行管理、人の管理など様々な面がありトータルで管理するのがプロジェクトマネジメントと言えるのかと思います。 しかし、全てにおいて課題や目的を与えられたり自ら発見したりして、そこに対してクリアする問題点を洗い出し、そして結果を出すということにはかわりはありません。 そう思ってこの書籍を手にしました。 ※実は別の書籍を読んだ結果、お勧めで出てきて興味を持ったというのが一番はじめのきっかけではあるんですけどね。 読んでみての感想ですが この考え方はプライベートや仕事など全てにおいて使えるということ 今までは対応したければならないことを順番にこなしていたがそれは間違いで 対応しなくていもいい問題や、今対応すべき問題ではない場合がある点 今自分が問題点だと思っていることが、本当は問題ではない可能性がある 重要なことがはじめに対応すべきことではない そして私がよくやっていたなと思うのは 結論が出ないことで悩まない これですね(出ると思って悩んでいました) 私は難しい問題の答えを出そうと悩むことが多かったのですがこれは間違いでした 答えが出せない問題とわかって悩むことは無駄でしかない まぁ改めて普通に考えるとそうですよね。。。 でも人間は気づかぬうちに難しい問題をこなすことが良しと思ってどうしても答えを出したがってしまったりするのではないでしょうか? 課題に対する問題点は解決できて始

書籍レビュー 未来の作り方 2020-2045 僕がVRに賭けるわけ GOROman

イメージ
書籍レビュー 未来の作り方 2020-2045 僕がVRに賭けるわけ GOROman amazonへリンクします amazonへリンクします 先日記事に書いたようにVRゴーグルと360度カメラを購入してみて(記事は こちら ) なんだこれは!!! ゴーグル越しに上を見れば空が見える!後ろを振り返れば視界が後ろに!! 初体験は今いる自分の空間をそのままVRゴーグルで仮想空間体験をしたわけでそれ意味ある?? みたいに思われる方もいるかも知れませんが、私の場合は今いる空間が瞬時に仮想空間に変わったことに驚きを感じました。 それとともにカメラで今いる環境が仮想に変わる、ということは今の遠くのものが目の前で体験できるという素晴らしさに感動を覚え、そこから社内でVRヤバイ!、この楽しさを伝えたいとゴーグルを持っていきYouTubeのVR動画を体験させ、面白いコンテンツがあれば絶対に楽しいと普段怖い上司として定評がある(ただ怖いだけではなく男気があってそう感じる人もいるだけなんですが)取締役の方にご協力いただき 振り返れば〇〇! ※〇〇には取締役の名前が入ります。 という動画を作りまだVRコンテンツの勉強中なので、開始視点はこちらであっち向いてなんて指示をしますが、『じゃあ振り返って!』と振り返るとみんな『おぉぉ!!』ってびっくりしてVRには腕組みした取締役がいる!なんてものを作っていました。 今は別のVRコンテンツを考えています。 そんなことをしていてもっとVRが知りたいと(どちらかというと技術よりで)書籍を検索してると表題の書籍に巡り会いました。 著者は株式会社XVIの代表取締役社長の近藤義仁さんでGOROmanさんと呼ばれているらしいです。最近VRにハマったので詳しくは知らなかったのですが有名な方で早速twitterフォローさせていただきました。 父親の仕事がエンジニアで小学校の頃からコンピューターに触っていたことや中学時代にパソコン通信のホスト局を運営したり高校でソフトを作って200万を手にしたり、今の私からしたらかなり羨ましい生い立ちです。(おそらく同じ位の年代の方だと思いますがと今のネット整備されている世の中だから羨ましく思えますが当時の周りの目もあったことも書かれていますし、実際私も当時はスポーツよりで

夢・・・かぁ

夢について考えてみる ※本日は技術とは全く関係ないお話です。 この間たまたまTVつけたらカウントダウンTV(CDTV)がやっていて あー昔は100位くらいからやってたような気がするけど40位からなんだ〜 音楽業界もTV業界も厳しいんだろうななんて思ってしまいました。。 しかしそれが本題ではなく アーティストファイルという新たなコーナーで湘南乃風が出ていて 私が好きなアーティストなんでテレビの前でガッツリ観てしまったんです。 そこで言っていた言葉が印象的で感慨深いなって思い書くことにしました。 今までは社会やシステムなどを下からの目線で訴えたり夢を追い続ければ幸せだということを歌詞に込めて基本はそこだったようで(好きなんだけど実は曲数もそんなに知らず・・・改めてそうなんだみたいな)、彼らは活動15周年で平均年齢が40歳を超えてきたということで少し見方がが変わってきたという。 私が感慨深く思ったのは、夢を追い続けることは幸せだ!オレら夢を追いかけているから幸せだぜ!って言うのを自分たちが思っているだけで押し付けるようなことを訴えかけ続けていいのかと最近考えるという言葉だ。 自分たちの時代は親や学校がやりたいことをダメってやらせてくれなかったからやりたいことができていて幸せだって思えるが、下の年代になると親がさせてくれる世代になり叶えられることが多く逆にやりたいことや夢がわからない人たちが多いそうだ。 そして社会や仕組みに下から見ていたことが歳を重ねて経験もあり少し目線も上げて見るることもできるようになった。 そして曲が【ガキの俺へ】って曲でした。 そして考えた、私夢ってあったかなぁ 一つあるとすればお金は欲しい!!! ってくらいでした。。ハハッなんともお恥ずかしい。。。 年代的には一緒なんですけどやりたいことを職業にできている人は羨ましいなんて思っていました。 でもこの歳になってできましたけどね! 夢?希望?? それは息絶えるときまで求められる人間になる!! 思っている求められるとは市場価値のある人間でそれが定年してもこのまま続けてくれて構わないと言ってもらえるなのか、起業して経営陣なので定年なく寿命まで働いているでもいいし、人に売れ

NetBeansでphp-cs-fixerでPSR2の規約でコーディングを揃える

イメージ
NetBeansでphp-cs-fixerでPSR2の規約で コーディングを揃える! 今回はコーディング規約を揃えると言いつつも少人数なので私だけ守っていなかったところ、今年に新入社員も入りここは揃えないとひどいことになると色んな開発ツールでの導入方法を試して記載してくれたメンバーがいましたが、彼からの一言は私の愛用NetBeansだけできませんでした。。。ということで自分で導入したメモです。 私はnetBeanse8.2 まずはプラグインをダウンロード(ダウンロードは NetBeans公式サイト より) プラグインをダウンロードして適当な場所に配置 そして ツール→プラグイン→ダウンロード済 【プラグインの追加】 →xxxxxxxx_org-netbeans-modules-php-phpcsfixer-0.8.1.nbm ※ダウンロードしたファイルを選択 (nmbがインストール後も必要かは不明) ここでプラグインの追加インストールをする 自分の好きな適当なディレクトリにて # curl http://get.sensiolabs.org/php-cs-fixer.phar -o php-cs-fixer # sudo chmod a+x php-cs-fixer ※README.rstにあったbinに移動してコマンドとしてのパスは今回通しませんでした。(netbeansだけで実行できればいいので。) 続いてnetbeans preferences(オプション)→PHP→フレームワークおよびツール 左の枠からPHP CS Fixerを選択して先程インストールしたphp-cs-fixerを選択 --levelにチェック psr2を選択 メソッドやクラスの中括弧を調整します。 同じくpreferencesからエディタ 言語をPHPで中括弧を選択 ・クラス宣言 ・匿名クラス ・メソッド宣言 これらを改行にしました。 以上でようやっとmy-fixer(自分でやっていたということ)から自動でフォーマット調整できるようになりました。。 ※遅いよというツッコミはしないでください・・・。

Unityの教科書 -Unity 2017完全対応版- 書籍を購入しました

イメージ
Unityの教科書 -Unity 2017完全対応版- を購入しました amazonページへリンクします 初めてでも安心! Unityの教科書 Unity 2017完全対応版 2D&3Dスマートフォンゲーム入門講座 北村愛実 著 Unityに触れたこともなかったので【初めてでも安心!】というフレーズに安心感を覚え購入してみました。 購入したきっかけは先日ふと思いたちVRコンテンツが作りたい!! と思いついた時にVRコンテンツってどうやって作るんだ?? と調べたらUnityでVR作れるっぽいと見かけまずはUnityのインストール。プラットフォームをいろいろ選択すると結構ダウンロードに時間がかかりましたが問題なくインストール成功。(ポケットWiFiユーザーなので5G近く消費して明日から使えるのか心配でビビりました。。。) しかし!! インストールしたはいいものの全く使い方がわからず途方に暮れる。。。 そして本だ!! ということで書籍を探しこちらを見つけて購入しました。 早速届いた当日からやってみました。 こちらの本ですがサンプルもサポートページからダウンロードできるんですが、ダウンロードしたもので使ったのはイメージなどの素材だけでサンプルコードを見ることもなく本の手順通りで動くものが出来上がっていきます。 多少プログラムをかじっているとテキストでの説明の上で、イメージ付きでの説明があってそこをいちいち目を通さなくてもできてしまうところはありますが、その分テキストの時点での説明がうまいんだと思います。 私も今までプログラミングの入門書(androidアプリとか)を読んで試したりしましたがどこかで詰まったり悩むところがありますがこちらの本はスイスイと形ができあがりこれなら自分でなにか作れるんじゃないかと錯覚してしまうほどです。 記述どおりにやっていけば目に見える動きのものが出来上がりAndroidタブレットを持っていたのでこちらにインストールして実機でも確認できます。ワクワクしながら学ぶことができました!! C#についての勉強というよりUnityの使い方の基本みたいのが学べる良い書籍だと思いました。久々に楽しく進められるも

adsenseがようやく承認〜8ヶ月の道のり 〜

イメージ
adsenseがようやく承認されました! 昨年末(多分10月末くらい)に申請していつまでも広告が表示されず四苦八苦していましたがようやっと承認されました!! ほぼ広告知識無しで思いつきのままにブログを始めて広告のadsenseの申請をしてみたら苦労した話の記事になります。 無知でわからず待ちなにか変だと思って調べ変更して ホストアカウント・独自ドメイン・アカウントキャンセル・・・ 喜びの承認まで8ヶ月 事の発端は釣りを始めたことで同じくやっている 釣りブログ ですがどうせやるなら広告でも出してお小遣い稼ぎでもできたらななんて安直に考えていました。 さらにYouTubeで釣りの動画をみてハマってしまい、YouTubeで広告も出そうと釣りに行ったら動画を撮るようになりました。 ブログは【Google Blogger】 最終的には申請していたアカウントキャンセルして、別アカウントで再度申請をしたら1日で承認されたんですが以下は自分がダメだったと思う点です。 まずはじめにダメだったと思っているのが (これは結果的に検証できないので想定です) 釣りを始めてYouTubの動画にはまりYouTuberになるんだ!と思ってしまったこと ことの手順ですがYouTubeでチャンネルを作成、Bloggerで釣りブログを投稿し始めました。googleのアカウントはどちらも同じです。そしてYouTubeで収益化を有効化してbloggerの方も収益化をし同じアドセンスのアカウントに紐づけている状態です。 このどちらも収益化を有効にした状態が一つダメな点だったと思っています。 どちらも有効だとYouTubeの審査開始の条件(当時は1000時間の再生がされたらだったと思います。)がクリアできないのでブログの申請もYouTubeチャンネルの審査開始に引きずられて(アカウント自体の審査条件に引っかからないんだと思います。)bloggerの方も審査されずにいつまでも広告がでない、または審査されないんだと思います。 ※これはbloggerに広告をまず出したかったという意向だったのでこういう書き方になっています。 もしかしたらBloggerを先に収益化して承認されたらYouTubeを収益化したら良かった

Reactを初めて触ってみました(tutorialその⑨)

Reactを初めて触ってみました(tutorialその⑧) このページはReact公式ページのtutorialを体験したメモと初心者なりの解釈を記述したページになります。 前回では兄弟要素にはkeyを用いて対象要素の識別をし更新を行った場合にKeyを元に対象要素を更新したり、新たなKeyは追加で保存されたり削除されたKeyは削除されプロパティからも削除してくれることをReactがしてくれるんだと言うことがわかりました。 今回はボタンを履歴ボタンを押してその時の状態が再現されるところをやっていよいよtutorialの完成を目指します。 ※WEB翻訳をそのまま載せているところもありますが自分で理解できるように記事にしています。 では前回に引き続き履歴の部分をやっていきましょう 移動リストについてはすでに各操作ごとに回数があり回数は一意ですのでIDとして利用できます。 その回数をGameのrenderでliの要素にkey属性を追加します。     const moves = history.map((step, move) => {       const desc = move ?         'Go to move #' + move :         'Go to game start';       return (         <li key={move}>           <button onClick={() => this.jumpTo(move)}>{desc}</button>         </li>       );     }); まだ、jumpTOのメソッドが未定義なので履歴のボタンが追加されていってもボタンを押すとエラーになってしまいますね。 Gameの状態に新しいKeyを追加して現在表示している回数(履歴)を表示します。 stepNumber: 0 をGameのコンストラクタに定義して初期化します。 class Game extends React.Component {   constructor(props) {    

GOOICE VRゴーグルを購入しました!

イメージ
GOOICEのVRゴーグルを購入したので使用してみました! 会社でふと思いついたこと。 格闘技が好きな私 直接戦うのは無理だけどVRならバーチャルバトルができるんじゃないか? 好きな格闘家と戦えるのではないか?! なんて思いつきから4月の新卒入社社員が格闘技好きなこともあり話していたら思いついてしまいました。そんなのを作りたいと!! で早速どうやったら作れるのか?? とまずは調べてみました。 どうやら360°カメラとやらが必要らしい。 ※これは2Dの動画をアプリケーションを使って分割することによりVRで見ることができるみたいですが。やはり後ろを向いたら後ろの景色が見れたほうがリアルですよね。 ということで早速360°カメラをamazonで購入。 こちらは本日には届かなかったのですが一緒に購入したVRゴーグルが先に届きました。 Gooice 3D VR ゴーグル(amazonへリンク) こちらになります。 Gooice 3D VR ゴーグル ヘッドフォン付き こちらなんですがヘッドストラップのところに丸いクションが付いていてまだ長時間使っていませんが3D映画とか見るなら付いていたほうが疲労度が減るかともと思いました。 そしてヘッドフォンが付いていて、イヤフォンジャックにつなぐコードもスマホを収納することろにコンパクトに収まっていますので気にならず鑑賞できます。(こちらは使ったのでそう思いました。) それとリモコンがついているのが良かったです。 YouTubeの再生準備をして例えば一時停止にしてゴーグルにスマホをセットします。 ゴーグルをかけてリモコンで再生ボタンを押せばスタートするのでスタートから最後まできっちり楽しめます。 重量も軽く(あとはスマホの重量次第で変わっちゃいますが。。)とてもいいです。 リモコンの使い方は説明書を読まなかったのではじめ分かりませんでしたが再生だけでしたらそんなにボタンも使わなかったのですぐ慣れました。 配送時の保護フィルムなんかもしっかりしています。ジャックもコンパクトなのがわかりますよね。リモコンでも操作できますがゴーグル下部にはOKとあるタッチスクリーンボタンと音量調節ボタンとこのボタンが押すこともできて再

Reactを初めて触ってみました(tutorialその⑧)

Reactを初めて触ってみました(tutorialその⑧) このページはReact公式ページのtutorialを体験したメモと初心者なりの解釈を記述したページになります。 前回まではゲームコンポーネントへ状態を保存する部分を移していき履歴の保存する部分の準備をした感じです。 ※WEB翻訳をそのまま載せているところもありますが自分で理解できるように記事にしています。 チュートリアルの理解なのにこれの記事が長くなってしまって申し訳なくなってきました。。。 でもやりきりらないとはじまりませんのでやっていきましょう!! ムーブメントの表示 前回React要素はファーストクラスのJSオブジェクトであることを知り、保存したり、渡したりしました。 Reactで複数の項目をレンダリングするには、React要素の配列を渡します。 その配列を構築する最も一般的な方法は、データの配列をマップすることです。 Gameのrenderメソッドでそれをやってみましょう。   render() {     const history = this.state.history;     const current = history[history.length - 1];     const winner = calculateWinner(current.squares);     const moves = history.map((step, move) => {       const desc = move ?         'Go to move #' + move :         'Go to game start';       return (         <li>           <button onClick={() => this.jumpTo(move)}>{desc}</button>         </li>       );     });     let status;     if (winner) {    

会社の持ち込みPCについて考えてみました

会社の持ち込みPCについて考えてみました うちの会社では会社としては会社で購入したPCを利用してほしいのでしょうが個人利用のPCも申請すれば持ち込みして開発できます。 会社はデフォルトが Windows PC で個人的な経験ですが docker for windows が不安定で苦労した経験があったり会社でWindows、自宅でMacなんてことや会社でJSキーボード、自宅でUSキーボードなんてより自宅も会社も同じPCのほうが開発しやすいに違いない! ということで私のチームでは自分のPCでのほうが開発しやすかったら持ち込むことを私は推奨しています。※ただし、管理部門は煙たがっていると思いますが。。 ですが持ち込んでいいよー! 開発しやすいねー! よかったね~ ではすまないのがリスクマネジメント とは言え管理部門はPCロックはかけましょうね、外でPCはなくさないでね程度のルールや指導しかしていません。 なので私が持ち込み(BYOD)推奨しているだけにセキュリティを考えて運用することにしました。ノート想定(しかもMac想定です)なので PCにログインパスワードをかけること ディスプレイを閉じた場合はロックの設定をすること パスワード文字列に関してのルールを守る ざっくり表現ですが身分証明などでわからないものに ちなみにパスワードのヒントは本当のことを書くと脆弱になります このSNS時代に名前などから本人を特定し、小学校の名前や母親の名前、ペットの名前などはパスワードを教えますよと言っているようなもの。 例えば好きな小説にかかれている好きな人物の名前や小学校など自分でしかわからないものにするといいようです。 ウィルス対策ソフトは導入する これは自分の個人情報を守るためにもいいのではと項目に入れました。 ウィルス定義の定期更新 定期的なスキャン 会社専用のディレクトリまたはパーテーションを作成する ここは会社側の立場に立った場合ここ以外にファイルがったら私は疑われても仕方がありませんよという建前を持たせるための項目として設けました。(強制はしていません)ソースコードや資料はそこに置くこと。FileVaultで暗号化をすることも推奨してみました。 退職時はここを削除する。

Reactを初めて触ってみました(tutorialその⑦)

Reactを初めて触ってみました(tutorialその⑦) このページはReact公式ページのtutorialを体験したメモと初心者なりの解釈を記述したページになります。 前回までは基本となるゲームの作りまで完成しました。ここからは履歴の機能に取り掛かっていきます。 ※WEB翻訳をそのまま載せているところもありますが自分で理解できるように記事にしています。 歴史の保存 ボードの古い状態に戻って、以前の動きの後にどのように見えるかを見ることができるようにしましょう。 移動が行われるたびに、すでに新しい四角形配列が作成されています。 これは、過去のボード状態を同時に簡単に保存できることを意味します。 このようなオブジェクトをstateに格納しようとしましょう history = [   {     squares: [       null, null, null,       null, null, null,       null, null, null,     ]   },   {     squares: [       null, null, null,       null, 'X', null,       null, null, null,     ]   },   // ... ] トップレベルのゲームコンポーネントが移動リストの表示を担当するようにします。 それで、スクエアからボードに前の状態を引き上げたように、BoardからGameに再びプルアップしましょう。トップレベルで必要なすべての情報を得ることができます。 四角形のクリック操作でBoardの値を変更したようにBoardからGameへ値を渡しましょうってところでしょうか。 最初に、コンストラクタを追加してGameの初期状態を設定します。 class Game extends React.Component {   constructor(props) {     super(props);     this.state = {       history: [{         squares: Array

Reactを初めて触ってみました(tutorialその⑥)

Reactを初めて触ってみました(tutorialその⑥) このページはReact公式ページのtutorialを体験したメモと初心者なりの解釈を記述したページになります。 前回は、オブジェクトのコピーで突然変異による更新(つまりは直接更新)と不変的な更新(元のオブジェクトをコピーして更新する)というマニュアルの説明をしていきました。またその続きになります。 機能コンポーネント 私たちはコンストラクタを削除しました。 実際、Reactは、レンダリングメソッドのみで構成されるSquareのようなコンポーネント型の関数コンポーネントと呼ばれるより単純な構文をサポートしています。 React.Componentを継承するクラスを定義するのではなく、単にpropsをとり、レンダリングすべきものを返す関数を書くだけです。 Squareクラス全体をこの関数で置き換えます。 function Square(props) {   return (     <button className="square" onClick={props.onClick}>       {props.value}     </button>   ); } 関数コンポーネントと呼ばれるより単純な構文をサポートしている。 関数の書き方が省略できるということを説明しているようですね。 単純にpropsで記述できるようです。 onClick={() => this.props.onClick() →onClick=this.props.onClick() ターンを取る(Boardコンポーネントの変更) 私たちのゲームの明らかな欠陥は、Xだけがプレイできることです。それを修正しましょう。最初の移動をデフォルトで 'X'にしましょう。 Boardコンストラクタで開始状態を変更します。 class Board extends React.Component {   constructor(props) {     super(props);     this.state = {       squares: Array(9).fill(null),