並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 220202件

新着順 人気順

rubyの検索結果281 - 320 件 / 220202件

  • Ruby on Railsの「えせMVC」の弊害

    先日のエントリーでも少し触れたが、Ruby on Railsの最大の問題点は、それが持つ「一見そのフレームワークがMVCの形をとりながら、MVCの最も大切なところを外している『えせMVC』である」点にある。MVC(Model View Controller)がなぜ必要かを根底の部分でちゃんとと意識せずにRailsアプリケーションを作ると、後々ひどい目に会うので注意が必要である。 その意味では「RailsでMVCを学ぶ」などもっての他だし、「JavaにもRailsと同じようなフレームワークを作って業務用アプリの開発を効率化しよう」などという発想もとても危険である。 ということで、今日はまずはMVCの解説から。 MVCの発想の根底には、「モジュール化と情報の隠蔽により、プログラムがスパゲッティ化するの(コード間の相互依存関係が複雑に入り込んでしまってにっちもさっちも行かない状態になること)を避

    • プログラマが楽しく読めるLink集 Vol.1 - 乱筆乱文お許し下さいorz

      ネットサーフィン(死語)をしていて、プログラマなら誰でも楽しく読めるハズ! と思ったサイトや記事を紹介して行きます。 とりあえず、Vol.1ッ! ハッカーになろう (How To Become A Hacker) 実は、この5つすべて(Python, Java, C/C++, Perl, LISP)を勉強しておくのがいちばんいいのです。 これらはもっとも重要なハッキング用言語だというだけでなく、 それぞれプログラミングに対してまったく違ったアプローチをしているので、どれも非常に有益な勉強となるでしょう。 Rubyは?(´・ω・`)ショボン Fine Software Writings 特に僕が好きな記事を! ホワイの(感動的)Rubyガイド (why the lucky stiff) どうしてプログラマに・・・プログラムが書けないのか? (Jeff Atwood) ソフトウェア開発者のた

      • 数万のソースコードから目的の一行を一瞬で見つけ出す、Milkode - おんがえしの blog

        最新バージョンはコチラです。 Milkode(ミルコード)はソースコード検索エンジンです。手元にある大量のソースコードを登録し、ブラウザで閲覧したり検索することが出来ます。20000ファイル位であれば1秒位で特定の一行を見つけることが可能です。 Rubyで書かれており、使っているライブラリも含めてRubyGem経由でインストールすることが出来ます。 OSX, Unix $ sudo gem install milkode Windows(32bit) $ gem.bat install rroonga --platform x86-mingw32 $ gem.bat install milkode Windows(64bit) ※ 事前に64bit版rroongaのインストールが必要です。 $ gem.bat install milkode詳しいインストール方法はホームページをご覧下さい。

          数万のソースコードから目的の一行を一瞬で見つけ出す、Milkode - おんがえしの blog
        • コーディング規約を作ろう

          コーディング規約を作ろうコーディング規約やスタイルガイドは、HTMLやCSSのマークアップや、各種プログラミング言語の書き方をまとめたものです。コーディングスタンダードやコーディングガイドラインとも呼ばれますね。コーディング規約を決めていなかったり、あいまいにしたまま進めていくと、書式が統一されていないため、コードを追加すればするほどゴチャゴチャしたコードになりがちです。チームでコーディングしていくならなおさら。今回チーム用のコーディング規約を見直すことになったので、その時感じた抑えておくべきポイントをまとめてみます。 コーディング規約に含むべき項目ディレクトリー階層ファイルを保存するフォルダーの階層や、そのフォルダーの名前を決めておきます。画像を格納しているフォルダーを例にあげても、「image」「images」「img」などの名前が考えられます。人によってつけるフォルダーの名前が変わっ

            コーディング規約を作ろう
          • これから新しいサイト・ブログを無料で作るならTumblrがオススメな理由 - AIUEO Lab2

            Tumblrとは画像やテキスト、動画などを投稿・共有できるウェブログサービス。 Browse communities on Tumblr ネット上の好きな画像や動画、文章を簡単にクリップして共有できるので、スクラップブック代わりに使っている人も多いはず。位置づけとしてはTwitterとブログの中間「ミニブログサービス」とでもいうのでしょうか。 tumblrとは ウェブの人気・最新記事を集めました - はてな Tumblrってなに?ビギナーのための基礎知識や始め方・使い方 - はてなニュース でも、実はTumblrは無料で使えて静的なページも作れる立派なCMS(コンテンツマネジメントシステム)です。 投稿は簡単で、広告も入らず、アフィリエイトリンクの設置も自由で、独自ドメインも使える。加えて、サーバーの必要もなく容量もほぼ無制限で、予約投稿や、複数人での運営もできて、Markdown記法も使

              これから新しいサイト・ブログを無料で作るならTumblrがオススメな理由 - AIUEO Lab2
            • Wikipediaがわかりにくいので(数学とか)、わかりやすいサイトを作ってみた - 大人になってからの再学習

              このブログをはじめてから2年8か月と少し(ちょうど1000日くらい)が経った。 これまでに公開したエントリの数は299。 つまり、このエントリは記念すべき第300号!というわけ。 ブログとしてある程度の存在を認められるには300記事が1つの目安であるという説があるので[要出典]、 この300回目のエントリは当ブログにとって大きな節目と言える。 前回299号のエントリでは「なぜWikioediaはわかりにくいのか(数学とか)」という内容を書いた。 そこで言いたかったことを3行でまとめると次の通り。 ■ Wikipediaの説明は理工系の初学者にはわかりにくいね。 ■ そもそも説明のアプローチ(思想とも言う)が違うので、わかりにくくて当然だね。 ■ もっとわかりやすい説明の仕方がありそうだね。特に図を使った説明は直観的な理解を助ける力があるね。 まぁ、だいたいこんな感じ。 そして、その記事につ

                Wikipediaがわかりにくいので(数学とか)、わかりやすいサイトを作ってみた - 大人になってからの再学習
              • 未経験からWebデザイナー、Webクリエイターを目指す人のためのWordPressとTwitterをつかった就転職活動のすすめ - DESIGNMAP

                仕事を続けながら勉強、制作をしよう 未経験からWebデザイナーになる場合も作品が求められる。未経験だからこそ、しっかりしたクオリティの作品を用意したい。そういう作品をつくるために、勉強をすることになる。 Webデザイナーになる準備期間は個人差や目指すスキルにもよる。Illustrator、Photoshop、HTML、CSS、JavaScript(jQueryも含む)、WordPressでサイトが作れるくらいのスキルを目指すとすると、目安で1年くらいはかかるだろう。もちろん、スキルや期間はあくまで目安である。習得には個人差があり、あくまで自分のペースを守ることが大事である。 具体的な勉強や行動のステップは「まったくのゼロから、独学でWebデザイナーになる方法」を、デザイン自体の勉強は「まったくのゼロから、デザインを独学する方法」を参考にしてほしい。 準備期間は1年くらいの長期戦になる(後述

                • プログラミングやったこと無い奴はJavaScriptから始めろ : IT速報

                  1: 以下、名無しにかわりましてVIPがお送りします 投稿日:2014/03/09(日) 16:42:04.45 ID:ZsWrBm0M0 まずはNode.jsをインストールしろ話はそれからだ Download:http://nodejs.org/ 2: 以下、名無しにかわりましてVIPがお送りします 投稿日:2014/03/09(日) 16:42:26.57 ID:hzAFYxvI0 一方俺はコボルから始めた 3: 以下、名無しにかわりましてVIPがお送りします 投稿日:2014/03/09(日) 16:57:50.90 ID:ZsWrBm0M0 インストールしたかてめぇら 4: 以下、名無しにかわりましてVIPがお送りします 投稿日:2014/03/09(日) 16:59:13.96 ID:2B5lF2zi0 javaでいい? 5: 以下、名無しにかわりましてVIPがお送りします 投稿

                    プログラミングやったこと無い奴はJavaScriptから始めろ : IT速報
                  • gitの良さがいまだに分からない - 負け犬プログラマーの歩み

                    ここ2年ぐらいで俺が働いた現場はみんなgitを採用している。就職エージェントと面談するときもgit経験の有無をよく訊かれるし、今ではVSSやCVSどころか、SVNですら時代遅れになってきて、SVNを使っている現場は「レベルが低い」「保守的・旧態依然」という雰囲気すら感じる。 俺としては4-5年前からgit(GitHub)を使っているし、gitを使うこと自体に抵抗はない。一通りの基本操作はできるし、人並みにはできると言っても差し支えはない。 …が、正直gitの良さがあまり見えてこない。 もし俺が中規模以上のプロジェクトのリリースを本格的に管理する側であれば全然違った感想を持ったかもしれない。でも一人の開発者として、せいぜい10人程度のプロジェクトで利用する限り、「gitで良かった」という状況があまり思い当たらない。 ではgitの何が気に食わないのか書いていきたい。 ①gitは馬鹿には難しい

                      gitの良さがいまだに分からない - 負け犬プログラマーの歩み
                    • 正規表現まとめサイト | エンタープライズ | マイコミジャーナル

                      Smashing Magazine - WE SMASH YOU WITH THE INFORMATION THAT WILL MAKE YOUR LIFE EASIER, REALLY. 文字列を処理するにあたって正規表現は欠かせない機能といえる。任意の文字列やテキストファイル、HTML/XMLから特定のキーワードを検索したり取り出し、置換をおこなうにあたって、正規表現が使えると使えないのとでは、プログラミングの手間やツールの活用度合いが変わってくる。 正規表現は便利で強力な機能だが、その独特の表記方法はプログラマ初心者には敷居の高いものでもある。Glen Stansberry氏による正規表現に関するチュートリアルや資料、ツールなどのまとめがSmashing MagazineにEssential Guide To Regular Expressions: Tools and Tutori

                      • プログラマが勉強すること - きしだのHatena

                        今日もプログラマになる勉強する人のところで話をしてきました。 で、また適当にいろいろ書いてました。 http://www.slideshare.net/nowokay/20140228-31742219 今日は特に、この図の内容についてまとめておきます。 ※ このエントリは、主に今日の話を聞いた人を対象としています。前提や補足については省略しています。 まずはプログラミング言語を プログラマというのは、利用者に直接サービスを提供することはできません。コンピュータの上でプログラムを動かして、そのプログラムを使ってもらうことでサービスを提供します。 ※組み込みは前提から外しています。 そのプログラムも、コンピュータで動くものを直接記述することは現実的にできません。 なんらかのプログラミング言語で、プログラムを書くことになります。つまり、プログラマの仕事は直接的にはプログラミング言語をいじくる作

                          プログラマが勉強すること - きしだのHatena
                        • ウェブサイトが表示されるまでにブラウザはどういった仕事を行っているのか?

                          ウェブページを表示するためのアプリケーションであるウェブブラウザは、今や多くの人が毎日のように利用する生活に欠かせないツールとなっています。そのブラウザがどのような仕組みで成り立っているのかについての解説がGitHubで公開されています。 GitHub - vasanthk/how-web-works: What happens behind the scenes when we type www.google.com in a browser? https://github.com/vasanthk/how-web-works この解説では例として「アドレスバーにgoogle.comと入力してからGoogleのホームページが表示されるまで」の流れが取り上げられています。 ・目次 ◆google.comの「g」を入力した時 ◆エンターキーを押した時 ◆URLを解読 ◆HSTSリストを確認

                            ウェブサイトが表示されるまでにブラウザはどういった仕事を行っているのか?
                          • 面倒な作業不要で、Webアプリ開発が劇的にはかどる!至高のJavaScriptライブラリ6選 -

                            どうも、まさとらん(@0310lan)です! 今回は、Webサービスやアプリ開発などにとても便利なJavaScriptライブラリを厳選してご紹介しようと思います! 強力な独自機能を簡単に追加できるものやトレンドに合わせたWebデザインを構築できるもの、そのままWebサービスとして利用できるものまで、ピックアップしてみました。 これからWeb開発を始めようという人はもちろんですが、開発ネタに困っている人も何か良いアイデアが発見できるかもしれないので、ぜひ参考にしてみてください! ■波形表示やプレイヤーも作れる高機能な音楽ライブラリ! 【 wavesurfer.js 】 音声ファイルを読み込むだけでグラフィカルな波形表示が可能で、多彩なオプションを利用することで自在に音声を制御できるJavaScriptライブラリです。 音声の再生・早送り・巻き戻し・ミュートなどの基本機能はもちろん、音声の書き

                              面倒な作業不要で、Webアプリ開発が劇的にはかどる!至高のJavaScriptライブラリ6選 -
                            • Web制作初心者に役立つ良質なツールやコンテンツ達を出し惜しみせず全部紹介

                              ぼくがWebデザインに携わってからこれまで約5年半、Web上の多くの優良なサイトから知恵を借りて、ド素人からなんとかフリーで仕事を貰えるまでになった。そして常々、Webから与えてもらった知識や情報を還元したいと思っていた。 こうしてブログを始め自ら情報を発信する場を得たので、一度Web制作に関する良質な情報をまとめて提供してみたい。 このエントリーでは、Web制作の初心者もしくはWeb制作に興味があってこれから始めてみたいという人が、うまくWebの世界に入っていくのに役立つような情報を厳選して紹介している。 一人でWeb制作全般を見れるようになるための基礎的な情報を広く列挙してあるが、必要な箇所だけ断片的に取り上げてもらっても役立つと思う。またできるだけ日本語の中で閉じるよう、海外サイトは最低限にとどめた。 目次 とにかく1ページに詰め込むことを優先したのでかなり長いが、下の目次から必要な

                                Web制作初心者に役立つ良質なツールやコンテンツ達を出し惜しみせず全部紹介
                              • 趣味で作ったソフトウェアが海外企業に買われ分野世界一になるまでの話 - knqyf263's blog

                                2年前の2019年8月に以下のブログを書きました。 knqyf263.hatenablog.com 今回はその続きです。前回のブログは多くの人に読んでもらうことを意識して書きましたが、今回はそうではないです。特に得た学びを書くわけでもなく何で作り始めたのか?とかどんなことがあったのか?とか思い出話を書いているだけなので、言ってしまえば自己満足の記事です。それで構わない人や前回の記事を見てその後どうなったか気になった人だけが読んでもらえますと幸いです。 誰かのためになるわけでもない過去の出来事について語るのは老人感が強くて基本的に好きではないのですが、自分の中で一番大きかった目標を達成したので節目として書いています。 英語版の記事も会社のブログから公開しています。英語版のほうが簡潔で良い可能性もあります。日本語版は誤った解釈をされると嫌だからもう少し詳細に書こう、を繰り返していつも長くなりす

                                  趣味で作ったソフトウェアが海外企業に買われ分野世界一になるまでの話 - knqyf263's blog
                                • 起業家けんすうさんが質問箱でオススメされた本24冊+αを意地でまとめてみた - 読書熊録

                                  起業家のけんすうさん(Twitter: @kensuu)の3万超のツイートをひたすら遡り、匿名Q&Aサービス「質問箱(peing.net)」、同種サービス「Sarahah」でオススメされた本をまとめたのがこのエントリーです。ついでに、普段のツイートで紹介された本もプラスアルファでまとめました。 正直、めちゃ大変です。誰に頼まれたわけでもないので、意地です。酔狂です。 しかしながらけんすうさんのオススメ本は、普段流し目で見る限りどれも面白く、これを機に何としても網羅したいと、そう思った次第です。 きっかけはこの回答 なんでこんなことをしようかと思ったかというと、けんすうさんに寄せられたこの質問(要望)と、回答がきっかけでした。 不思議と、この回答が刺さりました。普段から無料の情報に慣れすぎて、選定、編集、発信にかかる「労力」に無関心になってはいないか。質問者ではないのですが(これは本当)、自

                                    起業家けんすうさんが質問箱でオススメされた本24冊+αを意地でまとめてみた - 読書熊録
                                  • OLの事務vim日記 - 藻ログ

                                    4月から都会でOLとして働き始めたので, OL的windowsの事務処理環境を手探りで作ってみました. OLとWindows 事務処理といえばOffice, 当然Windowsで行うことになります. 今時のOLは家ではLinuxを使っているはずなので, 自然とシェル環境で困ることになります. Windowsが本当にわからない linuxコマンド使いたい(DOS音痴) Cygwinは嫌い MinGW+MSYS にしてみたい(けど未だによくわかってない) 事務PCなので, 大掛かりな環境は入れたくない(入れられない) WSL ? そもそも Windows7 なので(ry) などのモチベーションから 色々見ていてcmderが良さそうだなと思ったのですが cmder.net 所属機関でフィルタされて落とせなかった(つらい)ので, ConEmu + msys bash の組み合わせで端末環境を整える

                                    • フィボナッチ工数見積は「完成させます!(徹夜で)」という無理ゲーによる弊害を最小化するプロジェクトマネージメント手法 - ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

                                      今まで数々のプロジェクトマネージャーとそのプロジェクトマネージメント手法に翻弄されてきたが、現在の勤め先であるベルリンのITスタートアップで取り入れている手法が歴代の中でも一番マシ。まず工数見積がとても洗練されている。エンジニアが無理やりに「今週中に完成させます!」と言わされて、結局はその約束が守りきれずに翻弄される、というような弊害が最小化できているな、という話。 プロジェクトマネージメントチームのメンバー達はその見積方法を「フィボナッチ」と表現している。 だいたい工数見積なんてものが正確にできる人に出会ったことが無い。複雑なITプロジェクトの全体像を把握して「これをうちのチームで完了するためには**日を要する」なんてピタッと当てたためしがない。絶対にズレる。 エンジニアに向かって「お前さー『今週中に完成させます』って言ったよな?誰だっけ、それ言ったの?オレじゃねーよ。お前だよ。おめーの

                                        フィボナッチ工数見積は「完成させます!(徹夜で)」という無理ゲーによる弊害を最小化するプロジェクトマネージメント手法 - ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記
                                      • 類似しているプログラミング言語の文法などの比較まとめチートシートが良い感じ - goinger的日記

                                        以前見つけた資料。そういやそんなんあったなと久々に検索して探すのに少し手間取ったのでメモ 言語の比較対応で文法覚えられそうなんで便利じゃないかなと 参照: Big Script: PHP, Perl, Python, Ruby, Smalltalk http://hyperpolyglot.wikidot.com/scripting Small Script: Bash, Tcl, Lua, Javascript, IO http://hyperpolyglot.wikidot.com/small Platform: C, C++, Objective C, Java, C# http://hyperpolyglot.wikidot.com/platform Lisp: Common Lisp, Scheme, Clojure, Emacs Lisp http://hyperpolyglo

                                          類似しているプログラミング言語の文法などの比較まとめチートシートが良い感じ - goinger的日記
                                        • Webサービスの作り方をプログラミング初心者が勉強した記録記事

                                          近年、よりプログラミング言語習得の注目度が上昇しています。 インターネット上でプログラミングが学べるサービスも多数登場していますが、いざ勉強を始めてみると難しいと感じたり、興味はあるけれど敷居が高いと感じてしまうこともあります。 今回は、未経験者や経験の浅い著者がプログラミングを学んだ成果を記録している記事をご紹介します。 プログラミングをこれから学習する方にとって参考になる内容となっていますので、ぜひ目を通してみてください。 未経験者がWebサービスの作り方を学んで成果を記録した記事 1.ノンプログラマーが3ヶ月でWebサービスを作ってみた|Qiita http://qiita.com/tabbyz/items/6513e84f319843c316d5 プログラミング関連の知識を記録、共有するサービスQiita内の記事です。 ノンプログラマーで趣味でたまにプログラミングをする程度という筆

                                            Webサービスの作り方をプログラミング初心者が勉強した記録記事
                                          • 完全に一致を作るための勉強法 たくさんのアクセスありがとうございまし..

                                            完全に一致を作るための勉強法 たくさんのアクセスありがとうございました。 コメントもたくさん頂いてまして、それにお答えするのに「ブログでもつくろうかいな」とのぼせましたが、そんなテーマで続くわけもないので、やはりアノニマスダイアリーにしました。 【製作期間について】 まず、皆さん仕事しながらたった4ヶ月で!と褒めて頂いてますが、たったじゃないですよ。4ヶ月って。 仕事が終わって、毎日2~3時間。土日関係無くやると、多分300時間くらいになります。 専門学校の2年間の授業時間がこのくらいだったりするんじゃないですかね。結構長いです。 【モチベーションの維持について】 モチベーションを保つのがすごいというのも褒めてもらいましたが、私は一回やり始めると、意外に長く続きます。 コツがあるんです。 毎年、日々の単純作業が続かない新入社員が入ってきますが、そんな新人に言います。 「息をするように続ける

                                              完全に一致を作るための勉強法 たくさんのアクセスありがとうございまし..
                                            • エンジニアならこれ読んどけって本まとめ - だったらこうしてみたら?

                                              改訂:2014/10/20 備忘録としてまとめていきます。 今まで集めていた情報まとめていきます。 すでに読んだやつも今これから読んでこうってやつもまとめにまとめちゃいまっせ。 アウトプットも大事だけど、自分より先輩の方がアウトプットし続けて頑張って得た知見をあっという間にインプットできる"本"という形での学習も超大事なのです。 エンジニアとしての心得みたいな本 ハッカーと画家 コンピュータ時代の創造者たち 作者: ポールグレアム,Paul Graham,川合史朗出版社/メーカー: オーム社発売日: 2005/01メディア: 単行本購入: 109人 クリック: 4,884回この商品を含むブログ (594件) を見る YCombinatorの共同設立者の彼の本。 CODE COMPLETE 第2版 上 作者: スティーブマコネル,Steve McConnell,クイープ出版社/メーカー: 日

                                                エンジニアならこれ読んどけって本まとめ - だったらこうしてみたら?
                                              • 「マイクロソフトを嫌っていたのではない、われわれが嫌われていたのだ」――Rubyまつもとゆきひろ氏が語る、MSの壁

                                                「われわれがマイクロソフトを嫌っていたのではない、マイクロソフトがわれわれを嫌っていたのだ」――日本のソフトウェア技術者であり、Rubyの父とも呼ばれるまつもとゆきひろ氏は、日本マイクロソフトが主催する開発者向けイベント「de:code 2016」でこう語った。一体何があったのか。 「オープンソースソフトウェア」の誕生 その歴史は、1996年までさかのぼる。当時、米Microsoftが開発していた「Internet Explorer」の機能強化により、それまで大きなシェアを獲得していたNetscape CommunicationsのWebブラウザ「Netscape」シリーズとの2大ブラウザ戦争が勃発した。その後、Internet Explorerはますます勢いを増し、この勢いに押されたNetscapeは1998年1月にNetscape Navigatorを無償化。しかしシェアの巻き返しには

                                                  「マイクロソフトを嫌っていたのではない、われわれが嫌われていたのだ」――Rubyまつもとゆきひろ氏が語る、MSの壁
                                                • Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ

                                                  今まで何度もスクレイピングとかクローリングをしてきたので、マエショリストの端くれとしてコツを公開すべきかなあ、と思い、公開します。 今日の題材は、CNET Newsです。私はウェブ文書にタグ付けをするという研究をしているのですが、そのための教師データとしてクローリングをします。 photo by Sean MacEntee 要件定義 CNET Newsから全ニュースを保存し、その本文をデータベースに保存します。これは、次のようなフローに書き下すことができます。 全URLを取得し、データベースに保存 データベースにある全URLをダウンロードする 保存した全ページを解析して、本文をデータベースに保存する という流れです。これらは独立していますから、それぞれどの言語で解析しても構いません。しかし後述しますが、「あとから追いやすくする」「適材適所」といったあたりを気をつけて、言語選択をするべきだと

                                                    Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ
                                                  • WEBアプリ開発に便利な機能&負荷テストツール集:phpspot開発日誌

                                                    15 Free Functionality And Load Testing Tools For Web Applications WEBアプリ開発に便利な機能&負荷テストツール集。 プログラム変更後の品質チェックを行える機能テスト・ユニットテスト、負荷に耐えられるか確認するために負荷テストツール、で品質向上に役立てられます。 Selenium等の定番以外にも沢山の機能テストツールや負荷テストツールがあるみたいです。 機能テストツール集 Seleniumのようなブラウザを自動で直接動作させて表示結果を確認するツール うまく運用すれば、機能を変更した際の正常動作確認に神経をすり減らすことがなくなります SeleniumHQ おなじみのテスト自動化ツール テストケース定義で自動でブラウザ上でテストしてくれます Watir Rubyのブラウザ自動化ライブラリだそう。 Windowsだと、IE、F

                                                    • 夏のインターン講義「1営業日で書くJavaScriptコンパイラ」の設計と実装 - クックパッド開発者ブログ

                                                      今年、クックパッドでは夏のインターンと題して20名弱のインターンを受け入れました。 このインターンは前半と後半に大きく分かれており、 後半が社員に混じって業務をするいわゆる普通のインターンで、 前半は7日間にわたってプログラミング関連の講義を受けるという仕組みです。 わたし(青木)はその前半の過程において、「プログラミングパラダイム」という 1 日の講義を担当し、 JavaScriptの処理系を書くという、ツッコミどころの多い課題を実施しました。 本稿では、その講義を開発する際に考慮したこと、特に難易度調整についてお話しします。 また講義のために開発したJavaScript処理系「JetSpider」についても軽くふれます。 ▼講義資料 Cookpad Summer Intern 2015 - Programming Paradigm from Minero Aoki JetSpiderコ

                                                        夏のインターン講義「1営業日で書くJavaScriptコンパイラ」の設計と実装 - クックパッド開発者ブログ
                                                      • いまさらですが、増井雄一郎さんのメモ帳サービス「wri.pe」がすごい件 #HTML5 #プログラミング #wri.pe #markdown - CodeIQ Blog

                                                        CodeIQ中の人、babaQです。 ちょっと前になるのですが、コワーキングスペース茅場町 Co-Edo(コエド) で開催されたmasuidriveこと増井雄一郎さんのトークセッションに参加してきました。 HTML5を活用したメモ帳アプリ「wri.pe」誕生のきっかけ テーマは、増井さんが個人でつくった(とは思えない)メモ帳アプリ「wri.pe」 ゴールデンウィークを利用して、何かゴリゴリと作りたいと思い立ち、 1週間で「自分で使いたいものを作る!」と決めたのがきっかけなんだとか。 まず、浮かんだアイデアは2つ。 煩雑なメモをどうにかできるアプリと、未読のチャットを整理できるアプリ。 でも、1週間で開発するにはチャットはちょっと重い… ということで、メモアプリを作ることに決定。 まず最初に「メモアプリの課題」を整理したそうです。 - いつでも、どこでも使える(iPhone、iPadでも)

                                                          いまさらですが、増井雄一郎さんのメモ帳サービス「wri.pe」がすごい件 #HTML5 #プログラミング #wri.pe #markdown - CodeIQ Blog
                                                        • null安全でない言語は、もはやレガシー言語だ - Qiita

                                                          これらは、表中の「リプレース対象言語」に挙げたように、多くのメジャー言語に対する代替手段でもあります。 Java の代わりには Kotlin や Ceylon が、 JavaScript には TypeScript や Flow が、 Objective-C には Swift が、そして PHP には Hack があります。 Python は自身に null 安全 を取り込みました。 Crystal は直接 Ruby と連携して使えるわけではありませんが、 Ruby 風の null 安全 な言語です。 Rust は C++ の代替を目指して開発され、 Firefox の一部で C++ のコードを置き換えるのに使われています 2 。 null が引き起こしてきた数々の問題を考えると、僕は、 null 安全 は GC (やその他の安全なメモリ管理手法)に匹敵するプログラミング言語の進化だと考え

                                                            null安全でない言語は、もはやレガシー言語だ - Qiita
                                                          • 技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL

                                                            技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL はじめに 新たに書きました。 MySQLを使っても会社は潰れない 久々に記事を書いたのでどうぞお手柔らかに... 私が過去2年間で行った技術選定の成功と失敗を振り返り、その学びを共有したいと思います。 文才無いので淡々と箇条書きでいきます Twitterエンジニア垢作りました。エンジニアのお友達がいません。 @uncode_jp 注意 意見を押し付けるものではありません。ただ建設的な議論は大事だと思う。 自分の意見は明確に、歯切れのよい表現を意識している。人それぞれだよねみたいな感じに逃げたくない。技術選定に結論はある(過激)。 ただし技術選定にはコンテキストがあり、例えばプロダクトのフェーズや組織の事情によって当然結論は変わる可能性がある。 OSSの開発者さん達は偉大ですごい。あ

                                                              技術選定の失敗 2年間を振り返る TypeScript,Hono,Nest.js,React,GraphQL
                                                            • テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!

                                                              ここ数日 ruby をやってるんですけど、ruby といえばテストらしいので Test::Unit やら RSpec やらを調べてました。しかし僕はこれまでまともな TDD をやってこなかったので、先にテストとは何ぞや?TDD とは何ぞや?ってのを調べたりしていました。 この記事は、ずぶの TDD 素人がテストについて知り始めたまとめです。 1. きっかけは RSpec のドキュメント そもそも RSpec の↓紹介文の冒頭から意味不明に感じたんです。 FAQ:「RSpec って、要は Test::Unit でやっていることを別の書き方にしただけでは?」 この FAQ への短い答えはイエスです。 『スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)』 Rubyist Magazine えっ... じゃあ要らんやろソレ。いちいち手作業でチェック

                                                                テスト駆動開発について僕は誤解していた - 偏見プログラマの語り!
                                                              • 約3,300円で買えるLinuxパソコンRaspberry PiをMacで使う

                                                                RSコンポーネンツから42.00米ドルで買えるLinuxパソコンと言いながら、その実ARM CPUを搭載したマイコンボード……にしては豪華すぎる仕様のRaspberry Piが届いたので使ってみました。 (続きは[Read More]から) マイコンボードとして清貧に使うRaspberry PiにはHDMIポートが付いていますが、うちにはHDMIポート付きのモニタが一台も無いし、元よりRaspberry Piをパソコン的な用途として使う気は全く無いので、モニタ無し、母艦Macな環境で、高機能なマイコンボードとして使うべく、Lチカをやったところまでのメモです。 HDMIポートが無くても、以下のような変換ケーブル、変換アダプタを使うと、DVI-Dでも使えるということです。VGAに変換するのはコストが嵩むので現実的ではないでしょう。 電源はmicroUSBから供給します。5V/700mAだという

                                                                  約3,300円で買えるLinuxパソコンRaspberry PiをMacで使う
                                                                • 【年末年始に読みたい!】優秀なエンジニアが影響を受けた本ランキング "トップ32冊"

                                                                  ご覧のとおり、リーダブルコードの人気は圧倒的!2016年に引き続き、2位以下に2倍以上の差をつけての圧勝です。美しく読みやすいコードを書くためのバイブルとして、不動の人気が伺えますね。 ちなみにこの上位陣の顔ぶれは、多少の上下変動はあれども2016年度のランキングとあまり変わりません。バイブルはずっとバイブルであり続けるのと同じように、優秀なエンジニアが愛してやまない本は、年月が経ってもそう変わるものではないのかもしれません。 さて、ここからはこの32冊をジャンル別にご紹介していきます。本は読みたいときが読み時。自分にピッタリだと思ったら、すぐにゲットしてスキルの底上げに臨みましょう。この年末年始は自分を成長させるチャンス! 【目次】 プログラミングが圧倒的にうまくなる5冊の本 設計に携わる人に向けた7冊 チームマネジメントを考えるための4冊 エンジニアとして”嗜み”の11冊 デザインを学

                                                                    【年末年始に読みたい!】優秀なエンジニアが影響を受けた本ランキング "トップ32冊"
                                                                  • 2022年におけるフロントエンド開発のベースライン

                                                                    LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog TL;DR:2022にフロントエンド開発で最も考慮すべきユーザー環境は、パフォーマンスでは低スペックのAndroid端末、標準仕様では2年前のSafari、そしてネットワークでは4Gです。それに対してはJSへの過剰依存などが原因で主にパフォーマンスの面でのウェブ全体の対応がよくありません。 こんにちは!LINEフロントエンド開発室のダバロス アランです。この記事のタイトルを見て「釣りタイトルですね〜」と考えている方がいると思いますが今回に限ってはそれを大目に見てください。それはなぜかと言いますと、2021年から2022年にかけて私たちフロントエンドエンジニアが全体的に考え方を改める必要が出るほど大きな変化がありました。 その変

                                                                      2022年におけるフロントエンド開発のベースライン
                                                                    • クックパッドにおける最近のActiveRecord運用事情 - クックパッド開発者ブログ

                                                                      インフラストラクチャー部の成田(@mirakui)です。 Rails の OR マッパーである ActiveRecord ですが、みなさんどのように運用していますか? ActiveRecord を使うと、 SQL を直接扱うことなく、抽象化された表現で RDB にアクセスできるので、アプリケーションの開発効率という観点ではメリットが大きいです。 一方で、 ActiveRecord が駆使されているアプリケーションをサーバに配置してプロダクションとして運用する立場からすると、いくつかの問題に突き当たります。 まずはクックパッド本体アプリケーションにおける、最新の rake stats をご覧ください。 +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC

                                                                        クックパッドにおける最近のActiveRecord運用事情 - クックパッド開発者ブログ
                                                                      • テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話

                                                                        「悪い方が良い」原則をご存じだろうか? プログラミング言語「Common Lisp」の開発に携わったことでも知られるソフトウエア技術者リチャード・ガブリエル(Richard Gabriel)氏が1990年に発表した有名なエッセイ「The Rise of ``Worse is Better''」で主張したソフトウエア開発の考え方だ。 このエッセイでガブリエル氏は、美しく完全に設計・実装されるより、単純で雑に設計・実装されたソフトウエアの方が良いと説く。彼は前者を「正しいやり方」「MIT/スタンフォード式」、後者を「悪い方がよい原則」「ニュージャージー式」と呼び、ニュージャージー式がいかに優れているか様々な事例を挙げて説明する。 これは一見とても奇妙に聞こえる。 ソフトウエア開発では通常「美しい設計」や「美しいコード」が尊まれる。「車輪の再発明はするな」とか、「階層構造に分けて、要素をいつでも

                                                                          テスト駆動開発とマイクロサービスのせいで短命に終わったスマホゲームの話
                                                                        • 「はてな流大規模データ処理」を見てきた - もぎゃろぐ

                                                                          KOF2008:関西オープンソース2008というイベントに来ています。 はてなの伊藤さんの講演があったので、講演メモを公開。 #ボクがメモした内容であって、100%言ったとおりに書いてあるわけじゃないので、参考としてご覧ください。 (続き) アジェンダ 大規模なデータ OSのキャッシュ MySQLの運用 大規模データアプリケーションの開発 データの例 はてなブックマークのデータ量:五千万件くらいのデータ量 このデータに対して何百万人がアクセスしてくる状況でどういう作りにするか レコード数 1073万エントリー 3134万エントリー 4143万タグ データサイズ エントリー2.5GB 何の工夫もなく普通にアクセスすると...200秒待っても結果が帰ってこない 大規模データの難しいところ 開発サーバで開発者が作っている時は快適に動いていても、多数の人間がアク

                                                                          • 文系大学生が機械学習を0から始めて9か月でKaggle銀メダルを獲得するまで - Qiita

                                                                            今回自分は0から始めて9か月でコンペで銀メダル(6385分の249位,top4パーセント)を獲得できました。 自分の今までの流れをおさらいしていきます。 それまでの僕のスペック 数3と行列はほぼ何も分からない プログラムはrubyとjavaはそこそこに書ける、pythonは知らん 勉強の流れ 12月末 機械学習を始めると決心、とりあえず何をやればいいかよく分からないがpythonが必要らしいのでprogateでpythonをやってみる 1月 数学が必要らしいので、行列と微分積分について1から学んでみる。今から考えると、行列の基礎をさらえたのは良かったですが、それ以外はこの時間は絶対いらなかったなと考えています。 微分積分 行列 2月 Udemyで多くの講座を受ける、詳細は以下の記事にまとまっています https://qiita.com/HayatoYamaguchi/items/c8051

                                                                              文系大学生が機械学習を0から始めて9か月でKaggle銀メダルを獲得するまで - Qiita
                                                                            • 「え?それそんなかかるの?」簡単そうに見えて案外時間のかかるWebサイト上のJavaScriptあるある仕様8選 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

                                                                              多! そのため、仕様の洗い出しが不十分になりがちになる、という点で厄介です。 ただし、今はSwiper, Slickといった優秀なプラグインがあります。こいつらは大抵の仕様は満たしてくれますので、積極的に使うと良いと思います。 参考 Swiper Slick フィットスクロール 厄介度:★★★ 紙芝居スクロールなどといったりもします。 海外のオサレなブランディングサイトや、ランディングページなんかでたまに見かけますね。 カッコイイ!うちもこんなんやりたい!と思うかもしれません。がしかし…… イメージ ハマりポイント スクロールに関する他の機能実装 これを実装する場合ブラウザにデフォで備わっているスクロールは使わず、別の方法(CSSのtransformとJSを組み合わせるなど)で実装することになるかと思います。 するとまず、スクロールイベントが取れないんですね。 そのため、スクロールに合わせ

                                                                                「え?それそんなかかるの?」簡単そうに見えて案外時間のかかるWebサイト上のJavaScriptあるある仕様8選 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
                                                                              • AWSで構築した環境にありがちなシェルスクリプトたち まとめ | DevelopersIO

                                                                                AWSでサーバを運用する際にはEC2からAWS CLIを使って他のAWSのサービスと連携したりすることがあると思いますが、AWS環境ならではのシェルスクリプトを集めてみました。AWS CLIのバージョンは1.7.13、Pythonのバージョンは2.6.9を使っています。私はAmazon Linuxで動作を確認しています。 目次 準備する AWS CLIのインストール AWS CLIのアップデート aws configureでセットアップする IAM roles for EC2 instancesに関して 監視系 CloudWatchでカスタムメトリクスを設定する ZabbixからCloudWatchの値を取得する プロセス監視する バックアップ系 AMIとEBSのバックアップを作成する RDSのスナップショットを作成する S3のフォルダを削除する 便利スクリプト系 Route53の自動登録

                                                                                  AWSで構築した環境にありがちなシェルスクリプトたち まとめ | DevelopersIO
                                                                                • ぜひ押さえておきたいコンピューターサイエンスの教科書

                                                                                  僕はバイオインフォマティクスという生物と情報の融合分野で研究を行っています。東大の理学部情報科学科にいた頃は同僚のマニアックな知識に驚かされたものですが、そのような計算機専門の世界から一歩外に出ると、それが非常に希有な環境だったことに気が付きました。外の世界では、メモリとディスクの違いから、オートマトン、計算量の概念など、コンピューターサイエンスの基礎知識はあまり知られていませんでした。コンピューターサイエンスを学び始めたばかりの生物系の人と話をしているうちに、僕が学部時代に受けた教育のうち、彼らに欠けている知識についても具体的にわかるようになってきました。 バイオインフォマティクスに限らず、今後コンピュータを専門としていない人がコンピューターサイエンスについて学ぶ機会はますます多くなると思われます。そこで、これからコンピューターサイエンスを学ぼうとする人の手助けとなるように、基礎となる参