ふも @fumokmm システム屋です。最近はアーキテクト的なことをやっています。ITで遊ぼう! 興味:プログラミング/AI/読書/数学/哲学/心理学/物理学/宇宙/投資/ゲーム(レトロRPG) もし私をフォローしていただけますと、私のフォロワーが増えます。※ポスト内容は基本的には個人の意見です ※Amazonアソシエイトプログラム参加者です onl.tw/XNHeeKq
はじめに 開発部の ikasat です。 皆さんは git, ssh, rsync のような外部コマンドを呼び出すスクリプトを書きたくなったことはありますか? 個人的にこの類のスクリプトは最初はシェルスクリプトとして書くのですが、改修を重ねるうちに肥大化して処理も複雑になり、 後から Python のような汎用プログラミング言語で書き直すことがよくあります。 外部コマンド呼び出しを書き直す際に、Git 操作のために pygit2、 SSH 接続のために paramiko のようなライブラリをわざわざ使うのは大がかりだったり、 rsync に相当するようなこなれたライブラリが存在しなかったりする場合があります。 そのような時は標準ライブラリの subprocess モジュールを利用し、Python から外部コマンドを呼び出すことになるでしょう。 しかしながら、Python のチュートリアルペ
極限まで詳細を省けば何とか20分で雰囲気だけでも伝えられるんじゃないかと思って書きました。書き終えてから見返したら多分無理なので誇大広告となったことを深くお詫び申し上げます。 背景 概要 脆弱性の影響 ページキャッシュやsplice パイプ マージの可否 下準備 攻撃手順 まとめ 背景 先日Dirty PipeというLinuxカーネルの脆弱性が公表されました。 dirtypipe.cm4all.com Linuxのパイプに関する脆弱性なのですが、仕組みは意外とシンプルでぎりぎりブログでも伝わるかもしれないと思ったので自分の理解を書きました。あといつも細かく書きすぎて長くなるので、今回は雰囲気だけでも伝わるようにとにかく説明を簡略化し、ふわっとした概要だけでも理解してもらえるように頑張りました。その結果、若干正確性に欠ける部分があるかもしれませんがお許しください。細かい部分はまた別の記事でま
これは「Rubyist近況[1] Advent Calendar 2021」の6日目の記事です。 adventar.org 自称 Rubyist なので近況を書きます。 2021年10月末で30年ほど勤めた富士通グループを退職しました。 11月からは SmartHR という会社で働いてます。 3年ほど Ruby は仕事ではあんまり使ってなかったのですが、また Ruby を仕事で使うようになりました。 会社から配布された PC は Core i7 メモリ32GB の MacBook Pro なんでかなり人権がある感じなんですが、人生初 Mac で1ヶ月位経ってもまだ慣れなくて、VM で Ubuntu Desktop 入れようか迷ってます。 近況は以上です。以下は富士通グループの入社〜退職までのメモ。長いので読まなくていいです。 1991〜 設立7年目の今はなき「富士通長野システムエンジニアリ
Googleは開催中のイベント「Google I/O 2022」の基調講演で、Dart言語のフレームワークであるFlutterの最新版「Flutter 3」を発表しました。 Introducing Flutter 3 at #GoogleIO! Now featuring: Stable support for macOS and Linux apps Improved @Firebase integration ...and much more! Details here → https://t.co/7PLgfRBobE pic.twitter.com/XYzmCn3NYN — Flutter (@FlutterDev) May 11, 2022 2月に登場したFlutter 2.10でWindowsアプリケーション開発が正式版となったのに続いて、Flutter 3ではMacとLinu
イギリスの政府当局が子持ちの親御さん向けに配布した「子どものPCに入っていたら注意すべきソフトウェアリスト」が、あまりにハイレベル過ぎるということでインターネット上で話題になっています。 話題になっているのはTwitterユーザーの@G_IWさんがツイートした以下の画像。 This utter crap is being distributed through schools from the 'local authority' so presume @WalsallCouncil today. The level of disinformation is staggering. I'd be proud to find my kids learning to use any of these. Except Discord but that's nothing to do with ha
ITエンジニアとしてChatGPT(GPT-4前提)を用いる際の使い方のメモです。 革新的な使い方等は一切記述がないのでご注意ください。 問い合わせ方法について 1. 条件を箇条書きする ほしい結果の条件を箇条書きします。 ChatGPTは話し言葉や文章で問い合わせても結果を得ることができますが、複雑な条件を文章で伝えることはそれなりに難しいことから、指示を出す人間側が楽をするために箇条書きにします。 複雑な問い合わせの場合には必要に応じて親子関係等の構造化を取り入れます。 2. 指示を追加する 問い合わせ結果が意図したものでない場合には指示を追加します。 最初の問い合わせで必ずしも望む結果が得られるとは限らないことから、要件に合わせて指示を追加し微調整します。 例えばサンプルコードの生成であれば、ライブラリや処理系のバージョン、設定の記述方法等できる限り詳細に指示を出した方が望む結果が得
Greg K-H @gregkh Linux kernel developers do not like being experimented on, we have enough real work to do: lore.kernel.org/linux-nfs/YH%2… 2021-04-21 17:27:05 Yoshimasa Niwa @niw ミネソタ大学がLinuxから追放された模様... “I will now have to ban all future contributions from your University and rip out your previous contributions” lore.kernel.org/linux-nfs/YH%2… 2021-04-22 01:24:20
ラックについて 今回買ったラックは、なぜかネジを締めるとWIFIが繋がらなくなる事象が発生した。多分金属製だからと思われる。 面白いことに、手をラックの近くに置くとWIFIがつながる。(繋がらない場合もある) すべてのラズパイがWIFI接続というわけではなくmasterのみなのであんまり影響がないが、本事象は完全に想定外だったのでラック選びは要注意。 ラックの組み立て 説明書あったが、ネジの種類のラベルが貼っていなくて全然分からなかった。 ので、公式が動画を出しているのでこちらを参考に組み立てた。 なぜかネジが足りなかったり余ったりしているが、ガタガタしていないので一旦気にしない。 OSをSSDにインストール OSは「Ubuntu Server 22.04.2 LTS(64bit)」を使う。 歯車のところからWIFIやssh、キーボードレイアウトなど設定をよしなにやる。 Mac側の接続
オープンソースの電子書籍リーダーソフト「Librum」は、PDFや電子書籍ファイルであるEPUB・MOBIのデータを読み込んで本棚として共有できるほか、7万冊以上の無料書籍を自由にダウンロードして複数端末で読書進度も合わせて共有できます。 librumreader.com/ https://librumreader.com/ Librumの公式ページにアクセスし、「Download」をクリック。今回はWindowsからダウンロードしていますが、Windows、GNU/Linux、macOSに対応しており、iOSとAndroidは後日対応予定とのこと。 ダウンロードした「librum-windows-0.11.0-installer.exe」をダブルクリックして開きます。 インストーラーが開いてライセンスが表示されるので、「I accept the agreement」にチェックを入れて「N
さくらインターネット、会員登録不要で無償利用可能なオンラインシェル環境 「さくらのクラウドシェル」を2023年5月25日より提供開始 クラウドコンピューティングサービスを提供するさくらインターネット株式会社(本社:大阪府大阪市、代表取締役社長:田中 邦裕)は、ブラウザから無料で利用できるシェル環境「さくらのクラウドシェル」の提供を2023年5月25日より開始します。 「さくらのクラウドシェル」はオンラインのシェル環境で、すでに開発者向けの環境がインストールされているため、ご自身の環境に手を加えることなくすぐに利用することができます。 基本機能は会員登録不要のプランにて利用可能です。また、必要に応じて会員IDを利用することでアクセス制限を緩和することが可能です。それに伴い、デプロイ・リリース用サーバとしての利用や外部I/Fを利用するようなプログラミング環境としての利用など柔軟に利用できます。
はじめに この記事は、Docker入門シリーズ記事3本の1本目です。 Dockerで環境構築するための最低限の概念理解 Dockerで環境構築するための最低限のコマンドを一通り実践する 【Docker Compose】設定内容を1行ずつ理解しながらLaravel環境構築(PHP-FPM、Nginx、MySQL、Redis) また、WindowsでDockerを利用する際の重要な設定に関する記事もありますのでこちらもご確認ください。 WindowsでDockerを使う時、正しくファイル配置しないと激重になるので注意 概要 この記事では、 Docker未経験者、初心者向けに Dockerでアプリケーションの開発環境を構築するために必要な 最低限の概念を解説します。 詳細な解説はかなり省いています。 Dockerとは何をするためのものか Dockerは、アプリケーションの実行環境を構築するための
IT系に身を置いていると、つい新しい知識ばかりを追いかけがちになるけど、CS的な基礎知識や、Linuxのコマンドとかの(もちろんソラでコマンド10個のオプションを言える必要は、無い)も当然大事なわけです。というか、土台となる知識が無いと、新しい知識がちゃんと身につきません。 だけど、普段使わない、手を動かさない分野のスキルはどんどん忘れていきます。歳をとると加速度的に忘れていきます。 そしてヤバいのは、分かっていることと、分かっていないこと、できること、できないことの区別がつかなくなることです。 人は分かる範囲でしか物事を理解しないので、「分かっていないことを知る」という行為を行なって「分かる範囲」を広げる、または最低でも維持する営みを続けていかないとどんどん判断する時に必要な材料が狭まっていきます。 Java 1.5の知識で、Java17時代の判断はできないですよね、10倍以上違うんだか
rm -rf /やったことある人。 私はないです。 以下はAndreas Müller( Twitter / GitHub / LinkedIn / Medium )による記事、9 Evil Bash Commands Explainedの日本語訳です。 9 Evil Bash Commands Explained 初めてターミナルを使って、そしてそれを理解したときのことを覚えています。 あらゆるファイルにアクセスし、全てのプログラムを実行し、黒い画面に何かを入力するだけでシステムの全てを完全に掌握できることに気がついた、あの感覚。 そしてもちろん、致命的ミスを犯して全てを失った、あのときの恐怖も。 私は本当はシステム管理者ではありませんが、長年にわたってLinux/UNIXベースのシステムで作業してきたので、コマンドを実行しようとしてEnterキーを打つことを躊躇う状況に何度も遭遇しまし
2023/04/29: これくらいの情報はググればすぐに出てくると思いいったん非公開にしましたが、意外とそうでもなかったので自分用メモとして再公開しました。 1. ソフトウェアのダウンロード元を変更してシステムをアップデートする (*) Super キー(= Windows キー)を押して、software と入力し、「ソフトウェアとアップデート」を選択します。 「設定...」ボタンを押して、「Ubuntu のソフトウェア」タブの「ダウンロード元:」から ftp.jaist.ac.jp などの国内ミラーサーバーを選択します。 アップデートが存在する場合は、表示されるウィンドウの指示にしたがってパッケージを更新し、Ubuntu を再起動します。 2. キーボードの CapsLock キーを Control へ置き換える /etc/default/keyboard を編集します。
Experience SSH certificates for yourself in <5min⚡! Here are some of our best tips & tricks for using SSH more effectively. This post will cover how to: Add a second factor to your SSH login Use agent forwarding safely Exit from stuck SSH sessions Keep a persistent terminal open Share a remote terminal session with a friend (without Zoom!) Add a second factor to your SSH Here's five different ways
Windows 10 バージョン2004 ビルド19041(通称、May 2020 Update)では、WSL(Windows Subsystems for Linux)がバージョンアップしました。WSL2+Docker Desktop for WindowsでAWSサーバレス開発環境を改善してみようと思います。 データアナリティクス事業本部の藤川です。2020年5月下旬に、Windows 10 バージョン2004 ビルド19041(通称、May 2020 Update)が正式にリリースされました。Windows版Dockerユーザにとっては待望のWindows Updateになりました。 最近、Macで開発する方が増えていると思います。クラウド/WebサービスはLinuxで運用するケースが多く、UNIX由来のOSであるLinuxやmacOSとの親和性が高いこともあり、これらOSが開発環境
学習している内容や日々の考え事など、さまざまな情報を入力しながら自然に整理していくパーソナル・ナレッジ・マネージメント(PKM)ツールが注目されています。 しかし便利ではあるものの使い方が難しかったり、マニアックな設定が要求されたりするPKMツールが多い中、高機能なのに簡単に利用できるRemNoteが、最近モバイルアプリも登場して頭一つ抜けた存在になってきたように思います。そこで本稿では初心者向けにRemNoteの使い方の紹介を通して、PKMの基本的な考え方について深めてみます。 情報が複雑になってきたら、ツールも進化しなければいけない 忘れてしまっては困ることがあると、私たちはメモをとります。買い物でそろえるもの、テレビで耳にしたお得な情報、来週の予定、ちょっとした考え事。どんなことであっても私たちはメモをとります。 手段は紙でもスマートフォンでも変わりません。ふだんは意識しないほど当た
はじめに 新しいサービスにはじめて触れるとき、どうやって学べば良いかが分からずに困ることってありませんか? 特にパブリッククラウドは、サービス数が非常に多い上にアップデートが早いため、キャッチアップするのが大変ですよね。 本記事では、Microsoft Azure を学びたいと思っている方を対象に、オススメの学習方法についてまとめていきます。 想定読者 本記事が以下の皆様の Azure 学習の一助になれば幸いです。 これから Azure を学ぼうと思っている方 既に Azure を使っており、もっと学びたい方 AWS (Amazon Web Services) 経験者の方で Azure に興味がある方 GCP (Google Cloud Platform) 経験者の方で Azure に興味がある方 主要な学習リソースの概要 色々な学習リソースがありますが、Azure 公式ドキュメント と
昨日、大学生協推奨のPCが20万のWindowsマシンなのを見てなぜMacじゃないのかという声がTLに流れていたり、それで思い出したのか、逆にMacじゃなくてLinuxを使っている人はなぜそうしてるのかみたいな話がvim-jpで盛り上がったりしていた。 Windowsを使い始めてから17年、Macを使い始めてから8年、Linuxデスクトップを使い始めてから6年経ち、今は用途に応じてその3つをどれも使っているという感じなのだが、個人的にはどれも善し悪しだと思っているので、状況に応じて何を使うべきか自分の考えを書いておく。 大学生は何を買うべきか 特にプログラミングとかやるつもりがない大学生でお金がある人は、素直に推奨されたWindowsマシンを買っておくと、大学側が使わせてくるソフトが動かない可能性も流石に低いだろうし、周りと環境が揃っていて質問とかしやすいので無難だと思う。金がなければ中古
なんだろう、嘘つくのやめてもらっていいですか? 大学も技術者認定機関も、いつまで古いまたは間違ったシェルとカーネルの概念を説明し続けるのでしょうか? シェルはカーネルの言葉をユーザーの言葉に翻訳したり、出力結果をユーザーに中継したり、カーネルを防御したりする層ではありません。指定したコマンドを実行するだけのプログラムです。勉強中の学生か代理執筆業者が適当な文献を調べて書いたとしか思えません。そして他人の説明を自分の言葉に置き換えるのが上手い人がおかしな説明をさらに広めています。個人サイトやオンライン学習サイト程度であれば適当なことを書いていても気にも留めませんが、大学や技術者認定機関のような正しいことを書いているに違いないと思えるような所までもが間違ったことを書いているから困ったものです。 みなさんは大学や技術者認定機関が言っていることなら正しいと思いこんでいないでしょうか? そんなことあ
はじめに 今作業しているマシンが、インターネットへ通信するときに、送信元IPアドレスが何になるか知りたいときはないでしょうか。 そんなときに私が使っているのが、https://ifconfig.io/ というサービスです。 以下の特徴があります。 curl ifconfig.io で単純に IPアドレスだけ返ってくる JSON に対応 IPv6 に対応 http / https 両対応 個人的に覚えやすいアドレス(主にこの理由で使っています) 使い方 ブラウザで https://ifconfig.io を開くと大体の使い方が分かります。 サクッと curl ifconfig.io 単純に IP アドレスだけ知りたときは curl ifconfig.io を実行します。一番良く使います。 $ curl ifconfig.io 203.0.113.1 IPv6 での通信の場合は、IPv6 アド
[速報]マイクロソフト「.NET 5」正式リリース。1つのフレームワークでWindows/Mac/Linuxのデスクトップ、サーバアプリ、Webアプリなどが開発可能に マイクロソフトは、アプリケーションフレームワークの最新版となる「.NET 5」正式版のリリースを発表しました。 .NET 5は「.NET Framework」と「.NET Core」フレームワークを統合し、その後継となるオープンソースのフレームワークです。 これにより長いあいだマイクロソフトのもっとも重要かつプロプライエタリなフレームワークだった「.NET Framework」が、その地位を正式にオープンソースの「.NET 5」へ譲ることになります。 Announcing .NET 5.0 https://t.co/dwjJTZA399 — .NET (@dotnet) November 10, 2020 .NET 5はWi
皆さんnpmパッケージのバージョンを上げるときにハマって依存地獄から抜けられなかったことはありませんか? 私はあります。 複雑怪奇な依存関係を調べてみようとnode_modulesを覗いてみて、そのカオスっぷりに臭いものに蓋をしたことはありませんか? 私はあります。 そこでnode_modules以下について調べてみたのですが、node_modulesにどんな問題点があって、npmやyarn, pnpmは何を目指していたのか時系列順に紐解いた方がわかりやすいことに気づきました。 ここでは初期のnpmが抱えていた問題から今に至るまでを順を追って説明します。 するとnode_modulesの仕組みの他に、各パッケージマネージャの方針の違いが見えてくるはずです。 初期の頃のnpm (~2015年以前) この頃はシンプルで、依存関係はそのままnode_modulesのディレクトリ構造に反映されてい
BPF Performance Toolsを読んだので、感想ブログです。 先に感想を言っておくと「最高」でした。 BPF Performance Toolsとは? NetflixでKernel・パフォーマンスにかかわるチューニング・アーキテクチャを専門にしているBrendan Greggさんが書いた本です。BPFのiovisorというTracing分野の第一人者でもあります。 www.brendangregg.com 2019年12月に発売したばかりなので、BPFの分野では最新の本でしょう。他の著書に有名な本として(日本語版の)「詳解システム・パフォーマンス」があります。 BPF Performance Toolsは「詳解システム・パフォーマンス」第二弾と言えるかもしれません。ちなみにページ数は880Pあり、Kindleで表示される読み終わるための平均的な時間は「27時間30分」で、大作R
これは はてなエンジニア Advent Calendar 2019 2日目の記事です。 こんにちは、 id:masawada です。2ヶ月前まではブログチームのエンジニアでしたが、最近はマンガビューアを開発するチームに在籍しています。 弊社では開発に利用する端末を決められた上限額の範囲内で自由に選ぶことができます。多くのエンジニアがmacOS上で仕事をしており、WindowsやLinuxをデスクトップ環境として利用しているエンジニアはどちらかというと少数です(少なからずいます)。近年では多くのプロダクトのローカル開発環境でDockerを利用できるようになっており、OSの差異によってセットアップに躓くことがなくなった結果Linuxデスクトップへの移行のハードルが下がる傾向にあります。 自分も去年まではmacOS上で仕事をしていましたが、今年の頭にLinuxデスクトップに切り替えてようやく1年
検索エンジンを何故作ってみたかったか もともとこのブログのコンセプトのNLP的なことで、情報を整理してなにか便利にしたかった(Googleと同じモチベーションの世界の情報を整理する) 4年前にほぼ同じシステムを作ろうとしたとき、500万を超える大量のインデックスを検索するシステムは、数学的な理解度が十分でない+エンジニアリング力が伴わないなどでギブアップした背景があり、今回再チャレンジしたくなった ほぼすべての機能をpure python(+いくつかの例外はある)で実装して、世の中の ソフトウェアを使うだけ の検索エンジンをやってみたなどではなく、実際に理解して組んでみることを目的としたかった 依存パッケージと依存ソフトウェア GitHubのコードを参照してください 様々なサイトを巡回する必要があり、requestsが文字コードの推論を高確率で失敗するので、nkf をlinux環境で入れて
インストール済みのフォントを好きな文字で一覧表示できる、Windows, macOS, Linux対応の国産アプリを紹介します。 国産なので日本語フォントはもちろん、英語フォントもサポートされています。 いろいろなフォントで比べてみたい人、特にフォントがたくさんの人に便利です! fontvuer fontvuer -GitHub fontvuerの特徴 fontvuerのダウンロード・インストール fontvuerの使い方 fontvuerの特徴 既視感を抱いた人は大正解! fontvuerは先日リリースされたばかりの国産アプリで、以前当ブログで紹介した「Fontviewer(紹介記事)」の後継の新作です。 基本的な機能はほぼ同じですが、使い勝手が大幅に強化されています!
Linux Daily Topics xzパッケージに仕込まれた3年がかりのバックドア、スケール直前に見つけたのはMicrosoftの開発者 “アップストリームのxzリポジトリとxz tarballsはバックドア化されている(The upstream xz repository and the xz tarballs have been backdoored)”―2024年3月29日、Microsoftに所属する開発者 Andres Freundが「Openwall.com」メーリングリストに投稿したポストは世界中のオープンソース関係者に衝撃を与えた。 backdoor in upstream xz/liblzma leading to ssh server compromise -oss-security 主要なLinuxディストリビューションにはほぼ含まれているデータ圧縮プログラ
もじゃ(@s10akir)です。paizaラーニングでプログラミング学習動画制作のアルバイトをしている専門学生です。 以前こんな記事を書かせていただきました。 paiza.hatenablog.com 今回は、VSCodeとDockerを使って簡単に開発環境を構築する方法について書いてみたいと思います。 code.visualstudio.com ちなみに前回はプレビューリリースされた「Remote Development with VSCode」と「PaizaCloud」を使って、面倒な環境構築なしで快適に開発しようぜという記事だったのですが、しばらくして「Remote Development with VSCode」が正式版のVSCodeでも使えるようになりましたね!わざわざInsider版のVSCodeを入れなくてもよくなりましたね。 前提の環境について この記事の内容が試せるのは
by renatomitra Linuxの開発者のリーナス・トーバルズ氏が、技術コミュニティの「Real World Tech」内で「IntelはECCを死に至らせている」と発言し、IntelのECCに対する姿勢を厳しく批判しています。 Real World Technologies - Forums - Thread: Ryzen 9 5000 series processor https://www.realworldtech.com/forum/?threadid=198497&curpostid=198647 Linus Torvalds On The Importance Of ECC RAM, Calls Out Intel's "Bad Policies" Over ECC - Phoronix https://www.phoronix.com/scan.php?page=n
開発環境構築用のメモを自分用に書き残しておく。 GUIアプリケーション この辺りを入れる。 Google Chrome Google日本語入力 1Password 4 Dropbox Docker Desktop for Windows 未だに購読版に移行せず買い切り版の1Password 4を利用している。 Windows + Vを利用するとクリップボード履歴を有効化できるので、済ませておく。 Google日本語入力の設定 HENKANキーでIMEを有効化 MUHENKANキーでIMEを無効化 というキー設定を普段利用しているのでそのように設定する。 直接入力 入力文字なし 変換前入力中 変換中 以上の4つのモードについて、それぞれキー設定のエントリを追加する。 Windowsライセンス認証 Windows 10 Pro 64bit辺りをライセンスキー無しでインストールしていると思うので
2019年9月24日に CentOS 8 がリリースされます。 RedHat Enterprise Linux 8 の情報を元に、CentOS 8 で想定される変更点をまとめました。 PHP や MySQL といったミドルウェアのバージョン変更や、 サービスの追加・削除など数多くの変更が入ることになります。 RHEL 8・CentOS 8 に PHP 7.3 をインストールする(remi 使用) 2020-07-07 CentOS 8 のリリースは2019年9月24日 CentOS 8 はリリース前の状態で、現在コミュニティによる開発が行われています。 2019年7月時点では、ベースとなる「RHEL 8」のパッチ開発と検証作業が進行中です。 前回バージョンアップ時は、「RHEL 7」の27日後に「CentOS 7」がリリースされましたが、 今回の進捗を踏まえると 2019年8月~9月 頃の
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く