Rails migrationでadd_columnのオプションにindex: trueをしても効かないから気をつけよう

ここ最近Railsを触っていて一番の衝撃といってもいいかもしれない。
知識のアップデートを怠ってはいけない。悲しい。

ブログ記事や色々なところで add_column にオプションとして index: true を貼っているものを見るのですが、あれ実はindexが効いていないそうなのです(衝撃)

add_column ignores index: true

こちらのプルリクで無効なオプションが渡されたらWARNINGエラーが出るように修正されたものがmasterブランチにmergeされているので次バージョンにのるのか近いうちにリリースされそうですね。

以下のようなコードを見かけたらadd_indexをつけましょう。あとmigrationしたらgitでschema.rbとかstructure.sqlとか確認しておきましょう。

add_column :hoge, :fuga, index: true

以下に修正

add_column :hoge, :fuga
add_index :hoge, :fuga

他のissueでもmigrationにvalidationをつけるやつあるからそこらへん気にしなくてよくなる未来は近そう
Add validations for t.references/add_reference options

Instaxの音付きチェキをダウンロードするChrome拡張機能を作りました

Instaxの音付きチェキをダウンロードするChrome拡張機能を作成しました

こんにちは!
応援しているアイドルグループが2019年の夏以降、たまに音付きチェキを出すようになりました。
音付きチェキの詳細についてはこちら→ https://instax.jp/cheki-press/products/22218/

チェキにQRコードが印字され、それを読み込むと撮影時の音を再生出来るという優れもの!
なのですが、一応縛りがあって、サーバーの保存期間は1年なのです。つまりサーバーにアップしてから1年経つと音が消えてしまうということです。
しかも特にダウンロード機能などもついていないので消えるのを待つばかり・・・。それはちょっと!
ということで音付きチェキをダウンロードするChrome拡張機能を作成しました!
“Instaxの音付きチェキをダウンロードするChrome拡張機能を作りました” の続きを読む

プログラミング始めたいけどどの言語選べばいいかわからない人へ

みなさんこんにちはたがみです!
小学校でのIT必修化に当たり、プログラミングに興味を持つ人が増えてきているように感じます。
僕のまわりでも最近そのような相談が増えてきました。
この記事ではたくさんあるプログラミング言語のうちどれを選べばいいか、自分が考える2つの軸を説明したいと思います。

前置き

僕はRubyを教えていたりWebに関わる開発を行っていることが多いのでそのような方から相談を受けることが多いのですが、初心者の方から
「将来Rubyで大丈夫ですか?」
「仕事はPHPのほうが多いですか?」
「Pythonがイケてるって聞いたのですが、、」
など言語で悩む人が多いなぁという印象です。
確かにその言語の特色はあると思いますし文化圏の違いで得意なことは変わってきますが、僕が思っているのはプログラミング言語1つしっかり使えるようになっていれば他の言語も文法や考え方は似ていることが多いので他の言語を使えるようになるために必要な学習量は減る、ということです。
自然言語でもそうですが、まずはしっかり使えるプログラミング言語を1つ作っておいて、それをベースに2つ目・3つ目を増やしていくのが結果的に効率的だと考えています。
なので正直なんでもよいので使えるようになればいいのではないか?というのが正直なところであり結論です。

それを踏まえてどうやって言語を選んでいくのか見てみましょう。

必要性

まず1つ目は、社会人の方は比較的こちらで選んだほうがいいのかなと思っていますが、必要性です。
必要性というのは、例えば以下のような例です。

  • 会社で同僚が使っている言語
  • Excelの自動化をしたいからVBA
  • iPhoneアプリを作らなければいけないからSwift

社会人になると学生と違って必要性に迫られたほうが習得しやすいです。なぜなら仕事がかかってたりプレッシャーがかかってたり色々背負うからです笑
また社会人であればまわりに既にプログラムが出来る人がいることも多いのでそのような必要性がある言語を選んでおくとまわりの人たちに聞けるかもしれないというメリットがあります。

また必要性がない場合は自ら必要性を作ることも出来ます。
仕事のタイミングがあればそれを受けてみたり、親しい友人や親族にいつまでにこういうものを作る!と宣言してみたりすると適度なプレッシャーがかかって言語選択に時間をかけている場合じゃなくなるかもしれません。

興味関心

2つ目は興味がある言語をとりあえずやっていく、という軸です。
特にやりたいこともないし、会社にいる人であれば特にこの言語やれ、という雰囲気もない場合はこちらで言語を選びましょう。
何か聞いたことがある言語をやってみてもいいですし、授業で昔やったことある言語をやってみるのもいいです。興味がある限り色々学習してみましょう。

