![SOLID原則完全に理解した!になるための本](https://cdn-ak-scissors.b.st-hatena.com/image/square/21345a5c70e13b336d83de893db714e0350e9d93/height=288;version=1;width=512/https%3A%2F%2Fres.cloudinary.com%2Fzenn%2Fimage%2Fupload%2Fs--E1Mlzs3z--%2Fg_center%252Ch_280%252Cl_fetch%3AaHR0cHM6Ly9zdG9yYWdlLmdvb2dsZWFwaXMuY29tL3plbm4tdXNlci11cGxvYWQvYm9va19jb3Zlci85NjgwNjZlNzBjLnBuZw%3D%3D%252Cw_200%2Fv1627283836%2Fdefault%2Fog-base-book_yz4z02.jpg)
ボードゲームやアクションゲーム、各種ツールやシミュレーションなどさまざまなソフトが100日間に作られた いままで数えきれないほどのプログラマーに会ってインタビューもさせてもらってきたが、久しぶりに若いプログラマーの話を聞いてきた。ここ1、2年では U22グランプリの男子中学生や全国小中学生プログラミング大会の受賞者たちだが、今回は、ChatGPTを使ってプログラムを書きまくった女子大生である。 彼女は X(Twitter)の自分のアカウントで1日1本のソフトを100日間連続で作るというイベントをやっていて「おっ、頑張っているな!」と思って応援していた。「こんなゲームを作ってほしい」などとリクエストを出したりもしていたのだが、どうも私が想像していたものと内容もやり方も違っていたようである。 目下、ソフトウェア産業の最大のテーマは「我々は人間の言葉でプログラムを書くようになるだろうか」というこ
最近「おれってガベージコレクションを勉強するにあたってめちゃくちゃ恵まれた環境にあるのでは?」とふと思い立ち、ベージコレクションの勉強を始めました。 ガベージコレクションの勉強を始めるにあたって、とりあえず「The Garbage Collection Handbook (first edition)」の邦訳である「ガベージコレクション 自動的メモリ管理を構成する理論と実装」を読むことにしました。 この記事では、読み終わってうれしいので、雑に感想を書きなぐっています。表記が「GC」だったり「ガベージコレクション」だったりするのは雑に書いたからです。 前提知識 ガベージコレクションの事前知識はほとんど不要で、何をしてくれるものか大まかにわかっていれば良い程度だと思います。つまり、ヒープに確保した領域を明示的に解放しなくても、何かのアルゴリズムでいい感じにやってくれる仕組み、ということを知って
プログラミングを学ぼうとしては挫折する。 そんな時代はもう終わりだ。 お姉ちゃんに任せなさい。 ChatGPTでプログラミング 今年のお盆休み、俺はChatGPTでプログラミングをやっていた。とは言っても複雑なことはやっていない。大量のcsvを結合してから可視化するとか、ちょっとしたWebスクレイピングしたりする程度だ。それでも今まで技術や時間の不足により諦めていたことができるのは嬉しい。それにChatGPTを使えば、デバッグも楽しくやれるのだ。こんな感じに。 デバッグの様子 おそらく「あれ、俺のChatGPTと違うな」と思った人もいるに違いない。見ての通り俺はChatGPTをお姉ちゃん化している。こうすることで、モチベーションを維持しながら楽しくプログラミングができるというわけだ。今回はChatGPTをお姉ちゃん化する方法を紹介し、加えてお姉ちゃんとペアプログラミングする意義について述べ
なっとく!関数型プログラミング 作者:Michał Płachta翔泳社Amazon 良い、買おう、読もう、(コードを)書こう、以上! めっちゃ良いですよ、この本 中盤のプリミティブじゃやりづらい→直積→直和→二つ合わせてADT→値を取り出すためのパターンマッチの解説の流れの疾走感がいいですね— magnoliak🍧 (@magnolia_k_) 2023年8月6日 『なっとく!関数型プログラミング』は、2022年に出版された『Grokking Functional Programming』の邦訳版で、主にScalaを題材として関数型プログラミングを学んでいくための入門書("Grokking"は、完全に理解する、という意味)。あくまで関数型プログラミングの考え方、コードの書き方、良い設計の指針の解説が主眼に置かれているので、Scalaの言語機能の入門書ではない。Scalaの言語仕様を網羅
業務でなくてはならないツールExcel。Excelのマクロを使って自動化することもできるが、Pythonを使うとより幅広いライブラリと併用できて非常に便利だ。とは言え、PythonでExcelを自動操縦する場合、「openpyxl」を使う方法と「pywin32」を使う方法の二台手法がある。ここでは、そのメリット・デメリットを比較してみよう。 Pythonの二大Excelライブラリを比較してみよう 「openpyxl」「pywin32」のどちらが良いのか? PythonでExcelを操作して、業務の自動化をする場合、「openpyxl」を使う方法と「pywin32」を使う方法の二大手法がある。どちらにもメリットがある。 まず、どちらのライブラリを使う場合も、基本的なExcelのシートの内容を読み書きすることができる。しかも、双方ともオープンソースであり無料のライブラリだ。しかし、決定的に異な
本書ではPythonを使い、火星や木星や銀河の最果てを、詩人の魂を、高度な金融の世界を、選挙の不正を、ゲーム・ショーのトリックを、探っていく。マルコフ連鎖解析のような技術を使って俳句を詠み、モンテカルロ・シミュレーションで金融市場をモデル化し、イメージ・スタッキングで天体写真を改善し、遺伝的アルゴリズムで巨大なネズミを育てる。それとともにpygame、Pylint、pydocstyle、tkinter、python-docx、matplotlib、pillowといったモジュールの経験を楽しく積むことができる。 この本は2冊目のPythonの本とみなすことができる。完全な初心者向けの本や入門クラスの後に続く本、あるいは補完する本となることを狙っている。「impractical」(実用的でない)というタイトルに反して、本書の内容はかなり実用的で、文字列やコレクションの操作といった基本的なことか
@tkanayama_です。「SQLアンチパターン *1」 という本を読みました。「ポケモンを題材に因果推論を実践してみる」のように、仮想的なストーリ上で実際に使ってみた感を出すことにより、自分の記憶に定着させることを狙います。 前提として、何をアンチパターンとするかは状況(ベンダーフリーである必要があるかどうか、どの程度の頻度で更新されるか・・・など)によって大きく異なるので、下記で紹介するアンチパターンは実は状況によっては問題にならないケースもあるかと思います。この投稿はあくまで「SQLアンチパターン」に忠実に従うことが目的です。 www.oreilly.co.jp 追記 登場人物 ストーリー フシギダネへの対応 ヤミカラスへの対応 ディグダへの対応 誤登録でポケモントレーナーになってしまったユーザーの削除 最後に 謝辞 追記 このブログを公開後、「外部キー制約はレコードロック周りのト
漫画家の坂本タクマさんの書いた「Rubyではじめるシステムトレード (現代の錬金術師シリーズ)」という本がある。 この本がかなりの名著だ。 繰り返し読んでる。 Rubyを学びたい人には是非お勧めしたい。 この本はシステムトレードの検証プログラムを作りながら、Rubyを勉強する本だ。 普通の初心者向けのプログラム本は、使い道のない「お買い物プログラム」とかで学ぶことが多い。 だが、この本で使う検証プログラムは実用的で拡張性も高い。 実際に使える。検証できる。素晴らしい。 この検証プログラムは本を購入すればダウンロードすることができる。 この検証プログラムだけで、本の定価代以上の価値はある。 というか、私にとっては数十万円以上の価値がある。 これが三千円で買えてしまう。ありがたい。 本の内容はプログラム初心者向けに丁寧に書かれている。 最初から読んでいけば、分からないところは出てこないと思う。
Python及びテキストマイニングの超初心者向け入門書として 友人と週1回ペースで行っている統計&プログラミングの勉強会で、以前、Pythonの入門書は何がいいだろうかと考えて本書を取り上げました。当時ブログにはまとめていなかったのでまとめておきます。 言語研究のためのプログラミング入門: Pythonを活用したテキスト処理 作者: 淺尾仁彦,李在鎬出版社/メーカー: 開拓社発売日: 2013/06/25メディア: 単行本この商品を含むブログ (3件) を見る 本書はほんとにプログラミングというものに全く触れたことがない人向けのものなので、内容はちょっと簡単すぎた感もあるのですが、勉強会ではRばかりやってきてPythonには皆慣れているわけではないし、テキストマイニングの入門という意味もこめて一応やりました。初心者でもすぐ理解できる内容なのでさっさと終わらせようと思い、1回2章ずつのペース
きっかけ この記事を書いた人のレベル 今回の読書プラン Python 環境の構築 インストール先の環境 Anaconda (Python 3) のインストール 科学計算に関するライブラリのインストール サンプルの実行に必要なライブラリのインストール サンプルの実行 サンプルコードを実行していて引っかかったところ 3章 12〜13章 Python の勉強 速習コースを読んでみた感想 きっかけ 機械学習の重要性は、それこそ「ビッグデータ」という言葉が出てきた頃からいろいろな人が訴えていますが、最近は特にツールが充実して、敷居が下がってきたように感じています。 そろそろ自分でも機械学習関係のツールを使えるようになりたいと思っていたのですが、そんなときに「具体的なコード例が多くて読みやすい」という本書の評判を聞いて、読み始めました。 Python機械学習プログラミング 達人データサイエンティストに
以前告知していた書籍が、無事発売されることになりました!(技術評論社の公式ページ) アフィリエイト あなたの知らない超絶技巧プログラミングの世界posted with amazlet at 15.09.01遠藤 侑介 技術評論社 売り上げランキング: 3,000 Amazon.co.jpで詳細を見る どんな本? テーマは「役に立たないプログラミングを楽しもう」です。言葉で説明するよりプログラム例を見た方が分かりやすいと思うので、代表的な過去作品にリンクしておきます。 Qlobe: アスキーアートの地球が回るプログラム Quine リレー: 100 のプログラミング言語を経由して自分自身を出力するプログラム ASCII Fluid: 80x25 の画面に収まる流体シミュレータ (動画) Merry Quine-mas 2010: 音楽再生しながら雪のアニメーションを行う自己出力プログラム (
プログラマの面接をするときには実際にコーディングをしてもらうべきという話は良く聞くが、もうちょっと細かくどういうお題を出したら良いかとか、どういう風に評価したら良いかとかの話はあんまり聞かない気がする。せっかくなので、ユビレジでの面接で私がコーディングについて確認するときのパターンを、いくつか紹介してみようと思う。 実際にコードを書いてもらうパターン 候補者がどのくらいプログラミングできそうかの予備情報がない場合に、簡単なアルゴリズムを書いてもらうことが多い。例としては、 Linked Listを書いてください Stackを書いてください など。ここで、おもむろに int main(int argc, char* argv[]) { などと書き始める人は、あまり良い印象をもたれない。 class Stack などと書き始める人は上よりは期待できる。 このとき、わざと出題で詳細をあまり明らか
はじめに 久しぶりに Aho氏, Sethi氏, Ullman氏の書いた Compilers(レッド・ドラゴン・ブック)という書籍を目にしたので、昔、コンパイラを作った時の事を思い出しながらコンパイラについてまとめてみました。 Translator (翻訳) Translatorとは、一つのプログラミング言語(Source Language: 原始言語)で書かれたプログラムを入力として取り、別の言語(Object Language or Target Language: 目的言語)のプログラムとしてつくり出すプログラムです。 原始言語が FORTRAN, C, Pascal などの高水準言語で、目的言語がアセンブリ言語や機械語といったような低水準言語である時、そのような Translator をコンパイラ(Compiler) と呼びます。また、原始言語がアセンブリ言語で目的言語が機械語であ
世の中にUnity情報が山ほどあって、素晴らしいです。 分からない事があっても、ググるだけでピンポイントなブログの記事やstack overflowが出てきたりします。素晴らしい。 ただ、技術に対する体系だった学習に技術書を読むのは、とても良いと思うので、読んだことある本を難しさ順に並べてみます。 ここに出ていない本は読んでいないか、読んでオススメしかねる本だったので、お勧め本があれば教えてください。 2016年版を書きました izm-11.hatenablog.com Unityって何?レベル まずは本を買うより先にドットインストールのUnity講座を見ましょう。 お金を払って本を買うのはその後で良いのです。 http://dotinstall.com/lessons/basic_unity 個人的には、最初から本を買って「お金払ったんだし、やるか…」と言う気持ちにするメソッドを良く使う
勉強会やスライドで紹介していましたが、Ruby×クローラーという題材で、『Rubyによるクローラー開発技法』という本を書かせて頂きました。RubyとEmacsの鬼であるるびきちさんとの共著です。 Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例 作者: るびきち,佐々木拓郎出版社/メーカー: SBクリエイティブ発売日: 2014/08/25メディア: 大型本この商品を含むブログ (1件) を見る この本を書いた理由 そもそものキッカケは、るびきちさんのエントリーにある通り、SBクリエイティブの編集者さんが、クローラーの作成経験のある人を探していて、私の書いた「オープンソースのRubyのWebクローラー"Anemone"を使ってみる」を読んで打診してくださったというのが始まりです。 私自身も、Webからデータを収集して分析するということは、趣味として長年やってきました。一
世界でもっとも強力な9のアルゴリズムを読んだ。 コンピュータサイエンスの優れたアイデアを紹介している。それらは私たちの生活を変えた。世界を変えたにもかかわらず広くは知られていない。 偉大なアルゴリズムというものは何なのか?本書はその偉大なアルゴリズムを次の基準で選定した。1)普通のコンピュータユーザが毎日使っているもの。2)現実世界の具体的な問題を解決するもの。3)コンピュータサイエンスの理論に関係のあるもの。 そのような基準から著者が選んだのが下記のアルゴリズムだ。 検索エンジンのインデキシング ページランク 公開鍵暗号 誤り訂正符号 パターン認識 データ圧縮 データベース デジタル署名 決定不能性 最初の二つのアルゴリズムのおかげでわたしたちは日々検索エンジンで有用な情報を入手できる。公開鍵暗号やデジタル署名のおかげで安全にインターネット上でクレジットカード情報などを交換できる。誤り訂
FINDJOB! 終了のお知らせ 2023年9月29日にFINDJOB!を終了いたしました。 これまでFINDJOB!をご利用いただいた企業様、求職者様、様々なご関係者様。 大変長らくFINDJOB!をご愛顧いただき、誠にありがとうございました。 IT/Web系の仕事や求人がまだ広く普及していない頃にFind Job!をリリースしてから 約26年間、多くの方々に支えていただき、運営を続けてまいりました。 転職成功のお声、採用成功のお声など、嬉しい言葉もたくさんいただきました。 またFINDJOB!経由で入社された方が人事担当になり、 FINDJOB!を通じて、新たな人材に出会うことができたなど、 たくさんのご縁をつくることができたのではないかと思っております。 2023年9月29日をもって、FINDJOB!はその歴史の幕を下ろすこととなりましたが、 今後も、IT/Web業界やクリエイティブ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く