「デプロイ」を含む日記 RSS

はてなキーワード: デプロイとは

2021-06-17

CTOだけど、一ヶ月Web就職レビューしてみた。

https://anond.hatelabo.jp/20210617075257

0. 温度感

基本的現在では、バックエンドフロントエンド運用保守全てができないエンジニア価値は無い。

経験者でも、これらができない/わからないのは、相当恥ずかしいことだと思った方がいい。

典型的はてなー意識の高さ。

上がってるような基本(元増田に上がってるやつの倍ぐらい)が全部立ち上げからできて

2〜3個プロジェクト経験したらテックリード素養が既に身についてそう。

まり、ただのエンジニアにはそこまで要求されない。

プロジェクト的にもどっちかが弱いと

Rails/DjangojQuery+Bootstrapみたいな構成

Amplify/FirebaseにVue/Reactみたいな構成全然あるので

フロントバックエンドも一旦はどっちかでいい。

面接はなんとか抜けてもらうとして、

チーム開発での最低限の目標としては、

成果物から指導学習コストレビューコスト技術負債マネジメントコストを引いた分が正になっていれば

ひとまず「チームに居ていい人」と見なされそう。

チーム的に良くても、経営層にそれで許されるかはわからんのでその辺の立ち回りも上手いことやるとして、

一旦は、正の生産性を目指してほしい。

以後、ブコメで誰一人一ヶ月でできるって言ってなくて笑うので、

一ヶ月というのは無視して、三〜六ヶ月程度をイメージしつつ書いていく。

1. 言語: PythonJavascript

これだけで一ヶ月経つ気がするが正気か。

似たような言語なのでどっちからやってもいいし、両方同時にやってもいい。

どっちかしかやらないならJavascriptおすすめ。後ででてくる、Flaskは適当Expressかに置き換える

現場だとほぼTypescriptなので、Javascriptはある程度慣れたらTypescriptに移行したほうがいい。

どちらも、Python2とES2015以前の記法というレガシーネット上に転がってるので参考にしないように注意。

パッケージ管理単体テストタスクランナー

この辺は6のフロントフレームワークと同時にやる。

コードは断片的なサンプルではなく

一貫性があって

・正しい書き方がされた

お手本プロジェクトをなにか(github書籍など)で手に入れて読むべき。

おそらくフレームワークに乗っかっているので並行して進めることになる。

6. フロントエンドフレームワーク: Vue.js

話の流れで先にこっち

現在コーディングのグッドプラクティスデザインパターンフレームワークの形をしている。

なので、ReactとVueをその思想から理解しきれれば、プログラミング言語の潮流の最先端に追いつけるはずだ。

とはいえ最低限としては使い方が分かるところまで。

TypescriptVue.jsも書き方をどこまで取り入れるかが使用者裁量に任されてるし、

開発でVueとReactのどっちを使うかはチーム次第なので、

一旦React+Typescriptガチガチに書かれたコードプロジェクトを拾ってきて、必死で解読するのがいいと思うなー。

2割ぐらいわかった気になればチーム入ってから(React, Vueどちらだったとしても)動けそう。

パッケージとかテストタスクデプロイ辺りもこのタイミングで拾ってきたプロジェクトを使って学ぶ。

2, 4. ツール: gitDocker

バージョン管理コンテナ思想が優れているのは自明なので、これらはツールと見ていい。

そして、後からプロジェクトに入った人がプロジェクト流儀に沿って使う分には難しいことはなさそう。

採用に来た人がgitとかわかってるとチーム開発経験者だなーって思うし、知らないと未経験者なんだなーって思うし、

そういう意味ではチーム開発の経験があるかどうかの試金石にはされてそう。

構築できる、ではなく、触れる程度で良さそう。

gitプロジェクト流儀によると書いたが、git-flowイメージ図を理解して運用できるのがよい。

https://qiita.com/KosukeSone/items/514dd24828b485c69a05

3. OS: Linux

これは「パソコンの使い方わかってますか」ぐらいの温度感

ファイルパーミッションユーザープロセスのような基本概念理解する

一冊読めば済むだろうし、概念系はさらっておいてほしい。

grepやfindやxargsなどのコマンドを組み合わせて簡単な処理を自動化する

こういうのができるんだなーって言うのを知っておいて、調べつつ書ければ十分。

sedとか正規表現も。

あとはシェルスクリプトとかって思ったけど同様のことはPythonでもできそう。

IPアドレスを調べたり、SSHリモートマシンログインする

地味にSSHログインした先の環境だと、vimが主要なテキストエディタになるので

vimを最低限触ることだけ要りそう。もういらないかもって思ってたんだけどなー。

ファイル開いて入力モードに切り替えて書き込んで保存して終了

チュートリアルする。拡張とかはいらない。

細かく書いたが、LPIC-1の範囲がほどよくまとまっているのでそっちを参照するとよい。

5. サーバーフレームワーク: Flask

フレームワークを覚えること自体重要なのではなく、Web開発の基本を習得することが重要

これが意図なら

HTTPルーティングデータベースSQL認証セッション管理などは当然すべて覚える。

この辺の機能を持った小規模Webアプリを作ってHerokuデプロイすれば一旦完成とみなしてよさそう。

コード書き写しただけにならないようには注意しつつだけど、長く見て5人日ぐらい?

慣れると1日あればいけると思う。

フレームワークもなんでもいい。

軽量である必要もなくて、

Djangoとかでも各コンポーネントがどんな働き方してるか程度はわかるだろうしそれで十分。

余力があれば複数個触ってみたり、人から勧められたらそっちでも。

最近サーバーレス&NoSQL流行ってるのでFirebaseとかもやればいいと思う。

7. アルゴリズム

