はじめに 定周期で実行されるプログラムは色々なシステムで実装されるが、上手に実装しないと意図した時間通りに実行されない。最近Pythonでプログラムの実装をする機会が多いので、Pythonで実行する方法をまとめる。実装の方法次第だが、下記のとおりである。 [NG] sleepで待つ [NG] threadingでタイマーを使う [OK] 処理時間を考慮してthreadingとsleepを使う [OK] シグナルハンドラを利用する
はじめに 以前紹介させていただき、2022年Qiitaのいいねランキング18位、ストックランキング20位を記録したこちらの記事の続編です! DevToysはリリース後しばらく定期的なバージョンアップが続けられていましたが、去年の7月からぱったりとアップデートが止まっている状態でした。 リポジトリや作者のXを見るとバージョン2の開発を行っているようで、今か今かと待ち続けていましたが数日前リリース予告のポストを見つけて、今日ついにプレリリースされました! ということで早速紹介していきます! DevToysとは DevToysは「開発者のためのスイスアーミーナイフ」の紹介文の通り、開発時によく使うツールを十徳ナイフのようにまとめたアプリとなっています。 JSONの整形とかエンコードデコードetc... プログラミングや保守運用の調査でやりがちな作業をいちいち変換サイトを探したり、エディター拡張機
1: 購入 0: 閲覧(したが購入してない) -: 未観測 ユーザーベース型 ユーザー同士の類似度を計算 「あなたと購入履歴の似たユーザーはこんな商品を買っています」 行を各ユーザーのベクトルとみなして、似たユーザーを見つける(上位N人) 似たユーザーが購入しているアイテムを推薦する(N人の平均値などで購入しそうな順に提示) アイテムベース型 アイテム同士の類似度を計算 「この商品を買ったユーザーはこんな商品も買ってます」 列を各アイテムのベクトルとみなして、類似度の高いアイテムを推薦する(上位M件) 類似度計算には、コサイン類似度やJaccard類似度が使われる。 類似度を計算する際に、未観測「-」は適当な値(0, 0.5など)で埋めるか、無視をする。 ログデータを使うため、情報の少ない新規アイテム/新規ユーザーに弱いコールドスタート問題がある。 コンテンツベースフィルタリング アイテム
エンジニアのみなさま、日々の学習本当にお疲れ様です! また本記事まで足を運んでいただき本当に感謝です。 約3分程度で読めるので最後まで読んでもらえると幸いです。 はじめに 工数管理はプロジェクトの成功に欠かせない要素です。工数を正確に見積もり、管理することで、プロジェクトの遅延を防ぎ、クライアントやプロジェクトメンバーの信頼を得ることができます。 本記事では、工数見積もりの重要性とその手法、そして失敗しないためのポイントについて書きたいと思います。 「もっとこうした方が良いよ!」 や 「うちの会社ではこの様な考えで取り組んでます!」 があればぜひコメント欄で教えていただけますと幸いです。 工数とは? プロジェクトや業務を完了するために必要な作業時間のことを指します。 「人日」 や 「人月」 と呼ばれており、1人日は8時間、1人月は160時間(1日8時間、平日20日稼働)で表現するケースが多
// gcc-10 -march=armv8.3-a arm-jcvt.c という風にコンパイル #include <stdio.h> #include <math.h> #include <inttypes.h> #include <arm_acle.h> // Prototype: // int32_t __jcvt(double); #if defined(__GNUC__) __attribute__((noinline)) #endif int32_t cast_double_to_i32(double x) { return (int32_t)x; } int main(void) { printf("(int32_t)(-2.8) = %" PRId32 "\n", cast_double_to_i32(-2.8)); printf("(int32_t)1.99 = %" P
はじめに WindowsでのSNMPについてのお勉強メモです。 以下のことが書いてあります Net-SNMPのインストール方法 サービス(SNMPエージェントサービス、SNMPトラップハンドラサービス)のこと コマンド(snmpget、snmpwalk、snmptrap)のこと TWSNMPのこと 以下のことは書いていません SNMP v3 のこと パケット構造 環境 環境を用意するのが面倒なので1台のPCでお勉強しています。 OS=Windows10 Pro 1809 (64bit) Tool Net-SNMP(5.6.1.1-1.x86) TWSNMP(Ver 4.11.7) ◆SNMPとは Simple Network Management Protocol ルータ、スイッチ、サーバなどTCP/IPネットワークに接続された通信機器に対し、ネットワーク経由で監視、制御するためのアプリケ
起きたこと 僕が運営している『オンライン絵しりとり』というサイトで起きた話となります。 これは訪れたユーザー同士で絵しりとりを楽しめるサービスです。 ある日、このサービスをホスティングしているConoHaVPSより、規約に違反しているため利用を制限した旨のメールが届きました。 お客様のVPSにおきまして、弊社会員規約に反するコンテンツが 検出されましたので、ご利用サービスの制限をさせていただき ましたこと、ご連絡申しあげます。 そして、メールが届いたほぼ同時刻にサーバーが停止され、サービスへアクセスできない状態になりました。 メールによると、JASRACより著作権侵害に対する防止措置の申し出があったとのことです。 指摘対象のコンテンツを確認したところ、ユーザーがサイト内のチャットでYOASOBIの楽曲である『アイドル』の歌詞の一部を投稿しておりました。 ご覧の通り、話の流れで流行りの曲をみ
VSCode上でシーケンス図/クラス図/フローチャートをサクッと書きたい ~Mermaid Graphical Editor~初心者umlVSCode新人プログラマ応援mermaid はじめに Mermaid Graphical EditorというVSCodeの拡張機能にとても感動したので一筆書きました こんな方におすすめ シーケンス図/クラス図/フローチャートをサクッと書きたいけどmermaidとか難しそう 😢 できること VSCode上でポチポチしながらシーケンス図/クラス図/フローチャートを描けるようになる mermaid記法のコードも自動生成されるよ 個人的メリット mermaidの学習コスト0 紙で書くよりも修正しながら書きやすい 導入手順 (簡単7steps) (1) VSCode上で「Mermaid Graphical Editor」という拡張機能をインストールする (2)
はじめに 仕事以外の時間も勉強しないといけないとわかっていてもなかなかモチベーションがわかない エンジニアは移り変わりの激しい技術を追っていかないといけない仕事なので、就職する前に「仕事終わりも休日も勉強しないといけない」そう聞いてエンジニアになった人も多いかと思います。 私もプログラミングの勉強を始めた頃には、楽しいと思って色々勉強を続けていましたがいつしか仕事終わりに勉強したり、休日に勉強することができなくなりました。 周りには自分よりももっとできる人がたくさんいて、少し勉強したところで給料が上がるわけでもなく、現状が変わるような気分もなくモチベーションは全く上がりませんでした。 勉強をしようとしてもすぐに成長を実感できるわけでなく、勉強を続けてもそれがものすごく身についたという感覚も少なかったです。 しかし、とあるタイミングでプログラミングを継続的にできるようなきっかけがあり、そこか
前提条件 Windows10またはWinsows11(22H2以降、最新のUpdate適用済)であること 組織内プロキシによるアクセス制限がないこと(全体公開版の手順では範囲外) 「仮想化」が有効であること(タスクマネージャーから確認可能) 「仮想化」が有効になっていない場合、UEFIの設定から「VT-x」あるいは「Intel Virtualization Technology」を有効にする WSL2の有効化 # WSL2を有効化する。まだUbuntuをインストールしない。 wsl --install --no-distribution wsl --update # Microsoft Storeが使用できない場合、--web-downloadオプションを付ける。 # wsl --install --no-distribution --web-download
初めまして。普段は産婦人科医をしつつAIの医学応用に関する研究をしています。 Qiitaは見る専でしたが、以下のバズっている記事を拝見した時、生理学の神経構造の話をふと思い出したのでメモ代わりに記載しようと思います。 読みにくい部分があれば申し訳ありません。 とくに@pocokhc(ちぃがぅ)さんの記事のコード詳細と実験内容を見ていた時、実際の神経系の構造とあまりに似ていたことにびっくりしました。 まず、興奮性ニューロンと抑制性ニューロンの2種類から構成されるED法の構成ですが、これは実際の神経系でも同様の構造になっています。実際の神経はシナプスのつながりをニューロンと言います。信号を伝える側の興奮性シナプスに電気が走ると、電位依存性のカルシウムチャネルが開き、Caが放出されます。このCaの影響でシナプスの末端にある小さな袋から神経伝達物質(中枢神経系では主にグルタミン酸)が放出されます。
内容 社内でAWS知らない人でもこれだけは覚えていてほしいという動画を作成して欲しいとリクエストあり。その内容を資料化したものです。小学生の子供に説明してみましたがになんとなくAWSが分かったと言っていたので今回は結構分かりやすくまとめられたと思います。 システムを構築する時 システムを構築する際、サーバやネットワークなどのインフラが必要になります。昭和の時代は物理サーバを買ってきてラックマウントしてネットワークに接続してと物理的な作業が多く発生していました。 その後、物理サーバの上に仮想的なサーバを作成できる仮想化技術の発展により、仮想サーバが主流となりました。最初に物理サーバを用意して、仮想化基盤を構築する必要があります。仮想化基盤構築後は、新しいシステムを作りたい場合はすぐに仮想サーバの準備を行うことができ、物理環境の時と比較すると大きな進展がありました。 仮想化基盤を自社で構築する
追記:続きを書きました。 その2:ED法を高速化してその性能をMNISTで検証してみた その3:ED法+交差エントロピーをTF/Torchで実装してみた(おまけでBitNet×ED法を検証) はじめに 先日以下の記事が投稿され、その斬新な考え方に個人的ながら衝撃を受けました。 内容をざっくり言うと、ニューラルネットワークの学習を現在の主流であるBP法(誤差逆伝播法)ではなく、ED法(誤差拡散法)という新しい学習手法を提案しているものです。 もし記事の内容が本当ならニューラルネットワークの学習がO(1)でできてしまう事になり、まさしく革命が起きてしまいます。 (結論からいうと速度面はそこまででもなかったです(それでも早くなる可能性あり)) (ただこの新手法のポテンシャルは革命を起こす可能性は秘めているといっても過言ではありません) ED法に関してネットを探すとインターネットアーカイブに情報が
目的 Python公式ドキュメントを参考にasyncioライブラリのイベントループを理解する。 環境 python 3.7.4 注意 import asyncioを忘れずに。本稿のサンプルコードでは省略しています。 イベントループメソッド イベントループの取得 asyncio.get_event_loop() カレントイベントループを取得。カレントスレッドにカレントイベントループがなければ自動的にイベントループを作り,それをカレントイベントループに設定する。一度設定し,再度作っても同じカレントイベントループになる。 loop = asyncio.get_event_loop() loop_2 = asyncio.get_event_loop() print(loop is loop_2) # True
普段は「通知が迷惑かなー」と思ってブックマークしていただいている方に通知せず記事を編集しているのですが、この記事をブクマしていただいている方は続きが気になっている方だと思いますので通知させていただきます。 結論から言うと、この記事を読んだ @pocokhc (ちぃがぅ)さんという方が金子勇さんが書いたED法のサンプルプログラムを見つけてくださいました。 ちぃがぅさんの記事はこちら 自分で解明したかったという気持ちも無いことは無いですが、バズった時点で誰かが実装してくれそうな気はしていました。新卒からIT業界に入って4年目が始まったところですが、業務以外で初めて業界にコントリビュートできた気がして嬉しいです! 追記ついでに、謝罪します。初回公開時に記事タイトル含め本文中で何か所か「Winney」と書いてしまっていた箇所がありました。失礼いたしました。誤字修正してあります。指摘してくださった何
802.11ahは、現在の920MHz帯通信規格の多くができなかった「末端までTCP/IP通信」ができる画期的な規格で、特にIoT環境への採用が広まるのではないかと考えていました。しかし802.11ahには送信時間に制限があって、これは802.11b/g/nのような「末端までLANが届く」感覚とはちょっと違って手ごわいかもしれないぞ、が前回お話したところ(https://qiita.com/Cente_mw/items/83d3af116cb4df06553c )です。 今回は、そんな送信時間制限がある状態で本当にTCP/IP通信が使い物になるのか?あたりを考えていきます。 ■通信制限おさらい 日本の920MHz帯通信では「1時間あたりの送信時間の総和が360秒まで」という守るべきルールがあります。 参照: 「920MHz 帯小電力無線システムの広帯域化に係る技術的条件」 情報通信審議会報
本記事はNTTコミュニケーションズ Advent Calendar 2020 6日目の記事です。 昨日は@khrdさんのKindでVirtualClusterを試そうでした。 はじめに フルMVNOを提供している事業者の説明の中には「SIMアプレットを活用して機能を拡張する」というような文言が書いてあります。 本記事ではこのSIMアプレットに着目し、概要とSIMアプレット開発について見ていきます。 SIM Toolkitとは SIM ToolkitはSIMカード上で動作するアプリケーション(アプレット)に対して端末やネットワークと対話するための仕組みを提供しています。 対話とは具体的に言うと、 SIMが持つ情報を端末に表示する ユーザーがSIMに情報を入力する SIMがネットワーク経由でSMSを送受信する などが挙げられます。 このSIM Toolkitを使って作られたプログラムをSIMア
はじめに 対象とする読者について 本記事の対象者としては以下のような人を想定しています。 C#でこれからWin32APIを使ってみたい。 C言語のことがあまりよく分かっていない。 今までは適当に使っていたので一度きちんと理解したい。 自分が同じような状況であったため、一から調べて整理してみました。自分が理解した順番や内容で記載することで、また、具体的な使用例によってできることの広さや動作を感じ取ってもらうことで、理解の助けになればと思っています。 但し、分かっている人からすると冗長な説明になっている部分や好ましくない内容、正確性に欠ける内容などもあると思います。実際に使用する場合はその点にご留意願います。 Win32APIについて Windows API - Wikipedia Microsoft Windowsのシステムコール用APIのこと。特に32ビットプロセッサで動作するWindow
この記事は? 著者は、エンジニアにとって最も大事なものの一つは契約であると考えます。なぜなら、契約によって我々はお金を得ることができ、労働対価を受け取って生きていくことができるからです。プロジェクトにおいてトラブルが発生すると、契約はメンバーを守ってくれるものになります。したがって、雇用契約、請負契約、準委任契約など何の契約であっても隅々まで確認し、不利にならないようにしないといけません。社員であれば誠実に職務に向き合う必要があります。請負契約であれば対価を得るために納品する必要がありますし、準委任契約であれば善管注意義務を背負いプロとして日々業務を行なっていく必要があります。一方で、著者は長くにわたって業務委託契約でパートナーとして参加してくださっているエンジニアたちと長らく協働してきた経験がありますが、ユーザーとしてもベンダーが妨害要素なく働けるように、協力義務を果たす必要があります
ALHアドベントカレンダー2020 12/19(土)もきくりんが担当します!今回は小ネタになります。 WSLをTetatermで使う 、とても便利なのですが標準のコンソールの使い勝手があまり良くなく (UI全般、ログが取れない、コピペしにくい等) Teratermで使えたら便利だなあと思って検索していたのですが どの記事もsshデーモンを有効にしてローカルホストにつないでいるものが多く 完全にこれになりました SSH接続を行う手順をディスるつもりはないのですがSSHを有効にするのはポートを余計に開放することになるので気が引けます またWSL2を使用する場合Winodwsと仮想レイヤーが同じになるため、ファイアウォールも別個管理となります。(→) ということでWSLのコンソール接続をTeratermのCygwin接続で拾おうかなと思います。 ##事前準備 ・WSLのインストール※導入済みの人
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く