確かに何かを作らなければならない、というプレッシャーの中のほうが何かを作り切る力はつくかもしれませんが、作り切る力とプログラミング力はまた違うスキルだと思うので興味軸で学習を始めたからといってしっかり学習を進めればしっかりとしたスキルになります。

この記事を書いているたがみもどちらかといえば興味関心軸でプログラミング言語を学習し始めました。
最初は本屋さんで見かけたC言語を3ヶ月、Webサイト作りたいなぁと思い始めたので先輩が使っていたPHPを1年、PHPある程度出来るようになったからもうちょっとフロントでインタラクティブにしたいなぁと思ったからJavaScript、その後4年くらいPHPとJavaScriptでWebを作り続けて、噂でめちゃくちゃいいと聞いたRubyやRailsをやり始めようと思ってそちらの言語を習得して・・・というような流れです。

最初から1つの言語に絞ってやったほうが効率的だとは思いますが複数言語をやったあとに個人的に好きな言語を極めていく、というのもいいと思います。
知っていると知らないでは効率が全く違う分野なのでやりたいことに対して最短で学ぶことも大切ですが色々回り道して雑学などを貯めていくのもいい方法だと思います。

最後に

最初のほうで言ったこととかぶることでもありますが、言語選択は大事ですがそれで迷って学習が遅れるくらいなら何か言語決めて学習を始めたほうが色々見えるのでまずは始めてみることをおすすめします。
おそらくやってみようと思った選択肢にあがったプログラミング言語は何かしら今の自分に必要だと思う直感が働いているはずで、直感は大体正しいのでその方向性で進んでいけばいいかな、と思います。

個人的なおすすめはWeb作りたいならRubyやってフレームワークにRuby on Railsをやるのが最新のWeb開発環境に近づくしいいんじゃないかなって思います。
習得までにはどの言語も時間がかかるとは思いますが頑張っていきましょう!!

Google検索ページの固定検索窓を解除するChrome拡張機能を作成しました

みなさんこんにちは!今回Chrome拡張機能をさくっと作成したのでブログを書こうと思った次第です。なかなかブログ更新する機会もなくなってしまったのでどうやってたか忘れてしまいましたがささっと書いていこうと思います! “Google検索ページの固定検索窓を解除するChrome拡張機能を作成しました” の続きを読む

Amazon LinuxでLet’s Encryptの更新作業に手間取った話

みなさんこんにちは!
このブログはLet’s Encryptを使ってSSL化されているのですが、その更新に3時間くらい使ってしまったので、同じ人のために書き残しておきます。

ちなみにAmazon Linuxで、Amazon Lightsailを使って、nginx+php-fpmで運用されています。

“Amazon LinuxでLet’s Encryptの更新作業に手間取った話” の続きを読む

ブログをロリポップからAmazon Lightsailに移行し、Nginx+PHP7でWordPressを動かすようにしました

みなさんこんにちは。
このブログを設立するときに、速く構築できるということでロリポップを契約していたのですが、先日発表されたAmazon Lightsailがよさげだったのでブログ移行しました。
また、そのついでではないですが、Nginx+PHP7構成にし、ページ表示速度を上げてみたりしました。
“ブログをロリポップからAmazon Lightsailに移行し、Nginx+PHP7でWordPressを動かすようにしました” の続きを読む

RailsGirlsOkayama 2ndを2月25日26日に開催する予定です!

こんばんわ!
このブログは大都会岡山 Advent Calendar 2016の17日目の記事です。昨日の記事はpuhitakuさんの住んでてわかる岡山県、離れてわかる岡山県。 – Zopfcodeでした。岡山のいいところがうまくまとまっていて、またコミュニティもまとまっていたのでまたじっくり読もうかと思います。
“RailsGirlsOkayama 2ndを2月25日26日に開催する予定です!” の続きを読む

Apple Music学生プランを利用して月額480円で音楽聴き放題生活を送ろう!

161209

みなさんこんにちは。
私はApple Musicを契約していたのですが、ふと確認してみるとApple Musicの学生プランが公開されていました!!しかも月額480円なのでTSUTAYAで1ヶ月2枚くらいアルバム借りるような人であればもう絶対Apple Musicのほうがお得!!
なので今までも月額980円払うのを躊躇していた人は今がいいタイミングかもしれません。
“Apple Music学生プランを利用して月額480円で音楽聴き放題生活を送ろう!” の続きを読む