コメントリーが荒れててウケる

実務プログラミングで最低限必要アルゴリズム力は

「書いてるコード計算量オーダーを把握していること」

に尽きる。

計算量を気にしなかったせいで線形検索メソッドとfor文を組み合わせて

O(n^2)やO(n^3)のロジックを書いてしまって

データ量が万〜十万の本番データで遅延するとか

それらに対して分散や非同期処理で解消しようとするとか、

ちょっとでもアルゴリズムを触った人ならアホらしいなって思うような行為

アルゴリズム不要勢は平気でやるぐらい、両者は溝が深い。

計算量を意識するだけなら、AtCoderABCのC〜D問題辺りが解ければ十分。

8. セキュリティ

有名な脆弱性攻撃手法は、ほとんどフレームワーク等で解決手段が用意されている

(XSS対策自動エスケープなど)

のでアドリブをせずに正しい書き方でやれば良い。

開発現場でもセキュリティリスクがある箇所を1から自前で実装することを経験が浅い者にはやらせないので、

ただただ、フレームワークが正しいとしているやり方をなぞるのが良い。

最後

開発の勉強のやり方としては、

・正しいコード見本を手に入れること

公式リファレンスを読むこと

エラーメッセージを読むこと(そしてググること)

この辺りの習慣があればやってけんのかな、

その他、チーム開発って面では

アジャイルサムライプロジェクト管理)とか

TeamGeek(人間性)とかインプットしておくと共通言語が増えて嬉しい。

この方向で進めてけば、その途中で正の生産性≒足引っ張らないぐらいになれるので、

そしたらやってけるんちゃうーって感じ。

経験から1ヶ月でWeb企業就職する勉強法

取り上げた技術は、本格的な開発でも役に立つもので、最も学習コストが低いものを選んだ。

重要度が低いものは載せていない。たとえばHTMLCSSなんてググりながら書けば全く問題ない。Bootstrapなどのフレームワークも全くやる必要はなく、仮に就職先で使っていたら覚えればいい。

逆に言えば以下に挙げる技術は、そもそも概念自体プログラミングにとって普遍的ものであり、(基礎的な部分を)調べながら使うようではエンジニア失格ということ。

基本的現在では、バックエンドフロントエンド運用保守全てができないエンジニア価値は無い。

以下に挙げた技術(①⑤⑥は他の言語フレームワーク代替可能)が身に付いていなければまともな企業就職することは難しい(もちろん、下らない業務システム下請けで作ってる底辺企業には入れるだろうが)。

経験者でも、これらができない/わからないのは、相当恥ずかしいことだと思った方がいい。

特定言語フレームワークの書き方を知っていること自体意味は無い。

重要なのは、他の言語フレームワークにも共通する基礎を理解すること・保守性やセキュリティなどの品質を高める使い方ができること。

PythonJavaScriptマスターする

この2つは習得が容易だし、今覚えておけば向こう10年腐ることはないだろう。

プログラミング言語完璧理解する必要がある。

基本的な構文や、よく使う標準ライブラリは勿論、高階関数クラス・非同期処理等の発展的な機能も知り尽くしていなければならない。

言語のみではなく、パッケージ管理単体テストタスクランナー等の周辺ツールの使い方も熟知している必要がある。

また、「リーダブルコード」や「コードコンプリート」に書いてあるような良い作法も身に付ける必要がある。


Gitの基本操作を覚える

Gitを使えないのはプログラマーとして論外。細かい機能は調べればよいが、

等の基本的フローは必ずできなければならない。


Linuxの基本操作を覚える

多くの場合、本番環境テスト環境Linuxサーバーであるから、以下のような基本的概念と使い方を知っておく必要がある。


Dockerの基本操作を覚える

環境構築、CIデプロイなどは、現在コンテナを使って行うことが当たり前になっている。

これも細かいことをすべて覚える必要はないが、Dockerfileの書き方や、docker-composeの使い方などは知っておかなければいけない。


⑤ Flaskを覚える

Flaskは、数あるWebフレームワークの中で最も簡単。本当に呆れるほど簡単で、Pythonさえ書ければすぐにアプリを作れる。

フレームワークを覚えること自体重要なのではなく、Web開発の基本を習得することが重要HTTPルーティングデータベースSQL認証セッション管理などは当然すべて覚える。

データベースは、就職したらMySQLPostgreSQLなどを使うことが多いかも知れないが、今はPythonの標準ライブラリにあるSQLite3を使えば十分。

作ったアプリを公開したければ、「Heroku」などにデプロイするのが良いだろう。

追記 2021/06/17 14:07

ブコメで指摘をいただきました。HerokuではSQLite3は使用できないようです。公式ドキュメントに従ってPostgreSQL使用して下さい。

SQLite3はファイルデータを持てる簡易DBなんだけど、Herokuデプロイしてもストレージ的な使い方はできないから、結局PostgreSQLを使う必要あるから注意してね。(DAOを丸ごと書き換える羽目になる)

参考: https://devcenter.heroku.com/ja/articles/sqlite3

ありがとうございます

Vue.jsを覚える

今の時代フロントエンドフレームワークなしで作るのはただのバカ

2021年現在実用的なフロントエンドフレームワークはReactとVueしかない。Vueの方が少し簡単なのでこちらを選んだが、JavaScriptをしっかり理解しているなら大差は無い。

フロントエンドには膨大なパッケージ群があって全部覚えるのは大変だが、とりあえずまずはVue完璧に使えればいい。Webpackの設定などは既存のものを流用すればいい。



基本的アルゴリズムを学ぶ

アルゴリズムは全てのコンピュータ技術の基礎であり、絶対に知っていなければならない。

