[フレーム]
1 - 40 件 / 59件
タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
いつものようにヘロヘロと仕事をしていると、突如担当編集の松尾氏からMessengerで「これに対するちゃんとした回答を書けるのは大原さんだなということで、また歴史物をお願いしたく」という依頼が飛び込んできた。 いやちゃんとした回答も何も、上のTreeで出題されたSEライダー氏が正解を出されているわけですが、歴史的経緯というか、ここに至るまでの話というのが長い訳で、その辺りを少し説明してみたいと思う。 ちなみに出題に少しだけ違和感がある(なぜ10bitがキリがいいと思うのか?)のは、筆者もこっち側の人間だからかもしれない。 回答の前に、その根底にある2進数採用の経緯 そもそも非コンピュータ業界の方からすれば、2進数がベースという辺りから違和感を覚えるのではないかと思う。実際、世界最初の計算機(≠電子計算機)とされる「バベッジの階差機関」(写真1)にしても、世界最初の電子計算機(※(注記)1)であるE
SEライダー @Sys_Rider プロ野球好きのITコンサル。バイクネタは非常に稀です。 基本的にIT系属性。 農業IoT、産業系基幹、行政系、エネルギー系、たまに金融系などなどアレコレPMやっていて近年はITコンサルに転向。徐々に経営側の知識得ながら資格取得目指す。 SEライダー @Sys_Rider 面談で未経験なのに経歴盛り盛り詐称を洗い出す究極の質問を編み出した。 「1byteは何故8bitなのか?」 「何故キリがいい10bitじゃなかったのか?」 これ即答出来る人に未経験はまずいない。 そしてしっかり基礎から学んでると即答出来る。 2022年02月01日 07:16:51 SEライダー @Sys_Rider 今回の質問は、完璧な答えを望んではいません。 冒頭に言ったように『ITに興味あるか否か』を見るため、敢えてツッコミ所を持たせた質問を考えついたのでした。 もしITに興味がなく
JavaScriptプログラマーのためのTypeScript厳選ガイド という本を書きました。JavaScript中級者でTypeScript初心者のプログラマーに向けたTypeScriptの入門書です。 これまで何度かTypeScriptの記事を書いてきました。 TypeScript再入門 ― 「がんばらないTypeScript」で、JavaScriptを"柔らかい"静的型付き言語に|ハイクラス転職・求人情報サイト AMBI(アンビ) 「がんばらないTypeScript」のための現実的な設定を考える ─ 4レベルの厳しさを使い分けてTypeScript疲れを克服しよう!|ハイクラス転職・求人情報サイト AMBI(アンビ) 今回の本は、既存のJavaScriptプロジェクトをTypeScriptに移植するという場面を想定した「がんばらないTypeScript」路線ではなく、TypeScri
Rustで作るプログラミング言語という書籍が先日発売されました。簡単なプログラミング言語を作ってバイトコードに変換して実行したりネイティブコードに変換して実行してみよう、という本で、大変面白く読みました。最終的にまあまあ本格的な言語になるので、これを元にするとわりとちゃんとした言語を作れそうです。 この書籍で最終的に作られる言語はこちら: GitHub - msakuta/ruscal: Programming language implementation learning project ちょうど私も、以前から構想していた言語があったので、ちょっと作ってみました。というのも、TypeScriptを設定記述言語としてさまざまなプログラミング言語から使えると便利ではないかとずっと思っていたのです。 この設定言語で複雑なことができる必要はなく、最終的にはJSONに準ずるデータ構造になればよい
今年に入ってすぐくらいから、coding agentを活用した、いわゆる vibe coding を行うようになりました。 vibe codingとは、おおむね「自然言語でcoding agentに指示をしてプロダクトを作る」という開発スタイルのことを指すとみていいようです*1。 これはまさにソフトウェア開発における革命です。しかも、この革命はすでに "成って" います。 たとえば、ここ1ヶ月くらいで私が仕事で生産するコードの8割くらいは、coding agentによるものです。そして、おそらく1年以内にこれは9割を超えます。 この流れはもはや不可逆です。すでにvibe codingによって作られるプロダクトは、これまでとは異なる質を持っているからです。 つまり、vibe codingはただagentic codingがコーディングの役割を担うというだけにとどまりません。vibe codi
httpxはものすごく遅いから使うべきでないかもしれない...という話を書こうと思ったんですが、検証してみたら、確かにaiohttpよりは2倍以上遅いんですが、設定次第で多少はマシかもしれない、という結論です。 前提として、async modeです。いまどきのAPI serverは全部asyncかなとは思います。今回はsync modeには興味がないので検証してないですが、sync modeではまったく違う結果かもしれません。 あと文脈としては httpx を推しているブログを読んで、いや httpx はパフォーマンスに問題があるんだよな、ということを周知したかったというのもあります。 note.com ことの起こりは Python の openai library が 0.x から 1.x になったときにものすごくパフォーマンスが劣化したという問題があったことです。 github.com い
FastlyからStarleyに転職しました。Starleyは音声会話型おしゃべりAIアプリ「Cotomo」(コトモ)を開発している会社です。 cotomo.ai StarleyはFastlyとは打って変わってB2Cのスタートアップです。今回の転職ではせっかくなので生成AIに多少なりとも関わりたいと思っていて、Starleyはその点でがっつり生成AIを使ったサービスを開発していて、LLMの自前運用もしています。そして「生成AIで雑談」というのはおそらく技術的にはかなり難しい挑戦で、そこに「ときめき」がありました。 ところで、Fastlyはちょうど5年ほど勤めましたが、このたび大規模レイオフがあってその対象になってしまいました。レイオフの対象になった原因はおそらくこのところパフォーマンスが下がっていたせいです。去年の夏に新型コロナに掛かって以来ずっと体調が悪く*1、ついには2024年の3月か
GitHub ActionsからGitHub wikiを更新したいことがたまにあります。たとえば、何かのメトリクスを見やすく整形したものなど、repositoryのデータを何らかの形で加工したドキュメントを作りたいときです。コード生成したmarkdownドキュメントをコミットしてもいいですが、それよりはシンプルで運用が楽です。 今回は、GitHub repoで管理する原稿の文字数(など)を継続的に見れるページを作ると便利かなと思って作りました。自分一人だったらローカルで適当なツールを叩けばいいですが、同repoを見れる編集者にも共有したいとなると独立したページがあるほうが便利ですからね。 リポジトリはこんな感じです。 github.com 基本的には、 actions/checkout を使って "${{ github.repository }}.wiki" をcloneして編集してpus
プログラマの抱いている名前についての誤謬 こういうよく知られた翻訳エントリがあって、主張しているのはだいたい次のようなことです。 名前とはその人のアイデンティティの中核をなすものだから、システムは「その人が主張する名前」を尊重するべきである 「名前」を入力するべきシステムの開発者は、名前に関して暗黙の仮定を置いてしまうことが多い たとえば「名前はファースト・ネームとラスト・ネームに分かれている。」というような しかし、それらの仮定は基本的に全て間違っている これに関して「この要求を満たすシステムを実装するのは不可能ではないか」という反応が散見されます。 しかしそれは、この「プログラマの抱いている名前についての誤謬」に関する誤謬ではないでしょうか。 このエントリには直接書いてないのですが、このエントリでは要するに 名前について仮定を置くな と言っているのです。言い換えれば、 名前を入力するフ
課題編 シェルスクリプトで「あるグローバルな状態を変える操作を行い、その結果をチェックし、状態をもとに戻す」みたいなタスクをするときに「その結果をチェックし」のところでコマンドの終了ステータスを変数に入れて置きたいみたいなことがあります。例えば、次のようなコマンド操作です。 set -e # グローバルな状態を変える操作を行う git merge --no-ff --no-commit $main_branch || true # 結果をチェックしてexit codeを変数に入れる git diff --cached --exit-code --quiet ; code=$? # グローバルな状態をもとに戻す git merge --abort # 上位プロセスに結果を渡す exit $code スクリプト全体には set -e (コマンドが失敗するとシェルスクリプトが即座に終了する)を効
次子のために5ヶ月の育休をとった記録です*1。 家族構成は、外資系*2勤務フルタイムワーカーの私、同じく外資系勤務フルタイムワーカーの妻、長子のmfx氏(2017年9月生まれ)、そして次子のrfx氏(2022年6月生まれ)という四人家族です。 私が育児休業をとったのはrfx氏の育児のためです。妻がはrfxの誕生の1ヶ月前から産休に入り、11月いっぱいまで育休をとりました。私は妻と入れ替わるように11月下旬から翌年の4月下旬まで育休をとったため、約5ヶ月間育児休業を取得することになりました。つまり、rfx氏が保育園に入園して慣らし保育が終わるまでの期間を、私たち夫婦で分担して育休をとり、育児に集中することにしたのです。 長子のmfx氏が生まれたときは、私は育休を取得しませんでした。当時は人数が一桁台のスタートアップ企業に勤めていましたが、育休は取ろうと思えば取れたはずです。しかしなんとなく「
追記(2023年11月29日): 2023年11月1日からまたZaimでアメリカン・エキスプレスとの連携ができなくなりました: (11/2 掲載)アメリカン・エキスプレスの連携不具合について:よくある質問|家計簿アプリ Zaim。マネーフォワードではできているようです。困惑の極み...。とりあえずZaimのプレミアムプランは解約しました。 最近、我が家の家計のための家計簿アプリを、5年ほど使ったマネーフォワードMEからZaimに乗り換えました。今のところ、機能的には満足しており、かつこれまでできていなかった我が家の家計スタイルに合った家計簿の運用がようやくできるようになったので、大変満足しています。 もともとあった課題として、マネーフォワードMEは我が家の家計スタイルを実装していないというものがありました。我が家の家計スタイルは、別に特殊なものではなく、次のゼクシィの記事の「【2】お互いに、毎月定
コモドールが1985年に発売したコンポーネント「Amiga」には、CGアートを制作&表示できる環境が備わっていました。そんなAmigaの宣伝に用いられていたCGアート「Four-Byte Burger」を「説明書に含まれるモニター直撮り写真」を参考にして復元する様子がYouTubeチャンネル「Ahoy」によって投稿されています。 Four-Byte Burger - YouTube 復元を試みられた「Four-Byte Burger」は、Amigaのグラフィックチームに所属していたJack Haeger氏が作成したCGアートです。 Haeger氏が作成したCGアートの一部はインターネット上にデータが残っています。しかし、「Four-Byte Burger」のデータは出回っておらず、Amigaの説明書やパンフレットに掲載されたモニター直撮り写真のみが残っています。 「Four-Byte Bu
Every byte explained and reproduced QUIC is a secure UDP-based stream protocol that forms the basis of HTTP/3. In this demonstration a client connects to a server, negotiates a QUIC connection with TLS encryption, sends "ping", receives "pong", then terminates the connection. Click below to begin exploring. The connection begins with the client generating a private/public keypair for key exchange.
続き: 40代の男性プログラマーが5ヶ月の育休を取った - Islands in the byte stream 2022年の6月に第二子であるrfxを受け入れました。それに伴い、11月最終週から4月第1週いっぱいまで、約4ヶ月の育休をとることにしました。 第一子であるmfxのときは育休はとらなかったので、はじめての育休です。なんならプログラマーとして働き始めてから十余年、1ヶ月以上休みをとるのは初めてです。 rfxが産まれてからこのかた、認知的に高負荷な状態が続いていて、そのわりには仕事にも全然集中できなくてけっこうしんどい思いをしていたので、ここで育休をとって育児に専念できるようになるのは正直ほっとします。一方で、育休給付金を踏まえても収入が激減すること、4ヶ月の間キャリアを休止することについては不安もあります*1。 とくに収入については結構苦しいところです。育休給付金は雇用保険でまか
Byte Byte is a easy and productive runtime for Javascript . It makes making complex programs simple and easy-to-scale with its large and fast Rust API Aim The aim for Byte is that modern javascript runtimes are not easy to learn and usually there is a learning curve of about a month to gain knowledge and get comfortable in the software. With Byte, this learning curve is reduced to about a day. Wit
Minimal, clean code for the (byte-level) Byte Pair Encoding (BPE) algorithm commonly used in LLM tokenization. The BPE algorithm is "byte-level" because it runs on UTF-8 encoded strings. This algorithm was popularized for LLMs by the GPT-2 paper and the associated GPT-2 code release from OpenAI. Sennrich et al. 2015 is cited as the original reference for the use of BPE in NLP applications. Today,
Chrome Web Store chrome.google.com 使い方ですが、GitHub PR pageに次のようにCI statusにcheckboxが現れるので、完了通知がほしいCI statusにチェックをつけるだけ。 チェックされたCI statusが完了(success or failure)になると、次のようなデスクトップ通知が出ます。この完了したときの通知をクリックすると該当のGitHub PR pageのタブをアクティブにします。 tab idごとにcheck状態をもっているので、リロードしてもtabごとのcheck状態は維持されます。 現在(v0.9.2)の機能はこれだけです。既知のバグとして、GitHubのPR画面で差分をみたりdiscussionに戻ったりしているとcheckboxが出ないことがありますが、そういう場合はリロードするとcheckboxが出ると思
2021年現在、M1 MacでDockerを使うのが大変という話がちょいちょいあります。 個人的な事情でいうと、私は現在、AMD64 Linuxでしか動かせないソフトウェアを開発していて、Dockerもちょいちょい使う、という感じです。なのでAMD64 MacでVMWareを使ってUbuntu VMを使って開発しています。 一方で、新規で購入できるMacbook ProがM1しかない、デスクトップマシンとしてWindowsやUbuntuを使うことにまだ踏ん切りがつかない(なんだかんだで10年Macで仕事をしてきているので...)ということもあり、どうしたものかと思っていましたが、会社が開発機としてIntel NUCを用意しているというので申請して導入したことで、一気に諸問題が解決しそうだなというところに至りました。 Intel NUCはIntelが作っているmini PCで、サイズ的には幅12
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Time to First Byte (TTFB) is a foundational web performance metric that precedes every other meaningful user experience metric such as First Contentful Paint (FCP) and Largest Contentful Paint (LCP). This means that high TTFB values add time to the metrics that follow it. It's recommended that your server responds to navigation requests quickly enough so that the 75th percentile of users experienc
デイリーポータルZの新着記事をBlueskyに投稿するbotを作りました。 github.com デイリーポータルZは2024年1月1日から独立した会社になるようですが、状況から察するに実態としては消滅まで秒読みと思われます。インターネットからデイリーポータルZが無くなるのは寂しいので、どこかの企業がスポンサーになってくれることを期待しています。 dailyportalz.jp それはそれとしてBlueskyのボットを作るのは結構楽しいですね!ボットのコードはRustで書きました。GitHub Actionsの定期実行でRSS feedをポーリングして新しいものがあったらポストする、という素朴なプログラムです: bsky.app Bluesky APIへのアクセスはsugyan/atriumを使いました: memo.sugyan.com 投稿の本文をリッチテキストにできたり*1、OGPカー
Update: April 1st, 8:05pm Eastern 2024. It appears like Google began to slowly roll out the promised price hikes, see new pricing here. The pricing hikes are in fact real. Update: This is Apr 1st 6am Easter, 2024 – I do not see any documentation updates or other confirmations from google official sources that this is indeed happening. It would be great if google could come out with an official cla
I’m excited to share swift-playdate-examples, a technical demonstration of using Swift to build games for Playdate, a handheld game system by Panic. Why Swift? Swift is widely known as the modern language for app development on Apple devices. However, over the course of its first decade, it has grown into a versatile, multi-platform language targeting use cases where you’d otherwise find C or C++.
1Byte=8bitに対する技術的な回答 ということでやっと冒頭の話に戻ってきた。 ところで次はByteという概念だ。そもそもByteって何? という話である。Byteの意味は何かという話は先のSEライダー氏の回答にもあるように、ISO/IEC_80000-13:2008の中で、情報系の単位として8bitの塊を1Byteと表現する、と定義されており、それが1Byte=8bitの根拠ではあるのだが、そもそもそのByteという言葉はどこから出て来たのか? これは超絶古くて1956年にさかのぼる。最初にByteという言葉を発明したのは、IBMの(失敗した)スーパーコンピュータであるStretch(IBM 7030)の設計の際だそうだ。この設計にあたって、bitとの混用を防ぐためにByteという言葉を作った、という説明がある(写真4)。 一般的にはCharacterと呼ばれるところを、内部ではBy
初歩的なプログラミングの例題としてよく例に出されるものとしてFizzBuzz問題というものがあります。このFizzBuzz、人類の知識を結集すると、どれくらい簡単に書けるのでしょうか? この記事の内容をざっくり2行で: 様々なプログラミング言語の最小のFizzBuzzコードを比較する 最短で1バイトで実装できる (注) この記事は以前Qiitaに投稿されたFizzBuzzを1byteで実装すると同一の内容になります。 Code Golf とは 問題の条件を満たすプログラムをできるだけ短い文字数で実現する競技は Code Golf と呼ばれます。 スポーツとしてのゴルフと同じように、スコアが小さいほど優れています。 Code Golfのスコアとは、文字数(=何バイトか)で、空白や改行なども1文字としてカウントされます。 *コードゴルフはコンピュータプログラミング・コンテストの一種。参加者は与
See this page fetch itself, byte by byte, over TLS This page performs a live, annotated HTTPS request for its own source. It’s inspired by The Illustrated TLS 1.3 Connection and Julia Evans’ toy TLS 1.3. It’s built on subtls, a pure-JS TLS 1.3 implementation that depends only on SubtleCrypto. Raw TCP traffic is carried via a simple WebSocket proxy. Use HTTP/2 Key Raw bytes in hexadecimal. Outgoing
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
フォン・ノイマンの草稿 ENIACもそうで、サイクル速度0.2ms(つまり動作周波数5KHz)で、最大10桁の数字の演算が可能(演算に要するサイクル数は演算の桁とか種類で異なる)だったが、これを構築するのに1万7000本以上の真空管を必要としたという。なにせ1桁分の数字を記憶するのに10bitのRing Counterを利用した関係で、36本の真空管が必要だったというのだから、そりゃデカくなるわけである。 で、もっと良い方法はないか? という話であるが、ENIACの次に開発されたEDVACの設計の初期段階で、ジョン・フォン・ノイマン博士が"First draft of a report on the EDVAC"(EDVACに関する報告書の第1草稿)なる文書をリリースしている。ちなみにIEEEだと有償の配布になっているが、"First draft of a report on the ED
現代の .NET では "zero-byte reads" という最適化が随所で行われています。 この記事ではその "zero-byte reads" とはなんなのか、という事についてつらつら書いていこうと思います。 そしてそれに深く絡むピン留めのお話も。 どんな最適化か。 ピン留め手段と GC 負荷。 まとめ。 豆知識。 References どんな最適化か。 端的にいうと、Socket や Stream がネイティブとデータのやりとりする際に、managed heap に確保されているメモリを長時間にわたりピン留めしないようにするための最適化です。 どういう事か。 たとえば C# の Socket.ReceiveAsync は Windows 上では Win32 API の WSARecv をラップしたような形になっています。 C# の Socket.ReceiveAsync には M
Posted Thu 11 August 2022 Authors Damiano Melotti, Maxime Rossi Bellom Category Android Tags reverse-engineering, fuzzing, vulnerability, exploitation, Android, 2022 Following our presentation at Black Hat USA, in this blog post we provide some details on CVE-2022-20233, the latest vulnerability we found on Titan M, and how we exploited it to obtain code execution on the chip. Introduction During
Hello size coding fans. Today, I have something amazing to share: A tiny raycasting engine and city generator that fits in a standalone 256 byte html file. In this post I will share all the secrets about how this magical program works. Here’s my tweet that contains the code and a video of the output... A City in a Bottle 🌆 <canvas style=width:99% id=c onclick=setInterval('for(c.width=w=99,++t,i=6e3
I'm curious if it was related to the file name. I created a few 1-byte files with just "1" in them, with different names, including "output04.txt". No problems so far. Also uploaded variations with "\n" and "\r\n" after the "1". And enabled sharing to anyone with the link. No issues so far.Google drive does support metadata like a description and comments. I wonder if someone posted some copyright
1Byte=7bit派閥 この流れに逆行したのが通信の分野である。要するにASCII(American Standard Code for Information Interchange)コードといわれるものだ。通信の分野では、bit数が増えるほど通信の時間と必要なハードウェアコストが増える、という認識であり、それもあって8bit化には頑強に抵抗した。ASCIIコードの策定は、現在のANSI(American National Standards Institute)の前身であるASA(American Standards Association)の委員会の1つであるX3 committee(のちにX3.2.4に移管され、そののちX3.4になる)で策定された通信規格である。 "American Standards"という名前から分かるように、米国英語の通信しか考えてないというのは悪口に過ぎ
Goにはioパッケージにまつわるbyte単位のストリーミング処理機能が素敵なので、その良さを紹介してみようと思います。 io.Reader/io.Writerについて ioパッケージにてReaderとWriterのインターフェースは以下のようになっています。 type Reader interface{ Read(b []byte) (sz int, err error) } type Writer interface{ Write(b []byte) (sz int, err error) } 読める書けるだけのシンプルな定義です。このシンプルさが素敵なんです。 派生インターフェース io.Seeker io.Closer io.ReadSeeker io.ReadSeekCloser io.WriterSeeker io.ReadWriteSeeker io.ReadCloser io
In my last post, we explored how to build WASM modules, both with and without WASI support, using Clang. In a comment on Reddit, it was mentioned that much of the setup I walked through in that post could be avoided by just leveraging Zig’s WASI supprt. This is a great point, and I would recommend doing the same. The following command is inarguably simpler than what I described. However, there are
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く