プログラミングと旅と映画の日々

食品の営業からSEに転職した文系エンジニアです。 プログラミングと趣味の株に関してブログを書いていこうと思います。

【三宮】三宮で食べログ評価一位のうどんの名店「すずや」に行ってきました【神戸】

三宮でうどんランチをするなら「すずや」

こんにちは

 

今日は実家の兵庫に帰省した際によく行く

三宮にあるうどんの名店「すずや」にランチで行ってきました。

 

余談ですがすずやの側にあるタワマンに最近友人が引っ越したそうです。

f:id:takanori5:20180812152906j:plain

 

すずやはJR三宮駅からは徒歩で八分ほど。

 

お店につくと10人ほどの行列ができていました。。

f:id:takanori5:20180812152800j:plain

今日は休日なのでやはり混んでいますね。

そして今日は34℃も気温があるのでみんな暑そうに行列に並んでいます。

 

ただ、うどんなので待つこと15分ほどで中に入れました。

 

私はおでんの大根と牛肉生醤油うどんを注文しました。

 

ここは天ぷらとおでんはセルフ式です。

おでんは一個140円。

おでん(豆腐)

f:id:takanori5:20180812153230j:plain

だしが美味しいです。

 

ゆで時間が15分ほどかかるとのことでうどんが遅れて到着しました。

牛肉生醤油うどん

f:id:takanori5:20180812153343j:plain

ここのうどんはコシがそこまで強くなく、食べやすいうどんです。

店内でうどんを打っているらしく、鮮度の高さを感じます。

牛肉も甘い味付けで非常に美味しいです。

 

三宮でうどんを食べるならぜひ。

【映画】ミッションインポッシブル フォールアウトを観てきました【感想】

ミッションインポッシブルフォールアウトを観てきました

f:id:takanori5:20180811152145j:plain

 

2018年8月3日、人気のミッションインポッシブルシリーズの最新作である

ミッションインポッシブル フォールアウトが公開となりました。

 

ミッションインポッシブルシリーズは毎回観てるわけではないですが、

今回はCMのアクションシーンがかなり興味を引いたので

観に行ってきました。

 

感想

期待していた通り、アクションシーンがかなり激しくて観ていて飽きがこなく、一気に観れました!

トムクルーズ、あの歳であそこまでの身のこなしができて素敵です。

バイクで警官をトムクルーズが撒こうとしている時に、トムが車にぶつかり吹き飛ばされるシーンが特に圧巻でした。

また、フォールアウトというタイトルにある通り

ヘリでの攻防がとても激しく見応えがありました。

敵のヘリとトムのヘリは別のヘリで、敵が起爆装置を持っていて

それを奪って爆発を止める必要があります。

こんなん絶対ムリやん…

と思わされましたが、

やり遂げたので爽快感もありました。

 

ただ、新キャラの吹き替えにかなり冒頭から違和感を覚えさせられました。

字幕で観ればよかったと思うぐらいです。

帰りの電車でキャストを調べてみたら

広瀬アリスとダイゴでした…

f:id:takanori5:20180811152237j:plain

外人の吹き替えとして声が完全に合っておらず、日本人感丸出しでした。

 

とはいえ、全体を通して見応えのある

アクション映画が好きな人はかなり楽しめる素敵な映画だと思います!

 

takanori5.hatenablog.com

takanori5.hatenablog.com

【git command】git push origin HEADが便利【git】

git push origin HEADが超便利

f:id:takanori5:20180728151940p:plain

こんにちは

localのbranchをリモートにpushする際、
いつもわざわざ以下のコマンドを実行しておりました。

git push origin BRANCH_NAME

これだと1日に何度も複数のbranchで作業していたら
branch名何だっけ?
となり、
push する際に

git branch

でbranch名を確認してから

git push origin BRANCH_NAME

としていました。

git push origin HEAD

を利用することで
current branchをリモートにpushできるようです。
これは今更ながら超便利です。

今まで知らなかったことが情けない。。


エンジニアのためのGitの教科書 実践で使える! バージョン管理とチーム開発手法 (WEB Engineer’s Books)

新品価格
¥2,376から
(2017/1/28 19:21時点)

【heroku】herokuのpostgresqlをhobby-devからhobby-basicにupgradeする【rails5】

先日herokuから突然以下のメールが届きました。

[warning] Database disruption imminent, row limit exceeded for hobby-dev database on Heroku app APP名

heroku
The database DATABASE_URL on Heroku app APP名has exceeded its allocated storage capacity. Immediate action is required.

The database contains 10,551 rows, exceeding the Hobby-dev plan limit of 10,000. INSERT privileges to the database will be automatically revoked in 7 days. This will cause service failures in most applications dependent on this database.

要するにDBのレコード数が1万レコードを超過したから、
DBを有料プランに移行するかレコードを削除してくれ!
って事ですね。
今回は有料プランであるhobby-basicのDBを作成し、データを移行したいと思います。

今回は海外ドラマの視聴記録サービス mitano
のDBをhobby-devからhobby-basicにupgradeしたいと思います。
mitano - あなたが見ている海外ドラマの視聴記録を簡単に | mitano

