「Vim」を含む日記 RSS

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

2013-03-27

プログラミングの初級になるためにの目次

http://anond.hatelabo.jp/20130325172822 の続き

言語Java7を想定。(Java8が迫っていますが、Lambdaなど関数型は、まだ早いと言うことで)

定理由は、C++比較して学べるところが大きく、安全シンプル言語から

※いきなりJavascriptはやめとけ、PHPは論外。

RubyScalaでないのは、筆者が初心者には適切には教えられないから。

おもちゃToyとしてjQueryで遊ぶのは、悪くは無いと思う。

0.はじめに

これ以降は名著の紹介や学習方法の紹介が主体となります。名著のコンポジションという形が時間限界ですね。

量については「初級になるなら、専門書を計3,000ページは修得することは覚悟してね」なんて言ったりしています

Javaで初級のわかりやすい指標ですと、[amazon:Effective Java]とGoFまでの修得。

初級になるまでに登竜門への挑戦期間を含めて、3~4年はかかっても仕方が無いとも思います

※逆に「一山いくらのコーダー」というのは、Effctive JavaGoFが達成している技術も知らずに「自分Javaプログラマー」だと誤解してしまっているような人達です。

そういったコーダーは何年経とうとも初級プログラマーにすら敵いません。

初級を目指して、プログラミングを楽しんでください。

ただ、学ぶべきことはべらぼうですが、「各分野毎に、エレガントな方法がある。だから探して修得する」ということが大切です。

※「一を聞いて十を知る」ような優秀な人に、50冊くらいドーンと本を置いてあげて、各本の目次を読ませるだけで、

底の見え無さを悟ってくれたりすると、嬉しくなってしまます

※余談ですが、その底の見え無さは数学という学問のものですね。例えば、関数型言語の底流に「圏論」というここ100年の最新の数学があります

また中級くらいで、Liskovの置換原則などが載っている本を紹介しますが、

そのLiskovの置換原則の周辺で出てくるcovariant(共変)って、圏論という数学概念だったりします。

数学出身としては、数学現実に活かされている嬉しい事例です。

閑話休題

1.目次

1)エディター・コマンドライン正規表現友達

「速く正確に大量の出力」という能力は、プログラミングをする上でも、ドキュメントを書く上でも、何より「つまら仕事」の時間圧縮ができるようになるため、重要です。

スローガンとしては「思考のスピードで出力することを目指そう」です。

紹介するエディターはemacsvimExcelです。ついでにIMEとしてATOKを使用しているため、ATOK操作Emacsライクにする話も紹介します。

ExcelWindows環境Meadowすら入れさせてくれない場合最後の砦という扱いです。

コマンドラインは、「コマンドラインというものがある」「時として非常に強力である」程度の紹介です。

※筆者はzsh全然使えません。使いこなしている方々と接する度に「勉強しなきゃな~、でも、あっちの方を先にやりたい・・・」とグズグズして、はや何年・・・

正規表現は置換を用いて、テキストの一括編集重要です。後、遭遇したくない事態ですが、スパゲッティコードの解析をする上での最後の砦です。

※遭遇したくない例

ん?何か変なところで副作用のある処理があるようだなぁ(消沈)、SQLのInsertかUpdateか一応Mergeも使っているところから逆算して原因箇所を探すか・・・(諦念)

この糞コードがっ!!こんなところに書くんじゃねぇ!!(憤怒激高)

(ここで、他にやらかしていそうな似たようなコード正規表現grep検索。改行コード込みにすれば複数文検索も可能)

わはは、予想通り共通化すべきロジックメソッドがそこら中にある・・・

2)アルゴリズムに始まりアルゴリズムに終わる(データ構造アルゴリズムの一部という認識言葉を使っています)

入門編で一つLinkedListというアルゴリズムを学びました。

少なくとも一つ本を読みながら自力でアルゴリズムを学べる人なら、大成できる可能性があります

前に紹介した[amazon:C++実践プログラミング]には、LikedListやStackなど基本的なアルゴリズムが載っておりますが、

これに加えて、初級になるためにはこれくらいは知っておいて欲しいというものを紹介します。

※後、最初から必ずしも手を出さなくても良い上限も紹介いたします。

3)正・不正の定式化・自動テスト・ロギング・アサーション・例外・契約プログラミング

プログラムは、データ入力して、加工して出力・保存する処理の繰り返しです。

まり、各一連の繰り返し毎に、「正しい入力」「正しい出力」を定式化する必要があります

それを人間の手では無くコンピューターやらせられるように、つまり自動テストできるようにテストプログラミングします。

そこで処理の進捗を確認するためにロギングし、処理が想定通りであるかをアサーションでチェックし、

不正入力不正な出力=例外が起きたら、対処策をプログラミングします。

(ex 途中で処理を中断して、入力者に適切な入力メッセージを伝えてあげる。入力自動補正などもあり得る)

で、ここら辺をまとめてどうあるべきかとして「契約プログラミング」があります

