巨人の足元でたじlog

そうして言葉を軽んじるから――― 君は私の言葉を聞き逃す

Go言語初心者がハマるGo言語の細かい文法などの気付き

随時更新 goではintの計算結果は、intになる。 なので、 <int>10 / <int>100 の計算結果は、0になる。 切り捨てか切り上げか四捨五入かは、調べてない。 なので、予めfloat32とかにcastしておく必要がある。 qiita.com ポインタは変数に入れないと使用できないケースが</int></int>…

githubのhttpsのcloneで`repository not found`のエラー

$ git clone https://github.com/my0shym/myproject でrepository not found のエラーが発生 今まではパスワードが聞かれていたはずなのだが、それもなくエラーになっている。 以前パスワードを聞かれて入力したらエラーになったことはあったが、それはパス…

goのginをdocker-composeでローカル環境で動かす

以下のような構成で作成しました。 . ├── backend │ ├── Dockerfile │ ├── go.mod │ ├── go.sum │ └── main.go └── docker-compose.yml main.go作成後、以下を実行します。 $ go mod init example.com/go-project $ go mod tidy ファイルの内容はこの通り Do…

Go言語でCloud SQLとCloud Runを連携する奮闘記

接続しているっぽいところまでは割と簡単に進めましたが、本当に接続している?っていう確認に少し手間がかかりそうな気がしました。 動作確認の手順として 1. goでDBに接続してレコードを取ってきて表示するようなコードを書く 2. 1をイメージとしてArtifac…

GoをCloud Runで動かしてみる。コードとDockerfileそれぞれでデプロイ

Goをデプロイしてみます。 qiita.com 前提条件として、GCPはちょっと知っていないとだめそうですね。 GCPは大昔触ったことがありましたが、プロジェクトとかの分け方がよくわかってないため、そのあたりからおさらいでやっていきます。 qiita.com これを参考…

個人開発でのサーバー料金等の運用コストについて調査・検討

さて、そろそろ本格的にwebサービスの開発に着手していきたいと思いますが。 まず、全体の構成として Go(gin) + Next.js というのは決定しています。 そしてNext.jsをデプロイする先はvercelでほぼ決まりでしょう。 企業で本番環境で使うことはあまりないよ…

Go言語のデータベース連携ライブラリの選定

ORMはsql-boilermigrationはgoose をGoをよく使っている友人に進められたので、調べてみます。 SQLBoilerについて zenn.dev sql-boilerの他にORMライブラリは ・ GORM ・sqlx などがある。 sql-boilerはマイグレーションの機能は入っていないが、それは他の…

Go言語のフレームワークGinをやってみる

チュートリアルっぽいのがあったので、それをやってみます。 最近の心がけとして、なるべく公式コンテンツから着手してみることにしています。 最近もNext.jsを学習していたのですが、今までだったらUdemyで手頃な講座を見繕って進めていたと思うのですが、…

フロントエンド初心者がNext.jsを習得してみる

チュートリアルをやっていきたいと思います。 https://nextjs.org/learn/basics/create-nextjs-app しかし、英語しかないのか? https://nextjs-ja-translation-docs.vercel.app/docs/getting-started 一応非公式日本語翻訳サイトはあったが、これは新鮮なの…

GoとNext.jsを使った個人開発アプリケーションの構成を構想する

参考記事① qiita.com Next.jsはVercelにデプロイ GoはCloudRun RDSはCloudSQL という構成。うん。これが一番シンプルでいい気がする。 ほかも見てみます。 参考記事② zenn.dev Go × Next.js × GraphQL というパターン。 これもまあある構成な気がしています…

Next.jsってどうなの? フロントエンド初心者が調べてみた

自分の現在の技術スタック インフラ: AWSを中心としたクラウドインフラはある程度理解している。GCPもちょっと サーバーサイド: rails, cakephpなどのフルスタックフレームワークはわかる。言語はpython, ruby, phpなどが多め。 フロントエンド: rails等のテ…

goの型の恩恵をちょっとずつ理解してきた

今までは基本的にはPythonメインでやってきて、ruby,phpもやってきたが、それは全部動的型付け言語だった。goをやってみる前は、型をいちいち書かなきゃいけなかったり、さくっとかけないことが結構めんどくさいんじゃないかと思っていたが、しばらく触って…

goの基本的な標準パッケージは使いこなしたい、早々に

全部の関数とか基本を覚える必要は無いけども、じゃあフィズが書いてくださいってなったときにいちいち1コマンド調べるのかと言う問題がある。 「えーっと、インタラクティブにinputを待つにはどうするんだっけか?」 ってなことを いちいち調べていたら、さ…

自分の考えていることを逐一ひとりslack言語化してみるライフハック、良い。

最近エッセンシャル思考と言う本を読んで、自分のやるべき事が何なのかということを考えるようになった。やるべきことと言うよりは、本当にやらなければいけないことのニュアンスに近いかもしれない。コードを書いていると特に、今何やってるんだっけ、何の…

goのエラーハンドリングについて触りを学んだ所感

go

表題の件について整理してみました。 Goエラーハンドリング戦略 こちらの記事が結構参考になったかなと思います。ありがとうございます。 結構自分が知らなかったことが多かったので、列挙してしまうとほぼコピペ記事みたいになってしまうので詳細はリンク参…

