タグ

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

  • Pythonは_(アンダースコア)の使い方を理解するだけでプロフェッショナルになれる - Qiita

    自己紹介 普段私は、 一番得意な機械学習(深層学習)をしたり、 Python/Django でWebアプリを開発したり、 TypeScript/Vue or Reactフロントエンドの開発をしたり、 PHP/Laravel でWebアプリを開発したり、 さまざまなことを行っています。 趣味で休みの日にGo言語で色々作成しているのですが、型のある世界は素敵だなと昨今感じています。 今最もやりたいことは、Goで大規模なWebアプリケーションを作成したい。 企業案件やご連絡等ございましたらお気軽に下記よりご連絡いただければと思います。 nagamatsu-k@dym.jp 第3次AIブームの到来 米Google DeepMindが開発した人工知能AI)の囲碁プログラム「AlphaGo」が世界トップレベルの実力を持つ韓国のプロ棋士、李世ドル(イ・セドル)九段に4勝1敗と大きく勝ち越したことが

    Pythonは_(アンダースコア)の使い方を理解するだけでプロフェッショナルになれる - Qiita
    tsekine
    tsekine 2021/07/21
    「Return値を無視」は不正確。_は人間とlinter用であって、interpreterとしては特別な意味はないので、「メモリの占用をしないまま廃棄」が△。参照のない変数に対する最適化があれば合ってるけど_が特別なのではない
  • Python3.7以上のデータ格納はdataclassを活用しよう - Qiita

    はじめに Pythonでデータを格納する際に辞書や普通のクラスを使っていませんか?Python3.7からはデータ格納に便利なdataclassデコレータが用意されています。 この記事では公式ドキュメントやPEP557の説明ではいまいち掴めない、どういった時に便利で、なぜ使うべきなのかという点に触れつつ、使い方を説明していきます。 なお、以前のバージョンではPython3.6に限りpip install dataclassesによって使えるようになります。執筆時点ではGoogle Colaboratoryの環境がPython3.6.9ですが、デフォルトでdataclassesがインストールされています。 想定読者 dataclassの存在を知ったが何なのかよく分からない人 可読性高くデータを扱いたい人 「前はこんな機能なかったし、自分は別に使わなくて良いよ・・・」と思っている人 よく見かける

    Python3.7以上のデータ格納はdataclassを活用しよう - Qiita
    tsekine
    tsekine 2020/12/19
    ほぼ同意。namedtupleとfrozendict使ってる人はdataclassに移行したらいいと思う。
  • Pythonのオブジェクト指向プログラミングを完全理解 - Qiita

    1. オブジェクト指向の起源 2003年チューリング賞の受賞者アラン・ケイさんはよくオブジェクト指向プログラミングの父と称されます。ご人も憚ることなく、幾度、公の場で発明権を宣言しています。しかし、ケイさんは「C++」や「Java」などの現代のオブジェクト指向言語を蔑ろにしています。これらの言語は「Simula 67」という言語を受け継いだもので、私が作った「Smalltalk」と関係ないのだとケイさんは考えています。 オブジェクト指向という名称は確かにアラン・ケイさんに由来するものです。しかし、C++Javaで使われている現代のオブジェクト指向は当初のと結構違います。ケイさん自身もこれらの言語を後継者として認めないです。では、ケイさん曰くC++Javaの親であるSimula 67という言語はどんな言語でしょうか。ここで、簡単なサンプルコードを見てみましょう。 Class Recta

    Pythonのオブジェクト指向プログラミングを完全理解 - Qiita
    tsekine
    tsekine 2020/11/02
    ある程度知ってる人が、理解を深めるために読む記事。
  • Linuxカーネル、その29年の歴史レポート - Qiita

    Linuxカーネル開発の初期の議論は複数のMLでなされていたので、1997年以前の議論については断片的にしか存在していない。 集められた一部についてはhttp://lkml.iu.edu/hypermail/linux/で公開されているが、これにも抜けがあるので、当時のログを持っている人がいたら提供してほしい。 翻って5.8のMAINTAINERSは19033行もあり、そして1501人のメンテナがリストされている。 THE REST M: Linus Torvalds <torvalds@linux-foundation.org> L: linux-kernel@vger.kernel.org S: Buried alive in reporters Q: http://patchwork.kernel.org/project/LKML/list/ T: git git://git.ker

    Linuxカーネル、その29年の歴史レポート - Qiita
    tsekine
    tsekine 2020/09/16
    "Renesas Electronics" == 「ルネサス エレクトロニクス株式会社」
  • 【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita

    結果は順にtrue、true、falseです。 これがPHP7までの非厳密な比較(等価)演算子だったわけですが、まあおかしいよねってことで、この挙動がPHP8.0で変更になることになりました。 よもや今さら基中の基である比較演算子の動作を弄ってくるとは思わなかったぞ。 以下はSaner string to number comparisonsの日語訳です。 PHP RFC: Saner string to number comparisons Introduction ==やその他の非厳密な比較演算子を用いた文字列と数値の比較は、現在は、文字列を数値にキャストし、その後整数か浮動小数の比較を行っています。 この結果、多数の不可解な結果が得られますが、中でも注目すべきは0 == "foobar"がtrueになることです。 このRFCでは、文字列が実際に数値型文字列である場合にのみ数値型

    【PHP8.0】非厳密な比較演算子`==`の挙動が今さら変更になる - Qiita
    tsekine
    tsekine 2020/08/03
    変更後はかなりキレイな仕様だと思う。これで動作が変わってしまうようなコード、PHP8への移行に関係なく元からかなりヤバいコードだと思う。
  • C++コンパイラはあなたよりも良いコードを書く - Qiita

    最適化 皆さんご存じの通りC++という言語は速度しか取り柄がありません。複雑怪奇な構文、異常量のコンパイルエラー、何が起きるかわからない未定義動作たち、、、それでもなお私たちがC++を使い続けるのは、そう、極めて速いからです。ちょっと前に流行ったD言語や最近流行りのRustが速いという噂ですが、結局ほとんどの場面で速度においてC++に勝ててはいません。個人的な偏見ですがC++のように速度のみを重視し、安全性を捨てない限りRustに未来はないでしょう。まあ、人から聞いた噂によるとRustの標準ライブラリの中身はunsafeなコードが敷き詰められているらしく、なかなか速いようですが。いずれRustが廃れてUnsafe Rustの方が人気が出たりするかもしれませんね。とりあえず、最も速度面で優れている言語はC++といっても過言ではないでしょう。 そして、その圧倒的な速度を支えるのが何といってもC

    C++コンパイラはあなたよりも良いコードを書く - Qiita
    tsekine
    tsekine 2020/05/17
    んぐぐ、明らかに俺より賢くて泣ける
  • 文章に関わる全ての人のための Git & GitHub 入門 1-1「Git と GitHub を使うメリット」 - Qiita

    この連載はこんな人に向けて書かれています。 小説作家さん 編集者さん 校正さん ライターさん 発注者さん つまり文章を書いたり修正したりする全ての人たちですね! シリーズ記事一覧 1-1「GitGitHub を使うメリット」 1-2「コミットを積み上げる」 1-3「コミットを理解して活用する」 0. この連載を始めたきっかけ 僕は片倉青一という筆名で小説を書いています。 小説だけではご飯をべられないので、覆面ライターもやっています。せちがらい。 で、覆面ライターの案件で 「クライアントさん… GitGitHub 使って仕事したいです…」 って言ったら、使っていいということになりました。やったぜ。 でもクライアントさんは GitGitHub の使い方をあんまり知らないので、片倉が入門書を書くことになりました。なんてこった。 この連載は、片倉がこれからの仕事で楽をするために

    文章に関わる全ての人のための Git & GitHub 入門 1-1「Git と GitHub を使うメリット」 - Qiita
    tsekine
    tsekine 2020/02/12
    行ごとにブチブチ改行を入れるわけでもない自然言語の場合、Google Docsの方が便利だと思うけどな〜。自分がGoogle贔屓なのかもしれんけど。
  • Bashの邪悪なコマンド9選 - Qiita

    rm -rf /やったことある人。 私はないです。 以下はAndreas Müller( Twitter / GitHub / LinkedIn / Medium )による記事、9 Evil Bash Commands Explainedの日語訳です。 9 Evil Bash Commands Explained 初めてターミナルを使って、そしてそれを理解したときのことを覚えています。 あらゆるファイルにアクセスし、全てのプログラムを実行し、黒い画面に何かを入力するだけでシステムの全てを完全に掌握できることに気がついた、あの感覚。 そしてもちろん、致命的ミスを犯して全てを失った、あのときの恐怖も。 私は当はシステム管理者ではありませんが、長年にわたってLinux/UNIXベースのシステムで作業してきたので、コマンドを実行しようとしてEnterキーを打つことを躊躇う状況に何度も遭遇しまし

    Bashの邪悪なコマンド9選 - Qiita
    tsekine
    tsekine 2020/01/09
    Bashほぼ関係ない。ちょっとだけ期待してしまった俺の時間を返せ。
  • Linuxの不揮発メモリ(NVDIMM対応について(2019年版 補足編) - Qiita

    はじめに (この記事はFujitsu Advent Calendar 2019 24日目の記事です。なお、記事は個人の見解であり、組織を代表するものではありません。) というわけで、今年もNVDIMMこと不揮発メモリの話を書くことにしました。補足編となっているのは、今年はすでに12月の講演で最新状況をほとんど話してしまっていて、その講演の時間内に収められなかった小ネタを補足としてするつもりだからです。 正直言うと、2019年は業務の都合上NVDIMMのお仕事はほとんど何もやっていなかったんです。しかし、過去3回にわたってひたすらNVDIMMの話を書いているせいか、最近はすっかりNVDIMMの人として見られるようになっている気がします。そのおかげで過去の記事をご覧になった大学の先生などから講演のお声がかかるようになってきたというわけです。ありがたいことです。 Outputを外に出すとそれが自

    Linuxの不揮発メモリ(NVDIMM対応について(2019年版 補足編) - Qiita
    tsekine
    tsekine 2019/12/25
  • cron哀歌~typoを笑うものはtypoに泣く~他 - Qiita

    この記事は「番環境でやらかしちゃった人 Advent Calendar 2019」の12日目です。 https://qiita.com/advent-calendar/2019/yarakashi-production (想像以上に人気のカレンダーに参加してしまい、正直なところ、戦々恐々としております……) はじめに ほとんどの方ははじめまして、 @NACK と申します。 エンジニアになって何十年も経ちますが、未だに、ここに書いた「やらかし」は夢に見ます。 皆さんにご笑覧いただいて、私も一緒に笑えるようになればいいなあ……と思い、今回の企画に参加させていただきました。 というわけで、ぜひ笑いとばしていってください。もしくは、今後のみなさんの業務に、ほんの少しでもお役に立てれば幸いです。 用語説明 typoとは 入力ミスのこと。"typographical error"の略。 http:/

    cron哀歌~typoを笑うものはtypoに泣く~他 - Qiita
    tsekine
    tsekine 2019/12/12
    cronにも色々あるhttps://en.wikipedia.org/wiki/Cron#Modern_versionsけど、/etc/crontab はやらかしやすいようにできている。anacron のように 1 タスク 1 ファイルみたいなのがいいと思う。
  • 筋肉マージは辞めよう - Qiita

    追記2 2019/12/04 21:00 こんなよくわからない記事をご覧いただきありがとうございます。 この事件を起こしたのは1年前で、Gitを使いはじめて1ヶ月のときに下記の事件を起こしてしまっていてとても混乱していたのを当時覚えています。 内容については、rmをしたかもしれないという記事に結果的になったかもしれませんが、私の記憶ではファイルを消した記憶はありません。 ただ、当時作業していたディレクトリもないのでコマンドを確認する手段がないため一番濃厚なrmをしたというのを今回の結論にしました。 曖昧さは申し訳ありません。 また、意見、感想、批評には全て目を通させております。伝わりにくい内容やわかった事実は適宜編集してできるだけ皆さんに伝わるよう善処いたしますのでどうぞよろしくお願いします。 追記2ここまで 追記 2019/12/04 13:00 1.番環境でやらかしちゃった人 Adv

    筋肉マージは辞めよう - Qiita
    tsekine
    tsekine 2019/12/04
    来年このAdvent Calendarがまたあるなら、記事はpostmortem形式強制でいいんじゃないか、と思いました(小並感
  • さよなら本番サーバー - Qiita

    とあるSESの現場では番リリースの時期が近づいてきており、僕を含めた数人のエンジニアは間に合いそうもない残作業の開発を進めたり、番で使うためのデータの整備を番サーバー内で行ったりしていた。ほとんどがその案件のために集められたメンバーだったため特に和気あいあいとするでもなく、エアコンの風の音が響く小さなオフィスの片隅で静かに作業をしていた。 業務上のやりとりもRedmineで行われており、声を発するのもたまにメンバー同士で話をしたり、クライアントから電話がかかってきた時だけ。その日もメールで通知が届いてきており、確認してみるとRedmineで僕が関係しているチケットにコメントが届いているという通知だった。 通知のURLをクリックしてRedmineのチケットを確認してみる。 それによると一旦番サーバー上に存在するデータの中の一部の主要データをCSV形式で送ってほしいという依頼だった。無

    さよなら本番サーバー - Qiita
    tsekine
    tsekine 2019/12/03
    シングルユーザー?Local (or serial) コンソールからログインしただけなのでは?原因は / から .ssh までのどこかのディレクトリで o+w だったからかな?
  • crontab database ~君がしでかしてくれたもの~ - Qiita

    この記事は番環境でやらかしちゃった人のアドベントカレンダー2日目の記事です。 内容的にそろそろ時効だと思うので供養のために書きました。 追記。そういえば時期をちゃんと書いてなかったけど事件が起きたのは去年2018年、つまり仕込み(ヲイ)は2017年の話です ぶっちゃけネタ記事ですw (たまたま見つけて参加してみただけなのに昨日の記事の伸びっぷりを見て戦々恐々としてる TL;DR DB移行作業において、テスト期間中は常に最新のデータで処理できるように書いておいたプログラムをcrontabで実行していた。最終的に番に合わせて日時を調整していたが、そのことを失念し1年後に再実行されてしまい、番データが1年前に巻き戻る事故発生。 crontab は分、時、日、月、曜日を指定できるが、1年後に帰ってくるから気をつけてね。という話。 惨劇はなぜおこってしまったのか 結論から言えばcrontabの

    crontab database ~君がしでかしてくれたもの~ - Qiita
    tsekine
    tsekine 2019/12/02
    at コマンドなんて使う機会が少ないから、授業とかで勉強しない限り知らんのはしょうがないでしょ。自分の本でも触れた記憶ないし…
  • Terraformアンチパターン(2019年版) - Qiita

    はじめに Infrastructure as Code(以下IaCと略します)って最近では当たり前のように実践されてますよね。特にterraformはかなりユーザが多く、開発のスピードも速い印象です。 IaCを実現できたインフラエンジニアの皆さんの多くが次に直面する問題はコードの保守運用に関する事柄ではないでしょうか? terraformもコードなので、アプリケーションのコードと同じように保守性(テスト容易性、理解容易性、変更容易性)を意識する必要があります。ただコード化しただけでは属人性を排除したとは言えないと思います。 保守性の高いterraformって具体的にどう書けばいいの?と周りに聞いてみても、巷には「ぼくのかんがえた最強のterraformベストプラクティス」が乱立していて、自転車置き場の議論になりがちです。 また、v0.12前後でterraformの記法が大きく変わったので、

    Terraformアンチパターン(2019年版) - Qiita
    tsekine
    tsekine 2019/11/29
    Infrastructure *as Code* という視点で考えたとき、普通のOSSのコードと違ってそんなに実例が転がってないので参考になる。多分、俺がメンテしてるのもあんまりイケてないと思うんだけど、どうしていいか分からんし。
  • 年収1000万円を要求するインフラエンジニアが知っておくべき最低限のLinuxディストリビューション - Qiita

    はじめに なんか某所に面接に来た年収1000万円以上希望のインフラエンジニア候補に、Linuxのどのディストロ使ってるか聞いたら「ディストロってなんですか?」と聞き返して来たという話をきいたのでオラびっくらこいてQiitaに記事書き始めちまったぞ。 使ったことはなくてもいいから名前と特徴くらいは知っていて欲しいディストリビューションを列挙する。ディストロの系列ごとに書いたので、列挙順は重要度順ではない。が、2019年現在絶対に知ってないとマズイalpineだけは先頭に置いた。 busybox系 Alpine Linux 公式: https://www.alpinelinux.org/ Wikipedia: https://ja.wikipedia.org/wiki/Alpine_Linux パッケージマネージャー: apk 最小構成だと約5.6MBという圧倒的小ささで、dockerコンテナ

    年収1000万円を要求するインフラエンジニアが知っておくべき最低限のLinuxディストリビューション - Qiita
    tsekine
    tsekine 2019/10/09
    インフラエンジニアで年収1000万円に必要なのは2つ。英語とアメリカで働けるビザ。Alipine Linuxなんて知らなくても余裕 (N=1)
  • 「1から100の偶数の和を求めるワンライナー」まとめ - Qiita

    2019年8月11日頃にTwitterで「1から100の偶数の和を求める方法」(ワンライナー)が話題になったので 各言語ごとにまとめてみました。 私の独断と偏見ですが 「2550を直接出力するもの」「公式を使って総和を計算するもの」は 除外しています。 あくまでそれぞれのプログラミング言語の特色が現れるものをまとめたいと考えています。 以前あったズンドコきよしのまとめみたいなノリです。 https://qiita.com/shunsugai@github/items/971a15461de29563bf90 編集リクエスト歓迎です。 新しいワンライナーはコメント欄ではなく編集リクエストにて追加していただけると助かります! --- 8/15 11:30 コメント欄を取り込み&新たにツイートを拾いました。 --- 発端のツイート まにゃです。 いきなり問題! ここまでのツイートを手がかりに P

    「1から100の偶数の和を求めるワンライナー」まとめ - Qiita
    tsekine
    tsekine 2019/08/15
    bash -c 'declare -i i s; for ((;i<=100;i+=2)); do ((s+=i)); done; echo $s'
  • なるべく切れない回線のつくりかた(物理) - Qiita

    ◆なるべく切れない回線とはなんですか? 「落ちないシステムなんてない」 「切れない回線なんてない」 エンジニアの方なら理解してくれると思います。 しかし、理解はしつつも回線断を体験したことがある人はあまりいないのではないでしょうか。 じつはその「あまり」中にあなたが含まれないのは、わりと運が良いだけなのかもしれません。 今日もたくさんの回線が切れています。今もどこかで切れています。月額5000円のベストエフォート回線でも、月額1000万円の10G専有回線でも、切れるときはいつでも切れます。明日もたくさん切れるでしょう。明後日も。来年も。10年後も。古来電信回線から今後5Gになっても、人類が通信をし続ける限りは切れ続けます。その時に切れるのは、もしかするとあなたに関係があるネットワークかもしれませんし、運良くそんな事態には遭遇しないのかもしれませんし、気づかないうちに復旧しているかもしれませ

    なるべく切れない回線のつくりかた(物理) - Qiita
    tsekine
    tsekine 2019/07/02
    また聞きしか無いけど、本当にいろいろな理不尽な理由で切れるらしい。
  • アカウント削除機能に意味はない - Qiita

    Webサービスでアカウント削除機能を要求するユーザの話はよく聞くわけですが、これには残念ながら全く意味が無いと、1Webエンジニアであるぼくは思っているのですが、その理由をだらだらと書いてみようと思います。非エンジニアでも分かるように書いたつもりですが、作者が特にそういう能力に秀でているわけでもないので難しいかもしれません。 技術的な問題 現代の多くのWebサービスはデータの保存をRDB(SQL)に依存しています。これには色々特徴があるわけですが、実際の実装を想定して説明していきましょう。 ユーザがいます。ここではUserというTableとしましょう。RDBで定義したTableは同じ形式の物を沢山保存することができます。なので、作られた沢山のUserは1箇所のTableに纏めて配置されます。 Twitterみたいなサービスを想像すると、ここでTweetできる必要がありますね。TweetはT

    アカウント削除機能に意味はない - Qiita
    tsekine
    tsekine 2018/12/17
    GDPRに対応してるグローバル企業は、多分ちゃんとしてるよ。奴らの制裁金、半端ないし。
  • サマータイム導入には反対だが「日本夏時間」を試してみた - Qiita

    はじめに 東京オリンピックの暑さ対策としてサマータイム導入の検討が騒がれている。システム屋としては日に夏時間の導入は全力で反対するが、キーワードで「夏時間で2時間早くする」というものがあった。2時間のサマータイムは聞いたことないわけで気になって試してみた。 Time Zone Database ご存知の通りUNIX系のOS(LinuxとかBSD, etc..)では、時差つまりタイムゾーンをTime Zone Database (tz database, aka. zoneinfo)を使って管理している。Time Zone Database は、/usr/share/zoneinfo にある。 なお以下の記事の例ではFreeBSDを利用して試しているが、LinuxMacでもまったく同様である。 $ ls /usr/share/zoneinfo Africa Australia Etc

    サマータイム導入には反対だが「日本夏時間」を試してみた - Qiita
    tsekine
    tsekine 2018/08/09
    TZにファイルパスを指定する場合、先頭に : 入れるんじゃなかったっけ?glibc だけかな?POSIX?忘れた。
  • cronの書式で曜日指定に数字を使うのやめたい - Qiita

    些細な啓蒙 こじんまりなシステム構成ではcron使う方が早いし楽なので何だかんだ使ってると思います。 crontabで曜日指定するときに、数字の指定だと直感的に分かりづらい。 週のはじまりが日曜日か月曜日か、どっちが0なのか毎回ググってるし ※"ちゃんとした"商用システムでは"ちゃんとした"ジョブスケジューラを使いましょう。rundeck使ってみたい さっそく結論 crontabの書式では、曜日の指定に数字だけでなく英単語も使える ちゃんとドキュメントにも記載がある 参考 - Red Hat Enterprise Linux 導入ガイド - 21.1.4. Cron ジョブの設定 day of week — 0 から 7 までの任意の整数。0 および 7 は日曜日を示す (あるいは sun や mon など曜日の省略形) _人人人人人人人人人人人人人人人人人人人人_ > あるいは sun

    cronの書式で曜日指定に数字を使うのやめたい - Qiita
    tsekine
    tsekine 2018/07/29
    どのcron? vixie ? cronie? Centos限定なの?