体重133キロからのプログラミング

体重はちょっと減って今125キロです。

gqlgen で generate 時に「unable to open schema」となる場合の対処

事象 以下のように、schema.graphql が見つからない旨のエラーが出ることがある。 $ go run github.com/99designs/gqlgen generate unable to open schema: open schema.graphql: no such file or directory exit status 1 例えば、graphql スキーマは src/r…

gqlgen で、オーバーフェッチを防ぐためのそのフィールド専用のリゾルバを定義する

GO

1. gqlgen.yml で設定を有効化する gqlgen.yml の autobind 設定のコメントを解除し、有効化する。 # gqlgen will search for any type names in the schema in these go packages # if they match it will use them, otherwise it will generate them. auto…

DockerでTypescriptなExpress + Reactの開発環境構築

はじめに MacBookProを買ったので、どうせならローカル環境を汚さずに開発したかった。 単純にDockerに興味があった。 Dockerとは VMWareのように仮想環境をいくつも用意できる。 Dockerの仮想環境は「コンテナ」と呼ばれる。(厳密には仮想環境ではない) …

ローカル開発環境を外部公開する

はじめに LINE BOTを開発する際、開発環境でWebhook(コールバック)を受け取りたいという場面に遭遇したので。 そのために開発環境を外部公開することを「トンネリング」と呼ぶ。 トンネリング 今回は『localtunnnel』というサービスを利用する。 トンネリン…

g-notice-client作成

クライアントプロジェクト PDFのパースに限界があって、壊れたデータがどうしても入ってしまう。 なので、管理画面を作成してそこで手で修正しようと思った。 技術選定 ある程度慣れてるのでReactに決定。 webpack使ってみようかと思ったけど、そこまででか…

MySQLで濁音・半濁音がうまく検索できない

対処 collationを設定する 経緯 ガンプラ出荷予定を返すアプリを作っていたところ、下記のように濁音・半濁音をうまく検索できていないことを確認。 MySQLって濁音・半濁音はうまく検索できないのね… pic.twitter.com/vswIq6opQS— 片山 (@poihey) 2021年7月4…

g-notice これから

追記 このアプリについての詳細は、githubとtrelloで管理しようと思った(ブログ書くのが結構たいへんなので) 不具合対応の方法などは別途記事に記載しまする github GitHub - JunpeiKatayama/g-notice: ガンプラ入荷日を忘れないためのアプリ Trello Trell…

g-notice ログを出力する

おはようございます。 早いもので、前回の記事から2ヶ月も空いてしまいました・・・。 年度末&年度始めということで結構忙しかったんですよね。 そしGWは11連休し、寝て起きて過ごしただけでした。 さて、最近またg-noticeの開発に着手していて、今回はno…

g-notice テーブル設計

g-noticeのテーブル設計をする。 (ガンプラの出荷予定日通知アプリ) テーブル設計 バンダイ公式の出荷予定はこのような形式をしている。 商品出荷予定 SR noというものは何なのか良くわからないので必要なさそう。 HGやMGといったスケールも入れたいので下…

Express HelloWorld ~ Connect MySQLまで

何? 最近ガンプラにハマったけど転売がひどすぎる。 バンダイさんが公式で出荷予定を毎月pdfで公開して下さってるようなので、それを解析してLINEでどうのこうのするアプリを作成する。 要件 バンダイ公式の出荷予定pdfを解析するアプリケーション 日に1度…

SESの研修が終わったのでどんな感じか伝えたい

筆者について ・SESに内定もらった ・Railsチュートリアルを独学で2週した ・SESだとJavaかPHPの案件がほとんどなので研修が必要だった ・研修終わった ←イマココ! 私自身も研修内容がどんなものなのか不安を抱えていましたので、SES企業の研修ってどんな感…

未経験からSESで内定を貰うまで

はじめに まずは私が客観的にどれほどやばそうな人間なのか知ってもらうために経歴を書いておきます。 年齢:27歳(12月末で28になります) 体重:140kg 学歴:大学中退(当時付き合っていた彼女が病死、そのまま引きこもり半年) 職歴:飲食アルバイト⇨半年ニ…

BubbleSortについて調べた

動機 就活をする中で、最終面接の課題になるという話だったので。 バブルソートとは リストに於いて、隣り合う2つの要素を比較して条件に応じた交換を行う整列アルゴリズムのこと。 このソートを行うことで、値の小さい(大きい)ものが浮かび上がってくる…

Javaを勉強し始めた

最近就活してます。体重は多分142キロを超えました、私です。 SESの求人に応募してまして、現在2社落ちていて、1社2次面接っていう感じです。 まあわかってはいたんですが、現場で働くにはまずJavaを覚える必要があります。 研修のあるところしか応募して…

人生68日目