goのロギングについて、標準ライブラリのlogとzapをちょっと触ってみた所感

表題の内容について学習しました。 Goのロギングライブラリ 2021年冬 この記事を大いに参考にさせてもらいました。 goでは標準のログのライブラリがありますが、おそらくあんまりこれをそのまま使う事はしないのかなと思います。というのも、標準ライブラリ…

nginxのプロセスとかワーカとかスレッドとかについてよくわからないので整理する備忘録

今nginxとflaskのコンテナを使ったシステムを動かしているのだが、そのあたりでワーカーとかそこらへんがよく整理できていなかったので、この機会に勉強し直してみる。 以前自分が書いた記事を参照してみる。 プロセスとスレッドとかタイムスライスとかスケ…

AWSの多要素認証まわりを整える

今まではメールアドレスとパスワードだけでルートユーザーロイグ員していました(個人だし別にいいやろと思って) しかしこれはまずいなと思ってのでちゃんと段階認証をやっていきたいと思います Googleの2段階認証をアプリを使わずMacのターミナルで行う方…

競技プログラミングのテストケース実行環境を用意しようとしてハマった

GitHub - kmyk/online-judge-tools: Tools for online judge services. Downloading sample cases, Testing/Submitting your code, and various utilities. これを用意しようと思った。 pip3 install oneline-judge-tools pip3 install online-judge-tools C…

pythonではじめるソフトウェアアーキテクチャ読書メモ③

3章テスト容易性 テストは書いたほうがいい。それだけはわかっていながらも、雰囲気で理解していてちゃんとしたテストを書くことを先延ばしにしてきた。(というよりはテストを書く必要性に迫られなかった。) ちゃんとテストの意義や方法論を理解しておきた…

pythonではじめるソフトウェアアーキテクチャ読書メモ②

双方向結合の削減 単一の方向に依存するように関数を定義する場所を考える。 抽象共通サービス・継承の活用 同じような処理があるモジュール、あるいは今後同じような処理が増えていくと予想されるクラスは、共通する部分を親クラスとして抜き出す。 遅延バ…

pythonではじめるソフトウェアアーキテクチャ読書メモ①

ずっとちゃんとしたアプリケーションというものを作ったことがなかった。 アプリケーションを作ったことはあるが、ちゃんとした方法論に基づいて作ったり、他人にレビューされたりすることがあまりなかった人生だった。 いい加減にこの状態から脱したい。 そ…

AWSで典型パターンのウェブサービスを1から構築してみる備忘録

aws

2019/02/02 17:01 タイムトライアル始めます。 手を動かしながら2週間で学ぶ AWS 基本から応用まで | Udemy これをベースにしつつ、自分なりに理解しながらやっていきます。 ドメイン取得 まずは、時間がかかるので最初にドメインを取っておきます。 「ドメ…

docker-composeのコンテナ内でcronを動かせたけど、railsのrakeタスクが実行できない

昨日、コンテナ内でcronを実行すること自体は成功したのだが、どうもrailsアプリのrakeタスクを実行する際に、(おそらく)権限の問題で実行できていなかったので、それを修正する。 目標は1時間以内(本当は30分で終わらせたいところ) まずは現状を確認。 …

docker-composeのコンテナ内でcronを動かす

nginx+rails+PostgreSQLなアプリをdocker-composeで作っていた。 railsのアプリケーションでcronで実行したいrakeタスクがあった。 このタスクのcron化自体はrails(ruby)のgemで行うのだけど、うまく行かなかった。 原因としては、そのgemも結局は、railsア…

laravelのFacadeとserviceクラスがわからない

永遠にわからない。 Ruby on Rails出身の僕。 flaskはわかった。というより、むしろflaskを勉強したことでRuby on Railsの理解も深まった。 flaskだとスクラッチに近い形で書かないと行けないところを、Ruby on Railsだとそこらへんをフレームワーク側ですで…

プロセスとスレッドとかタイムスライスとかスケジューリングがわからない

nginxをかませると何がいいのか? その答えを探して、先輩に聞いてみたところキーワードとして「プロセス、スレッド、cpuコア」みたいな話がふんわりと出てきて、しかし自分の方での知識がなさすぎ説明の土台に立てていなかったので、一旦そこら編を整理して…

nginxとかrailsとかdocker-composeの備忘録

nginxのインストール $ sudo yum update -y $ sudo yum install -y nginx $ nginx -v nginx version: nginx/1.12.1 $ sudo service nginx status nginx is stopped $ sudo service nginx start Starting nginx: [ OK ] xxx.xxx.xxx.xxxにアクセス。 (セキュ…

railsのactiverecordでlastの一つ手前を取得したい。secondの逆をやりたい。

$ rails c # ユーザー取得 u = User.find(1) # ユーザーのtweetを取得したい u.tweets.content # ユーザーのtweetの最新を取得したい u.tweets.last.content # ユーザーのtweetの最初のを取得したい u.tweets.first.content # ユーザーのtweetの最初2個目を…

railsのbelongs_toとhas_manyとreferencesの使い方について整理する

ややこしいので、一気に整理する。 空のrailsプロジェクトを立ち上げて、 $ be rails g model user name:text ※ alias be='bundle exec' userテーブルができました。 $ be rails g model tweet content:text references:users tweetテーブルができました。 …