※余談。定式化・テストに際して、数学畑の人間としては、Javaだとequalsのオーバーライドでも必要になるし、同値関係同値分割だけでなく、集合論群論から学んで欲しい・・・(ここいらは数学科学部1~2年の学習内容)

4)名著を読め、新たな名著を探せるようになれ・素晴らしい人を見つけたら、縁を大切に

名著は英語で読みましょう。名著が名著たる由縁は、度々引用されることにあります

まり最新の技術書を読むときに、引用された名著のフレーズが、新旧のリンクをなし、理解の助けになります

対話は学問をする上で非常に重要です。

壁打ちといって、独り言で思考補助をするよりも遙かに有益です。

※素晴らしい師匠を探すなら、大学行くのが一番ですが、見聞を広げていく中で出会いを待つしかないとも思います

5)オブジェクト指向とはなんぞやとGoFデザインパターン + マルチスレッドプログラミング

マルチスレッドが難しいのは「バグを起こしにくいプログラミング」を求められるから

まりTry and Errorからの決別が求められ、今後の仕様変更拡張も踏まえて慎重に慎重にデザインする必要があります

できる限りステータス変数を持たずに安全に、でもマルチスレッドにするのだから効率を追求しなければ本末転倒

でも効率のためにはメモ化に代表されるキャッシング必須と、アンビバレンツな要素のバランス取りが難しい。

このために、リエントラントな実装・抽象と実装の分離など様々なエッセンスを駆使することが必要です。

床屋哲学者問題

6)日々コツコツと

というよりも孔子曰く、知っているよりも好きであること。好きであることよりも楽しめることのほうが強く、

気づいたら日々時間が許す限りプログラミングをしてしまうのが理想です。

仕事として嫌々スキルを磨かなきゃということが、これほど不幸な職業も無いですね。

余談 FizzBuzz写経について

FizzBuzz」は、本来の目的通り、協力会社の選定の際の足切りには便利ですが、

学習の達成度を測るには、簡単すぎる不適切な問題ですね。

写経

数学畑の人間として言わしてもらうと、

写経数学証明問題を、教科書テンプレ通りに、数値や名称だけ変えて記述することしか出来ない人の発想。

まり矛盾無く一貫した論理モデル」の構築が自由に出来ず、テンプレの微修正しか出来ない人の発想。

また、外部の「矛盾無く一貫した論理モデル」の吸収が不自由で、アルゴリズムを「手順」としてしか捉えられないように見受けられる。

プログラマーとしての大成は見込めないと思う。

数学畑として提供できる試金石

連続であること確かめるための「ε-Δ論法」(数学科学部1年の学習内容)

事前知識無く、このモデルを理解できる人は、十分に「矛盾無く一貫した論理モデル」を構築できる人。

1.まず「連続」とは何ぞやと考えて概念を膨らませてください。

2.十分思考できたと思えたら、Wikiあたりでイプシロン デルタ論法を見てください。

2012-10-01

はてなブックマークコメントを読む「はてコま!」を作りました

サイト作ったよー! - はてコま! | はてブコメまとめ B!

と、サイトの話より、先に言いたいことがあります

このサイト作っていろいろ確認とかして「さーて公開」って思った矢先に自分の作ったサイトからこんな記事見つけて「うひゃー!」ってなりましたw

はてブをもっと快適に!「みんなのはてブ」を公開しました。

はてなブックマークトップページって、正直なんか飽きちゃったし、スクロールせずに表示できるのが数エントリーだけで、やたらヘッダがでかかったり、広告がでかかったり、欲しい情報がほんのちょっとしか表示されないし、気のせいかエロいサイトサムネイルが表示されなかったり、デザインもまじめくさいし、改善したらもっともっと使いやすシャレオツになるし、アクセスも稼げるんじゃないのって思います

私も自分サイトを作ろうと思った経緯はこの方とほぼ同じです。。公式って少し見辛いって思っていました。

そんなときはてブ1000users超え記事アンテナ(´・ω・)|トップページを見つけて「あぁ自分で作るか」ってなりました。

週6フリーターさんがいろいろと使用したものを紹介してくれて、あまり技術のない自分でも作ることができました!

この場をお借りして、お礼を申し上げますありがとうございます

では、恒例化している感じがする、サイト作成にあたってのご報告です。

作成したもの

はてコま! | はてブコメまとめ B!

使い方はいたって簡単。タグを選ぶか検索すると最近はてブ100以上の記事があがってきます

最初サイトを作るにあたって「フリーターさんのもの差別化したいなぁ」と思ったので、私は"はてブエントリーコメント"を"見る"ものに仕上げようと思いました。

なんでコメントを見たいと思ったかという原因はこちらの記事です。

この記事を読んでる人にも感じた人がいると思うのですが、タイトルを読んで「?」となりませんか?

記事を読み進めていくと更に「NSLog」が問題なのか??と混乱しませんか?

最初タイトルの印象が強すぎて、はてブコメントを読んでやっと正確に判断できました。

なので、コメントをもうちょい読みたいなーと思い、こういったサイトしました。

開発するために

  • Vim
    • ねおこんは使っていません。補完には、omni補完だけ使用しています
    • Emacsってなんですか?

