タグ

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

  • コーディング用フォント「Fira Code」を使おう - Qiita

    ここ一年ほど、Fira Codeというオープンソースのコーディング用フォントを使っていて、Font Liguatureを使った==や'>='の表示が、慣れると等号関係が非常にわかりやすくなり、とても気に入っています。特にJavaScriptTypeScriptなどで===と==の違いや、!==と!=の違いを際立たせてくれるので、これらの言語を書く機会がある人は試してみる価値があると思います。 記事では、そんなFira Codeと、実際にエディタやIDE(個人的にエディタはVSC、IDEはIntelliJを使っています)への設定方法を紹介します。 Fira Codeって? Fira CodeはFont Ligature(日語では合字というそうです)を使ったコーディング向けのフォントで、オープンソースで開発・提供されています。以下の公式のレポジトリ画像を見るとわかるのですが、比例関係(<

    コーディング用フォント「Fira Code」を使おう - Qiita
    mercure
    mercure 2019/07/28
  • 効果的なコーディング練習問題の解かせ方 - Qiita

    開発現場で役に立つ基動作を身に着けるための効果的なコーディング練習問題の解かせ方について紹介します。 NOTE: ソースコード、紹介するURL等は基的にPythonに統一しています まとめ 練習問題は一度解かせて終わりにしない。 一定時間内に解けるまで何度も反復させる。 一定時間内に解けるようになっても、少し期間を空けた上で再度解かせる。 練習問題を解くことを短期集中で終わらせず、長期継続する。 例えば2週間は毎日ミッチリ解いてもらい、それ以降は1日1時間を数カ月継続する。 練習問題は「解くこと」だけを求めず、以下の指針を設ける。 入力値の手動入力を排除する。(INを意識させる) 結果確認時の目視確認を排除する。(OUTを意識させる) (おまけ) 結果確認のパターンをテストデータ化する。 背景 開発チームに新人プログラマ、開発未経験メンバーが入ってきた場合は以下のように育成をすると思い

    効果的なコーディング練習問題の解かせ方 - Qiita
  • すべての新米フロントエンドエンジニアに読んでほしい50の資料 - Qiita

    はじめに さいきんのWebはSPA技術を中心としたフロントエンドが賑わっていますね💪 従来サーバーサイドを扱っていた人もフロントを触る機会が増えていたり、これからプログラミングを学んでいく人も、フロントエンド領域に興味を持っているのではと思います。 そこで、フロントエンドの経験が浅い方や初学者向けに、おすすめのドキュメントや勉強すべき領域をまとめました。 とりあえず動けば良い段階から一歩進んで、フロントエンドエンジニアとして、良いアプリケーションを作るために必要な知識を浅く広く紹介します。 ※補足 新米と表記しましたが、実際には新卒や未経験でなく、新卒2~3年目の若手フロントエンドエンジニアやフロント分野に苦手意識のあるバックエンドエンジニアの方を対象としています。 数日で目を通せるような内容ではないため、マイルストーンやスキルセットの一つの参考にして頂けると幸いです。 フロントエンド

    すべての新米フロントエンドエンジニアに読んでほしい50の資料 - Qiita
    mercure
    mercure 2019/07/14
  • ログを gzip で圧縮しているなら zstd を導入しよう - Qiita

    はじめに zstd コマンド(zstdless, zstdcat, unzstd なども)は gzip にも対応しています。特にデコードは拡張子を見て自動で gzip と zstd を切り替えてくれるので、 gzip 圧縮されたログと zstd 圧縮されたログが混在している環境でも透過的に扱うことができます。 なので gzip から zstd への切り替えは次のように段階的に進めることができます。 zstd コマンドツール群のインストール 圧縮されたログを扱うときに zstd を使い始める 圧縮フォーマットを zstd に切り替える 性能比較 Debian 9.3 で gzip 1.6 (aptでインストールしたもの) と zstd (1.4.0) を比べてみます。 対象となるファイルは ltsv でゴチャゴチャとアプリの情報を混ぜた重めの apache のアクセスログです。 (5,367

    ログを gzip で圧縮しているなら zstd を導入しよう - Qiita
    mercure
    mercure 2019/06/08
  • 2019年のワークフローエンジンまとめ - Qiita

    概要 データパイプラインの管理にワークフローエンジンを導入したいのですが、今の要件に対してどれが合っているのか判断しきれない部分があるので整理してみました 最近の導入事例や発表をみるかぎりAirflow, Argo, Digdagあたりが人気なのかなと思います ワークフローエンジンとは ワークフローエンジンとは定期的なバッチ処理をうまく処理できるように、バッチ実行を管理してくれるソフトウェアのことです 古典的な実現方法としては適当なlinuxサーバーの上でcron実行させることが考えられますが、以下のような問題があります ジョブごとの依存関係を表現できない。cronの時間指定で実現させようとすると、タスクAを1時に開始してそれが完了するとみなして依存するタスクBを2時に開始するというような書き方をすることになるが、実際にタスクAが2時までに終わらなかった場合に処理が上手く実行できない タス

    2019年のワークフローエンジンまとめ - Qiita
    mercure
    mercure 2019/06/01
  • 線形代数を学ぶ理由 - Qiita

    はじめに 少し前(2019年4月頃)に、「AI人材」という言葉がニュースを賑わせていました。「現在流行っているディープラーニングその他を使いこなせる人材」くらいの意味だと思いますが、こういうバズワードの例の漏れず、人によって意味が異なるようです。併せて「AI人材のために線形代数の教育をどうするか」ということも話題になっています。 線形代数という学問は、来は極めて広く、かつ強力な分野ですが、とりあえずは「行列とベクトルの性質を調べる学問」と思っておけば良いです。理工系の大学生は、まず基礎解析とともに線形代数を学ぶと思います。そして、何に使うのかわからないまま「固有値」や「行列式」などの概念が出てきて、例えば試験で3行3列の行列の固有値、固有ベクトルを求め、4行4列の行列の行列式を求めたりしてイヤになって、そのまま身につかずに卒業してしまい、後で必要になって後悔する人が出てきたりします(例え

    線形代数を学ぶ理由 - Qiita
  • 競技プログラミングで使う有名グラフアルゴリズムまとめ

    0. はじめに AtCoderなどでは、グラフを扱った問題が多く出るが、その度に一から実装していると時間が掛かりすぎてしまうため、有名なものをあらかじめ持っておく必要がありそう。そこで、Pythonを用いて、ダイクストラ法、ベルマンフォード法、プリム法、クラスカル法、ワーシャルフロイド法を実装した。 コメント、意見等ある方は是非! お待ちしてます! 1. ダイクストラ法 1.1. ダイクストラ法(defaultdictで実装) defaultdictで実装すると、リストで実装するよりも、ノード数$N$が大きい際には高速に動作する。ただし、経路復元の関数は、うまく書けなかった......。 (2019/7/6 追記)結局できました。1.1.1. を参照してください。 import collections import heapq class Dijkstra: def __init__(se

    競技プログラミングで使う有名グラフアルゴリズムまとめ
  • 「設計なんて不要でしょ」について - Qiita

    経緯 以前とある席で偶然シニアエンジニアの方と設計について議論することがありました。 その時に特に耳に残っていたのは以下の様な内容です。 クリーンアーキテクチャってテストしやすくする為のですよね? 設計はコード書ける人が他のコードを書ける人に威張るための道具なのではないか? 設計を学習するならブロックチェーンとかを勉強して技術力を高めるべきなのではないか? リーダブルコードさえ読んでいれば設計は必要ないのではないか? 設計なんて不要でしょ その方はかなり詳しく設計の歴史をしっていて尤もな事を言っていましたが、平成も終わる頃においてはその限りではないです。 なので平成最後の日にそれら全てに対して最終的に解答できる形で設計の有用性を説明し、気持ちよく令和を迎えます。 注意: 一応ここで説明する内容や要素も一面だけです。 よくある誤解 クリーンアーキテクチャといえばこの有名なリングですよね。 こ

    「設計なんて不要でしょ」について - Qiita
    mercure
    mercure 2019/04/30
  • エンジニア目指したい新入生のみんなにオススメのエディタ - Qiita

    はじめに エンジニア志望の新入生のみんな!入学おめでとう! やっぴー(@yanashi_masa)です。 詳細なプロフィールはこちら↓ https://scrapbox.io/yanashi/%E3%82%84%E3%81%A3%E3%81%B4%E3%83%BC%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6 今日はエンジニアを目指して、色々な学校に入学した新入生のみんなにオススメのエディタを教えてあげるぞ! ※当記事は、あくまでも、弊学をベースに話しています。各々の事情で他エディタを使う場合は、以下スルーしても構いません。 題 さて、1年生は様々なエディタを使うかもしれないが、僕は、このエディタをオススメしたい。 それは、 Vimだ!異論は認めぬ。 インストール Windowsの場合 詳しくはこちらを参照してほしい→https://qiita.com/go12

    エンジニア目指したい新入生のみんなにオススメのエディタ - Qiita
    mercure
    mercure 2019/04/21
  • 【まつもとゆきひろ氏 特別講演】20代エンジニアのためのプログラマー勉強法のまとめ 2019/3/30 - Qiita

    予想していた技術的な勉強法というより、エンジニア、ビジネスマンとしての生き方や、成功するための方法論を20代に向けてMatzさんが伝えてくれたのでまとめます。(自分なりの解釈も少し入ってます) とてもためになる講演でした。個人的には特に前談2、3、4、5、6がためになりました!! Matzさんありがとうございました! 講演内容 前談1. テクノロジーとは人を幸せにするためのもの 前談2. 若いうちから頑張ろう 1.学生と社会人の"勉強"の違い 2.なぜ勉強するのか? 3.勉強についてのTips(what, where, when, how) 4.とにかくアウトプット 5.成功するためのTips 6.最後に3つのアドバイス ※Ex)で書いている具体例はMatzさんが使われたものをそのまま使ってます。 前談1. テクノロジーとは人を幸せにするためのもの 来人を幸せにするためのテクノロジーが人

    【まつもとゆきひろ氏 特別講演】20代エンジニアのためのプログラマー勉強法のまとめ 2019/3/30 - Qiita
    mercure
    mercure 2019/03/31
  • xUnit Test Patternsから学ぶ12個のユニットテストの原則 - Qiita

    エントリは、xUnit Test Patterns: Refactoring Test Codeという書籍の「Chapter5 Principles of Test Automation」の内容をベースに、12個のユニットテスト原則についてまとめていきます。この書籍は、2007年に販売されたものですが、今でも十分役に立つユニットテストに関する原則を伝えています。 ウェブでは、次のURLでも内容を見ることができます。 自動ユニットテストの原則 ここで紹介されるものは、ユニットテストで確認したい quality のリストです。ですので、直接適用する「パターン」ではありません。 「何をやるか」よりも「なぜやるのか」という観点においてまとめられています。 エントリでは、xUnit Test Patterns: Refactoring Test Codeで紹介されている12個の原則をベースに、ほ

    xUnit Test Patternsから学ぶ12個のユニットテストの原則 - Qiita
  • [翻訳]あなたがプログラミングに向いていない10のサイン - Qiita

    ※この記事はJonathan Bluks氏の「10 Signs You Will Suck at Programming」を翻訳したものです。Mediumのコメント欄より翻訳の許可を頂きました。ありがとうございます。 より多くのステッカーは、より多くの成長にはなりません。 最近、RedditやQuoraで「自分がプログラマとして成功できるか、どうすれば分かりますか?」という質問をよく見かけます。キャリアチェンジを検討したり、あるいはソフトウェア開発に興味があったりするのであれば、それはごく自然な疑問です。 コンピュータに関する正式なトレーニングを受けていない場合、人々はプログラマになることに大きな心理的障壁があると思います。プログラミングが苦手であれば、あなたは自分がプログラマとして才能が無い人だと思うのは自然な考えです。もしあなたが俳優になりたいと思っていて、自分は演技が得意かどうかを疑

    [翻訳]あなたがプログラミングに向いていない10のサイン - Qiita
  • 我が名は神龍……どんなテストもひとつだけ自動化してやろう - Qiita

    『我が名は神龍……どんなテストもひとつだけ自動化してやろう』 じゃ、じゃあ!このブラウザテストを自動化してください! Chromeで https://kids.yahoo.co.jp/ にアクセスして 検索ワードに ねこ と入力して さがすをクリックして 検索結果にネコ - Wikipedia が含まれていることを確認して 検索結果に 買い方 を追加して さがすをクリックして 探しているのは「の飼い方」?と表示されることを確認して クリックするとの飼い方で再検索されて 検索ボックスを不倫で上書きして さがすをクリックして このページは表示できませんと出ていることを確認 『よかろう……たやすい願いだ』 まずはライブラリのインストールと初期設定をしてやろう…… # [ライブラリのインストール] # CodeceptJSとPuppeteerをインストールします。nodeとnpmが必要ですので

    我が名は神龍……どんなテストもひとつだけ自動化してやろう - Qiita
    mercure
    mercure 2019/03/09
  • Redmineを3年間使い続けてお世話になったプラグインたち - Qiita

    TOPIC Redmineを3年間使い続けてお世話になったプラグインたち(全部、無償版) <書かないこと> Redmineの操作説明(インストール、操作方法など) プラグインの操作説明(インストール、操作方法など) <補足> 利用当時(2016年夏頃まで)の状況によるものとなりますので、最新の情報については要再確認となります。(当時はなかったものが今はあるかもしれないし、逆も然り) ※ 私が使っていたRedmineは、【Bitnami Redmine 3.1.1-1】となります。 (これまでのRedmine:2.3 → 2.6 → 3.1) ※以下、1つずつピックアップしていきます。 clipboard_image_paste(Attach image from clipboard) https://github.com/peclik/clipboard_image_paste 使用頻度:

    Redmineを3年間使い続けてお世話になったプラグインたち - Qiita
  • systemd サービスユニット覚書 - Qiita

    initはもはや昔のしくみで、OS起動・停止時の制御はsystemdが行う。initよりも並列度を高める設計思想なので、HWの進化ともあいまって最近のOS起動はとにかく速い。 操作には冪等性があるし、Pre/Postといったライフサイクルフックな仕組みもあるので、応用の幅は旧式のinitと比べるとかなり広がっている。独自にシェルを組まずとも、ユニットファイルと呼ばれる定義ファイルをsystemdわせてやるだけでよい。 やはりなによりも統一されたインタフェースでサービスを操作可能というのがいい。起動・停止はsystemctlコマンドだけで済む。 というわけで、systemdサービスユニットファイルの覚書。 変更履歴 2019-02-26: Type=forkingで複数子プロセス生成時にcgroup内のプロセスが終了した場合の挙動を追加 2019-02-26: journal.confの

    systemd サービスユニット覚書 - Qiita
  • アセンブリに触れてみよう - Qiita

    .LC0: .string "%d\n" main: push rbp mov rbp, rsp sub rsp, 16 mov DWORD PTR [rbp-4], 1 mov DWORD PTR [rbp-8], 2 mov edx, DWORD PTR [rbp-4] mov eax, DWORD PTR [rbp-8] add eax, edx mov esi, eax mov edi, OFFSET FLAT:.LC0 mov eax, 0 call printf mov eax, 0 leave ret …何が書かれているか分かりませんね。 というわけで、今回は最終的に、このアセンブリがなんとなく読めるようになることを目標にします。 それでは前提知識を説明していきます。はじめに、アセンブリなどの用語の説明をしていきます。 2. 前提知識 用語説明 まず、それぞれの言葉を説明しま

    アセンブリに触れてみよう - Qiita
    mercure
    mercure 2019/02/16
  • 日本にアジャイルが普及しづらい本当の理由〜不確実性に向き合うマネジメント論〜 - Qiita

    はじめに こちらの記事は、技術評論社に寄稿させていただいた「エンジニアリング組織論への招待」をご紹介するための文章です。Qiitaにも再掲しておきます。 アジャイルって何だ? 「ウォーターフォールよりもアジャイルのほうがいいのか?」そんな言葉をIT企業の経営者から聞くことがあります。2000年代の後半くらいから、日国内においてもアジャイル型の開発プロセスが注目を浴びて、多くの企業が実践するようになりました。 ところが、世界各国に比べて日アジャイル型開発の普及率は依然として低く、理解度も進んでいません。流行っているからやってみようと始めた企業も流行りが変わると今度はリーンだとか、今度は○○だといったように新しい方式を導入してみては失敗するところも珍しくありません。 アジャイル開発の専門家ですと名乗る人の話を聞いてみても、それが何なのか、けむにまかれたような説明をされてしまい、いまいち納

    日本にアジャイルが普及しづらい本当の理由〜不確実性に向き合うマネジメント論〜 - Qiita
    mercure
    mercure 2019/02/10
  • bashで忘れがちな機能とかいろいろの備忘録 - Qiita

    背景 シェルスクリプトを書くことが結構あるのでその備忘録代わりに記事を書いてみました。 特殊変数とは 特殊変数とは シェルによって自動的に値が設定される特殊な変数がいくつかあり、それら特殊な変数を参照することにより、様々な情報を取得することができる。 変数名 説明

    bashで忘れがちな機能とかいろいろの備忘録 - Qiita
    mercure
    mercure 2019/02/03
  • 【図解】Dockerの全体像を理解する -前編- - Qiita

    この記事は何か イメージやコンテナなどの基からdocker-compose、docker-machine, docker swarmなどのDocker周りの様々な概念の全体像を整理して、Dockerの仕組みを理解するための記事 前編では「コンテナ、イメージ、DockerHubでのイメージ共有」について書いて行きます。 対象読者 ・Dockerって何? ・Dockerちょっと勉強したけどDocker compose? Docker machine? Docker Swarm? 色々ありすぎて意味不明 という方 Dockerとは何か Docker社が提供する「コンテナ型仮想化技術」 を実現するプロダクト 仮想化? PCやサーバといったマシンにインストールされているOS(ホストOS)の上に、別のマシンを仮想的に立ち上げる事 簡単に言うと「パソコンの中に仮想パソコンを起動する」のが仮想化です。

    【図解】Dockerの全体像を理解する -前編- - Qiita
  • 仕事で使えるかも知れないWindows コマンド&ワンライナー集 + バッチファイル - Qiita

    $ dir /? ディレクトリ中のファイルとサブディレクトリを一覧表示します。 DIR [ドライブ:][パス][ファイル名] [/A[[:]属性]] [/B] [/C] [/D] [/L] [/N] [/O[[:]ソート順]] [/P] [/Q] [/R] [/S] [/T[[:]タイムフィールド]] [/W] [/X] [/4] [ドライブ:][パス][ファイル名] 一覧表示するドライブ、ディレクトリ、またはファイルを指定します。 /A 指定された属性のファイルを表示します。 属性 D ディレクトリ R 読み取り専用 H 隠しファイル A アーカイブ S システム ファイル I 非インデックス対象ファイル L 再解析ポイント - その属性以外 /B ファイル名のみを表示します (見出しや要約が付きません)。 /C ファイル サイズを桁区切り表示します。これは 既定の設定です。/-C とす

    仕事で使えるかも知れないWindows コマンド&ワンライナー集 + バッチファイル - Qiita