STEP1. hobby-basicのDB作成

$ heroku addons:create heroku-postgresql:hobby-basic
Creating heroku-postgresql:hobby-basic on ⬢ infinite-mountain-○○○○... $9/month
Database has been created and is available
 ! This database is empty. If upgrading, you can transfer
 ! data from another database with pg:copy
Created postgresql-flat-46737 as HEROKU_POSTGRESQL_AQUA_URL
Use heroku addons:docs heroku-postgresql to view documentation

STEP2. フォロワーがリーダー・データベースに追いつくのを待ちます。

$ heroku pg:wait

STEP3. データベースへの書き込み防止のためメンテナンスモードに!

$ heroku maintenance:on
Enabling maintenance mode for ⬢ infinite-mountain-92961... done

上記コマンドを実行するとサービスの画面が以下から
f:id:takanori5:20180722142855p:plain
以下のメンテナンス画面に自動で切り替わっていました。
素敵です!さすがheroku!
f:id:takanori5:20180722142819p:plain

STEP4. DB移行

旧DBから新DBにデータを移行します!

$ heroku pg:copyURLURLWARNING: Destructive action
 ▸    This command will remove all data from AQUAData from DATABASE will then be transferred to AQUATo proceed, type infinite-mountain-92961 or re-run this command with
 ▸    --confirm infinite-mountain-○○○○

> infinite-mountain-○○○○
Starting copy of DATABASE to AQUA... done
Copying... done

STEP5. DBの向き先を新DBに変更

$ heroku pg:promote HEROKU_POSTGRESQL_AQUA_URL
Ensuring an alternate alias for existing DATABASE_URL... HEROKU_POSTGRESQL_PINK_URL
Promoting postgresql-flat-46737 to DATABASE_URL on ⬢ infinite-mountain-○○○○... done

STEP6. メンテナンスモードを解除!

$ heroku maintenance:off
Disabling maintenance mode for ⬢ infinite-mountain-○○○○.. done

f:id:takanori5:20180722142855p:plain
メンテナンスモード解除後の画面
10分程で新DBに移行が完了しました!

緊張しましたがheroku はやはりなんでも手軽にできて便利ですねっ!

プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)

www.mitano.jp

takanori5.hatenablog.com
takanori5.hatenablog.com

【heroku】herokuデータベースをターミナル上で手動バックアップする方法【rails5】

herokuで動かしているrailsアプリのDBをターミナル上で手動バックアップ

個人で運営している海外ドラマの視聴記録 mitanoをheroku上で動かしています。
takanori5.hatenablog.com

DBのレコードが1万件に達したので
そろそろDBをバックアップしないとまずい!!
と思い、DBを手動でバックアップしてみました。
www.mitano.jp


ターミナルを使って簡単にDBのバックアップが行えます。
Heroku Postgresが対象

DBのバックアップ

バックアップは以下のコマンドを実行するだけでOK!

$ heroku pg:backups:capture -a アプリ名

実行ログは以下

Starting backup of postgresql-flexible-○○○○... done

Use Ctrl-C at any time to stop monitoring progress; the backup will continue running.
Use heroku pg:backups:info to check progress.
Stop a running backup with heroku pg:backups:cancel.

Backing up DATABASE to b001... done

バックアップ確認

バックアップを確認するコマンドは以下

heroku pg:backups -a APP

実行ログ

hodzumitakanori-no-MacBook-Air:mitano hodzumitakanori$ heroku pg:backups -a infinite-mountain-○○○○
=== Backups
ID    Created at                 Status                               Size    Database
────  ─────────────────────────  ───────────────────────────────────  ──────  ────────
b001  2018-07-22 04:55:37 +0000  Completed 2018-07-22 04:55:38 +0000  1.14MB  DATABASE

=== Restores
No restores found. Use heroku pg:backups:restore to restore a backup

=== Copies
No copies found. Use heroku pg:copy to copy a database to another

プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)

海外ドラマの感想を共有するSNS mitanoをリリースして1ヶ月が経ちました

 f:id:takanori5:20180707183122j:plain

こんにちは

 

今年の5月末あたりに

海外ドラマの感想を共有するSNS mitanoというWebサービスをリリースしました。

www.mitano.jp

1ヶ月と少し経過したのでブログに現在の状況をまとめてみようかと思います。

 

mitanoとはどんなサービスか

「エピソード単位での感想の投稿」

mitanoは海外ドラマの感想をエピソード単位で投稿できます。

また、感想に対してのいいねやコメントなどを通してユーザー同士で雑談が可能です。

 

www.mitano.jp

「面白いドラマに出会える」

mitanoはドラマごとにみんなの感想がみられたり、同じドラマをみている人が他にどんなドラマをみているのか確認したり、

面白いドラマに出会うきっかけを提供しています。

「海外ドラマまとめ」などの情報も見ることが可能です。

 

【2018年】ゲームオブスローンズ好きに贈る!本当に面白い海外ドラマ4選【厳選】 | mitano

www.mitano.jp

「最新の海外ドラマニュースがドラマごと、キャストごとに見れる」