HAGIRE(n) devise+omniauthを使用してtwitterログインを実装した。 学び device gem使用時、ユーザー情報の更新に現在のパスワード(current_password)を使用しないように設定する。 Twitterログインと通常の認証をユーザーが選択する場合、Twitterログイン…

人生67日目

昨日ナチュラルにブログ書き忘れちゃった、てへぺろ星 Ruby超入門 Railsばっかやってるのもどうかなと思って原点であるRubyを最初から学んでる。 ページ数はまあまあ多いけど、3〜4日あれば読めるようにできてると思う。 とりあえずざっと読んで付箋挟んで…

人生65日目

HAGIRE(11) 画像アップロード時にアップロード予定の画像をプレビューできるようにした。 一応うまくいってるんだけど、jsの知識がないので複数表示は一旦保留にしている。 そもそもActive Storageに対してうまくvalidationを適用できなくて困ってる。 1日調…

人生64日目

HAGIRE(10) ほぼ全ての作業が終わった。現在SendGridが凍結されている影響でメール認証ができないため、公開はしていないけど。 以下に今回初めてwebアプリを作ってみての感想を述べます。 感想 ・強力なgem deviseを使って認証してみたけど、影響範囲がとに…

人生64日目

HAGIRE(9) ほとんど全ての機能が完成した。 あと原因不明だったcontainerのmarginが解決した!(原因不明のまま) ユーザー検索機能の実装 生のSQLをちょこッと書いた。 . . . #users controller def index @users = if params[:search] User.all.page(params…

人生63日目

HGIRE(8) 昨日もちゃんと作業してたんだけど、力尽きて寝てしまっていた。 初めて解決できない問題にぶち当たってしまった。 rubyの問題ではなくてCSSの問題なのでまあいいっちゃいいんだけど・・・。 herokuにデプロイすると謎のマージンが指定されるってい…

人生61日目

HAGIRE(6) 今日はログインユーザー向けHomeページの外観を完成させた。 あとはユーザー情報の編集ページ、フォロー/フォロワーのリストページ、ユーザーの個別ページ、認証メールの再送信ページで全て終わるはず。 目算だとあと2日くらいかなあ、就活本当に…

人生60日目

HAGIRE(5) あ、今日で2ヶ月だったのか。全然気づかなかった。ブログ書くときにしか気にしてないからわからなかった。 今日、最初の頃のブログを読んでたんだけど、何もわかってないのに頑張ってて偉かった。 2ヶ月経つと割となんでもわかるようになるぞ、過…

Devise日本語化後の「translation missing」に対処する

このように、translation missing: ja.activerecord.errors.models.user.attributes.current_password.blankというエラーが出て、エラーメッセージの表示がうまくいかなかった。 これは、devise.views.ja.ymlに該当の項目がないため発生している。 以下のよ…

人生59日目

HAGIRE(4) トップページのビューをほぼ完成させた。 まだ高さが物足りないため、いくつか項目を追加予定ではある。 deviseのflashメッセージを日本語化したりもした。 後、プルリクエストを作ってGitHub上でmergeするというプロっぽいことも始めた。 Gitは触…

人生58日目

HAGIRE(4) 今日はあんまり進んでない。 というのも、昨日間違ったまま実装していたコードをお世話していたからだ。 記事は修正したので大丈夫だと思うけど、これの解決に3時間くらい使って虚無だった。 あと、credentialに認証情報をいれているのにGitHubがo…

人生57日目

HAGIRE(3) 今日はdeviseとActive Storageにいじめられた。 privateメソッドのテスト 「send」メソッドを使う。 equire 'test_helper' class UserTest < ActiveSupport::TestCase def setup @maehara = users(:maehara) @konishi = users(:konishi) end test …

人生56日目

HAGIRE(2) Buriburipost modelを作成。アソシエートも問題なし。 CarrierWaveで画像アップロードを試そうとしたが、ActiveStorageとかいうものがあったのでせっかくなので使ってみた。 外部ライブラリ使わずにアップロードできるってすごいなあ。 紆余曲折を…

人生55日目

HAGIRE.(1) 静的ページを作ってdevice gemを導入した。 これ頭おかしいよ強力すぎる。 一瞬でログイン機能を実装してしまった。 強力すぎて内部がどうなっているかわからないので、好きなように弄りにくいのが難点。 特にflashメッセージのコントロールが普…

HAGIRE.(定期更新)

HAGIREとは 「うんちの歯ぎれ報告サイト」 排便から、健康を考えるきっかけを作る。 動機 うんちのこと真面目に考えたことなかったので。(快食快便) 機能(実装予定) 投稿機能 短い文章を投稿できる。ツイートみたいなもの。 フォロー機能 ユーザーをフォ…

人生54日目

ポートフォリオ作成 今日からようやく始めることができたが、早速bootstrapに泣かされている。 便利なものを便利に使うためには知識がどうしても必要になる。しんどいなあ。 データモデルも固まってるので、明日詳しい内容を載せます。今日から開発日記や!