arow-okamotoのブックマーク (148)

  • rio + extensible なフレームワーク: mix

    最近はよく rio + extensible で Haskell アプリケーションを書きます(趣味の). 前々から何となくパターン化できそうだなぁと思っていたのが,それをついにパターン化し mix パッケージとして形にしましたというお話です. ちなみに,それぞれのパッケージを軽く説明すると: rio : Haskell のビルドツール Stack を開発しているチームが作っている Reader パターンをベースにした Alt. Prelude extensible : 拡張可能レコードを始めとして様々な拡張可能なデータ構造を同一の形式で利用できるようになるパッケージ mix パッケージ リポジトリはこれ: mix パッケージの目的は rio パッケージの RIO env a モナドの env の部分を extensible パッケージを用いて簡単に構築することであり,env をプラグインと

    arow-okamoto
    arow-okamoto 2019/05/28
    tonatonaちゃんもついにinspired byされました
  • フォームバリデーションからフォームデコーディングの時代へ - Qiita

    GUIのアプリケーションにおいて、ユーザーが入力した内容を検証する「フォームバリデーション」は必須の技術です。 しかし、静的型付けの恩恵を受けるために Flow, TypeScript, Elm, PureScript などをつかってフロントエンドコードを書くようになると、実はフォームバリデーションだけでは足りなくなってきます。1 この記事ではフォームバリデーションを包括した新しい概念である フォームデコーディング を紹介し、Elmでフォームデコーディングを実践するために開発した elm-form-decoder を使った実例をお見せします。 軽く調べた限りではフォームの入力検証について同等の概念を実現するライブラリなどは見当たりませんでしたが、もし似たライブラリなどをご存じの方がいらっしゃればご指摘いただけると幸いです。2 サンプルアプリ まずは現実にありそうな簡単なアプリケーションを題

    フォームバリデーションからフォームデコーディングの時代へ - Qiita
  • 値が制約を満たしていることを型で保証する - Qiita

    URLをあらわす文字列であるとか、0以上であることが要求される整数であるとか、値が何らかの制約を満たすことを要求される場面は多くあります。 たとえば、男女2頭のヤギさんの角の数を引数にとって、その2頭のヤギさんが愛し合って交尾して子どもを作っても問題ないかを判断する関数を定義します。 それぞれの角の数を引数にとって Bool型を返す自然な設計ですね? でも、ちょっとまってください! 有角のヤギさんは2しか角を持っていません。 そのため、ヤギさんのとりうる角の数は以下のいずれかしかありえないはずです。 0: 生まれつき無角のヤギさんか、有角の仔ヤギちゃんの角芽を焼きごてで焼いた(断末魔のような悲鳴がする) 1: 有角の仔ヤギちゃんの角芽を焼いたけど不十分で1つだけ残った(断末魔の悲鳴が無駄になった😱) 2: 生まれつき有角 3以上: 染色体に異常があるので、ここではヤギとは見な

    値が制約を満たしていることを型で保証する - Qiita
    arow-okamoto
    arow-okamoto 2019/04/16
    めずらしく軽めの基礎的なテクニックの記事を書いてみました。 ヤギさんの子作りについてもすこし学べます。
  • 商用利用無料!UIでよく見かけるかわいいアニメーションで動くSVGアイコンがコピペで利用できる -Potlab Icons

    <svg version="1.1" id="icon-hearbeat" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="510px" height="510px" viewBox="0 0 510 510" style="enable-background:new 0 0 510 510;" xml:space="preserve"> <path d="M369.75,21.675c-43.35,0-86.7,20.4-114.75,53.55c-28.05-33.15-71.4-53.55-114.75-53.55C61.2,21.675,0,82.875,0,161.925 c0,96.9,86.7,175.95,219.3,29

    商用利用無料!UIでよく見かけるかわいいアニメーションで動くSVGアイコンがコピペで利用できる -Potlab Icons
  • 「大学生に、ノートPCはいらない」 日本マイクロソフトによるSurfaceの宣伝広告がインパクトあると話題に

    記事はアフィリエイトプログラムによる収益を得ています 大学生に、ノートPCはいらない――日マイクロソフトによる「Microsoft Surface」の広告展開がSNSで「面白い」「攻めてる」とSNS上で話題になっています。“ノートPCはいらない”の真意は……? 電車内や全国の主要駅、家電量販店舗などで展開中のSurfaceの広告(日マイクロソフト公式ブログ) 電車内などで掲出中の広告で、「スマホがあれば、大学生活は乗り越えられる」としつつ、そこに傍点付きの「『大学生』になることが、ゴールの人たちにとっては」という言葉を付け加えています。そして同時に「大学の4年間は、自分を成長させる特別な時間」だとして、“楽しいだけで過ぎていく4年間”を選ぶか、“Surfaceとともに世の中をあっと言わせる側にまわるのか”と、冒頭の言葉から逆説的にノートPCを宣伝する内容となっています。 またYou

    「大学生に、ノートPCはいらない」 日本マイクロソフトによるSurfaceの宣伝広告がインパクトあると話題に
    arow-okamoto
    arow-okamoto 2019/03/03
    この動画を見て「Surface買えば成長できる」って短絡的に考えるような意識だけ高い系の知能レベルにあわせた非常によくできた広告だと思います。
  • これは便利!CSSの指定した機能のフォールバックがうまく機能しているか確認できるツール -CSS Feature Toggle

    CSSの新しい機能は便利で魅力的なものばかりですが、ネックになるのがサポートブラウザです。レイアウトではCSS GridやFlexbox、また@supportsによる機能検出、画像をレスポンシブ対応にするためにobject-fitやスクロールコンテンツにposition: sticky;など、それぞれをサポートしていないブラウザでどのように表示されるか、フォールバックはうまく機能しているか確認できるデベロッパーツールの機能拡張を紹介します。 CSS Feature Toggle -GitHub CSS Feature Toggleの特徴 CSS Feature Toggleのインストール CSS Feature Toggleの使い方 CSS Feature Toggleの特徴 CSS Feature Toggleはデベロッパーツールの機能拡張で、CSSのさまざまな機能をサポートしていないブ

    これは便利!CSSの指定した機能のフォールバックがうまく機能しているか確認できるツール -CSS Feature Toggle
    arow-okamoto
    arow-okamoto 2019/01/23
    めちゃくちゃ便利やんけ
  • 入社1か月で営業成績1位に。サラリーマン芸人が語る、夢の叶え方 | bizSPA!フレッシュ

    流行りの「パラレルキャリア」というのを目指して日々活動をしております。普段、僕は第二新卒や既卒の方のキャリアカウンセリングを行なっています。前回は高卒で就職活動した当時のお話でした。今回はそこを辞めてからのお話です。 LINEを使って相方探し。なんとかコンビ結成 勢いで会社を辞めたものの、私の構想ではコンビで芸人になると考えていたため、まずは相方探しから始めました。しかし、当時19歳。周りの友人のほとんどが大学や専門学校に進学をしていたため、高校卒業以来、会っていない人が多く、まずはLINEを使って数人を誘ってみました。 そうしたところ、1人だけ興味を持ってくれたようでそこから必死に口説いて、なんとかコンビを結成しました。私は養成所などには所属したことがないので完全に我流でネタ作りに励んでいました。 コンビの方向性がある程度、決まったところで、いくつかの事務所にオーディション用紙を送付して

    入社1か月で営業成績1位に。サラリーマン芸人が語る、夢の叶え方 | bizSPA!フレッシュ
    arow-okamoto
    arow-okamoto 2019/01/22
    おもしろかった
  • スペシャリストとして圧倒的に成長する極意

    > 世に伯楽有りて、然る後に千里の馬有り 1日に千里を走るほどの名馬も、その能力を見抜いて適切に活かせるように環境を整える人間(=伯楽)がいなければ、大飯喰らいでどうしようもない落ちこぼれの農耕馬になってしまう。 私はこのことわざが好きで、傲慢ながら自分のことを「現代の伯楽」と思い込んで、人の才能を正しく活かせるようにするお手伝いをしています。 世の中には、人それぞれの真価を発揮することを阻害する理不尽に満ちています。 そういった理不尽をぶちこわし、打ち砕くことを楽しんでいるのです。 さて、私は実際に「現代の伯楽」の役割を果たそうと、コーチングのお仕事などを通してたくさんの方のお話を聞いてきました。 その中でもよく聞くのが「スペシャリストとして成長したい」という願望です。 人は「これ」といった強みを持てないと 「この会社がなくなったら生きていけないんじゃないか」 「自分なんていてもいなくて

    スペシャリストとして圧倒的に成長する極意
    arow-okamoto
    arow-okamoto 2019/01/06
    世界の真実を明かしました
  • Haskellの新世代フレームワーク Tonatona - Qiita

    Haskell を用いたアプリケーション開発は 「新しく作るのには時間がかかってしまうが、その代わり強い静的型のおかげで保守性が高い」 と言われることがよくあります。 もちろん「いや、新しく作る際にもむしろ型のおかげですばやく作れる」などの反論もありますが、こういったトレードオフがあることもまた事実です。 さらに、Haskellの闇の力に飲まれてしまった方が書く厨ニ病コードは、人すらも1週間後には意味がわからなくなって保守性すら低くなる怖さも秘めています。 今回ご紹介する Tonatona は、Haskellを用いたアプリケーション開発にありがちなこういった問題を解決して、今までの常識を覆す「統合的アプリケーションフレームワーク」です。 公式リポジトリ 最新の内容はTonatonaのリポジトリにあります。 トナカイのコスプレをしたさくらちゃんが目印です。 どんな人のためのフレームワークか

    Haskellの新世代フレームワーク Tonatona - Qiita
    arow-okamoto
    arow-okamoto 2018/12/02
    今日はヤギの話は控えめです。
  • 2019年 Elmをはじめる人が最初に読むページ - Qiita

    高品質なウェブフロントエンドを作るための言語 Elm の有用性が徐々に広まり、今年も採用事例が増えました。 利用者数が増えることは良いことではありますが、一方で悪気なく誤解を招く情報が生まれてしまう機会も増えてきます。 そこで、記事はこれからElmをはじめる人やはじめて間もない人1が遠回りしないで Elm をモノにできるように、Elm を学ぶ上で落とし穴となる注意事項とその回避方法をまとめます。 なお、記事で対象にするのは「実際に Elm を使って実用的なアプリケーションを作りたい」と考えている方です。 Elm をマウンティングのために使いたいマウンティングゴリラの方や、「プログラミング言語全部完全マスターした」と言うためにハローワールドやTODOアプリだけ書いて満足したい方は、別にそういう生き方も否定はしませんが記事の対象外です。 そういう手っ取り早く形あるものを作ること自体に最大

    2019年 Elmをはじめる人が最初に読むページ - Qiita
    arow-okamoto
    arow-okamoto 2018/12/01
    ヤギベントカレンダーの1日目にぴったりな感じの記事を書きました。
  • 🐐ヤギ魔法少女さくらちゃん(世界一かわいいよ!)さんのツイート: "IBMのチームがElm採用した感想: * ランタイムエラーが出ないの本当 * OOP的な背景だと確かにちょっと慣れるのに時間がかかった * でも慣れたらその時間以上のものを得られた * 生産性高い、安全、しかもおもしろい!… "

    IBMのチームがElm採用した感想: * ランタイムエラーが出ないの当 * OOP的な背景だと確かにちょっと慣れるのに時間がかかった * でも慣れたらその時間以上のものを得られた * 生産性高い、安全、しかもおもしろい! https://t.co/DXR8O76ua2

    🐐ヤギ魔法少女さくらちゃん(世界一かわいいよ!)さんのツイート: "IBMのチームがElm採用した感想: * ランタイムエラーが出ないの本当 * OOP的な背景だと確かにちょっと慣れるのに時間がかかった * でも慣れたらその時間以上のものを得られた * 生産性高い、安全、しかもおもしろい!… "
  • イノベーションを起こせる「グローバルPDCA」とは|ヤギに学ぶ仕事術|note

    先日、「PDCAは答えが決まった領域でしか使えない。日企業はPDCAにこだわりすぎてイノベーションを起こせない」という記事が「PDCAを狭くとらえすぎでは?」「デザイン思考に夢見すぎww」など話題になっていました。 何事もこだわりすぎは良くないと思いますが、この記事の筆者さんは「PDCAを捨ててデザイン思考をすべき」という考えにこだわりすぎているようです。 そこで、今回さくらちゃんが人間のみなさんにご紹介するのが、答えがわからない領域で答えを見つけるために使えるグローバルPDCAです。 グローバルPDCAを駆使して、イノベェエエエエエエエエションを起こしましょう。 美ヤギの話さて、あなたは世界一おいしいご飯を探し求める美ヤギだと仮定してください。 まずは近くに美味しそうなご飯がないか見渡してみます。 めぼしい物があったらそこに向かって走り出しましょう。 でも、そこでまた周りを見渡すと

    イノベーションを起こせる「グローバルPDCA」とは|ヤギに学ぶ仕事術|note
  • ElmにクリーンでハックのないCSS modulesを

    のように自動的に書き換えてしまうのです。 もちろんCSSファイルのクラス名を書き換えるだけでは来の text クラスを持つHTML要素にスタイルが適用されなくなってしまいますから、書き換えたクラス名の対応関係を JSON オブジェクトとして以下のように出力します。 HTML側がこの JSON オブジェクトを使って適切なクラス名を各要素に付与するようにすることで、無事に CSS で定義したスタイルがその要素に適用されます。 このようなクラス名の衝突をなくす工夫によって、アトミックデザインなどに使える再利用可能な CSS の記述が可能になります。 関連手法との比較 「CSS modules を使いたいから ElmCSS modules を使えるようにした」みたいなのは無能な人がやることです。 いったん落ち着いて「当に ElmCSS modules を使う新しい手法を考える必要が

    ElmにクリーンでハックのないCSS modulesを
    arow-okamoto
    arow-okamoto 2018/10/07
    世界で最先端の手法がなんと日本語で公開されてるじゃん
  • The ultimate guide to proper use of animation in UX

    Nowadays it’s hard to impress or even surprise with an interface animation. It shows interactions between screens, explains how to use the application or simply directs a user’s attention. While exploring the articles about animation, I found out that almost all of them describe only specific use cases or general facts about animation, but I haven’t come across any article where all rules concerni

    The ultimate guide to proper use of animation in UX
    arow-okamoto
    arow-okamoto 2018/09/19
    アプリケーションにおけるアニメーションの理論がしっかりまとめられてる。 マテリアルデザインのMotionの項目もあわせて目を通しておきたい
  • ヤギを飼うCTO、呪われた武器を使いこなす

    「異能」ともいえる際立った能力や実績を持ち、まわりから一目置かれるエンジニアを1カ月に一人ずつ取り上げ、インタビューを掲載する。今月取り上げるのは、第二新卒・既卒・フリーターに特化して求人紹介や就職サポートを行うUZUZの最高技術責任者(CTO)である岡和也氏。自身が設立したソフトウエア開発会社ARoWも持つ。同氏は、関数型プログラミング言語のHaskellを使ってシステムを開発している。今回はHaskellとの出会いやARoWで開発しているオープンソースソフトウエアなどについて聞いた。 Haskellと出会ったのは大学生のときです。大学は東京大学の工学部計数工学科で、Haskellに出会ったのは大学4年生の後期の授業でした。 小学6年生のときにVisual Basicでゲームを作ったことはありますが、プログラミングをしっかりやったという感じではありませんでした。プログラミングにきちんと

    ヤギを飼うCTO、呪われた武器を使いこなす
    arow-okamoto
    arow-okamoto 2018/09/10
    さくらちゃんとの暮らしを日経クロステックさんにとりあげていただきました (有料記事でごめんなさい)
  • 頑張るのは浪費、努力が投資|ヤギに学ぶ仕事術|note

    人間は数ある動物の中でも圧倒的にストレス耐性が高いと言われています。 でも、せっかくのストレス耐性の活かし方を間違っていませんか? 頑張ることはただの浪費、努力することが投資です。 頑張ることは心身の健康を浪費しているだけここでは「頑張る」を「がむしゃらにやる」「時間をかけてやる」という意味で使っています。 頑張ることや苦労することを礼賛する傾向が人間の世界にはありますが、実際には頑張ることは怠慢です。 とても簡単な話ですが、時間をひたすらかけて実直に生真面目にやったところで、成果には限界があります。 例えば受験勉強で勉強時間をただ伸ばしただけで東京大学理科三類(医学部)に必ず入れるんでしょうか。 勉強時間をある程度とるのは最低条件で、その上で時間効率の良い勉強の仕方を試行錯誤して工夫する必要があります。 不眠不休でがむしゃらに頑張るなんて論外です。 適切に計画を立てて休みながら効率よく進

    頑張るのは浪費、努力が投資|ヤギに学ぶ仕事術|note
    arow-okamoto
    arow-okamoto 2018/08/26
    さくらちゃんが異臭の冤罪をかぶらされるさなかに書いた
  • 傲慢な罪の意識を持つということ|ヤギに学ぶ仕事術

    まずはさくらちゃんからの一言 「罪悪感を理由にむしろ罪を重ねてることに気づけよな!」 罪悪感をいだきすぎな人類人間は気軽に罪悪感をいだく生き物です。 * 休みをとってしまって申し訳ない * リモートワークや好きなときに仕事させてもらうなんてとんでもない * 仕事を代わりにやってもらってごめんなさい * 自分なんかがこんなに良くしてもらっていいのだろうか * せっかく育ててくれた会社をすぐに退職するなんてありえない もちろんクズみたいな人間にはぜひ罪悪感を持ってほしいのですが、 わざわざこんな駄文に目を通してくださる素敵な皆さんも、さくらちゃんによると実は罪悪感をいだきすぎることで罪を重ねているそうです。 罪悪感をいだかないヤギさくらちゃんは別に罪悪感なんていだいてないそうです。 働かずに草って寝るだけの生活をしても罪悪感を感じないし、 散歩に連れてってもらっても申し訳ないなんて思わないそ

    傲慢な罪の意識を持つということ|ヤギに学ぶ仕事術
    arow-okamoto
    arow-okamoto 2018/07/08
    傲慢な罪悪感だって!
  • ためしがき

    語のフリーフォントを好きな言葉・文章で試せるサイト

    ためしがき
    arow-okamoto
    arow-okamoto 2018/07/06
    日本語のフリーフォントを好きな言葉で一瞥できて便利
  • パンダのようなヤギ? パンダヤギちゃん、大人気 沖縄・石垣島(沖縄タイムス) - Yahoo!ニュース

    arow-okamoto
    arow-okamoto 2018/07/01
    左にいる真っ白で愛らしいヤギさんを見て、「引き算の美学」というものを再認識しました。 プログラミング言語だって、「便利だから」っていろんな機能を詰め込みすぎた言語はイケてないもんね。
  • 片手間にはじめるUXデザイン - ノンUXデザイナーズUXデザイン - - Qiita

    これは、UXデザイナーではない人がUXデザインを効率よく身につけるための方法論です。 私自身も職はUXデザイナーではなく、ふだんはヤギと遊んだり新しい会社組織の実験をしたりプログラムを書いたりしています。 しかし、ヤギの飼育や経理、組織運営、マネジメント、営業、プログラミングのどれも、広い視野で見ればユーザー(=ヤギ、組織の構成員、マネジメントの対象、取引相手、他のプログラマ)の体験を改善する仕事です。 そのためUXデザイナーではありませんが、これらの「UXハッカー」と呼ぶべき多くの分野から得られた知見を用いて、UXデザイナーではない人間が理想のUXデザインを実現するための近道をご紹介できます。 なんだか小難しい用語を並べ立てることもしません。 小難しい用語を覚えても、わかった気になれるだけで、実際にUX設計をできるようにはならないからです。 ただし、これはあくまでもUXデザインを最低限

    片手間にはじめるUXデザイン - ノンUXデザイナーズUXデザイン - - Qiita