タグ

ブックマーク / qiita.com (190)

  • 知識を構造化する20のルール(『エンジニアの知的生産術』内紹介)

    エンジニアの知的生産術』の書籍を読んでいます。 この書籍の第二章では、「記憶を鍛えるには」の知見が共有されています。 その中で、1999年にSupermemoの作者Piotr Wozniakさんにより公開された文章「知識を構造化する20のルール/Effective learning: Twenty rules of formulating knowledge」が紹介されていましたので、ブログでサマリーを紹介します。 エンジニアの知的生産術 ──効率的に学び、整理し、アウトプットする ここに、知識を構造化するための20のルールについて記します。 最初の16のルールは記憶をシンプルに作成することを中心です。いくつかのルールは強く重なっています。 1. Do not learn if you do not understand(理解出来ないことを学ぼうとしない) 例えば、ドイツ語がわからない

    知識を構造化する20のルール(『エンジニアの知的生産術』内紹介)
    mercure
    mercure 2018/08/26
  • モダンなJava開発ガイド (2018年版)

    2018年現在でもJava開発をしていると、Antすら使っていないEclipseプロジェクトにそこそこの頻度で出くわします。Eclipseの自動コンパイルが通ればOKであり、ビルドはExcel手順書をもとに手動で行われ、依存関係ライブラリはもちろんlibフォルダに各種jarファイルが放り込んであります。Eclipse上以外ではどう動かせば分かる人がいないため、コマンドラインからビルドなどを行うことは叶わず、CI化なんて夢のまた夢です。 そんなJava開発から脱却したい人向けのJava開発のモダン化ガイドです。 基的にJava 8以降での開発を想定しています。 OpenJDK/OracleJDK上での開発を想定しています。 Android開発の場合は一部適用できない可能性あり。 英語のIDE、ツール等は積極的に使用します。 英語嫌いだとモダン化は難しい。 Java開発全般を前提としているた

    モダンなJava開発ガイド (2018年版)
    mercure
    mercure 2018/08/25
  • 2018年の最先端バックエンドエンジニアに必要なスキルについて考えてみました。 - Qiita

    @rana_kualuさんの2018年の最先端バックエンドエンジニアになろうという翻訳記事がとても興味深かったのですが、記事内で提示されているロードマップに関して微妙に違和感を感じる部分もありましたので、 記事に記載されているスキルは現場でどの程度必要なのか 記事に記載されていないが現場において重要なスキルは何か といった辺りを、自分なりの意見を交えてちょっと書き出してみました。 自分をエンジニアとして最先端だとは全く思っていないのですが、最近のバックエンドのトレンドに一応多少なりともきちんとキャッチアップしてるかなとは思うので、若い方や、まだ経験の短いエンジニアの方たちのご参考になりましたら幸いです。 言語 ロードマップに記載されていた言語のうち、私は一応 Elixir Scala Java .NET (C#とVB.NET) Python Ruby PHP TypeScript Gola

    2018年の最先端バックエンドエンジニアに必要なスキルについて考えてみました。 - Qiita
    mercure
    mercure 2018/08/22
  • ボロノイと点列の生成のはなし - Qiita

    はじめに これはレイトレ合宿アドベント・カレンダー(2018)の記事です。ボロノイ図の生成の仕方、またそれを用いたブルーノイズの特性を持つ点列の生成方法、点描などの応用についてざっと紹介します。 下準備 はじめに基的な、ボロノイ図、パワー図、ボロノイ図の生成法、ブルー・ノイズを紹介します。ここで紹介するもののほとんどは2次元に特化しており、離散化された場を対象としています。 ボロノイ図 Wikipediaには「ボロノイ図(ボロノイず、英語: Voronoi diagram)は、ある距離空間上の任意の位置に配置された複数個の点(母点)に対して、同一距離空間上の他の点がどの母点に近いかによって領域分けされた図のことである。」とあります。それぞれの領域をセルと呼びます。 CGではフレークの形状や、Worleyノイズなどでよく出てくるので知っている人がほとんどでしょうか。Inigo Quilez

    ボロノイと点列の生成のはなし - Qiita
    mercure
    mercure 2018/08/21
  • QiitaのTypo検出にtextlintを追加しました + 編集リクエストを送り続けて気づいたこと - Qiita

    人間性をさがせよ QiitaのTypo検出 - Qiita にtextlintを追加しました。 まとめ textlintの追加は簡単だった ほんのり(優しく)チェックできるtextlintプラグインを探さなければならない ホワイトリスト機能を改善してもらった textlintに引っかかる投稿はそこそこある 誤判定は割と出る。が、一部は慣れでスルーできる 編集リクエストは一つにまとめて送信する 編集リクエストが採用されなくても泣かない 追加コード 人間性をさがせよ QiitaのTypo検出 - Qiita のコードを見ていないとなんのこっちゃですが、diffで表示します。 --- a/index.js +++ b/index.js @@ -4,6 +4,9 @@ const axios = require('axios'); const DICTIONARY = require('./dic

    QiitaのTypo検出にtextlintを追加しました + 編集リクエストを送り続けて気づいたこと - Qiita
    mercure
    mercure 2018/08/20
  • プログラマの「日報、週報、月報、年報」考。仮説(73)、日本語(20) - Qiita

    ほうれんそう 法蓮草 v.s. 報連相 「ほうれんそう」という言葉をご存知だろうか。 私は法蓮草(ほうれんそう)が大好きだ。炒め物によし、おしたしによし、カレーによし。 そんな私が、報連相(ほうれんそう)は大嫌いだ。 報告しても、連絡しても、無駄なことをやらせるだけで、 役にたつことをしてもらったことがない。 相談なんてしようものなら、 そんなことはやるな、 それをやるならやめてもらわなきゃならぬ。最近では「パワハラ」というらしい事態は何度も経験した。 あっちをやってからやれ、 足ひっぱりの嵐が始まる。 報連相は無駄の嵐。 自分がLine, Slack, Facebook, Messengerほか、文字で 報告を受けたり、 連絡をもらったり、 相談を受けたら、 何か、今の自分で手伝えることがないなら、 既読スルーすることもある。 ごめんなさい。スルーするのは肯定文だと思っていただけると嬉し

    プログラマの「日報、週報、月報、年報」考。仮説(73)、日本語(20) - Qiita
    mercure
    mercure 2018/08/19
  • Common LispでWebアプリを作るときのパターン - Qiita

    ブログを例にWebアプリケーションを作っていきます。 ただし、これは個人的なメモみたいなもので、完全に動くことを目指して書いていくわけではありません。 サーバーサイド サーバーサイドでのCommon Lisp実装について。 データ ブログを定義します。ブログは、中身 (content)、作成日時 (created-at)、ブログを一意に特定する識別子 (id) を持つ、とします。 ブログはdefstructで定義できます。 ブログのcontentは、著者が発信したい内容を保持します。どのような形式で保持するか、今の段階では得に決めていません。 ブログのcreated-atは、ブログの作成日時を保持します。created-atは、contentが現在でも有効かどうかを判断する材料に使います。created-atから時間がたっているブログのcontentは有効で無い可能性がありえる、というよう

    Common LispでWebアプリを作るときのパターン - Qiita
    mercure
    mercure 2018/08/19
  • プログラマが知っているとよい色(1)使い(JIS安全色) - Qiita

    <この項は書きかけです。順次追記します。> This section is about to be written. I will add it little by little. 目次の前に(forward) この記事は、インターンシップの大学生の方に、「ゲームはするよりもゲームプログラムを書く方が楽しい」ということを説明した際に、その説明の一部として書いたものです。ゲームを卒業研究の題材にするなら、ゲームの中での色使いで、人による見え方の違いに配慮した改訂のあったJIS安全色(国際整合:ISO 3864-4:2011(Graphical symbols−Safety colours and safety signs−Part 4: Colorimetric and photometric properties of safety sign materials))を参考にするとよいよとい

    プログラマが知っているとよい色(1)使い(JIS安全色) - Qiita
    mercure
    mercure 2018/08/19
  • 「お前らのフリーランスになるメリットは間違っている」というお話 〜 リク◯ート半端ないって!編 〜

    お願い この記事はいいねが短期間でつきましたが、Qiita運営側に都合が悪い内容なのでサイトTOPのトレンドやタイムラインに表示されなくなりました。 (大手企業が収入源なのでQiitaも都合が悪い。でも、勝手に記事を削除してしまうとサービスとしての信用問題になってくるからしない。といったところでしょう。) 読んでためになると思ったらSNSでシェアにご協力ください。 前回までのおさらい 前回、「フリーランスは事業だ」って話をした。 「お前らのフリーランスになるメリットは間違っている」というお話 しかし、フリーランスやってて色々なエンジニア(フリーや1人親方の経営者も含めて)と会うが、 「事業」と意識した判断・動きをしていない人がとても多い。 フリーランスといいながら、脳みそが会社員。 経営者やってるといいながら、脳みそが会社員。 そんな人がITフリーランスにはとても多い。 フリーランス1、2

    「お前らのフリーランスになるメリットは間違っている」というお話 〜 リク◯ート半端ないって!編 〜
    mercure
    mercure 2018/08/15
  • 画像認識で坂道グループの判別AIの作成 - Qiita

    こんにちは。 pythonについて勉強していて、その応用として初めて自分で1からやったのでその備忘録として書かせていただきます。 また今回コードを見ただけで何をしているのかわかりやすくするために、コード内にコメントを多数入れました。 目次 背景 画像収集 顔の抽出 訓練データとテストデータに分割 CNNで学習 結果 今後の課題 まとめ 1.背景 pythonスクレイピング、そして画像認識について勉強していて、この二つを同時に使い何か作ろうと思い何かいいテーマがないか探していました。 そんな中この夏坂道合同オーディションが開かれるが、 「どのように乃木坂・欅坂に決めるのだろうか」と疑問に思いまして、 「あ、その人の顔でどちら顔に近いか分類できたら面白くね」という考えに落ち着いたのでこのテーマについてスクレイピング、画像認識を応用してみることにしました。実際にやってみることが大事だと思ったの

    画像認識で坂道グループの判別AIの作成 - Qiita
    mercure
    mercure 2018/08/14
  • 書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた

    記事では、書籍「Clean Architecture 達人に学ぶソフトウェアの構造と設計」のポイントを抽出する。ただ、削った部分も多いので、ぜひ書籍を購入してほしい。 第1部 イントロダクション ソフトウェアを「一度だけ」動かすのは、それほど難しいことではない。正しくするのは難しい。 ソフトウェアを正しくすると、不思議なことが起こる。開発や保守に必要な人材はわずかで済む。変更は簡単で迅速になる。欠陥の数は少なく、ほとんど出てこなくなる。労力は最小に抑えられ、機能性と柔軟性は最大になる。 「あとでクリーンにすればいいよ。先に市場に出さなければ!」ソフトウェア開発者たちはそう言ってごまかす。だが、あとでクリーンにすることはない。短期的にも長期的にも、崩壊したコードを書くほうがクリーンなコードを書くよりも常に遅い。早く進む唯一の方法は、うまく進むことである。 すべてのソフトウェアシステムは、2

    書籍「Clean Architecture」が最高すぎたのでエッセンスをまとめてみた
    mercure
    mercure 2018/08/13
  • RFC標準を調べるための知識やツール - Qiita

    はじめに 記事では、RFC (Request for Comments) で提案・標準化された仕様を探して読むための基礎知識や、Web上で利用できるツール等について記します。 想定読者は、Web技術に関わるエンジニアで、RFCを参照して標準仕様を調べる機会がある人です。 ここに書かないこと RFCとは何か Internet-Draft (I-D) 段階の議論の追い方 I-Dから標準化のプロセスに乗るまでの細かい流れ 基礎知識 RFCの種類 すべてのRFCが仕様として標準化されるというわけではありません。 RFCは次のように、いくつかのCategoryに分類されます。 Category 説明

    RFC標準を調べるための知識やツール - Qiita
    mercure
    mercure 2018/08/13
  • [作業効率化] Jupyterの拡張機能を全部調べてみた - Qiita

    今までも、いくつか拡張機能は使っていたものの、大部分は使わずに過ごしていたため、わず嫌いはいけないな・・と思いドキュメント読みながら使ってみてまとめます。 まえおき 拡張機能(nbextensions)自体や、過去の記事で触れたHinterlandやTable of Contents (2)などはそちらの記事(Jupyter 知っておくと少し便利なTIPS集)をご確認ください。 結構抄訳などしています。(浅く広く。詳細はドキュメントに任せるとして、こんな拡張機能あるのか、程度にご使用ください) nbextensionsを入れたときに最初から入っている拡張機能を対象とします。 全部といっても、nbextensionsの設定画面を表示するための拡張機能だったり、基的にデフォルトで有効で、且つ変えることがほぼなさそうなものは割愛します。 環境は「Python 3.6.5 :: Anacond

    [作業効率化] Jupyterの拡張機能を全部調べてみた - Qiita
  • 今更ながらDocker上でRailsを開発するための簡易リポジトリを作った - Qiita

    Rails 5.2.1 https://github.com/minakawa-daiki/rails-docker/blob/master/Gemfile MySQL MySQL 5.7 https://github.com/minakawa-daiki/rails-docker/blob/master/docker-compose.yml セットアップ .env.sample を .env にリネームする docker-compose run --rm web bundle exec rails new . --force --database=mysql config/database.ymlを編集する ... default: &default adapter: mysql2 encoding: utf8 pool: <%= ENV.fetch("RAILS_MAX_THREADS

    今更ながらDocker上でRailsを開発するための簡易リポジトリを作った - Qiita
  • テストを書くかどうか議論するの不毛だから、どうやってテストを書きやすくするか議論しよう - Qiita

    スピード感重視なのでテストは書かない。テストはなぜ開発を遅くするかという記事がバズりました。みんなテストについて思うところがあるようだ。テストを書くべきか否かは机上の空論になりがちで不毛なので、どうやってテストを書くか、テストの書き方、について、種を巻いた私が書いておく。 もっと詳しい方からのお話お待ちしています。 書くこと テストの書きやすくするためのいろいろ(箇条書き) 書かないこと テストの基 テストファースト 実装ありきでテストを書くのではなく、テストありきで実装を変える。 はっきり言って、テストを考慮せずに実装されたコードは、書き直さずにはテストできない。 そういう点で、テストなしで実装する選択肢は不可逆なので、初期実装では特に注意が必要。 クリーンアーキテクチャ(DDD) クリーンアーキテクチャの考え方はテストファーストを語る上で重要。私個人としてはまだクリーンアーキテクチャ

    テストを書くかどうか議論するの不毛だから、どうやってテストを書きやすくするか議論しよう - Qiita
    mercure
    mercure 2018/08/04
  • 【SIer新人向け】研修では教えてくれないノウハウ集 - Qiita

    「ようこそ 魔境 SIerへ!」 はじめに この記事は、SIer(Systems Integrator)に入ったシステム開発未経験者の新人さんたちへ送る、研修では教えてくれないノウハウ集です。 実際、弊社の長い研修では実務に使えそうなことをあまり教えてくれませんし、ノウハウは現場の人の頭にしかない状態なので、新人さんは暗中模索で仕事を覚えていくことになります。 それも非効率なので、実際に私が2年半1で失敗したこと、やってきてよかったこと(ノウハウ)を体系化したので共有します。 新人さんは、これを参考として、使えるところだけ今後の業務に持っていってください。 (当はガッツリ社内向けに書いたものなので、一部汎用的でない表現がありますがご了承ください。) 目次 業務面 技術面 プライベート面 の三柱でお送りします。 対象読者 SIerの1,2年目相当であり、学生時代に契約のあるシステム開発を

    【SIer新人向け】研修では教えてくれないノウハウ集 - Qiita
    mercure
    mercure 2018/07/25
  • フロントエンドの命名や設計の基本と自分の現在の設計 - Qiita

    上記の他に以下のような規則も必要に応じて設けると良いでしょう。 接頭辞(プレフィックス)を必要に応じて付ける(例:is-xxxx) 単語は略語を使用しない(NG例:cnt, hdg, tbl) 参考 変数名の命名規則/**ケースの使い分け 命名方法 命名規則が決まればそれに則って命名すれば良いのですが、どういう単語を使えば良いのか指標がほしいところです。 英単語がすぐ出てこないような時はネーミング辞書 Codicを使ってみると良いです。命名の参考としては良いツールだと思います。 目的や内容によっては汎用的に使える英単語も存在します。例えば、レイアウト用の要素としてcontainer, row, col。ジャンル・業界別の要素としてabout, results,productsなど。 レイアウト用のclass名や汎用class名に関してはいろんなCSSフレームワークのコードを見て研究すること

    フロントエンドの命名や設計の基本と自分の現在の設計 - Qiita
    mercure
    mercure 2018/07/24
  • [Kaggle]0から本当に機械学習を理解するために学ぶべきこと~一流のデータサイエンティストを例に~ - Qiita

    機械学習が出来るようになりたい」そう思いつつも、中々身についた感じがしない。 そんな方々に向けて、Kaggleで公開されているデータ分析の手順を追いかけながら、そこで必要とされている知識を解説したいと思います。全体像を把握することで、より理解が進むはずです。 1. データを分析するために必要な統計的知識 機械学習の目的は未知の事柄を推定することです。そのために既にあるデータから何らかの法則性を見つけ出す為に様々な手法が考えられてきました。 統計学はご存知でしょうか? 機械学習はデータを扱うという点で統計学と深い関係があります。平均値や標準偏差などは聞いたことがあると思います。統計学はそれらの情報をこねくり回すことによって、限られたデータから当の全体像を推定します。例えば、選挙の結果を開示前に知りたいときに、投票者全員に聞ければ良いですが、そうもいきません。そこで、統計学は様々な方法を使

    [Kaggle]0から本当に機械学習を理解するために学ぶべきこと~一流のデータサイエンティストを例に~ - Qiita
    mercure
    mercure 2018/07/16
  • プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話 - Qiita

    プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話ShellScriptBash 普通のプログラミング言語での開発に慣れた人ほどシェルスクリプト、特にBashで戸惑う部分の一つに、i = 0のように空白を開ければエラーになるし、かといってif[$i!=0]のように詰めてもやっぱりエラーになる、という点が挙げられます。書きたい物を思うように書けなくて「なんだよこのクソ言語は!!!」とブチギレる人は少なくないのではないでしょうか。この記事では、そのイライラを解消するポイントをお伝えしようと思います。 以下、特に断り無く「シェルスクリプト」と書いている場合はすべて「Bashのスクリプト」という意味になります。zsh等他のシェルではまた事情が異なりますので、ご注意ください。 (※以前プログラマーの君! 騙されるな! シェルスクリプトはそう書いち

    プログラマーの君! 勘違いするな! シェルスクリプトでは読みやすさのためにスペースを置くな!! という話 - Qiita
    mercure
    mercure 2018/07/16
  • Data Scientist Cheat Sheets - Qiita

    1. Cheat Sheet 一覧 Python, Data Scientist 向けのCheat Sheetのリンク集を記載します.(最終更新日:2018/07/17) Basics (基礎) トピック サイト 図

    Data Scientist Cheat Sheets - Qiita
    mercure
    mercure 2018/07/15