tekitoumemo’s diary

思ったことを書くだけ。長文版Twitter

買ってよかったもの(車編)

まずはこれを見て欲しい。

車を買った。すごくやすいやつ。20万円 - MidoriMemo

マジで車欲しいと思ったらすぐかったほうがいい。普通は壊れんから。

で、買ってよかったものと言うよりは買ったものの紹介。

シュワラスター洗車シャンプー

シュアラスター 洗車シャンプー [ノーコンパウンド] カーシャンプー1000 SurLuster S-30

シュアラスター 洗車シャンプー [ノーコンパウンド] カーシャンプー1000 SurLuster S-30

間違いない。安いし、泡立ちいいし

ウォッシャー液

安いやつでいい。っかこれよりもっと安いやつでいい。安いやつは洗剤成分少なくてサラサラしてるからいいと思うわ。それ以外は洗車しなさい

ゼロウォーター

ガラスコーディングしてくれるらしいけど効果出てんのか出てないのかわからん。自分の車と同じ車種と同じ色を並べたら若干ツヤてかが違った気がする。多分気のせい。高い。

スポンジ

シュアラスター ウォッシングスポンジ [キズ防止 2層構造] SurLuster S-70

シュアラスター ウォッシングスポンジ [キズ防止 2層構造] SurLuster S-70

デカイし使いやすい。

鉄粉取り粘土

シュアラスター ネンドクリーナーソフト [鉄粉除去 ザラツキ除去 ノーコンパウンド] SurLuster S-83

シュアラスター ネンドクリーナーソフト [鉄粉除去 ザラツキ除去 ノーコンパウンド] SurLuster S-83

僕の愛車はコンパンドで磨きかかってたからあんま効果ない。一年に一回出来ればいいね。

スマートミスト

ゼロウォーター高すぎてこっちにしたけど、ヌルテカって感じ。スプレータイプでこれはすごいわコスパいいし。

樹脂系パーツ復活剤

カーメイト 脱脂剤 コーティング剤 黒樹脂復活 10ml C24

カーメイト 脱脂剤 コーティング剤 黒樹脂復活 10ml C24

舐めてたわ。すごい。どうしても中古車は樹脂系パーツが劣化してるのでこれやると下手したら新車に見えるかも。

静音計画(風切り音防止するやつ)

エーモン 静音計画 風切り音防止テープ ドア2枚分 約4.3m 2650

エーモン 静音計画 風切り音防止テープ ドア2枚分 約4.3m 2650

効果わからん。まぁ、若干効果あったんじゃん?

静音計画(風切り音防止するやつ)

エーモン 静音計画 風切り音防止モール ドア用 ドア2枚分(約2.1m) 2652

エーモン 静音計画 風切り音防止モール ドア用 ドア2枚分(約2.1m) 2652

無意味。ドアの隙間が黒くてかっこいい以外無意味。

車載ホルダー

運転しながらポケモンg、、最新ナビ見れるしね!

エアコンフィルター

中古車買ったら必ず交換した方がいいね。臭いし

アームレスト

これじゃないけど、コンパクトカーは基本ないから絶対必要。疲れがダンチ。これが一番成功。

auxケーブル

bluetoothは高いんでauxで満足。これのおかげでロードノイズ気にならんくなってきた。二番目に成功。

マフラーカッター

変わる。変わる。マジ変わる。

【selenium】seleniumを導入する上で重要なこと


心得。

今更感がするが、運用して学んだことがあるので書いてく。参考になれば。

selenium導入しよっかなーよくわからねぇけど」って人向け

くっそシンプルなパターンを作る

必要最低限のパターンを作る。いろんなパターンを考えない。絶対カオスになるので正常パターンだけ実装する。

分割してモジュールを作成

タイミングとかで成功率が変わるので一回で全部をやろうとしない。描画待てるよ!とかいろいろ意見があると思うが、何も知らない人に開発させる前提で考えてほしい。あとサイトの癖もあるからねー

ecサイトだったら

  • 商品選択→カートに入れる
  • カートから注文

みたいな感じで分割する。

seleniumのことを好きにならない

始めは結構面白いのよselenium。なんでも出来るって言ってもおかしくないぐらい機能が豊富。作っていくと、いろんなパターンを考えがちでカオス化するのは目に見えてるので「コーディングがめんどくせーから手っ取り早く終わらせよう」ぐらいの気持ちが大事。

スリープは入れるな!

seleniumのwaitなら許す。普通のスリープ入れるな!

elementとelementsどっちかに統一しよう

メソッド名が似てるからねー。可読性悪い気がする。

例外パターンもシレッと回避しろ!

特定のパターンは無理にif分回避するのでなく、要素がかなかったら処理しないとかに統一しよう。

// aタグが存在する場合のみクリックする
var tags = webDriver.FindElements(By.TagName("a"))
if(tags.Count() != 0)
{
    // クリック
}

c#ですみません。結構ここが決めてかなぁ?

サイトが変わって保守が大変になったら全部捨てろ!

強引すぎて申し訳ないが、これクソ大事。まぁこれを避けるために分割すればいいんだけど。プログラムもそうだよね。