高速フーリエ変換のような高度な数学必要ないが、クイックソート木構造のような基本的アルゴリズムは当然、その性質を知っていなければならない。

それらは言語組み込み関数や標準ライブラリでも使われており、理解していなければ、それらの機能を正しく使うことができない。

また、プログラムを読み書きする際には、そのコード計算量を見積もれなければならない。

セキュリティを学ぶ

セキュリティは言うまでもなく学ばなければならない。

有名な脆弱性攻撃手法XSSSQLインジェクション・CSRFなど)が何だか理解していて、その対策実装できなければならない。

各種暗号化技術署名などについても、実装の詳細は知らなくていいが、共通鍵暗号や公開鍵暗号などの特性理解する必要がある。

認証パスワード管理などを実装する際は、当然ベストプラクティスに従わなければならない。

2021-06-10

日本の古き良きIT企業退職して3年がたった

3年前、世間一般にはメーカーSIerとして知られている会社退職した。ただ俺のポジションパッケージソフト開発であり純粋SIerとは異なる。

客ともSEとも会話せず、ひたすらドキュメントプログラムを書く部署だ。といっても別にペーペーではなく主任クラスであり、

会社の業績がとてもよかったこともあり年収1000万弱はあった。35歳。

これだけ見るととてもいい待遇に見えるだろう。でも耐えられないことがいっぱいあった。

Linuxで動くアプリなのにVMを動かすのも苦労する8GBしかメモリのないWindows PC、紙にコード印刷して説明しないと納得しない品質保証部、

作業実施Excelにチェックを付けていくテストjquery一つ使うのに3ヶ月かかる承認フロー、開発中にバグを一つ出すごとに

ひたすら反省文を求める品質保証部と一緒になって詰めてくるマネージャー、常にコンパイルできないtrunk、

Java 5の時代から進化しないコード、使いにくい社内ミドルウェアの利用を強制される設計、開発期間の半分以上を占める最上設計

一旦書いたコードは消してはならずコメントアウトしないといけないコーディング規約など、数を上げればきりがない。

色々改善活動を頑張ったものの、結局Subversionの導入も品質保証部がついていけないから、ということでClearCaseといわれる

今ではほぼ誰も使ってないであろうバージョン管理ツールが使われ続けることになった。使いにくい社内ミドルウェア

研究所がその道のプロと聞いたので一緒に改善を図った。そしたらRubyしかいたことがない文系新卒の子が出てきた。

一応研究所の人だし…と思って新バージョンプロトの開発を依頼したら、1分以上稼働できない状態になって出てきた。

研究開発は準委任相当なのでそれ以上修正を依頼できずに期間が終わった。

また前の会社独特の文化として、大きなバグを出した開発者反省会(社内ではとある固有名詞で呼ばれている)があった。

この反省会のターゲットになった開発チームはその資料準備で開発が1〜3ヶ月ほど止まるほど大掛かりなイベントだ。

このとき担当品質保証部は「連帯責任から」という理由資料レビューに大変な精を出す。余計なお世話だ。

このため1020ページほどの資料を毎週レビューにかけて最高のものにしていく。でも結局本番では幹部からの怒号が飛んで終わりである

連帯責任かいっていた品質保証部は幹部と一緒になって詰めてくる。連帯責任ではなかったのか。

幹部によると、この反省会があるから今の会社があるんだそう。これを経験して一人前らしい。

こんな感じで開発の体制はひどかったが、世間一般ではホワイト企業と見られている通り有休は取りやすかった。

そのため、転職活動を始めた。そしたらなんと「メモリ32GBのマシン」「mavenが気兼ねなく使える回線」「自動テスト

GitHub」「CI/CD」 という発言ポンポン出てくる。メルカリだのGoogleだのといったイケイWeb系ではなく、

いわゆるSIerでもだ。最初は何だこの格差はと思ったが、まぁ営業トークなんだろうな、と思い直した。というわけで

ケイWeb系も内定は出たものの、つい安定をとってしまい某大企業のDX系の部署転職した。

そしたら何だこれは。最高スペックMacBook ProからGitHubpushするだけで自動デプロイで即サービスイン、

問題が発生したら社用携帯に通知が飛んできて、クラウド監視サービスログをチェック、即修正デプロイ

社内の連絡はSlackで、スタンプを押せばIssueがたち即関連部署対応に走る。OfficeツールGoogle Docsで、

計算表はちゃんと表として使っている。開発者ちゃんと開発をしており、反省会の準備や品質保証部の接待なんて業務はなく

純粋エンドユーザーだけを見ている。ここはなんて最高の環境なんだと歓喜した。また個人的にはおまけ程度であるが、

年収は30万ほど増えて大台に乗った。

さて、それから3年がたった。人間というのはい環境になれると対して喜びを感じなくなる、というのはそうだと思う。

今では別にdeployブランチマージされたらCIが走って自動テストが走りデプロイされるのも、だから何?

って感じだしま普通仕事として淡々とやっている感じはする。待遇面で悪化した点もちらほらあるし

(例えば年間休日が5日ぐらい減った、残業が月5時間ぐらい増えたなど)などもある。

ただ一つ言えることは前の会社には戻れないな…ということである人間一度生活レベルを上げてしまうと下げるのは

とても苦痛に感じてしまものである

ただ、一つだけ今の会社転職してよかったと感じ続けられることが一つある。それは人だ。

前の会社では家でプログラムを書いているなんていった日にはおちょくられたり、人生楽しいの的な目で見られたりした。

芸能人ゴルフの話ができないとコミュ障扱いされた。そのため仕事の話はしても、飲み会にはできるだけ行きたくなかった。

でも今の会社では雑談としてFastlyが落ちても大丈夫CDN構想とか、AtCoderの話をして盛り上がることができる。