それと、フリーターさんのとこに書いてあるものを参考にさせてもらってます

本当にありがとうございます

開発の流れ

Webサービスを作ったことがなかったのですが、HTMLCSSは知っていましたので、ほとんどVimコーディングし、ブラウザで確認するという普通の作業をしていました。

php勉強したことがなかったので、わからないことがあれば都度ネット検索していました。

JavaScriptでFeedを取得したり、PHPを使ってAPIからJSONを取得など、ファイルがまとまっていない感があります

実は、bootstrapで作ったナビゲーションバーのドロップボタンスマフォだと押せないんですよね。。

こういう問題があるときフレームワークを使ったのを後悔しますよね。

実に手軽に使えるbootstrapですが、なんとなく使うのはオススメしません。

ネット上には他にグリッドシステムだけや、違う素材を配布しているサイトがあるので、俺俺フレームワークを作ることをオススメです。(でも、まとまっているという観点でbootstrapは使いたいですよね。)

サーバーさくらインターネットホスティングサーバーを使用しています

開発のその後

初めて、こういったサービスを作ったのですが、小さい微調整に非常に時間がかかりますね。

見難い、見易いを考えながらコードを変更して、ブラウザで確認して・・・を繰り返すのは時間もったいないですね。どなたかいいノウハウをお持ちではないでしょうか?

みなさんも、こう立て続けにはてな関連のサービスが立ち上がると自分でも何か作りたくなりますよね。

思ったら作って便利な世の中にしましょう!えいえいおー!

2012-09-19

勉強会で「自己紹介」してる時間無駄 滅びろ

意味ねーよ自己紹介なんて。ダラダラと。アホか。

10人ぐらいならともかく、数十人集まった勉強会で全員が自己紹介する時間がどれだけ無駄か。

 

5時間勉強会のうち90分も自己紹介に充てるとか正気の沙汰じゃない。

そんなもののためにわざわざみんな遠方から時間を割いて来てるんじゃないだろ?

つーかシャイな人は5分も自己紹介しろとか言われても困ると思うよ?

それが嫌で出席しない人もいると思うし。

 

あと学生なんか5分も自己紹介できるほど自己が無いだろ。だからアニメ趣味とか語り出す。そういうの他所でやれよ。

「ボクはVim派です」知らんわボケ。「最近Gitが気になってます」だから何だよ。「高校時代フットサルを」もうやめてくれ!

 

しかもだいたい調子に乗って時間オーバーする奴が現れるし。

 

webを活用しろってんだよwebを!こんな便利な自己紹介ツールがあるじゃねーか!

勉強会専用の自己紹介ページをweb上に作って、それぞれが勉強会前に書き込む。それでよし。

見たい人は見ればいいし、見たく無い人は見なきゃいい。

いずれにせよ本番の勉強会時間には何ら影響が無くなる。

 

頼むよマジでこれ切実なお願いだよ。自己紹介なんて滅びろよ意味いから。

無駄時間無駄。以上。

2012-07-22

留年たか他力本願ウェブサービス作った。

留年した上に、色々とどん底だったので引きこもりがちになった。

暇だったので、ウェブサービスでも作ろうと思いたった。

どうにか形になったので、誰かの参考になればと思い、その経緯を書いてみる。

■出来上がるまでのあらすじ

ウェブサービスを作るには、プログラムが書けないとダメらしいので勉強する事に。

主にPHP,ruby,pythonなんかがメジャーらしく、最近ではrubyが人気だと知る。

Ruby勉強しようかと思ったけれど、PHPのほうがオススメとどっかのブログに書いてあったのと教科書がたくさんあったのでPHP勉強することに。

「よくわかるPHP」みたいな入門書で一ヶ月くらい勉強して、ある程度は書けるようになった。

本格的なウェブサービスを作るにはフレームワークを使えと書いてあったので、cakePHP勉強した。

コントローラーとかビューとか、モデルとか意味不明過ぎた。

開発環境XAMPPというのをインスコしようとしたけれど、上手く行かず、結局レンタルサーバー上で作る事に。


HTMLとかCSSとか、1から勉強するといつまでも終わらない気がしたので、フリーテンプレートを探した。

http://cakephp.seesaa.net/article/20616700.html

ここのサイト無料で商用化だったので、それをちょっとだけ変更して使った。

考えていたウェブサービスTwitterつぶやき自動回収して検索できるというもの

自動回収するには、プログラムを定期的に動かす必要があり、cronと言うらしい。

LINUXとかの知識が必要と書いてあったが、LINUXなんてわからないし、勉強しようにも空いているパソコンなんてないので焦る。

その後、レンタルサーバーによってはcronの機能提供しているという情報を得る。

借りていたXサーバーにもその機能はあったので、書いたPHPプログラムを走らせてみたら、無事動いた。

後は、簡単にDBの仕組みと検索とページネーションというのを勉強した。

検索とページネーションを実現するのが、難しくてモチベーションが下がったけれど、プラグインという便利なものがあったのでそれを利用したらなんとかできた。cakePHPとかフレームワークプラグインが充実していると後で知る。