感想にフォーカスしたSNSサイトとしての側面だけでなく、好きなドラマのことをもっと好きになれる多くの最新のニュースを掲載しています。

最新の海外ドラマのニュースを複数の情報サイトから毎日フィードしているため、

わざわざ検索エンジンなどで多くのサイトを見る手間を削減できます。

 

https://www.mitano.jp/entries/index

f:id:takanori5:20180707231631j:plain

mitanoをリリースしようと思った経緯

 そもそも私自身海外ドラマが大好きで、高校時代からプリズンブレイクやゲームオブスローンズ 、24、ゴシップガールなど多くの海外ドラマを観てきました。

ただ、海外ドラマの特徴として、シーズン数・エピソード数が多いため、なかなか自分と同じエピソードまで観ているという人が周囲におらず

感想を話し合いにくいと感じていました。

そもそも同じドラマを見てる人自体あまり周囲にいませんでした。

 そのため、エピソード単位で感想を共有する機能を提供することで

まるで同じエピソードを隣で見ているかのように感想を話し合えるサービスを作ろう

と思い、このサービスを作りました。

 

mitanoは感想をシェア出来るSNSという点に主軸を置き、多くの機能とコンテンツを提供するように心がけましたが、具体的な機能と掲載コンテンツを羅列してみます。

機能リスト

f:id:takanori5:20180707231745p:plain

facebookログイン・twitterログイン

・エピソード単位・シーズン単位・ドラマ単位の感想投稿機能

・感想へのコメント機能

・感想へのいいね機能

・ユーザーフォロー・アンフォロー機能

・海外ドラマまとめ機能

 ・ニュース情報のRSSフィード

 

提供コンテンツ

f:id:takanori5:20180707231816j:plain

当初はドラマの概要ぐらいしかコンテンツとして提供していませんでした。

(ユーザーが投稿する感想以外の部分)

しかし、感想が投稿されていなくても楽しめるサイトにしよう!

という思いから、以下の情報もコンテンツとして提供するようにしました。

 

・海外ドラマ概要

・出演キャスト

・シーズン情報

・エピソード情報

・海外ドラマニュース

・海外ドラマまとめ

 

サービスリリース後1ヶ月後の状況

f:id:takanori5:20180707231846j:plain

 

ユーザー数

65ユーザー

 

月間PV

920

 

なかなか悲惨な数字ですが、知人以外のユーザーも割といたのが嬉しかったです。

ただ、感想投稿まではなかなか行ってないです。

現状を踏まえた今後の方向性

 「現状の課題」

ユーザー数と感想の投稿数がまだ圧倒的に少ないです。

SEO的にもまだ自然流入が低く、対策の余地が大いにあります。

ただ、現状のコンセプトでは、ユーザーとユーザーが相互にコメントしあうSNSというもの(ユーザー投稿型)なので、個人のサービスとして戦うには厳しさを感じます。

このタイプのSNSサービスはある程度の投稿数がないと、サイトが廃れて見えてしまい、せっかくユーザーが訪問しても何もせずに帰って行ってしまいます。

 

「今後の方向性」

「感想を共有しあう」というコンセプトから

「自分が観たドラマの視聴記録」

という方向に転換しようと考えています。

前者だと、mitanoを訪問した一人目のユーザーと100万人目のユーザーだと明らかに100万人目のユーザーの方が、たくさんの投稿を見れて初期のユーザーにはほぼメリットがないサービスとなってしまいます。

しかし、後者の視聴記録という立ち位置に転換すると、

あくまで自分のために今自分がどのドラマををどこまでみたか

という風に変わり、かつ感想の投稿がメモ的な気軽に投稿できるものに変わるので

サービスを利用する一人目のユーザーも100万人目のユーザーも、得られるメリットが変わりません。

という、想定の元7月に大幅アップデートをかけます!!

 

ただ、個人的に海外ドラマにフォーカスしたサービスの存在価値は大いに価値があると考えているので

引き続き前のめりでサービスを運営していきます!!

 

いちばんやさしいグロースハックの教本 人気講師が教える急成長マーケティング戦略 「いちばんやさしい教本」シリーズ

【Ruby on Rails5】 heroku で PostgreSQL のエラーが発生(UndefinedFunction: ERROR: operator does not exist)

現在、localの開発環境のDBにはsqlite

本番環境のDBはpostgreSQLを採用しています。



localだと問題なく動いていたものを本番にdeployして動作確認を行ってみたところ

以下の500エラーが発生

UndefinedFunction: ERROR: operator does not exist: bigint = character varying

idをintegerで定義していましたが、postgreSQL側でStringで認識されていたことが原因のよう。

型を変更するmigrationファイルを作成して本番で定義変更を行ったところ解決

以下がmigrationファイル

class ChangeDatatypeFollowedIdOfRelationships < ActiveRecord::Migration
  def self.up
          change_column :table_name, :column_name, :'integer USING CAST(column_name AS integer)'
  end

  def self.down
          change_column :table_name, :column_name, :string
  end
end

プロフェッショナルのための 実践Heroku入門 プラットフォーム・クラウドを活用したアプリケーション開発と運用 (書籍)