ダイバーシティなんていうが、人間所詮同質な人間同士で集まったほうが快適なんだな・・・という複雑な思いを抱いている。

追記

皆さん読んでくれてありがとうございます。いくつか質問が出ているので答えられる範囲で答えます

真面目な疑問なんだけど、Java5のコード書いてる人を1000万で雇う会社があるの?どういうモチベーション??

製品自体90年代から脈々とバージョンアップしている企業向けのソフトウェアなので、コードベースが古いというのがあります

またユーザーからすると中身がJava17だろうがJava5だろうが関係ないわけで、要は業務が滞りなく進めばよいわけです。

そのため昔から受け継がれたスパゲッティコードを地道に解き明かし、新しく出てきた要件を今までのコードベースを壊さずにバグなしで追加していく、

もとからあったバグについては、その他の数百万行のユニットテストもないコードに影響なしで修正を施す、といった技能必要になります

こう考えると意外と希少なスキルなんだな・・・と思えるかもしれません。

clearcaseよりもsubversionの方が100億倍導入も運用簡単だと思うんだけど品管どうなってんの?

ClearCaseご存知な方がいるんですね!一から作る製品だとSubversionのほうが簡単かもしれません。ただ、ClearCase専用の

社内ツールがいくつかあり、そのツールで出力した情報を社内資産として持っているという理由があったりします。

例えばお客さんから「この機能バグってるっぽい」というクレームを受けた際、その機能周辺の情報をそのツールから検索し、

コードレベルで再発防止策を関係部署総出で練った上でお客さんに回答する、という運用フローになっています

そのため、Subversionに変えるためには開発陣の一存では無理で、品質保証部やマネージャー層など全ての知識アップデート

必要になり、そこまでコストをかけて説得して回る必要はあるのか・・・という話になってしまうわけです。

ただ、社内の生産性を向上させるのが目的部署としてはSubversionGitを社内に浸透させたがっているのも事実で、

新規プロダクトなんかはGitを使っていました。ただしGitHubプロキシでアク禁されているだけでなく、サービス名名指しで使用禁止

になっているので、相当の理由がない限り使えないかと思います

主任クラスでも1000万円近くもらえるのか。すごい。

1000万という数字に興味のある方が多かったので参考までに書いておくと、等級ランクというもの存在して管理職を除く最上位のランク

なると2人の子持ち、賃貸住まい、標準評価で大体900万になるという感じです。年功序列だが部署ごとに違うというイメージで、

研究所だと20代で到達する一方、利益を上げていない事業部や間接部署だと定年間際まで到達しない人も多い、ぐらいの感じです。

平均では30代中盤ぐらいでしょうか。

ちなみに私の場合は基本給は33万程度ですが、そこに裁量労働手当と住宅手当、家族手当がついて月給で50万を超えるぐらいでした。

ボーナス個人評価よりも部門業績に大きく左右されるのですが、部署が最高評価場合は夏冬とも150万以上でした。

最後最後ダイバーシティについては、ダイバーシティ勘違いしているように思う

なるほど、たしかに。ちょっと言葉の選びが悪かったかもしれないですね。

2021-05-14

金曜だー!

2年がかりのプロジェクトデプロイ終わったー⛑

初めてリモートデプロイしたけど予行練習を3回くらいしたおかげで無事完了😘

飲みに行けないのは残念だけどプレミアムモルツでひとり打ち上げします🍺

コロナじゃなくても飲みに行く人いないんだけどね😥

2021-04-14

何日もDocker勉強中なのってどういうこと?

Get Startedまでやったら、あとは実際に定義書いてデプロイしてみるだけじゃないのか

それとも概念や基本をなぞって使うだけでなく、かなり深い部分まで理解を深めようとしているのか

2021-03-29

AWSデプロイで15分くらいかけて

「こんな感じですぐに作れます簡単でしょう?」とかいってきた女性エンジニア

自分の使ってるVPSなら30秒なのだ

ワロス

2021-03-27

anond:20210327174232

1分以内にデプロイできるVPSとかAwsつかうとええで

まあそこまでして検証する不便はかんじてないんだが

2021-03-22

anond:20210322191433

何かのWebサービスの秘伝のタレと化したデプロイを担う仕事とか?

技術負債の返済が終わったら失職する定めなのが哀愁あるよね

高知能者向けの定型業務仕事ってないのかな

定型業務仕事は日々責任時間に追われて正解のない問題に取り組み続けなきゃいけないのがしんどい

かといって定型業務仕事は中~低知能者の労働者マジョリティコミュニケーションしんどい

(べつにバカにしているわけでなく、むしろこちらがマイノリティ障害者っていう自覚はある。IQに差があると会話が成立しづらいって話よくあるよね)

高知能者向けの定型業務があれば迷惑をかけずに済んで三方良しと思うんだけど

いか

---

追記

なるほど、リファクタリングマンデプロイマンは良い線行ってるかも

まあそういうのって社内の手が空いてる誰かが自然となるやつであって、改めて新規人材募集するようなモンでもなさそうだけど

2021-03-18

始めてwebアプリケーションをつくった。

といってもどこかにデプロイしたわけではなく、VirtualBoxwebサーバーを立てて、ホストOS側のブラウザから開き、入力からURLを渡していろいろするだけだが。


正直、かなり楽しくてうれしい。

コンピューターがやっぱり好きだなあと思った。

2021-03-11

アダルトアフィリエイトで稼ぐということ

はじめに

アダルトアフィリエイトサイトの構築を開始したのが2020年3月中頃で、あれから一年が経とうとしている。

仕事の合間に時間を見つけながらチビチビ構築をはじめ、何度も挫折を繰り返し、2020年11月頃になんとかリリースし、現在はそこそこのアフィリエイト収入を得られるようになったので、回顧がてら流れを書こうと思う。

