タグ

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

  • M1 Macを購入したのでセットアップ&zsh環境をいい感じにした - Qiita

    先日のApple Eventでも Mac Studio や iPad Air(第5世代) が発表され、いよいよ Apple M1チップ がデファクトスタンダードになったなあと感じています。自分もこれまで、業務用PCとしてMacBook Pro 2017を使っていたのですが、悪名高いバタフライキーボードの破損をきっかけに MacBook Air(M1) を購入してもらいました。 さっそく業務で使用していくためにセットアップをしたのですが、やはりIntelチップとの違いに戸惑ったので備忘録としてまとめます。この記事は元々社内のナレッジに書く予定だったのですが、自分自身QiitaやZennの記事にかなり助けられました。この記事も今後M1 Macをセットアップする人の役に立てばと思っています。 MacOSの基的な設定を使いやすく変更する 購入したばかりのMacはDockに大量のアプリが登録されて

    M1 Macを購入したのでセットアップ&zsh環境をいい感じにした - Qiita
  • Python と Playwright でブラウザを自動操作させるコードを自動生成したよ - Qiita

    Playwright が昨年1年間で大幅パワーアップしていたので、使い方を確認したときの記録のまとめです。 ブラウザを自動操作できるということは、簡単なスクレイピングやブラウザ側のテスト自動化が簡単にできるようになります。 特に、Python での解説がまだまだ少なかったので、自分の学習を含めてまとめました。 今回は入門編ということで全体像をつかみつつ使用方法の流れを確認していただければありがたいです。 Selenium や Puppeteer を使っている方も、一度試す価値ありと思っています。 選定した理由 ブラウザのテストを Python で自動化したかったんです。 私なりの要件がありまして、非常にわがままな要件でしたが余裕ですべてクリアしました。 Python で書けること。社内で Python を使える方が多いので。pytest と連携してくれるとなおうれしい。 Docker コン

    Python と Playwright でブラウザを自動操作させるコードを自動生成したよ - Qiita
  • Node.js でお手軽スクレイピング 2020 年夏 - Qiita

    皆さんは Web ページのスクレイピングって書いた事ありますか?私はあります。だってどんなに平和で平穏な生活を送っていても数年に一度はスクレイピングってしたくなりますよね。「うわーまじか!API ないのかよ…。」的な。 そうしたら HTTP クライアントと HTML パーサのライブラリを探してきてインストールした上でごりごり書くことになると思います。でも実際に書いてみると、そうやってライブラリのインストールをしたりサンプルコードで動作確認している時間よりも、HTML を解析して実際にパースしたところから対象の要素を取得して欲しい値を取り出す試行錯誤の時間の方が長かったっていう事はないですか? 今日ご紹介する Node.js でお手軽スクレイピングは、その辺の試行錯誤の手間を極力減らすことが出来る方法です。2020 年夏の最新版です。 まずは環境から。特に古いものを使う理由もないので 202

    Node.js でお手軽スクレイピング 2020 年夏 - Qiita
  • 要件定義~システム設計ができる人材になれる記事 - Qiita

    はじめに 株式会社デジサク がお送りするプログラミング記事、 今回は要件定義・システム設計について扱っていこうと思います。 プログラミングを勉強していて、こんな事を感じた経験はないでしょうか。 「勉強してもプロダクトが作れない」 「そもそも開発ってどうやるの?」 「要件定義ってなに?」 その悩みを解決するために、まずは開発の全体感を理解しましょう。 下図『ソフトウェア開発プロセス』をご覧ください いつも勉強しているプログラミングは 『実装』 の部分に該当します。 つまり、プログラミングの実力を発揮する前に4つも壁が存在するのです。 そのため、記事では実装(プログラミング)を開始する前に必要となる、 『企画~設計』 について順を追って説明して行きます。 特に、エンジニアが理解しておくべき 『要件定義』『設計』 にフォーカスします。 なお、開発全体において実装(プログラミング)に使用する時間

    要件定義~システム設計ができる人材になれる記事 - Qiita
  • VS Code ネタ詰め合わせ - Qiita

    👻 ぷぇ 🍾🍾🍾 メリークリスマス!!! 🎉🎉🎉 今年も残り僅かですが、皆様の今年の進捗はどうだったでしょうか? 進捗ダメでしたか? 私はと言うと今年も幸い GitHub で evergreen を達成できそうです。( 業務でこの GitHub アカウントは使用していないので、個人での Contributions のみです。 ) Visual Studio Code Advent Calendar 2019 の最後の記事ともなりますし、普段、特に Qiita ではあんまり記事を書かないのもあるので、 VS Code に関するいろいろなネタの詰め合わせをお送りします。 自分的に VS Code の二大拡張 ※ステマ注意 VS Code Tips 来年(2020年)の VS Code 余談: アイコン騒動、再び!! 自分的に VS Code の二大拡張 ※ステマ注意 「もしも V

    VS Code ネタ詰め合わせ - Qiita
  • アプリで「ログインしっぱなし」はどのように実現されているか? - Qiita

    このツイートを見て、「アプリで再ログインを頻繁要求されるってユーザビリティ良くないな。」と思ったのですが、普段裏側の仕組みは意識していなかったりテックリードの方に任せきりだったりしていたので、これを機に調べてみました。 そもそもスマホアプリ の時代、もはやauthenticationですらないと思うのよね。(何を言ってるかわからねえだろうと思うが。) — Hiromitsu Takagi (@HiromitsuTakagi) 2019年7月8日 この記事は「アプリでログインしっぱなしは、どのように実現されるの?」という疑問と調べた結果を共有するために書いていきます。 間違いや「もっとこんな仕組みが使われてるよ!」等のツッコミがあれば、どしどし貰えると助かります! 疑問1. アクセストークンという仕組みとは? 「なぜアクセストークンという概念が必要なのか?」 モバイルアプリでユーザー認証をし

    アプリで「ログインしっぱなし」はどのように実現されているか? - Qiita
  • Pythonでこんなことできちゃうんです*随時更新*

    はじめに 日々、StackOverflow や Qiita や Medium らで pythonについてググっている私がこれ使えるな、面白いなと思った tips や tricks, ハックを載せていくよ。 簡単な例文だけ載せてくスタイル。新しいの発見次第、じゃんじゃん頻繁に追加していくよ。 これも知っとけ!これ間違ってる!ってのがあったら、コメント下さい。 このモジュルやライブラリーの関数とか基/応用的な使い方を知りたいけど、自分で探すの面倒、英語意味不ってのがありましたらそれもコメントにどうぞ。私が代わりに調査 • 解析を努力致します。 簡単な例文を心がけてはいますが、なにせ読むな!見て感じろ!なくらい説明不十分なので、初歩的な関数の使い方などのpython知識を所有しているとすんなり理解しやすいかと思います。多分。 注:リンク先は全て英語です。PEP8をいつかは読みましょう。良いスタ

    Pythonでこんなことできちゃうんです*随時更新*
  • Python + Selenium で Chrome の自動操作を一通り(ログイン、ダウンロード、他)

    はじめに Python + Selenium + Chrome で、要素の取得、クリックなどの UI系の操作、待機、ページ全体のスクリーンショットなど、一通り試してみます。 PhantomJS はもう更新されないということなので、ブラウザは Chrome にします。 この記事には、Selenium の API に関する情報と Chrome に特化した情報がありますが、前者の Selenium の使い方に関する情報は Firefox など別のブラウザでも使えます。 注意事項 ウェブの自動テストやスクレイピングで使われる技術です。特にスクレイピングでは、著作権の問題や、サーバー側の負荷、各種規約(会員としてログインする場合の会員規約等)やマナーなどを考慮する必要があります。 たとえば、Twitter など利用規約で明示的にスクレイピングが禁止されていることや、robot.txt などでクローリ

    Python + Selenium で Chrome の自動操作を一通り(ログイン、ダウンロード、他)
  • 工数見積もりのコツ - Qiita

    はじめに 稿では、仕事をする上での作業工数の見積もり方法について説明します。 工数とは何か 工数(こうすう1)というのは、仕事において、あるひとつの作業を完了するまでにかかる総累計時間のことです。情報処理技術者試験に出てくるTAT(ターンアラウンドタイム)とは意味合いが異なります2。 例えば、ある作業に40時間(40H3)かかるとした場合、工数は40時間であるといえます。1日8時間勤務だとした場合、40時間は5人日(にんにち)と表現することができます。さらに、1ヶ月20日勤務だとした場合、0.25人月(にんげつ)と表現することもできます。 一般的に工数の単位は「人日」および「人月」で扱います。 学生時代は工数を気にすることはないですが、ITエンジニアとして会社で働くようになると、かならず工数を意識する必要があります。 なぜ工数を意識する必要があるのか なぜ工数を意識する必要があるのかとい

    工数見積もりのコツ - Qiita
  • 最近の私的 Golang 開発環境 - Qiita

    あらかじめ予防線を張っておくと Go 言語の開発環境で「これ!」という正解はない。特にチームで開発している場合は,チームの流儀に従うのが最善だと思っている。なので,この記事は「こういうやり方もあるよ」という参考程度に見ていただけるとありがたい。 GOPATH の構造 皆さん御存知の通り,環境変数 GOPATH は Go 言語パッケージや開発環境を指定するものだが,実は複数のパスを指定できる。Windows 環境ならこんな感じにセミコロン(;)で区切って指定する。

    最近の私的 Golang 開発環境 - Qiita
  • 新人達を1ヶ月でガチvimmerにした方法 - Qiita

    vim以外のエディタでコード書くと私の手は産まれたての子鹿みたいになります。 効率よくコーディングをしてもらうために、新人やvimを学びたい人にvimの研修を実施しています。今回は研修で非常に有効だった内容についてまとめておきます。 ※ なんだか誤解を生んでしまっているようなので追記しておきます。vimの研修は新人研修の一環として行ったわけではなく、vimを使って開発をしたがっていた新人へテスト駆動開発の研修を実施した際に並行して盛り込んだだけです。会社がvim強制とかではないのでご安心ください。言葉足らずで申し訳ありません。 2つの繰り返しキーの存在を認識させる vimは一度実行したコマンドの組み合わせを記憶する.(ドット)とfを使った移動の際のキーストロークを記憶しておく;(セミコロン)があります。これらを駆使することで他のエディタよりも高速な編集作業を行えます。 セミコロンはus配列

    新人達を1ヶ月でガチvimmerにした方法 - Qiita
  • 一挙両得!技術と英語を同時に勉強する方法まとめ - Qiita

    英語を勉強したい。でも技術も勉強しなきゃ。。 エンジニアにとって、英語ができるということは1つのアドバンテージ。海外のカンファレンスをそのまま聞いたり、Stack Overflowで質問したりと、できることの選択肢がたくさん広がります。 しかし、英語学習にはそれなりの時間がかかるもの。仕事で使う新しい技術や言語も勉強しなきゃいけないし、英語ばかりに時間をかけてられない。。。 ならばいっそ、技術英語も一緒に勉強すればいいじゃないか!ということで、技術を学ぶことができる英語のサービスなどをまとめてみました。自分にあったものを取り入れて、英語も上達してしまいましょう! ※ この記事は、以下のQiita記事に触発されて作りました。具体的な英語の勉強方法はこちらの方が参考になるので、こちらも是非チェックしてみましょう! 辛くない、英語で会話できるようになるまでのお金のかからない楽しい英語勉強法、エ

    一挙両得!技術と英語を同時に勉強する方法まとめ - Qiita
  • 機械学習を学ぶ上で個人的に最強と思う教科書 - Qiita

    動機 いわずもがなですが、機械学習の勉強にはとても時間が掛かります。 でも、同じ勉強時間を費やしたとしても、教材の良し悪しで捗り方が大きく変わってくることは、誰もが実感していることだと思います。 そこで、記事ではテーマごとに私が考える最強の教科書をリストしていこうと思います。 ディープラーニング(アルゴリズムの理解) 「Deep Learning」An MIT Press book, 2016/12 発行 http://www.deeplearningbook.org/ 印刷も売られてますが、上のWebページでいつでもタダで読めます。(版権上の問題でPDFの形では配布できない&してないそうです) このは、ここ数年のディープラーニングの進歩のうち研究者の間ではメジャーとなっているであろうテーマはすべて書いてある、ともいえる内容の広さがありつつ、それぞれのテーマについて理論的背景と具体的

    機械学習を学ぶ上で個人的に最強と思う教科書 - Qiita
  • あっと驚かせるJavaプログラミング(をやめよう) - Qiita

    はじめに 驚き最小の原則(法則)という言葉があります。 Wikipediaの記事を引用すると http://ja.wikipedia.org/wiki/%E9%A9%9A%E3%81%8D%E6%9C%80%E5%B0%8F%E3%81%AE%E5%8E%9F%E5%89%87 ユーザインタフェースやプログラミング言語の設計および人間工学において、インタフェースの2つの要素が互いに矛盾あるいは不明瞭だったときに、その動作としては人間のユーザやプログラマが最も自然に思える(驚きが少ない)ものを選択すべきだとする考え方である。 要するに、使うときに「おやっ?」という驚きが少ないほうが良いプログラムであるといえます1。 この記事では敢えて驚きの多いプログラムの書き方を紹介します。驚きの多いプログラムを読むとどんな気分になるか、実際に体験してみてください。もちろん、当は驚きが少ないプログラムを書

    あっと驚かせるJavaプログラミング(をやめよう) - Qiita
  • JSなんてもう怖くない!JavaScript/ES2015速習ガイド - Qiita

    はじめに 非フロントエンジニアの方々にとって、JavaScriptは独特でとっつきにくい言語だと思います。最近Reactが流行っていますが、JavaScriptが分からなくて手を出せない人も結構いるのではないでしょうか。 この記事では、普段JavaScriptをあまり触らない人を対象に、モダンなライブラリ等をさわるのに必要なJavaScriptの設計・思想・文法を解説します。関数オブジェクトや関数スコープ、thisに関しては知っておかないとES2015でも確実に躓くので、あえて比重を高くして説明しています。 ※厳密ではない箇所があるかもしれませんが、ご容赦ください。 JavaScriptとは 歴史 1995年にNetscape社により開発され、当時流行していたJavaの商標を使って「JavaScript」と名付けられました。文法は比較的似ていますが、JavaJavaScriptはインドと

    JSなんてもう怖くない!JavaScript/ES2015速習ガイド - Qiita
  • おじさんが若者たちにモテるためのモダンなHTML/CSSマークアップ

    タイトルに含まれる語に関する補足 おじさん: 筆者の便宜上、30歳前後のフロントエンドエンジニア、マークアップエンジニア等を指す。性別は問わない。 なぜ「モテ」なければいけないのか 「モテる」とは、最先端の流行を知り取捨選択することで、自由意志を謳歌することで実現する。 PHPとjQueryの時代は廃れ始め、AngularReactに代表されるUIフレームワーク、ES2015やTypeScriptを流暢に扱えることがフロントエンドの責務となり、HTMLCSSも、EJSやPug・SassやPostCSSなどのトランスパイル言語を介すことがほぼ常識になってきた(と思う)。 ところが、HTMLCSSを何の言語で書くか以前に、中身をどうするべきかはあまり議論されていないので、「モテる」ための方法をいくつかかいつまんでまとめてみた。 セマンティックなコーディングは、開発者の課題理解度を図り、意

    おじさんが若者たちにモテるためのモダンなHTML/CSSマークアップ
  • OAuth 2.0 全フローの図解と動画 - Qiita

    RFC 6749 (The OAuth 2.0 Authorization Framework) で定義されている 4 つの認可フロー、および、リフレッシュトークンを用いてアクセストークンの再発行を受けるフローの図解及び動画です。動画は YouTube へのリンクとなっています。 English version: Diagrams And Movies Of All The OAuth 2.0 Flows 追記 (2019-07-02) 認可決定エンドポイントからクライアントに認可コードやアクセストークンを渡す方法については、別記事『OAuth 2.0 の認可レスポンスとリダイレクトに関する説明』で解説していますので、ご参照ください。 追記(2020-03-20) この記事の内容を含む、筆者人による『OAuth & OIDC 入門編』解説動画を公開しました! 1. 認可コードフロー RF

    OAuth 2.0 全フローの図解と動画 - Qiita
  • 脱jQueryのためにしたこと - Qiita

    この記事は加筆して「脱jQueryのためにしたこと - ICS MEDIA」に引っ越しました。 64000PV、480いいねとフロントエンド界隈でご好評いただいた内容です。ぜひご覧ください。 ※Google検索で辿り着いた方にリンク切れとなっては申し訳ないので、元の記事を残しています。ご了承ください。

    脱jQueryのためにしたこと - Qiita
    k5_magami
    k5_magami 2017/04/19
    別れたくなくても別れないといけない時があるんだ。。。
  • CSS Grid Layout について - Qiita

    先日の macOS と iOS のアップデートCSS Grid Layout Module が実装された Safari のバージョンが入り、とうとう全てのモダンブラウザで使用可能となりました。非常に柔軟に、直感的にグリッドを表現することができます。 Can I Use Grid の定義 ある要素をグリッドレイアウトしたいとき、その親要素に display: grid もしくは display: inline-grid を指定します。この親要素のことをグリッドコンテナ、グリッドレイアウトされる子要素のことをグリッドアイテムと言います。 グリッドコンテナには grid-template-column と grid-template-row というプロパティを指定することができます。それぞれ、列と行のグリッドのサイズをその数だけ指定します。 例: 3行5列のグリッド .container {

    CSS Grid Layout について - Qiita
  • 原理原則で理解するbashの仕組み - Qiita

    はじめに 以前書いたエントリー、重大な脆弱性(CVE-2017-5932)で少し話題になったbash4.4の補完機能の便利な点で、bash4.4からでないとタブの補完機能のソート処理が制御できないという問題について、ソースコードレベルで調べた結果をまとめていたのですが、bashの実装そのものを深く掘り下げ過ぎてしまい、内容が膨大になったので、何回かに分けて書こうと思います。 今回はbashが起動されてからインタラクティブモードでキーボードの入力を待ち受けるまでのお話です。普段使っているbashがどのような処理を行っているのか一緒に覗いてみませんか? 検証ソースコード Bash version 4.1.0(1) release GNU bashの生誕 bashのプロセスが起動されるのはOSへのログイン時にユーザーのログインシェルがbashに設定されている場合、あるいはログイン後に明示的にba

    原理原則で理解するbashの仕組み - Qiita