CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
対象読者 Excel/PowerPointなど、一般的なツールの操作を理解している人 RPAツールを用いて業務を自動化したい人 PDFアクション PDF(Portable Document Format)とは、Adobe社が開発したページ記述言語PostScriptをベースにしたドキュメント形式のこと。環境やプリンターによらずに保存・転送・閲覧・印刷が可能であり、電子ドキュメントにおける事実上の標準のファイル形式として広く使用されています。ファイルの中に、テキストデータと描画命令、画像などのコードが圧縮されて格納されています。 Power Automate for Desktopでも、これらのファイルを扱うアクションが用意されています。 PDFからテキストを抽出 PDFから画像を抽出 PDFからテーブルを抽出 新しい PDFファイルへのPDFファイルページの抽出 PDFファイルを統合 本稿
本連載では、Javaプログラムの実行を担うJava仮想マシン(JVM)について、その情報を取得するさまざまなツールの利用を通じて理解を深めます。JVMやそのツールに関する知識はアプリケーションが正常に動作しているときではなく、障害など異常が起こった際に大いに活躍します。それだけでなく、Javaプログラムを動作させる仕組みを知ることはソフトウェアを開発するエンジニアの皆さんの知的な部分を刺激するとともに、シニアレベルのJavaエンジニアへと進む第一歩となります。連載第1回はJVMの概要を解説し、模擬的なトラブルシュート体験としてヒープダンプを取得して解析します。 はじめに 今後もアプリケーションをJavaで開発、運用していくことを前提にすると、そうした業務に携わる方は次のようなことを学び続けるでしょう。 Javaの半年ごとのバージョンアップに追随して新機能などを学ぶ アーキテクチャなどでの新
急成長中のスタートアップ企業は、多様なAWSサービスをどう選択・活用し、ビジネス課題を解決しているのでしょうか。本連載では、スタートアップ企業の中でエンジニアリングをリードしている担当者がそのアーキテクチャをひも解き、AWS活用術を紹介していきます。第5回はKyashでSREを担当する上原佑介氏が担当、テーマは「セキュリティ」です。記事の最後には、SAによるポイント解説もあります。(編集部) はじめに 株式会社KyashでSREを担当する上原佑介と申します。新卒でインフラエンジニアとしてサーバー構築・運用を経験したのち、Webサービスの運営企業を数社経て、Kyashへ入社しました。現在はサービス全体の信頼性向上を目指して、システム基盤や運用面の改善に取り組んでいます。 Kyashについて Kyashはスマートフォンアプリと連動するVisaカードです。 コンビニなどから現金をチャージして使え
デブサミ2020の1日目、「質とスピード」というセッションが人気を集めた。2019年10月に開催されたEngineering Organization Festival 2019で評価の高かったセッションをアップデートして再演したものだ。登壇したのは、テスト駆動開発者として有名な、タワーズ・クエストの和田卓人氏。ライオンのアスキーアートといっしょに紹介されることが多いという。プロジェクトマネジメントにはQCD(Quality:品質、Cost:コスト、Delivery:納期)という概念があり、トレードオフの関係になると言われている。確かに開発の現場でも、「いまは大事な時期だから、品質を犠牲にしてスピードを優先しよう」といった判断が行われることは少なくない。しかし、和田氏は、ソフトウェア開発の文脈において、逆の効果をもたらすことを、多くの資料を引用して再構築してみせた。 タワーズ・クエスト株式
「Docker Desktop 2.2」では、これまでSambaに依存していたDocker上で動作するLinuxファイルシステムとWindowsファイルシステムの相互管理をgRPC FUSEに置き換えている。 gRPC FUSEへの置き換えによって、キャッシュを利用してページ読み込み時間を短縮するとともに、Linux inotifyイベントをサポートし、ソースコードが変更されたときに自動再コンパイル/リロードのトリガーが可能になったほか、Windows認証とは切り離して利用できるようになった。また、VPNの接続/切断にかかわらず利用可能で、管理者として実行されるコード量を削減している。 さらに、ローカルで実行中のコンテナと、Composeアプリケーションを管理できるインタラクティブなダッシュボードUIが採用された。WindowsとmacOSで共通のインターフェースを実現する、新たなデスクト
ITシステムの開発に主体的に携わるには、IT関連のスキルだけでなく、広範囲の業務知識が不可欠です。翔泳社では財務会計や生産管理など主要な6分野の業務知識を網羅した『ITエンジニアのための【業務知識】がわかる本 第5版』を12月21日に発売しました。第4版から4年ぶりの改訂です。 『ITエンジニアのための【業務知識】がわかる本 第5版』は、さまざまなITシステムを開発する際に必要な各分野の業務知識を体系的に解説した1冊です。 高度なITスキルを持っていても、実際に役立つITシステムを開発するにはシステムが必要とされている分野の知識が欠かせません。例えば、会計システムを開発するなら簿記や決算など財務会計の知識が必要です。これらは実務を経験しないとなかなか習得しづらいものですが、本書でそのポイントを押さえておけば、効率よく全体像を掴むことができます。 本書では主要な6分野として会社経営、財務会計
今後、アプリケーションの開発企業および開発者は二極化していく。価値あるエンジニアとして生き残るためには、学び続ける姿勢が大切だ。技術者にとって最も重要なのは、「このシステムにはKubernetesが合う」「このシステムはKubernetesでなくてもいい」といった技術の見極め、つまり適材適所に技術を選択する力だ。ではどうやってそれらを選択していけばいいのか。また、マイクロサービス化に取り組む上で考えるべきことは何か。さらにKubernetes導入におけるつまずきがちなポイントについて、日本マイクロソフト シニアクラウドデベロッパーアドボケイトの寺田佳央氏が解説した。 日本マイクロソフト株式会社 シニアクラウドデベロッパーアドボケイト 寺田佳央氏 問われるのは技術力。だから学び続けることが重要 「Kubernetesについて紹介しようとすると1時間では話しきれない。そこで今日は当初のアジェン
対象読者 Java関連に携わる開発者 これからJavaを学ぼうと思っている方 既存のライブラリ資産を利用する場合 Javaにはこれまで蓄積されたライブラリも多く、特にオープンソースライブラリを使わない選択をするのは、多くのプロジェクトで難しいと言わざるを得ません。そしてJava 9へのバージョンアップ後も、それらのライブラリをそのまま使う必要があるケースが多々あります。 しかし、Java 9がモジュールに対応したことに合わせて、既存の全ての資産をモジュール対応させてリリースし直すのは、現時点では難しいことでしょう。 Java 9のモジュール機能とモジュール対応されていないライブラリを同時に利用することは可能です。しかし、そのためにはいくつかの注意点があり、Java 9がモジュールをどのように扱っているのか、理解する必要があります。 Java 9におけるモジュールの扱い Java 9のモジュ
はじめに 脆弱性対応に追われる状況は、開発からデプロイまでの時間を浪費し、またサイバー攻撃への対応力を弱めがちです。そこで、開発者が最初からセキュアにソフトウェアを構築する能力を身につける必要性が高まっています。前回の記事では、深刻な影響のある10の脆弱性についてまとめた「OWASP Top 10」から、それぞれの脆弱性についての解説や、開発者の方に活用してほしいOWASPコミュニティの成果物を紹介しました。OWASP Top 10によりソフトウェア・セキュリティの世界の扉を開くきっかけになれば幸いです。 OWASP Top 10では各脆弱性の概要、脆弱性の有無の確認方法、防止方法などを理解できることを紹介しました。このドキュメントは、脆弱性そのものを軸として説明がなされていることから、事前の対策、すなわち脆弱性が発生しないようにするための防止方法を軸として見た視点とは異なっています。その
対象読者 JavaScriptフレームワーク・ライブラリの選定に悩んでいる方 本格的にJavaScriptを触るのが初めてという方 jQueryでの大規模なフロントエンド開発に限界を感じている方 必要な環境 Node.jsがインストールされていることが推奨です。 React.jsとは何か React.jsは最近注目を浴びているFacebook製のライブラリで、MVCアーキテクチャでいうViewにあたる機能を提供します。 前提として、JavaScriptの世界でMVCのVといえば、紛れもなくDOM(Document Object Model)のことを指します。特に何も意識しないで作った場合、都合の良いDOMからデータを引っ張り出しては別のDOMを書き換えるといった、行き当たりばったりな作りになりがちです。そこで、MVCの考え方を導入することにより、データを画面とは独立した構造体として切り出し
Perlの開発者であるLarry Wall氏が、ブリュッセルで開催中のオープンソース開発者カンファレンス「FOSDEM」において、2月1日(現地時間)に、同氏が2015年に61歳の誕生日を迎えることを明らかにするとともに、Perl 6.0のバージョン1.0を2015年のクリスマスにリリースすると発言した。 Perlは現在、最新バージョンであるPerl 5系列と、開発中のPerl 6系列に分岐しており、Perl 6の開発は2000年のスタート以来、難航している。なお、Perl 6では言語仕様の大幅な変更が行われており、Perl 4やPerl 5との後方互換性が失われる。 今回のLarry Wall氏の発言について、Perl開発者の中には懐疑的な見方もあり、今回の発言によって、2015年のクリスマスにPerl 6のバージョン1.0が確実にリリースされるわけではないが、バージョン1.0について語
* About to connect() to redmine-server port 80 (#0) * Trying redmine-server... * Adding handle: conn: 0x21b3278 * Adding handle: send: 0 * Adding handle: recv: 0 * Curl_addHandleToPipeline: length: 1 * - Conn 0 (0x21b3278) send_pipe: 1, recv_pipe: 0 * Connected to redmine-server (xxx.xxx.xxx.xxx) port 80 (#0) > POST /issues.json HTTP/1.1 > User-Agent: curl/7.30.0 > Host: redmine-server > Accept: *
まつもとさん自身によるStreemについての解説は、今後日経Linuxで順次掲載されるようです。まつもとさんがStreemについて解説する内容は、おそらく、プログラミング言語設計に関する高レベルなものとなるのではないでしょうか。 本記事はそれとは無関係に、2015年1月に公開されているStreemについての低レベルな解説、つまり現時点のStreemのソースファイル(の一部)の読み解き方を示します。具体的には、GitHubのStreemリポジトリにある「lex.l」と「parse.y」という2つのソースファイルについて解説します。 Streemのソースファイルは、https://github.com/matz/streemからダウンロードできます。画面右下にある[Download ZIP]ボタンをクリックしてください。 lex.lとparse.y ダウンロードしたStreemソースファイルの
幅広い開発者にGoによるコーディングを試してもらえるよう、前半はWindows環境+Eclipseを前提とした開発環境の作り方と、Goアプリケーションのビルド方法について説明します。後半は、「Goji」を利用した簡易的なWebアプリケーションの作り方について説明しますが、Goの構文や書き方といった基礎的なことの説明は割愛します。もし、Goプログラミングの基本を学習したい場合は、Webブラウザを使ってGoのコードの入力や実行を試すことができる「A Tour of Go」を試してみてください。 本稿を通して、1人でも多くの方にGoで開発を行うメリットや楽しさを実感していただけると幸いです。 Goの利点 世の中に様々な実績あるプログラミング言語が存在する中で、改めてGoを採用することにどのような利点があるのでしょうか? 私は次のような利点を感じています。 ビルドした結果が「環境依存のない単一の実
Java SE 8では、新しい構文要素として「ラムダ式」が導入されました。これにより、これまで用いられたデザインパターンのいくつかは、特に意識しなくても同等のコードが書けるようになります。デザインパターンが解決しようとしていた問題が、ラムダ式によって素直に実装できるからです。本連載では、デザインパターンを使って書かれたコードをラムダ式を使ったシンプルなコードに書き換えながら、ラムダ式の使いどころ・使い方を学んでいきます。 言語の洗練によってパターンは背景に退く まず、デザインパターンについておさらいしましょう。デザインパターンとは、オブジェクト指向言語を用いてプログラムを書くときに、頻発するプログラム設計上の工夫を「パターン」としてまとめたものです。ギャング・オブ・フォー(GoF)と呼ばれる4人の著者(エーリヒ・ガンマ、リチャード・ヘルム、ラルフ・ジョンソン、ジョン・ブリシディース)が執筆
Javaは言語仕様上の制約により、ボイラープレートコード(自明だが省略できないお決まりのコード断片)がいくつかあります。例えば、メンバ変数を読み書きするだけのgetterメソッドやsetterメソッドがこれにあたります。Lombokを使えば、これらJava特有の冗長なコードを、見やすく簡潔なものにすることができます。本記事ではLombokを利用して、ボイラープレートコードをシンプルに記述する方法について解説します。 はじめに 今やJava開発に必要不可欠となったものの一つに、IDEの存在があります。例えばEclipseではメンバ変数さえ定義すれば、getter/setterの自動生成や、equalsメソッドやhashCodeメソッド、toStringメソッドなどの自動生成などさまざまな場面でコーディングを強力にサポートしてくれます。 これは大変便利な機能ですが、裏を返せばJavaの言語仕様
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く