構想・企画

副収入を得たい、と考えていた当時、ぱっと思いついたのが収益Webサイトの構築だった。

本業システム関係なので技術的な部分はそこそこ分かる、しかし実際にWebで稼いだ経験はない。

いろいろ調べていくうちに、「アダルトアフィリエイトは稼ぎやすい」という記事をよく目にした。

性欲は人間普遍的欲求でありその需要は尽きることはない。僕はアダルトアフィリエイトサイトを構築する方針にした。

収益Webサイトを構築する場合、当たり前だけどまず最初収益モデルから検討すべきだ。

Webサイト収益形態としては、ざっくり言うと「クリック報酬広告」「アフィリエイト収入」「ユーザー直接課金」がある。

クリック報酬広告」は訪問者がクリックするたび収入が発生するが、それなりの収入を求めるなら莫大なPV必要になる。

アフィリエイト収入」もそこそこPV必要だが、最初からアフィリエイト意識したサイトを構築するだけであれば、そこそこのPVでもそこそこの収入が入ると踏んだ。

ユーザー直接課金」はPVがそこまでなくても成立するが、課金したいと思えるコンテンツ提供できるかというと自分には難しい、と判断した。

僕は「アフィリエイト収入」をベースとする、アダルトアフィリエイトサイトを構築することにした。

構築準備

本業技術職のクセにコードをイチから書くのが嫌だった僕は、高速WordpressKUSANAGI使用することにした。

名前ドットコムで安いドメインを取得し、AWS無料枠にKUSANAGIデプロイし、レスポンシブ対応の高速無料テーマであるLuxeritasを採用し、CloudFlareも導入。

金がほとんどかからないのに表示速度は爆速、という鬼の布陣である

また、WordPressなら投稿処理をある程度自動化できる。

世のアフィリエイター達は商品が売れるように丹精を込めて記事を書いていたりするが、そんなもの糞喰らえだ。

Pythonコードを書いて既存サイトからスクレイピングして、加工して、Crontabで自動投稿する。これに限る。

KUSANAGICentOS)には既定でPythonインストールされているので、pipで必要パッケージを追加。

さて、環境は整ったのでコンテンツ作成に取り掛かろう。

最初の失敗

アダルト界の巨塔といえば「Xvide**」や「Pornh**」だ。

世界一アダルトサイトたちからスクレイピング動画を取得し、こちらのサイトを充実させようと考えた。

しかし、ここは無修正天国なので、不用意にスクレイプして無修正動画を載せてしまうと日本では即オナワだ。

考えたのが、モザイクあり動画のみを載せているチャンネルから動画を選定して取得しよう、という試み。

とあるチャンネルでは、動画タイトルFANZAの品番が入っていたりしたので、その品番をキーワードに更にFANZA側でスクレイプし、紹介先ページとして整理できると思った。

収益モデル最初に考えておく重要性はここにある。どういうコンテンツサイト掲載し、どこの商品ページから購入してもらうか?

この流れの整理がついていないと、いいサイトを作ったとしても収益化は実現できない。

「Xvide**」に極上にエロい動画があってそれを自分サイト掲載したとしても、その商品情報が分からなければ商品紹介も出来ないわけである

僕は、動画タイトルの品番から商品特定して紹介する方法であれば、サイト収益化していけると思った。

ところが、自分の考えが甘かったことを知ることになる。

まず、「Xvide**」や「Pornh**」は、違法アップロード天国であるがゆえに、動画削除依頼により次々と消される。

こちら側で取り込んだ動画の死活判定を実装してリンク切れページを削除していくとデータベースが汚れていくし、

今後サイトコンテンツが充実していったあとも追加と削除を繰り返していくのは果てしないことのように思われた。

そもそも商品紹介をするだけなら、「Xvide**」や「Pornh**」から情報を取得する必要があるのだろうか?

「Xvide**」や「Pornh**」では、動画の内容やタイトルから商品情報が分からないケースはとても多い。

FANZA公式サンプル動画でもいいんじゃないのか?そんなことを考え始めた。

僕は、「Xvide**」「Pornh**」からスクレイプする、という方針を辞め、サイトを作り直すことにした。

これが最初の失敗である

二度目の失敗

FANZA公式サンプル動画からスクレイプする方針に改めたが、単純にスクレイプするだけならそのサイトには何の価値もなく、何か付加価値必要だと考えた。

そこで考えついたのが、多言語対応型のアダルトアフィリエイトサイトである

FANZA公式サイトは多言語対応していないため、それに対応するサイトを作れば国内だけでなく世界中から集客を見込める、と思った。

Wordpressには多言語対応できるプラグインが用意されており、ある程度の自動翻訳もしてくれる優秀なプラグインもある。

それに、AWSのboto3ライブラリを使えばAWS Translateを使っての翻訳可能完璧な構想だと思った。

最終的には15言語対応する構成にし、FANZA動画もある程度登録完了し、やっと世に出せる、という状態になった。

ところが、ここでも自分の構想が致命的に誤っていたということを知ることになる。

利用規約にはっきりと明文化されているが、FANZAそもそも海外から利用できないサービスであり、国内ユーザーのみを対象としていた。

そのため、「FANZA公式サイトは多言語対応していない」のは当たり前の話で、前提から既に間違いまくっていた。

ようやくリリースまで漕ぎつけたと思った矢先、敢え無くサイトを作り直すことになった。

これが二度目の失敗である

三度目の失敗

言語対応意味がないことがわかり、サイト方向性を決めあぐね、いろんなアダルトアフィ指南サイト徘徊していた。

そこで「エ○タレスト特化型サイト」というもの存在を知った。