このまま公開しようかと思ったけれど、セキュリティ関係が怖かったので一通り勉強した。

ゆーすけべーさんのサイトに「安全Webアプリケーションの作り方」がオススメと書いてあったので、読んで実践した。

■完成

そして、なんとか完成したのが

@ごちです

というウェブサービス

http://gotidesu.com

Twitterから食事の記録が簡単にとれるというウェブサービスです。はっきり言ってウェブサービス(笑)程度の出来ですが、自分としては頑張ったつもりです。

製作期間は一ヶ月くらいです。

ずっと家にいて、試行錯誤していたので作業時間は一日8時間くらいです。

(後の時間キルゾーン3っていうゲームをしていました)

なので、8×30=240時間くらいで完成しました。

多分、一流のプログラマなら半日もかからないで出来るレベルしょうが自分では思ったより早く出来たような気がしています


勉強したもの(もう少し詳しく)

HTMLCSS

これは上にも書いた通り、無料テンプレートを使ったのでほとんど勉強していません。

ただ、テンプレートをいじくるのにも最低限の知識は必要なので「HTMLCSS辞典」みたいなのを買ってきてわからない事はその都度調べていました。

PHP

『よくわかるPHP教科書』というので勉強した後、『パーフェクトPHP』で勉強した。

あと、プラグインなんかについてはその都度、グーグル先生に聞いたり、プログラマブログを参考にさせてもらいました。

こことか、

http://torhamzedd.halteria.com/2012/01/cakephp20search-plugin2.html

こことか、

http://libro.tuyano.com/index2?id=734001cakePHPに関しては、ここが1番わかりやすかった。個人的に)


TwitterAPIについて

これもグーグル先生


MySQLとかのデータベースや、SQL文について。

『よくわかるPHP教科書』で最低限のもの勉強した後、グーグル先生を使って独学。


セキュリティ

安全Webアプリケーションの作り方」を読んで、自分の書いたプログラムをチェックしました。

フレームワークを使えば、(ある程度はフレームワーク側で処理してくれるので)初心者でも比較的簡単にセキュリティ対策ができるようです。



■偉そうにアドバイスなんかしてみる。

アドバイスなんて出来る立場じゃないけど、プログラムは最低限のものが書けて読めれば後は他力本願でなんとかなると思います

難しそうな事があれば、ライブラリフレームワークに頼ればなんとかなります

あとは、集めてきたライブラリなんかを切り貼りすればどうにかなりました。

後はわからない事はグーグル先生か、質問サイトで聞けば教えて貰えます

ただ、配列変数などのプログラムの基本的な仕組みを理解しないとOKwavweとかヤフー知恵袋でも解答をもらえないような意味不明エラーが出ます

基本的な文法エラー

http://jp.piliapp.com/php-syntax-check/

こういうサイトでチェックしていました。


エディタやなんかはvimとか高級な奴は多機能過ぎて意味不明だったので「サクラエディタ」を使っていました。

デプロイプログラムウェブ上に公開して使えるように準備することらしいです)も自動化するべきらしいのですが、普通にFFFTPで手動でデプロイしていました。


まったくプログラムがわからない状態から初めて一ヶ月ほどでそれっぽいものが出来ました。


ネット世界には自分みたいな初心者にもわかりやすく解説してくれている先輩たちがたくさんいます


最低限のことは勉強する必要がありますが、後はグーグル先生や先輩のサイトに頼れば思ったより早くいろんなものが出来ると思います


なにより、自分の書いたプログラムが動いているを見るとすごく感動します。


プログラム出来て幸せでした。

これから自分のペースで作り続けたいと思います

あ、よければ@ごちです使ってやってください。

http://gotidesu.com

2012-05-20

アドバイス適当に書いておきます

http://d.hatena.ne.jp/yamasawa8911/20120519/1337407233

(今はまだ欲しいものがよくわかりません。むしろオススメもの、僕のためになるものを教えてください…)

 だそうなので、俺が思うところを書いておきます

そのWindowsを投げ捨てて、Linuxを入れろ

パソコンMacじゃなくてwindowsです。

基本的にMacのほうが羨ましいとは思うけれども(まあ、MacBookとかが欲しいんだよね、きっと)、でもきっとMacなんてフルスペックで使えるわけない。

周りの子に自慢したいとかいうのであるならば、あるいはどうしてもiOSアプリが作りたいというんだったら、それしか選択肢がないけれども、そうじゃないんだったら辞めましょう。

あとWindowsも、Windowsアプリとか、C#をいじりたいんです!っていう話であるならば、それに固辞するのも結構ですけど、そうじゃなくて、ITに行きたいなら、Windowsを捨ててLinuxしましょう。

自分Gentooが好きですけど、ハードコアすぎるので、Ubuntuのほうがいいかと思う。

Linuxとか難しいんじゃないの……とか思うかもしれないですけど、Ubuntuは素晴らしいです。

Ubuntuは、知り合いの絵師パソコンに入れたら、わりと好評でちゃんと使っていたので、それなりにパソコンが使えるならば、ちゃんと使えます

