CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
はじめに BASE株式会社でシニアエンジニアを務めているプログラミングをするパンダ(@Panda_Programと言います。本連載は「フロントエンドカンファレンス沖縄2022」で私が発表した内容[1]を記事として再構成したものです。 対象読者 本連載の対象読者は、個人開発に興味があるソフトウェアエンジニアの方です。 個人開発の楽しさはモノづくりの楽しさ、個人開発のメリットは事業の仕組みを学べること 個人開発は一見すると、自分の時間を使ってソフトウェア開発をするという大変な作業のように思えます。実のところは、さながらDIYのようにモノづくりそのものに熱中する楽しさを味わえます。ソフトウェアエンジニアを職として選んだ頃の、純粋にコードを書いてシステムが動くのが楽しいという初心に帰りながら、仕事とは無関係に自分の作りたいものを作る楽しさと喜びは小さいものではありません。 私はかつて、幸福には3種
リモートワークが一般的になり、一方でさまざまな課題が生じてきています。特にコミュニケーションの課題などは多くの人に関係するため大きな関心を集め、急速にさまざまなソリューションが出てきています。一方で開発業務に目を向けると、少しずつ進みつつあるものの、デファクトと言えるほどのものもなく、情報もあまり共有されていないように思います。そこで、筆者がいろいろと試行錯誤をしながら行った施策について紹介したいと思います。 はじめに 今の開発現場ではDockerなどを使った仮想化コンテナを使うことが一般的になっています。そのため、ソースリポジトリ(Gitなど)と仮想化コンテナを使えば、各開発者が開発環境を構築し、業務を進められます。つまり、オフィスのPCを自宅に持ち帰るか、もしくは自宅のPC上で開発環境を構築してしまえばそれで問題は解決するのです。 しかし、どちらの方法もセキュリティや情報管理の観点から
米Amazon Web Servicesは、全世界から利用できるNTP(Network Time Protocol)サーバーを11月10日(現地時間)に公開した。同社は「Amazon Time Sync」という名称でEC2(Elastic Compute Cloud)インスタンスに時刻情報を送信するサービスを提供しているが、今回は時刻情報を送信する対象を全世界のコンピューターに拡大した。 AWSが提供を開始したNTPサーバーを利用するには、コンピューターの時刻設定で「time.aws.com」というNTPサーバーを参照するように設定すればよい。料金は発生しない。AWSはIoT端末や、オンプレミスのサーバーなど、AWSサービスと連携している端末で使用することで、AWSサービスと共通の時刻で運用できる利点があるとしている。 Amazon Time Syncは、衛星につながった原子時計を使用した
Visual Studio CodeにJavaScriptデバッガが組み込まれたことで、従来Visual Studio CodeでのJavaScriptデバッグで用いられていた、ChromeデバッガまたはMicrosoft Edgeデバッガ拡張機能が不要になる。 さらに、Google ChromeまたはMicrosoft Edgeでプロジェクトをデバッグするには、「F5」キーを押すか、メニューバーのデバッグアイコンをアクティブにして「Run and Debug」を選んでセッションを始められるほか、「Debug: Open Link」コマンドを実行することで、拡張機能をインストールすることなく、Google Chrome、Microsoft Edge、またはNode.jsでのデバッグを選べる。 なお、ブラウザ開発ツールのコンソールと同じように、エディタのデバッグコンソールからブラウザのドキュ
調査結果のうち、言語またはその技術を使用して開発を行っており、継続的に利用したいプログラミング言語を尋ねた質問(複数回答)では、Rust(86.1%)が1位となった。その理由としては、パフォーマンス、制御のしやすさ、安全にメモリを利用できること、システムプログラミングに適した同時実行性の高さ、マクロなどが挙げられている。オープンな開発プロセスを採用していることもあって、(利用していない人を含む)多くのプログラマから高い評価が寄せられた。 2位はTypeScript(67.1%)で、WebフロントエンドおよびNode.jsコードベースにおけるサイズと複雑さの増大と相まって、TypeScriptの静的型付けによるコードの正確性が、プログラマの信頼感を高めている。また、TypeScriptのpolyfillによって、ECMAScriptにおけるアロー関数や非同期処理、クラスといった変更との高い互
プログラミング演習の教材は、プログラミングの初学者を対象にPythonを用いたプログラミングを演習方式で学ぶもので、京都大学学術情報リポジトリ(KURENAI)で公開されている。本編のほか、横道にそれる話題をまとめたコラム編の2つの教材がある。著者は国際高等教育院 教授の喜多一氏。 本教材は、2018年度に全学共通科目として実施された授業を元に構成されたもので、到達目標としては以下の3つを挙げている。 Pythonによるプログラムの実行についての基本操作ができるようになる。 Pythonプログラムを構成する基本的要素の機能と書式について説明し、例題を用いて実行例を構成できるようになる。 Pythonを用いて簡単なプログラムを自ら設計、実装、テストできるようになる。 著者は、本教材のまえがきにおいて、多くの解説書がプログラミング言語の紹介に終始しがちななか、Pythonというプログラミング言
本連載では、比較的「小規模」な「受託」開発を実施する際のAWS活用の勘所を、実際の開発現場での経験を元に紹介します。大規模な開発では当てはまらない部分もあると思いますが、可能な限りインフラ関連の工数を少なくし、効率的に開発を実施するために、最低限抑えておく実務上役立つ点について、解説します。本記事では、小規模なフルスクラッチの業務システムをビジネスとし、開発を実施する際に参考となるAWSのアーキテクチャや工数のかかる工程、留意すべきセキュリティに関するポイントを紹介します。 はじめに 比較的小規模なフルスクラッチのシステム開発(1〜20人月程度)を受託するビジネスとする場合、AWS上に「多層アプリケーション(Web層、AP層、DB層)に即したインフラ環境を構築する」ことが多いと思います。 多層アプリケーションの構成例 このような構成をシステム毎、顧客毎に構築することになりますが、AWSで構
Java 9、Java 10と6カ月ごとのリリースを終え、予定通り9月にJava 11がリリースされます。Java 10の連載でも紹介しましたが、Java 11ではサポート面の変更や既存モジュールの一部廃止などが行われます。また、Java 11はLTS版(長期サポート)であり、本格的に利用を始めようと思う方も多いのではないでしょうか。実は筆者もJava 11の状況を見てから現行で動いているシステムの移行対応をしようと思っています。特にJava 8以前の資産を維持しなければいけない開発者にとっては、影響がどのくらい生じるのか興味があるでしょう。また、新しいAPI面では、Java 9から長く待たされているHTTP関連のAPIが大きな変更点です。今回はJava 11での主な変更点の紹介と標準機能になったHTTP Client APIを中心に紹介します。 初めての6カ月定期アップデートで変わったJ
本稿の前半の記事⇒「JavaでWebサービスを作り続けるための戦略と戦術(前編)」 BizReach Tech Blog バッチ処理 ユーザーのブラウザ上での操作をトリガーとして動作するのがWebアプリケーションの基本ですが、画面操作とはまったく無関係に何らかの処理を実行する必要もあります。古いセッション情報や不要となったDBレコードを一定の間隔で破棄する機能、あらかじめ決めた時刻になったら送信するメール配信機能などです。画面処理と対比する形でバッチ処理と呼ばれることがありますが、実はバッチという単語には注意が必要です。 バッチ処理という言葉は本来、「大きめのデータに対する、時間のかかる一括処理」といった意味あいが強いものです。しかしほとんどのWebアプリケーションシステムで必要となるのはバッチ処理というよりはスケジューリング処理です。つまりUNIXのcrontabに似た機能でしょう。Sp
学習や動作確認に使用できるJShellとは 「JShell」とは、Java 9で提供される新たなツールの1つです。JShellを使えば、コードをjavaコマンドでコンパイルし、その後、javaコマンドで実行するという手順を行わなくても、実行結果が確認できます。 このような環境をREPL(Read-eval-print loop)と呼びます。JShellは、Java 9のSDKから標準で利用できるREPL環境です。 [Note]さまざまなREPL REPL環境について他の言語も含めて体験してみたい方は、さまざまな言語でREPL環境を提供しているWebサービス、「repl.it」を利用してみてください。 これまでJavaを学習したい場合にはJava SEをインストールし、EclipseやNetBeans、またはIntelliJ IDEAなどのIDE環境をそろえるのが普通でした。他の言語での開発
本連載では、株式会社ビズリーチのエンジニアが、急成長を続ける事業の中で得られた実践的なノウハウをつづります。2009年の創業以来、HRTechベンチャーとして新たな事業を展開するビズリーチ。「HRTech」は、「FinTech」や「HealthTech」と同様に、テクノロジーの力で革新する昨今のトレンドの中で、人事・採用など「HR」の領域のイノベーションとして注目されています。ビズリーチは、創業から8年で16の事業を立ち上げた経験の中で、事業課題の解決に向けた地に足の着いた技術や、最新技術を身につけてきました。これらのノウハウを発信し、業界を越えて社会に貢献していこうと考え、連載を開始しました。 BizReach Tech Blog はじめに HTTPやSMTP、HTML、CSS、XML、JSONなどWebを支える基礎的な技術は、比較的単純な仕様で構成されているため、Webサービスはどのよ
2017年9月にJava 9がリリースされました。この世に出てから20年以上が経過したJavaは、さまざまな技術トレンドを作ってきました。今でも広く使われている言語であることは間違いありません。本連載ではJava 9がリリースされたこの機会に、Javaのリリースの歴史とJava 9のリリース内容の概要を紹介していきます。1回目となる今回は、これまでリリースされたバージョンを簡単に振り返り、Java 9の変更点について全体像を解説します。 はじめに 2017年9月にJava 9がリリースされました。Javaという名前で初めて世の中に出てきたのは1995年なので、それから20年以上も経過したことになります。これまでJavaは、いろいろな技術のトレンドを作ってきました。 最近では、Java自体がITのトレンドとして扱われることも減りました。そのためか、なかなか細かい内容まで広く取り扱われることが
illustration by iwasawa Selenideとは Selenideとは、エストニアにあるCodeborne社のAndrei Solntsev氏を中心に開発が行われているWebDriverのJavaラッパーの一つで、同じJavaで実装されたFluentLeniumやGroovyでのGebに相当するものです。WebDriverはプログラムからブラウザを操作するAPIを提供していますが、基本的に低レベルAPIで自動テストを記述するには大量のコードが必要となります。SelenideはWebDriverを基盤としながら高水準APIを提供することで、WebDriverを素で使うよりも容易にかつ記述量を抑えてテストを記述することができます。 Selenideの特徴 以下ではSelenideの特徴を述べていきます。これらの中には上記で挙げたFluentLeniumやGebでも提供されて
JavaのOSSフレームワークとして地位を確立しているSpring Framework。翔泳社では『Spring徹底入門』を刊行しましたが、本書はNTTデータの皆さんが執筆されたもの。NTTデータはなぜ価値あるノウハウを公開し、共有しようとするのでしょうか。今回、本書を執筆された本橋賢二さん、槙俊明さん、池谷智行さん、小島祐介さん、川崎真弘さんにお話をうかがいました。 なぜNTTデータがSpring Frameworkの入門書を手がけるのか? ――『Spring徹底入門 Spring FrameworkによるJavaアプリケーション開発』はNTTデータの皆さん(槙さんは執筆中に転職)が執筆されましたが、最初におうかがいしたいのは、なぜNTTデータがJavaのOSSフレームワークであるSpring Frameworkのノウハウを広めるための入門書を手がけたのかということです。 本橋:NTTデ
ITエンジニア本大賞 技術書・ビジネス書の各ベスト10 ITエンジニア本大賞は、ITエンジニアにおすすめの技術書・ビジネス書を選ぶイベント。ITエンジニアによるWeb投票で各ベスト10を選出し、大賞は、Web投票で特に票の多かった6冊(技術書・ビジネス書各3冊)の書籍の著者、編集者、翻訳者などによるプレゼン大会の最終投票で決定する。プレゼン大会は、2月18日開催の「Developers Summit 2016(デブサミ2016)」内で行われる。 ベスト10に選ばれた書籍は下記のとおり。 技術書部門ベスト10 ※50音順 『ITエンジニアのための機械学習理論入門』(技術評論社) 『インフラ/ネットワークエンジニアのためのネットワーク技術&設計入門』(SBクリエイティブ) 『Web API: The Good Parts』(オライリー・ジャパン) 『SQL実践入門──高速でわかりやすいクエリの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く