タグ

ブックマーク / dev.classmethod.jp (40)

  • Pythonのdatetime.timedeltaで秒を扱う際に注意すべきたったひとつのこと | DevelopersIO

    こんにちは。サービスグループの武田です。 みなさんプログラムで日時の扱いは得意でしょうか?基的には言語の標準ライブラリを使うことが多いのではないでしょうか。 今回はPythonのお話です。Pythonは標準でdatetimeモジュールが提供され、日付や時間、タイムゾーンなどを扱えます。その中にtimedeltaオブジェクトというものが提供されているのですが、これは 時刻間の差 を表すという、他の言語ではあまり見ないユニークな機能を提供します。 使い方の例を次に示します。+演算子などでdatetimeオブジェクトと演算でき、直感的に日時の操作が可能です。 from datetime import datetime, timedelta d = datetime.fromisoformat("2004-07-07T00:00:00") d #=> datetime.datetime(2004

    Pythonのdatetime.timedeltaで秒を扱う際に注意すべきたったひとつのこと | DevelopersIO
    summer4an
    summer4an 2023/06/13
  • 『Gitleaks』で機密情報の漏洩を防ぐ〜コマンド編〜 | DevelopersIO

    Gitleaksは機密情報の漏洩を防ぐためのツールです。簡単なコマンド実行を通してGitleaksの使用感を記事にしました。コマンドの使い方や実際の出力内容が分かるようになっています。 はじめに CX事業部 Delivery部の塚です。 Technology RadarでGitleaksが紹介されており、気になったので使ってみました。 記事で取り上げること Gitleaksの基的な情報 Gitleaksの導入手順 Gitleaksのコマンドの使い方 記事で取り上げないこと GitHub Actionsでの利用方法 gitのhooksを利用したコミット前の自動検出: 自動コミット編参照 検出結果の妥当性、信頼性など 他類似ツールとの比較 Gitleaksとは Gitleaks is a SAST tool for detecting and preventing hardcoded s

    『Gitleaks』で機密情報の漏洩を防ぐ〜コマンド編〜 | DevelopersIO
    summer4an
    summer4an 2023/06/04
  • Pythonを高速化する「Codon」コンパイラを使ってみた | DevelopersIO

    データアナリティクス事業部のueharaです。 今回は、Pythonの実行がシングルスレッドで従来の10~100倍以上高速化すると言われている「Codon」というコンパイラを使ってみたいと思います。 Codonの概要 Pythonは世界的にも広く使われている言語であり、シンプルでわかりやすい文法や豊富なライブラリ、拡張性など、多くの利点があります。 しかし、その一方で、Pythonの実行速度に課題があるという指摘は皆さんも一度は耳にしたことがあるかと思います。 この課題を解決すべく、MITの研究者らが開発した「Codon」について紹介したいと思います。 Codonは、ランタイムのオーバーヘッドなしで Pythonのコードをネイティブなマシン語にコンパイルする高性能なPythonコンパイラです。 Codonを使うとシングルスレッドでも十分な高速化を行うことができますが、マルチスレッドもサポ

    Pythonを高速化する「Codon」コンパイラを使ってみた | DevelopersIO
    summer4an
    summer4an 2023/04/10
  • Linux OSのバージョン確認方法をまとめてみた | DevelopersIO

    カーネルのバージョン Linuxカーネルのバージョンはcat /proc/versionで参照するか、uname -aにて確認が可能です。 $ cat /proc/version Linux version 5.10.130-118.517.amzn2.x86_64 (mockbuild@ip-10-0-43-203) (gcc10-gcc (GCC) 10.3.1 20210422 (Red Hat 10.3.1-1), GNU ld version 2.35-21.amzn2.0.1) #1 SMP Wed Jul 13 16:51:52 UTC 2022 $ uname -a Linux ip-xx-xx-xx-xx.ap-northeast-1.compute.internal 5.10.130-118.517.amzn2.x86_64 #1 SMP Wed Jul 13 16:5

    Linux OSのバージョン確認方法をまとめてみた | DevelopersIO
    summer4an
    summer4an 2022/08/17
  • Dockerのマルチアーキテクチャイメージについて調べてみた | DevelopersIO

    マルチアーキテクチャイメージを使えば、単一のDockerイメージ(タグ)で複数タイプのOSやCPUアーキテクチャに対応させられます。 Dockerのマルチアーキテクチャイメージについて調べる機会があったのでまとめてみました。 なお今回はデプロイ済みのマルチアーキテクチャイメージをプルして利用する観点でのまとめとなります。 マルチアーキテクチャイメージとは Dockerイメージは「マルチアーキテクチャ」という仕様をサポートしています。 Leverage multi-CPU architecture support Docker images can support multiple architectures, which means that a single image may contain variants for different architectures, and somet

    Dockerのマルチアーキテクチャイメージについて調べてみた | DevelopersIO
    summer4an
    summer4an 2022/04/09
  • 踏み台サーバ経由の多段SSH接続をローカル端末の秘密鍵のみで実施する | DevelopersIO

    こんにちは!コンサル部のinomaso(@inomasosan)です。 踏み台サーバ用のEC2から、別のEC2 LinuxにSSH接続する際の秘密鍵の扱い方は皆さんどうしておりますでしょうか? 一番簡単なのは踏み台サーバに秘密鍵をアップロードし、別のEC2にSSH接続することです。 ただし、このやり方だと踏み台サーバが乗っ取られた場合に、他のサーバにも侵入されるリスクが大きくなってしまいます。 そこで今回は、ローカル端末にある秘密鍵のみを利用した、多段SSH接続を検証していきます。 弊社カジにこのブログを書くきっかけを頂きました。改めてありがとうございます。 この記事で学べること 踏み台サーバにSSH接続先の秘密鍵をコピーする必要はないということ 踏み台サーバ経由の多段SSH接続方法 ちなみに踏み台サーバ経由でWindows Serverに接続したい場合は? Windows Serverの

    踏み台サーバ経由の多段SSH接続をローカル端末の秘密鍵のみで実施する | DevelopersIO
    summer4an
    summer4an 2021/08/23
  • Windows で 画面操作を Gif で録画したいなら ScreenToGif がオススメ | DevelopersIO

    結論「ScreenToGif はいいぞ!」 ScreenToGif は Windows 上での画面操作をサクッと録画して編集までできるので撮り直しの手間が省ける OSS のデスクトップキャプチャツールです。 今日は創立記念日! 7/7はクラスメソッドの創立記念日ということでブログ投稿する習慣があり、まだ入社1年にも満たない新人の私も「乗るしかない、このビッグウェーブに」の精神で書いてみました。 使いどころ 開発中のアプリケーションを操作していて挙動がおかしい、デザインが崩れているといった問題を見つけた時に、非同期コミュニケーションとして Gif アニメで画面操作を録画して Slack に貼り付け共有したり、新たな Issue を作成する際に操作方法や起こっていることを説明するのに使えるでしょう。 もちろんブログにアップロードする画像にも使えます。以前こちらのブログを書いたときに使用しました

    Windows で 画面操作を Gif で録画したいなら ScreenToGif がオススメ | DevelopersIO
    summer4an
    summer4an 2021/07/08
  • バージョン管理ツール asdf でディレクトリごとにPythonのバージョンを指定する | DevelopersIO

    おはこんばんちは。オペレーション部のもっさんです。 今回は バージョン管理ツール asdf を利用して、ディレクトリごとに異なる Python のバージョンを使用するよう設定してみました。 なぜバージョン管理ツールが必要? 同時進行で複数のプロジェクトの開発やメンテナンスを行っていると、それぞれのプロジェクトで使用されているプログラミング言語のバージョンが異なる場合があります。 一般的に、開発を行なっている環境で使用している言語のバージョンと、番運用されているサーバにインストールされている言語のバージョンは統一したほうが無難です。 例えば、あなたは現在以下のような状況にあるとしましょう。 あなたが持っているPCにインストールしている Python バージョンは 3.9.1 あなたは2つのプロジェクトA,Bを並行して担当している ブロジェクトA では Python 3.7.10 を使用して

    バージョン管理ツール asdf でディレクトリごとにPythonのバージョンを指定する | DevelopersIO
    summer4an
    summer4an 2021/06/07
  • リアルタイムなリソースモニタリングツールのnetdataを試してみた | DevelopersIO

    久しぶりにvyosネタではない市田です。 今回は、netdataというLinux向けのモニタリングツールについてご紹介します。 netdataとは netdataは、ZabbixやNagiosなどの監視ツールとは異なり、リアルタイムパフォーマンスモニタリングができるツールです。 その代わりと言ってはなんですが、長期間の監視データの蓄積などはできないので、過去のパフォーマンスグラフを参照すると言ったことはできません。 以下のようなリアルタイムなリソースグラフを見ることができます。 下記のgifではカクカクしていますが、実際はもっと滑らかな動きのあるグラフになります。公式サイトが参考になるかと思います。 NetData - Real-time performance monitoring, done right! netdataの特徴 githubでは以下の特徴を謳っています。 Stunnin

    リアルタイムなリソースモニタリングツールのnetdataを試してみた | DevelopersIO
    summer4an
    summer4an 2021/01/30
  • 「イオンモールの総賃貸面積ランキング」ダッシュボードをノンコーディングで作ってみた #tableau #alteryx | DevelopersIO

    座右の銘は「大は小を兼ねる」、データアナリティクス事業部ソリューション部・新納(にいの)です。 鉄板の会話ネタと言えば「今日の天気」が挙げられるかと思いますが、それと同じくらい頻繁に話題に上がるのが「イオンモールの大きさ」でしょう。登山をしたり海に出たりすると、自然の雄大さを前にして自分自身のちっぽけさを痛感し、悩みもなんだかどうでもよくなる…それと同じ感情をイオンモールに感じている方も多いのではないでしょうか。私もその一人です。 巨大なイオンモールに畏怖の念すら抱く我々にとって、「会話に困らないようにイオンモールの大きさランキングを知っておきたい」「でかいイオンモール(でっかイオン)に行きたい」という感情はごく自然に湧いてくるものです。 というわけで、AlteryxとTableauイオンモールの大きさランキングをノンコーディングで可視化してみました。 前提条件 今回の検証で使用した環

    「イオンモールの総賃貸面積ランキング」ダッシュボードをノンコーディングで作ってみた #tableau #alteryx | DevelopersIO
    summer4an
    summer4an 2020/08/26
  • [テンプレ付き]PythonでCLIツールを作るときのTips | DevelopersIO

    こんにちは、どんな作業もターミナルで行うことが多めの平野です。 最近はパイプに流すようなCLIアプリもPythonで作ることが多いので、 そこで必要になったいくつかの要素をまとめてみます。 パイプライン処理として実装しよう BrokenPipeの表示を消す argparseによる引数とオプションのパース この辺を考慮すれば、あとは文字列変換の主要なロジックだけを実装すればOKかと思います。 パイプライン処理として実装しよう パイプライン処理とだけ言うと色々な意味がありそうですが、ここで言っている意味は データの先頭行の処理の結果は最終行が入力される前でも取り出せるようにしよう ということです。 パイプ (コンピュータ)#シェルからの使用 - Wikipedia 複数行のテキストが入力されてきた時に、 それぞれの行の文字数をカウントするアプリケーションを作ったとします。 この時、以下のような

    [テンプレ付き]PythonでCLIツールを作るときのTips | DevelopersIO
    summer4an
    summer4an 2020/01/14
  • [速報] 2台のカメラとLIDARセンサーを搭載した AWS DeepRacer Evo が発表されました! | DevelopersIO

    こんにちは、菊池です。re:Invent直前だというのに大きな発表が続きます。 ちょうど一年前のre:Invent 2018で強化学習による自律走行車である AWS DeepRacer が登場されましたが、先ほど、新しいモデルである AWS DeepRacer Evo が発表されました! AWS DeepRacer Update – New Features & New Racing Opportunities Hands-On with AWS DeepRacer Evo Autonomous Race Car! 上記ブログより、DeepRacer Evoの外観です。 昨年の発表はこちら。 [速報] 1/18スケールのラジコンカー! AWS DeepRacer が登場! #reinvent AWS DeepRacer Evo DeepRacer Evoには、ステレオカメラと光検出/測距(

    [速報] 2台のカメラとLIDARセンサーを搭載した AWS DeepRacer Evo が発表されました! | DevelopersIO
    summer4an
    summer4an 2019/11/28
  • Dockerでサクッと使い捨ての開発環境を用意する | DevelopersIO

    もこです。 「各種アプリケーションのバージョン管理が面倒」 「Dockerfileにするほどでもないけどコンテナの中で実行したい」 などなど、作業マシンを汚したくないときなど結構あると思います。 Dockerfileなどでアプリケーションのみを入れたコンテナとは違う使い方をした、「作業用コンテナ」を作ってみました。 ベースのコンテナを作る まずは最新のUbuntuのコンテナの中に入ります docker run --name="dev_container" -it ubuntu:latest コンテナに入ったらパッケージを更新し、開発環境などに必要なパッケージ類をインストールしていきます。 apt update -y apt install curl vim git net-tools build-essential -y # などなど、必要なパッケージを入れていきます 今回はNode.js

    Dockerでサクッと使い捨ての開発環境を用意する | DevelopersIO
  • 【レポート】深層学習フレームワークChainerを活用したWebサービス事例 #AWSSummit | DevelopersIO

    こんにちは。サービスグループの武田です。 2019年6月12日(水)から14日(金)の3日間、千葉県幕張メッセにてAWS Summit Tokyo 2019が開催されています。こちらで講演されたセッション「J1-01 深層学習フレームワークChainerを活用したWebサービス事例」を聴講しましたのでレポートします。 AWS Summitでは全セッションで撮影禁止ということですので、文字だけでお届けします。 概要 深層学習技術を活用したWebサービスの事例として、線画自動着色サービスPaintsChainerの概要とシステム構成をご紹介いたします。また、Preferred Networksが検討しているCreative分野の新しい技術紹介をします。 スピーカー 株式会社Preferred Networks エンジニア 福田 昌昭 (※敬称略) レポート 会社の事業分野 交通システム 産業ロ

    【レポート】深層学習フレームワークChainerを活用したWebサービス事例 #AWSSummit | DevelopersIO
  • [Python] Pipenvで仮想環境をプロジェクトディレクトリ配下に作る方法 | DevelopersIO

    どうも!大阪オフィスの西村祐二です。 突然ですが、私はPython環境をPipenvで管理しています。 番で利用するライブラリと開発時のみ利用するライブラリとで分けれたり、npmみたいな使い方ができてとても便利です。 ただ、作成される仮想環境がプロジェクトディレクトリとは別の場所の~/.local/share/virtualenvs/配下に作られて、エディタの設定や取扱が面倒なときがたまにあります。 そこで今回は備忘録兼ねて、Pipenvで仮想環境をプロジェクトディレクトリ配下に作る設定をしてみます。 環境 pipenv: version 2018.11.26 どうやるか ドキュメントを眺めていたら設定項目がありました! https://pipenv.readthedocs.io/en/latest/advanced/#pipenv.environments.PIPENV_VENV_IN

    [Python] Pipenvで仮想環境をプロジェクトディレクトリ配下に作る方法 | DevelopersIO
  • 【設定爆速】VS CodeのRemote Developmentを使ってSSH接続したEC2上のファイルを編集する | DevelopersIO

    めっちゃ簡単にリモートマシン上でVS Codeが使えるRemote Developmentの紹介です。Insider版限定機能ですが、やってみると感動すること請け合いです。 なんとなく試しているけれど、Visual Studio CodeのRemote Development、死ぬほど便利やんけ。とりあえず、~/.ssh/config使ってSSH接続先管理してたら、鬼のように簡単にリモートマシンに接続できる。 — 濱田孝治(ハマコー) (@hamako9999) May 29, 2019 先日、MicrosoftよりRemote Development with VS Codeという衝撃的なアップデートが発表されました。 Remote Development with Visual Studio Code 従来のVS Codeの機能を拡張機能含めてリモートマシン(コンテナやWSLも含む)上

    【設定爆速】VS CodeのRemote Developmentを使ってSSH接続したEC2上のファイルを編集する | DevelopersIO
  • [PowerShell] 次のバージョンでPowerShellは PowerShell 7 になります | DevelopersIO

    しばたです。 先日PowerShell Core 6.2がリリースされたばかりですが、次のPowerShellのリリースについてPowerShell Teamからアナウンスがありました。 The Next Release of PowerShell – PowerShell 7 次バージョンのPowerShellは PowerShell 7 記事のタイトルにもある通り、次のバージョンは PowerShell Core 6.3 ではなく、 PowerShell 7 になります。 PowerShell Core 7でもなく PowerShell 7 です。 メジャーバージョンが上がり、同時に Core も呼び名から外されます。 メジャーバージョンを上げる動機として、 PowerShell Core 6.xでクロスプラットフォームなツールとしてWindows以外の環境で広くインストールされる様に

    [PowerShell] 次のバージョンでPowerShellは PowerShell 7 になります | DevelopersIO
  • bert-as-serviceを使って日本語の文章を埋め込み表現ベクトルに変換してみる | DevelopersIO

    学習済みの汎用言語表現モデルBERTを使って文章を埋め込み表現(数値ベクトル)に変換することができるbert-as-serviceを触ってみました。 テキストを埋め込み表現に変換するサーバーモジュールを用意するのは、BERTのモデルを読み込んで、必要なレイヤーを抜き出し、テキストをトークン化して入力して、処理を順次捌くためにキューに渡して、複数のワーカープロセスを制御して...と結構大変です。bert-as-serviceはこういった処理をラップしてくれているので、専用のサービスを起動して、クライアントモジュールからリクエストを投げるだけでテキストの埋め込みが出来ます。簡単。 ではbert-as-serviceを使った文章の埋め込み表現への変換について紹介していきます。 BERT(Bidirectional Encoder Representations from Transformers

    bert-as-serviceを使って日本語の文章を埋め込み表現ベクトルに変換してみる | DevelopersIO
  • Python用の自然言語処理ライブラリ”StanfordNLP”を試す | DevelopersIO

    StanfordNLPとは StanfordNLPとは、スタンフォード大学の自然言語処理(Natural Language Processing, NLP)グループが提供するPythonNLPライブラリです。 同じくスタンフォード大学のNLPグループが提供するStanford CoreNLPというJavaで書かれたNLPツールのサーバーにアクセスする為のパッケージが含まれています。 GitHub - StanfordNLP GitHub - Stanford CoreNLP ライセンス 基となるStanford CoreNLPはGNU GPL(v3以降)ですが、StanfordNLPはApache License Version 2.0となっています。 特徴 StanfordNLPは、Python3.6以降をサポートしており、トークナイザー、形態素解析、依存関係パーサー等の機能を有します

    Python用の自然言語処理ライブラリ”StanfordNLP”を試す | DevelopersIO
  • 【OpenSSH 7.8】秘密鍵を生成する形式が変更になった件について | DevelopersIO

    こんにちは。DI部の春田です。 皆さん、日頃からssh-keygenのコマンドはよく使われるかと思います。 先日、GoのSSHライブラリに関する記事をあげましたが、秘密鍵のヘッダが変更されている件について、もう少し詳しく調べていきます。 また、OpenSSHそのものについても興味が湧いたので、こちらも深掘りしてみました。 【Tips】Go言語の x/crypto/ssh パッケージで パスフレーズで保護された秘密鍵を扱う 目次 OpenSSHとは? 語句の説明 OpenSSH 7.8 非互換の可能性がある変更について 最後に OpenSSHとは? OpenSSH is the premier connectivity tool for remote login with the SSH protocol. It encrypts all traffic to eliminate eaves

    【OpenSSH 7.8】秘密鍵を生成する形式が変更になった件について | DevelopersIO