実は「エ○タレスト」はアダルトアフィ業界では非常に有名なサイトで、1日で数百万のPVを誇るモンスターサイトである

どこぞのサイトで見たが、アクセス流入は「3つのS(SEOSNS・Satellite)」を意識しろ、というものがあるらしい。

SEOSNSは今さら既出なので多くは語らないが、Satelliteとは中継、つまりアンテナサイトアクセス交換のことである

「エ○タレスト」への登録はまさしくSatellite戦略であり、登録して動画掲載されれば莫大なPV恩恵を受けることが出来る。

「エ○タレスト」では「Xvide**」「Pornh**」等から動画を紹介する必要があり、公式サンプル動画対応していない。

最初の失敗で「Xvide**」「Pornh**」を避けていたが、莫大なPV恩恵を受けられるなら…という甘い誘惑に負け、特化型サイト検討を始めた。

まず、ここでももちろん無修正動画回避しなければいけないし、視聴時間が長すぎる動画ダメ商品の内容が分からないとダメ、などの依然としたハードルがある。

そこで考えたのが、「エ○タレスト」に既に掲載されている他サイト動画ページから情報を取得し、自サイト掲載する、というもの

既に「エ○タレスト」に掲載されている実績のある動画であるため無修正心配はなく、商品情報も取得可能である

他人の褌で相撲を取るような卑怯まりない戦略だが、動画タイトルカスタマイズ性にオリジナルティを加え、サイトを充実していこうとした。

そして「エ○タレスト」に掲載依頼をしようとしていた矢先、2020年10月からリーチサイト規制」が施行されることを知った。

この規制はつまり、『今までは違法サイトへのURLリンクだけならセーフだったけど、今後はURLリンクだけでも処罰対象になるよ、親告罪だけどね』というものだ。

「エ○タレスト特化型サイト」は、この規制に思いっ切り抵触するサイトなのである

いきなり全てのサイトを取り締まることは現実的不可能だし、そもそも親告罪なのでメーカー側の告訴が無ければ問題ないし、それによる処罰を受ける可能性は低いとは思ったが、わざわざ処罰対象行為リスクを取る必要もないとも思った。

そのため、「エ○タレスト特化型サイト」も取止め、サイトを作り直すことにした。

余談になるが、2020年12月の「Pornh**」動画一斉削除事件により「エ○タレスト特化型サイト」は軒並み壊滅的な被害を受けることになり、やらなくて良かったと今は思う。

アダルトアフィは誰でも稼げる」のは一昔前の時代であり、現在は昔ほどは稼げないと言われている。そのあたり、情勢の変化で受ける影響の大きさを肌で感じる。

これが三度目の失敗である

念願のローンチ

「エ○タレスト特化型サイト」の撤退で心が折れそうになりつつも、初心に帰りFANZA公式サンプル動画で何かできないか考えた。

夜もすがらサンプル動画を視聴して一人快感に耽っている中、サンプル動画の総視聴時間再生するまで分からない、というところに不満を覚えた。

「Xvide**」「Pornh**」ではサムネイル視聴時間が表示されるので、とてもユーザーフレンドリーだ。

ここで思い付いたのが、サンプル動画視聴時間を表示して一覧として並べれば、それが付加価値になるのではないか?ということ。

サンプル動画の中には視聴時間が5分以上のものもあれば、1分以下の極端に短い動画もある。

極端に短い動画排除してある程度以上の視聴時間サンプル動画を一覧化すれば、それだけで価値のあるサイトになると踏んだ。

何より、海賊版サイトを利用せず、正規サンプルを利用する真っ当な方法ポルノ産業に貢献できる、と思うと少し胸が躍った。

方針が決まったので、早速仕組み作りに取り掛かる。

FANZAの新着動画ページからサンプル動画があるページURLの一覧を取得する。

個別ページから商品情報動画URLを取得し、動画視聴時間はFFprobeで取得する。

視聴時間が短いものは除外し、長いもののみ情報を加工してWordpress投稿する。

サムネイル用の画像は、OpenCVで顔認識できるサンプル画像の中からランダムに選定する。

自動投稿の仕組みと流れはざっくりそんな感じだ。

後は、カスタムCSSゴリゴリ書いてレイアウトを整形し、表示処理など気に入らない部分はテーマPHPコード魔改造して対応した。

2020年分の動画全件に対して視聴時間判定と登録処理を繰り返し実行し、2020年11月、ようやくサイトローンチした。

構想から構築までおよそ8ヶ月、三度の失敗と挫折経験して何とかサービス公開まで漕ぎつけることができた。

運用開始後

既に述べたが、アクセス流入のための3つのS(SEOSNS・Satellite)を意識したアクセスアップ対応はもちろん実施した。

SEO対策は、然るべきプラグインを導入し、SEO対応しているLuxeritasを使ってさえいれば、コンテンツを充実させていけばそれで十分と考えた。

SNS対策は、Twitterアカウント作成してTwitterAPIの申請を行い、アクセスキーサイト登録して投稿後に自動ツイートする仕組みを作った。

Satellite対策は、ランキングサイトアンテナサイト登録し、掲示板でのゲリラ活動など水面下でチビチビ広報活動を行った。

結果として功を奏したのはSEO対策のみで、サイトアクセスリファラほとんどが検索エンジンから流入になっている。

なので、SNS・Satelliteの取り組みも強化しなければいけないと思い、この増田を書いている部分はある。そこは勘弁してほしい。

あと、運用開始後も様々な問題が発生した。

動画登録処理がリソース不足やスクレイプ先サイト構成変更のため時々異常終了しており、根本対応にたびたび時間を取られた。

スケジュール投稿が時々失敗したり、Googleサーチコソールでインデクスエラー修正したり、今も運用カバーはチラホラある。