プログラミング言語関係は、そのOS依存するような環境を使いたいというわけではないのなら、Linuxにしておいたほうが、無難に使えます

なんかもう一つ言語を覚える

CとJavaでもいいとは思うんだけど、どちらもコンパイル必要だし、コードを書くのに、ある程度の量(書きたいときに気軽に書くという感じではない、という意味)が必要なので、もう一つ言語を覚えた方がいいです。

PHPRubyPythonPerlClojureHaskell、お好きな言語をどうぞ。

ただ、PHPはどちらかといえばWebアプリケーションよりかな?という気がするので、PerlRubyPythonがいいかとは思いますが、お好みで。

仕事でいうならPHPのほうが多いかなーというのはあります

自分Pythonのほうが好きですけど、Rubyのほうが割と見つけてもらえる確率は高いかもしれません。

あと、パブリックマンも「Railsでいこう!」というブログ名だったので、尊敬する人にあわせるならRubyのほうがいいんじゃないかと。

こわいおじさんににらまれたいならPerlのほうがいいでしょう。

ちなみに、Ruby on Railsは、割とWebサービスを作るのが楽になりますHerokuとかありますしね。Webアプリケーション周りということだったら、ついでにそのプログラミング言語で使われているメジャーフレームワークとか調べながら勉強するといいかもしれません。

エディタをちゃんとする

で、上記を踏まえて、エディタをちゃんと使いましょう。

パワーが有り余っているなら、総合開発環境であるところのEclipseでもいいんだろうとは思うんですけど、それはおっくう、というのならば、ちゃんとエディタの使い方を覚えましょう。

もう既にUbuntuを入れていると思うので、EmacsVimを使いましょう。Vimのほうが好きではあるんですけど、キーバインドや、その他の癖を考えるとEmacsのほうがいいかなあという気がします。

Ubuntuを入れたなら、Geditというエディタも、Windowsメモ帳の非じゃないくらい極まったエディタなので、それでもいいです。Windowsがそんなに好きなら、サクラエディタを使うといいでしょう。

とにかく、エディタ武器なので、そのあたりも考えましょう。

英語を読む練習をする

あなたはどうやら貧乏だけれども、インターネットは使えているようなので、英語を読む練習をするといいです。

英語なんて全くわからない?ノープロブレム。そんなの適当でいいです。「なんとなくこういう意味かなー」とか、あるいは英語を読むだけでクラクラしない程度でいいと思います

英語を読めると便利です。少しだけ多くの解説が読めるからです。

あと、英語が読めると「pdf Orailly」という魔法言葉が使えたりするんですけど、何に使うかは想像におまかせします。

コードを書きましょう

で、上記を踏まえてなんですが、コードを書きましょう。

コードなんて書いてなんぼです。「如何に優秀なハッカーになるべきか」という記事はゴロゴロありますが、そんなのは気休めに読むべきで、まずはコードを書きましょう。

なんだかんだいって、コードを書くのは経験がモノをいいます。量を書きましょう。そして躓きましょう。最初から質なんて無理です。

躓いたら、なんで躓くのか考えましょう。また、「こんなところが、コードを書く点で不満だなあ」と思うことがあれば、それも考えていきましょう。

偉い人がいろんなソリューションを考えてくれています最初からそのソリューションがなぜ素晴らしいかなんて理解できないとは思います。躓いて始めて「ああ、だからこういう開発手法がいるんだ」ということを理解できるでしょう。

コードを書きつつ、そのプログラミング言語を積極的に学んでいるTwitterアカウントをフォローしましょう

ついでに、コードで躓いたら、その躓いたところを、Twitterアカウントに積極的に発信していきましょう。

そのついでに、そのプログラミング言語を学んでいるTwitterアカウントをフォローしましょう。

あなたの呟いていることによっては、その人は興味を持ってくれるでしょうし、場合によっては手助けをしてくれるかもしれません。

あなたサービスを立ち上げたら、積極的にRTをしてくれるかもしれません。

Githubに載せましょう

で、最初のうちはたぶんコードの引き写しになると思います

だいたいなれてきたところで、自分が作りたいものを作ってみましょう。そして公開してみましょう。できるならGithubで。

Githubに載せる理由は、ソースコードを公開したほうが、突っ込まれる率が高くなり、それに応じて勉強になるというところと、あとはGitというバージョン管理システム勉強をしていたほうが、のちのちに便利だからです。SVNとかありますが。

あと、コードの引き写しに関しては、ブログに書くか、あるいはコードの断片を載せるという意味で、Gistに載せるという点もありますが、その辺りはご自由に。

VPSを借りるといいかもしれません

VPSを借りてみましょう。あなた貧乏だというのはわかっていますVPSとは、仮想専用サーバーのことです。

別に最初から何でも揃ってるようなホスティングサービスでもいいんですが、サーバーを一から立てるという作業は、勉強にもなります。下手な技術書より余程勉強になったりします。

最初から借りると宝の持ち腐れとなると思うので、一つのWebサービスでもいいので、それを自分マシン内でのみ見られるようなったら、借りるというのは一つの手だと思います

