サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
猫
qiita.com/gogotanaka
[React Native入門完全版]「いきなりデート」のアプリをReact Nativeで開発した知見をまとめます。 この記事で説明する事 React Native採用に係る意思決定の話 atom + eslint + flowによるIDE風開発環境 line by lineによるプロジェクト作成方法とリリース方法 デバッグ方法やtips集、補助ツールの使い方 React Nativeとは Facebookがオープソースとして開発するReact.jsの思想の一つである「Learn once, Write everywhere」(元ネタはもちろんJavaのWrite once, Run anywhere)を体現した、Facebookが開発主体となるプロジェクトの一つで、要はJavascriptとReactフレームワーク1つでモバイルアプリ(iosとAndroid)を作れる、といった代物です
あいさつ 流行りにはしっかり乗らさせて頂きたい! line botちょこちょこ遊んでいた中で出来た成果物をAPIのruby言語ラッパーとしてgem化しときました^^ Github Rubygems 即時性や並列性を考えるとガチBotには向いてないかもですがまあサクッと遊ぶときに使ってくださいな^^ ちなみにこのライブラリとheroku+Fixieで作ったbotをひけらかすとこんな感じ 参考: LINE BOT をとりあえずタダで Heroku で動かす 情報のフェッチだけじゃなくて予約とか何か副作用の持つアクションと絡めたり、グループチャットにbot入れてスケージュリングとかは夢が広がる〜! 使い方 Installation require 'line/bot/client' client = Line::Bot::Client.new do |config| config.channel
Kasen Kasen(下線)という名前のGemです. ↑は僕が2時間くらいかけて作ったGemのロゴマーク的なやつです. (両端の曲度に拘りアリ) Github: https://github.com/gogotanaka/_ Rubygems: https://rubygems.org/gems/kasen タイピング量が0.2%減る 0.2%て響きが好きなだけで実際はもっとあるかも!? require 'kasen' # 以下の2つは等しい [[1, 2], [3, 4]].map &_[1] [[1, 2], [3, 4]].map { |ary| ary[1] } # 以下の2つは等しい ['0', '1', '2'].select &_.to_i.zero? ['0', '1', '2'].select { |s| s.to_i.zero? } # 以下の2つは等しい [['1'
Ruby + Type = Rubype 既存のコードとの互換性を崩すことなく、選択的にメソッドに型保証を与えるGemです. Github HP HackerNews ここで指す'メソッドの型保証'とは実行時レベルでメソッドの引数返値のクラス型や反応すべきメソッドを保証する事です. 得られる一般的な型保証のメリット Executableなドキュメントをコード内に付与出来る. エラーがより意味のあるエラーになる. Rubypeが確かであるならば引数返値チェックの処理は一切不要となる この様な形で型情報付与するからこそ出来ること. 実行時に動的に型の付与変更、型情報の確認がする事も出来る.(型情報もオブジェクト) クラス型のみではなく、反応すべきメソッドをシンボルで指定する事が可能 このGemのデメリット、至らぬところ 当該メソッドを呼び出す度に型チェックを行うのでオーバヘッドが生まれる. (
あいさつ 匿名IPをローテさせてアクセス制限を気にせずガシガシScrapingする方法を紹介します. 今回はRuby+Nokogiriで済む簡単なモノを紹介しますが、PhantomJSやSeleniumにプロキシをかましても同じような事が出来ます. 悪用は良くない http://proxymesh.com/ http://proxymesh.com/ まずはここで会員登録. 無料版もあるのでそれで済むならそれでいいかも. ここで登録したusername①とpassword②は後で使うので控えておく. ダッシュボードに表示されているAuthorized済みのProxyのHost③とPort④を控えておく. NokogiriでGogo #open のproxy_http_basic_authenticationオプションを使えばおk require "open-uri" class OpenW
ウッ ここで詰まる事は往々にしてあります. 特に急いでる時の煩わしさは甚だしいです. どうせならそれっぽい英語を使いたいのでOSSや同僚のコミットメージの語彙の出現確率を調べてみましたら、 もちろんfeatureによってコミットメッセージの付け方など数多あるものの、一定の頻出パターンは見い出せたので筆を取りました. (英語勉強しないと..) 方法 github.com/rails/railsのコミットメッセージ内における各動詞の出現確率を求め、 またOSSと仕事でのコミットメッセージの趣向も変わってくる事も勘案するため、 (仕事でDeprecateとか滅多に使わんし) 同僚に聞きつつ10つあげてみた. 以下列挙 (例は実際の同僚やOSS上でのコミットメッセージです.) Add *A to *B AをBに加える
あいさつ 計算機による一階述語論理の決定不能の取り扱い方を調べる中で コンビネーター理論の理解が深まったので筆を取る事にした. このたぐいのテクを用いると、識別子に依らない関数の再帰を定義出来る(!!) # Zコンビネーター Z = ->(f) { ->(x){ f.( ->(y) {x.(x).(y)} ) }.( ->(x){ f.( ->(y) {x.(x).(y)} ) } ) } # 識別子に依らずに階乗を定義! Z.(->(_){ ->(n){ n == 0 ? 1 : n * _.(n-1) } }).(5) # => 120 以下説明 自分の理解度の確認のためにも用語を1つ1つ丁寧に積み重ねて分かりやすくしたつもり. λ式とは λ式なんていかがわしい言葉を使っているがメチャ簡単な事、でも実は難しい. 皆さんおなじみ2次関数
【mkdirからデプロイまで3分】Sinatra+Haml+Sass+Coffee でサクッとHerokuに公開して捨てるwebアプリRubyCoffeeScriptSinatraSassGem あいさつ Rubyでゴニョゴニョして、Haml+Sass+Coffeeでサクッとviews作って Herokuにサクッとpushして公開して吐いて捨てるようなアプリの作り方です. チャチャッと動いたモノを見せたい時とかに便利 3分というのはビジネスロジックの構築を除くプロジェクトのひな形作ってデプロイに至るまでの時間. 適当なひな形を持ってきた方が早いかもしれませんが、一回は手を動かさないとなんか気持ち悪い人向け. 今回使ったのはここに置いときました、jqueryとか定番ライブラリ入れとくと便利そう 以下説明 手順1: フォルダを作ってgemを揃える 今回はyour_appというアプリを作る事とし
あいさつ まあ本当にたまになんですけども、適当な確率過程の遷移をふと鑑賞したい時って絶対あると思うんですよ、 特に疲れているとかは単純マルコフ過程で癒されたいみたいなは割とネタじゃなくてオススメです. なんか癒されるのは遷移が画する軌道がその時の状態にしか依らないので比較的頭を使わないで済むからですかね. 個人的にはなんかめっちゃ気に入っていて毎日5, 6回は鑑賞しています. 乱択には単純にRubyのArray#sampleを使っているので、ちょっとアレですがとにかく簡単にランダムウォーク鑑賞出来ます. 5秒で完了! ランダムウォークの描画まではたった2コマンドで到達出来る. (Ruby環境があればね)
あいさつ Railsアドベントカレンダー16日目です. いい感じに中だるみして来たのでトンズラここと思いましたが筆、執りましたよ. Railsに限らずOSSのすごいエンジニア(小並感)に感化されるのは良い事だと思います. (画像の使用許可等はちゃんと取りました. 画像無い方は許可取れませんでした.) Railsは本当に多くの方々のお力によって作られているとは思いますが、 今回は僕の恣意的な選択によって数人の方を挙げさせて頂きました.(基本的にはコミット数) David Heinemeier Hansson(DHH) Github: dhh Blog: DAVID HEINEMEIER HANSSON Twitter: @dhh Railsの生みの親. 2004年7月にオープンソースとして公開するも、2005年の2月までコミット権を誰も渡さなかったとか. デンマーク生まれで写真家で尚かつカー
あいさつ 全然関係ないんですが、猫背を直すためにパソコンいじる時に鳩胸を意識するとめちゃイイです. 偉そうに語れる立場では全然ないですがCRubyの寄与に関わる人がもっと増えたら良いと想い筆を執りました. なお開発スタイルはGitを中心に使いパッチもGithubで管理する僕流なので皆さんよしなにやって下さい. 大体の事はbugs.ruby-lang.orgパイセンが教えてくれる 兎にも角にもbugs.ruby-lang.org へ . 最初このページを見た時には若干のとっつきにくさを感じましたが、コレが宝の山でして幸いにも日本語のドキュメントも充実しており僕のクソみたいなQiitaの記事はなんかさっさと閉じてこちらを読みあさるのが良いかと. 最新のRubyをいじくる 報告するに足る内容か調べる時には最新のRubyで試してみましょう. (もう直ってるみたいな事は往々にしてあります) ビルドの
あいさつ 今日は鼻ピアスを鼻くそみたいにつけられてる方を見ました. (いやこれがマジで) HaskellのコードをRubyから文字列で渡して別スレッドでコンパイルしてRubyの文字列で取得するというGemです. (動的にHaskellのコードを生成出来る!) 前面白がって「実行時にゆるふわ型をチェックするHaskellというGem」を作りましたが、ちょっとアレだったのでRubype に名称を変更し、Haskellという方にはサクッとネタGemをぶち込んでおきました. Giuhub (僕が粛々とやっている麻布.hsのプロジェクトとして作りました!麻布にゆかりのあるHaskellerは是非!) Rubygems 様子 require 'haskell' # Haskellをコンパイルするためのサンドボックスを作る Haskell.invoke_sandbox!(File.expand_path
2020/12/27追記 https://www.ruby-lang.org/ja/news/2020/12/25/ruby-3-0-0-released/ => Ruby3.0.0にRBSとTypeProfと用いた静的解析に対するソリューションが提供されました。 今後はこちらのエコシステムをガンガン盛り上げていきましょう💪 あいさつ P.S. 12/11 HaskellからRubypeにgemを変更しました こんにちは. 寒さが一段と厳しくなってきた事もありまして心を温めるGemを作りました. Rubyの振る舞いを汚染する事無く型保証の恩恵をゆるふわ受けられるgemです (型をつけるとか型保証という言葉をこの文脈ではメソッドの引数返り値のクラスを実行時にチェックするという意味で使っている.) 得体の知れないGemで抵抗感があるかもしれませんが、コード自体は50行以下の薄いGemなので気
14/12/02 現在最新の情報です. そろそろHaskellでwebアプリの一本でも作りたくなる季節ですよね. (画像はYesodでwebアプリのひな形を作った時に出てくる謎のアスキアート、Haskell界隈にはこいう不可解なものが多くてステキ) Haskell + Yesod + Heroku でwebアプリを作る事を「HYH」と言うらしいですよ(適当) 今回は環境構築編です. 次はアプリケーション構築法、最後にデプロイ法を書きます. GHC GHC ... Haskellのコンパイラで一番有名でYesodが唯一サポートしている. 今なら(いつでも)もれなくインタプリタをついてくる hsenv などもあるにはありますが、作者がさぼっていますしおすすめは出来ません. 後述するStackage + cabal sandbox + cabal freeze がベストプラクティスだと思います.
あいさつ 「オブジェクト指向て何?」という質問はオブジェクト指向を知らない人間からしたら至極当然の質問で、僕たちは誤解のない範疇で理解に足るだけの情報を短く簡潔に「ホワッ」とでもかまわないので伝える必要があると思うんですよね. (ググれカスとは言わずに) 様々なコンテキスト(文脈)を含んだ技術用語をサクッとホワッとまとめたいっていうアレ 15秒ていうのは何気ない会話の中で「オブジェクト指向て何?」て聞かれ答える時に与えられ得る時間と想定した. (説明開始) さっそく白旗 (0秒経過) 15秒でオブジェクト指向の何たるかを説明するのは僕に無理です. それくらい色々な文脈を含む複雑で便利な言葉なんだよというのはまず心に留めて頂きたく. プログラミング言語をカテゴリ分けする言葉 (3秒経過) プログラミング言語は掃いて捨てるほどあるので、カテゴリ分けをしたくなるのが人間の常です. モノ感 (5秒
あいさつ こんにちは. 皆さん如何お過ごしでしょうか. 本日の日付を確認致しましたらもう2014年も残り一月半と改めて認識させられ驚いています. こうも時間の流れが早いと死ぬのもすぐですね. 懸命に生きようと思います. さて今回はHilbertという論理型プログラミング言語を作りました. (カジュアルに作ってるように見えますが、割と本気です.) まだまだやるべき事は本当に多くて、飴ちゃんあげるのでコミッター大募集です. (今ならカントリーマームもつけるのでお願いします.) HP: http://hilbert-lang.org/ja/ Github: https://github.com/gogotanaka/Hilbert 前座 世界で一番ピュアで豊かなプログラミング言語 この言語で仮定されているのは恒真(トートロジー)のみです. (厳密に言うと自然演繹も仮定されていますが.) 当初、自
Q. PostgreSQLでダンプと注入したいんだけど A. pg_dump ダンプして psql -fで注入 ダンプはコレ pg_dump your_db_name > ./db_dump.sql 注入はコレ psql -d your_new_db_name -f db_dump.sql 注入する先のDBは(今回の例で言うとyour_new_db_name)は作りたてホカホカにしとく必要があります. 作りたてホカホカとは 以下psqlコンソール drop database your_new_db_name; create database your_new_db_name; (userオプションとかはよしなに) Register as a new user and use Qiita more conveniently You get articles that match your n
あいさつ 今年の2月くらいにインビテーションを頂いて興味はあったが なんだかんだ放置してたAtomちゃん. ちゃんと使い始めたら結構よかった. 備忘録程度ですがお役に立てればと思います. apmとは https://github.com/atom/apm Atomのパッケージ管理ぽいのがあったのでこれを使う. (Nodeのnpmに由来してるらし) brew cask で Atomを入れる OS X を使っている僕はbrew caskで入れましたが、公式サイトから落とすなり皆さんよしなに.
はじめに RubyのコミッターでもありRailsなどの多くのOSSで活躍されているMarc-André Lafortune さんのブログに面白い記事があったので筆を取りました. (許可は取りましたヨ) Why I Won't Squash My Commits *注釈 [...] で記された文章は原文には存在しない私の注釈であるので留意されたいです. 翻訳に至らない所があれば編集リクエスト待ってます. 要約 PR,feature単位でcommitをまとめるかどうかでRailsのプロジェクト上などで揉めた. それぞれのcommitは独立してるいるはずだからまとめる必要はない 仮にどうしてもまとめたいなら自分でやるべきだし人にその考え方を押し付けるな (まあ実際は皆いい人だから理解してくれるけど) この方は徹底してcommitを最小の変更単位で分けて、 それぞれが独立してテストを通るように心が
バグの報告は頂いてから24時間以内に直します. こんにちは. 個人的に使っていたスニペットをGemにしてみました. (Google Maps APIのラッパーです) 「実家の緯度と経度なんだっけ〜」とか「ダーツの旅したいけどダーツとアレがない」という時に使えると思います. とっととデモへ お好きな様にgemを引っ張ってもらって
そうです、Matrix(行列)クラスに色々入る予定のようです. .... いやもっと伝えるべきモノが他にあるとの怒号が今にも聞こえて来そうですが... 「すみません今日の所は行列の紹介をさせて下さい.」 多くの方は興味もないであろうけど、 Rubyには行列やベクトルを扱う Matrix クラスというものがありまして、 Ruby2.2では色々新機能やバグfixが入るようです. 「行列ベクトル演算するならRubyよね」 と言われるくらいのモノにはなるのではないでしょうか? 本日はRuby2.2以前にあるものも含めMatrixのマジですごい所を紹介します. 使わないともったいない!すごいMatrix, 楽しく学ぼう! 1. LU分解 LU分解が出来るという事は... n元連立方程式をいとも簡単に解く事が出来ちゃうの # 2x + y = 2 # x + 2y = 3 Matrix[ [2, 1]
ClassクラスとかModuleクラスの継承関係やら、 それ自体のクラスとかの関係てなんかモヤっと感あるなあと思っていて、 上手い事キレイに説明したいなと思い色々考えていたらそっぽい答えが出たので書きます. まあひとまず以下のコード見て頂いてモヤっとしなければこんなクソ記事すぐ閉じるが宜しいかと. もしモヤっとした方で興味があったらお読み頂ければなと. '1'.class => String '1'.class.class => Class '1'.class.superclass => Object '1'.class.class.class => Class '1'.class.class.superclass => Module '1'.class.class.superclass.class => Class '1'.class.class.superclass.superclas
fooo↑↑ 詳しくはこの辺り参照 まだまだ色々至らないですが、コミュニティ作りのためとリーンに(今流行の)フィードバックを頂きながら育てて行きたいと考えていますので ちょくちょく今回の様に露出していきます. コミッター絶賛募集中です. ワイワイ楽しくやりたいです. アメちゃん差し上げるのでお願いします. まだまだ生まれたての言語+仕様の変更にアグレッシブなので思いつきのfeatureなど容易に採択されうります. (;゜0゜)「バージョン長くね!?」 こんな感じで(rubygems.orgより)Versioning は無理数に漸近させるようにしてます. √2系の次はe系(0.0.2718..)を考えています. Features v0.0.14142135 に加わったFeaturesです. (多くの修正はバクfixのためfeatureは3つほどです.) 冪法の演算子に^を可能に 地味に嬉しい
fooo↑↑ 動機 僕はただの数学/統計系の学部生で、RやMathematicaなどの言語を強いられる事が多いのですが、 RubyやHaskellやScalaなどのステキな言語を知っていると「ちょっとな〜」と思っておりましたところ、 突然「あ、新しい言語作らなアカン」という不可思議な衝動に駆られ ガッと取り憑かれたように実装し、少し冷静になってQiitaを書いているのが今です. フィードバックを頂きながら育てて行きたいと思います(コミッター絶賛募集中、ワイワイ楽しくやりたいです. アメちゃん差し上げるのでお願いします. ) 現在はコンパイラと4秒くらいで作ったインタプリタがあります. ポリシー 一番大きな観念としては 「紙とペンの感動をキーボードで」 です. 後々の可読性や保守性などはどうでもよくて、 「その瞬間(コードを書いている瞬間)の気持ちよさ、心地よさ、そしてその返値を楽しむ事」
Rubyで微積分や統計解析を快適に扱うDSL作ったヨ!↓ github バグ報告を頂ければ24時間以内に直します. このDSLで一番大事にしたのは、 微積分や極限、対数や三角関数などを紙上で数学をする感覚と同じ感覚で取り扱える事. わざわざRubyでやる必要、あったの...?(;゜0゜) 僕がこのDSLをRubyで作ったのにはいくつか訳があります. Rubyが好き MATLABが苦手 Rubyが好き mathmaticaが苦手 Rubyが好き pythonが苦手 Rubyが好き ... とにかくRubyが好きです. 少しマジレスすると僕の大好きなRubyは数学色が薄いのが少し悲しかったのです. (蛇足ですが、この想いからrubyのMatrixクラスにシコシコcommit してます. ex. https://github.com/ruby/ruby/pull/568 Matrixを成長させ組
皆さん、rubyをいじっていると微分したくなる事、よくありますよね? … rubyで微分!?(;゜0゜)他でやれよ(;゜0゜) 今にもそんな怒号が聞こえてきそうですが、作ってしまいました。 まだ作り込みが少し足りませんが、早漏なので公開してしまいました。 (割と普通になんでも微分出来ます。絶賛contributorさん募集中です。) http://rubygems.org/gems/dydx https://github.com/gogotanaka/dydx 見てもらうのが一番早いと思うのでこんな感じです。↓ ( d/dx(x ^ 2) ).to_s => "( 2 * x )" # 以下to_sを省略 d/dx(e ^ x) => "( e ^ x )" d/dz(log(z)) => "( 1 / z )" d/dx(x ^ n) => "( n * ( x ^ ( n - 1 )
株式のデータをスクレイピングで取得するGemを作りました!しかしそれは禁止行為ですので別の方法を紹介します。RubyRailsGemscraping株 2016/1/20 いちエンジニアとしてもう少し思慮深くいるべきでしたが、 もともとこの記事で紹介させて頂きました「株式のデータをスクレイピングで取得するGem」は Yahooファイナンスさんの定めた禁止行為にあたります。 そこでこの記事では、「株情報ゲットするためにYahooファインスからひっぱてこよう!」と考えられている方に別のクリーンな方法紹介します。 そのうち公開 Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful inform
どうも。今、やっとこの「モヤッ」が解消されたgogotanakaです。 この記事はrubyやrailsはそれなりに書けるけど 実はclassとかmoduleの継承とかインスタンスとかそいう言葉を出されると「モヤッ」となる、 方々のためにこの辺をまとめてみましたよ。 という体裁の自分用の備忘録である。 表記法 よく本とかに載っている表記法だけど一応確認。 ThisIsClass#this_is_method これはThisIsClassクラスのインスタンスのメソッドthis_is_methodを指してる ThisIsClass.this_is_method ThisIsClass::this_is_method これはThisIsClassクラスのクラスメソッドthis_is_methodを指している 一回 class Hoge ~ end を忘れよう rubyをいじった事がある方にはおなじ
このページを最初にブックマークしてみませんか?
『@gogotanakaのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く