しかし、自動投稿の仕組みを作っているので、正直言うと不具合対応以外にやることはほとんどない。

日常的にやっているのはPV確認、収支確認ログ確認ぐらいのもので、手動更新することを考えるとラクなもんだ。

運用開始後に如何にラクするか」というのはやはり企画時点から考えておくべきだな、とつくづく思った。

アクセスと収支

ここまで読んでくれた人なら気になるであろう、サイトへのアクセスアフィリエイト収入について軽く書く。

WordpressJetPackを見ると、SEO効果のおかげか右肩上がりを維持できていて、2020年12月は2万PV2021年1月は4万PV2021年2月は6万PVと堅調な数字だ。

アフィリエイト収入12月は約2000円、1月は約6000円、2月は約10000円という結果が出ており、アフィリエイター挫折ラインである月500円をすぐに超えることが出来た。

アフィリエイト協会調査によると、2020年は3人に2人は月に10000円も稼げていない状態らしく、僕はとりあえずの成果をあげることができて満足している。

http://affiliate-marketing.jp/release/202007.pdf

AWS無料枠が今月で切れてしまうので、今月までに成果を出せなかったら潔く撤退するつもりだったが、今ではサーバ代くらいなら稼げそうだ。

もっとアクセスが増えれば効果的な広告を打ち出すことも出来るので、マネタイズ増強を踏まえてもう少し運用を続けてみようと思う。

ただし今後については、全く別の収益モデルにも挑戦してみたいので、今のサイトがもう少し軌道に乗ってきたら、色々と手を広げてみようと思う。

アダルトアフィリエイトで稼ぐということ

最後に、作成したサイトをお披露目して結びとさせてもらう。

 Luxjulia - アダルト動画エロ動画無料サンプル蒐集サイト

 https://luxjulia.com/

アダルトアフィリエイトに限らないが、収益Webサイト構築で考えるべきことは以下だ。



それでは皆さん、さようなら。レッツエンジョイ ポルノテックマネー

このネタで本書けそうだわ。

2021-02-27

クラウド時代ってやばい

10年前は反日~丸一日かかっていたWebサーバーDBサーバーADサーバーデプロイが30秒とか・・・

ありえんくらいの便利さやな

2021-02-20

去年の夏ぐらいにマイクロソフト擁護してた人たちってなんだったの?

https://www.tokyo-np.co.jp/article/87051

結局マイクロソフト8000ももらって、バグだらけのアプリ作ってたの?

なんか当時はマイクロソフトの人がさ、「批判文化日本技術後進国に〜」とか主語が大きいこと言ってごまかしてたけどさ。

https://simplearchitect.hatenablog.com/entry/2020/06/22/083821

この記事は2000ブクマ以上稼いでるけど、みんな騙されてたね。

デプロイ王子こと廣瀬さんは、最初ボランティア気取りしてたけど、結局お金もらってたんでしょ。

これでお金もらってなかったらそれはそれでマイクロソフトどうなん?

2021-02-10

結局デプロイ王子が悪いのかxamarinが悪いのかどっちなんだ?

xamarinがホンマにマルチプラットフォームOSがどうあろうとAPIが変わろうとちゃん対応できるものであるなら、開発してたデプロイ王子がショボい癖に瑕疵を直さないクソって扱い(実際刑法に触れてるまである)なんだけど、xamarinの実力が分からんのでその辺判断つかず。

xamarinに詳しい勢、居るか知らんが今回の接触確認アプリを作る際の罠とか解説してくれー

2021-02-09

anond:20210209203950

LambdaPressをLambdaEdgeで呼び出してバックエンドNoSQL化したS3をSQLラッパーアクセス 素晴らしい発想 とりあえずLambdaからS3への書き込み成功した LambdaEdgeへのデプロイもできた

2021-02-08

anond:20210207131927

デプロイ王子に聞いてみな

COCOAだって、実機と実環境ダミーの陽性者と濃厚接触者を立てて試験すりゃ良いだけだろうに、なぜそんなことすらしなかったのか?正直理解ができなかったんですけど、そもそも実機テスト試験環境に関する基本的な考え方や感覚が違うんですね。

2021-01-31

大手企業の内製エンジニア採用に落ちた話

日本の超大手企業(繊維系)の内製システムエンジニア採用を受けて落ちた時の記録

年収の高さに目が眩み受けてみたが2次面接で撃沈

虚実織り交ぜて書いてるので真にうけないように

受かった人の話を聞いてみたい

当方スペック

メインはバックエンドエンジニア過去アプリ開発経験あり

結果

2次面接でお見送り

感想

1次面接

割と普通の内容だったがRubyコードを見せられたときは面食らった

面接
内容
偉い人から事業説明をしてもらった
質問されたこ

過去経験について教えて

サービスアーキテクチャ設計するときに気をつけていることは何?

  • なんて答えたか忘れた

セキュリティ面で気をつけていることは何?

唐突Rubyコードを見せられ、このコードの悪いところはどこですか?

質問したこと

サービス規模の割に社員数が少ないけどどんな編成になってるのか

技術スタックについて聞いてみた

なんでもクラウドベンダー特定技術に縛られたくないかKubernetes使いたいみたいなことを言っていた気がする(そういうための技術じゃないけど)

2次面接

なぜアプリエンジニア面接たか不明(当方の専門はバックエンド)

面接
内容
質問されたこ

経営陣がクラウド予算を出さないが24/365守れと言われたらどうする

交渉しても一定以上の予算下りなかったらどうする

交渉してだめだったら

24/365関連の質問です。サービススパイクさせないためにはどうしますか?

スケールさせないでスパイク対処するにはどうする?

