日本語でeBay商品が買い物できる「セカイモン」は果たしてどれだけお得なのか?
皆様、eBay使ってますか?(`・ω・´) 私は先日初めて使ってみました。購入周りでちょっとトラブルがあり、出品者とメールでのやり取りが大変でした...まあ、PayPalで英語の住所書いてなかった私が悪かったんですが。
さて、セカイモンの話。
今はECの広告の仕事やっている関係もあり、社内で他社EC関連の情報がそこそこ回ってくるんですよね。で、以下のようなニュースが舞い込み、セカイモンの存在を知ることとなりました。
セカイモン、eBay公認を謳っている通り、eBayの商品をそのまま買えます。
Webスクレイピングしているのかシステム連携しているか不明ですが、出品情報まで同じですね。全く同じ。これ見る限りだと、セカイモンのビジネスはECってよりeBay代行な認識ですね。
と思ったら書いてあった。
セカイモンではeBayでの検索結果から、日本に輸入ができないものを外して表示しています。
なるほど。
当然、直接eBayで購入するより商品金額は高くなります。出品者とのやり取りを代行している形なので手数料が間に挟まります。この商品だと5600円のものが9400円くらい。うーむ(´・ω・`)
一方、国際送料はセカイモンのほうが安いです。元が6300円の送料が4200円。送料安い理由はわからんですが、まとめて配送してもらって抑えてるのかもしれません。
トータルで見ると(この商品だと)、eBay直の11900円に対して13600円。
2500円くらいセカイモンが高くなります。販売者と直接英語でがんばるコストを考えてペイするかどうか。そこがマッチすれば使ってみるのはアリかもしれません。
他の商品も見てみる
Macbook pro
2017年モデルのMacbook Pro13。
eBay8.3万に対し、10.1万ほど。2万円くらい高いですね(´・ω・`)
iPhoneXR 128GB(Unlocked)
eBay10.06万に対し、12.1万ほど。
これも2万くらい高い。
HuaweiP30Pro 128GB
何かと話題のHuawei。eBay8.9万に対し、10.7万ほど。
これも1.8万とそこそこ高い。
The North Faceのパーカー
デジモノ以外も見ましょうか。
eBay側のセールも適用されるみたいです。これは50%OFF。eBay2.5万に対し、3.05万ほど。
これは5000円くらい高い。
手数料の率の法則性はあまり見えませんが、売れ筋の高額商品とかは手数料高めな結果になりました。_(:3」∠)_
結論: けっこうたかい
おいしい話はそこらへんには転がっていないものですね...
トータルだと、英語ちゃんと使える方にお金投資したほうが圧倒に安くなってしまう。
現実は非情であった。
わたしがほんとうにほしかったGolangはVだった
昨日、Vという開発言語の話が流れてきました www.pavlog.tokyo Golangを超えるググらビリティの悪いやつですね。
リリースされたばっかりの言語らしく。公式を見る限りドキュメントはしっかりそろっているので言語仕様はなんとなく読むことができました。 vlang.io
Golangっぽいなにかです。基本的な仕様はGolangに近しいですね。mutあたりはrustで見た記憶があります。
言語仕様を見る限りgoroutineもどうやら対応されているらしく、go {func}で実行できるようです。いいっすね。
個人的に気になっているやつはGenericsと、Access modifiers。enumも標準サポートいいぞぉ。
Golangでもできなくはないんですが、GenericsはDI的にオブジェクト突っ込み分けしないとできないし、Accessコントロールは先頭が小文字かどうかで決まるし、enumは結局constだしで、微妙に面倒くさかったんですよね(´・ω・`)
言語仕様シンプルなのはGolangのすごくいいところなんですが、稀に回り道している感が否めないときがありました。
さて、さっそくこいつを触って見るんですが、冒頭のの記事と同じようにビルドで死ぬ始末(ヽ´ω`) エラー内容見てみると、どうやらビルド内部でパスが固定されてるみたいっす。
/home/shinoyu//code/v/ not found. Run: git clone https://github.com/vlang/v ~/code/v
Makefileを見ても特に変な記述はないんですよね。
https://github.com/vlang/v/blob/master/compiler/Makefile
しかたないので、githubに書いてある通りに、固定でパスを切って対応してやります。
git clone https://github.com/vlang/v ~/code/v cd ~/code/v/compiler make
はい通るー。固定か、うーん。まあいいか(´・ω・`)
できあがったものは./v
で実行できます。が、いちいちパス指定するのは面倒なので、公式の仰せのとおりに/usr/local/bin以下にシンボリックリンク貼ってやります。
sudo ln -s ~/code/v/compiler/v /usr/local/bin/v
これでいちいちパス指定しなくてもvだけで実行することができます。
実行するとREPLが動きますね。
V 0.1.0 Use Ctrl-D to exit For now you have to use println() to print values, this will be fixed soon >>> println('hello') hello
はい。REPLだと今はprintlnしか動かないらしいっす(´・ω・`)ざんねん
ファイルに書いてそれを呼ぶ形式だとちゃんと機能します。とりあえずなにか動かしたい場合はv/exmapleの下にあるやつを実行すればOK。
v run example/news_fetcher.v ============running news_fetcher============================== [20275705, 20273125, 20272346, 20274679, 20275051, 20275097, 20276070, 20274475, 20275684, 20270309, 20274035, 20275225, 20270990, 20275929, 20270840, 20273446, 20274666, 20275238, 20268368, 20269376, 20273936, 20270800, 20264911, 20268974, 20271322, 20270805, 20273228, 20271779, 20271821, 20272557, 20270969, 20272692, 20269293, 20266566, 20270467, 20264999, 20260863, 20267790, 20265155, 20269626, 20263561, 20260741, 20260292, 20264987, 20254057, 20261823, 20266932, 20262031, 20264848, 20266641, 20270728, 20266606, 20268203, 20268935, 20272074, 20269057, 20267629, 20265751, 20266031, 20261529, 20271043, 20266450, 20266878, 20266463, 20265625, 20265031, 20272082, 20262695, 20267599, 20265632, 20268040, 20265141, 20262253, 20262176, 20264602, 20259850, 20269041, 20257990, 20268436, 20259862, 20263089, 20264943, 2026275
取り急ぎ最低限動かすところまで持っていったのでここまで。
次回はGolangでほしかったものがどこまで対応されているか書きたいと思います。(`・ω・´)
Makuakeでサポートしたキーボード「Taptek」が届いた
これです。(`・ω・´) www.makuake.com
これまで使っていたMajestic Minilaと同じくらいの大きさで半分の薄さ(下が今回のやつ)
持ち上げてみてもかなり軽い。カタログスペック的には500gくらいらしく、持ち運びする人には嬉しい重量。
打鍵感はとてもいい感じです。カチカチ感あるのと、軽く押し込んだだけで反応してくれるので軽やかな入力感ありますね。サイズが一回り小さいので誤入力が頻発していますが、じきに慣れるとは思います。
バランスが取れていて非常によいキーボードです。14000の価値十分にありますね!
こいつで一番オススメなのが、プロファイルを3つまで登録できるところですかね。
家でWindows, 外出Linux、会社Macの環境でもう一台のMinilaを持ち歩いて使っているんですが、前使っていたMinilaだと直近繋いだところを優先的につなぎに行くので端末切り替えるときが地味に面倒だったんですよね。結局つなぎ直さないといけないという。
その点こいつは、Fn+1-3キーで端末切り替えられるので手間が省けていいっすねー。
あとは有線とBluetooth両対応なのがいいです。メカニカルで両対応のキーボード数少ないんですよね。
概ね利用感には満足なんですが、使ってて気になったところがいくつか(´・ω・`)
- Fnキーが左下に鎮座し、その右にCtrl
- ここはCtrlがいてほしい(´・ω・`)
- めちゃくちゃ押しづらいので、caps lockにCtrl割り振って使うことに
- 傾斜がない
- 筐体を薄くするためだとは思うんですが、キーボードの裏面にあるあの傾斜がないんですよね(´・ω・`)
- 小型なので大きく問題にはならないんですが、やはりこれまでと感覚変わるので違和感。
- バックライトカラー変更キーを誤爆しやすい
気になっているのはこれくらいですかね。まだ一日も使ってないので継続して触ってみましょうかねー。
独り言チャンネルのすすめ
Slack使ってる人は今すぐできる。やろう。
かなり前の話ですが、こんな話題がありました。
世間的にはTimesで名が通っている分報。 恥ずかしながら、これ知ったの昨年末くらいでした(´・ω・`) その時はまだ有用性に気づいてなくって、「ああ、こんなやり方やってるところもあるんだなー」と感じたくらい。
私、今副業でお手伝いしている会社がありまして、そこでは他にも副業エンジニアとしてJoinされている多くのメンバーがいます。 副業先のSlackでは副業エンジニア用のパブリックチャンネルが用意してあって、そこでいろいろコミュニケーションしてます。そこで「稼働します」と表明して作業開始!みたいな運用ですね。
とある副業メンバーが、稼働スタートのスレッドにリアルタイムな作業の進行状態とか調べた内容とか、お気持ちを書いていくんですね。そこで出てきた話題に対して自然に社員とか他副業メンバーがコメントしていく。
あれ?これ意外とすごいんじゃない?という気持ちが湧きました。今その時困っていること、確認したいことを気軽に投稿でき、コメントする方も流れで背景とかがわかるので気軽にコメントしやすい。 人の質問に対してコメントするのって、相手の状況とか鑑みなきゃいけないので結構考えちゃうじゃないですか?独り言で状況が流れているならそれみれば良いので、レスポンスのスピードも上がる。
独り言書く方からみても、あくまで自分の気持ちとか考えを書いていくだけなので、見る人のことを意識する必要がないんですよね。だから正直に困ったことをかけるし、わからないことを分からんと言えるわけです。
各メンバーの善意で成り立つコミュニケーションから、お互いが抱える問題が自然に解決していく。すごく良い活動だと思います。
あと、個人的に一番有益だったのは作業のログを残せることですね。 作業している時の思考って、後から結構思い出せないんですよ(´・ω・`)ブラウザのタブを大量に開く癖のある人はわかるかもしれないんですが、その時何調べてたか覚えてないんですよね。なぜそれを調べようと思ったのか、何が困っていたのかを、あとから振り返ることは難しいんですよねぇ。自分だけ?
これが独り言を書いていくことでクリアになる。あとから調べたことをブログにするとかどこかに投稿するとかなったときでも振り返りやすく、改めて調べ直すこともする必要がなくなる。全てはそこに書いてあるからだ。
こういう気付きがあり、自分も 率先して独り言と言う名の分報を書くようになりました。
まだ試してない方、一度試してみましょう( ・`ω・´) おすすめです。
golangでoverrideを実現するためには
golangは継承がない言語ではありますが、メソッドのオーバーライドを行うことができます。
embedded使います。 本来はinterface定義して解決した方がいいんですけども、使っているパッケージでinterface定義されていないやつのMock作るとき等、これで解決しないといけなさそうなケースがありました(´・ω・`)
// embeddedされる側 type BaseModel struct { Name string } func (b *BaseModel) Talk() string { return fmt.Sprintf("name is %s", b.Name) } func (b *BaseModel) Action(in string) string { return fmt.Sprintf("%s, actively %s.", b.Talk(), in) } func NewBaseModel(name string) *BaseModel { return &BaseModel{ Name: name, } } // embeddedする側 type ModelA struct { BaseModel ActionName string } // Actionだけ定義してBase側を上書きする func (m *ModelA) Action(in string) string { return fmt.Sprintf("%s, %s %s.", m.Talk(), m.ActionName, in) } func NewModelA(name, action string) *ModelA { model := &ModelA{ BaseModel: *NewBaseModel(name), ActionName: action, } return model }
な定義があったとして、
package main import "fmt" func main() { dog := NewBaseModel("bog") fmt.Println(dog.Action("run")) cat := NewModelA("cat", "selfishness") fmt.Println(cat.Action("run")) }
で動かす。
name is bog, actively run. name is cat, selfishness run.
期待通りの動作はする。うーん、単純なものならこれで動くのか。
例えば、外部にリクエスト投げるモジュールがあったとして、そいつの送信部分だけ外部に送らないようにする処理で上書きしてやれば、Mock化が簡単にできそうな気がします。
ただ、上記で上書きしきれないパターンがある
今仕事でやってるFirestoreの実送信部分。上書きしたはずが、上書き元が呼ばれてしまうんですよね。
直接オブジェクト作ったところで呼ぶ分には期待通り動きそうですが、メソッドのレシーバーでembedded元が指定されているとそっち呼んでしまうのかな(´・ω・`)あとで検証しますか
多分この[メソッド定義とメソッド呼び出しの真実]あたりが、embedded側が呼ばれる原因なのかもしれません。
ローカルにいっぱいあるgitリポジトリの管理を考える
これまであんまり意識せずに適当なディレクトリにバカスカcloneをかけていたわけですよ。 複数のリポジトリ触ることがあんまりなく、ほぼ1つのリポジトリだけで完結する日々。まあモノリシックなRailsをメインの仕事にしている私にはそれで十分だったわけです。
話は変わって、今年に入ってから本格的に副業始めました。知り合いからちょっとしたチケットをもらってお小遣いを稼ぐ、という活動はやってましたがお仕事として本格的にコードを書く日々に突入したわけです。
現場はmicroservice的な複数リポジトリでサービスを管理している会社で言語はGolang。必然的にGolang的なディレクトリ管理が必要になってきます。となると、これまでの無秩序カオスな管理方法だとストレスマッハなのです。あれ?あれどこいったっけ?あれ?
最初は、普段使っているPecoのブランチ一覧選択よろしく、GOPATH以下を適当に抽出して選択する方法を取ろうとShellを書いていたわけなんですが。やはり先人の知識、すでに同じようなことを解決している方が当然いらっしゃるわけですな(`・ω・´)
ghq。そういえば昔この記事見て試そうとしていた記憶が呼び起こされます(´・ω・`)なんでやらなかったんだっけ?まあいいか。
早速これをセッティングしていきます。Golangのスクリプトですが、homebrewにもあるらしいのでこっちで入れます。
brew install ghq cat <<EOS >> "$HOME/.gitconfig" [ghq] root = ~/src EOS
合わせて環境変数GOPATH=$HOME
を設定しておきます。これやっておくとghqでGolangのものもghq list
されるようになります。強い。
ただ、これだけだとghq list
した結果をgrepするなりの作業が必要になってしまうので、peco等のインクリメンタルサーチツールで挟んであげます。
ghq list --full-path | peco --prompt "[find repository]" --layout=bottom-up
個人的にpecoには--prompt付けたい派です(`・ω・´) 上のコマンドにエイリアス貼るなりzleでキーバインド設定したい等あればお好みでどうぞ
ようやくこれでまともなリポジトリ管理ができるようになれそうです。
個人的にQOLを上げてくれるものたち
タイトルどおり、我が家で使っていて便利なものを雑に紹介します。 誰得ですが、いいぞ。
スマホの防水ケース
https://www.amazon.co.jp/gp/product/B073D6NNVD
一年くらいヘビーに使ってますが(主に嫁が)これといって問題なく使えてます。
風呂でもスマホ触れるのつよい。自分は結構拒否感あって使ってなかったんですが、積んでる電子書籍消化したくって長風呂ついでに使ってみたところすごく快適でした。
指紋認証と書いてますが、効いた試しがありません_(:3」∠)_風呂入って水滴ついてるせいでしょうか。
ネスカフェ ゴールドブレンド コク深め カフェラテ用
https://www.amazon.co.jp/gp/product/B075D831SB
スーパーの一角で稀に見る商品。よくおいてあるのはBossのラテベースですが、それよりこちらの方が豆のコクがあって重宝してます(`・ω・´)
ミルクとこれがあれば手軽にカフェラテっぽい何かが飲めます。さすがにちゃんとしたエスプレッソで煎れたものより味は落ちますが、手軽に飲むにはこれくらいがちょうどいいです。
1本で12杯。ミルク1杯250ml利用と仮定すると、大体60円くらいでしょうか。スタバの1/7くらいで一杯飲めます。オススメ。
黒烏龍茶のパック
https://www.yodobashi.com/product/100000001003599690/
自分が買ったのは、肉のハナマサにある同型品、だったと思う。
値段も400円程度で52パック入りだったはず。これ使う前は3日に1回くらい、烏龍茶のペットボトル買ってたんですけど、煮出すようにするとだいぶ出費減りました。1lのお湯に1パックいれて1時間くらいがちょうどいいです。
どうでもいいんですが、手軽に手に入るペットボトル烏龍茶、ローソンのプライベートブランドが一番おいしいと思います。サントリーのOEMなんですけど、どうして本家より飲みやすいんでしょうね(´・ω・`)謎
これも3日に2lで170円くらいだったものが、煮出しで、8円+ガス水道代で大体20円行かないくらいでしょうか。2l作っても40円行かないので、1/4-1/5くらいの出費ですね。
とりあえずこんなもんですかね。今後もなんか良さそうなものがあったら書いていこうと思います。参考になれば。