JJUG CCC 2024 Spring 複雑な業務ロジックに立ち向かうための実践技法 【初級編】 ①値の種類 ②範囲型 ③階段型 【中級編】 ④状態遷移 ⑤入出金履歴と残高 ⑥未来在庫 【上級編】 ⑦セット演算 ⑧割合と端数 ⑨決定表 ⑩経路探索
僕が触り始めた頃のウェブフロントエンド開発はデバッガーもなく、ダイナミックHTMLと呼ばれて文字をチカチカさせたりするようなものでした。IE6という超安定ブラウザが出てきたり(Netscape 4.xも7.xも不安定だった)その後jQueryが登場したときは、天使が降臨したように思えたものです。 そこから長い年月が経ち、ウェブフロントエンドの比重が大きくなるにつれ、フロントエンドのコードはどんどん複雑化しました。OpenAPIなどのコードジェネレータなども普及した結果、通信というものが隠され、イベントの中でawaitや.then()で呼ばれる何か、みたいな理解をしているメンバーも今後増えていくのではないかという懸念があります。 現在ではウェブフロントエンド開発はReactやVueといったフレームワーク上で行われ、イベントというのはそのフレームワークの提供するライフサイクルイベントに対応付け
今回は、SSH接続を劇的に高速化する方法をご紹介します。たった3行の設定を追加するだけで、接続時間を10分の1に短縮できます。しかも、2回目以降の接続では認証も自動的に行われるので、パスワードやパスフレーズの入力も不要になります。 要点 .ssh/configファイルのHost *セクションに以下の3行を追加するだけです。 詳しい説明 1. ControlMaster auto この設定で、1つのSSH接続で複数のセッションを共有できるようになります。新しくSSH接続を確立するたびに認証情報を入力し直す手間が省けて、接続がぐっと速くなります。具体的には: 初回の接続時のみ認証が必要 2回目以降は既存の接続を再利用するため、認証プロセスをスキップ パスワードやパスフレーズの入力が不要になり、接続がほぼ瞬時に完了 2. ControlPath ~/.ssh/mux-%r@%h:%p Contr
富士通Japanは5月9日、神奈川県川崎市のコンビニの証明書交付サービスで、他人の戸籍謄本が発行された問題について、原因を公表した。 「2カ所のコンビニで、2人の住民が同一タイミング(1秒以内)で交付申請した際に、後続の処理が先行する処理を上書きしてしまう」プログラムのバグが原因だったという。 このプログラムは川崎市以外では使われておらず、他の自治体で起きた問題と原因は異なる。バグは既に修正・入れ替えたとしている。 富士通Japanの証明書交付サービスは、全国200弱の自治体に導入されているが、川崎市の他、横浜市、東京都足立区で、他人の住民票の写しを誤って発行するなどの問題が発生。それぞれ別のプログラムが原因であることが分かっている。 河野太郎デジタル大臣は5月9日の記者会見で、同システムの一時停止を富士通Japanに要請したと発表。同社は9日付のニュースリリースで、「サービスの総点検は既
どうも、まさとらん(@0310lan)です! 今回は、誰でも無料で使える天気予報APIを提供してくれるWebサービスをご紹介します! 面倒なユーザー登録やAPIキーの設定などが不要で、欲しい天気情報のパラメータを含めたURLを好きなように構成するだけで簡単にJavaScriptから制御できるのが特徴です。 日本はもちろん、世界中の詳細な天気情報を取得できるのでご興味ある方はぜひ参考にしてみてください! 【 Open-Meteo 】 ■「Open-Meteo」の使い方 それでは、「Open-Meteo」をどのように使えばいいのか詳しく見ていきましょう! 「Open-Meteo」が提供する天気予報APIを利用するにあたり、何か特別な登録や申請は必要ありません。もっと言えば、ユーザー登録も不要でAPIキーもありません。 非営利プロジェクトであれば誰でも自由に使うことが可能で、以下のエンドポイント
お客様にAWSを学習するためのハンズオンの探し方を教えて欲しいと依頼されることがあったので、その際に調べた内容をまとめました。AWSのハンズオンを探す際にご利用ください。それぞれのハンズオンの個数は 2022-07-07 時点のものです。 2022-09-27 にAWSの日本語ハンズオンまとめページである JP Contents Hub がリリースされました。このブログで紹介している各種ハンズオンへのリンクも含まれているようですので、まずはJP Contents Hubを参照いただくのがよいかもしれません。JP Contents Hubの解説は AWS 日本語ハンズオンまとめ JP Contents Hub のご紹介 | Amazon Web Services ブログ を参照してください。 AWS ハンズオン資料 ハンズオン資料 | AWS クラウドサービス活用資料集 22 個のハンズオン
はじめに 今回は大学が無料で公開している、エンジニア向けの学びになる資料をまとめていきます。 東京大学 Pythonプログラミング入門 Pythonについて環境構築から始まり、基本文法、数値解析など応用的な使い方までを分かりやすく解説している。 AWS入門 こちらもネットワークやクラウド、インフラの仕組みの解説から始まり、AWSの構成パターンなどが基礎から解説されている。 150分で学ぶ高校数学の基礎(東大生) 高校数学について180分でサクッと振り返る神資料。数学の知識はプログラミング領域でも活用する場面が多々あるので、かなり勉強になる。 AI・データサイエンスの活用事例 データサイエンスやAIの活用事例を学べる。 人工知能・深層学習を学ぶためのロードマップ(松尾研) 東京大学の松尾研究室が公開している資料。 AIやデータサイエンス、人工知能の学習ロードマップがまとめられている。 誰でも
はじめに 2024年1月にリテール(ネットショップ・レジ)部門からサービス(予約)部門に異動になった @ucks です。 異動してからはスマートリストという機能の開発を行っていて、5月6日に無事リリースできたのと、開発途中で障害に至ってしまった部分があるので、裏側を少し紹介しようかなと思います。 はじめに スマートリストとは スマートリストの設計 検索の仕様変更 高負荷時のハンドリング そして障害へ 見逃した点 DBの実行計画確認時の見逃し 動作確認時の漏れ 監視先の漏れ ログの損失 おわりに スマートリストとは スマートリストの開発についての話を行う前に、まずはスマートリストについて簡単に説明しておきます。 スマートリストとは、特定の条件の顧客をラベリングする機能です。 早い話、最終予約日がいつ、予約回数が何回以上等の顧客の検索条件を保存しておいて、閲覧時にラベリングして、視認しやすくし
IPv4には、プライベートIPアドレスとして割り当てられたアドレスブロックがあります。 1996年に発行されたRFC 1918で規定されている10.0.0.0/8、172.16.0.0/12、192.168.0.0/16の3つです。 NAT(NAPT)とともにプライベートIPアドレスは、多くの環境で利用されています。 企業LANなどでIPv4ネットワークを構築するときに、プライベートIPアドレスを一切使わずにグローバル(パブリック)IPアドレスのみで組むようことは、いまでは少ないのではないかと推測しています。 世界中で多く利用されているIPv4のプライベートIPアドレスですが、2024年現在時点において、IPv4のプライベートIPアドレスと全く同じ用途のIPv6アドレスは存在しません。 IPv6には、ULA(Unique Local Address)というアドレスがあります。 「ULAって
✨無料公開中✨ 業務ができる中級者になるためのJavaScript入門の第2弾となります。何度学んでも今一つ理解できないDOMに関して、できるだけわかりやすく説明しています。 業務ができる中級者になるためのJavaScript入門(文法編) https://zenn.dev/books/568dd4d86562a1/edit ✨開発環境に役立ててください✨ 👾 やっぱりwebpackがわからない(エピソード1) https://zenn.dev/antez/articles/58307946cf4f3e 👾 やっぱりwebpackがわからない(エピソード2) https://zenn.dev/antez/articles/638382faa06bd7 👾 そもそもnpmからわからない https://zenn.dev/antez/articles/a9d9d12178b7b2 ✨Wo
ゲーム作りとかCGとかに関わる数学(初歩)① 今回HIKKYさんのアドベントカレンダーに投稿するにあたって、別の温めてたネタはあったんですが諸事情により封印してしまったので、何か別のテーマにしようと考えました。 で、色々考えたのですが、特に思いつかなかったのでCG数学の初歩的な話をしようかなと思います。実際VKetCloudの中でも基本的な数学は必ず使われてますし。 あと「ゲームメーカーズ」さんの記事でも取り上げていただいた、僕のCEDEC+KYUSHU2023の数学のお話がやたらとウケがよかったため、数学の話で行くことにしました。 で最初に書いておくと、書きたかったことの半分もかけていません。 時間の都合上と、あと数式と頭が多すぎるのか、このドキュメントの編集が何度も落ちるからです。 と言うわけで、今回は概要と三角関数とベクトルの話だけにします。 あとは年末年始休みの間にでも続きを書きま
転職の回数は、ITエンジニアの年収にどんな影響を与えるのか──ITエンジニアに特化した転職サイト「Forkwell」を運営するGrooves(東京都港区)が5月10日、こんな調査結果を公開した。データによると、エンジニアは転職回数が増えるごとに給与が高くなる傾向があり、転職しない人と比べて生涯年収が1000万円近く変わるという。 データは2022年4月時点でForkwellに登録していたエンジニア約1万人の情報を基に算出。転職回数に対する平均年収を年代別にまとめた。 例えば生涯で1回も転職をしないエンジニアの平均年収は20代前半で453万円、20代後半で463万円、30代前半で528万円、30代後半で579万円、40代前半で662万円、40代後半で680万円だった。 しかし生涯で4回以上転職するエンジニアの場合、20代前半では425万円と転職しない場合を下回るものの、20代後半の時点では6
オンラインゲームを作ろう!と思ったことがある方は、 こちらの講演記事を1度は見たことがあるのではないでしょうか。 www.4gamer.net こちらの講演は、具体例を交えながら非常に分かりやすくオンラインゲームの主な同期方式が説明してあり、 2024年現在でもオンラインゲームの基礎を学ぶ資料として真っ先に名前を上げる最高の資料です。 しかしながら講演は2010年のものであり、オンラインゲームはこの10年余りで進化しています。 この辺りの進化の話を簡単にまとめつつ、オンラインゲームの同期方式の選び方を紹介します。 (上記講演記事の知識/用語を前提としているため、先に上記記事をお読みください。) オンラインゲームの民主化について 技術の話をする前に。 近年、「マルチプレイヤーゲーム」と聞いてオフラインの画面分割ゲームを想像する人はいないと言って良いほど オンラインゲームは民主化されてきました
3年前、趣味で開発するウェブアプリ向けの安価なAWSアーキテクチャについて記事を書きました。当時流行りの話題だった記憶です。 趣味Webサービスをサーバーレスで作る ― 格安編 - maybe daily dev notes 最近はAWSにも新たに色々なサービスが出てきて、以前とは一味違う構成を取れるようになっています。この記事では、アップデートされた格安かつスケーラブルなウェブアプリ向けAWSアーキテクチャを紹介します。 コード 本記事で紹介するアーキテクチャのリファレンス実装は、以前と同じリポジトリに公開しています。 github.com 主な機能は下記です: Next.js App RouterをAWS Lambda上にデプロイ CloudFront + Lambda関数URLによるレスポンスストリーミング対応 クライアントからサーバー、DBまでの型安全性 Aurora Server
対象読者と目的 非同期処理の実装方法は知っているが、仕組みを詳しく知らないのでベストプラクティスがわからないときがある 実行順序の保証がよくわからないので自信をもってデプロイできない変更がある より詳しい仕組みを理解することでより計画的な実装をできるようになりたい という動機で書かれた記事です。同様の課題を抱える人を対象読者として想定しています。 目次 実行モデルとタスクキュー Promise async/await AbortSignal, Event, Async Context WHATWG Streams / Node.js Streams (執筆中) 未定 入門記事へのリンク プロミスの使用 - JavaScript | MDN Promise, async/await (現代の JavaScript チュートリアル) JSの初心者にPromiseとasync/awaitの使い方
ビリビリの配信主「稚暉君」が公開した動画が話題になっている。自律走行をする自転車を週末の空き時間を利用して、わずか4ヶ月で開発したというものだ。稚暉君はビリビリの人気配信主であるだけでなく、ファーウェイの天才少年プロジェクトにも選ばれた人。すでに商品化してほしいという声が相次いでいる。 自律走行自転車を開発したのはファーウェイの天才少年 ビリビリの配信主「稚暉君」(ジーホイジュン)が、動画を公開したのは6月6日。すでに300万回以上再生されている。稚暉君は以前から科学やテック系の動画を公開している人気配信主。 この稚暉君の本名は、彭志輝(ポン・ジーホイ)さん。2018年に電子科技大学を卒業し、2020年にファーウェイの天才少年プロジェクトで合格をし、高給でファーウェイに入社をした。 https://www.bilibili.com/video/BV1fV411x72a/?spm_id_fr
[速報]Google、自然言語でAIと対話するだけで誰でもアプリが作れる「Duet AI for AppSheet」発表。Google I/O 2023 Googleは5月10日(日本時間5月11日未明)、米カリフォルニア州マウンテンビューで開催中のイベント「Google I/O 2023」で、AIと自然言語で対話することでアプリケーションの開発ができる「Duet AI for AppSheet」を発表しました。 プログラミング不要でアプリケーションの開発が可能なため、誰でもアプリケーションが作れるようになります。これにより開発チームはより重要なアプリケーションの開発に集中できるようになると説明されています。 AIとチャットするだけでアプリケーションが完成 以下はDuet AI for AppSheetの紹介動画からの引用です。 AIとのチャットで、社内で出張申請を管理するためのアプリケー
バリデーション解体新書 2025/4/8に開催した #アーキ部 『バリデーション解体新書』の内容を編集したものです。 バリデーションとは何か? 広義には、 何らかの処理を実施するにあたって、入力データが想定する条件を満たすかを検証する行為 と言える。 この定義で、アプリケーションのどこでバリデーションをしているのかを考えると、以下のように各層にそれが見られる。 このように実装される場所が散らばるので、「バリデーション」や「入力チェック」を分類して開発ガイドラインを作ることが多い。 例えば、大規模Java開発向けのTERASOLUNA開発ガイドラインを見てみると、 ユーザーが入力した値が不正かどうかを検証することは必須である。 入力値の検証は大きく分けて、 1. 長さや形式など、文脈によらず入力値だけを見て、それが妥当かどうかを判定できる検証 2. システムの状態によって入力値が妥当かどうか
1. はじめに こんにちは! 株式会社EpicAIの松島です! EpicAIではシステム開発系の案件に関わることが多く、要件整理〜実装まで幅広く触っています。個人では、作りたいものを気軽に作って試したり、AtCoderで競プロをやったりしています。 今回は、自分が個人開発をするときに愛用している技術構成について紹介します。 学生や個人開発者のみなさん、アプリのデプロイ先、どうしていますか? 「モダンな技術でWebアプリを作りたい!でも…」 AWSやAzureは機能が多すぎて学習コストが高いし、クレジットカードの高額請求が怖い…。 Herokuの無料枠が終わってから、手軽なデプロイ先が見つからない…。 Vercelもいいけど、データベースのお金がかかるのがネック…。 そんな悩みを抱えている開発者に、現在考えうる「最強・最速・完全無料」の技術スタックを紹介します。これを使えば、財布を気にせず、
2022-11-20 僕は Twitter社の Build/Bazel Migration チームでスタッフ・エンジニアとして勤務していた。信じられないような 2年の後、2022年11月17日をもって退職した (企業買収後のレイオフでも任意でもあんまり関係無いが、僕は任意退職希望のオファーを取った)。Twitter社は、切磋琢磨、多様性、そして Flock を構成する全ての人に対して溢れ出る優しさというかなり特別な文化を持った職場だった。これを間近で経験して、その一員となる機会を得たことに感謝している。(Flock は「鳥の群れ」の意で、社内での Twitter社の通称) 以下は過去2年の簡単な振り返りだ。尚本稿での情報は、既に公開されているトークやデータに基づいている。買収後、うちのチームだけでも 10名以上のメンバーが Twitter社を抜けたので、在籍・元含め LinkedIn プロ
Claude Codeを使いはじめて、いろいろ試してるけど、 なかなかいい感じのコードを書いてくれないな〜と思い、 いろいろ調べてみたときの備忘録(*´ω`*) えいや、でコード生成してくれるけど、 あとで自分で変更したり、保守したりするときに大変なので、 自分がいいとおもう感じに生成してほしかったりする。。 ドキュメントとサンプルコード大事... 事前準備やガードレール一覧 このあたりを用意しておくと、よさそうな感覚 プロジェクトに関するドキュメント(メモリ/コンテキスト: CLAUDE.md) lint/format/自動テストの設定&実行コマンド サンプルコード or テンプレートリポジトリ このあたりは任意、あるとより安心・便利 git-secrets Git Hooks(pre-commits) DevContainer Git Worktree ※おまけ ドキュメント大事・カー
GitHub Actions入門 ── ワークフローの基本的な構造からOIDCによる外部サービス認証まで GitHubが公式に提供するGitHub Actionsは、後発ながらよく使われるワークフローエンジンとなっています。本記事では、藤吾郎(gfx)さんが、典型的なCI/CDのユースケースに即したワークフローの設定と管理について解説するとともに、注目されているGitHub OIDC(OpenID Connect)の利用についても紹介します。 GitHub Actionsは、GitHubが提供するCI/CDのためのワークフローエンジンです。ワークフローエンジンは、ビルド、テスト、デプロイといったCI/CD関連のワークフローを実行し、定期実行するワークフローを管理するなど、開発におけるソフトウェア実行の自動化を担います。 ▶ GitHub Actions - アイデアからリリースまでのワーク
ウェブ上でJavaScriptを実行してバグが発生した場合、ブラウザに内蔵されている開発者ツールを使ってデバッグすることがよくあります。そうしたブラウザでのデバッグにおいて役立つテクニックをNetflixでフロントエンドの開発に携わっているアラン・ノルバウアーさんがまとめています。 67 Weird Debugging Tricks Your Browser Doesn't Want You to Know | Alan Norbauer https://alan.norbauer.com/articles/browser-debugging-tricks ◆高度な条件付きブレークポイント 開発者ツールの「ソース」タブにはデバッガーが用意されており、JavaScriptの任意の行にブレークポイントを設定することで実行を一時停止して変数やコールスタックの中身を確認できます。ブレークポイントを
はじめに この記事は レガシーコード改善ガイド: 保守開発のためのリファクタリング を参考に手を動かしてみて、ある程度自分の中で体系的にまとまった知識のアウトプットです。 この記事で扱う内容 この記事で扱うのは主にレガシーコードで単体テストを書く際のハードルになりがちな 依存関係の排除 に関する手法を紹介します。 この記事を読んだ後に、 『この観点を持っておけば単体テストをスムーズに書いていけそう!』 『今までモック使ってたけど意外とモック使わなくても書けるね!』 となったらいいな、と思います。 ちなみに、今まであんまりテスト書いたことないよーて人は以下の記事など参考にして一度やってみてください。 もくじ テスト駆動不具合修正 or リファクタリング手順 なぜテストが書けないのか 依存関係を排除できればテストは書ける 依存関係を排除するためのカギになる考え方 書けない単体テストがなくなる2
─これから挑戦する次の誰かにとって、何かの気づきになったら嬉しいです。 @GussieTechです。ひとりで「理想のタスク管理ツール」を作っています。いつも使ってくださっているみなさん、本当にありがとうございます。今日は、ひとり開発の知られざる5年間を、惜しみなくシェアします。 僕が作ったサービス5年前「理想のタスク管理ツールを作ろう」と思いたちました。軽くておしゃれで「人」に寄り添う、他にはないサービス。こんなものを無料でリリースしたら、世の中ひっくり返るんじゃないかって、本気で思って作りました。それはもう、ワクワクしました。 総売上高 1,240万円。スペース 5,873登録¥12,403,567名前は「Repsona」といいます。ワクワクを原動力にひとりで作ったRepsonaは、5年でこうなりました。数字に感じるところは人によると思います。趣味の個人開発としては大成功。スタートアップ
DevToysとは デベロッパーのためのスイスアーミーナイフの紹介文の通り。 開発時によく使うツールを十徳ナイフのようにまとめたアプリになっています。 JSONの整形とかエンコードデコードetc... プログラミングや保守運用の調査でやりがちな作業をいちいち変換サイトを探したり、エディター拡張機能のショートカットを探したりせずとも、これ一つですぐにできます! インストール Microsoft Storeからインストールできます。 公式サイトからストアへのリンクを踏むか、ストア検索して見つけてください。 WinGetやChocolateyでもインストール可能です。 Microsoft StoreアプリなのでWindowsでしか使えませんが、Macユーザーの方は気を落とさずにこちらの記事をどうぞ! また、作者曰くMacにはDevBoxやDevUtilsなどの類似ツールが既にあるため非対応だそう
Claude CodeやCodexの登場でコーディングは体感3倍くらい早くなりました。しかしプロダクト開発自体の速度アップは1.x倍くらいに留まっている気がします。 その原因は「プロダクト作りはコーディング以外にも色々やることがあるから」だと思い、コーディング以外でのAI活用を今年色々試したのでまとめてみます。 なお、このZennは「小さなチーム 大きな仕事」というタイトルで以前発表したものの再編版です。スライドの方が読みやすい方はそちらを参照してください:) AIの力を借りて2人で10人分の仕事をする 前提: 個人開発で作っているもの 「tone(トーン)」というチーム版Todoサービスを友人と2人で作っています。 Todoアプリはエンジニアの勉強目的で作られることもあるぐらいなので簡単なイメージがあるかもしれませんが、toneでは色々と複雑なことをやっています。 例えば、 gRPC /
虚業クンッ @FakedBusiness みなさん、TOEFL学習に合わせてChatGPTとDeepLを使ってネットの英文記事をこんな風に活用してみました。 単語翻訳など改良の余地はありそうですが多読用に参考書を買うモチベーションがどんどん無くなって来てきます。 pic.twitter.com/q8YREk6Bg5 2023-01-18 00:07:48 市川 衛 @医療の「翻訳家」 @mam1kawa DeepLに文章校正サービスが追加。 もはやChatGPTに文献やデータを教えてもらいつつ文章を日本語で作り、DeepLに整えてもらえば英語の記事や論文が手間なく書ける時代だなあ それを前提に、どう価値を発揮できるかを考えないとですね~ pic.twitter.com/5qj52SSKp7 2023-01-18 10:13:18
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く