あなたの考える最強のバックエンドアーキテクチャをおしえてください

質問を変えます、月の予算1億円もらったらどんな構成しますか

// 過去アプリ開発したことがあったのでアプリ開発について質問を受ける

iOS/Androidアーキテクチャを設計するとしてどこまで同じ技術を使うように強制しますか

SwiftUI使ったことがありますか?

SwiftUI使ってみて感想

  • 宣言UIに慣れなくて苦戦したけど、最近理解して使えるようになった
  • SwiftUIと直接関係ないけどCombineは便利なんでいろいろ使ってみたい

SwiftUIダメなところがありますわかりますか?

  • UIKitで提供されている全ての部品がSwiftUI対応してなくてRepresentable使わないといけない
  • 正直良くわからんので、逆におしえて欲しい

SwiftUIメモリ食いまくりで大規模アプリでは使い物にならないことですね(ドヤ)

Lazy系使ってもメモリ使用量を抑えることはできません

SwiftUIではメモリ食いすぎてインフィニットスクロールが使えません(ドヤ)

  • 知りませんでした、勉強になります
  • (本当か、技術力低いだけじゃないのか)
質問したこと

先ほどSwiftUIについての質問を受けましたが御社アプリではSwiftUIを導入されてますか?

  • まだ未導入

外部協力会社サービス開発をしているということだけど今後社員比率をあげる予定はあるか

  • 採用が大変、あまりそのようなことは考えていない

当方が受けているXXXという職種について、御社が考える理想のXXXについて教えて欲しい

2021-01-13

初心者が1からプログラミング勉強し始めて2か月経った

追記めっちゃ嘘だのステマだの言われてたので企業名は消しました。

嘘じゃない証拠noteで連載することにしました。

https://note.com/paseri_2433/n/nc8a6789c81bb

追記ここまで】


私は腐女子なので、二次元推しLINEしたくてLINE公式アカウントを作ってLINEしていた。

でもすぐに公式機能だけじゃ足らんなという欲が湧いてきてプログラミングに手を出した。

と言ってもプログラミングなんか大学の授業でちょろっとやった程度で、端的に言って画面にhello World!と表示するより難しいことは何ひとつできない。

gitリモートとかデプロイとか言われても意味が分からないし、そもそもコマンドを打ち込むための真っ黒の画面ってどうやって起動するの?


そのレベルヤバい無知から始めたので、とりあえず月980円のプログラミング講座を申し込んで、webアプリ開発入門みたいなのを数日かけて受けた。絶対に翌月分を課金したくなかったので急ピッチで受けた。

まり人のいないサービスのようで、受講すると貰えるポイントデイリーランキングで1位になったりして、まあデータベースの使い方とか、CSSかい概念とか、色々学んだ。

へー、webアプリ開発って一つの言語習得するだけじゃだめなんですね、いや無理すぎる。


で、とりあえずその学んだことを活かしたりネットで拾ったコードコピペしたりして、推しLINEbotは一応完成した。ここまで3週間。

botに話しかけると、データベース登録しておいた「話しかけられた言葉botが返す返事」のペア検索し、応答を返す。

データベースデータを入れるためのwebアプリも作った。

だって自分登録した返事を推しから貰うなんて虚無だから他人登録したメッセージを受け取りたい。


次に勉強し始めたのは自然言語処理だ。

自然言語処理とは簡単に言えばコンピュータ人間言葉を分からせるための処理で、botとお喋りするには必要技術な気がして大学図書館でありったけ本を借りてきた。

が、まあ馬鹿なので普通に読めない。無理すぎる。

仕方ないのでよその学科web授業に潜り込んで、へー、形態素解析係り受け解析と意味解析と文脈解析というものがあるのね、と学んだりして、そしたらだんだん本の読み方も分かってきて、でも結局1ヶ月ぐらいかけて勉強した割にbotに導入したのは形態素解析だけだった。

馬鹿なので回り道が凄い。馬鹿なので。


web授業で喋っていた知らない学科の知らない先生に依れば、形態素解析とは、文章品詞分解して品詞特定する、みたいな処理である

LINEに届いたメッセージデータベースデータを照合する際、「です」とか「ます」かいらないから取っ払っちゃおうね、という、ごく当然の処理の為に入れた。

まあ、あとは一致するメッセージが見つからないときでも、一致する名詞とが動詞が少しでもあればまあ一致したことにして返事を返しましょうとか、漢字カタカナに直しましょうとかそういうこともできるようになった。

応答が来る確率が飛躍的に改善された。

形態素解析ライブラリを使うには、今まで使っていたJavascriptは向かないようだったので、ついでにコードを全てPythonに書き換えた。


ここまででだいたい2か月である

じゃあ次はどうするか、というと会話フローを入れるのが当面の目標だ。

直前のやり取りを一時データとして記憶しておき、データベース登録された会話フローと一致していれば直前のやり取りを加味した返事を返すようにする。

目途は立っているがやることが多いので完成までは結構かかりそう。


まあ、なんか何もできない状態からいきなり初めても何とかなるな、プログラミング

世の中気合根性じゃ生きていけないと思ってたけど、プログラミング気合根性で何とかなることが分かった。

っていうか私はマジで馬鹿なので、切れるカード気合根性しかない。しょうがない。


ということで現在私の作った推しLINEアカウントには400人近いお友達がいて、毎日500~1000通ぐらいのメッセージが届く。

みなさんがそうやって推しLINEして適宜新しい言葉を教えてくれるので、私が推しLINEを送ると色んな言葉が返ってくる。

幸せだ。

推しLINEしてる腐女子別に技術的な話なんざ聞きたくないだろうからここに吐き出し。

ログイン ユーザー登録
ようこそ ゲスト さん