並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 3709件

新着順 人気順

Clojureの検索結果1 - 40 件 / 3709件

  • いま学ぶべき第二のプログラミング言語はコレだ! 未来のために挑戦したい9つの言語とその理由 - エンジニアHub|Webエンジニアのキャリアを考える!

    いま学ぶべき第二のプログラミング言語はコレだ! 未来のために挑戦したい9つの言語とその理由 業務に必要なだけではなく、コンピュータによって問題解決できていない分野を切り開き、エンジニアとして戦っていくため、刺激的な第二プログラミング言語に挑戦しましょう。Rust、Go、Erlang、Elixir、Clojure、Scheme、OCaml、Haskell、Scalaを紹介します。 みなさんが使えるプログラミング言語はいくつあるでしょうか? ひとくちに「使える」といっても、ひととおりのチュートリアルは終えたという段階もあれば、言語仕様(あれば)やライブラリを知り尽くしていて、思いついた処理を即座にコード化できるという段階もあります。リファレンスとか参考書を見ながらであれば使える、ということも多いでしょう。 ベテランエンジニアなら、いろいろな仕事に携わっているうちに、さまざまな環境でそれぞれ必要

      いま学ぶべき第二のプログラミング言語はコレだ! 未来のために挑戦したい9つの言語とその理由 - エンジニアHub|Webエンジニアのキャリアを考える!
    • これが大規模SIerな弊社のデファクトスタンダードな開発スタイルだ!! - そこに仁義はあるのか(仮)

      受託開発やっている、いまの開発スタイルを書く。 この前のブログはわりとフォーカスをしぼったはなしだったので、今回は簡単に全体のはなし。(書く順番が逆っぽい) 今回のプロジェクトではアーキテクトとして、この↓開発スタイルの構築と運用をしていて学び多い。 バージョン管理はGit プロジェクト用サーバーにGitBucketをたててソースコードを管理している。 オフショアと仕事をするなど、開発拠点がわかれることが多い。 ソースコードに対してロックをとったりしちゃうと、他の人が開発すすめられなくなるし、拠点別れて並行開発する大規模案件だからこそ、Gitを使う必要がある。 各開発者がブランチをきって開発をして、プルリクでレビュー依頼、からのマージをすることで、レビューが済んでいるソースしかmasterブランチに取り込まれない、というのもイイ。 弊社の”エンジニア”はみんな当たり前のようにGitを使って

        これが大規模SIerな弊社のデファクトスタンダードな開発スタイルだ!! - そこに仁義はあるのか(仮)
      • Google流 JavaScript におけるクラス定義の実現方法

        目次 2019年追記 はじめに クラス実現のために必要な JavaScript の言語仕様 function this call new 演算子 prototype チェーン プロパティ: prototype Google Closure 流のクラスの実現方法の概要 クラスの宣言とコンストラクタの定義 メンバ変数 (インスタンス変数) メソッド定義と呼び出し private, protected 継承 プロトタイプチェーンを利用してメソッドを親クラスから引き継ぐ 親クラスのコンストラクタの呼び出し メソッドオーバーライドと親クラスのメソッドの呼び出し 多重継承 abstract, interface inherits の実際のコード 良くないクラス実現方法 ES6 のクラス 2019年追記 この記事ではclassが導入されたES6以前のJavaScriptでどのようにクラスに相当するものを

        • Clojureの作者が作ったデータベースDatomicが凄い

          プログラミング言語Clojureの作者Rich Hickey氏率いるClojure HackerのチームがDatomic(デートミックと発音するらしい)というデータベースをリリースしました。これが何やらとてつもないです。10年先を行ってる技術じゃないでしょうか。 まだ本番サービスは始まっていませんが開発環境用のライブラリが配布されています。 Datomicは斬新なアーキテクチャなので一言で説明するのはとても難しいです。 私が理解できたことを簡単に説明します。 2014/1/20追記 ライセンスモデル、サポートストレージ、サービスとしてではなく独立して使用する形になるなど記事作成時の内容から色々変更が合った部分を更新しました。 変更不可なAppend-onlyデータベース 従来のデータベースで、あるレコードを変更するというのはそのレコードに対応した場所があり、そこのデータを書き換えるというこ

          • Ideone.com

            /* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the class is public. */ class Ideone { public static void main (String[] args) throws java.lang.Exception { // your code goes here } }

            • Web系女子がLispと出会って統計学に目覚めるまでのお話 - あんちべ!

              こんにちは!今年の春からWeb系企業でHTML/CSSデザイナーとして働きだしたキラキラ女子(を目指してる)のあんちべ(23)です!よろしくお願いします!私は普段自社のWebサービスのCSSなどを書いている*1のですが、最近データマイニングに興味を持ち始め、データを分析して、自社サービスの売り上げ改善に貢献したいなーと思うようになりました!でも。。。私は文系出身で統計学とか全然わからない*2し、プログラミングも得意じゃない*3し、高価な統計解析ソフトを買うのも辛いです。。。無い無い尽くしですね><;!そんな私に救いの手が!インストール作業不要で、便利な統計処理機能が色々あって、しかも無料という素晴らしいソフト*4を発見しました!その名も"Incanter"です!なんでも、 Lispっていう古くから使われてきた実績のあるプログラミング言語で動いてて、Lispの文法でどんな処理をすればよいかを

                Web系女子がLispと出会って統計学に目覚めるまでのお話 - あんちべ!
              • Heroku | Cloud Application Platform

                Spotlight Data on Heroku Build data-driven apps with fully managed data services. Move Fast Unleash your inner startup Choose Heroku for the same reasons disruptive startups do: it’s the best platform for building with modern architectures, innovating quickly, and scaling precisely to meet demand. Developers Focus on your apps Invest in apps, not ops. Heroku handles the hard stuff — patching and u

                  Heroku | Cloud Application Platform
                • ずっと無料で使えるPaaS型クラウドのまとめ。2011年版

                  PHPの実行環境をPaaS型クラウドとして提供している「PHP fog」はブログで、いままで6カ月だった無料サービスの利用期間を、永久に無料のままにすると発表しました。しかも3つのアプリケーションまで無料にするとのこと。 もちろん無料で使えるリソースの範囲はそれほど大きくありませんが、PHPアプリケーションを自由にデプロイできるため、例えばWordpressを入れて自由にブログを運営する、といったことができるはず。 実はPHP fogだけでなくPaaS型クラウドでは無料でずっと利用できるコースを設定しているサービスがいくつもあります。この機会にまとめてみました。 PHP fog まずはそのPHP fog。名前の通りPHPの実行環境をクラウド上で提供します。MySQLデータベースもあらかじめ用意されており、WordPress、Drupal、Sugar CRM、Joomlaといった有名どころの

                    ずっと無料で使えるPaaS型クラウドのまとめ。2011年版
                  • OSSのデータ可視化ツール「Metabase」が超使いやすい - Qiita

                    Metabase、まじでイケてる。 1日で、Re:Dashから乗り換えました。 Metabaseとは OSSのデータ可視化ツール。Re:Dashとかと同じ類。 AWSとかに乗せて、誰もが見れるダッシュボードを作ったりする時に使うと、俺かっけーってなります。 スクリーンショット 実際に社内で運用している様子をモザイク付きでお見せします。 毎日みているダッシュボード。これの4倍くらいの数値見てる。 ダッシュボードの編集。マウスで簡単に位置や大きさの変更ができる。 クエリビルダー的なやつがあり、グルーピングとか超絶便利。SQL書けない人でも、単一テーブルとかだったら余裕かと。 グラフ化も簡単。 SQLでのクエリ編集画面。ちゃんと補完してくれる。 Metabaseの良い所 見た目が格好いい。 インストールが簡単。 openjdk-8-jdk入れて、jarファイル置くだけ。 豊富なデータソースに対応

                      OSSのデータ可視化ツール「Metabase」が超使いやすい - Qiita
                    • Twitterが、Ruby on RailsからJavaVMへ移行する理由

                      オライリーが主催するイベント「Open Source Convention 2011」が7月25日から米国ポートランドで開催されました。 その中で、TwitterがなぜRuby on RailsベースのシステムをJavaVMベースへ移行しようとしているのかを解説したセッション「Twitter: From Ruby on Rails to the JVM」が行われ、ビデオが公開されています。 13分程度の短いセッションのポイントをまとめて紹介します。 世界最大のRuby on RailsによるWebサイトをJavaVMへ移行 Twitterのアプリケーションサービスグループ、Raffi Krikorian氏 Twitterは世界中からのツイートをリアルタイムで扱っている。リアルタイム処理が、ツイッターにおけるもっとも難しい処理だ。 Twitterは、おそらく世界最大のRuby on Rail

                        Twitterが、Ruby on RailsからJavaVMへ移行する理由
                      • システムの複雑さはどこから来るのか – Out of the tar pitを読む - Uzabase for Engineers

                        Uzabase Saas Product Divisionフェローの矢野です。 この記事は、Rich Hickey(プログラミング言語Clojure作者)のプレゼンテーションSimple Made Easyへと繋がっていく、Ben MoseleyとPeter Marksによる「Out of the tar pit」というシステム設計について論じた論文の内容について説明したもので、ユーザベースのSaas Productでのテック発表の一つとしてプレゼンしたものを、ブログとして再度まとめたものです。プレゼン自体は25分くらいでしたので、おそらくこの記事の方がプレゼンよりも詳しいと思います。 ソフトウェア危機 ソフトウェアは本質的に複雑 ソフトウェアの複雑さはどこから来るのか? 複雑さは、別の複雑さを産む 複雑さを分類する 本当に必要な複雑さと、そうでないものがある どうやって複雑さを扱うのか

                          システムの複雑さはどこから来るのか – Out of the tar pitを読む - Uzabase for Engineers
                        • アメリカで無職になった|Kazuki Tsutsumi

                          ここ二ヶ月ほどアメリカで無職をやっている。結果から言うと無事転職先が決まったため既に先が見えた無職生活であるが、Temporary Worker Visa で働く人間が突如職を失うととどうなるかという貴重な経験だったため備忘録を残す。 無職以前San Francisco の Fintech Startup で Sr. Software Engineer として働いていた。前々職でもシリコンバレーで日系企業の駐在員として働いており、帰任と同時にオファーを貰って転職した。会社は H-1B ビザの申請をサポートしてくれて抽選にも通ったが、コロナ禍により大使館面接が停止し、結局一年以上日本からリモートで働いた後、2020 年末にやっと渡米することが出来た。 会社の特徴としては全面的に Clojure を使って開発をしていた。元々 Clojure Developer であった自分が採用された理由であ

                            アメリカで無職になった|Kazuki Tsutsumi
                          • [JavaScript] 猿でもわかるクロージャ超入門 まとめ - DQNEO起業日記

                            クロージャとは クロージャは、言葉で説明するのが大変難しい概念です。 あなたは、自転車の乗り方を、口だけで説明できるでしょうか? あなたは、螺旋(らせん)の形を、言葉だけで説明できるでしょうか? ずばり、できないでしょう。 しかし、自転車に乗ることはできますし、針金で螺旋の形を作ることはできるでしょう。 「クロージャ」もこれと同じです。 だから、Wikipediaのこんな解説を見ても落ち込まないでください。 クロージャ (クロージャー、Closure) は、プログラミング言語において引数以外の変数を実行時の環境ではなく、自身が定義された環境(静的スコープ)において解決する関数のことである。 理解できないですよね? 私もそうでした。 クロージャを既に知っている人にしか、この文章は理解できないでしょう。 クロージャを作るのは難しくない しかし、説明するのは難しくても、作るのは意外と簡単。それが

                              [JavaScript] 猿でもわかるクロージャ超入門 まとめ - DQNEO起業日記
                            • 最高のプログラミング言語(または私は如何にして心配するのを止めてコードを愛するようになったか) | POSTD

                              常に世界のどこかで誰かが、この世で一番のプログラミング言語は何かというトピックで投稿し、忘れ去られた言語のすばらしい一面や、新しい言語の有用性を主張しています。どうやら、その順番が私に回ってきたのかもしれません。そろそろ私も、プログラミング言語についての自分の考えを皆さんにお伝えしようと思います。 始めに少し言い訳をさせてください。30以上の言語で開発した経験があり、他の人が書いた多くのコードと悪戦苦闘をしてきた開発者でもない限り、「自分の意見には客観性がある」とはとても言えないと思います。そんなわけで、このトピックを取り上げる他の多くの人と同じように、私の意見も偏っています。多くの言語に精通した開発者がこの話題自体を不毛だと感じるのは、このせいかもしれませんね。 要約: すばらしい言語 早速、このブログ限定ということで、私が考える”すばらしい言語”を発表しましょう。 アセンブリ言語: マ

                                最高のプログラミング言語(または私は如何にして心配するのを止めてコードを愛するようになったか) | POSTD
                              • 16の言語と57のフレームワークを比較したベンチマークが凄い

                                いつの時代もより高速に動作するフレームワークや言語に対する関心は高いものですが、そんな疑問に答えるWeb Framework Benchmarksの最新版が公開されています。こちらのベンチマークはテスト用のコードや環境がオープンソースになっており16の言語(C C# Clojure D Erlang Go Groovy Haskell Java JavaScript Lua Perl PHP Python Ruby Scala)と57のフレームワークについて最適な実装が集められてテストされているという点で一般性があります。また実行環境もEC2と実マシンの2種類をそれぞれ実行している点も興味深いです。 気になるテスト結果のうち特に複雑度の高いデータベースから複数件のデータを取得してHTMLページとして出力した場合の結果は下記のとおりです。 堂々のトップに輝いているのはServletで最大で1

                                  16の言語と57のフレームワークを比較したベンチマークが凄い
                                • Preview the new Google Groups - Google Groups

                                  • WebSocket大合戦:Clojure、C++、Elixir、Go、NodeJS、Ruby | POSTD

                                    Webアプリにリアルタイムの双方向通信が必要な場合、WebSocketを選ぶのは自然なことだと思います。では、どのツールでWebSocketサーバを構築すべきでしょうか。パフォーマンスは重要ですが、開発のプロセスも見過ごしてはなりません。パフォーマンスを基準にするだけでなく、開発のしやすさも考慮に入れるべきでしょう。今回の大合戦では、Clojure、C++、Elixir、Go、NodeJS、Rubyのそれぞれの言語によって慣用的な手法で実装されたシンプルなWebSocketサーバを比較したいと思います。 テスト内容 サーバに実装するのは、 echo と broadcast の2つのメッセージのみを扱う非常に単純なプロトコルです。echoは送信クライアントに返され、ブロードキャストは全ての接続クライアントに送信されます。そしてブロードキャストが完了すると、結果メッセージが送信者に返されます。

                                      WebSocket大合戦:Clojure、C++、Elixir、Go、NodeJS、Ruby | POSTD
                                    • Big Sky :: IDE としての Vim

                                      この文章は、http://yannesposito.com/Scratch/en/blog/Vim-as-IDE/ で掲載されている「Vim as IDE」の翻訳文です。 文内の全てはの筆者による物であり、訳文の内容については私による物となります。意訳が若干入っています。間違い等あればご連絡下さい。 Vim as IDE tl;dr: 如何に Vim を効率の良い IDE として使いこなすか Learn Vim Progressively (訳者注: 日本語訳)では Vim が如何にテキスト編集に優れ、かつファイルを操縦できる偉大なテキストエディタであるかについて示した。この短い記事では、私が如何にして Vim を IDE として使っているかについて見る事が出来るだろう。そう、主に幾つかの素晴らしいプラグインを使う事により。 1. Vim Plugin Manager Vim のプラグイン

                                        Big Sky :: IDE としての Vim
                                      • Ninja 2.0.0 released!

                                        • コードがはっきりと見やすく使いやすい!Sublime TextとAtomとVim対応のテーマ -DuoTone Themes

                                          DuoTone Themes DuoTone Dark -GitHub コードがはっきりと見やすいカラー DuoTone Themesの5つのテーマ DuoTone Themesのダウンロードとインストール コードがはっきりと見やすいカラー DuoToneは2つの色相をベースに色調を変化させた7つのカラーで構成されています。 コードで重要な部分には強調したカラー、それほど重要ではない部分には和らいだカラーが適用され、はっきりとした見やすいテーマになっています。 DuoToneは5種類あり、Darkのベースカラーはパープルとゴールドです。 ↓縮小してますが、見やすくないですか? Colorscheme DuoTones - Dark 対応言語は下記の通り。これからも増えていくそうです。 C Clojure CoffeeScript C# CSS GF Markdown Go Haskell

                                            コードがはっきりと見やすく使いやすい!Sublime TextとAtomとVim対応のテーマ -DuoTone Themes
                                          • Lispのアイデア | POSTD

                                            Lispと聞くと、冷蔵庫のような大きいサイズのコンピュータや、大文字のアルファベット文字列や括弧の並びといったような過去の時代のことが頭に浮かびます。そう、非常に多くの括弧。何故、オブジェクト指向プログラミングの作成者たちは、そんなにもLispの アイデア に魅了されるのでしょうか。そしてまた、アイデアとされるプログラミング言語というものは、どうやったら説明できるでしょうか。こうしたことを教えてくれなかったコンピュータ科学の教育を責めるべきでしょうか。 Lispは、John McCarthyが書いた Recursive Functions of Symbolic Expressions and Their Interpretation by Machines, Part I という論文によって、初めて世界に登場しました。その中で、McCarthyはプログラミングに新しい多くのアイデアを導入

                                              Lispのアイデア | POSTD
                                            • 新しいプログラミング言語の学び方 HTTPサーバーを作って学ぶ Java, Scala, Clojure

                                              JJUG CCC 2017 Fallでの発表資料です。

                                                新しいプログラミング言語の学び方 HTTPサーバーを作って学ぶ Java, Scala, Clojure
                                              • Excel方眼紙を支える技術2016 - Qiita

                                                POIを使ったExcel帳票の出力は、システムエンジニアにとっては日常茶飯事、おちゃのこサイサイであります。 takezoen先生による2015年版はこちらになります。 ここで紹介されている、S式からExcel方眼紙を出力するライブラリaxebomber-cljは、こちらをご覧ください。 特筆すべきはaxebomber-cljでは、Excelにありがちな文字切れが起こらないというところです。そもそもExcel方眼紙は、入力文字列が自動改行されない制約を設けて、利用者が意図的な位置で改行をコントロールするために発明されたフォーマットであります。しかし、その特異な見た目が災いし、単に敬遠される存在にとどまっております。axebomber-cljは、文字幅とセル幅を計算し、文字切れしない位置で自動的に改行するようにしています。これにより、Excel方眼紙の文字切れしにくさを活かしつつ、煩わしさを

                                                  Excel方眼紙を支える技術2016 - Qiita
                                                • 海外エンジニアが話題にしていて「なるほど」と思ったプログラミングに関する考え方3つ - ジンジャー研究室

                                                  プログラミングに関する格言みたいなのは昔から結構あって、例えばYAGNIみたいに日本でも十分浸透してるのは多いんだけど、やっぱり新しい概念はどんどん生まれていくので追いかけていると面白い。 というわけで、最近知った中でもっと日本でも言及されても良いと思ったやつを3つ紹介。 Simple Made Easy Rich Hickey(Clojure言語の作者)による講演(2011年)のタイトル。全文はここで読める。英語しんどくてPOSTDに投げたんだけど音沙汰がない。まだ全部見てないから和訳欲しい。 内容としては、みんな安易に「簡単」なものを選びがちだけど「シンプル」なものの方が価値あるぜ、というもの。曰く、「シンプル」は絶対的・客観的な指標だけど「簡単」は相対的・主観的なもの。例えば英語の話者にとってドイツ語は難しいが、それは自分にとって「遠い」存在であるだけで悪いものじゃない。 「慣れてい

                                                    海外エンジニアが話題にしていて「なるほど」と思ったプログラミングに関する考え方3つ - ジンジャー研究室
                                                  • BOOT_COMPLETEDが受信出来ない - Google グループ

                                                    • 24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza times

                                                      こんにちは。今回は谷口が担当します。 paizaはこの度、ITエンジニア向けの無料オンラインプログラミング実行環境サービス『paiza.IO (パイザ・アイオー)』 のβ版を、本日2014年11月17日からサービス開始いたしました。 『paiza.IO』は、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。 ブラウザだけでプログラミングがすぐ始められる【paiza.io】 from paiza on Vimeo. ■オンライン実行環境について ◆どうしてpaiza.ioを作ったの? これまでプログラミングを始める際、最大のハードルは「プログラムの実行環境を構築する事」でした。 これまでは、環境構築といえば初心者にとってハードルが高く、ものによっては細かい部分でつまづいたりなどして1~2日程度はかかる工程の面倒な作業でした。そのボトルネックを解消し、

                                                        24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza times
                                                      • SpringのCache Abstractionについて

                                                        ╭━━┳╮╭━╮╭━━━┳━╮╭━╮ ╰┫┣┫┃┃╭╯┃╭━╮┃┃╰╯┃┃ ╱┃┃┃╰╯╯╱┃┃╱┃┃╭╮╭╮┃ ╱┃┃┃╭╮┃╱┃╰━╯┃┃┃┃┃┃ ╭┫┣┫┃┃╰┳┫╭━╮┃┃┃┃┃┃ ╰━━┻╯╰━┻┻╯╱╰┻╯╰╯╰╯ @making's tech note HomeEntriesCategoriesTagsNoteAbout HomeLatest EntriesTanzu Application Platform 1.9 (Full Profile) をEKSにインストールするメモ 🗓 Updated at 2024-04-19T04:20:37Zllama-cpp-pythonを使ってGemmaモデルを使ったOpenAI互換サーバーを起動しSpring AIからアクセスする 🗓 Updated at 2024-02-25T09:05:48ZKubernetesクラスタ内から

                                                          SpringのCache Abstractionについて
                                                        • 存在しない記事 - 標高+1m

                                                          ここにあった記事は消しました。 詳しくは以下: ympbyc.hatenablog.com

                                                            存在しない記事 - 標高+1m
                                                          • 気付いたら.gitignoreはgiboで自動生成する時代になっていた - Qiita

                                                            $ gibo --version gibo 1.0.4 by Simon Whitaker <sw@netcetera.org> https://github.com/simonwhitaker/gibo $ gibo java ### https://raw.github.com/github/gitignore/8c9b77cb5c85f6464c0bb31abdf4cfcfdf6833bb/java.gitignore *.class # Mobile Tools for Java (J2ME) .mtj.tmp/ # Package Files # *.jar *.war *.ear # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid*

                                                              気付いたら.gitignoreはgiboで自動生成する時代になっていた - Qiita
                                                            • Lineにおけるspring frameworkの活用

                                                              より速く より運用しやすく 進化し続けるJVM(Java Developers Summit Online 2023 発表資料)NTT DATA Technology & Innovation

                                                                Lineにおけるspring frameworkの活用
                                                              • 無料で作るWebサービス Herokuを使ってWebサービスを作ってみた(前編) - 今日学んだこと

                                                                休日。何かしなければという焦りがあるんだけど、何をしようか思いつかない。 現在の飯のタネである(僕はいわゆるSIer)システム系の勉強を、最近してないことに気づいてはいるんだけど、インフラの構築に気が行ってしまって、なかなかスタートを切れない(どうせなら借りているVPSに対して色々と自動化して・・・と)。 そこでインフラの部分に気を取られることは無いHerokuを使って、何か作ってみることにした。 >> できあがったもの >> http://studysuggest.herokuapp.com ※後ろの方にも書いてますが、綺麗に何かを作るより、まず動くものを作って公開するというのを主題にしてます。 Herokuとは ざっくりとまとめると 高負荷でなければ無料で利用できる 定期的にバックグラウンドで◯◯動かす みたいな事やると、無料枠超える可能性出てくるので注意 gitにソースを上げて、流し

                                                                  無料で作るWebサービス Herokuを使ってWebサービスを作ってみた(前編) - 今日学んだこと
                                                                • シンプルさの必要性 · eed3si9n

                                                                  2013-06-24 2012年4月23日にテキサスの Austin で行われた RailsConf 2012 での Rich Hickey (@richhickey) さんによる基調講演、Simplicity Matters を書き起こして翻訳しました。 Rich Hickey さんは Clojure や Datomic の作者です。 この翻訳は Creative Commons Attribution ShareAlike 3.0 ライセンスに基いて公開します。 Rich Hickey 講演 e.e d3si9n 訳 談: こんにちは。ご招待いただきありがとうございます。 聞く所によると RailsConf はいつもコミュニティーからかなり外れた人を選ぶらしく、今回は僕ということになりました。 僕の電話ボックスは外に駐車してあります。(会場、笑) だけど、今日は言語の壁を越える話題を持

                                                                  • 数字6桁パスワードのハッシュ値の総当たり、PHPなら約0.25秒で終わるよ

                                                                    JALの6桁数字パスワード問題から派生して、JALのサイトがパスワードリマインダとして「現在のパスワード」を教えてくれることから、JALサイトではパスワードを平文保存しているのではないかという疑惑が持ち上がっています。それに対して、「いやいや、従来の主流と思われるソルト付きMD5ハッシュでの保存しても、実用的な速度でハッシュ値から元パスワードを『解読』できるよ」と、JALを擁護(?)するエントリが現れました。 パスワード問合せシステムを作る (clojureのreducers) この記事では、最初Clojureによる単純な総当たりで36秒、Clojureのreducersによる並列化で11秒でハッシュ値から元パスワードが求められるよ、と説明されています。まことに痛快な記事ですので、未読の方には一読をお勧めします。 とはいうものの、100万件のMD5の総当たりが、逐次実行で36秒、並列化して

                                                                    • by FLOW

                                                                      • パスワード問合せシステムを作る (clojureのreducers) - Qiita

                                                                        現在のパスワードを教えてくれるからといって、「平文で保存してる!くぁwせdrftgyふじこlp‎」と脊髄反射してはいけません。 JALの6桁数字パスワードがどう格納されているか? 古いシステムなのでMD5でハッシュ化していると想定しますが、もちろんsaltは付けているでしょう。 さて、そんなパスワード保管方式で、現在のパスワード問合せに応答するシステムを作ってみます。 パスワードを「567890」、saltを「hoge」として、データベースには"hoge$567890"のMD5値"4b364677946ccf79f841114e73ccaf4f"が格納されているとします。 総当りしてみましょう。 (ns six-length.core (:require [clojure.core.reducers :as r]) (:import [java.security MessageDigest

                                                                          パスワード問合せシステムを作る (clojureのreducers) - Qiita
                                                                        • サービス終了のお知らせ - NAVER まとめ

                                                                          サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。

                                                                            サービス終了のお知らせ - NAVER まとめ
                                                                          • はてな社内の勉強会で構造学習について発表しました - yasuhisa's blog

                                                                            先週末、はてな社内の勉強会で構造学習、特に実装が簡単な構造化パーセプトロンについて発表しました。発表資料と説明用にサンプルで書いたPerlの品詞タグ付けのコードへのリンクを張っておきます。 今日からできる構造学習(主に構造化パーセプトロンについて) from syou6162 structured_perceptron/structured_perceptron.pl at master · syou6162/structured_perceptron 「えっ、Perlかよ」という人がいるといけないので、Clojureで構造化パーセプトロンを使った係り受け解析のサンプルコードへのリンクも張っておきます(2種類あります)。PerlもClojureもあれば8割くらいの人はカバーできそうなので、安心ですね。 syou6162/simple_shift_reduce_parsing syou616

                                                                              はてな社内の勉強会で構造学習について発表しました - yasuhisa's blog
                                                                            • Rolling with Ruby on Rails

                                                                              Now, next, and beyond: Tracking need-to-know trends at the intersection of business and technology AI/ML Few technologies have the potential to change the nature of work and how we live as artificial intelligence (AI) and machine learning (ML). Future of the Firm Everything from new organizational structures and payment schemes to new expectations, skills, and tools will shape the future of the fi

                                                                                Rolling with Ruby on Rails
                                                                              • JavaScriptユーザのための関数型プログラミング(前編) | POSTD

                                                                                私が関数型プログラミングについて度々耳にするようになったのは、数カ月前からです。でも当時は、それが何なのか見当もつかず、単なるバズワードだと思っていました。皆さんの中にも、そのような方は多いでしょう。それ以来、私は関数型プログラミングについて深く学び、この言葉を日々聞いてはいるものの内容を理解していない初心者の方のために、分かりやすく説明しようと思い立ちました。 関数型プログラミング言語の話になると、「 Haskell と Lisp は どちらが優れているのか 」という 議論 が 白熱する 傾向にあります。HaskellとLispはどちらも関数型言語ですが、実際には大きな違いがあって、それぞれに長所と短所があります。その具体的な内容については、この記事を読み終える頃には深く理解していただけると思います。この2つの言語には、それぞれから派生した言語があります。その中で恐らく皆さんが耳にしたこ

                                                                                  JavaScriptユーザのための関数型プログラミング(前編) | POSTD
                                                                                • ちょっと高度にJavaScript/クロージャの基礎 | DevelopersIO

                                                                                  JavaScriptのクロージャを一言で言うと、「自身が定義されたスコープにおいて変数を解決する関数」となります。 少し複雑ですが、マスターすれば何かと便利な概念なので、解説したいと思います。 ちなみに、JavaScript未経験なFlex開発者にオススメしたいClosure ToolsのClosure Toolsとは別物です。まぎらわしくてすみません。 例 var f = function() { var i = 0; return function() { return i++; } }(); console.log(f());// 0を出力 console.log(f());// 1を出力 console.log(f());// 2を出力 変数iは、匿名関数のローカルスコープに定義されています。ローカルスコープの変数は、関数の処理が終わると無くなってしまうのが普通ですが、関数fの出力