VPSがつらいというのならば、Herokuとかもありかもしれないです。

コードを読みましょう

コードを書くのが辛いなら、コードを読みましょう。人のコードアイデアの山です。

自分場合は、割と実例が無いと、挙動がピンとこなかったりするので、コードを読むことのほうが多いです。

特に、その言語で有名なライブラリかいいかもしれません。ガンガン読みましょう。

本が買えなければ、一番の参考書コードです。

あとは頑張ってください

あとは若さでなんとかなるでしょう。

ついでに、この文章を「テメーはなんにもわかってねえんじゃボケ」という言い方をして修正してくれる人もいると思うので、そういう人のアドバイス真摯に受けとりましょう。

あなた人生に幸おおからんことを。

2012-05-18

http://anond.hatelabo.jp/20120518133555

vimemacsは今となると、個性が強すぎて

個人で使う分にはいいとしても、他の人に薦める気がしない。

EclipseNetbeansなら、教える手間も省けるし「とりあえずコレ」という点では優れてる。

http://anond.hatelabo.jp/20120518133555

Eclipseが良いんじゃなくて、vimemacsが不便なんだよ

俺はそういう理由でNetBeansを使ってる

ハッカーVimを使う」 騙される若者たちなのか

Eclipseemacsvimより優れている点を挙げてみよう。

 

 

リファクタリング機能が強力 →本当か

CVSリポジトリの構成を直接覗ける →redmineとかを使ったほうがいいんじゃないのか

デバッガグラフィカル → それ、うれしいか

・設定できる警告メッセージの種類が豊富。→警告そんなにいるのか

復元機能が非常に充実している。 →バージョン管理ソフトがあれば普通だし

 CVSのように以前の状態に復元すること、以前の状態の →diffじゃダメか、というかなんでいまどきCVSなの

 ソースコードとの比較も容易。CVS(Eclipse標準装備)/Subversionプラグインにもこの機能存在する。

プラグインの数が豊富、膨大。 → 数があってもつかえるのは少ない

プラグイン開発環境Eclipse自体に用意されている。 →開発環境を使って作る程のものでもなく、バッチファイルとかスクリプトでよくね

ライセンス形態CPLであり商用利用もしやすい。 →eclipse組み込んで出荷するの?

・上位版にWSADが存在する。 →WSDADってなに、WebSpereの残骸?

IBMバックアップがついている。→それは何か役に立つの

Smalltalkで有名なVisualworksの影響を受けているため、

JUnitプラグイン(Eclipse標準装備)によるテストファーストリファクタリングの他、eXtreme Programming環境が充実している。→Jenkinsのほうがよくね

SubclipseプラグインによりSubversionにも対応できる。これはCVSよりも強力!→コマンドラインから実行するsvnコマンドを覚えておくとはターゲットでも動いて便利だよ

・Call Hierarchyプラグイン(Eclipse3.0から標準装備)によりメソッドの呼び出し階層を調べることができる。この機能は強力だ!→スタック見るだけのことじゃないの

プラグインによってはURLを指定するだけでプラグイン自動ダウンロード自動インストール

自動アップデートができるためプラグインインストールが非常に容易。→勝手に変わったら怖くない

Eclipseから直接Tomcat, JBossなどを再起動できるSysdeoプラグインJBoss-IDEプラグイン

 という強力なプラグインが充実している。→えー、今頃Tomcat

EclipseUML Omondoプラグインによりクラス図などを書いたり、

 UMLによるModel Driven Architecture, リバースエンジニアリング

 などを即座に実現できる。→これは何だかからない

RSSリーダープラグインMP3プラグインAll The Newsプラグイン

など様々なプラグインが充実している。→それ開発ツールじゃなくて携帯でやったほうがよくね

PHP開発が可能なTruStudioプラグインPerl開発が可能なPerl E.P.I.C. プラグイン

C/C++開発が可能なCDTプラグインAspectJ開発が可能なAJDTプラグインなど

言語プラグインが充実している。→Java以外は所詮おまけだけどね

・そのほかにD言語プラグインC#プラグインPythonプラグインJavaScriptEditorプラグイン

CSSプラグイン, HTMLプラグイン, XMLプラグイン、(Jakarta)Velocity UIプラグイン

Apache Antプラグイン(Eclipse標準装備)、非常に強力なApache Mavenを使うことができるプラグイン

ゲームができるプラグイン、メーラとしてつかえるプラグインWikiプラグインHibernateプラグイン

FindBugsプラグインCheckStyleプラグイン、JalopyプラグインSobalipseプラグインソロプログラマープラグイン

など様々なプラグインが充実している。→それぞれ単機能ソフトのほうが充実してるんじゃないの

 

 

どうしてもeclipseというなら止めないけど

2012-05-17

http://anond.hatelabo.jp/20120217153335

おー。すげぇなEclipseほとんど環境じゃん。

今までVim使ってきたけどEclipseに乗り換えようかなー。

2012-05-12

http://anond.hatelabo.jp/20120511000235

