「RubyGems」を含む日記 RSS

はてなキーワード: RubyGemsとは

2018-11-28

http://b.hatena.ne.jp/entry/374519229/comment/katsyoshi

なんでnpmだけがこうも狙われてるんだろう(npmだけが問題というわけではなさそうなのに

ユーザー意識高い系ばかりで実際は(セキュリティ)意識が低いからじゃね

...それは冗談としても

他のエコシステムに比べてパッケージ粒度が小さく、依存関係を増やすことに慣れがちというのはあるね

仮に自分攻撃をするとしてもnpmを狙うだろう

次いでpypi、そしてRubyGemsかな

2014-11-16

30歳で名をなしてないプログラマは今すぐそのMacBookを捨ててプログラマ辞めろ

すんませんタイトル釣りです。多くの人に読んでほしいという煩悩に勝てなかった。

当方 32 歳プログラマ。そろそろ岐路に立たされている。

俺のプログラマのしての能力は、めちゃめちゃ高いとは言えないけど、多分高いほうだと思う。OSS にはそれなりに貢献している(特定を避けるために具体的なプロダクト名は出さないけど、rubygems で50万以上 DL されてるようなライブラリコントビュートしてる)。そういう背景もあって、最近は「教える側」みたいな立ち位置に配置されることが多くなってきた。そこで見かけるひどいコードの数々といったら、本当に目を疑うレベルのものが多い。正直、こんなやつらにイチから教えてたら俺が勉強する時間がねーよ。

で、そこで立たされたこの岐路である自分がガリガリ書きまくるのを辞めて「後進を育てる」という部分(単に教えるとかそういうことだけじゃなくて、組織の中でスキル継承され、さらに良くなって行く仕組み作りも含めての話ね)に重点を起くのか、今後もとにかくガリガリ書きまくって「プログラマとして寡黙にコードでひっぱっていく」みたいな「背中で語る」プログラマを目指すのか。

そういうことを考えてると、いつも自分がまだ駆け出しだったときのことを思い出すんだよね。その頃の自分プログラミング能力は、それはそれはものすごく低かった。空間効率時間効率もまったく意識しないから、平気でリソースを食いつぶすような処理を書いていた。「モジュールの凝集性?独立性?よくわからない……」という感じで、ある特定機能を改修するために 1 行書き換えると平気で 100 行壊れるようなコードを書き散らかしていた。今の自分が見たら「こいつセンスないから育てるだけ無駄ですよ」って言っちゃいたくなるレベルのひどいコードを書いていた。そんな俺も、今はそれなりに書けるようになっている。それを考えると、「今この時点でできてない」というひとを切り捨てていいのかなぁ、って思うんだよね。

というのも、俺はあまり会社の先輩に恵まれなくて(これは転職とかでチャレンジしてこなかった俺も悪い)、ほとんど自学自習で勉強してきてようやく今のレベルになったんだけど、もし身近にもっといいコード存在していたら、あるいは身近にいいメンターがいてくれたら、もっと早い段階で今くらい書けるようにはなっていただろうな、って。だからプログラマとのエゴとして「俺よりできる人間たちの中で俺の能力をとことん伸ばして行きたい」って思う気持ちがありつつも、今なら(言い方は悪いけど)「ダメなやつらの底上げ」に関してもそれなりに意味のある仕事ができるだろうな、ってどうしても思っちゃうんだよ。

そりゃさー、世の中のすごいプログラマたちはさー、運もあるし、それ以上に自分が挑戦したことによって「身近にすごい人がいた」って環境に身を置くことができたと思うんだよ。で、そういう人は多分言うだろうね。「チャレンジする気がない人間に手を差し伸べてもしょうがない、できるやつはほっといてもできるようになる。そんなこと考えてないでとにかく良いコードを書け」って。でもさ、俺みたいな凡庸人間って、チャレンジすることそのものがまず怖いんだよね。そういう人間にも、「良い環境」を与えることには意味があるんじゃないかなぁ。

多分、「いい環境に身を置けるかどうか」って、半分くらいは運だと思うんだよ。だったら、「いい環境」じゃなかった環境を「いい環境」にしていく仕事にも、きちんと意味があるんじゃないかなって思うんだよ。今俺の中には、そういう「環境作り」的な仕事をしてみたいなという気持ちと、いちプログラマとして今後もコードを追い続けていきたい気持ちがあって、どうしたらいいんだろうねマジで。少なくとも「最前線で戦えないと思ったプログラマの逃げの一手」としてマネージメントとか環境作りに逃げたくはないなぁ。

2012-09-20

増田でなければ即死だった

http://anond.hatelabo.jp/20120919210104

経験アウトプットする題材を間違えてた。github上のプロジェクトを扱うには私のレベルが低すぎた。半年ROMってから書くべきだった……けど、ここが増田で本当に良かった。

不慣れな人は大人しく、初心とか入門とかタイトルに着いてる本なりサイトなりドキュメントから始めるべきよねー。

それとは別にPitについて書いてあったサイト

超助かりました。

rubygemsについてもどんなのがあるのかちゃんと調べておかないと恥かくだけだなぁ。

いきなり飛び込む事なんてしないで、ちゃんと下から積み上げていかないとまずい。きちんと学習しないと……。

2011-08-11

*[プログラミング]ズブの素人プログラミング勉強して大規模サイト

日記途中だけど緊急事態><、一番下まで呼んで誰か助けてください><

今日から夏休みが始まったのでプログラミング勉強しようと思う。

3日坊主にならないようにがんばる。

  • 何故日記をつけるか?

去年もプログラミングマスターになろうとしたが失敗。

去年の二の舞にならないようにモチベを維持するために日記を書く。

これに影響された。師匠と呼ぼう。

プログラミングができたらかっこいい!

サークル友達もいなくさびしい夏休み有意義にしようとするため

都内の大学に通う2年生。

前述のとおりサークルもやってない、友達もいない、典型的インドアオタク

でも顔はイケメン

プログラミングは3年前にJavascriptHTMLネトゲでの戦いを整形するために覚えた程度。ほとんど忘れてる。

C言語大学で習ったが「苦しんで覚えるC言語」というサイトにのっている範囲しかやってない。

一応プログラミングの知識は少しはある。

やっぱり、目標はあったほうがいい。

うーん、やっぱり完全に一致みたいな情報網羅サイトを作ってみようと思う。

色々な技術が手に入りそうだし。

色々な言語も学べそう

どんなサイトにするか?大規模情報サイト
学ぶ言語HTML,PHP,Ruby,Javascript,CSS

とりあえずプログラミングにはエディタアップロードするやつが必要なので色々いれてみた。

エディタ
Netbeans重い、すごく重い
phpエディタphpしか編集できない
terapad色分けが出来ない
K2Editorこれが一番最強。でもphp対応してない
HIDEMARU4000YENwin7じゃ使えなかった。
アップするやつ
FileZilla使いづらい、糞
ALFTPこれが一番しっくりきた

というわけで色々悩んだ結果、基本K2Editor、php編集Netbeans,アップロードALFTPにした。

phphtmlrubyjavascript対応してて色分けも出来るwin7で動くエディタないのが残念

実は1ヶ月前にプログラミング勉強しようと思ってサーバーは借りてた。

試験があったので泣く泣く今日からはじめる事に。

ググったり、2chに質問したりして悩んで悩んでロリポップのチカッパプランを借りる事にした。

http://lolipop.jp/service/plan-chicappa/

初期費用 ¥1,575
料金(6ヶ月) ¥3,150
(1ヶ月あたり) ¥525
合計金額 ¥4,725

学生自分にとってはめちゃくちゃ高い。

しかしながら無料レンタルさばより色々といじれて、なにより「お金はもう払った、使わないともったいない」という意識を持つ事でだらけないで出来ると思う。

まず師匠日記をみてみる。HTMLCSSからはじめたと書いてあるが、多分これからはじめると飽きる。

なのでWeb情報自動で集めてくれる(これをスクレイピングという)BOTを作ろうと思う。

日記を読むとMechaniseというのを使ってるらしい。

グーグルでMechaniseで検索

そうするとRuby jamというもので動いているものらしく、Ruby jamRubyで動いている。

Rubyは鯖にはいっているがどうやらjamのほうははいっていないらしくMechaniseもはいっていない。ということで

  • 助けて

ロリポップの解説ページをみてPuTTyていうのをいれてSSH操作ってやつをしてた。

http://d.hatna.ne.jp/taramonera/20100601/1275388515

このページをみながらやってたら

% vi ~/.cshrc

これを実行して

setenv RUBYLIB /home/アカウント名/lib

setenv GEM_HOME /home/アカウント名/lib/rubygems

これを書いて終わろうとしたけど終わり方がわからない><

:wqで保存終了らしいんだけど、入力したところで終われない><

エンタしまくってもだめ><

教えて得ろい人><

2010-04-22

Redmine 0.9.3をTomcat 6で実行する方法

結構苦労したので健忘録として。。

環境は以下のとおり

JDK, Tomcat, JRubyインストール済み

MySQLインストール
yum install mysql-server
MySQLの起動
/etc/init.d/mysqld start
MySQLの設定

rootパスワードなどを設定する

mysql_secure_installation
Rubyモジュールインストール

RubyGemsモジュールインストールする

jruby -S gem install rails
jruby -S gem install warbler
jruby -S gem install activerecord-jdbc-adapter
jruby -S gem install activerecord-jdbcmysql-adapter
jruby -S gem install jdbc-mysql
MySQLRedmineデータベースを作成
mysql -u root -p
mysql> create database redmine character set utf8;
mysql> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'redmine';
mysql> exit

(ここでは、パスワードredmineしているが自由に)

RedmineDB設定

(任意の場所にRedmine解凍して、解凍先のディレクトリに移動した後)

cp config/database.yml.example config/database.yml
vi config/database.yml

database.yml

production:
  adapter: jdbcmysql
  database: redmine
  host: localhost
  username: redmine
  password: redmine
  encoding: utf8

#development:
#
#
#test:
#
#

後のwarbleでのエラーを防ぐため、developmentとtestコメントアウト

DBへのデータ投入
jruby -S rake generate_session_store
jruby -S rake db:migrate RAILS_ENV=production
jruby -S rake load_default_data RAILS_ENV=production
起動確認

script/serverで起動し、http://localhost:3000 にアクセスして正常に動作するか確認する

jruby script/server -e production
production.rbの修正

Tomcatで動かしたときにログ出力するための設定をする

vi config/environments/production.rb
config.logger = Logger.new(config.log_path)
config.logger.level = Logger::INFO
warblerの設定

warble.rbを生成

jruby -S warble config

warble.rbを修正

vi config/warble.rb
  config.dirs = %w(app config lib log vendor tmp extra files lang)
  config.gems = ["jdbc-mysql", "activerecord-jdbcmysql-adapter", "activerecord-jdbc-adapter"]
  config.gems["rails"] = "2.3.5"
  config.gems["rack"] = "1.0.1"
  config.webxml.rails.env = "production"

warファイルを作成

jruby -S warble

できたwarファイルTomcatに配置して、Tomcatを起動する

mv redmine-0.9.3.war /usr/local/tomcat/webapps/redmine.war
/usr/local/tomcat/bin/startup.sh

warblerのバグ(?)でwarに入らないファイルコピーして入れる

cp vendor/gems/rubytree-0.5.2/.specification /usr/local/tomcat/webapps/redmine/WEB-INF/vendor/gems/rubytree-0.5.2

http://localhost:8080/redmine/ にアクセスしてインストールできたか確認して完了!

2009-03-05

http://anond.hatelabo.jp/20090303184207

http://anchor18.blog77.fc2.com/blog-entry-195.html

http://ameblo.jp/omisedayori/entry-10184130642.html

両方ブクマしてる人のコメント抜き出してみた。

あんまおもしろくないな。もっと面白いURL募集

teruyastar

["", "まいったね。 やはりWiiウェアなんかのDL方式か、ネトゲに移行せざるをえないか。"]

complex_cat

["何処をどう描いても完璧デッサン力。", "これについてはWiki記述は,確かに使う側を助けてしまっているかも。いや,ここを読むようなユーザーとの重複度は小さい

とは思うが。"]

silverscythe

["昔のはホントすごいよなあ", ""]

yachimon

["", ""]

shoku-in

["", ""]

mike_n

["", ""]

y_arim

["Dr.スランプの時点ですでに完成されていて、そこからさらに進化しているのはすごい。", "違法性の認識とか関係なく、便利なものがあるから使うってだけだろうな。たいていのひとは物事を深く考えないし自分の欲求には逆らわない。/そしてid:utd_sn3781の主張は増田に書かれた http://anond.hatelabo.jp/20081231201301"]

A410

["", ""]

tailtame

["やっぱり手書きの頃がいいなぁ…塗りが…塗りが…。>>66の赤いトカゲドラゴン?の艶とかたまらんなー。画集っていくつあるんだろ…", "蔓延しすぎているってのも あるんだろうな…本屋に行けば目に付く本は……。子供の頃なんてゲームは半年に一本でいいよ。クリエイターも割れしてたしな…"]

dododod

["", "おやおや"]

retlet

["", ""]

kashmir108

["", ""]

tokuhirom

["", ""]

ocha39

["", ""]

whirl

["", ""]

kalmalogy

["「ビッチズ・ライフ」買おう。", "親が買い与えるのは絶対だめ。『公認意識』が子供に芽生える。自腹で買って『本当はよくないけど次善の策』という意識でないと。/ マジコン使うならせめて『良いと思ったモノに投資する』意識教育すべきでは。"]

came8244

["", ""]

fujii_isana

["", ""]

lizy

["クロノトリガーの絵を見るだけで、頭にあのBGMが流れてくる", "モラルでの解決方法案としては、ゲーム作りの過程を理解してもらう、とかかな。どれだけ多くの人がどれだけ苦労してコストをかけて作っているのかを理解してもらうしか|それでもやる奴はもうダメですね"]

mochige

["", ""]

aohige9610

["中鶴の絵がまじってるので注意", ""]

gm333

["", ""]

posinega

["", ""]

pikayan

["", ""]

asitaki

["マジコンは叩くのに画像コピペブログは叩かないクソはてなーども↓。マジコンと同様にブログ規制すべき。", ""]

#!ruby -Ku

require "rubygems"
require "json"
require 'open-uri'

url = ["http://anchor18.blog77.fc2.com/blog-entry-195.html",
       "http://ameblo.jp/omisedayori/entry-10184130642.html"]

bookmarks = url.map{|u|
  open("http://b.hatena.ne.jp/entry/json/"+u){|f|
    JSON.parse(f.read.gsub(/\A\(|\)\Z/, ""))
  }
}

user_comment_map = bookmarks.map{|bm|
  h = {}
  bm["bookmarks"].each{|b|
    h[b["user"]] = b["comment"]
  }
  h
}

overlaped_users = user_comment_map.map{|bm|
  bm.keys
}.inject{|a,b|
  a&b
}

overlaped_users.each{|user|
  puts user
  p user_comment_map.map{|b| b[user]}
  puts
}

2008-07-31

[][][][]無題

百万回繰り返された例の件について書いてみるよ。あ、タイトルは必要ないよね?このタグだけ見ればわかるものw

Perl

  • sigil 汚い、my our local 汚い。
  • ->が汚い、ドットにしてよ。Perl6ではドットになるんだって?やったぁ。
  • とにかくコードを見るだけでげんなりする。
  • クラス機構が後付けなのがめんどくせー。Exporter使うのだるい
  • とにかく文法がアレすぎる。あ、でも後置修飾子はおきにいり。
  • でもはえー、ちょうはえー。
  • ライブラリ超使える。もうなんでもできる。

総評:肉は腐りかけがうまい

PHP

  • 名前がださい。
  • ライブラリがださい。関数名がださい。
  • もうとにかください、見るのも嫌。

総評:作った人間はドS、使ってる人間はドM。

Python

総評:とにかく微妙というか、中途半端につかいにくい。いまだにPerlが生きていたり、Rubyキャッチアップされてるのも納得の出来。これがLL界を制覇したらPerlよりうっとうしい。

Ruby

  • 基本的な機能には文句ない。メソッドチェインとかブロック構文とかもうさいこう。
  • なんで定数に代入可なんだろう。警告出るからいいけど。
  • なんでも式だから乱用したら解読しにくそう。
  • ボキャブラリや慣習が他の言語からの流用が多いから覚えやすい。
  • ライブラリが貧弱。
  • バイト文字処理が貧弱。
  • require 'rubygems' が汚いしめんどくさい。RUBYOPTつかえ?そういう問題じゃない。
  • いちばんおそい。でもPythonとどっこいどっこいだからあんまりきにしない。
  • 日本でしか人気ないから結構あっという間にすたれそう。
  • よくまとまってて使いやすいけど、特に目新しい点はないよね。人気があんまりないから変な要望がなくてごちゃごちゃしてないって部分はあるかも。

総評Perlライブラリが流用できたら最高。できなかったらNIH症候群にかかる。

いじょう、ストレスたまったドヘタプログラマが真夏の暑いときに油をぶちまけてみたよ☆

2007-10-20

http://anond.hatelabo.jp/20071019153453

よもや、レスがついてるとは思わなかった。

興味を持ってもらえてサンクスです。

entry = diary.entry('20070712231804')

エントリー指定してたからなんなんだろうと思って。

editもできるってことなのかな?

書き込んだあとの編集機能はいまんとこなし。

上記は指定したidエントリを引っ張ってくる。

# get entry from id
entry = diary.entry('20070712231804')

# puts entry title
puts entry.title

# puts entry content
puts entry.content

で、そもそもRubyに詳しくない自分からするとちゃんとした使い方がそれでもわからない。

バカでごめんねなんだけど、どうやって使えばいいの?

たとえば、エントリタイトル一覧(1ページ目だけだけど)を出力するなら

diary = Masuda::Diary.new

diary.entries do |entry|
  puts entry.title
end

こんな感じかな。

新しいエントリを登録するなら

diary = Masuda::Diary.new

diary.login('my_id', 'my_pass')
diary.post('koko wa title ne', <<EOS)
koko ni kizi no honbun wo kaku
EOS

とか。

ずらーっと増田らしきものを読み込む。

そりゃそうだわなと思いながら文字化けの山。

文字化けなのは、たぶん増田エントリ(UTF-8)をそのまんま取得しているせいだと思う。

なんでスクリプトを実行するときにフィルタを通すとか

~$ ruby hoge.rb | nkf -Ws

出力するときにSJISに変換するとか。

require 'rubygems'
require 'masuda'
require 'kconv'

diary = Masuda::Diary.new
diary.entries.each do |entry|
  puts entry.title.tosjis
  puts entry.content.tosjis
end

あと

session[:diary] = diary.raw

diary = Masuda::Diary.restore(session[:diary])

の...って何でしょうか??

Masuda::Diary#rawインスタンスシリアライズするメソッド。

ログイン済みのインスタンスシリアライズしてセッションにつっこんどいて、次のリクエストでも使いまわすとか。

わかりづらい文章で申し訳ない。

2007-10-18

Ruby Masuda Library

http://rubyforge.org/projects/masuda/

作った。

インストール
gem install masuda
使い方
require 'rubygems'
require 'masuda'

diary = Masuda::Diary.new
diary.entries.each {|entry| puts entry.content }
entry = diary.entry('20070712231804')
puts <<EOS
  #{entry.title}
  #{entry.content}
EOS
entry.trackbacks.each {|trackback| puts trackback.snippet }

diary.login('my_id', 'my_pass')
diary.my_entries.each {|entry| puts entry.content }
diary.post('Ruby is ...', <<EOS)
A dynamic, open source
programming language with a
...
EOS

session[:diary] = diary.raw
...
diary = Masuda::Diary.restore(session[:diary])

2007-06-15

俺が Ruby を覚えた方法

http://anond.hatelabo.jp/20070615171101

俺は大学四年まで全くきちんとしたプログラミングをやったことが無くて(大学講義Javaの超簡単なのを教わったぐらい)で、卒論プログラミングをしなくちゃならなくて、そのとき初めて Ruby を触った。

RubyOOP ですげーんだぜ、とか一部で云われていた時代で、有名なアプリケーションtDiary ぐらいしかなかった。はじめはクラスとかも解らずに何が何だか。そのとき tDiaryプラグインクラス使ってないから簡単に書けるよ、というどこかのチュートリアルをみて見よう見まねで。GD という画像ライブラリを使ったら、サンプルをちょっと弄るだけで画像が作れて面白かったんだ。で、それを日記で公開してみた。今見返すとものすごくしょぼいソース

そのときたまたま Ruby ハカーの方がそのプラグインリファクタリングしてくれて、クラスを使って抽象化してくれて、初めて OOP をほんの少しだけ理解して、こうやってクラスって使うんだなぁというのを知った。本当に運が良かった。

その後就職して仕事php ハカーのすごい先輩にいろいろ教えてもらって php を使って基本的な OOP は理解した(PHPDIS る人が多いけど、プログラミング初心者には良い言語だと今でも思ってる)。これまた運が良かった。

その後またまた Ruby を使い始めたら今までよくわからなかった部分もするする頭に入ってきてホント面白ろくて没頭して。今では一通りのことは Ruby でできるようになった。

プログラミングが解るなら、Railsソース(トリッキーなことやりまくってるのでつらいかも。ActiveRecordActiveSupport はその中でも解りやすい)を読んで、解らなかったら rubygems で興味のありそうなライブラリコード読んで、あたりが OOPRuby 覚えるには手っ取り早いかも。

今なら Rubyレシピブック 268の技Rubyクックブック ―エキスパートのための応用レシピ集 あたり読んでおけば良いんじゃないなぁ。

あと今はてダRuby を含む日記を書くともれなく ruby-dev な人たちがキーワードからたどって読んでくれるので、解らないことをつぶやいたりすると結構答えてくれるみたい。のではてダ使って勉強日記とか書くのも良いと思うよ。

とあんまり参考にならないと思うけど書いてみた。なんか目的見つけられて、楽しく覚えていけたら勝ちなんじゃないかな。たぶん。

 
ログイン ユーザー登録
ようこそ ゲスト さん