テストエンジニアとかいれば話は別だけど、普通のエンジニアが開発しつつテストコード書いてくって感じで運用するならこの程度でいいと思う。っかこうやればよかったと後悔。

買ってよかったモノを紹介

リアルフォース

東プレ NG01B0 REALFORCE91UBK

東プレ NG01B0 REALFORCE91UBK

気分が良い。かっこいい。本当はhhkbがよかった。

カルティエの財布

これじゃないけど。良いもの持ってるって思えるから小物の物欲クソ無くなる。ホント財布とかくだらん買い物だな、原チャ買えんぞ

ダイニングテーブル

これじゃないけどダイニングテーブルはあるともうセンターテーブルとかでは飯食えなくなる最高。ちなみにNOCEってブランド

名刺入れ

カルティエ高すぎてね。。カード入れとして使ってるけど名刺入れの代用出来て最高。名刺入れ単体とかいらね。

テレビ

マジで安いやつでいい。壊れないし、機能いらんし。

ケトル偽物

ドリテック 電気ケトル ラミン ホワイト PO-323WT

ドリテック 電気ケトル ラミン ホワイト PO-323WT

コスパヤバい。汚れたら捨てればいいやぐらいの感覚だったんだけど3年目。

ウォークマン

クソ使いにくいし最低なんだけど、SDいいね。

iMac mini

APPLE Mac mini (2.6GHz Dual Core i5/8GB/1TB/Intel Iris) MGEN2J/A

APPLE Mac mini (2.6GHz Dual Core i5/8GB/1TB/Intel Iris) MGEN2J/A

安いし、Windows買うならMac買った方がいい。ヤフオクでゴリ安のプロダクトキー買ってbootcanpでおっけい。

ノートパッド

1.5万ぐらいで買った。全然良くないけど、おもちゃと思えば結構遊べる。

セミダブルベット

シングル買うなら捨てるつもりで買いなさい。ちょっと大きいから一人暮らしはしんどいかもだけど寝具はデカイに越したことがない。意外に女の人の方が狭さでストレス溜まるのかもしれない。

ソファ

2人掛けソファ 幅115 ブラウン EJ-2107

2人掛けソファ 幅115 ブラウン EJ-2107

ニトリのやつ買った。本当は2人がけ良くないんだけど一人暮らしの時はおけないししょうがない。ソファベットになるやつだと友達来た時楽。

レターオープナー

これやばい。買わない意味がわからない。ストレスと綺麗さが全然変わる

ゴミ箱

アスベル Rジョイント分別ダストボックス3個セット (33L・33L・27L)

アスベル Rジョイント分別ダストボックス3個セット (33L・33L・27L)

いらないって人多いと思うけど、ゴミはなるべく綺麗にしまっておいた方がよい。気分がいい。オシャレなの買ってもいいと思うけど高さとか統一感があるもので揃えた方が絶対いい。

スポンジ

タダで貰えるものはダメ。結構固めの方がいい。

カビキラー

カビキラー カビ取り剤 特大サイズ 本体 1,000g

カビキラー カビ取り剤 特大サイズ 本体 1,000g

毎週排水溝にぶっかけるだけど風呂とか台所クソ綺麗。
不潔感がないのは超重要。ピンク色の風呂場の人必見。

アイスノン

アイスノンソフト

アイスノンソフト

あると酔い過ぎたときとか熱とか暑いときとか最高。

電動ドリル

クソ安いやつでいいから必ず必要。IKEAとかで家具買ってこれないと死にます。DIYと辛さそこまで変わらんです。六角ドライバはほしいところ

高級イヤホン

15000ぐらいだけどかなり最高。もう他無理だわ。

それが僕には楽しかったから

それがぼくには楽しかったから 全世界を巻き込んだリナックス革命の真実 (小プロ・ブックス)

それがぼくには楽しかったから 全世界を巻き込んだリナックス革命の真実 (小プロ・ブックス)

お金や地位じゃなく本当に必要なものは世界中の人が使えるようにするべきだって考えはぐうの音も出ないぐらい素晴らしいことだと思う。まっこの人お金も地位も持ってるんだけどね!

ワイヤレススピーカー

Creative D100 ワイヤレス スピーカー ブラック Bluetooth SP-D100

Creative D100 ワイヤレス スピーカー ブラック Bluetooth SP-D100

コスパヤバい。デザイン値段音質すごい。もう7年目。

【angular4+.NET Core】一瞬でSPAを作る

技術ネタ。

わかりにくいから他のサイト推奨。リンクは載っける。

angularの環境作るのだるくない?c#とどう連携すんの?って調べてたら一瞬でSPAテンプレート出来たのでメモ。

SPAプロジェクトの作成

SPA関連のテンプレート(.NET Core)をダウンロード

dotnet new --install Microsoft.AspNetCore. SpaTemplates::*

まじで.NETCore優秀杉

作成するプロジェクトのディレクトリに移動

cd {対象のディレクトリ}

angularプロジェクトを作成

dotnet new angular

