本教材は、個人的な用途で自由に使用できるだけでなく、「Python ゼロからはじめるプログラミング」を大学や専門学校での授業、または企業などでの研修の教科書として採用された教員・指導員が、授業などで活用することもできます(授業の進め方などに応じて改変いただいて結構です)。 ただし、民間企業が商用、ビジネス目的で利用する際には別途許諾が必要ですので、著者までご連絡ください。
Elm について (はじめに) Elm は JavaScript にコンパイルできる関数型プログラミング言語です。 ウェブサイトやウェブアプリケーションを作るのに役立ちます。Elm はシンプルであること、簡単に使えること、高品質であることを大切にしています。 このガイドは以下のことを目指します。 Elm によるプログラミングの基礎を身に着けてもらうこと The Elm Architecture を使ってインタラクティブなアプリケーションを作る方法をお見せすること あらゆる言語で使える法則やパターンを重視すること 最終的にはあなたには Elm を使って素晴らしいウェブアプリをただ作れるようになるだけでなく、Elm をうまく使えるようになるための核となるアイディアやパターンを理解してもらえればと思います。 Elm に対して様子見の立場である方も、Elm をちょっと試してみて実際に何かプロジェク
誰もが知る(?)プログラミングフォントこと Ricty にインスパイアされ、Ricty のように英文フォントと和文フォントを合成したプログラミングフォントを作りました。 その名も、プログラミングフォント「白源 (はくげん/HackGen)」です! 白源 (はくげん/HackGen) 通常版 生成元にはプログラミング向け英文フォント Hack と、Adobe 製作の源ノ角ゴシックに丸みを付けた派生フォント 源柔ゴシック を使用させていただきました。 白源の生成元である Hack、及び源柔ゴシックには、いずれも SIL Open Font License Version 1.1 という大らかなライセンスが適用されているため、改変及び配布が自由となっています。したがって、白源の生成済みフォントファイル (ttf ファイル) は GitHub からダウンロードして、すぐにご利用いただけます。 「白
Size / ↑ ↓ Theme Language // Type some code -> console.log "oO08 iIlL1 g9qCGQ ~-+=>"; function updateGutters(cm) { var gutters = cm.display.gutters, __specs = cm.options.gutters; removeChildren(gutters); for (var i = 0; i < specs.length; ++i) { var gutterClass = __specs[i]; var gElt = gutters.appendChild( elt( "div", null, "CodeMirror-gutter " + gutterClass ) ); if (gutterClass == "CodeMirror-line
2018年10月上旬からプログラミングスクールに通う駆け出しエンジニアです。 本格的にプログラミングを学習して約2ヶ月、たまたま昨日サービスを初リリースしました。名付けて、おっぱい関数ジェネレーター。英語でいうと、 OpPai Function Generatorです。略して、OPFG。正真正銘のクソアプリと自負しています。 たまたま、アドベントカレンダーをみていたら、12月17日のクソアプリに枠が空いていたので、これも何かの縁と思い、qiitaのクソアプリに投稿させて頂きます! どうぞ宜しくお願いいたします。 ・おっぱい関数ジェネレーター 私が定義したおっぱい関数の解説 おっぱいの基本式 おっぱいの基本式はこちら! 引用:xlogxの極限,グラフ,積分など こちらの式にパラメーター調整して作成したグラフがこちら! わりと、おっぱいに近づいていますね。次はちくび関数に移ります! ちくび関数
今日はプログラミングの生産性に対して気づきがあったのでシェアしてみたい。 なぜ米国の人は生産性が高いのだろう プログラミングの生産性に関しては以前から興味がありいくつかのポストで考えたことをシェアしてきた。私は職業柄、いろんな国でいろんな人々とプログラミングを一緒にする機会が多い。その時に頻繁に感じるのは、平均的に言うと、アメリカの人プログラマが生産性が高い確率が高くて、しかもコードもきれいだという傾向にある。アメリカでお客さんと一緒にコードを書くと、お客さん自体が物凄く良く知っているし、実行力もある。アメリカの次と言うことでいうと、英語がネイティブの国もそれに近く、フランスなどの言語が近いところが続く感じなので、英語が物凄く影響すると思っていたし、実際すると思う。そのあたりの話はこちらのポストに書いてみた。 simplearchitect.hatenablog.com 定義での理解と、例
NTT データ数理システムでリサーチャーをしている大槻 (通称、けんちょん) です。 今回はソートについて記します。 0. はじめに データ構造とアルゴリズムを学ぶと一番最初に「線形探索」や「ソート」が出て来ます。これらのテーマは応用情報技術者試験などでも頻出のテーマであり、アルゴリズムの Hello World とも呼ぶべきものです。 特にソートは、 計算量の改善 ($O(n^2)$ から $O(n\log{n})$ へ) 分割統治法 ヒープ、バケットなどのデータ構造 乱択アルゴリズムの思想 といった様々なアルゴリズム技法を学ぶことができるため、大学の授業でも、アルゴリズム関連の入門書籍でも、何種類ものソートアルゴリズムが詳細に解説される傾向にあります。本記事でも、様々なソートアルゴリズムを一通り解説してみました。 しかしながら様々な種類のソートを勉強するのもよいが、「ソートの使い方」や
はじめに やあやあ、ごきげんよう。🐱です。新人さんも、なんとなーくふんいきでwebフレームワークを触って来たけど、「public static void mainとは🤔」みたいな感じでエンジニアリングしてきた人もこんにちは。Engineerってのは最高にSexyなお仕事だ。おめでとう、おめでとう。 早速だが、オブジェクト指向プログラミング(以下、面倒なのでOOPと記する)というものがあり、今のところ主流ということになってる。お仕事の道具だ。しばらくこいつに付き合うことになると思うから、理解しよう。そのためにこのポエムがある。 OOPを理解するに当たっての当記事の位置付け 私は今から、OOPの鮮烈なイメージを諸賢に提供したい。最低限の裏取りはしたが、厳密性を欠くところも多分にあると思う。正確に言うと、当記事では厳密な定義より鮮烈なイメージを優先する。そうすると何が嬉しいかと言うと、遍く全
とあるエンジニアの技術勉強法 (インターン学生向け) というスライドを先日 @iwashi86 が書かれていました。 インターン学生向けとありますが、新人プログラマ向けとしても素晴らしい資料だと思います。 ここでは「即、役立つわけではないが後から効いてくる」という「基礎知識」に絞って教材を紹介します。 目の前の仕事のために必要なことと並行して基礎知識を学ぶのは、長期的には良いと思います。 なお「基礎」==「簡単」というわけではなく、無理せず自分のペースで付き合うのがおすすめです。 自分で読んで、かつ、とても良いと思ったもののみを紹介するので、全分野をカバーしてはいません。 基礎にどのような分野があるかは新卒準備カレンダー2011や情報科学科カリキュラムが参考になります。 以下はどれも有名な本なので、ググれば感想なども見つかるでしょう。 気になった本、読もうと思う本については、ググるのも良い
【2021/1/11】2021年版を公開しました 【2020/1/9】2020年版もあります, こちらもよろしくおねがいします! 【2019/8/12】一部書籍のリンクを最新版に更新しました 【2018/12/24追記】最新版を公開しました!「Python本まとめ・2019年版 - Webとデータ分析を初心者が仕事にするまで - Lean Baseball」 機械学習にWebアプリ,そしてFintechと,今年(2017年)は昨年(2016年)以上にPython界隈が賑やかな一年でした. Pythonでお仕事と野球データ分析を生業としている@shinyorke(野球の人)ですこんにちは. このエントリーでは,そんなPythonの学び方・本が充実した今年から来年(2018年)に移るにあたり, 最短距離でPythonレベルを上げるための学び方・読むべき本の選び方〜2018 をまとめてみました.
この記事は JustSystems Advent Calendar 2017 の 19日目の記事です。 初めに この記事は、サポーターズCoLab主催イベントの和田卓人先生の講演「エンジニアとしてこの先生きのこるために」の聴講記録です。 主催:サポーターズCoLab 講演者:和田卓人さん(@t_wada さん) 題目:「エンジニアとしてこの先生きのこるために」 聴講のきっかけ:新人研修で一度紹介して頂いていて講義内容に興味をもっていたため 参考資料 私が研修中の時は、スライドが公開されていませんでしたが、今年の6月5日に以下で資料が公開されています。 講義スライド このスライドだけでももちろんためになるので、講演中にあった補足の話を中心に記述していこうと思います。 テーマ1:エンジニアとしての基本姿勢とは?→「学び続ける姿勢」 原則は現役(いつでも使える)、ただし要素は廃れていく 同じもの
※ 本記事は自分が運営しているブログに転載しています。 株式会社LITALICOでWebエンジニア(Rails)を担当しています、@YudaiTsukamotoです。 この記事は『LITALICO Advent Calendar 2017』14日目の記事です。 今回は、実務でペアプロを導入したことで、ペアプロへの考えが180度変わった話について書こうと思います。 はじめに この話は、弊社のとある新規プロジェクトの立ち上げで実際にペアプロを導入した話です。 プロジェクトでは初期メンバーとして私を含めた4人の開発者がアサインされました。過去のプロジェクトで比較的うまく機能していたアジャイルの導入や、ソフトウェアテスト・静的解析ツール等を徹底してコードの品質を担保するなど、アプリケーション開発する上での準備を入念に行いました。 そんな中、同じプロジェクトにアサインされた同期の@Takuan_Oi
についていろいろな知見を得たのでメモしておく。 ことの発端 発端はこちら。 static finalな定数に比べて単純なEnumが勝る点とは何かを考えている— ぜろゆ (@zer0_u) 2017年12月13日 もう少し詳しく言うと、 ①通常のクラス内にstatic finalな定数を宣言する ②static finalな定数だけを持つクラスを宣言する ③Enumを宣言する の違いを考えていて— ぜろゆ (@zer0_u) 2017年12月13日 ①は「その他」がないことを表せない・値の制約がつけられないという点で②や③には劣るが②と③の間に何か差があるのかというと— ぜろゆ (@zer0_u) 2017年12月13日 こうなる。Enumについて解説しようと思ったところ、ふと「定数と何が違うんだろう?」と思ったのがきっかけです。いつもご意見ありがとうございます。 Enumと定数の違い 簡単
エンジニア組織を強くするための本を出版しました Qiitaでエンジニアリングをめぐる様々なコミュニケーションの問題とその解決策や考え方を書いてきた。それらの背後にあるエッセンスをこの度書籍として出版するに至りました。 エンジニアリング組織論への招待 ~不確実性に向き合う思考と組織のリファクタリング この書籍は、エンジニアリングを「不確実性を削減する」という第一原理で捉え直し、様々なエンジニアリングとその間のコミュニケーションをめぐる現象を説明していくものです。 デメテルの法則 別名最小知識の法則。デメテルは、豊穣の女神。アスペクト指向などの研究であった「デメテルプロジェクト」に由来。 基本的な考え方は、任意のオブジェクトが自分以外(サブコンポーネント含む)の構造やプロパティに対して持っている仮定を最小限にすべきであるという点にある。 単純化して説明すると、オブジェクトの"メンバーのプロパテ
テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま
Visual StudioをLanguage Server Protocol対応にする拡張機能が発表された。Visual Studioがネイティブに対応していないプログラミング言語でも、構文ハイライトやコード補完などが利用可能になる。 マイクロソフトがオープンソースで開発しているエディタ「Visual Studio Code」(以下VSCode)には、さまざまなプログラミング言語に対応してリアルタイムに構文のハイライトや文法チェック、コード補完などを行う機能が備わっています。 これはVSCodeのエディタとは切り離され、別プロセスで動いているLanguage Serverが処理を行い、それをエディタに伝えることで実現しています。そしてエディタとLanguage ServerはJSONベースの「Language Server Protocol」で通信を行っています。 マイクロソフトはこのLa
JJUG CCC 2017 Fallでの発表資料です。
はじめに 他の人が書いたコードを読んでいるときに時々気になるのが、英語の間違いです。 特に動詞、名詞、形容詞の使い分けが間違っていたりすると、かなり違和感を感じます。 そこで今回はモデル(=クラス)やメソッドに名前を付けるときの基本的な原則をまとめてみます。 また、英文法的に正しい品詞が選べるようになるための習慣についても最後に説明します。 想定する言語/フレームワーク この記事の説明ではRuby/Ruby on Railsを想定しています。 ただし、基本的な考え方は他の言語でも同じように使えるはずです。 モデルの名前は名詞にする 例: 「支払い情報」を表すモデルを作りたい場合 × Pay ○ Payment 「支払う = payか。よし。」でモデルを作ってはいけません! payは動詞で、payの名詞形がpaymentです。 Payモデルではなく、Paymentモデルを作りましょう。 例:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く