サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ブラックフライデー
codezine.jp
正式リリースされた二つの機能 本連載は、フロントエンドフレームワークVueのアップデート内容を紹介しているものです。今回は、2023年12月にリリースされた3.4、および、2024年9月にリリースされた3.5の内容をまとめて紹介します。 3.4、3.5ともに、SFCのビルドの改善やリアクティブシステムの改善など、パフォーマンス面での改善もかなり行われていますが、こういった目に見えない部分だけでなく、目に見える機能面でもいくつか新しいものが導入されています。 その中から最初に紹介するのが、以前は実験的リリースだった機能が正式リリースとなったふたつの機能です。実はこれらの機能は、第1回ですでに詳細に紹介しています。 正式リリースとなったdefineModel() ひとつめは、defineModel()マクロです。これは、v-modelによる新しい値の自動格納の仕組みを簡潔に記述できるようにした
米GitHubは、AIアシスタントであるGitHub Copilotを使用して生成されたコードが、どの程度機能的で読みやすく、信頼性があり、保守しやすく、簡潔で、承認される可能性が高いかを明らかにすべく実施した、ランダム比較試験の結果を11月18日(現地時間)に発表した。 同試験では、5年以上の経験を有する開発者202名が参加し、半数にはGitHub Copilotへのアクセスがランダムに割り当てられ、残り半数にはAIツールを使用しないよう指示が与えられている。参加者全員に、WebサーバのAPIエンドポイントを記述するコーディングタスクを完了するよう依頼し、その後単体テストと専門家のレビューによってコードを評価した。 試験結果のうち、いくつの単体テストに合格したかをみると、GitHub Copilotを使用して作成されたコードは、AIツールを使用せずに書かれたコードと比較して、はるかに多く
ここ2〜3年で、GitHub Copilotなど、生成AIを利用した開発者支援サービスが続々登場した。すでに業務で利用されているという皆さんも少なくないだろう。一方で、「使ってはみたが、期待外れだった」と感じている人も多いに違いない。本セッションのスピーカーは、「現場では得意不得意を見極めて、使い道を考えている」と語る。そして、「ソフトウェアエンジニアリングの研究コミュニティでも研究が進んでおり、得意不得意が論文という形で表れつつある」ともいう。このセッションでは、開発現場でコンサルタントやエンジニアとして活躍を続ける和田卓人氏と、アジャイルコーチとして開発の現場を支援しているやっとむ氏の2人がモデレーターを務め、名古屋大学大学院情報学研究科の森崎修司氏が、最新の研究事例と、自身の研究を紹介しながら、生成AIの得意、不得意について語った。 研究者が語る、生成AIの得意/不得意とは? まず森
CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
WebVMは、仮想化エンジンであるCheerpX、仮想ストレージバックエンド、ネットワーク層、エミュレートされたグラフィカルデバイスで構成されている。 CheerpXは、x86命令からWebAssemblyへの効率的なJust-In-Timeコンパイラと、Linuxシステムコールのエミュレーションレイヤに基づく、x86バイナリコード用のWebAssemblyをベースにした仮想化エンジン。標準のJavaScript/WebAssembly、およびブラウザAPIのみで実装されているため非常に安全で、CDNまたはNPMパッケージを使って、他のJavaScriptライブラリと同様に使用できる。 WebVMでは、WebSocketを使用してCloudflare Workerバックエンドからオンデマンドで128kbのディスクブロックをダウンロードする、ストリーミングディスクデバイスを実装している。Cl
「RAG・プロンプト管理」画面のイメージ RAG機能は、AIが回答を生成する際に外部データベースから情報を参照して、その情報に基づいて回答を生成する技術であり、従来の生成AIが抱える「ハルシネーション問題」(AIが事実でない情報を生成してしまう問題)を大幅に軽減し、より正確で信頼性の高い回答の提供を可能にする。同機能はとりわけ、社内ナレッジ活用や顧客サポートでの活用が期待される。 プロンプト管理機能は、企業内で使用するプロンプトを一元管理することで、それぞれの部門やチームが必要な情報へ直ちにアクセスできるようにする。プロンプトの履歴やバージョン管理を通じて、組織内のプロンプトの再利用性を高め、AI回答の一貫性と効率性の確保が可能になる。 RAG機能やプロンプト管理機能を使用することによって、zip形式で圧縮してアップロードするだけで、QA履歴やマニュアルなどを追加や変更でき、追加料金なしで
技術者の中には、「これは素晴らしい!」「みんなに勧めたい!」と感じる"推し"の技術を持っている人も少なくないだろう。一方で、その技術の素晴らしさを上司や経営層に熱心に提案しても、渋い顔をされたり、やんわり断られたりした経験があるかもしれない。技術的に優れているのは明白なのに、推しの技術はなぜ経営層に受け入れられないのか。その背景には、技術力だけでは乗り越えられないビジネスの壁が存在している可能性がある。本セッションでは、株式会社NTTデータグループ 技術革新統括本部 Apps & Data技術部の菅原 亮氏が、エンジニアが"推し"の技術を組織に採用させるための具体的な方法について語った。 戦略と戦術の違い、エンジニアが陥りがちな失敗とは? 初めに菅原氏は、自らのキャリア初期を振り返りながら、エンジニアが陥りがちな「推し技術を採用させる難しさ」について語った。駆け出しのエンジニア時代、技術へ
PHPに関する日本最大のカンファレンスである「PHPカンファレンス2024」が2024年12月22日(日)に開催されます。カンファレンス盛り上げ企画として、開催までの5カ月間にわたりPHPの技術記事の連載を企画しました。この記事をお読みの皆さんには、PHPのさまざまな技術に触れながらカンファレンス当日を楽しみにしていただければと思います。 第4回目の今回は、PHPのパッケージ管理ツールとしておなじみの「Composer」について、どのようにパッケージの存在を確認し、バージョンを解決するのか、一連の流れを見ていきましょう。 パッケージ管理ツール「Composer」 今日では、多くのプログラミング言語において、開発プロジェクトにパッケージ管理ツールが欠かせないものとなりました。 既存資産の活用で「車輪の再発明」を避け、開発の効率化を助けてくれます。また、セキュリティ意識が高まる中で、厳密なバー
現代的なアプリ開発において、高パフォーマンスを実現するには並行処理の知識が欠かせません。エンジニア初級者が学ぶような「逐次実行を前提にしたプログラム」では理解しづらい概念や特徴があるため、どのように並行処理プログラミングを行うのかはしっかり学ぶ必要があります。 本書では著者のユニークな語り口と楽しいイラストによって、並行処理プログラミングの核となる知識を徹底的に詳しく解説。様々なハードウェアアーキテクチャの長所と短所も理解でき、スケーラブルな並行処理システムの実装が可能になります。 エンジニアとしてある程度の実力がついてきたと感じている人がぶつかる壁を、本書で乗り越えましょう。 目次 Part 1 タコのオーケストラ:並行処理の交響曲 Chapter 1 並行処理 Chapter 2 直列実行と並列実行 Chapter 3 コンピュータの仕組み Chapter 4 並行処理の構成要素 Ch
テキストエディタとして活用(2) 禅モードを使う 禅モード(Zenモード)とは、エディタ上に表示されるUI要素をできるだけ少なくしてフルスクリーン表示とし、文章の入力・編集作業に集中できるようにするモードです。集中したいのは文章に限らずコーディングでも同じだと思いますが、書く、消す、以外の機能をあまり使わない文章の入力・編集作業では、特に禅モードは有用でしょう。 禅モードへの移行(切り替え)には、いくつかの方法があります(図3)。 メニューから[表示]-[外観]-[Zen Mode]を選択 コマンドパレットを開き([Command]+[Shift]+[P」/[Ctrl]+[Shift]+[P])、「zen」と入力すると「表示: Zen Modeの切り替え」がメニューに表示されるので選択 キーボードショートカットとして[Command]+[K][Z]/[Ctrl]+[K][Z] 図3:禅モー
Markdownエディタとして活用 Markdownは、軽量なマークアップ言語の一つです。Markdown形式のファイルは、Qiitaにおける記事作成や、GitHubのREADMEの記述にも用いられており、簡単に書けて表現力もあるフォーマットとして広く使われています。VSCodeでも、拡張子が.mdであるファイルをMarkdown形式として扱い、シンタックスハイライトなどの基本的な機能を提供しています。 プレビューを表示する Markdownに慣れないうちは、独特のマークアップ(記号)と見た目の対応がなかなかイメージできないので、プレビューを見ながら書けたら便利でしょう。VSCodeでは、Markdownファイルの編集中に、プレビューを表示させることができます。同一のエディタグループとするか、あるいは新たなエディターグループとして横に表示するか、2通りの操作があります(図8)。 同一エディ
本連載では、VSCodeにフォーカスし、基本的な使い方から拡張機能の活用、そして本格的な開発現場での利用を想定した高度な機能までを紹介していくことで、読者がVSCodeマスターになるお手伝いをします。VSCodeは、プログラミング以外の用途にも使えます。第10回では、VSCodeをドキュメント作成のためのテキストエディタ、Markdownエディタとして使う方法を紹介します。 はじめに Microsoftの提供するVisual Studio Code(VSCode)は、2015年の最初のリリースから、今では開発用エディタの定番の座を占めるまでになりました。これには、無償で使えることも大きいですが、何よりエディタとしての使いやすさ、そしてさまざまな拡張機能によっていくらでも使い勝手を向上させたり、利用の領域を拡げたりできることも大きいでしょう。 本連載では、このVSCodeにフォーカスし、基本
2015年にリリースされたRustが近年注目されています。RustはMozilla社の社員による個人プロジェクトから始まり、当初はFirefoxなどに使われていました。次第にパフォーマンス、安全性、生産性の高さが評価され、様々なソフトウェアやハードウェアへの組み込み、Webアプリやゲームなどに利用されるようになりました。Webサービスのバックエンド開発にも活用されており、利用を考えている方もいるのではないでしょうか。今回はRustの入門書『バックエンドエンジニアを目指す人のためのRust』(翔泳社)から、なぜRustが注目されているのか、その魅力を紹介します。 本記事は『バックエンドエンジニアを目指す人のためのRust』(著:安東一慈/大西諒/徳永裕介/中村謙弘/山中雄大)の「第1章 Rustはどういうところで使われているのか?」から抜粋したものです。掲載にあたって編集しています。 Rus
本記事では、React Nativeベースのフレームワーク「Expo」がどんな仕組みなのか、Expoによってどのようにモバイルアプリを開発・実行できるのかを解説します。ベースエンジンとなっているReact Nativeはどのようなものかを見た後、Expoはどのような側面からアプリ開発をサポートするのかを解説していきましょう。動作確認用のExpo Goアプリの使い方も解説します。 対象読者 モバイルアプリを作ってみたいReactエンジニア モバイルアプリのリリース作業を手軽に行いたい方 前提環境 筆者の検証環境は以下の通りです。 macOS Sonoma 14.6.1 Node.js 22.8.0 npm 10.8.2 Expo 51.0.32 React Native 0.74.5 Webに軸足を置いたモバイルアプリ開発の需要 モバイルアプリ開発の分野は、他の多くの分野と同じように進化を続
Gmailの新ガイドラインが目指すものとは? 2023年10月、Gmailからメール送信者向けの新しいガイドラインが発表された。それに対し、海外では相当な反応があった。メールは古くからある技術だが、新しい技術や環境への対応は常に行われており、時代の要請も踏まえてこれまでの常識が新常識に置き換わっている部分も多い。 実際、新ガイドラインが求めていることは、ネット社会の環境変化などを受けたもので、中井氏によれば「その要点は2つに絞ることができる」と言う。1点目は認証と信頼性の確保だ。送信者の身元が明確で、安全かつ信頼できる方法で送信している必要がある。2点目は送信者としての適切な振る舞いだ。受信者が必要としているメールを送ること、不要なメールは受け取らない選択ができることなど、受信者が快適であるような施策が求められている。 新ガイドラインでは、大きく2つの対応が求められた Gmailのようなメ
これまで本連載ではPlatform Engineeringについてさまざまな観点から解説してきました。前半では理論編として、既に提唱されているソフトウェア開発の重要な考え方(SREやTeam Topologies等)との関係を整理していくアプローチを中心に理解を深め、後半には実践編としてInternal Developer Portalのハンズオンや、プラットフォームをプロダクトとして構想し成長させる進め方について解説してきました。今回とその次の回では、「Platform Engineering Kaigi 2024」で共有された知見や、基調講演でも登壇した株式会社メルカリ 中島大一さんへのインタビューを通して、Platform Engineeringの実践のポイントについて紐解いていきます。 Platform Engineeringの先人に学ぶ──PEK2024の講演より 2024年7月
生成AIの急速な進化は、多くの分野で生産性の向上や人件費削減などの利益をもたらしている。しかしその反面、ソフトウェア開発におけるテスト工程の複雑化などにより、品質保証のプロセスにおいてさまざまな問題が発生している。こうした問題への対処として、開発プロセスの早い段階でテストを行うことで問題を早期に発見し修正する「シフトレフト」、リリース後の本番環境で、実際のユーザーデータを用いて問題を発見し迅速に修正する「シフトライト」の2種類のアプローチが試みられている。こうした複雑化の背景や、シフトレフト/ライトの考え方について、高橋寿一氏によるセッションが行われた。 生成AIで複雑化するテストプロセスとソフトウェア品質 セッションの冒頭、高橋氏は「AIの品質保証は、今後かなり面倒になる」としたうえで、「AIの台頭がさらに進むと、品質保証にかかるテスト費用は増える。このテスト費用はここ30年変わらなかっ
本書はRustを学びたい人のための入門書です。下記のようなプログラムを作りながら、Rustならではの生産性の高いプログラミング手法を解説します。 様々な課題を細分化してステップバイステップで解説するので、初心者でもじっくり理解しながら仕事に直結するスキルを身につけられます。 計算クイズ ポーカーゲーム メモリ付き電卓 家計簿プログラム 本棚ツール 勉強会カレンダーツール TODOアプリ 画像変換ツール また、バックエンドエンジニアとして就職・転職する際に必要となる入社試験を想定した問題も掲載しています。Rustによるバックエンドのスキルアップができるだけでなく、「仕事に活かす」「仕事にする」ための手法が学べる1冊です。 目次 第1章 Rust はどういうところで使われているのか? 第2章 Rust のプログラムを動かせるようになろう[ Hello, World ] 第3章 インタラクティブ
近年はソフトウェア開発技術の進化によって技術のコモディティ化が進み、エンジニアはより本質的なプロダクト的な価値に集中できるようになりました。本記事は、プロダクト的な価値を中心に置いた「プロダクトエンジニア」という職種について解説します。プロダクトエンジニアの出現の背景をひも解くとともに、フルスタックやフルサイクルエンジニアの役割と比較して理解を深め、プロダクトエンジニアがどういう職種なのか、具体的に紹介します。 プロダクトエンジニアの出現、領域の越境と拡大 こんにちは、アセンド株式会社CTOの丹羽です。突然ですが「プロダクトエンジニア」という言葉を聞いたことはありますか? プロダクトエンジニアとは、開発の中心にプロダクトの価値追求を置くソフトウェアエンジニアの職種を指します。近年、スタートアップ企業を中心にプロダクトエンジニアという職種を新たに設定し、採用募集を行う企業が増えています。 ソ
「スタディングテック」は、オンラインでプログラミングが学べる動画学習サービスで、基本コースは無料となっており、会員登録のみでプログラミングの学習動画を視聴できる。 提供コースとしては、人気プログラミング言語ランキングにて1位を獲得した「Python」や、近年需要が急速に高まっている「生成AI」などを用意しており、生成AIの活用、プログラミングの基礎からWeb開発・アプリ開発まで、未経験からITエンジニアになるためのスキルを身につけられる。 提供コースは以下の通り。 Python基礎 JavaScript入門 HTML/CSS入門 Astro入門 生成AI入門 Git/Githubの使い方 VSCodeの使い方 今後は、以下のコース提供も予定する。 PHP入門 Node.js入門 Next.js入門 Laravel入門 React入門 あわせて、現役エンジニアによるサポートが受けられる有料プ
「デザインが変わっただけ」でもスクリプトの修正が大変 3つ目の事例は「テスト実行が遅く、仕様変更時の修正が大変な現場」。顧客へのヒアリングにて「最近テスト実行に時間がかかって困っている」との声があがった。テストケースのステップ数が多いのか尋ねたら「画面数は数個で、UIが少し変更された程度だが、スクリプトの修正が非常に大変」とのことだった。大幅な機能変更の有無を問うと「デザインやメッセージが変わっただけ」との回答を得た。 詳細を調べたところ、テスト対象は問合せフォームで、文字列を入力し送信するページだった。テストスクリプトではデザインの検証に加え、フォームへの入力値やメッセージのチェックを行っていた。デフォルト値のチェックや、入力必須のアラートが出るかのバリデーションも行い、最後にテキスト入力をするなど、多岐にわたる検証を行っていた。 UIの詳細な検証を含む、非常に複雑な内容だった テストの
テスト自動化の運用における3つの課題 バルテスグループは、ソフトウェア開発におけるV字モデルの上流から下流まで、品質向上を支援する事業を展開する企業である。同グループのバルテス株式会社では、ソフトウェアテストの支援に加え、日本語で書かれたテストケースをスクリプトに変換できる月額3630円~(7月24日現在)利用できるテスト自動化ツール「T-DASH」も提供している。江村氏は、20年以上にわたりWEB業界に携わり、アプリケーション開発やプロダクトマネジメント、QA組織の立ち上げ、テスト自動化プラットフォームの構築など、さまざまな経験を積んできた。現在は、同グループ内のバルテス・ホールディングスでテスト自動化のエバンジェリストとして社内外で活動している。 バルテス・ホールディングス株式会社 ソリューション事業推進部 首席研究員 江村 禎昭氏 テスト自動化には、仕様の追加や変更時にスクリプトを修
PHPに関する日本最大のカンファレンスである「PHPカンファレンス2024」が2024年12月22日(日)に開催されます。カンファレンス盛り上げ企画として、開催までの5カ月間にわたりPHPの技術記事の連載を企画しました。この記事をお読みの皆さんには、PHPのさまざまな技術に触れながらカンファレンス当日を楽しみにしていただければと思います。 第3回目の今回は、筆者がOSSとして公開した、PHPでアクターモデルを実装するためのツールキット「Phluxor」を活用し、PHPでの並行処理に入門しましょう。 アクターモデルとは アクターモデルは1973年に発表された並列演算モデルであり、現在では並行処理を行うためのモデルのひとつとして広く利用されています。このアクターモデルは独立したプロセスとして振る舞う「アクター」と呼ばれるオブジェクトがメッセージをやり取りすることで処理が行われます。 アクターモ
調査対象者のうち、元会社員で現在フリーランスとして独立している人に、会社員時代と比較した働き方の違いを尋ねたところ、会社員時代よりも「増えた」こととしては、「仕事の進め方の自由度」(79.9%)がもっとも多く、「私生活の幸福度」(58.6%)がそれに続いた。会社員時代よりも「減った」ことでは、「仕事上のストレス」(65.5%)が最多となっている。 収入面では、「増えた」が35.7%、「減った」が49.9%だった。具体的な金額としては、ITエンジニア・開発系が約73万円増、編集・ライター・印刷系は約95万円減と職種によって違いがみられる。 働き方の満足度は、「満足」が62.1%に達し、職種別でも「満足」が5割超を占めた。 すべての調査対象者に、フリーランスとして働く上で不安なことを尋ねた質問では、「収入に波がある・不安定」(38.8%)がもっとも多く、「収入額が少ない」(31.6%)がそれに
見積もりやリカバリーの「失敗」は必ず起こる このような事態が発生するのはなぜだろうか。石垣氏は以下の2点を挙げる。 「失敗は見積りの失敗」であるという認識の欠如 隠された失敗が明るみになり、「詰んでいる」状態であること 1.について石垣氏は、マーティン・ファウラー氏による言葉を引用しつつ、「プロジェクトが失敗するのは、そもそもの見積もりが失敗しているためだ」と話す。さらには「見積もり時点での計画工数が大きくなるほど、実績との乖離が大きくなる傾向がある」というIPAのデータも示した。 そのうえで石垣氏は、「見積もりが失敗するのは、プロジェクト初期の段階で多くの約束事を決めてしまうためだ」と指摘する。有名な図である「不確実性のコーン」が示すように、プロジェクトの初期は不確実性が非常に高いため、焦ってリカバリー策を講じたところで見積もりのズレは取り戻せないのだ。 初動のズレは「見積もりの失敗」で
技術負債は「価値の創出」を妨げる 「技術負債が事業に与える影響はさまざまな領域に波及するが、ソフトウェアに限れば、"価値あるものを作れなかった"という点に集約される」と語り始めた石垣氏。ここでの「価値」とは、売上の創出やユーザー数の増加、リテンション向上につながる機能を指す。すなわち、「価値が作れなかった」とは「事業責任者が立てた、機能やキャンペーンなどの目標を達成できなかったという状況」を意味する。 ではなぜ、多くの費用をかけても価値を創出できない事態に陥るのか。石垣氏は「期限に間に合わなかった」ケースと「作るべきでないものを作ってしまった」ケースに大別し、今回は前者に焦点を当てると示した。 数億円規模の損失をもたらし、事業へのリスクもある技術負債 価値の創出と技術負債にはさまざまな要素が関わるが、とくにソフトウェア事業における事業計画では、予算計画と開発計画が主なカギになることが多い。
GitHub Copilotの機能はコーディング支援にとどまらない GitHub Copilotはいち早く「Copilot」を冠することになったプロダクトだ。業務に生成AIが有用であることを証明し、エンジニアの開発生産性を急速に高める契機となった。開発でコーディングするエンジニアなら、GitHub Copilotまたは何らかの生成AIを日常的に使用していることだろう。 GitHubの調査によるとGitHub Copilotは開発業務を55%高速化し、コード品質を15%高めるという結果が出ている。生産性向上は疑いの余地がないところだ。ただしソフトウェア開発のための作業はコーディングだけではない。エンジニアの業務時間のうち、コーディングを中心とした開発作業は25%程度。それ以外の75%は調整のための会議、資料作り、リサーチなどに費やされている。 ギットハブ・ジャパン合同会社 シニアカスタマーサ
ポルトガルのOutSystemsは、業界初となる本格的なソフトウェア開発ライフサイクル(SDLC)デジタルワーカーとして、ローコードと生成AIを活用したアプリの生成・提供・監視を可能にする「OutSystems Mentor」を、10月15日(現地時間)にオランダ・アムステルダムで開催されている「OutSystems ONE Conference」にて発表した。 OutSystems Mentorは、アプリ開発にあたってシフトレフトアプローチを採用しているため、開発者は開発の初期段階から作業を開始できる。 最初にプロジェクトの要件定義とプロトタイプの作成に着手し、アイデアの妥当性を検証しつつ本格的な開発に入る前に初期設計の調整が可能となっており、ユーザーがアプリケーションのニーズやビジョンをOutSystems Mentorに伝えるだけで、フロントエンド機能、データモデル、ビルトインのビジ
次のページ
このページを最初にブックマークしてみませんか?
『CodeZine:プログラミングに役立つソースコードが満載な開発者のための実装系Webマ...』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く