元増田です。書くのは初めてなんだけど、たくさん反応があって嬉しい。

なぜ、プログラムやりたくてSEに応募するのかわからん・・・

プロ野球選手になりたくて、バットメーカー就職するようなもんだよね?

というかゲームプログラマーになりたいのになぜSEなのか。

卒研に集中したかったのと、就職率が低い事で焦ってた。

内定が出た時は宝くじが当たったような気持ちだった。本当に無知だった。

 

卒研ではC++OpenGLで朝から夜までプログラムを書いてて楽しかった。

VimGit等の使い方を学んだりもした。

ゲームプログラマに興味があったのは、そういう事ができそうな気がしたからだと思う(実際どうなのかは知らないが)

 

研修が終わり待ち受けていたのは、前回書いたような環境の中

VBソフト機能追加や改修をして、データベースを弄り、Excelテスト結果を書く日々。

他にも諸々の書き物があり、Excelを使っている時間の方が長い。

全く楽しくない。辛い。上司や近くの人も黙々と同じ事やってる。

 

半年、1年、3年とエピソードや意見を貰ったが、自分は1年が精一杯だと思った。

2012-05-11

こんな仕事だとは思わなかった。甘く見てた。

学校卒業してSE就職した。1ヶ月と少ししか経ってないが後悔している。
恥ずかしい程本当に甘く見てた。この時代わずか数社目で内定が出て、儲け物という気持ちで入社した。

会社での仕事は、思っていた物とは二回りも違った。いくつか挙げると
モニタキーボードマウスメーカーPC付属品以外使えず
エディタは(ライセンス違反で)某シェアソフトを強制的に使わされている。
学生の頃や家では、良いキーボードで、Vimを使っていたのでショックだった。
業務系SEでは当たり前なのかは分からないが、コードレビューが行われてるのに
平然とローマ字読みと英語変数名が混ざっていたのもショックだった。
やたらとExcelに触る機会が多いことは、元から知っていたがその通りとなった。

(比較的)給料は高い方で、残業が少ない点は良かった。
でも、安給料でも、若い内だけでも構わないので
はてなで自慢できるほどのスキルや、アウトプットがある訳でないが
もう少し良い環境で、良いプログラミングに挑戦したい。
元々ゲームプログラマーに興味があったが、気がついたらここは業務系SEの道だった。

ある程度、我慢したら転職できればと思っているが
そもそも新卒1年や数年で、こういった理由での転職は有りなのか。
ここを見てる人で、似たような経験をした人はいないだろうか。
何でもお話聞かせて頂けたら幸い。

2012-04-19

http://anond.hatelabo.jp/20120419120752

おれはこの手の改変ネタが大好きなんだが、残念なことにvimについて詳しくないので後半がよくわからなかった。

2012-03-31

未だにEmacsとかVimとか新人に勧めちゃう人って

40歳おっさんでおそらくベテランだけど、IDE以外使う気にならんわ

だって所詮ただのエディタだぜ?色々めんどくさくね?

2012-02-18

http://anond.hatelabo.jp/20120217153335

おー言ってやれ言ってやれ。

eclipseという代替手段が提供されてるのにVimにこだわるロートルなんて

「本物の技術者はパンチカードを読める」

「本物の技術者COBOLを駆使できる」

「本物の技術者ウォーターフォールをきちんとこなせる」

なんてレベル人間と一緒だ。

「「ハッカーVimを使う」 騙される若者たち」に騙される若者たち

http://anond.hatelabo.jp/20120217153335

確かにEclipseはとても便利だ。しかし、何か大事なことを忘れていないだろうか?エディタは友だ、恋人だ。共に学び、共に学ぶあなたEclipseと共に学び成長することが出来るだろうか?Emacs LispVim Scriptでの著名人コーディングスキルはかなり高い。つまり、彼らはエディタと共に成長してきたのだ。Eclipse プラグインの開発のしにくさはEclipseにとって非常に大きな欠点である

2012-02-17

http://anond.hatelabo.jp/20120217153335

リファクタリングやらグラフィカルデバッガやらの機能の数々を覚えるのが面倒くさくてvimを使っている(あと環境依存性)俺は、若いかもしれないが少なくともハッカーにはなれないのな。

Emacsは覚えたい。

ハッカーVimを使う」 騙される若者たち

Eclipseemacsvimより優れている点を挙げてみよう。

 

 

リファクタリング機能が強力

CVSリポジトリの構成を直接覗ける

デバッガグラフィカル

・設定できる警告メッセージの種類が豊富

復元機能が非常に充実している。

 CVSのように以前の状態に復元すること、以前の状態の

 ソースコードとの比較も容易。CVS(Eclipse標準装備)/Subversionプラグインにもこの機能存在する。

プラグインの数が豊富、膨大。

プラグイン開発環境Eclipse自体に用意されている。

ライセンス形態CPLであり商用利用もしやすい。

・上位版にWSADが存在する。

IBMバックアップがついている。

Smalltalkで有名なVisualworksの影響を受けているため、

