タグ

programmingに関するosada5963のブックマーク (148)

  • Common Lispで遅延評価を実装しよう - Qiita

    はじめに この記事はCommon Lispで純粋な関数型プログラミングをしようと考えた筆者の試行錯誤の一部を共有するためのものです.遅延評価(lazy evaluation)は関数型プログラミングをする際には避けては通れず,何度も実装するうちに共有するに値する知見が得られたと考えたので記事を書くことにしました. Common Lispで有名な遅延評価ライブラリといえばCLAZYなどが挙げられますが,実装はそれほど難しくなく,マクロ定義の練習問題としても優秀なタスクですから,マクロを知ったばかりのCommon Lisp中級者もぜひ一度は自分の手で実装してみると良いでしょう. 前提知識としてCommon Lispの基的な文法と初歩的なマクロの定義を要求しています.この記事をマクロの入門記事として読むこともできます. Common Lispと関数型プログラミング しばしば「Common Lis

    Common Lispで遅延評価を実装しよう - Qiita
  • This is The Entire Computer Science Curriculum in 1000 YouTube Videos

    This is The Entire Computer Science Curriculum in 1000 YouTube Videos In this article, we are going to create an entire Computer Science curriculum using only YouTube videos. The Computer Science curriculum is going to cover every skill essential for a Computer Science Engineer that has expertise in Artificial Intelligence and its subfields, like: Machine Learning, Deep Learning, Computer Vision,

    This is The Entire Computer Science Curriculum in 1000 YouTube Videos
  • 秋元@サイボウズラボ・プログラマー・ブログ: regist という英語は無い

    さて、サイボウズラボの立ち上げプレスリリースが出たこの瞬間、とりあえずこのブログを見に来る人も多いと思われる。そんなチャンスに、このブログを読んだ人、特に日のソフトウェア技術者に一番訴えたいことってなんだろう? と考え […] さて、サイボウズラボの立ち上げプレスリリースが出たこの瞬間、とりあえずこのブログを見に来る人も多いと思われる。そんなチャンスに、このブログを読んだ人、特に日のソフトウェア技術者に一番訴えたいことってなんだろう? と考えた。 それは、日プログラマーだけが使う謎の動詞 registについてである。そんな単語は存在しないから、ちゃんと “register” を使おう。 Google.com で regist.cgi を検索 Google.com で regist.php を検索 出てくるのは日語のサイトばっかりである。拡張子を”.jsp” や “.asp” にし

    秋元@サイボウズラボ・プログラマー・ブログ: regist という英語は無い
  • nullが生まれた背景と現在のnullの問題点 ― null参照問題(前編)

    Cの系譜を継ぐC#ではnullが長らく使い続けられてきたが、最近ではその存在が大きな問題だと認識されている。前後編でこの問題を取り上げ、今回(前編)はnullを取り巻く事情について考察する。 ← 前回 連載 INDEX 次回 → 近年、nullの存在は、billion dollar mistake(10億ドル規模の損失をもたらす過ち)と呼ばれるくらい忌避されるものになっている。 nullは、低コストでそこそこ安全に参照を扱えるという意味で悪くない妥協ではあるが、技術が進歩した現在ではもう少し賢い参照の扱い方があるはずである。C#のように、これまでnullを認めてしまっているプログラミング言語で、今からそれを完全になくすというのは現実的ではないが、nullに起因する問題を少しでも避ける手段はこれからでも追加していけるだろう。 今回は、nullが生まれるに至った背景から始め、nullが抱える問

  • Functional Programming · OCaml Documentation

    Functional Programming What Is Functional Programming? We've got quite far into the tutorial, yet we haven't really considered functional programming. All the features given so far (rich data types, pattern matching, type inference, nested functions) could exist in a "super C" language. These are cool features that make your code concise, easy to read, and have fewer bugs; however, they actually h

    Functional Programming · OCaml Documentation
  • 66歳からプログラミングを始め、自作の罠で年間90頭の猪を狩る猟師がいるらしい | Tech2GO

    更新日: 2017年9月26日公開日: 2017年5月18日66歳からプログラミングを始め、自作の罠で年間90頭の猪を狩る猟師がいるらしい こんにちは!Tech2GO編集部の岸です! 皆さんは「猟師」と聞いてどんな印象を持っていますか?「田舎」「銃を撃って鹿や猪を狩る」「当に猟師なんて存在するの?」などでしょうか? 実は私も滋賀県で猟師として活動しながらメディア「Tech2GO」にて勤務しています。猟師がIT系の会社にいるなんてびっくりですよね。ちなみに普段僕は鹿を狩っています。 ↓こんな感じです。 そんな、普段出会うことの少ない猟師が「Ichigo Jamを使った獣用の箱罠を自作」し成果を上げていると聞き、シニアプログラミングネットワーク #1に登壇されるとのことで滋賀から東京まで行ってきました! 「ichigojam」とは、子供向けの安価なプログラミングが可能なパソコンのことです

    66歳からプログラミングを始め、自作の罠で年間90頭の猪を狩る猟師がいるらしい | Tech2GO
  • 週刊少年ジャンプの短命作品を,機械学習で予測する (前編:データ分析) - Qiita

    1. はじめに 週刊少年ジャンプ(以下,ジャンプ)は,日で最も売れている漫画雑誌1です.言うまでもなく,私は大ファンです. ジャンプ編集部の連載会議は非常にシビアです.ジャンプ作家の奮闘を描いたフィクション漫画「バクマン。」では,編集部が毎号の読者アンケートをもとに各漫画の人気を評価し,掲載順や打ち切り作品を決定する様子が描かれています2.連載開始から10週以内(単行約1冊分)で連載が打ち切られてしまうことも珍しくありません.とても厳しい世界です. 記事では,機械学習を使って,短命作品(10週以内に終了する作品)の予測を行います.究極の目標は,ジャンプ編集部より先に打ち切り作品を予測し,好みの作品が危ない場合はアンケートを出して打ち切りを回避することです3.我々は読者アンケートの結果を知ることができないので,掲載順の履歴を入力とし,短命作品か否かを出力する多層パーセプトロン4をTen

    週刊少年ジャンプの短命作品を,機械学習で予測する (前編:データ分析) - Qiita
  • 妻が一人で開発したアプリの売上が順調に伸びていてうらやましい - sakaharaのブログ

    半年以上前のことですが、今年の3/25にMilk TimeというiOSアプリをがリリースしました。 Milk Time - 育児記録を共有できる授乳タイマー Mocologyメディカル無料 自身が子育て中に授乳のことなどで苦労した経験を活かし、授乳記録を簡単にできてもっとデザインのよいアプリを作りたいという思いをそのまま形にしています。 は元々エンジニアではありましたが、アプリを開発して自分でリリースするというのは初めてでした。 それにも関わらずアプリを作る決心をして、新品の15インチMacBook Proを購入しました。 そこから子育てをしつつ合間を見ては1人で企画、設計、デザイン、開発までを1人で行いました。 ちゃんと計算したわけではないですが、トータルでかかった工数は2,3ヶ月くらいではないかと思います。 私自身が個人でいくつかアプリを開発してリリースしてそれなりの売上を上げて

    妻が一人で開発したアプリの売上が順調に伸びていてうらやましい - sakaharaのブログ
  • 今から新規でiOSアプリを書き始めるなら。2016年冬 - Qiita

    こんにちは @yimajo です。この記事は今から新規でAndroidアプリを書き始めるなら。に大きく影響されています。主な内容として次のような事柄を取り扱っています。 今から書くならこんな設計 こんなライブラリがあるが使ってみた感想 ただ、結論として大して深い内容は書けませんでしたので、がっかりせず、みなさん思い思いにやればいいよっていうことに終着しています。アドベントカレンダーのネタにみなさんも書いてみてはどうでしょう。 言語について Objective-C か Swift か まず最初に言っておくとObjective-CやSwift以外にもiOSアプリを始める方法はあります。例えばObjective-C++とかRubyMotionとか。まあそれはそれで良いところもあると思いますが、複数人でiOSアプリ開発を行いそれを保守したり機能追加したりすることを考えるとObjective-CかS

    今から新規でiOSアプリを書き始めるなら。2016年冬 - Qiita
  • Pythonでプログラミングを始めよう:新刊ピックアップ

    ハッカーへの第一歩にPythonを 「もしコンピュータ言語をひとつも知らないのなら,まずPythonを学ぶことを勧める⁠」⁠。これは『How to become a hacker』(⁠Eric S. Raymond著)の一節です。なぜ,Pythonを勧めるのか,それには様々な理由がありますが,筆者の経験や,世の中の動向を踏まえて説明してみます。 幅広い職種で必要とされるプログラミング プログラミングは,様々な職種で必要となるスキルです。ハッカー(hacker)と呼ばれる,インターネットの発展を支えてきた凄腕のプログラマーだけに必要なスキルではありません。統計学を駆使する社会学者も,理学系の研究者も,工学系のエンジニアも,データサイエンティストも,新薬を開発する研究者も,みなプログラミングのスキルを駆使することで,他人には簡単に真似できない仕事を成し遂げています。プログラミングによって,コン

    Pythonでプログラミングを始めよう:新刊ピックアップ
  • How To Become A Hacker: Japanese

    なぜこんな文書を書いたか わたしは Jargon Fileの編集者で、またその他似たような有名文書いくつかの著者なので、しばしば熱心なネットワーク初心者から「ウィザード級の大ハッカーになるにはどうやって勉強すればいいの?」といったようなお尋ねメールを頂きます。でもかつて 1996 年に、こんな大事な問題を扱った FAQ や Web 文書 はみあたらないことに気がつきました。というわけで、これを書き始めました。多くのハッカーがいまやこれを決定版と見なしているし、つまり実際に決定版なんだと思います。でも、この問題について自分が唯一無二の権威だと主張するつもりもありません。気にくわなければ、自分なりのヤツをどうぞ。 この文書をオフラインで読んでいるなら、最新版は次のところにあります。 http://www.catb.org/~esr/faqs/hacker-howto.html なお、この文書の

  • Pythonを書き始める前に見るべきTips - Qiita

    Pythonを使ってこの方さまざまな点につまずいたが、ここではそんなトラップを回避して快適なPython Lifeを送っていただくべく、書き始める前に知っておけばよかったというTipsをまとめておく。 Python2系と3系について Pythonには2系と3系があり、3系では後方互換性に影響のある変更が入れられている。つまり、Python3のコードはPython2では動かないことがある(逆もしかり)。 Python3ではPython2における様々な点が改善されており、今から使うなら最新版のPython3で行うのが基だ(下記でも、Python3で改善されるものは明記するようにした)。何より、Python2は2020年1月1日をもってサポートが終了した。よって今からPython2を使う理由はない。未だにPython2を使う者は、小学生にもディスられる。 しかし、世の中にはまだPython3に

    Pythonを書き始める前に見るべきTips - Qiita
  • TopCoderで2年間プログラムしてみた - じじいのプログラミング

    ニコニコ生放送「TopCoderでプログラムしてみた」 (http://com.nicovideo.jp/community/co78570)は、おかげさまで2周年を迎えることができました。この放送は、視聴者コメントに支えられている放送です(皆さんも私の放送よりコメントのほうに期待しているかもしれません(汗))。視聴者のみなさんには当に感謝しています。ありがとうございます! さて、今日は、2周年記念として、過去の放送であった質問について、ブログ上でちゃんと答えてみようと思います。 TopCoderって何ですか? TopCoderはプログラミング初心者でも始められますか? TopCoderはプログラミング能力向上に役立ちますか? TopCoderを初めてみたいけど…。 1.TopCoderって何ですか? 世界中の人とプログラミング勝負できます。世界大会や賞金もあります(http://new

    TopCoderで2年間プログラムしてみた - じじいのプログラミング
  • セマンティック バージョニング 2.0.0

    セマンティック バージョニング 2.0.0 概要 バージョンナンバーは、メジャー.マイナー.パッチ とし、バージョンを上げるには、 APIの変更に互換性のない場合はメジャーバージョンを、 後方互換性があり機能性を追加した場合はマイナーバージョンを、 後方互換性を伴うバグ修正をした場合はパッチバージョンを上げます。 プレリリースやビルドナンバーなどのラベルに関しては、メジャー.マイナー.パッチ の形式を拡張する形で利用することができます。 導入 ソフトウェア・マネージメントの世界には、「依存性地獄」と呼ばれる恐ろしいものがあります。あなたのシステムが大きく成長すればするほど、さまざまなパッケージを組み込めば組み込むほど、自分が地獄の底にいることにいつか気づくでしょう。 多くの依存性を有しているシステムにとって、新しいバージョンがリリースされることは悪夢でしかありません。厳密に依存関係を指定し

  • EnchantMOON試した雑感

    割り込み中に間違った処理をするとどうなるか、大昔スケジューラを書き換えていた時、私も痛いほど味わった。 具体的には、スケジューラとあるカーネルレベルのデバイスドライバを通信させるというドライバを書いていた。そしてドライバーがとりあえず実装できたので、installするためにリターンキーを押した。 ……ええーと、改行すらされないんですけど。ああああ、何も入力受け付けない受付ないぃぃぃうりぃぃぃ、Ctrl+Alt+Deleteなんてリッチな機能うごかねーよばかーぁぁぁ (電源長押しで切る) 要は、そういうローレベルでコードがバグっていれば、Javaのような高級なExceptionも発生しないし、Cのようにセグフォも発生しない。最悪、Kernel Panicすら発生しない。文字通りマシンが永久に泊まる。だって、発生させるロジックに届かないんだから。 Linuxのような市井の汎用OSで、割り込み中

  • マイナンバーのチェックデジットを計算する - Qiita

    そもそもマイナンバーってどういう数字なのでしょうか? これは法律を読みます。調べると「行政手続における特定の個人を識別するための番号の利用等に関する法律施行令」の第八条に書いてあります。 十一桁の番号及びその後に付された一桁の検査用数字により構成されるものとする。 つまり11桁+検査用数字1桁で12桁なんですね。さらに条件があって、 住民票コードを変換して得られる マイナンバーから住民票コードを復元できない 変更されて過去に使っていたものも含めてかぶらない ということになっています。 検査用数字とは? いわゆるチェックデジットですが、計算方法が「総務省令第八十五号」(PDF)の第5条に定義があります。まとめると 検査用数字 : $11 - \Bigl( \displaystyle\sum_{n=1}^{11} P_n \times Q_n \Bigr) % 11$ ただし $\Bigl(

    マイナンバーのチェックデジットを計算する - Qiita
  • iOS SDK開発でOSSライブラリを使う際の基礎知識

    iOS SDK開発でOSSライブラリを使う際の基礎知識:生産性ガチアゲなオープンソースiOSライブラリ(1)(1/2 ページ) ゼロからiOS SDK開発を始める新規開発者でも超高速・高品質な開発を可能にするオープンソースのライブラリを目的別に紹介していく連載です。実際にライブラリを組み込みながら技術的な側面も合わせて詳細に説明していきます。初回は、OSSライブラリ活用の基UI系を中心にライブラリを16個紹介します。 OSSライブラリを活用した超高速・高品質な開発方法 オープンソース(以下、OSS)のライブラリを活用して開発を行うと、ライブラリ未使用の場合に比べて生産性、品質ともに圧倒的な違いが出ます。連載では、ライブラリの種類、使い方、メリットなどを、実際に動くコードと一緒に解説していきます。 近年、iOS(iPhoneiPad)アプリ市場が急速に発展し、アプリ開発者は変化する状

    iOS SDK開発でOSSライブラリを使う際の基礎知識
  • Android開発初心者が勉強を始めて2週間でアプリを公開してみた話を書く。 - Pythonでも金融工学でもない。

    2015-01-14 Android開発初心者が勉強を始めて2週間でアプリを公開してみた話を書く。 Android 雑記 Tweet Androidアプリを作ってみた。 昨日、わたくしがはじめて開発したAndroidアプリを公開しました。日は、はじめてのアプリ公開までに勉強したことや、つまづいたことについて書いていきます。他の方が書いた記事を読んだおかげでアプリの完成にこぎつけたのので、わたくしも後からアプリを作る人の参考のために書き残しておこうと思ったためです。 Work Time Logger - Google Play の Android アプリ 「Work Time Logger」という働いた時間を記録するAndroidアプリを頑張って公開してみた。 Android Studioを使ってみる。 統合開発環境(IDE)は、「Android Studio」を使いました。Eclipse

    Android開発初心者が勉強を始めて2週間でアプリを公開してみた話を書く。 - Pythonでも金融工学でもない。
  • Swiftの勉強をするために、Swiftでアプリを一から作ってみた話 - Qiita

    この記事はSwift Advent Calendar 12月23日の記事です。 アドベントカレンダーは後半ほどネタが出尽くすので不利ですね。 自分はこの2ヶ月半ほどプライベートの時間を使ってSwiftで新しくアプリを作っていたので、それについて考えていたこと、感じたことをつらつらと書き下してみたいと思います。 [2014/12/28 追記] 今朝、アプリがリリースされました!! Rebuilt きっかけ 2014/6/3にWWDCでSwiftが発表され非常に気になっていました。 しかし、当時の自分は業務でアプリ開発から離れており、他に優先順位の高い事柄があったので積極的に勉強することを避けていました。 Xcodeベータは安定していない、Swiftの仕様もコロコロ変わる中、学習効率を重視するのであれば安定版がリリースされてから勉強したほうが良いとも思いました。 新しい技術が出てくるタイミング

    Swiftの勉強をするために、Swiftでアプリを一から作ってみた話 - Qiita
  • NSUserDefaults - iPhoneアプリ開発の虎の巻

    アプリケーションの設定値など、アプリを停止させてもずっと保持しておきたい情報などはよくありますが、NSUserDefaultsを使うとそうしたデータを簡単に保持できます。 使い方としてはNSUserDefaultsを取得して、取得したNSUserDefaultsに対してデータを保存したり取り出したりすることでデータ保持を行います。 NSUserDefaultsのクラス階層 生成 // NSUserDefaultsの取得 NSUserDefaults *ud = [NSUserDefaults standardUserDefaults]; NSUserDefaultsを取得する時は常にこの方法で取得します。この方法だとNSUserDefaultsがある場合はそれを返してくれ、NSUserDefaultsが無い場合は新規に生成して返してくれます。 NSUserDefaultsのメソッド 【NS