.NETCoreきも

npmのパッケージをダウンロード

npm install

プロジェクトのビルド

webpack

webpackでビルドが通らない( webpackのconfigファイルがない場合)

webpack --config webpack.config.vendor.js

ここからvisual studioで取得してくれるので、不要

Nugetパッケージを取得

dotnet restore

これだけ。.NETすごくね?

【参考】
ASP.NET CoreでAngularをする下準備
http://blog.okazuki.jp/entry/ 2017/03/05/091710
.NET Core command-line interface (CLI) tools
https://docs.microsoft.com/en- us/dotnet/core/tools/dotnet- restore
Windows環境でangular-cliを使えるようにする
http://qiita.com/elphe/items/ 8e73d4118b26a6971c3b
http://beachside.hatenablog. com/entry/2017/02/25/150306

【ASP.NET MVC】MVC2とMVC3以降のバリデーションの挙動がちょっと違う

技術ネタ。

あまり知ってても知らなくてもどうでも良い技術ネタ。

web.configに以下のコード書くと勝手にバリデーションしてくれて便利だよ☆ってやつなんだけどMVC2MVC3の挙動が違いすぎて「は?」ってなった。

<configuration>
  <system.web>
    <httpRuntime requestValidationMode="2.0" />
  </system.web>
</configuration>

MVC2でquerystringに危険なコードが埋め込まれた場合は以下の500エラーが発生

System.Web.HttpRequestValidationException: 危険な可能性のある Request.QueryString 値がクライアント (="...T 1,NULL,'<script>alert("XSS")...") から検出されました。

MVC3だと普通に200オッケー。

バリデーションされてねーじゃん!って思っでquerystringからMVCにぶっこんでみたら500エラー発生。ちゃんと出来てる。。

ようわからんからいろいろ調べたらMVC3以降は.NETFramework4系に移行して挙動も違うんだと。
最新のHttpRequestValidat‌​ionExceptionがパラメータで検知した段階でエラーを出す仕様みたい。

まっ、普通に200でいいよね

【Angular4】[innerHTML]で埋め込んだタグのイベントを拾う方法

技術ネタ。電車でブログってるから技術ネタが書きづらい書きづらい。

angular4にて、innerHTMLで埋め込む必要があってaタグとかぶっこんでるんだけどイベントが取れない。

以下のようなコードを入れたんだけど普通に無理だった。

import {Component} from 'angular2/core';

@Component({
    selector   : 'sub-child',
    template   : '<form [innerHTML]="html"></form>'
})

export class SubChildClass
{
    private html:string;
    private buttonText:string;

    constructor()
    {
        this.buttonText = 'A new button';
        this.create();
    }

    private create()
    {
        this.html = "<button (click)='new() '>" + this.buttonText + "</button>"
    }

    private new()
    {
        this.buttonText = "Text Changed";
    }
}

余裕で(click)='new()がかき消される。

domでいろいろやれば出来るけどクソめんどいよって記事がstackoverflowにあった(英語だけどそんな感じで書いてあった、リンク忘れたから今度はる)んでクリックイベントを取ってそこから処理を書く方法に変更。

HostListenerってやつ使ってクリックイベント取ってdomる。

///宣言
import { Component, HostListener } from '@angular/core';

// clickイベントを宣言
@HostListener('click', ['$event'])

onClick(event) {
 //ここでいろいろ
}

いやー感覚でangular4いじってたけどこれは感覚じゃわからんかったー。angularくそおもしろい

参考
https://stackoverflow.com/questions/35210072/angular-2-add-events-to-elements-after-the-dom-has-been-created

駐禁放置しまくってたらヤバイことにならなかった話

駐禁3年間放置(無視してたわけじゃないよ!家に通知来なかったんだよ!)

経緯:
夜中の横浜で適当に車止める。

駐禁貼られる

キップはその場で切らない←これ絶対やらなきゃダメ!(最後説明する)

紙なくす

三カ月後、不安になり支払いに行くがめんどくさがられ家に来るのまちなと言われる

一年後、再び駐禁取られる

前回の駐禁に対して何も言われない

安心する

警察完全にミスってると俺完全大勝利を確信する

車検通らない

車検証が以前の住所(警察は探さないらしい

支払い←イマココ

延滞金が10万とか行くかなとガクブルしてググる。調べた結果、それなりで安心した。計算式は以下。
(罰金×日数×14.5%)÷365
俺の場合だと大体これ
(15000×1095×14.5%)÷365 = 6525
6525+15000=21525


結果、違反金は15000で済みました!

理由とか放置車両とかいろいろ理由があれば延滞金かからないらしい正直者が馬鹿を見るよ!!

この「正直者が馬鹿を見る」ってのがキモで駐禁のキップ切ると以下のようなことが起きる

駐禁取られてその場でキップ切る
→二点減点+15000の罰金

駐禁取られて家に来るまで待つ
→15000の罰金のみ

なんでかって理由はわからないけど、所有者以外が取られたのに所有者に減点させるのがおかしいとかそんなことだろう。

まぁ、どっちもおかしいんだけどな!