sinatrasapporo.org
Sinatra is a fantastic lightweight framework for building web services. We’ll use it as the application framework for the HTTP endpoints in our Service Oriented Architecture. The testing approach will be in-process, which means that the test suite is running in the same Ruby process as the web service. This eliminates the need to run an external HTTP web server. Application structure Unlike Rails,
ウェブアプリケーション作るためのフレームワーク、ジェネレータでControllerができるとか、RESTfulなルーティングを簡単に作れるとかあるけど、そういうのは手で書いてもすぐできる。ジェネレータで作って終わりみたいなのがほとんどだけど、フレームワークから外れたことしようとするとすごい大変になる。フレームワークなければ普通に書けばいいけど、フレームワーク使ってると、規約に沿わないといけない。一部のメソッドを上書きしてちょっと変わった動きをさせるとか、そういう感じになって、フレームワークのバージョン上がったとき動かなくなったりする。変なことをして無理に書くのはやめようと言われるけど、そう書かないといけないフレームワークが悪い。普通に書けるなら普通に書いてるはず。仕様決める人はフレームワークのことまで考えてるはずがないから、全員損してる。フレームワーク的には、きれいで完璧で整合性の取れたア
アセットパイプラインなどで使えるとして話題の Sprockets gem 、自分向けまとめ。確認しないで書いているところもあります。 アセットパイプラインを支える技術 – sprockets Sprockets: Rack-based asset packaging Web assets 、具体的には主に CSS と JavaScript の圧縮/依存性の解決/各種ソースからの変換をサポートするための Rubygem 。 asset とは資産、財産の意。 執筆時点現在のバージョンは 2.0.3 。なお、 rack-sprockets gem は、 sprockets( 具体的には、 require 'sprockets' map '/assets' do environment = Sprockets::Environment.new environment.append_path 'ap
There are a few specific things we’ve done at GitHub to help our maintainability and reliability of our Ruby apps. Focusing on improving documentation, optimizing the first-run experience, splitting out our API as Sinatra apps, and being careful about how we ship impacting infrastructure changes has helped us out dramatically. Slides
Make sure you have leiningen installed, that way we can use the Noir template. You do not have to download anything special to use it, just run the command and leiningen will automatically fetch whatever you need! Three commands later, you've got a working website! Now let's make it do something. Noir uses Hiccup to generate HTML. Hiccup represents html elements as vectors where the first keyword
Sinatraのサイトを開くとSinatraはDSLだと書いてある。 Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort: (SinatraはRubyで手早くWebアプリケーションをつくるためのDSLです) DSLというのはDomain-Specific Language、つまり特定の目的に特化した言語のことだ。確かにSinatraはWebアプリケーションという特定の目的のために作られたものだけれども、それは言語じゃない。 それが言語といえるためにはオブジェクトのように独立していて閉じてなきゃいけない1。でもSinatraは独立も閉じてもなくて、Rubyに寄生することで存在している。 いやSinatraは言語どころか、Rubyの上の専門用語ですらない。 それが用語といえるために
Sinatraのようなベース言語の構文を使って実現するDSLを内部DSLといいます。前回僕が書いたChinatraは一見内部DSLにみえるけど、ベース言語とは異なる構文を使った外部DSLです。 でも時代の風は内部DSLに向いています。 the 0.8 true language 言語ワークベンチ 自分もRubyの構文のユルさとメタプログラミングを使ってSinatraのような内部DSLを書いてみたい。 そしてRubyistをマインドコントロールしたい.. そんなわけで… Sinatraと別の構文を持ったWebフレームワーク「Shynatra」をRubyで書きました:-) ShynatraはRubyで下記のような最小労力で、手早くウェブアプリケーションを作成するためのDSLです。 R はCRUDのRです。/:hello の部分はパス(/hello)になります。先頭のコロンはパラメータを表してい
ここ数年、会社を辞めて自分のペースで仕事を請け負うフリーランスという形態で仕事をする人が増えています。フリーランスには様々な職業があり、代表的なものでは翻訳業やイラストレーター、YouTuberもフリーランスに分類されます。そして代表的なフリーランスの職業がもう一つあります。それはプログラマー/エンジニアです。そのプログラミングの大部分を占める工程がコーディングであり、知識と技術を身につければ、憧れのフリーランスに鞍替えすることも夢ではありません。 それではコーディングの知識と技術を取得するにはどのようなルートがあるのでしょうか?現実として学校に通うか、プログラミングを請け負う会社に入社するか、あるいは独学で取得するかのいずれかを選択することになります。そこで今回は最も費用の少ない独学でコーディングを学ぶ方法を紹介したいと思います。 独学でコーディングの知識と技術を身につけるには まずはプ
ここ数年、会社を辞めて自分のペースで仕事を請け負うフリーランスという形態で仕事をする人が増えています。フリーランスには様々な職業があり、代表的なものでは翻訳業やイラストレーター、YouTuberもフリーランスに分類されます。そして代表的なフリーランスの職業がもう一つあります。それはプログラマー/エンジニアです。そのプログラミングの大部分を占める工程がコーディングであり、知識と技術を身につければ、憧れのフリーランスに鞍替えすることも夢ではありません。 それではコーディングの知識と技術を取得するにはどのようなルートがあるのでしょうか?現実として学校に通うか、プログラミングを請け負う会社に入社するか、あるいは独学で取得するかのいずれかを選択することになります。そこで今回は最も費用の少ない独学でコーディングを学ぶ方法を紹介したいと思います。 独学でコーディングの知識と技術を身につけるには まずはプ
西新宿某所で行われた shinjuku.rb #1 に行ってきました。幸運にも滑り込めたのでLTさせていただくなどしました。 Introduction to the Sinatra Book スライドは Samurai と言いたいだけなんですけれど、 Sinatra: up and running 、良い本です。 Sinatra: Up and Running 著者/訳者:Alan Harris Konstantin Haase 出版社:Oreilly & Associates Inc( 2011-12-06 ) ペーパーバック ( 103 ページ ) スライドの通り電子版(オライリーコムから買えます)もいい感じです。ぼくはおじさんなので紙の方が読みやすいけど。。。 結構発表自体にも反応がいただけて、おもしろそう! と思っていただけたんですが(not ステマ)、でもやっぱり英語の壁がち
Railsは便利だとは思ったがフレームワークとしてとくに好きではなかった(別に嫌いでもない)。それに対してSinatraはなんだかよくできてる感があって気に入っている。この差がどこからくるのかはよくわからないが。 そんなSinatraとRailsであるが、比較してみると、フィルタまわりは圧倒的にRailsの方が高機能である。Sinatraのフィルタはbeforeという一種類で、しかも共通処理を書けるだけである。こんな感じ。 before do if not logged_in? redirect '/' end endRailsと比べると 呼ぶタイミングがbeforeしかない。Railsだとbefore_filter, after_filter, around_filterの3種類のフィルタがある。 どのメソッドに対してフィルタ処理を行うかを制御できない。Railsはbefore_filt
.rb勉強会資料 - はじめる! Ruby de Web 開発 @2011-12-20 jelly jelly cafe
『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日本 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直
最近は仕事でSinatraアプリを書いたりしているので、Sinatraアプリを動かすためにはどのHTTPサーバを使うのがベストなのかが気になっている。(先に結論を書いておくけれど、どれがベスト、という唯一の選択肢は今のところありません。適材適所です。) SinatraはRackの上に構築されているので、Rackに対応したHTTPサーバーを使って動かす事になるのだが、この数がやたらと多く、どれを使えばいいのか迷う。代表的なものを挙げただけでも、WebRick, Mongrel, Thin, Unicorn, Passenger(Apacheとかに組み込んで使うやつ), FastCGI, (普通の)CGI、これぐらいは選択肢がある(いくつかHTTPサーバじゃない物も混ざっているが、Rackが対応してるという点は共通している)。 WebRickはそもそもパフォーマンスに重点を置いていないし、Mo
Read it now on the O’Reilly learning platform with a 10-day free trial. O’Reilly members get unlimited access to books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers. Take advantage of Sinatra, the Ruby-based web application library and domain-specific language used by Heroku, GitHub, Apple, Engine Yard, and other prominent organizations. With this
普段自分はHeroku+Sinatra+Slim+SassでWebアプリを作っているんだけど、Node.jsやCoffeeScriptについてちょっと調べてたら、Herokuを使う前提で、Node.js(Express), Jade, Sassという組み合わせでCoffeeScriptで書けば、前述のSinatraアプリとほぼ同じような感覚で書けそうなことに気づいて、ぐっとNode.jsに興味が沸いた。 ということで、さっそくHerokuを使ってNode.jsアプリを作ってHello worldしてみた。今回の記事を最後まで行くと、これが出来上がる。ソースコードはGitHubに。 各種インストール この記事ではNode.jsとExpressだけを使ってHello worldする。今回はJadeやSass, CoffeScriptは出てこない。まず、Node.jsとExpressを使うのに必
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く