並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 1679件

新着順 人気順

Scalaの検索結果241 - 280 件 / 1679件

  • Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか

    Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか Cloudflareは、エッジでJavaScriptを実行できるサービス「Cloudflare Workers」において、Node.jsのAPI互換機能を提供すると発表しました。 node.js APIs have officially landed in Cloudflare Workers — no polyfills required. We've added AsyncLocalstorage, EventEmitter, Buffer, assert and util, with more on the way soon.https://t.co/8CkPZkS3Yb — Cloudfl

      Cloudflare WorkersがNode.js API互換の提供を発表。Bun、Denoなどに続く対応により、Node.js APIはサーバサイドJavaScriptの事実上の標準になるか
    • 月額報酬が高いプログラミング言語 3位「Vue.js」、2位「Go」、1位は?

      仕事に役立つ調査データ: 消費者の傾向、若者の価値観、働き方の変化――このコーナーでは、ビジネスパーソンの働き方や企業の戦略立案に役立つようなさまざまな調査データを紹介していく。 リモートワーク求人に特化したITフリーランスエージェントのRemogu(リモグ)は、約4000件のITエンジニア向けのフルリモートワーク案件から、職種別・言語別の平均月額報酬をランキング形式で発表した。職種別の1位は「CTO/VPoE/テックリード」の93.7万円、言語別の1位は「Scala」の93.8万円となった。全案件の平均月額報酬は約73.5万円だった。

        月額報酬が高いプログラミング言語 3位「Vue.js」、2位「Go」、1位は?
      • Scala3と圏論とプログラミング

        最近、圏論とプログラミングという素晴らしい資料を拝読しました。圏論とプログラミング愛に溢れる資料で読んでいて目頭が熱くなりました。そうだよな・・・プログラマにも圏論いるよな・・・ ただ、自分にとって残念だったのは、資料で説明用に選択されたプログラミング言語が「Haskell」だったことです。もちろんHaskellは素晴らしい言語です。ただ、自分にとってHaskellは外国語なのでちょっと理解が難しいのです。そしてこの資料が「Scala」で書かれていたらと夢想せずにはいられなかったのです。 Scalaと言えば昨年末にScala3のリサーチコンパイラのDottyがFeature Completeを宣言しました^1。この宣言で新機能の追加は終了して、あとは2020年末のリリースに向けてひたすら品質を上げていく段階に突入しました。つまり、ようやく次世代のScalaが全貌を現したということです。 こ

          Scala3と圏論とプログラミング
        • 型付けは難しい

          ベン・フィードラーのブログより。 型検査と型推論 型検査とは、あるプログラミング言語で与えられたプログラムを実行し、すべての変数や式が正しい型を持っているかどうかを調べるプロセスです。例えば、文字列は文字列に代入され、算術式は数値のみを使用するなどです。一部の言語では型推論を提供しており、コンパイラに自分で正しい型を見つけるタスクも提供します。言語の特徴に応じて、型検査と型推論の問題は、些細なものから決定不能なものまで様々です。 一般的な用語 完全性 正しく入力されたプログラムを全てチェックできれば、タイプチェッカーは完了です。 健全性 正しく型付けされたプログラムのみを受け付けるものであれば、型検査は健全です。 決定可能性 任意の入力に対して、その入力が問題を満足するかどうかを有限時間で計算できる場合、決定問題は決定可能です。決定可能な問題の例としては、素数判定や充足可能性などがあります

          • Rust の DI を考える — Part 1: DI とは何だったか - paild tech blog

            paild 社でお手伝いをしている yuki です。みなさんは Rust で DI をしようと思った際に困ったことはありませんか?この連載では、他のプログラミング言語で利用される DI パターンを参照しながら、Rust でそれを実装するためにはどのような工夫が必要かまでを検討します。中には Rust での実装が難しいパターンも出てくるかもしれません。その際は、なぜ難しいのかまでを検証します。 そこそこの規模のソフトウェアを実装するにあたって、ソフトウェアエンジニアが共通して利用する手法がいくつかあると思います。その中でも DI (Dependency Injection; 依存オブジェクト注入) は最もポピュラーな手法の一つであり、保守運用まできちんと耐えうるソフトウェアの設計をしたいとなったときに、まず真っ先に候補に上がる手法でしょう。 Rust ではこの DI をどのように行えばよいの

              Rust の DI を考える — Part 1: DI とは何だったか - paild tech blog
            • Scalaのメモリ使用量はJavaよりも多いか検証した - Lambdaカクテル

              こういう記事を読んだ。 transparent-to-radiation.blogspot.com なんかScalaのメモリ使用量が異常に多いなと思って、調べた。検証コードもアップした。 github.com 検証として、様々なJVM(OpenJDKとかCorettoとか)とそのバージョン(8, 11, 17)でJARを実行して考察した。JVMを用意するためにASDFを使った。また、ASDFから引っぱってこれないJVMのバージョン(OpenJDKの8など)は省略している。 JAVA_OPTSは-Xms100M -Xmx2Gである。 手元のマシン(Linux x86_64 Xeon W-10855M 2.80GHz 64GiB RAM)でのrun-matrix.shの実行結果は、以下の通り(各列は、JVM、計算件数、実行時間Sec、メモリ総使用量KiB)。 openjdk-11 openjd

                Scalaのメモリ使用量はJavaよりも多いか検証した - Lambdaカクテル
              • 自分のはてなブックマークをChatGPTにつないだ - Lambdaカクテル

                scrapbox.io から派生して、 blog.sushi.money こういうことが可能だとわかった。 はてなブックマークはAtom形式でのエクスポートが可能なので、 はてブにAtomを吐き出させる AtomをJSONに変換する あとは同じ というプロセスで、自分のはてブのコメントを知っている状態のChatGPTのモデルを作ってみた。 コード 一番元々の記事ではPythonで書かれていたコードが、 id:hitode909 のコードではRubyになり、自分のコードだとScala3になっていて面白い。 #!/usr/bin/env -S scala-cli shebang -S 3 // usage: batom2json.scala.sc ~/Downloads/Windymelt.bookmarks.atom > from_bookmark/Windymelt.json // You

                  自分のはてなブックマークをChatGPTにつないだ - Lambdaカクテル
                • エンジニアなら解けるかも?プログラミング経験ゼロでもSQLを無料で学べるpaizaのプログラミングゲーム「エンジニア騎士とクエリの魔女 DBエンジニア、魔法使いになる」で遊んでみた

                  仕事や趣味でプログラミングを勉強する場合、ウェブサイトや市販の教本を見て学習するのが一般的。プログラミング経験があれば、ある程度勉強のやり方が身についていますが、まったくの未経験だと何から手をつけていいのかわからず、モチベーションが続かないこともあります。ITエンジニア向け転職・就活・学習サービスのpaizaがリリースした「エンジニア騎士とクエリの魔女 DBエンジニア、魔法使いになる」は、「異世界に勇者パーティそして召喚された新人ITエンジニアの男女。目覚めるとそこは、剣(コード)と魔法(SQL)が支配する世界だった。騎士と魔法使いの冒険が、いま始まる。」というオープニングで始まる異世界転生プログラミングゲームで、SQLやプログラミングの問題を解くことで、ゲーム内で使えるパーツや衣装などのアイテムをゲットできるとのこと。そこで、プログラミング経験が皆無の超初心者である編集部員がプログラミン

                    エンジニアなら解けるかも?プログラミング経験ゼロでもSQLを無料で学べるpaizaのプログラミングゲーム「エンジニア騎士とクエリの魔女 DBエンジニア、魔法使いになる」で遊んでみた
                  • ZOZOMATにおけるJVMの暖機運転の導入と改善効果について - ZOZO TECH BLOG

                    こんにちは。ZOZOテクノロジーズSRE部の市橋です。普段は主にAWSを用いてプロダクトのシステム構築、運用に携わっています。今回は弊チームで取り組んでいるZOZOMATのシステム改善業務の一例として、JVMの暖機運転の仕組みを取り入れた話をご紹介します。 ZOZOMATとは お客様の足を3Dで計測するために開発された計測用マットです。ZOZOMATでの計測情報をもとに、靴の推奨サイズを参照するなどのサービスをご利用いただくことが可能です。ご興味のある方はこちらをご確認ください。 JVMの暖機運転とは 今回テーマとして取り上げるJVMの暖機運転とは何かについて簡単に触れていきます。JVMではJIT(Just In Time)コンパイラによるコンパイル方式が取り入れられています。これはアプリケーションの実行前にプログラムの全てを機械語にコンパイルするのではなく、プログラムの実行時にコンパイル

                      ZOZOMATにおけるJVMの暖機運転の導入と改善効果について - ZOZO TECH BLOG
                    • 半数のスタートアップでCTO不在!? 開発環境アンケートから見えた7つの論点 | Coral Capital

                      Coral Capitalでは先日、投資先スタートアップ企業、33社から得たアンケート調査を1枚のGoogleスプレッドシートにまとめて公開しました。アンケートは各スタートアップ企業の開発環境やエンジニア向け情報に関するもので、開発環境、仕事環境、採用情報などを会社概要と併せて30項目以上をお聞きしています。下のスクリーンショットをご覧いただければ分かるとおり、かなり大きく詳細な一覧表になっています。 本記事公開より先に、Coral Capital公式ツイッターアカウントで一覧表をシェアしたところ、非常に多くの反響を頂きました。公開直後はアクセスが殺到して表示に不具合が出るほどでした。 この記事では一覧表の見どころや、読み取れるポイントなどを7つの論点で整理したいと思います。これは2020年のアーリーからミドルステージの日本のスタートアップの「今どきの開発体制」のスナップショットとして見る

                        半数のスタートアップでCTO不在!? 開発環境アンケートから見えた7つの論点 | Coral Capital
                      • AIがコーディングしてくれる「Amazon CodeWhisperer」正式投入。GitHub Copilotに対抗、個人利用は無料 | テクノエッジ TechnoEdge

                        ITジャーナリスト/Publickeyブロガー。IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。 Amazon Web Services(AWS)は、コメントやコードの一部からAIがコードを自動生成してくれるサービス「Amazon CodeWhisperer」が正式版になったことを発表しました。 Amazon CodeWhispererは昨年(2022年)6月に行われたAWSの機械学習にフォーカスしたイベント「Amazon re:MARS 2022」で発表され、プレビュー公開されていました。 コメントや書きかけのコードからコードを自動生成Amazon CodeWhispererは、オープンソースリポジトリ、Amazon内部リポジトリ、APIドキュメント、フォーラムなどから収集した数十億行のコードを基にした機械学習から、プログラマーが書き

                          AIがコーディングしてくれる「Amazon CodeWhisperer」正式投入。GitHub Copilotに対抗、個人利用は無料 | テクノエッジ TechnoEdge
                        • 1万7千⾏のKotlinを2週間かけ⼒尽くでScalaに移⾏した話

                          Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)

                            1万7千⾏のKotlinを2週間かけ⼒尽くでScalaに移⾏した話
                          • Red Hat Enterprise Linux 8 新機能をわかりやすく解説【RHEL8】

                            Red Hat Enterprise Linux 8 新機能をわかりやすく解説【RHEL8】 2019年5月16日 Linux Red Hat Enterprise Linux 8 (RHEL8)が、2019年5月7日にリリースされました。RHEL 7 のリリースが2014年6月だったので、約5年ぶりの新OSとなります。 前回のメジャーアップデートから少し間隔が空いたためか、リリースノートはなんと120ページもあります!(ちなみにRHEL 7は90ページでした) この記事では、そんな山ほどあるRHEL 8 の新機能や変更点の中から、気になるものをまとめてみました。 また、RHELのクローンである CentOS のメジャーアップデートも近いうちに行われるでしょう。CentOS8でも、これと同様の変更がなされるかと思われるので、参考にしてみてください。 パッケージ管理 DNF(YUM v4)

                              Red Hat Enterprise Linux 8 新機能をわかりやすく解説【RHEL8】
                            • Scala3でコードは爆速になる マルチステージプログラミングの考え方

                              アジア最大級の国際Scalaカンファレンスである「ScalaMatsuri2020」がオンラインで開催されました。そこでビジョナル・インキュベーションの鈴木氏が、Scala3(Dotty)で可能になったマルチステージプログラミング(MSP:Multi-stage Programming)について話しました。前半ではマルチステージプログラミングの概念やその基本的なプログラムの書き方について話しました。 マルチステージプログラミングのいいところ 鈴木健一氏(以下、鈴木):鈴木健一と申します。よろしくお願いします。本日はマルチステージプログラミングの話をします。 Dotty(※Scala3)でメタプログラミングの機能が強化されてマルチステージプログラミングができるようになったので、せっかくなのでそのお話をしまして、後半はTagless-finalのご紹介をします。最後にマルチステージプログラミン

                                Scala3でコードは爆速になる マルチステージプログラミングの考え方
                              • Functional Programming in TypeScript

                                Web apps are a mandatory part of every modern application nowadays, no matter how small or complex it is. From one-click apps that convert pictures to Photoshop, everyone wants fast and easy access to the app, and the web is one of the easiest ways to do that. At Serokell, we use TypeScript for writing web applications. But our main programming language is Haskell. And in this article, we want to

                                  Functional Programming in TypeScript
                                • RISC-VとChiselで学ぶ はじめてのCPU自作 ――オープンソース命令セットによるカスタムCPU実装への第一歩

                                  この本の概要 本書では,UCバークレーで開発されたオープンソースの命令セット(ISA)「RISC-V」を用いて,CPUの作り方を解説します。コンピュータアーキテクチャ,ハードウェアに関する知識があまりない方にも理解できるように基礎からわかりやすく学んでいきます。CPUとコンピュータアーキテクチャのしくみを解説したうえで,基本整数命令の実装から,CPUの高速化で活躍するパイプラインの実装,スーパーコンピューターでも活躍するベクトル拡張命令(SIMD),さらに,汎用CPUでは負荷の高い処理をより高速に実行するためにCPUへ追加可能なカスタム命令の実装までを行います。CPU設計に用いる基本言語としては,Velilogを抽象化したHDL(ハードウェア記述言語)であるChiselを利用しています。 CPUの自作範囲に関して,手順が煩雑なFPGAでの動作確認は行わず,ソフトウェア上でエミュレーションを

                                    RISC-VとChiselで学ぶ はじめてのCPU自作 ――オープンソース命令セットによるカスタムCPU実装への第一歩
                                  • RoRやLaravelなどのフレームワークを使ってきた人がScalaを導入した時に引っかかる点とその解決策 - Qiita

                                    はじめに 僕が代表をしている株式会社KOSKAでは製造業の原価管理をIoTで自動化するGenkanというサービスを提供しております。 そんな弊社では半年前、バックエンドをRoRからScalaに移行したのですが、これが素晴らしく効果が高かったので以下の記事を書きました。 スタートアップである弊社が全員ほぼ未経験でRoRをScalaに移行した理由、その効果と苦労点 しかし、最後に書いたのですが、苦労する点もとても多いです。 弊社CPOが苦労する点を抽象的な部分に関しては以下の記事で書いてくれてはいます。 0からScalaを本番導入して感じたこと・考えたこと - Qiita ただ、実際にコードを書き始めた時に引っかかりやすい点をできるだけ詳しくあげておくことで、導入しようと考えた人がなるべく簡単に導入できるという状況を作りたかったので、書きました。 それではスタートです。 RubyやPHP、Py

                                      RoRやLaravelなどのフレームワークを使ってきた人がScalaを導入した時に引っかかる点とその解決策 - Qiita
                                    • 0からScalaを本番導入して感じたこと・考えたこと - k.dev

                                      はじめに 弊社ではScalaを本番環境に導入して大体1年になる。 導入以前に社内的にScalaに関する知識はゼロだった。 Scalaという言語は巷では色々言われているが愛好者とそれ以外の壁が非常に大きな言語のように思える。 ここはコミュニティの努力によって埋められようとしているが、他の言語に比べてまだまだなのが現状である。 弊社でのScala導入経験に関する情報がその壁を取り払う一助になることを祈る。 導入経緯 Railsの運用コスト もともとはプロダクトのバックエンドはRailsで書いていた。 Railsは非常に高速にプロダクトを開発できるのだが、長期的に見るとその高速性よりも運用困難性、堅牢性の欠如が目立つようになってきた。 MVCアーキテクチャは複雑なプロダクトを構成するのにはシンプルすぎた。 特にRailsの中核をなすアクティブレコードモデルのせいで問題の分割が難しかった。 じゃあ

                                        0からScalaを本番導入して感じたこと・考えたこと - k.dev
                                      • 関数の再帰的な定義に名前付けは必要か - 貳佰伍拾陸夜日記

                                        結論から言うと, 名前を付けることなく再帰的な関数を定義することは可能. 特定のプログラミング言語でどうかというよりは抽象概念としての関数の再帰を名前なしに実現可能かどうかという話(名前なしに実現できるプログラミング言語は存在するかという話). 発端 id:naoyaさんがこういうツイートをしていた. 再帰を書くときに何気なく関数に名前つけたり let で束縛したりしてたけど「再帰には三項関係が必要でありその実現には記号が本質的に関わる」とあり、名前づけの行為が必然だったことが分かった。プログラミングするときの視点が変わるな— naoya (@naoya_ito) 2022年8月12日 たとえば以下のように書いたときのlet fact =みたいな話. let fact = n => n <= 1 ? 1 : n * fact(n-1) ちなみに, 話は一見逸れるけど, こう書けると必然的に

                                          関数の再帰的な定義に名前付けは必要か - 貳佰伍拾陸夜日記
                                        • ソフトウェア開発のトレンド2020年:最新のリサーチとデータ

                                          CODING SANS サーバーレスWebおよびクロスプラットフォームモバイルアプリケーションを作成するフルスタックのJavaScript開発会社 この記事は、著者の許可を得て配信しています。 https://codingsans.com/blog/software-development-trends/ ソフトウェア開発は恐るべき速さで進化します。 今使用されているツールやフレームワークが、明日には時代遅れになっているかもしれません。私たちの目的は、業界のその時の一瞬を切り取って、過去にどのように進化してきたかを追跡し、業界がどこに向かっているのかを推測することです。 そういった技術的な変化をよりきちんと理解し、最大の課題やベストプラクティスを明らかにするために、2018年にさかのぼって「ソフトウェア開発状況レポート」を出すことにしました。 このレポートでは、調査参加者に対する活動をベン

                                            ソフトウェア開発のトレンド2020年:最新のリサーチとデータ
                                          • Rubyの型チェッカーのSorbetを導入しました - freee Developers Hub

                                            申告チームでテックリードをやらせてもらっている id:nanjakkun です。 freeeではfreee会計をはじめ多くのプロダクトがRuby on Rails(以下Rails)のアプリケーションとして実装されています。 日々の開発の中で、Rubyでも静的な型の解決ができればなあと思うことがあります。 ということで、Rubyの型チェッカーのSorbetをfreee申告に導入してみました。 Sorbet(ソルベ)とは sorbet.org 決済代行サービスのStripeを運営しているStripe社が公開している漸進的型チェッカーです。 ※余談ですがfreeeアプリストアではStripeを決済手段としたアプリの有料販売ができます。 developers.freee.co.jp 有料アプリ販売の準備をする | freee Developers Community 漸進的型付けとは 漸進的型付け

                                              Rubyの型チェッカーのSorbetを導入しました - freee Developers Hub
                                            • テックリードとしてシステムの未来を示して品質の期待を合わせる - yigarashiのブログ

                                              最近チームのテックリードを拝命して、テクノロジーマネジメント領域もリードすることになりました。興味の中心は開発プロセスやデリバリーで、エンジニアリングはまだまだひよっこなので苦労の日々が続いています。この記事では新米テックリードとしての取り組みをひとつ紹介します。 私のチームでは10個近いコンポーネントのオーナーシップを持っています。それらの品質の期待度は大きく異なり、変更頻度、採用技術、システムに占める重要度といったパラメータから決定されます。この期待を見誤ると、変更頻度が極めて低いコンポーネントを頑張ってリファクタリングしたり、モダンな技術が採用され寿命の長いシステムを雑に拡張したりと、成果の小さいアクションを取ってしまいます。逆にこの期待を適切に捉えられると、チームのリソースがコスパが高いアクションに向かっていくことが期待できます。変更頻度の高いコンポーネントのCI/CDを改善し、重

                                                テックリードとしてシステムの未来を示して品質の期待を合わせる - yigarashiのブログ
                                              • JupyterLabにビジュアルデバッガーが初搭載。ブレークポイント、変数の確認、コールスタックの調査などが可能に

                                                JupyterLabにビジュアルデバッガーが初搭載。ブレークポイント、変数の確認、コールスタックの調査などが可能に Jupyter Projectは、オープンソースの統合開発環境「JupyterLab」にビジュアルデバッガーを搭載したことを明らかにしました。 JupyterLabは、おもにデータ解析を実行するためにPythonやScala、Rなどのコードを打ち込んですぐに実行できる、シンプルでインタラクティブなコード実行環境である「Jupyter Notebook」をベースとし、ファイルブラウザやテキストエディタ、コンソールなどを統合した開発環境です。 今回、このJupyterLabに初めてデバッガが搭載されることになります。 デバッガを利用するには、デバッガ用のフロントエンドを拡張機能としてJupyterLabにインストールします。 デバッガの使い方は基本的にVisual Studioや

                                                  JupyterLabにビジュアルデバッガーが初搭載。ブレークポイント、変数の確認、コールスタックの調査などが可能に
                                                • オブジェクト指向プログラミングと関数型プログラミングの違い

                                                  オブジェクト指向プログラミングと関数型プログラミングの違い:手法、コード例、ユースケースごとに解説 関数型プログラミングモデルの採用を考える開発者は多い。だが、採用するなら、関数型プログラミングモデルとオブジェクト指向のアプローチがどのように異なるかを正確に理解することが重要だ。 プログラミングのパラダイムを決めることは、どのようなアプリケーション開発作業にとっても重要なステップの1つだ。関数型プログラミングとオブジェクト指向プログラミングのどちらを選ぶかは、この2つしか選択肢がないわけではないとしても、今日の多くの開発者が直面する課題の1つになっている。 本稿では、関数型プログラミングとオブジェクト指向プログラミングの主な違いを復習し、両コーディングパラダイムが機能する仕組みを幾つか示し、いずれかを選択する際に最も重要な考慮点を確認する。 オブジェクト指向プログラミングと関数型プログラミ

                                                    オブジェクト指向プログラミングと関数型プログラミングの違い
                                                  • 0からScalaを本番導入して感じたこと・考えたこと - Qiita

                                                    Help us understand the problem. What are the problem?

                                                      0からScalaを本番導入して感じたこと・考えたこと - Qiita
                                                    • Gatlingによる分散負荷試験を自動化するKubernetesオペレーターGatling Operatorの紹介 - ZOZO TECH BLOG

                                                      こんにちは。SRE部の川崎(@yokawasa)、巣立(@tmrekk_)です。私たちは、ZOZOTOWNのサイト信頼性を高めるべく日々さまざまな施策に取り組んでおり、その中の1つに負荷試験やその効率化・自動化があります。本記事では、私たちが負荷試験で抱えていた課題解決のために開発、公開したOSSツール、Gatling Operatorを紹介します。 github.com はじめに ZOZOTOWNは非常にピーク性のあるECシステムであることから、常にそのシステムが受けうる負荷の最大値を意識しております。想定しうる最大規模の負荷を受けてもユーザー体験を損なうことなくサービス継続できることをプロダクションリリースの必須条件としています。したがって、新規リリースやアップデート、大規模セールなどのシステム負荷に影響を与えうるイベント前など、比較的頻繁に負荷試験を実施しています。そして、社内でもっ

                                                        Gatlingによる分散負荷試験を自動化するKubernetesオペレーターGatling Operatorの紹介 - ZOZO TECH BLOG
                                                      • さらなる型安全性を求めて ~ Refinement TypeをScalaで実現する ~

                                                        SoRの性質が強いBtoBアプリケーションでは、「堅く」作ることを求められる箇所がしばしばあります。 Scalaの型安全性が頼もしく感じられるのは、まさにこのような箇所においてです。 「堅く」作るために、私たちがいま注目しているのが refined と newtype というライブラリです。 この記事では、refinedとnewtypeを使ってScalaの型安全性をさらに引き出すテクニックを紹介します。 Value Class / Tagged Type refined + newtypeの話題に入る前に、これまでにどのようなテクニックが使われてきたかを簡単に振り返りましょう。 ここに、SNSのユーザーアカウントを表現するクラスがあります。 case class User(id: String, email: String, age: Int) val user1 = User("@tod

                                                          さらなる型安全性を求めて ~ Refinement TypeをScalaで実現する ~
                                                        • あなたのキャリアに影響を与えた本は何ですか? 著名エンジニアの方々に聞いてみた - Findy Engineer Lab

                                                          書籍には、特定領域の専門家たちが習得してきた知識のエッセンスが詰まっています。だからこそ「本を読むこと」は、ITエンジニアがスキルを向上させるうえで効果的な取り組みといえます。では、著名エンジニアたちはこれまでどのような書籍を読み、そこから何を学んできたのでしょうか。今回は9人の著名なエンジニアのキャリアに影響を与えた“珠玉の書籍”を、ご本人にまつわるエピソードとともに紹介してもらいました。 *…人名の50音順に掲載。回答者は敬称略。 粕谷大輔(だいくしー)が紹介 『Scalaスケーラブルプログラミング』 私のキャリアを変えた一冊は、『Scalaスケーラブルプログラミング』です。現在は日本語版だと第4版が最新ですが、私が購入した当時の版は第2版でした。 この本は、Scalaの言語設計者であるMartin Odersky氏による著書です。2014年のScalaMatsuriで実際にOders

                                                            あなたのキャリアに影響を与えた本は何ですか? 著名エンジニアの方々に聞いてみた - Findy Engineer Lab
                                                          • なぜ Scala 3 で変わったのか / Why things are changed in Scala3?

                                                            Scala 3で変わった機能の背景事情と、現段階でわかっているマイグレーションの話中心です。 2020/1/31 (株)セプテーニ・オリジナル 社内勉強会 資料

                                                              なぜ Scala 3 で変わったのか / Why things are changed in Scala3?
                                                            • AWSエンジニアから見たGCP(データ分析編)

                                                              こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「AWS SAPを取得したら視野が広がった話」を読んでいただいた方々、ありがとうございます。今回のテーマは「AWSエンジニアから見たGCP」第2弾として、代表的なGCPのコンピューティング系サービスについてAWSと比較し感じた点についてお話いたします。 (第1弾の記事はこちら↓)IaaSCompute EngineAWSではEC2に相当するサービス。各種インスタンスタイプや提供OSイメージ、インスタンス向けのストレージ機能、オートスケール機能など、インスタンスのアーキテ... DWH BigQuery BigQueryはフルマネージドなサーバレスDWHサービスで、Googleが開発した大規模データ向けの分散システムであるDremelを基にしておりSQLクエリを使用して大規模データの分析を行うことができる。さ

                                                                AWSエンジニアから見たGCP(データ分析編)
                                                              • Google App Engineが「Java 11」サポート開始。Spring Boot、Micronaut、Quarkus、Ktorなどのフレームワークも利用可能

                                                                Google App Engineが「Java 11」サポート開始。Spring Boot、Micronaut、Quarkus、Ktorなどのフレームワークも利用可能 Java 11は1年以上前の2018年9月にリリースされたJavaです。Javaは6カ月ごとにフィーチャーリリースが登場しているため、現時点での最新版のJavaは「Java 13」となります。 ただし、Javaには3年ごとに長期サポート対象となるLTS(Long Term Support)版が登場します。LTS版以外のJavaは次のフィーチャーリリースが登場するとセキュリティパッチなどが提供されなくなりますが、LTS版は登場から3年間はセキュリティパッチなどが提供されます。 そしてJava 11は、このLTS版としての最新版なのです。 App Engineは、フルマネージド環境でアプリケーションを実行できるクラウドサービス。

                                                                  Google App Engineが「Java 11」サポート開始。Spring Boot、Micronaut、Quarkus、Ktorなどのフレームワークも利用可能
                                                                • ログラスのサーバーサイド技術スタック

                                                                  学習コストが低く、キャッチアップがしやすいもともとKotlin書いてた人が誰もいないのに、キャッチアップまでが相当早かったです。 特に動的型付言語のRubyを書いていた人でも大きな戸惑いなく使用できたのは意外でした。 これはJava、Scalaに比べると大きな違いだと考えています。高品質なコードが書けている型の制約がきき、null-safeなど安全に書くための言語仕様がうまく働きます。集合に対する便利な操作を行うメソッドがあったり、記述量少なくシンプルに実装できるための機能がいろいろあります。

                                                                    ログラスのサーバーサイド技術スタック
                                                                  • Scalaへの移行 -ウォルマート・カナダへの導入で学んだこと- - Qiita

                                                                    Help us understand the problem. What are the problem?

                                                                      Scalaへの移行 -ウォルマート・カナダへの導入で学んだこと- - Qiita
                                                                    • ディープラーニングでコーディングを高速化する「Deep TabNine」

                                                                      Fossbytesは7月26日(米国時間)、「Programmers Can Code Faster With This AI-Based Autocompleter Tool」において、カナダのウォータールー大学コンピュータサイエンスの学生が開発した入力補完ツール「Deep TabNine」を紹介した。 Deep TabNineは、Open AIによる予測テキストのディープラーニング言語モデル「GPT-2」に基づき、効率のよい開発を実現するという。Open AIは、イーロン・マスク氏が共同会長を務める非営利のAI(人工知能)研究企業。 サポートするプログラミング言語はJava、Python、JavaScript、C、C++、PHP、TypeScript、Kotlin、Objective-C、HTML、CSS、Go、C#、Ruby、Rust、Swift、 Haskell、OCaml、Sca

                                                                        ディープラーニングでコーディングを高速化する「Deep TabNine」
                                                                      • Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル

                                                                        仕事でLensを使う機会があった。Lensは複雑で入り組んだデータ構造の読み書きに非常に効果的な手法であるにもかかわらず、関数型プログラマ以外にはあまり知られていないように思える。 そこでこの記事では、Lensとは何なのか、なにが良いのか、具体的にどのようなケースでLensが役立ったか、そしてLensの亜種について紹介する。業務でも使ってます! AIくんが考えるLens 前提条件 Lensとは Lensの使いどころ データをモデリングする場合 (とても つらい) Lensを使う場合: Lensはアクセスパスである Lensと愉快な仲間たち Lensの合成 -- andThenでひっつけよう Lens Law Monocleの便利機能 Lensの自動生成でサボる Focusでもっとサボる Lensがもたらしたもの まとめ あわせて読みたい 前提条件 この記事ではLensを紹介する言語としてS

                                                                          Lensを始めとするOpticsがプログラミングをどう変えるか / 複雑なデータのモデリングをサボるには - Lambdaカクテル
                                                                        • Haskellを業務で使う、カジュアルに - Haskell-jp

                                                                          Link to hereはじめに この記事では、Haskellを業務でカジュアルに使う観点やヒントについて、簡単に紹介します。 Haskellを業務で使える局面は、以下のようにいくつか考えられます。 「プロダクト」の開発用言語として、Haskellを使う 「作業」の支援・加速用に、Haskellを使う 「思考」の支援・加速用に、Haskellを使う つまり、プロダクトの開発用言語としてHaskellを用いない業務形態においても、上記2や3のケースとして、Haskellを使用できます。すなわち、Haskellは幅広い局面でカジュアルに、つまり気軽に手軽に使用できます。 本記事では、特に、上記の2と3について、いくつかの観点やヒントや例を紹介します。 なお、上記は、Haskellを用いる場合には限りません。Python, Perl, Ruby, Rust, Scala, OCaml, Cloj

                                                                            Haskellを業務で使う、カジュアルに - Haskell-jp
                                                                          • JavaScriptで遊ぶ3Dゲーム!独自のステージも作成可能な「CodeQuest」で遊んでみた! - paiza times

                                                                            どうも、まさとらん(@0310lan)です! 今回はJavaScriptでプログラムを書いてプレイヤーを操作する3Dゲームのご紹介です! 大きな特徴として、3Dのステージを自作できる機能が提供されており、誰でも簡単に自分好みのステージを作成して楽しむことができます。 プログラミングの学習教材としても利用可能なので、ご興味ある方はぜひ参考にしてください。 【 CodeQuest 】 ■「CodeQuest」の使い方! それでは、「CodeQuest」をどのように使えばいいのか詳しく見ていきましょう! まず最初に【Sign Up】ボタンをクリックして無料のユーザー登録を済ませておきます。 メールアドレスとパスワードを入力しましょう。 ユーザー登録が完了したら、画面上部にあるリンクをクリックしてください。 次のようなダッシュボード画面が表示されたら準備完了です! この画面からチュートリアルを試し

                                                                              JavaScriptで遊ぶ3Dゲーム!独自のステージも作成可能な「CodeQuest」で遊んでみた! - paiza times
                                                                            • Chatwork のプロダクトフェーズと技術選定の流れ - Chatwork Creator's Note

                                                                              こんにちは! Chatwork 株式会社のプロダクトマネージャー (PM)、宮下 (@ryugoo_) です。 2013 年にモバイルアプリエンジニアとして入社し、 2014 年に Android 専任になり、 2019 年からは PM に転向してそろそろ 2 年になろうとしています。 さて、今回はエンジニアから PM になった私から見た、 Chatwork の技術選定の流れの変化について話してみようと思います。 技術選定の歴史 2013 年 - PMF を目指すために 2014 〜 2016 年 - 技術的課題を解決するために 2017 〜 2020 年 - ユーザー影響を最小化するために これから - 攻めた技術選定を、ユーザーのために 2013 年 - PMF を目指すために 2013 年当時の Chatwork は PMF (Product Market Fit) を目指すフェーズ

                                                                                Chatwork のプロダクトフェーズと技術選定の流れ - Chatwork Creator's Note
                                                                              • LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法

                                                                                LINE Developer MeetupはLINEが定期的に開催する技術者向けミートアップです。66回目の今回はLINEの新規サービス開発に携わる奥山氏が社内フレームワークArmeriaを使って簡単にgRPCサーバーを実装する方法を共有しました。 gRPCって何だったっけ? 奥山裕也氏(以下、奥山):LINEの開発4センター、 Official Account開発室の奥山が、「OA DevにおけるgRPC」についてお話しします。 まず簡単に自己紹介しますと、私は2019年の4月に新卒で入社しました。Official Account開発室というチームで、LINE公式アカウント関連の新規サービスを主に開発しています。コードは、サーバサイドで主にKotlinを書いています。また、line-bot-sdk-pythonというMessaging API SDKのメンテナーもしています。 今日は、最

                                                                                  LINE開発担当が語るプロダクションレディなgRPCサーバをArmeriaで簡単に作る方法
                                                                                • Scala 3 is here!🎉🎉🎉

                                                                                  ⚠️ Beware of Scams: since Feb 2024, scammers are using fake Scala websites to sell courses, please check you are using an official source. After 8 years of work, 28,000 commits, 7,400 pull requests, 4,100 closed issues – Scala 3 is finally out. Since the first commit on December 6th 2012, more than a hundred people have contributed to the project. Today, Scala 3 incorporates the latest research in

                                                                                    Scala 3 is here!🎉🎉🎉