並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 580件

新着順 人気順

C言語の検索結果241 - 280 件 / 580件

  • NetBSDを手探りで移植したときの話 - Qiita

    この記事は自作OS Advent Calendar 2020 7日目の記事となります。 はじめに 現在のオープンソースOSは、たとえばLinux開発ボードであればボードベンダーから移植済みのLinux環境が提供されたり、たとえばNetBSDであればクロスコンパイル環境が整備済みでドキュメントも用意されていて、最低限の移植作業で移植が完了したりします。 ぼくがNetBSDを移植した当時(1993年)はそうではありませんでした。ドキュメントもなくいろいろ手探りで、それも一人でやらざるを得ませんでした。苦労話のことは置いておいて、技術的にどういう物が用意され何を調べてどういう手順で移植していったかを記録に残せればと思います。(って前置きした割に苦労話が多いような気がします、すみません) かなり昔の話なので、けっこう忘れてることも多く、微妙に記憶が間違っていたりすることも、順番が前後していることも

      NetBSDを手探りで移植したときの話 - Qiita
    • 「スキルの掛け算」が未来を切り開く。文学部出身のひよこ大佐がレッドハットに転職できたわけ - Findy Engineer Lab

      Twitterを使って転職すること、そのメリット プログラミングに興味ありつつ文学部に進み就活で苦戦 就活情報に踊らされる中で「理系でなくてもIT業界で働ける」ことに衝撃 Linuxやオープンソースコミュニティとの出会いが武器になった 開発はできなくても翻訳ならば貢献できる さまざまな「技術遊び」が、IT企業への就活やTwitter転職を支えてきた レッドハットのカルチャーとテクニカルサポートという仕事 知的好奇心を高めて、掛け算できるスキルを見つけよう 新しい技術的な知識を学ぶことは「楽しい」 スキルを整理してアピールポイントを見つけよう こんにちは、ひよこ大佐(@hiyoko_taisa)です。およそ2年前、Twitterのあるツイートがきっかけで、レッドハット株式会社に転職しました。現在はテクニカルサポートエンジニアとして、ITインフラの自動化ツール「Ansible Automati

        「スキルの掛け算」が未来を切り開く。文学部出身のひよこ大佐がレッドハットに転職できたわけ - Findy Engineer Lab
      • 達人出版会

        探検! Python Flask Robert Picard, 濱野 司(訳) BareMetalで遊ぶ Raspberry Pi 西永俊文 なるほどUnixプロセス ― Rubyで学ぶUnixの基礎 Jesse Storimer, 島田浩二(翻訳), 角谷信太郎(翻訳) 知る、読む、使う! オープンソースライセンス 可知豊 きつねさんでもわかるLLVM 柏木餅子, 風薬 徹底攻略 AWS認定 クラウドプラクティショナー教科書 第2版[CLF-C02]対応 トレノケート株式会社 高山裕司 超楕円関数への招待 楕円関数の一般化とその応用 松谷 茂樹 手を動かしてわかるクリーンアーキテクチャ ヘキサゴナルアーキテクチャによるクリーンなアプリケーション開発 Tom Hombergs(著), 須田智之(訳) 詳解 AWS CloudFormation 潮村 哲 その決定に根拠はありますか? 確率思

          達人出版会
        • 実践!大規模言語モデル / 1000億パラメータ越えモデルを動かすには?

          こんにちは。Turing株式会社の機械学習チームでインターンをしている九州大学修士1年の岩政(@colum2131)です。 Turingは完全自動運転EVの開発をするスタートアップです。 自動運転技術において、カメラやセンサ情報は正確な制御をする上で不可欠な要素である一方、自然言語やマルチモーダルな処理が必要となる状況もしばしば存在します。特に完全自動運転車においては、音声認識によってドライバーの音声命令を認識し、リアルタイムで適切な制御を行うことや、複雑な交通状況の背景にあるコンテクストを理解させるといった要求が出てきます。そのために、「基盤モデル」と呼ばれるような、自然言語処理を含む大規模モデルの学習が必要になってくると、私たちは考えています。 そこで本記事では、言語モデルの発展の流れとTuringが目指す基盤モデルの開発について紹介します! 1. 言語モデルとは? 近年の言語処理モデ

            実践!大規模言語モデル / 1000億パラメータ越えモデルを動かすには?
          • Python 3.11の新機能(その3)関数呼び出しのインライン化 - python.jp

            Python 3.11では、パフォーマンスチューニングの一環として、Python関数呼び出しのインライン化 が行われました。既存のPythonインタープリタのしくみを大きく変更する変更ですので、簡単に解説しておきます。 先に書いておきますが、今回行われた「関数呼び出しのインライン化」は、C/C++などの inline のように、ユーザ定義関数を呼び出し元で展開してオーバヘッドを削減するものではありません。また、Schemeなどにある末尾再帰の最適化でもありません。 cevalループ¶Pythonインタープリタは、Python 3.11の新機能(その2) 特殊化適応的インタープリタ で解説したように、Pythonのソースコードをバイトコードへ変換し、順次実行します。このバイトコードを実行する関数はPythonインタープリタの心臓部であり、CPythonソースツリーのファイル Python/c

            • 登大遊氏、日本は「超正統派」のICT人材を育成すべき。そのために、自由な試行錯誤を許容するインチキネットワークの普及に取り組む(後編)。JaSST'22 Tokyo

              登大遊氏、日本は「超正統派」のICT人材を育成すべき。そのために、自由な試行錯誤を許容するインチキネットワークの普及に取り組む(後編)。JaSST'22 Tokyo 2022年3月10日と11日の2日間、ソフトウェア業界のテスト技術力の向上と普及を目指すイベント「ソフトウェアテストシンポジウム JaSST'22 Tokyo」がオンラインイベントとして開催されました。 イベントの最後には、招待講演として登大遊氏による講演「世界に普及可能な日本発の高品質サイバー技術の生産手段の確立」が行われています。 この記事ではその講演の内容をダイジェストで紹介します。記事は前編、中編、後編の3つに分かれています。いまお読みの記事は後編です。 質疑応答 登様、ご講演ありがとうございました。それでは質疑応答に移りたいと思います。 質問) 正統派が超正統派へと殻を破るきっかけは何でしょうか? 複数あると思います

                登大遊氏、日本は「超正統派」のICT人材を育成すべき。そのために、自由な試行錯誤を許容するインチキネットワークの普及に取り組む(後編)。JaSST'22 Tokyo
              • JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times

                どうも、まさとらん(@0310lan)です! 今回は、JavaScriptで簡単にExcelのようなスプレッドシートを作成できるライブラリをご紹介します! 基本的な操作はすべてJavaScriptから制御可能であり、自分の好きなようにカスタマイズできる強力な機能が多数提供されています。また、簡単なプログラムだけでファイルの書き出し機能が利用できるなど便利なメソッドも多く含まれています。 自作のWebアプリなどにも手軽に組み込めるので、ご興味ある方はぜひ参考にしてみてください。 なお、JavaScriptの基本はpaizaラーニングの「JavaScript入門編」で学ぶことができますので合わせてチェックしてみてください。 【 jExcel 】 ■「jExcel」の使い方 それでは、まず最初に「jExcel」の導入方法から見ていきましょう! 全部で3通りの方法が以下のように提供されています。

                  JavaScriptだけでExcel風のスプレッドシートを開発できる「jExcel」を使ってみた! - paiza times
                • 次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは?

                  次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは? 機械学習やAI処理の分野を中心に非常に高い人気のプログラミング言語である「Python」の次期バージョンに、処理速度の向上を目指したJITコンパイラが搭載される見通しです。 このJITコンパイラは、PythonコアデベロッパーのBrandt Bucher氏が提案し、実装しています。 そしてPython Software FoundationのフェローであるAnthony Shaw氏がブログ「Python 3.13 gets a JIT」で、このJITコンパイラについて解説しています。 これらの情報を元に、PythonのJITコンパイラがどのように実装されようとしているのか、少し紹介していきましょう。 RubyもJavaScriptもJITが高速化を実現してき

                    次期Python、ついにJITコンパイラ搭載の見通し。「copy-and-patch」と呼ばれる新たなJITコンパイラの仕組みとは?
                  • AWSも支援--プログラミング言語「Rust」人気が拡大

                    Catalin Cimpanu (Special to ZDNET.com) 翻訳校正: 村上雅章 野崎裕子 編集部 2019-11-04 08:30 AWSによる支援は、Rustチームに「AWSプロモーション・クレジット」を提供するという形態をとる。Rustチームはこのクレジットを用いてAWSのインフラを利用して、同言語を開発していくというわけだ。 RustコアチームのメンバーであるAlex Crichton氏は、「Rustプロジェクトが長年使ってきているAWSによってRustのインフラが支援されるのは、非常に喜ばしいことだ」と述べている。 Crichton氏は「この支援によってRustは、コンパイルした成果物の配布や、crates.ioクレートのダウンロード、すべてのプロセスの結合に必要なプロジェクト内での自動化のために、AWS上でインフラをホストし続けられるようになる。これらのサービ

                      AWSも支援--プログラミング言語「Rust」人気が拡大
                    • 文系出身の若手SIer社員が放送大学で情報学を勉強してレベル上げした話|lumpsucker

                      はじめにこの記事は、文系出身の若手SIer社員が放送大学で情報学を勉強した記録です。主に似たような境遇の方への情報共有を目的に執筆しました。こんなやり方もある、という参考になれば嬉しいです。 簡単に自己紹介通信会社の名前が頭につくシステムインテグレータ(SIer)で、フロントエンドエンジニア兼UIUXデザイナーとして働いています。私立大学の文系学部を卒業後、研究留学を経て東京大学の学際情報学府という大学院で修士を取得し、2018卒として新卒入社して現在3年目ですそうこうしてるうちに5年目になりました。 大学院は広い意味での情報系ではあったものの、「社会情報学」と呼ばれる分野で、いわゆるコンピュータサイエンスではありませんでした(ICT4Dと呼ばれる国際開発学と情報学の合いの子のような分野の研究をしていました)。入社前には応用情報技術者試験にも合格し、何とかついていけるかなと思っていました。

                        文系出身の若手SIer社員が放送大学で情報学を勉強してレベル上げした話|lumpsucker
                      • モバイルクロスプラットフォーム開発の夢と現実 - いつもあさって

                        iOSと Androidをまとめて開発したいという要望があり、その夢と現実の歴史。ゲームは知りません。 3行まとめ 流行りと衰退を繰り返している それぞれの差分が辛い Flutterが流行りつつある(?) ネイティブアプリ iPhoneとAndroidが2007年に発表され、今後の携帯電話のスタンダードになっていくことが予見された。当時の開発言語はObjective-CとJavaであり、ほぼ同じロジックを二つの言語で書く必要があった。現在はSwiftとKotlinに取って代わられつつあるが2つの言語で書く必要があるのは変わらない。面倒くさいよね。 クロスプラットフォーム 理論上、半分の時間でできる。OSごとで何かあって半分にはならない程度 OSのアップデート等で不具合が発生したりするのはネイティブでも同じだが、プラットフォームがアップデートしないと対応できない場合がある 早くなる分人間より

                          モバイルクロスプラットフォーム開発の夢と現実 - いつもあさって
                        • 万能ドキュメントサービス「Notion」をさらに活用できるWebサービス・Tipsを徹底解説! - paiza times

                          どうも、まさとらん(@0310lan)です! 今回は、多彩なドキュメントを作成できる万能サービスとして人気の「Notion」を、もっと便利に活用できるWebサービスやTipsをご紹介していきます。 Notion単体でもさまざまなことができますが、Webサービスを組み合わせることでデータの可視化やインタラクティブ要素の追加など多彩なことが実現できるので、まさに無限の可能性を手に入れられると言っても過言ではありません。 「Notion」を利用中の人もそうでない方も含めて、ドキュメントサービスにご興味ある方はぜひ参考にしてみてください! ■「Notion」とは まず最初に「Notion」をまだ使ったことがない人に向けて、どのようなサービスなのか概要を少し解説しておきます。 【 Notion 】 「Notion」はノートやメモなどのドキュメントを作成したり、タスク管理やWikiのようなページを作れ

                            万能ドキュメントサービス「Notion」をさらに活用できるWebサービス・Tipsを徹底解説! - paiza times
                          • なぜUserクラスは負債化しやすいのか “風刺動画”から理解する情報システム開発とモデリング

                            「“開発者体験”で世界をエンパワメントする1日。」と題し、チームや組織の課題に日々取り組む方々に向けて開催された「Developer eXperience Day CTO/VPoE Conference 2021」。ここで、READYFOR株式会社の仙塲氏が「『Userクラス』で考える技術的負債解消の観点」をテーマに登壇。まずは情報システム開発とモデリングの定義について紹介します。 クソコード動画『Userクラス』 仙塲 大也(以下、仙塲氏):こんにちは。ミノ駆動と言います。不運な時間がやってまいりました。まじめなセッションだらけなのに、はたしてこういう動画を流していいものかと。完全にネタ枠です。 このセッションの説明です。多くのサービスで技術的負債になりやすい筆頭格として、Userクラスがあります。本セッションでは、Userクラスの負債により引き起こされる弊害を描いた、風刺動画を上映しま

                              なぜUserクラスは負債化しやすいのか “風刺動画”から理解する情報システム開発とモデリング
                            • 高速化のエンジニアリング。注文してから0.722秒。100倍速いぞ!Python : 75.884 C++ : 3.392   JIT Python : 0.722 JITコンパイラで高速化されたコードを自動生成するツール。 - Qiita

                              アリスは驚きと興奮を抑えきれませんでした。彼女はすぐに新しいコードを試し、その速さに目を見張りました。今まで数時間かかっていた計算が、ほんの数分で終わったのです。 翌日、アリスはこの発見を友人たちに話しました。友人たちも同じように魔法の本を使い、彼らのコードを高速化しました。こうして、プログラミング王国全体で「JITの魔法の本」が広まりました。 やがて、アリスは王国のプログラミング大会で優勝し、JITの魔法の本の力をさらに広めることになりました。彼女は「JITの守護者」として称えられ、プログラミング王国はかつてない繁栄を迎えました。 アリスはいつも心に誓いました。どんなに強力なツールも、それを使う人々の努力と情熱があってこそ、本当の力を発揮するのだと。彼女の言葉は次世代のプログラマーたちに伝わり、JITの魔法の本は永遠に受け継がれていくのでした。 前回のあらすじ。 Python count

                                高速化のエンジニアリング。注文してから0.722秒。100倍速いぞ!Python : 75.884 C++ : 3.392   JIT Python : 0.722 JITコンパイラで高速化されたコードを自動生成するツール。 - Qiita
                              • データライフサイクルとトレードオフ | フューチャー技術ブログ

                                ソフトウェアの中身を大きく2つに分解すると、プログラムとデータに分かれます。コードコンプリートやA Philosophy of Software Designなど、評判の良いソフトウェア設計の本はいくつかありますが、それらはどれもプログラムの説明がメインでデータのライフサイクルについての説明はなかったと思います。しかし、データの表現にもいくつもの方針があって、それによるトレードオフがあるな、というのはもやもやと考えていたので、その考えをまとめて文章にしてみました。 データといっても、処理中の短期間の間では変わらない、いわゆるマスタデータ的なデータです。ジャーナルというか、トランザクション的なデータはここでは触れません。 この記事では、それぞれのトレードオフについて考えていきます。 即値(リテラル) 定数 コマンドライン引数 環境変数 設定ファイル ダウンロードコンテンツ オンラインデータベ

                                  データライフサイクルとトレードオフ | フューチャー技術ブログ
                                • Rust言語のための統合開発環境「RustRover」正式リリース、JetBrains。個人の非商用利用は無料

                                  Rust言語のための統合開発環境「RustRover」正式リリース、JetBrains。個人の非商用利用は無料 Kotlin言語や統合開発ツールIntelliJ IDEAなどの開発を行っているJetBrainsは、Rust言語用の統合開発環境「RustRover」の正式リリースを発表しました。 All systems are GO! We’re over the moon to see RustRover finally land! Read all about the release and the new free non-commercial license in our blog post https://t.co/s3MnqfiTrs, and see how we can help you stay focused on what matters pic.twitter.com

                                    Rust言語のための統合開発環境「RustRover」正式リリース、JetBrains。個人の非商用利用は無料
                                  • gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog

                                    こんにちは、Wantedly の Infrastructure Team で Engineer をしている南(@south37)です。 今日は、WANTEDLY TECH BOOK 6 から「gRPC Internal」という章を抜粋して Blog にします。 「WANTEDLY TECH BOOK 1-7を一挙大公開」でも書いた通り、Wantedly では WANTEDLY TECH BOOK のうち最新版を除いた電子版を無料で配布する事にしました。Wantedly Engineer Blogでも過去記事の内容を順次公開予定であり、この Blog もその一環となっています。 Wantedly における Go 導入にまつわる技術背景 | Wantedly Engineer Blog (本記事は Go Conference 2019 Autumn にて無料配布した冊子『WANTEDLY TE

                                      gRPC Internal - gRPC の設計と内部実装から見えてくる世界 | Wantedly Engineer Blog
                                    • Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌

                                      この記事はRust Advent Calendar 2021の12/24日の記事です。 仕事ではScalaを使っていますが、趣味のプログラミングではRustで書いたものが増えました。Rustは楽しいですね。 今回は、Rustでオブジェクト指向プログラミングに関数型デザインを導入することで、スケーラブルなプログラムを書く方法(スケーラブル・プログラミング)について書きます。 「スケーラブル・プログラミング」といえばScalaです。Scalaの「スケーラブル」という言葉には「小さいプログラムも大規模なプログラムも同じ概念で記述できるべきである」という、柔軟性や拡張性を重視した設計の意図が込められています。それを実現するために必要なものは、オブジェクト指向と関数型を組み合わせたマルチパラダイムな設計です。 Scalaはマルチパラダイム言語の先駆者(今も先頭を走り続けています)ですが、他の言語にも

                                        Rustを使ってスケーラブルなプログラムを書く方法 - かとじゅんの技術日誌
                                      • 『Webで使えるmrubyシステムプログラミング入門』は、現場で経験値の高い先輩から指導を受けている錯覚を起こさせる一冊だった!! - Magnolia Tech

                                        Webで使えるmrubyシステムプログラミング入門 作者:近藤宇智朗発売日: 2020/11/25メディア: Kindle版 この手のミドルウェア・プログラミング言語の入門・解説書、ひたすら語り口を優しくしているだけだったり、単にリファレンスをなぞっているかのどちらかで、教科書的な硬さとかが鼻につくんだけど、この『Webで使えるmrubyシステムプログラミング入門』は全然違う。次元が違う。 明らかに、”現場で経験値の高い先輩から指導を受けている”ような錯覚を感じさせる内容、流れになっている。 今後、この手の入門書は全部こんな感じでお願いします(あとは公式リファレンス読むんで!)と言いたくなるくらいの良書。マジで良い。 環境がmacOSを使いつつ実際のプロセスはVirtualBox上のLinuxで進む(ちゃんと両方使う前提になっている) 冒頭でmrubyのビルドの解説をする際に、さらっと「デ

                                          『Webで使えるmrubyシステムプログラミング入門』は、現場で経験値の高い先輩から指導を受けている錯覚を起こさせる一冊だった!! - Magnolia Tech
                                        • 完全無料!JavaScriptのWeb開発手法を学習できるYouTube動画コースの厳選まとめ! - paiza times

                                          どうも、まさとらん(@0310lan)です! 今回は、JavaScriptをベースにしたWeb開発手法のトレンドを無料で学習できる海外のYouTube動画コースをご紹介します! フロントエンドからバックエンドまでクオリティの高い動画コースを厳選しており、GitやFirebaseなどの予備知識も含めて多彩なコースをまとめました。 英語だから…と言って見ないのは非常にもったいないレベルの動画ばかりなので、ソースコードの動きをよく見ながらぜひ挑戦してみてください。 なお、JavaScriptの基本はpaizaラーニングの「JavaScript入門編」で学ぶことができますので合わせてチェックしてみてください! ■Web開発の基礎を学ぶ まずはWeb開発を始める前に抑えておきたい基本的な知識を学習できる動画コースから見ていきましょう! 主に、HTML / CSS / JavaScriptの3点を重点

                                            完全無料!JavaScriptのWeb開発手法を学習できるYouTube動画コースの厳選まとめ! - paiza times
                                          • エイプリルフールに便乗しているサイトまとめ2023年版

                                            By ほしのるる 毎年おなじみのエイプリルフールが今年も始まってしまいましたー!どれが本当でどれが実はウソなのか、どこからどこまでがネタなのか、いや、もしかしたらこれはネタのふりをしているだけでマジなのでは?というような感じで混沌としていくカオスな一日の始まりです~! ◆エイプリルフールのネタのタレコミのやり方 この記事中に未掲載のネタで「エイプリルフールやってる!」というのを発見したときや「うちもエイプリルフールをやってます!」という自薦の連絡はネタのタレコミ用メールフォームから送信してもらえればOKです!掲載されやすくなる押さえるべきポイントとして、GIGAZINE編集部員がサイトを見に行っても「どれがエイプリルフールのネタなのだ……?」ということで瞬時に判断できない&ネタの意味がわからず記事化をあきらめてしまうしかない……となったり、「どこかがいつもと違うらしいが元のサイトの状態を知

                                              エイプリルフールに便乗しているサイトまとめ2023年版
                                            • #Arduinoを使った制御実験の基礎解説🤖 #実験 - 制御工学ブログ

                                              この記事ではArduinoを用いた制御実験を進めるにあたって必要な事項について説明します。Arduinoは、安価なIoTデバイスであり、広く利用されています。制御工学教育でもArduinoは有用です。ここでは、実際にArduinoを利用するにあたっての基礎事項を一通り説明します。制御実験について説明した動画や関連記事リンクは最下部に置いています。 Arduinoとは スケッチの基本構造 setup()関数 loop()関数 スケッチの主な用語 ライブラリ ピンモード デジタル書き込み(digitalWrite) アナログ書き込み(analogWrite) デジタル読み取り(digitalRead) アナログ読み取り(analogRead) プログラム例(スケッチ) Arduinoを制御器として使う 制御入力 制御出力 離散時間系と制御周期 Arduino UNOのスペック その他の特徴 制

                                                #Arduinoを使った制御実験の基礎解説🤖 #実験 - 制御工学ブログ
                                              • 2021年4月15日 パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す | gihyo.jp

                                                Linux Daily Topics 2021年4月15日パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す 開発者の間で人気上昇中のRustだが、Linuxカーネル開発においても1年ほど前からメインラインでのRustサポート―新たにデバイスドライバを記述する言語としてRustを認めるよう求める声が強くなりつつある。3月にはカーネル開発者のMiguel Ojedaが最初の"Rust for Linux"となるパッチをlinux-next(次期カーネルへのマージを希望するパッチが集められたGitリポジトリ)にポストし、Stephen Rothwellによってマージされた。 kernel/git/next/linux-next.git - The linux-next integration testing tree Ojedaはさらに一歩踏み込んだステップとし

                                                  2021年4月15日 パニックお断り―Linus、"Rust for Linux"の盛り上がりに釘を刺す | gihyo.jp
                                                • Linuxシステムの勉強に役立つコマンドの紹介 - セキュアスカイプラス

                                                  こんにちは、SSTでWeb脆弱性診断用のツール(スキャンツール)開発をしている坂本(Twitter, GitHub)です。 先日の記事では Linux のネットワークインターフェイス名を出発点として systemd や udev について調査しました。 どうやって調査したかというと、 検索キーワードをあれこれ試してみて、見つかった記事から気になるコマンドや設定ファイルがあれば、実際の内容を確認し、 そこからmanページを辿ってパッケージ情報にさかのぼり、パッケージがインストールした他のコマンドや設定ファイルの一覧から構成を把握し、 さらに関連するコマンドや設定ファイルをmanページで辿って・・・ というサイクルを繰り返しました。 時には同じmanページを数度に渡って辿り直し、読み直したりして自分の中の情報を整理しました。 読者の皆様は、そのような時どうされますか? 初めて触るLinuxディ

                                                    Linuxシステムの勉強に役立つコマンドの紹介 - セキュアスカイプラス
                                                  • Linuxのローダを自作する

                                                    概要 Linuxのスタンダードなローダ、ld-linux-x86-64.so.2 の挙動を理解するために、ld-linux-x86-64.so.2を置き換え可能な https://github.com/akawashiro/sloader を2年ほど前から開発しており、ある程度動くようになってきました。 目次 ローダとは何か ld-linux-x86-64.so.2 の問題点 sloader sloader の現状 sloaderの実装 libc.so内のシンボルの解決 ロードされたプログラムのためのTLS領域の確保 sloaderの課題 お願い ローダとは何か Linuxで実行可能なバイナリファイルをexecve(2)を使って実行するとき、その実行パスは大きく2つに分類されます。 Linux カーネルが直接、バイナリファイルをメモリ空間にロードする。 バイナリが指定したローダ[1]がバイ

                                                      Linuxのローダを自作する
                                                    • これから流行る言語 | 雑記帳

                                                      新言語にできることはまだあるかい なんとかWIMPS 最近(1ヶ月くらい前)、こんな記事が出ました: 新しいプログラミング言語が出てこない(新しく出てた言語を追記) – きしだのHatena Kotlin, TypeScript, Rust, Swift以降にみんなが話題にするような新しい言語が出てこない、それはなぜか、みたいな趣旨です。客観的に見れば「新しい言語は常に出続けている」わけですが、「みんなが話題にするような」というのが多分曲者なんでしょうね。 例え話をすると、新しい若木は常に生えてきているんだけど、大木に成長するには時間がかかるので、大木にしか興味のない人には「この8年間で新しい大木は登場していない」と判断してしまうのかもしれません。 まあ私としても、Web (HTTP) APIを書く言語とか、JSON色付け係が使う言語はもう出揃ってしまったのかもしれないという気はしなくもな

                                                      • 【2024年】ITエンジニア本大賞まとめ - Qiita

                                                        アジャイルプラクティスガイドブック チームで成果を出すための開発技術の実践知 チーム・組織にプラクティスを導入し、根付かせるために! 116の手法を一冊にまとめた“実践”の手引き チームでのアジャイル開発には、開発技術やツールなどの「技術プラクティス」の活用が重要です。 プラクティスはそれぞれの目的や役割を意識することで効果を発揮します。しかし、目まぐるしく状況が変化する開発では、当初の目的を忘れて、プラクティスに取り組むこと自体が目的化してしまうチームも少なくありません。 本書は、チーム・組織でアジャイル開発に取り組んできた著者が、プラクティスの効果的な選択・活用のしかたについて、自らの実践経験に基づいてまとめたガイドブックです。 架空の開発現場を舞台にしたマンガとともに、チーム開発の様々なシーンで役立てられるプラクティスを、幅広くかつわかりやすく解説しています。開発現場に備えておけば、

                                                          【2024年】ITエンジニア本大賞まとめ - Qiita
                                                        • 【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita

                                                          これは何? 競技プログラミングをPythonでやるときに注意すべき点をまとめました。 言語選択編 PythonがAtCoderには5種類ある AtCoderにはPythonの処理系が5つ入っています。具体的には Python (CPython 3.11.4) Python (Mambaforge / CPython 3.10.10) Python (PyPy 3.10-v7.3.12) Python (Cython 0.29.34) SageMath (SageMath 9.5) の5つです。それぞれ特徴があります。 Python (CPython 3.11.4) 一番オーソドックスなPythonです。 一般に(競プロ界隈でなく)Pythonというときはこれを指すと思います。 Python (Mambaforge / CPython 3.10.10) mambaforge経由で導入されたp

                                                            【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita
                                                          • Rust for Linuxでは独自のallocライブラリを使っている

                                                            Rustを第二言語として採用してデバイスドライバなどのモジュールをRustで書けるようにする「Rust for Linux」が近々マージされる予定だともLinus氏自身が発言しています。 そんな期待のかかるRust for Linuxですが、提案された当初は期待こそされていたものの、様々な懸念点も指摘されていました。 その1つが標準ライブラリの一部であるallocクレートの設計です。 このクレートはヒープ領域を扱うBox、Vec、StringなどRustではお馴染みの構造体を提供しています。 Rustの標準ライブラリはOSのサポートを前提とした構造体も多くあります。そのため、OSそのものを書くようなベアメタルプログラミングにおいて標準ライブラリをそのまま使うことはできません。 使えるのはcoreと呼ばれる依存関係のない全く無いライブラリがありますが、allocはOSのサポートが必要なヒープ

                                                              Rust for Linuxでは独自のallocライブラリを使っている
                                                            • テキストエディタをフルスクラッチで書いてみた - Qiita

                                                              テキストエディタをフルスクラッチで書いてみた 完成品はこちらになります https://github.com/sxclij/sxceditor2 それVimじゃねぇの? これはもしかして、既存のテキストエディタを真似しただけで、本当にフルスクラッチで作ったわけじゃないんじゃないかと思い始めました。GitHub上にも数多くのVimクローンが散見されています。そこでC言語の力を借りて「本当にフルスクラッチで作ったテキストエディタ」を作ろうと思い立ちました。 とは言っても筆者は宗教上の理由によりmallocを使わない事にしているので今回の記事では一切動的メモリ確保はしません。しかし便利な世の中になった物で、mallocを一切使わなくてもテキストエディタが作れる様になりました。 本記事ではそんな「誰でも簡単にできるテキストエディタ開発」をやってみたいと思います。 1. プロジェクトの背景 なんでテ

                                                                テキストエディタをフルスクラッチで書いてみた - Qiita
                                                              • 脳みそが固くなったおじさんSEが機械学習を勉強してみた - Qiita

                                                                【はじめに】 本記事は 「機械学習をどう学んだか by 日経 xTECH ビジネスAI② Advent Calendar 2019」 の19日目になります。 おじさんSEの私がどうやって機械学習を勉強したかを記します。 きっかけは当時抱えていた分類課題において、「機械学習が使えるんじゃね?」というところから始まりました。 闇雲にやっていたので正直記憶は曖昧です。 経歴 プログラム歴は30年近くあります。 小学生の時に覚えたMS BASICから始まり、Z80アセンブラ、MC68000アセンブラ、FORTRAN、C(UNIX)、C++(Mac)、VB、Java(Android)、VB.NET、C#と触ってきました。 いろいろな言語に触れてきましたが、どれも極めるほどガッツリやっていたわけではありません。 機械学習に関しては20年以上前、いわゆる第二次AIブームの終わり頃に卒論のテーマでニューラ

                                                                  脳みそが固くなったおじさんSEが機械学習を勉強してみた - Qiita
                                                                • 【2020年版】無料&商用利用可能なイラスト画像を提供するWebサービス8選を大公開! - paiza times

                                                                  どうも、まさとらん(@0310lan)です! 今回は、Webサイトやブログなどで有効活用できる無料のイラスト画像を提供するサービスを厳選してご紹介します。 いずれも個人利用はもちろん、商用利用もOKなイラスト画像ばかりなうえ、ユーザー登録も不要なので手軽にダウンロードして使うことができます。 Webサイトに効果的なアクセントを追加したい人も含めて、ぜひ参考にしてみてください! 【 Open Doodles 】 印象的なデザインのイラスト画像を無料で提供しているのが「Open Doodles」です。 PNG / SVG形式の画像ファイルをダウンロード可能で、さまざまな用途のWebサイトやブログなどで有効活用できるものばかりです。 たとえば、Webサイトの単純なテキストであっても、以下のように画像を配置するだけで効果的なアクセントになるわけです。 また、ジェネレーター機能も提供されており、自分

                                                                    【2020年版】無料&商用利用可能なイラスト画像を提供するWebサービス8選を大公開! - paiza times
                                                                  • 無料でiPhoneやiPad上でコマンドやプログラムを実行できるターミナルアプリ「a-shell」

                                                                    リサーチ・サイエンティストのNicolas Holzschuchさんがオープンソースで開発する「a-shell」は、「ls」や「ping」といったコマンドやプログラムをiPhoneやiPad上で実行できる、シンプルなターミナルアプリです。iOS 13.0以降をインストールしたAppleデバイスであれば、無料で利用できます。 a-Shell https://holzschu.github.io/a-Shell_iOS/ まずはa-shellをインストールします。iPhoneのSafariからa-shellのウェブサイトにアクセスし、赤枠のボタンをタップ。 App Storeが起動するので「入手」をタップします。 「インストール」をタップ。 アプリのインストールが完了したら「開く」をタップします。 a-shellが起動しました。 キーボードの上側にあるボタンは、左から「Tabキー」「Contr

                                                                      無料でiPhoneやiPad上でコマンドやプログラムを実行できるターミナルアプリ「a-shell」
                                                                    • Linuxカーネルが難しい?Rustで実装できそう!

                                                                      「ついに、RustでLinuxカーネルを実装できる!」 待ち望んだ感を出してみましたが、2年前に記事を書いてから、すっかり忘れていました。LinuxカーネルのRustサポートについての意見を求められたら、「技術的には面白いけど、実用レベルではないね。」と、上から目線の回答でエンジニアレベルの高さをアピールするつもりでしたが、2年間の間、誰にも聞かれませんでした。 近々、LinuxカーネルにRustサポートが取り込まれそう、ということで、デバイスドライバを実装してみました。 Rust対応カーネルのコンパイルまずは、Rust対応を有効にしたLinuxカーネルをコンパイルする必要があります。「カーネルってコンパイルするものなの?」という読者は、ネットの長老たちに叡智を求めましょう。「インストール直後に、メモリ削減のために不要な機能を無効にして、カーネルコンパイルしたんじゃ。」というような、太古の

                                                                        Linuxカーネルが難しい?Rustで実装できそう!
                                                                      • Z80+C言語で16ビット機級の本格的なゲームが創れるゲーム機(VGS-Zero)を作ってみた - Qiita

                                                                        はじめに 2024年1月1日に VGS-Zero (Video Game System - Zero) という RaspberryPi Zero 2W のベアメタル環境で動作するオリジナルのゲーム機エミュレータと SDK を公開しました。 VGS-Zero は、RaspberryPi Zero 2W をテレビに HDMI ケーブルで接続し、USB ゲームパッドで遊ぶタイプ(据え置き型)の新しいゲーム機です。 無料でゲームを開発&販売ができる SDK も公開していて、開発したゲームを完全ロイヤリティフリーで自由に販売して頂くことができます。 なお、OS は Linux ではなく独自カーネルです。 特徴 VGS-Zero の特徴について、カーネル視点とゲーム機視点の両面から解説します。 独自カーネルの特徴 ラズパイ全般(※Picoを除く)は Linux で動かすのが一般的ですが、VGS-Zer

                                                                          Z80+C言語で16ビット機級の本格的なゲームが創れるゲーム機(VGS-Zero)を作ってみた - Qiita
                                                                        • 爆速で年収3倍を実現した黒澤さんに「30代からの勉強で成功する秘訣は何なのか?」と根堀り葉掘り聞いてみた

                                                                          今よりもっとスキルを上げたい、ついでに年収も上げたい!という場合、iPhoneアプリの作り方講座で生徒の年収が5倍になったという報告があるように、プログラミングは短期間で大きな効果が実感できる可能性を秘めています。そこで、30代半ばからプログラミングの勉強を開始してわずか数年で年収を3倍以上アップすることに成功したという人物がいるという話を聞き、「最速で年収アップを実現するには何をどうすればいいのか」という秘訣や具体的解決策をあれこれと聞いてみました。 世界最大級のオンライン学習プラットフォーム | Udemy https://www.udemy.com/ ・目次 ◆「プログラミングなんて大嫌い!」がプログラマーになれた理由とは? ◆オンライン講座「Udemy」をどうやって活用したのか? ◆約600講座を受講した黒澤さんの「初心者におすすめの最初の1本」 ◆初心者に伝えたいこと ◆スキルを

                                                                            爆速で年収3倍を実現した黒澤さんに「30代からの勉強で成功する秘訣は何なのか?」と根堀り葉掘り聞いてみた
                                                                          • データベースライブラリTkrzwの初版リリース - 豪鬼メモ

                                                                            データベースライブラリであるTkrzwの初版をリリースした。Kyoto Cabinetの正式な後継製品である。本家のサイトはここである。設計目標の通り、高速かつ堅牢で多目的に使える実装になったと思っている。私の下手な英文を読ませるのも忍びないので、ここに概要を書いておこう。 ダウンロードとインストール このディレクトリにソースファイルのパッケージが置いてあるので、ダウンロードする。あとは典型的なインストール手順を踏襲すればよい。 $ tar zxvf tkrzw-0.9.1.tar.gz $ cd tkrzw-0.9.1 $ ./configure $ make $ make check $ sudo make install自分の環境でもテストをしたいという人は以下のコマンドを実行してもよいし、しなくてもよい。テストケースはGoogle Testを使って書かれているので、予めそれをインス

                                                                              データベースライブラリTkrzwの初版リリース - 豪鬼メモ
                                                                            • Objective-C小史

                                                                              Mediumより。 BY ハンセン・スー これまでに、ユーザがダウンロードしたiPhoneアプリは1,400億を超えています1。iPhoneの成功は、サードパーティ製アプリのエコシステムに関係しています。2008年にApp Storeがデビューしたとき、すべてのアプリは、Apple以外のコミュニティではほとんど使われていなかったプログラミング言語Objective-Cで書かれていました。それ以来、Objective-Cの使用は爆発的に増加し、アプリを作る開発者たちのゴールドラッシュとなりました。Appleは2014年に新しい言語Swiftを導入しましたが、AppleのiOSオペレーティング・システムのほとんどは今もObjective-Cで書かれており、今後何年もAppleのデバイスで使用されるでしょう。 多くのプログラマがObjective-Cを知ったのは、iPhoneアプリ革命の時でした

                                                                                Objective-C小史
                                                                              • bashの機能いろいろ

                                                                                シェルスクリプトを書いていると「それはbash独自機能だから」「POSIXシェルには無い機能だから」と言われることがよくあります。だいたいは「それみんな使ってるのでPOSIXで標準化されてると思った」といったものなのですが、本記事では便利なものから「え、それやるくらいならPythonでよくない?」まで、bashの機能を紹介しようと思います。 for文でC言語っぽくループを回す シェルスクリプトでfor文といえばfor i in $(seq 10)とかをよく使いますが、bashだと以下のように書けます。

                                                                                  bashの機能いろいろ
                                                                                • 【ABA Games】インディーゲーム制作歴40年。PC黎明期から生成AI時代まで折れずに続ける理由

                                                                                  【ABA Games】インディーゲーム制作歴40年。PC黎明期から生成AI時代まで折れずに続ける理由 2024年3月25日 インディーゲーム開発者 長 健太 早稲田大学でコンピュータサイエンスを学び、学士号・修士号・博士号を取得。メーカー就職後はITの研究職を経て、現在はマネジャーとしてシステム開発に携わる傍ら、大学時代から一貫してインディーゲーム開発者としての顔を持ち続けている X ABA Games GitHub Blog -ABAの日誌- シューティングゲームを中心にこれまで400作以上もの作品を生み出し、インディーゲーム界の第一人者として国内外で知られる「ABA Games」こと長健太氏。 2023年9月に公開した「小さなゲーム開発の楽しみ」という電子冊子も話題となり、開発の楽しさを心から味わっている様子がうかがえます。 今回は長きに渡りインディーゲーム業界を牽引してきた長さんにイ

                                                                                    【ABA Games】インディーゲーム制作歴40年。PC黎明期から生成AI時代まで折れずに続ける理由