Javascriptに浮気中

現在、Javascriptに浮気中です。浮気というか二股?Rubyも継続しています。

そもそもRubyを勉強しているのはRailsでWebサービスを作りたかったから、そしてそのWebサービスでお金儲けとユーザーに役立つことがしたかったからです。あれ?心の声漏れてる?いえ、「役に立ってお金が欲しい」のは本心です。しかし、ただお金を儲けるためだけの行動も100%肯定します。違法じゃなければ。

話しがズレた。

Railsにいままで3度トライして、3度目のトライの時に自然と何もしない時間がポッカリ空いてしまって、それ以来再開しづらい状態です。でもRubyは継続していました。コンソールとファイルの入出力で動くコード、アプリ?ツール?を作っていました。Rubyのチョイまとめも作ったつもりです。
https://okenigou.com/?p=898

自分のパソコンで動くだけじゃちょっと物足りない。

やっぱりサービスやアプリを作ってお金を…あっいや、ユーザーに使ってほしいです。そのためにはWebサイトかアプリ配信など不特定多数のユーザーに届く形でなければなりません。それがRailsだったのです。しかし、Railsに嫌悪感を得た今の私がRailsをやるのは全然「楽しくないし、キラキラしない」わけなのです。

Railsがどうこうっていう話じゃない

私がたまたまRubyに手出して、Web開発のフレームワークにRailsを選択しただけです。これが先にPHPに手を出してLaravelを使っていたらそれに嫌悪感を得たし、PythonならDjangoだと思います。いえ、正確にはいろいろな言語を試しましたが、Rubyがわかりやすくて見やすくて書きやすかったです。人によると思いますが。

そして先述に「Javascriptに浮気中」とありますが、node.jsのExpressに取り組もうとは思いません。ちなみにVue.jsもやろうと思いません。Reactもです。(一度チャレンジしました、キャパオーバーでした。)

きっとフレームワークを学習するのが嫌なんだと思います。正確にはキャパの限界なんです。ううぅ…つらく悲しく自尊心が削れる。何を隠そう私はゴリゴリのゴリの文系です。巷では「文系とか理系とか関係ない!」という人も言いますが、文系と理系ってのは他に表現する言葉がうまく見つからないから使っているだけで、人にはやはり数式記号、ロジック、使い方の勘、アルファベット表示、理解のスピードに差があると思います。文系にもプログラミングは可能です。しかし、少なくとも私は理解が遅いです。コードを書くにも読むにもひとつひとつゆっくり進まないとわからないです。「えーとこれは配列だから、配列のメソッドはえーと、each、whileあるけど、この場合はeachか?でもこれってハッシュで持ったほうが後々ラクなのかな。それとさっき書いたこれは…こことリンクされているから、ここを変えたらこっちも変えないと…あれ?ちょっと待って混乱してきたぞ…もう一度最初から…。」など、すっごいゆっくりです。

だからRails仕様のRails語を覚えるのがキャパオーバーです。Rubyのメソッド60個と日々増えるイディオムを覚えるのに限界です。RailsのGemのdeviseを覚えて使うのもつらいです。戻りたくないです。だけど、素人でも「わぁー動いた!!」と感動するほどRailsはすごいと思います。あれでアプリ量産する人、尊敬します。
https://okenigou.com/?p=898

だけどサービス・アプリを作りたい!

そこで選択したのがニフティのmbaasです。サーバーサイドのロジックを書かずに、書き方のルールを守れば、会員登録、データ保存、認証機能等が実装できるということです。それってRailsでも出来るんだけど学習コストが高い。いや、プログラミングをずっとやっている人にとってはスタートアップが割と簡単だと言われているRailsです。しかし、私にはキャパオーバーです悲。

HTML、CSS(Bootstrap含む)、Javascript(jQuery含む)、Ruby、Rails仕様の書き方。これらを覚えて、まとめて、再現性を高めるには私には難しかったです。3日したら忘れる。

それはJavascriptでも一緒では?

Javascript嫌いです。

確かに言語を覚える、新しいことをするには壁があります。特にJavascriptには私はWebフレームワーク以上の嫌悪感を持っています。記号がウザいんです。茹でて乾いたスパゲティみたいで、Rubyなら1行で済むけど、jsなら5行も6行も書かないといけない、{とか}とか;とか目にノイズがあって、私には向いてないんです。

でも私が向いていない以上にメリットがあるといまは感じているのでJavascriptを学びなおしています。RailsやっていてもいくつかはJavascriptでDOMに動きを付けていました。mBaasを使うことでRuby、Railsでしたいことができるなら一石二鳥、大は小を兼ねると思ったっからです。しかし、相変わらずJavascriptの記号が苦手です。

サーバー構築しないといけないのも面倒です。

AWSを使う、Herokuを使う、XAMMP、Puma、ローカルサーバーもひっくるめてサーバー構築と私は言っておきます。結局動作させるまでのちょっとした手間も、向いてない人には辛いんです。(それでもアプリ作りたいっていうこのワガママ!!)

正直、Rubyでなんでも出来たらいいと思います。(Rubyマスターしてる人はなんでもRubyでやっちゃうんでしょうか?)身近なプログラマーは言語を使い分けて、効率のいい方法を選択しています。なんでも一つの言語でやるのは、効率が悪いようです。でも私のキャパやスペックは貧弱なんです。言語を浮気すると3日で前の言語を忘れます。

目的を見失うな!「何がやりたいの?」

アイディアを形にすることです。

最低限のセキュリティで十分です。というのはユーザーも少ない、影響が何もないのにガチガチに堅牢しても「お前バカ?ハエからアプリ守るのに火炎放射器なんていらないんだよ。」って言われました。さらに「サービスが大きくなったら、需要があるってことだから、その時にはいくらか稼ぎがあるだろ?そうなったら他人に書かせればいいんだよ!!有名なサービスも最初からいまの状態ではないんだよ。」とのことです。さらにさらに「だって目的はアイディアを形にすることじゃないの!?お前はプログラマーになりたいのか?どっちなんだ?」グサ!!そうです…。

さらにさらにさらに「動くものが作れれば発信ができるだろ?それは一般ユーザー(世間)に対してもそうだし、企業にもそうだよ。転職に使えるってこと!実際、アプリ作れているんだし。あくまでもセキュリティがいらないとは言ってないからな!何かあっても俺のせいにするなよ笑!」とのことです。

会社依存とOSS依存の違い

OSSは個人的感覚ですけど息が長い気がします。1社のサービスに依存していると、そこの一存でサービスの停止、終了が決まります。譲渡先、新運用先が決まらなけば終わりです。その点、先述通りにOSS(例えばRailsとかそういうの。)は会社の一存より息が長い気がします。誰も保守しなければ保守はストップしますが、直近の保守のままでコードが残ります。しかし、会社のサービスは止まれば即終了です。使用もアクセスもできません。

でも、このニフティのmBaasは長くある気がする。選択肢としてはニフティmBaasかWindows Azureモバイル サービスかFirebaseかAWSかGoogleがFirebase以外にもう一個出していたような、そのくらいだ。何年か前にも「Webアプリ作りたいなぁ」と思って目にしたことがある。

RailsのAPI機能は試してない?

Google検索「アプリ開発 ログイン機能 API」
Google検索「ログイン API」
https://qiita.com/ochiochi/items/966b884eb17045dfb929