Archives for 6月2015

ClojureのCompojure(のmiddleware)でリダイレクトするときは:urlだけでなく:path-infoも変えないといけない件

誰得なのかわからないニッチネタを投下します

Clojure製のフレームワーク、CompojureでリクエストされたURLを元にリクエストマップを変更して再びリダイレクトをかけるには:urlだけでなく:path-infoも変えないと動きません。

これに気付いたのは、Clojureのトレイリングスラッシュリダイレクトのためのコードを探していた時でした。

ここに、スラッシュなしの場合にスラッシュありへリダイレクトするコードがありますが、動いていません(というような質問だった)。 :url部分以外でも間違っていた箇所はありましたが、それらはケアレスミスかと思われます。

で、他にもこの手のコードを検索することができますが、:urlを変更しているのみなので、少なくともいまのcompojureでは動きません。

ということで、下記のように変更することで動くことが確認できました。

※これはmiddlewareとして、handlerに対して使ってください。

;;; http://stackoverflow.com/questions/14507445/ring-solution-to-redirect-missing-trailing-slash-urls
;
(defn good-response? [resp]
  (and resp (not= (:status resp) 404)))
;
(defn wrap-slash [handler]
  (fn [{:keys [uri] :as req}]
    (let [resp (handler req)]
      (if (or (good-response? resp) (.endsWith uri "/"))
        resp
        (let [added-slash (str uri "/")]<br />
          (if (good-response? (handler (-> req
                                           (assoc :uri added-slash)
                                           (assoc :path-info added-slash))))
            (redirect added-slash)
            resp))))))

gistにも貼っています。

トレイリングスラッシュ関連でお困りの方どうぞ(いるのか)

compojureのコードなどを読んだり、各種middlewareの挙動を確かめたりしたので、そこそこに勉強になりました。

Read More

CSS Nite in NIIGATA, Vol.4 w/新潟グラムでこんなことを話してきた

6月6日に、新潟にてCSS Nite in NIIGATA, Vol.4 w/新潟グラムというイベントが行われました。登壇者としての参加です。

新潟の地にちゃんと降り立つのは今回が初です。

内容は、Webデザイントレンド。年末には、Shift 9というイベントがあり、9という数字が意味する通り、今年でこのセッションを受け持って9年目となります。

毎年大量にリサーチしたものを自分なりに分析して傾向を紹介しています。セッション時間は長いですが、難しい内容ではなく、制作者でなくても楽しめるものを目指しています。

今回のスライド数は、作成当時500枚。冗長な部分を削除して400枚となったうち、ボツネタを除外して300枚が実際に講演で使われました。

ボツネタは、「おまけ」と称してスライドの最後に100枚ほどつけています。

つまり、イベントに参加していただいた方は、400枚近い資料が手に入ったことになります。お得ですね!

今回は75分くらいお時間をいただいて話してきました。

ここで全部を紹介するわけにはいかないのですが、雰囲気だけちょっと抜粋してみます。

毎回、セッションの冒頭に一つ、その年に気になったリニューアルを紹介することを「まくら」としているのですが、今回はモルガン・スタンレーのリニューアル。

このリニューアルのアートディレクションなどをしている人や会社SapientNitroを紹介し、そのSapientNitroとなるSapientという会社がNitroという会社を買収した当時のキャプチャも紹介(もちろんリアルタイムにキャプチャしてました)

したあと、このセッションの副テーマでもある「キャプチャを通して世界がみえてくる」を掲げました。

セッションのメイン構成

メイン構成は例年通り、

  • 海外デザインの演出面の表現
  • 海外デザインの機能面の表現
  • グローバル企業、上場企業、自治体の傾向

です。

このメインの部分がだいたい250ページくらいあり、特に自治体とかは普段見る人が少ないせいか人気があります。

例えば、昨年1年間でどれくらいリニューアルしたのかなどの情報は定番の構成となっています。

加えて、以前のブログ記事で紹介した通りに、グローバル企業、上場企業、地方自治体の使われている色の変化についてのサブセッションを途中でいれての構成となりました。

そのなかの一つ、上場企業の2014年に使われた主な色はこんな分散になりますが、これと2012年の震災後との比較などを行っています。

色の解析は、ClojureというJava環境上でうごくLisp系プログラミング言語でおこなっています。今後も持っている膨大なビッグデータにアクセスしていろいろな分析をしていこうと思っています。

Webデザイントレンドというのは、とてつもなく巨大なテーマです。僕自身、まだまだ見えてこないところはあるし、今後もやりがいを感じているテーマです。

一見どうでもいいと思えるようなトピックが、時代を象徴していたりします。僕は、Webデザイントレンドは生物学で言うところの収斂進化の一つととらえているところがあって、この世界観はWebデザイントレンドのメインテーマとして毎年冒頭で話しています。

After Darkでも講演が決定しました

こちら、まだ席に余裕がありますので、本記事を読んで、もっと聞きたいなと思ったらぜひ。

今がよくわからなくなってきた企業、団体さまへ

企業・団体向けに出張デザイントレンドみたいなことをやっています。

特に、新規サイト開設やリニューアル時における現状把握などに効果を発揮します。加えてじゃあそこから今後どうしていこうみたいな話をしたりすると一層効果的です。

詳しくはお問い合わせください。

Read More