React Native Matsuri 2021で発表したスライドです。 https://reactnative-matsuri.com/ja

既に Stage 4 になっているので諦めていたんですが、流石に見逃せないかなと思ったので TC39 の Discourse にトピックをたててみました。意見がある方はこちらにお願いします。 https://es.discourse.group/t/fix-at/983 議論に伴って私が実際に欲しかったものをモジュールにして公開してみました。 https://github.com/petamoriken/safe-at それといまいちユーザーからの声が伝わっていない感じがしたのでハッシュタグ #fix_ecmascript_at を用意してみました。協力をよろしくおねがいします。 String#char{At, CodeAt} という存在を忘れてたんですが、この似た名前のメソッドたちが引数を整数に丸めるのに String#at が丸めないのはたしかに変だということに気づいてしまったので、自
オラクルは、同社が提供している企業向けのJavaディストリビューションであるOracle JDKのライセンスを変更し、無料で本番環境などでの利用を可能にしました。 同社が9月14日付で公開したブログ「Introducing the Free Java License 」で、次のように説明しています(関連するプレスリリース「Oracle Releases Java 17」)。 Oracle JDKを無料で提供し、四半期ごとのセキュリティアップデートも提供する。 新ライセンス「Oracle No-Fee Terms and Conditions (NFTC)」は、商用利用や本番環境での利用を含むすべてのユーザーに対して無料での利用を許可する。 Oracle JDK 17から、この無料のリリースとアップデートの提供を開始する。これは次の長期サポート(LTS:Long Term Support)が
TypeScriptの話です。default exportを使うことが有害であるかのような言説に異議を唱えるためにこの記事を書きました。 あらかじめ断っておきますが、この記事はTypeScriptを使っているプロジェクトのモジュール構成に関する話です。npmに上げられているようなNode.jsパッケージ間でのimport/exportはまた別のエコシステムが関わってくる話なので、分けて考えてください。Denoにおけるimport/exportに関しては、この記事での議論がそのまま通用します。 基本的にdefault exportのみを使うべき 筆者の考えでは、named exportの方が、あなたのプロジェクトに対する害が大きいです。むしろ、「基本的にdefault exportのみを使う」ことを考えた方が良いと思います。それは以下のような理由からです。 named exportを積極的に
B! 5 0 0 0 GitHub Actionsで自作のアクションを作っているものの中で、 Dockerを使ってその中でシェルスクリプトを走らせているようなものがありました。 それをCompositeというスタイルに変更して使うようにしました。 GitHub Actionsの自作方法 octopress-actionで起こった問題 Docker to Composite Composite便利 GitHub Actionsの自作方法 GitHub Actionsを自作するには、最初はDockerを使ってその中で何かを走らせるか、 JavaScriptを使って走らせるという2択でした。 GitHub Actions用のアクションを自作する Dockerを使うと好きなimageの中で走らせることは出来ますが、 基本的にはそのアクションの中で閉じた作業になります。 したがって、actions/
SNSなどで話題になっていたので調べてみたら勉強になったのでメモ。 環境 Pythonでの実装例 例1 例2 例3 エラトステネスの篩 Rustでの実装例 試し割り法 エラトステネスの篩 アトキンの篩 おまけ: GMP Benchmark 高速化のテクニック 上限個数を見積もる Wheel factorization オチ Repository References 環境 手元のMacBook Pro 13-inchの開発機で実験した。 2.8 GHz Intel Core i7 16 GB 2133 MHz LPDDR3 Pythonでの実装例 例1 最も単純に「2以上p未満のすべての数で割ってみて余りが0にならなかったら素数」とする、brute force 的なアプローチ。 import cProfile import io import pstats import sys def m
この記事は、体の動きとか音声入力でアプリケーションを操作したり、プログラミングをするにはどうすればいいかということをいろいろ実験してみた記事です。 この記事には、実用性があるものと現実的に使うにはトレーニングが必要なものが混在しています。そのため、そこまで期待してはいけません。 この記事は、TalonとmacOSの音声入力で書いたものを手作業で修正しています。 マイクはBlue Microphones Yeticasterを使いました。 きっかけ t_wadaさんが老眼について書いていたのが、この記事を書いたきっかけの一つです。 プログラマ35歳定年説はとっくに過去のもので、35歳を過ぎても能力も報酬も伸び続けるし、生涯現役プログラマのロールモデルとなる方も増えてきた。ただ諸先輩方から聞いた話をまとめると、ベテランプログラマの前に立ち塞がるのは「老眼」で、こればかりは本当に恐ろしい。何か対
この記事は エムスリー Advent Calendar 2018 12日目の記事です。 こんにちは。エムスリー エンジニアリンググループの三浦(@yuba)です。基盤開発チームというところで各サービスチーム共用のシステムの開発保守に携わっており、そこで見つけた面白い動作を掘っていったら意外な知識にたどり着いたという話をいたします。 化けた日付はどこから来た? あるサービスの管理画面の動作を検証していたときのことです。バリデーションの振る舞いを確かめるためにいくつかテストケースを作りながら実際の動きを試していたところ、不思議な現象を見つけました。 次のように日時入力をするところで年の欄を空のままにして送信したところ⋯ 次のようにおかしな日時が設定されたのです。 0013年? 18分59秒? 入力した覚えのない数字が3つも紛れ込んでいます。 これが C で書かれたプログラムなら何か不定値を拾っ
「タイムゾーン呪いの書」は、もともと 2018年に Qiita に投稿した記事でしたが、大幅な改訂を 2021年におこない、同時にこちらの Zenn に引っ越してきました。この改訂で記事全体が長大になったので、「知識編」・「実装編」・「Java 編」と記事を分けることにしました。 この「実装編」は、導入にあたる「知識編」の続きとなる第二部です。おもに Software Design 誌の 2018年 12月号に寄稿した内容をベースにしていますが、修正した内容もかなりあります。本記事全体を通して「知識編」を読んでいることを前提にしているので、ご注意ください。旧 Qiita 版にあった Java 特有の内容は、第三部にあたる「Java 編」にあります。 はじめに 先の「知識編」では、この時刻とタイムゾーンという厄介な概念について一般的な知識を紹介してきました。さて、ではこの知識を具体的に実装に
「タイムゾーン呪いの書」は、もともと 2018年に Qiita に投稿した記事でしたが、大幅な改訂を 2021年におこない、同時にこちらの Zenn に引っ越すことにしました。 この改訂では Software Design 誌の 2018年 12月号に特集の一章として寄稿した内容も取り込みつつ、夏時間をめぐって各地で起きつつある変化について 2021年 6月現在の状況なども追加しました。そんな追記もしていたら記事全体が長大になってしまったため、この「知識編」と、「実装編」・「Java 編」に記事を分けました。「知識編」は、導入にあたる第一部です。 Qiita のほうは、引っ越した旨とこの引っ越し先へのリンクだけ追記して、しばらくそのまま残すつもりです。 はじめに タイムゾーンという概念のことは、ほとんどの人が聞いたことがあると思います。ソフトウェア・エンジニアでも多くの方が、時刻やタイムゾ
以前、Chrome83の際には、アップデート後に、Google Apps Scriptでのボタンクリック時にPDFがダウンロードといった事ができなくなり、非常に困った事態になりました。その後、XFrameOptionsModeでの挙動で、Google Apps Scriptの場合にはtarget属性にblankを指定して、対処することが出来ました。 さて、今回、Chrome92では地味ながら、かなり大きな変更があり、Google Apps Scriptでalertやconfirmが利用できなくなりました。Salesforceなどの外部のサービスでも影響が出ているようです。 ※2021/08/03 - 今朝再度、確認したらGoogle Apps Scriptでのalert,confirmの挙動ができるようになっていました。修正されたのか?しかし、今後何があるかわからないので、alert,co
Ascii85, also called Base85, is a form of binary-to-text encoding developed by Paul E. Rutter for the btoa utility. By using five ASCII characters to represent four bytes of binary data (making the encoded size 1⁄4 larger than the original, assuming eight bits per ASCII character), it is more efficient than uuencode or Base64, which use four characters to represent three bytes of data (1⁄3 increas
はじめに どんなソフトウェアエンジニアも拡張しやすくメンテナンスしやすいソフトウェアを作りたいと思っているはずです。また、どんなプロダクトマネージャも同様に拡張しやすいシンプルな要求を作りたいと考えているはずです。 しかし、将来の不確実性や発展性に対して見通しを立てるのは難しいものです。そのため、開発チームの思いとは裏腹にソフトウェアの複雑性はどんどんと増大していきます。気がついたら技術的負債と呼ばれるような手もつけられない泥団子になってしまうということもしばしばです。誰もが生産性を下げるために機能を追加したいわけではなく、ビジネス価値を提供するために機能を追加したいだけなのにです。 このような状況を避けるためにはどうしたらよいのでしょうか。今回はその一つの手段として、要求には隠れた「意図」があり、それを発見していくことの重要性についてまずはお話しします。さらにわかりやすい要求が持つ仕様の
米GitHubは6月29日(現地時間)、関数名とコメントから、関数のコードを丸ごと自動補完するAIプログラミング機能「GitHub Copilot」(コパイロット、副操縦士の意)を発表した。専用ページから登録すると、テクニカルプレビュー版の招待を順次受けられる。 米Microsoftのコードエディター「Visual Studio Code」と、Visual Studio Codeベースのクラウド開発環境「GitHub Codespaces」向けの拡張機能として提供する。 例えば、コメントとして「// Get average runtime of successful runs in seconds」(成功した実行の平均実行時間を秒の形式で取得する)と書いておき、その下に「func averageRuntimeInSeconds」と関数を書き始めると、Copilotがその先を自動補完。必要な
本日 2021/06/11 に Visual Studio Code 1.57 がリリースされました? リリースノートの中にあった「Remote Repositories」がとても唆るものだったので紹介したいと思います。 (実は Preview Feature として 1.56 に搭載されていた機能です。Terminal tabs しか見てなかった……) 現段階ではプレビュー版の機能になります。 Remote Repositories のざっくり機能説明 GitHub 上のリポジトリをローカルに clone することなく VS Code で直接参照できる機能です。 これにより GitHub 上でリポジトリ内の検索するよりもより使い慣れた画面で検索が行えるようになったり、VS Code の豊富で強力な拡張機能によってブラウザ上でのコード閲覧よりもリッチな体験が得られたり、更にはブランチ切って
プログラマによるプログラミングのためのBGMなど、仕事や勉強の邪魔にならない無料で使えそうなBGM集。2021年版 在宅で仕事や勉強をしている時間が増えてくると、ずっと無音だと寂しい気がして、できればあまり気にならないBGMや環境音があるといいなあ、と思ったことはありませんか? 最近流行しているYouTubeでの24時間365日ライブ配信のLoFiチャンネルにはそうしたニーズに応えてか、プログラマがプログラミングのためのBGMを配信しているものもあります。 YouTubeの再生には動画広告が付き物ですが、ライブ配信では最初に広告が再生されると、あとは広告なしでずっと配信が続くため(少なくとも記事執筆時点では)、BGMとして使うのにぴったりです。 この記事ではそうしたYouTubeの配信を中心に、仕事や勉強のBGMとして使えそうなサービスを紹介していきましょう。 いわゆるLoFiチャンネルと
Google、オープンソースのモジュール依存関係を分かりやすくグラフ化してくれる「Open Source Insights Project」公開 Googleは、さまざまなオープンソースソフトウェアがどのような依存関係にあるかを一覧表示やグラフ化表示などで示してくれるWebサイト「Open Source Insights Project」を発表しました。 Introducing Open Source Insights! This exploratory visualization site provides an interactive view of the dependencies of open source projects, and so much more. See the benefits ↓ https://t.co/CgXUMCeTaZ — Google Open So
ジェネリクスを持つ多くの言語では括弧の種類が足りなかったり、既存の文法との互換性を保つために <> をジェネリクス引数に使っている。この文字は比較演算子やシフト演算子にも使われるため、多くの場合は構文的曖昧性の問題がある。 // ジェネリクス引数 (convert<int, string>(number)) // 比較演算子 (score < MAX_SCORE, score > (MIN_SCORE)) 各言語でこの問題をどのように解決しているか調べる。 関連する問題として < > を含むトークン (<<, >> など) をどう分割するかという問題があるが、こちらは本スクラップでは扱わない。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く