JUnitプラグイン(Eclipse標準装備)によるテストファーストリファクタリングの他、eXtreme Programming環境が充実している。

SubclipseプラグインによりSubversionにも対応できる。これはCVSよりも強力!

・Call Hierarchyプラグイン(Eclipse3.0から標準装備)によりメソッドの呼び出し階層を調べることができる。この機能は強力だ!

プラグインによってはURLを指定するだけでプラグイン自動ダウンロード自動インストール

自動アップデートができるためプラグインインストールが非常に容易。

Eclipseから直接Tomcat, JBossなどを再起動できるSysdeoプラグインJBoss-IDEプラグイン

 という強力なプラグインが充実している。

EclipseUML Omondoプラグインによりクラス図などを書いたり、

 UMLによるModel Driven Architecture, リバースエンジニアリング

 などを即座に実現できる。

RSSリーダープラグインMP3プラグインAll The Newsプラグイン

など様々なプラグインが充実している。

PHP開発が可能なTruStudioプラグインPerl開発が可能なPerl E.P.I.C. プラグイン

C/C++開発が可能なCDTプラグインAspectJ開発が可能なAJDTプラグインなど

言語プラグインが充実している。

・そのほかにD言語プラグインC#プラグインPythonプラグイン、JavaScriptEditorプラグイン

CSSプラグイン, HTMLプラグイン, XMLプラグイン、(Jakarta)Velocity UIプラグイン

Apache Antプラグイン(Eclipse標準装備)、非常に強力なApache Mavenを使うことができるプラグイン

ゲームができるプラグイン、メーラとしてつかえるプラグインWikiプラグインHibernateプラグイン

FindBugsプラグインCheckStyleプラグイン、JalopyプラグインSobalipseプラグインソロプログラマープラグイン

など様々なプラグインが充実している。

 

 

以上、老害に騙されずにEclipseを使いましょう。

2011-09-23

http://anond.hatelabo.jp/20110902170141

nethackはさすがに古いと思うんだ。今なら何がいいんだろ?vimperatorLDrizeChrome keyconfig?

vimでいう通常モードで使うブラウザ情強プラグインから入ればいいんではないかと。

(vim互換である必要はないと思う。そもそもvim互換って何だ?)

2011-09-02

http://anond.hatelabo.jp/20110902170141

emacs使える環境なら無理にvim使わなくてもいいんじゃないかな。

そうは言ってもたまに「そんなもんいちいちemacsなんか立ち上げてないでviでやれよプックス」みたいな扱い受けるんで…。

あとviユーザーは多分キーバインド互換性とか何も考えてない。「頭切り替えて使い分けれはいいじゃん」ではなく、勝手に切り替わってて自分では切り替え自体認識していないよ。自動書記状態とでもいうべきか。

それは凄いなあ。俺の脳味噌はそこまでキャパシティ無い…。visual studioとか使ってても(Express版なので)emacsキーバインドが無くてイライラすることが非常に多い。

http://anond.hatelabo.jp/20110902162732

emacs使える環境なら無理にvim使わなくてもいいんじゃないかな。

カーソル移動がhjklなのに馴染めない、というのはまあ当然なので、カーソルキーで動くように設定をいじるか、nethackやって慣れるといいと思う。

あとviユーザーは多分キーバインド互換性とか何も考えてない。「頭切り替えて使い分けれはいいじゃん」ではなく、勝手に切り替わってて自分では切り替え自体認識していないよ。自動書記状態とでもいうべきか。

http://anond.hatelabo.jp/20110902162034

最近の若者emacsよりvimなので、俺もvim使えるようになりたいと思ってるんだけど、何度も手をつけては挫折してemacsに戻ってる。

(と言ってもemacsも大して使いこなしてはいないけど)

慣れればいいんだろうけどとっかかりづら過ぎるんだよあのシステム

emacsカーソル移動とかのキーバインドが(設定すれば)コンソールとかブラウザとかでもそのまま使えていいんだけど、

vimmer人達ってその辺どう考えてるんだろう。頭切り替えて使い分ければいいじゃん的な感じなのかな。

2011-08-23

Mac上のVim-LaTeXでいい感じにPDFコンパイルする設定

Vim-LaTeXは、デフォルトでは.dviコンパイルして開く設定です

でもMac OS Xなら、.dviコンパイルしてX11上のxdviで見るより、直接.pdfコンパイルしてPreview.appで開きたい。


MacTeXなどで、pdflatexコマンドインストール

http://www.tug.org/mactex/

Vim-LaTeXインストール

http://vim-latex.sourceforge.net/

.vimrcに以下を追加。

let g:Tex_DefaultTargetFormat = 'pdf' "標準で.pdfコンパイルして開いてね

let g:Tex_ViewRule_pdf = 'open -a Preview.app' "PDFはPreview.appで開いてね

let g:Tex_CompileRule_pdf = 'pdflatex $*.tex' "pdflatexを使って.texから.pdfに変換してね



以上の設定で、.texファイル編集中にノーマルモード

\ll

で直接.pdfコンパイルして、

\lv

pdfをPreview.appで開いてくれます

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