タグ

2023年1月27日のブックマーク (13件)

  • docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ

    ソフトウェアエンジニアの三上(@mickamy)です。普段の業務では、 取引管理という部署で、主に取引とその周辺(入出金など)に関わる処理の開発を担当しています。 最近、asdf という anyenv の代替となるツールを知り、気になってはいたのですが、なかなか anyenv から乗り換えるモチベーションを見出せずにいました。 あることをきっかけにそのモチベーションを言語化できたので、その使い方とメリットについてお伝えできればと思います(タイトルの前半についてはだいぶ盛っています)。 asdf とは何か asdf は、様々なソフトウェアの複数バージョンを管理するための CLI ツールです。 プログラミング言語のバージョン管理は、特に開発者に馴染みの深いユースケースかと思います。 あるプロジェクトでは ruby の 2.7 系を利用しているが、 別のプロジェクトでは 3.2 系を利用したいと

    docker としての asdf ― あるいは、なぜ私は anyenv から乗り換えたか - ウェルスナビ開発者ブログ
    crexist
    crexist 2023/01/27
  • Swift Concurrencyでセマフォを作る - クックパッド開発者ブログ

    こんにちは、レシピサービス開発部と技術部兼務のヴァンサン(@vincentisambart)です。 Swift Concurrencyに関する中級の記事がまだ多くない気がしていたので、そういう記事を書くことにしました。 Swift Concurrencyの理解を深めたい人にはWWDC21の「Swift concurrency: Behind the scenes」がおすすめです。そのプレゼンの中でDispatchSemaphoreをSwift Concurrencyで使うべきではないと述べられました。 Swift Concurrencyに提供されているツールを見ると、セマフォがありません。でも提供されたものでセマフォを作れないでしょうか?セマフォを使いたい場面が多いわけではありませんが、良い勉強になると思います。 どういうツールが標準で提供されているのでしょうか?safe(安全に使えるもの

    Swift Concurrencyでセマフォを作る - クックパッド開発者ブログ
    crexist
    crexist 2023/01/27
  • 実践 9 つのメモリリークどう見つける?/ How to detect 9 types of memory leaks?

    iOS Test Online 2022/10/28 https://testonline.connpass.com/event/261910/

    実践 9 つのメモリリークどう見つける?/ How to detect 9 types of memory leaks?
    crexist
    crexist 2023/01/27
  • Task.initのクロージャーに[weak self]はいらない。Task.detachedとTaskGroup.addTaskも同様

    2022年7月29日、インプレスR&D社よりSwift Concurrencyの解説をリリースしました。 一冊でマスター!Swift Concurrency入門です。 こちらのは一冊でSwift Concurrencyの機能をほぼ網羅したConcurrency機能の解説です。 日語でSwift Concurrencyを学べる解説はまだ少ないので、Swift 5.5からの非同期処理をうまく書きたい方には必見のとなっています。 詳しい内容はこちらをご覧ください。 同人誌として先にリリースしましたが、商業版も同じ内容となっています。 技術解説Swift Concurrency入門」を刊行しました 同人版はBOOTHで販売中です。 https://personal-factory.booth.pm/items/3888109 さて、せっかくリリースしたばかりなのですが、一部のサンプ

    Task.initのクロージャーに[weak self]はいらない。Task.detachedとTaskGroup.addTaskも同様
    crexist
    crexist 2023/01/27
  • 5分で分かるゼロトラスト

    「ゼロトラスト(セキュリティ)」はITセキュリティに関する概念の一つです。それまでの主流だった「境界型セキュリティ」に代わる考え方として登場してきました。 「ゼロトラスト標準」みたいなものが定義されているわけでもないので、使う人によってゼロトラストの解釈には幅があります。セキュリティ製品を提供している会社なら、情報に濃淡を付けて自社製品にとって都合の良い側面を伝えてくるかもしれません。 また、ゼロトラストの実装方法に正解はなく、ゼロトラストを満たしてくれる単一の製品も存在しません。企業ごとに現状とあるべき姿を鑑みながら実装を考え、ゼロトラストを思考していく必要があります。数年たてば実装方法も幾つかに収束していくのかもしれませんが、今はまだまだ開拓する要素も多く、手を出しにくい時かもしれません。 まずは「境界型セキュリティ」をおさらいします。そして「ゼロトラスト」のさまざまな側面を見て理解

    5分で分かるゼロトラスト
    crexist
    crexist 2023/01/27
  • 『人をダメにするソファが進化』いつでもどこでもダメにになれる着るビーズクッションが商品化

    ライブドアニュース @livedoornews 【まさかの商品化】「着るビーズクッション」…当初は「売れるわけない」と社内で反対続出 news.livedoor.com/article/detail… 「いつでもどこでもダメになれるクッション」をコンセプトに開発した。もともとはスタッフが着て、イベントを盛り上げるために作成。希望の声が多く、商品化したという。 pic.twitter.com/LGD5AY7kDN リンク ライブドアニュース 「着るビーズクッション」まさかの商品化 「売れるわけない」社内で反対続出も...意外人気にメーカー驚き - ライブドアニュース SNSで話題の「着るビーズクッション」についてJ-CASTニュースが伝えた。イベントの際、スタッフが着るために作成したものだと開発した会社の担当者。客から「家に欲しい!」という声が多く寄せられ、商品化に踏みこんだそう 2 use

    『人をダメにするソファが進化』いつでもどこでもダメにになれる着るビーズクッションが商品化
    crexist
    crexist 2023/01/27
  • 遠隔からCPUを数秒で破壊するサイバー攻撃 マザーボードのリモート管理機能をハック、過度の電気を注入

    Innovative Tech: このコーナーでは、テクノロジーの最新研究を紹介するWebメディア「Seamless」を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。Twitter: @shiropen2 英バーミンガム大学に所属する研究者らが発表した論文「PMFault: Faulting and Bricking Server CPUs through Management Interfaces」は、サーバ用マザーボードに搭載する制御システムの欠陥を攻撃し、遠隔から必要以上の電圧を供給してCPUを破壊しコンピュータを無効にする脆弱性を指摘した研究報告である。 最近のサーバ用マザーボードにはCPUの他に、電源管理用の電圧レギュレーターなどの補助部品を搭載している。これらは、I2CベースのPMBusを介して、CPUおよび個別のベースボード管理コントローラ

    遠隔からCPUを数秒で破壊するサイバー攻撃 マザーボードのリモート管理機能をハック、過度の電気を注入
    crexist
    crexist 2023/01/27
    Serial Experiment Lain で見たやつだ。(アレはCPUの冷却機能をストップさせて加熱させる奴だったけど)
  • 感覚を"ハック"する 「からだの錯覚」の扉、開いてみた。

    「手の皮膚を引っ張って30cmくらい伸ばす」 「頭の骨を手で直接触ってみる」 そんな"非現実"を現実にさせる研究室がある。 「からだの錯覚」の扉、開いてみた。 (NHK名古屋 記者 河合哲朗) ある日 1通のメールが 私(=記者)は、名古屋局で大学の取材を担当している。 日々、さまざまな大学から「こんな研究成果が出た」とプレスリリースが届く。 そんな中、あるメールに目が止まった。 国際学術誌に論文が掲載されたというその発表、タイトルはこうあった。

    感覚を"ハック"する 「からだの錯覚」の扉、開いてみた。
    crexist
    crexist 2023/01/27
  • 「キモイ」の使い方についての発見と予想

    つい先日の話。テレビのドッキリ番組を横目で観ていた。 アイドルグループか何かの女性4~5人集団にドッキリを仕掛けると。 年齢はおそらく10代後半か20代前半くらい。 近所を不審者がうろついているという設定で クライマックスでは部屋に不審者が押し入ってくるというモノだ。 様々な仕掛けで散々怖がらせたあと、とうとうクライマックス。 大きな音を立てながら不審者が部屋に突入してきた瞬間、 女性の中の1人が恐怖とパニックで自分の顔を覆い隠しながら 「キモイ!キモイ!キモイ!」と叫んだのである。 俺はこの言動に大きな違和感を覚えた。 俺の感覚では「キモイ」とは相手に対しての侮辱、嘲笑、精神的ダメージを与えるための攻撃、陰口の場合もあるだろうが 簡単に言ってしまえばいわゆる「悪口」の類という認識だった。 では彼女は急に押し入ってきた不審者に対してとっさに 「バカ!アホ!マヌケ!」といった意味の言葉を口走

    「キモイ」の使い方についての発見と予想
    crexist
    crexist 2023/01/27
    "状況を鑑みれば「怖い!怖い!怖い!」もしくは「嫌だ!嫌だ!嫌だ!」というような意味" そうだろうとは思うけどだとしても推敲すべき公式TwitterやYoutubeのタイトルや文面に特定の属性に結びつけて出すの不味くない?
  • @PublishedをSwiftUI以外で使ってはいけない

    SwiftUIで使われる@PublishedをCurrentValueSubjectの代わりに使えるというような記事を見かけたので、それはやめておいた方が良いということを書いておきます。 イベントのタイミングの違い これが唯一の理由ではあるのですが、@PublishedとCurrentValueSubjectでは、Property Wrapperとクラスの違いだけではなく、Publisherとしてのイベントを発行する時のタイミングの違いがあります。@Publishedは「値が変更される前(willSet)」でCurrentValueSubjectは「値が変更された後(didSet)」です。 コードを書いて動作を確認してみます。(Playgroundに貼り付ければそのまま実行できます) import Combine class Sample { @Published var publishe

    @PublishedをSwiftUI以外で使ってはいけない
    crexist
    crexist 2023/01/27
  • Swift6のprotocol

    event1: https://iosdiscord.connpass.com/event/243040/ event2: https://iosdiscord.connpass.com/event/249875/ source: https://gist.github.com/omochi/1…

    Swift6のprotocol
    crexist
    crexist 2023/01/27
  • Swift の「async let ...」と「TaskGroup」の使い分け早見表

    /// `TaskGroup` を使って実装された `race(lhs:rhs:)` /// 文中に実装を掲載しています let result = await race( lhs: { try? await Task.sleep(for: .seconds(100)) return 100 }, rhs: { try? await Task.sleep(for: .seconds(1)) return 1 } ) print(result) // 1 /// 同期的に `Int` が返ります(処理に0秒かかるとする、同期関数) func num0() -> Int { return 0 } /// 非同期的に `Int` が返ります(処理に1秒かかるとする、非同期関数) func num1() async -> Int { try! await Task.sleep(for: .seco

    Swift の「async let ...」と「TaskGroup」の使い分け早見表
    crexist
    crexist 2023/01/27
  • SwiftマクロでPowerAssertを実装する - 24/7 twenty-four seven

    現在Swiftにマクロを導入しようという提案がSwift Evolutionのレビュー中*1です。 SwiftによってSwiftの構文を拡張できる、いわゆるメタプログラミングと呼ばれる機能です。 実はマクロの他にもSwiftでメタプログラミングを実現する機能の提案が複数提案*2*3されています。 Swift 6はメタプログラミングの時代になるかもしれません。 現代的なプログラミング言語のマクロ みなさんはマクロと聞いて、どのような機能を想像しますか? C言語のマクロは、プリプロセッサと呼ばれるコンパイル前のプログラムによってプログラムのソースコードに置換や文字列連結を行う機能でした。 原理的には単なる文字列操作なので、プログラムの構造や型を破壊する可能性がありました。 最初のマクロに関する投稿に対しての否定的なコメントは、C言語のマクロのような機能をSwiftに導入することは危険だという意

    SwiftマクロでPowerAssertを実装する - 24/7 twenty-four seven
    crexist
    crexist 2023/01/27