RubyKaigi 2017 RubyKaigi 2017 Sep.18th-20th International Conference Center Hiroshima, Hiroshima, Japan

split の研究 split 関数の挙動が言語ごとに微妙に異なると知人と話題になったので調べてみました。結果はまとめをどうぞ。 Ruby まずはRubyから調べてみます。irb を使って調べました。 % irb ... まずは普通に分割 >> "a,b,c".split(",") => ["a", "b", "c"] 末尾に空要素があると、省略されてしまう >> "a,,c,,".split(",") => ["a", "", "c"] 末尾の空要素を省略しないためには -1 が必要 >> "a,,c,,".split(",", -1) => ["a", "", "c", "", ""] 空文字列だと結果も空 >> "".split(",") => [] -1 をつけても同様 >> "".split(",", -1) => [] 分割パターンを指定しない場合も同様 >> "".split
We all know that online forms can be a hassle to have to fill out. Especially when there is nothing but a list of inputs presented without much guidance or feedback. But as form creators, there are many things we can do to improve the experience for the users filling out forms online. Using CSS # Using CSS, we have access to four states of a form input with pseudo-classes - :valid, :invalid, :requ
Forms is the one of the most important type of interaction for users on the web and in the apps. They are used everywhere — for registration, subscription services, customer feedback, checkout, to initiate transactions between users and companies, or as data input to search or share information. Developers should pay special attention to improving their forms and making them as usable as possible,
Every day, we use forms for essential online activity. We fill them out to complete purchases; to sign up for email lists, social networks, and more; to participate in discussions; and to describe that oh-so-delicious looking photo of our lunch. It’s hardly hyperbole to say they’re the lifeblood of digital information sharing. For many years, however, with few improvements to be found, forms have
input要素ではpattern属性でその入力された値をバリデーションできる。バリデーションに失敗した場合、title属性に指定された文字列がヒントとして表示されることが多い(ユーザー・エージェント側の実装に依存する)。事実Chromeでは古くから上記スクリーンショットのようなポップアップが表示される。多くのブラウザーで似たような実装を持つが、バリデーションに失敗した要素が画面外にある場合にはうまくヒントが表示されないことがあるようだ。 Demo: Form Validation Hint and Out of Bounds input Element デモにある入力ボックスは小文字アルファベットに制限してある。数字などを入力してフォームを送信しようとすると、バリデーションが失敗しヒントがポップアップされるはずだ。Chrome 53やInternet Explorer 11、Firefox
絵文字(UTF-8 の 4 byte 文字にあたる)を利用可能とするため、文字コードは utf8mb4 を利用する。 絵文字だけでなく非常用漢字なども対応するためには必要。 サーバ設定 とりあえず開発環境(Mac)は Homebrew でインストール brew install mysql (検証時点で 5.7.13)。 サーバの設定を以下のとおり変更する。 $ diff /etc/my.cnf.org /etc/my.cnf --- /etc/my.cnf.org 2016-07-05 18:46:02.000000000 +0900 +++ /etc/my.cnf 2016-07-15 14:43:47.000000000 +0900 @@ -16,7 +16,7 @@ # The following options will be passed to all MySQL clients
なぜ絵文字をデフォルトで使えないか utf8は3バイト文字までしか対応していない 絵文字は4バイトなので不正な文字として扱われる 絵文字をMysqlで扱うには 文字コードをutf8mb4にする 参考(MySQLのutf8mb4 文字セットについて):https://dev.mysql.com/doc/refman/5.6/ja/charset-unicode-utf8mb4.html Rails + MySQLでのutf8mb4の設定フローは下記のとおり。 1. my.cnfを設定 innodb_large_prefix のちに ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes とエラーが出ることがある。 これは767byte問題ともいわれる。InnoDBテーブルのキープリフィックスは最高
RailsがMySQLのcollationをサーバー側のデフォルトのutf8_general_ciからutf8_unicode_ciにわざわざ変えてるのどうせ大した理由じゃないだろと思って掘ってみたらやっぱり大した理由じゃなかった… https://t.co/6NeetGhTF0— Ryuta Kamizono (@kamipo) April 18, 2014 Railsでcollationとしてutf8_unicode_ci(RailsのDEFAULT_COLLATION)が採用されるのはcharsetが未指定もしくはutf8(RailsのDEFAULT_CHARSET)のときだけで、utf8mb4にすることとかは全く考慮されてない。— Ryuta Kamizono (@kamipo) April 19, 2014 @frsyuki MySQLのcharset utf8のときのデフォルト
MySQL と Unicode Collation Algorithm (UCA) - かみぽわーる に関連するトピックで、 MySQL には寿司ビール問題というのがある。 寿司ビール問題どっかで詳しくお話を聞くべきだよなぁ。。。— RKajiyama (@RKajiyama) March 18, 2015 これはどういう問題かというと、 MySQL の Unicode では binary collation にしてコードポイントで比較しないと🍣と🍺に限らず絵文字が同値判定されるという問題です。 あれ? MySQL の utf8mb4 charset って、4バイト文字同士を比較すると同じ文字扱いされる? SELECT '🍣'='🍺' → 1 MySQL的には寿司とビールは同じ扱い。— とみたまさひろ (@tmtms) December 22, 2014 MySQLで select
前にherokuで同じことをやった。 yamacent.hatenablog.com 今度はmy.cnfとかをいじりつつ手元のMySQLに対して、文字コードをutf8mb4に設定する。絵文字を格納するために必要。 環境 $ mysql --version mysql Ver 14.14 Distrib 5.6.25, for Linux (x86_64) using EditLine wrapper $ cat /etc/redhat-release CentOS release 6.6 (Final) 現在の文字コードの確認 mysql> show variables like '%char%'; +--------------------------+----------------------------+ | Variable_name | Value | +-----------
MySQLのデータベースをutf8で作成していたけれども、どうもiPhoneやAndroidから絵文字を送るとエラーになってしまっている。 それでちょっと調べてみたところ、どうやら絵文字は4バイトUTF-8で送られてくるみたい。 MySQL 5.5.3以降はその4バイトUTF-8に対応しているようなので、カラムの文字コードを4バイトUTF-8(utf8mb4)にしてやる必要がある。 MySQLで4バイトのUTF-8文字を扱ってみる データベースを最初から作る場合 最初から作れる場合、または作り直せる場合は、文字コードを「utf8」ではなく「utf8mb4」で定義してやればいい。 すでにutf8で作ってしまっている場合 その場合は、絵文字を格納したいカラムに対して、文字コードを変更します。 例えば、データベースdb1のテーブルtable1にあるcomment (text)に対して格納したい場
一体何年前の話をしてるんだと思われそうですが、スマートフォンなどで入力できる絵文字を MySQL にきちんと格納するには UTF-8 ではなく utf8mb4 という文字コードを使う必要があります。この文字コードは MySQL 5.5.3 以降で使えます。 » MySQL :: MySQL 5.5 Reference Manual :: 10.1.10.6 The utf8mb4 Character Set (4-Byte UTF-8 Unicode Encoding) 自分がほとんど絵文字を使わないのでまったく考慮してなかったのですが、「#グラドル自画撮り部 の部室」で Twitter から取り込んだツイートデータを見てみると、ツイートの文章が途中で切れてしまっているものが結構たくさんありました。 ↑ ほんとは最後にハッシュタグや画像の URL がついているはず。 調べてみると絵文字のと
Redash helps you make sense of your dataConnect and query your data sources, build dashboards to visualize data and share them with your company. “Redash is as essential as email to my company. We love data but accessing the data is a pain without Redash. Any company I go to, I get them hooked on Redash. It’s an easy sell :)” by Ben Dehghan, Co-Founder of Data Miner Read what our users say → Write
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く