検索結果

There are 44 results found.

2026年 オープンソース・プロフェッショナル職業調査に参加しよう!

あなたにとって何が大切かを、雇用主に伝えましょう! Open Source JobHubとLinux Professional Institute(LPI)は再び連携し、「オープンソース・プロフェッショナル職業調査(Open Source Professionals Job Survey)」の第3回を開始しました。この調査は、現在そして将来において、自由ソフトウェアおよびオープンソースソフトウェア分野で働くプロフェッショナルにとって、キャリアの中で何が最も重要なのかを理解することを目的としています。 質問はわずか8問、所要時間は約5分と、とても簡単に意見を共有できます。今年の調査では、テクノロジーに関する経験やAIの活用状況に加え、エネルギー効率やサステナビリティ(持続可能性)が、参加者の組織においてどのような役割を果たしているかを探る質問が含まれています。 皆さまからの回答は、雇用主が、あなたのようなオープンソース・プロフェッショナルの期待に沿った取り組みを行うための、非常に貴重な指針となります。 影響を与える準備はできていますか?2026年版 オープンソース・プロフェッショナル職業調査に、ぜひ今すぐご参加ください! 個人を特定できるデータは一切収集されません。オープンソース分野のキャリアの未来づくりにご協力いただき、ありがとうございます。 なお、2025年版 オープンソース・プロフェッショナル職業調査の結果にご興味のある方は、こちらをクリックしてください。

SeaGL 2025:コミュニティ主導のLinuxの週末

シアトルGNU/Linuxカンファレンス(SeaGL)は、第13回目の開催として、11月7日から8日にかけてワシントン大学に戻ってきました。SeaGLは、これまで一貫してコミュニティ主導で、完全に無料のイベントであることを誇りとしてきました。ここで言う「無料」とは、参加のために登録したり、個人情報を提出したりする必要がないという「自由」を意味します。まるで毎週開かれる地元のファーマーズマーケットにふらっと立ち寄るような気軽さで参加できる、草の根的な技術サミットなのです。今年もその伝統は受け継がれ、ワシントン大学(UW)のHUBを中心に、2日間にわたって講演、ディスカッション、さまざまなアクティビティが行われました。また、周辺のシアトル近隣地域でもいくつかの関連イベントが開催されました。このイベントは、学生や地元のオープンソースグループ、そして(シアトルの北約2時間に位置する)ベリンガムから参加した人々を含む、多くのボランティアによって完全に運営・支援されています。 Jon “maddog” Hallと私は、Linux Professional Institute(LPI)を代表して参加し、日曜日のプログラムでそれぞれ講演を行いました。すべての講演は録画され、ハイブリッド形式での参加が可能で、講演後にはSeaGLのMatrixスペース上で、登壇者と参加者の双方が参加する活発なディスカッションチャンネルが設けられました。私たちの講演動画は、SeaGLのボランティアが録画映像の処理を終え次第、オンラインで公開される予定です。 木曜日:到着とローカル・ハッカースペース訪問 私は木曜日の正午頃にシアトルに到着し、レンタカーを借りて、ワシントン大学HUBから徒歩約15分の距離にあるUniversity Innにチェックインしました。このホテルは、会場に最も近いホテルの一つです。夕方早めの時間に、UWキャンパス近くにあるdev/hackコミュニティスペースを訪れました。そこでは、Seattle Community Network(SCN)のメンバーや、他のコミュニティのdev/hack関係者たちが、オープンソースのネットワーキングやオーディオ関連のさまざまなプロジェクトにすでに取り組んでいました。このシアトルのdev/hackスペースには、学生、研究者、地域の人々、ボランティア、そして地元のプロフェッショナルが集まっており、その中にはテクノロジー分野に直接関わっているわけではない、地元のセラピストも含まれていました。 その日の夜遅くには、LinuxFest Northwest(LFNW)の理事であるGarth Johnson氏と、Cascade SteamのMichael Gan氏が、ベリンガムから来たLFNWの学生ボランティアの一団とともに到着しました。彼らはdev/hackのメンバーから温かく迎えられ、Seattle Community Networkが他のコミュニティグループとともに拠点を構える、複数階にわたるdev/hackビルの案内を受けました。この見学は、ベリンガムでコミュニティが集まり、メイカーやオープンソースプロジェクトを共有できるスペースを運営しているCascade Steamプロジェクトに関わるGarth氏とMichael氏にとって、非常に興味深いものでした。 ツアーの後、私たちは空港へmaddogを迎えに行きましたが、通常のシアトルの交通渋滞に加え、工事による空港周辺の混乱もあり、非常に厳しいドライブとなりました。それでもmaddogは比較的機嫌よく、Uディストリクトで遅めの夕食をとりました。 金曜日:SeaGL開幕 金曜日の朝は、Café On the AveでGarth氏、Michael氏、学生ボランティアたちと朝食をとり、その後UW HUBへ歩いて移動し、LPIのブース設営を行いました。maddogのテーブルクロスや資料、そしてハロウィン後のお菓子がたっぷり入った大きなボウルのおかげで、私たちのブースには途切れることなく来場者が訪れました。多くの参加者がLPI認定について学び、20%割引バウチャーのQRコードを写真に収め、メンバーシッププログラムについて質問してくれました。あるいは、ただ雑談をしに立ち寄る人もいましたが、それも大歓迎でした。私たちの目的は、Linuxやオープンソースのコミュニティに関わる新しい人々と出会うことだからです。 金曜日は、UW HUBの複数フロアで終日講演トラックが行われ、廊下での会話を楽しむ時間も十分にありました。来場者のおよそ20%は、SeaGLが初めての人や、無料でオープンなカンファレンスとはどんなものかを見に来た学生でした。 その日の夜のソーシャルイベントは、Ada’s Technical Bookstoreで開催され、SeaGL提供の無料ピザに加え、SCN創設者のEsther Jang氏が率いるバンド「Si Tu Savais」による無料のライブジャズ演奏、そしてSCNのための資金調達オークションが行われました。会場は満員で、初日の締めくくりとして素晴らしいひとときとなりました。 土曜日:講演、来場者、そして忙しいLPIブース 土曜日も再びCafé On the Aveで一日を始め、2日目のカンファレンスに参加しました。この日はmaddogと私の両方が講演を行い、全体的な参加者数も金曜日以上に多く感じられました。 私は、最近博士号を取得し、現在UWで博士研究員を務め、また私自身もボランティアとして関わっているSeattle Community Network(SCN)を設立したEsther Jang氏による土曜日の基調講演に参加しました。Esther氏は、コミュニティISPのネットワークスタックと、それを支えるアプリケーションについて説明しました。これらはオープンソースのソリューションを活用し、SCNのネットワークがなければインターネット接続を持てないシアトル各地の複数のコミュニティに対して、有線、WiFi、セルラーアクセスを提供しています。 続く2つ目の基調講演では、UWのHuman Design and Engineering学部の准教授であるNadya Peek氏が登壇し、デジタルファブリケーションや個人の創造性に関するプロジェクト、そしてオープンソースソリューションが、機械やそれを動かすソフトウェアの保守をどのように容易にするかについて語りました。 (https://depts.washington.edu/machines/) 講演時間中であっても、私たちのブースは学生、研究者、教育者、地元のプロフェッショナルで賑わい続けました。質問内容は基礎的なものから、DevOpsやセキュリティ認定といった新しい分野に関するものまで幅広いものでした。 長い一日の後、私たちは2回目のソーシャルイベントは見送りました。maddogと私は日曜日に早朝便を控えていたため、シアトル在住でSeaGLの常連参加者であるAndrew Puch氏とSamuel Henrique氏とともに、近くの「The Dough Zone」というレストランでカジュアルな夕食をとりました。ここは餃子や麺類を中心とした、西海岸で成長中のカジュアルなチェーン店です。 Samuel氏はAWSに勤務しており、長年Debianコミュニティに貢献してきた人物です。彼は最近、ブラジルからアイルランドを経由してシアトルに移り住んだばかりだったため、彼のような才能ある人材を雇えるのは、大企業にとって他国にとっての「損失」だね、と冗談を交わしました。 Andrew氏は、街を移動するうえで役立つ貴重なアドバイスをしてくれました。このカジュアルな夕食は、Debian Linuxのようなコミュニティプロジェクトで培われたスキルが、いまや世界最大級の企業や組織を支えるシステムを動かす力へと変わっていることを、改めて実感させてくれるものでした。 コミュニティと継続性 SeaGLの大きな強みの一つは、強固なコミュニティ意識です。週末を通じて、LinuxFest NorthwestやAll Things Openなど、LPIが関わる他のイベントでも顔を合わせた参加者たちと再会しました。SeaGLとベリンガムのオープンソースコミュニティの間で、ボランティアや運営者が重なっていることが、こうしたつながりを強め、参加を活発なものにしています。 SeaGLは活発なMatrixスペースを維持しており、カンファレンス終了後の数日間、多くの参加者が「今までで最高のSeaGLだった」「すでに来年が楽しみだ」といった感想を共有していました。Matrixには各登壇者専用の「ルーム」もあり、講演の前後や最中にディスカッションを行うことができます。私の知る限り、こうした仕組みを提供しているカンファレンスはSeaGLだけです。 追加のアクティビティとしては、地元グループ「Resist Tech Monopolies(RTM)」による“Disco-Tech”エリアがあり、プロプライエタリなツールから自由ソフトウェアの代替へ移行する手助けを行っていました。この名称はやや誤解を招くかもしれませんが、RTMは協同組合型クラウドや自由ソフトウェアの代替を支援しつつも、多くのユーザーがパブリッククラウドやビッグテック由来の技術から恩恵を受けていることも認識しています。RTMのブースには親切で知識豊富なスタッフが立ち、クローズドなソフトウェアに代わる自由・オープンソースの選択肢をまとめた有益なリストを提供していました。また、SeaGL創設者の一人であるAdam Monsen氏が主導する、非公式なGPG鍵署名ミーティングも行われ、個人的な信頼のウェブを構築する場となっていました。 SeaGL…また来年! SeaGLは大規模なイベントではありませんが、オープンソース、教育、コミュニティによる協働を心から大切にする人々を、毎年確実に結びつけています。LPIにとっては、学習者、ボランティア、教育者、そして長年の貢献者たちと、形式張らないオープンな環境で出会える貴重な場です。 個人的にも、自由ソフトウェアやLinuxに関心を持つすべての人を歓迎してくれるカンファレンスに参加できるのは、とても新鮮です。それこそがSeaGLを本当に特別な存在にしている理由の一つです。さらに、UWのキャンパスは私にとって特別な場所でもあります。娘はUWを卒業し、息子は現在、同大学で博士課程に在籍しています。 1980年代のバンド「A Flock of Seagulls」は、きっともうトレードマークの髪型を卒業しているでしょう。しかしSeaGLは違います。毎年、新旧問わず多くの“Flocker”たちを、変わらず両手を広げて迎え入れています――マレットヘアは不要です。 この週末は、実りある対話、強い存在感、そして太平洋岸北西部の自由ソフトウェアコミュニティと再びつながる貴重な機会をもたらしてくれました。

Taymourの歩み:Linuxとオープンソースで広がるITスキル

Linux Professional Institute(LPI)では、オープンソースを心から理解し、実践しているプロフェッショナルの声を紹介することを大切にしています。今回の「Share Your Voice」インタビューでは、1990年代後半にLinuxとの歩みを始め、以来、複数の大陸・業界・技術分野にわたって経験を積んできた、経験豊富なソリューションアーキテクトであるテイムール・エレリアン氏にお話を伺いました。データセンター運用のリーダーから、次世代のITプロフェッショナルの育成まで、彼のストーリーは、認定資格とコミュニティへの関与が、キャリアと文化の両方をどのように形作るのかを示しています。 IT分野でのキャリアはどのように始まったのですか? 私のキャリアは1990年代後半に始まり、技術エンジニアリングを中心としていました。この初期の時期に、システム、ネットワーク、運用に関する実践的な経験を積み、Linuxおよびオープンソース分野での専門性を早い段階で確立しました。2000年代初頭には、大規模なインフラ部門を率いる立場となり、チームの管理、システムの近代化、Tier IIIデータセンターの設計および運用の監督を担当しました。この経験を通じて、Linuxとオープンソース技術が、拡張性と信頼性に優れたITサービスを構築するうえで、いかに大きな可能性を持っているかを実感しました。 Linuxとオープンソースがキャリアの中心になったのはいつですか? 私は当初から、Linuxを単なる低コストな代替手段としてではなく、イノベーションを生み出すための堅牢なプラットフォームとして捉えていました。私のキャリアでは、中東およびアフリカ全域において、政府、銀行、大学向けに高い耐障害性を備えたインフラを設計してきましたが、その基盤には常にLinuxとオープンソースがありました。2002年には、LPIC-1認定を取得することで、この専門性を明確な形にしました。すでに10年以上のLinux実務経験がありましたが、この認定は、私のスキルを国際的に証明すると同時に、オープンソースコミュニティへの継続的なコミットメントを再確認する貴重な機会となりました。 認定資格は、あなたの成長にどのような影響を与えましたか? LPIC-1認定は、私にとって大きな転機でした。長年業界に身を置いていても、継続的な学習が不可欠であることを改めて認識させてくれたのです。その後、コンテナ、Kubernetes、OpenShiftといった分野の専門資格も取得しました。これらの認定資格は、単にソリューションを実装できるだけでなく、他の人々が自信を持ってオープンソース技術を導入できるよう指導する立場としての私を形作ってくれました。 現在の役割と注力している分野について教えてください。 現在、私は北米でソリューションアーキテクトとして働いています。主な役割は、オープンソースを中心に据えたマルチ・ハイブリッドクラウド戦略を企業が採用できるよう支援することです。若手アーキテクトのメンタリングを行い、プロダクトチームと連携して新機能の方向性を検討し、顧客に対してはプロトタイプの作成や戦略的ワークショップを通じた支援を行っています。技術的な深さ、リーダーシップ、そしてコミュニティづくりが融合した仕事だと感じています。 日常業務以外では、どのような形で貢献していますか? 私にとって、コミュニティとメンタリングは非常に重要です。教育セッションの支援、オープンソース導入戦略への貢献、そしてLinuxスキルを身につけようとする新しいプロフェッショナルたちの指導を行ってきました。私が大切にしているのは、単に技術を提供することではありません。人々がオープンソースを信頼し、その中で成長できる文化を育むことです。 モチベーションの源は何ですか? Linuxを大規模に導入したり、コンテナ技術を取り入れたり、オープン・ハイブリッドクラウドへ移行したりと、組織が変革を遂げる瞬間を見るたびに、この道を選んで本当に良かったと感じます。オープンソースは単なる技術スタックではありません。協調、透明性、そしてレジリエンス(回復力)という考え方そのものです。それが、私を日々突き動かしています。 余暇はどのように過ごしていますか? もちろん、私はテクノロジーが大好きです。しかし、テクノロジー以外では自然の中で過ごすことも好きで、ガーデニングはその楽しみを満たしてくれる活動の一つです。 私はガーデニングとテクノロジーを組み合わせており、センサーやコントローラーを使った自動水やりシステムを庭に導入しています。これにより、最適な水やりを実現できるだけでなく、旅行中でも植物の健康状態を監視できます(もちろん、これらはすべてオープンソースのソフトウェアとハードウェアを使っています)。それと、旅行が大好きだということも言っておきます! << このシリーズの前回の記事を読む | LPIの成功事例をさらに読む >>

WindowsからLinuxに乗り換える11以上の理由

これは2021年10月、ウィンドウズ11のリリース時に掲載された記事の更新版である。 2021年10月、Microsoftは6年以上ぶりとなるウィンドウズの新バージョンをリリースした。 このバージョンのOSには 11 という番号が付けられています。 それ以来、この疑問は何百万人もの人々の心をとらえている: Windows 10? Or Windows 11? じゃあ、代わりにGNU/Linuxを使えばいいじゃないか! Linuxが1991年に発売されて以来、ウィンドウズからLinuxに移行するチャンスは、コンピューター・ユーザーの興味をそそるものとなっている。コストに見合った価値を得、一貫したセキュアな環境を維持することを重視する企業では、Linuxは特に魅力的である(記事中の理由3+を参照)。 Linuxへのアップグレードのサイトでは、乗り換える理由や、希望するコンピューター・システムのセットアップ方法について、多くのリソースを提供している。 Windows 10のサポートとアップデートは2025年10月に終了するため、Linuxについて調べ、仕事や個人的なコンピューティングをこのリッチで堅牢なプラットフォームで行う準備をする時間がある。 この記事のオリジナル版では、Linuxに乗り換える11の理由を挙げている。 今回のアップデートには、関連する2つの新しい理由が含まれている。 1. 不必要で高価なハードウェアのアップグレードを避ける Windowsのハードウェア要件は、当時のデスクトップやラップトップシステムに常に負担をかけてきた。 Windows 11はこの忌まわしい遺産を受け継いでいる。 Windows 11を動かすには、多くの人が新しいコンピュータを必要とすると予想され、そのため、システム要件を測定するミニ産業が発展している。 特に古いグラフィックカードは、新しいWindowsに合わないことが判明するかもしれない。 多くのハードウェアのアップグレードを促進するかもしれない他の機能は、UEFI(Unified Extensible Firmware Interface)と呼ばれるWindowsファームウェアと、セキュアブート/トラステッド・ブート機能である。 Windows 11の機能とタイミングを取り上げた記事のひとつに、MicrosoftはなぜWindows 10より小幅な機能改善しかないメジャーアップグレードを推し進めるのか、という質問があった。 この記事によれば、コンピューターベンダーはより多くの利益を求め、Microsoftに新しいパソコンの販売を促進するよう働きかけたという。 これらの買い物はすべてCEOのボーナスを増やすかもしれないが、あなたが取引の当事者になる必要はない。 絶え間ないアップグレードは計画的陳腐化の悪質な例であり、環境保護論者や消費者擁護論者は少なくとも1950年代からこれを非難してきた。 Linuxは常に比較的スリムだが、開発者が慎重に機能を追加するにつれて、メモリとディスクの必要量は増えている。 多くのコンピューター・ユーザーは、古いハードウェアに固執し、Windowsの新バージョンへの価値の疑わしい「アップグレード」の代替手段として、長年にわたってLinuxを採用してきた。 1+. 有害廃棄物との闘い 古いパソコンがまだ使えるのに新しいパソコンを買うのは、財布に負担をかけるだけでなく、地球とそこに住む人々にとって不必要な浪費だ。 コンピューターには多くの危険な化学物質が含まれており、低所得層の労働者や発展途上国の住民に有毒廃棄物として押し付けられる。 特に、ウィンドウズ11への切り替えによって、4億8000万キログラム(自動車32万台分)の電子廃棄物が増えると見積もられている。 廃棄物の多くが子どもたちによって掃除され、彼らの生活環境を汚染していることを考慮してほしい。 必要以上に貢献したくないはずだ。 2. 望むプログラムを実行する権利を維持する ハードウェアやオペレーティング・システムのベンダーは、しばらくの間、TPM(Trusted Platform Module)技術を推奨してきた。 ウィンドウズ11は、TPMバージョン2.0を必須とし、それを組み込んだ最初のバージョンのオペレーティング・システムである。 TPMは、アプリケーションにその出所を証明する鍵で署名することを要求し、コンピュータのハードウェア、ファームウェア、オペレーティング・システムに鍵をチェックさせる。 多くのユーザーが、正規のアプリケーションを装ったマルウェアをダウンロードするように偽装されているため、TPMはこうしたユーザーを保護することができる。 しかしTPMは、OSベンダーにインストールされるものを完全にコントロールさせるものでもある。 また、政府がそのプロセスに首を突っ込み、政府が気に入らないアプリケーションをベンダーにブロックさせたらどうなるだろうか? 多くの人々にとって、アプリケーションのコントロールを大規模な機関に委ねることは、破壊的なプログラムを避けるための合理的なトレードオフかもしれない。 トレードオフに関するバランスの取れた評価については、ジョナサン・L・ジットレイン法学教授の著書『The Future of Internet and How to Stop It』をお勧めする。 一方、TPMに代わる方法としては、コンピューターの衛生管理をしっかり学び、証明書を自分でチェックし、マルウェアに感染しにくいフリーソフトにこだわることだ。 3. 一貫性の維持と管理 企業やその他の大組織は、大量のコンピューターを維持しなければならない。 全スタッフをWindowsの新バージョンに移行させるのは一大プロジェクトであり、おそらく断片的に行われるだろう。 [...]

LPI WDEを使いこなす: 教材、練習、シミュレーション

これまでの連載では、Linux Professional Institute (LPI)のWeb Development Essentials認定資格でカバーされている主要な技術について、フロントエンド側(HTML、CSS、JavaScriptなど)とバックエンド側(Node.jsやSQLなど)の両方について見てきました。 これまで見てきたように、HTMLを使ってウェブページをセマンティックに構造化し、CSSを使ってスタイルを適用して視覚的にアピールし、JavaScriptを使ってユーザーとのインタラクションを可能にしてダイナミズムを加え、Node.jsを使ってサーバーサイドのロジックを実装し、SQLを使ってリレーショナルデータベースに問い合わせることができる。 この時点で、「WDE試験の準備はどうすればいいのだろう? 参考資料はありますか? どうすれば試験のシミュレーションができますか? この記事では、こうした疑問やその他の質問に答えていく。 LPIのWDE認定試験の準備はどのようにすればよいですか? LPIのラーニング・マテリアルは、最初の参照ポイントです。 Linux Professional Institute (LPI) ラーニングポータルは、Linuxおよびオープンソース認定試験の準備と学習のための自然な出発点です。 学習教材の各セクションは、理論パートと解答付きの練習問題2セットという、教室での使用を意識した構成になっている。 これらの教材は継続的に拡大・更新されており、生徒と教師の双方にとって大いに役立つものである。 したがって、Web Development Essentials認定証の準備をするには、その認定証のために特別に書かれた学習教材から始めることをお勧めします。 最新版(試験コード 030-100)に更新された試験目標と、各目標について、その範囲と比重に応じて1つまたは複数のレッスンが用意されています。 各レッスンは1~2時間の正面授業で、理論的な部分と、習得した知識をすぐに実践で試すことができる実践的な部分が含まれている。 最後に、提案された問題に対する解答を読むことで、自分の練習が正しいかどうかをチェックすることができ、ほとんどの場合、さらなる研究のための追加的な洞察を得ることができる。 この教材が持つ大きな可能性は明らかだろう。プログラミングの世界に踏み込もうとする誰もが無料で利用できるリソースであるだけでなく、学習の終わりに資格取得の道そのものに踏み出そうとする人にとっても有効な参考資料となる。 他の学習教材と同様、Web Development Essentials 認定証に関連する教材は、教科書や実習に代わるものではなく、他の学習ソースを補完するものであることを忘れないでください。 練習は? 理論的な観点から主な試験トピックを学んだら、練習が必要です。 HTMLに関する最初の投稿で説明したように、あなたのコンピューターにすでにあるテキストエディタの一つを使ってウェブページを作ることから練習を始め、ここで提案したような少し高度なもの、あるいは本格的なIDE環境に移行することができる。 これらのプログラムのすべての機能を発見することは、プロとしてやりがいのある経験となる。 学習の過程でより効率的なプログラマーになることで、生産性を向上させることができます。 他にもお勧めの資料がある: Mozilla Developer Network:すべての開発者が利用できる正確な wiki。 初心者に理想的なツールであると同時に、すでに経験豊富でスキルアップを目指す人にとっても優れたツールである。 無料コードキャンプ:実際のプロジェクトを完成させることでプログラミングを学ぶことができる非営利コミュニティ。 学習プラットフォームでプログラミングを学んだり、出版物を読んだり、技術フォーラムで質問について議論したり、その他いろいろなことができる。 Web Development Essentials試験シミュレーション Web Development Essentials認定資格は、ウェブの世界での第一歩を踏み出すことを可能にします。 この試験は、他の必須資格と同様、60分間に40問出題される。 実際の試験をシミュレートするために、私はLPIパブリッシング・パートナーとして、「Web Development Essentials Practice Exams」というリソースを発行しました。 これは、試験を受ける前に自分の知識と技能を試すことができるシミュレーションの本である。 本書には4つの模擬試験とエントリー・テスト、合計170問と解答が収録されている。 各問題には、正しい答えと、その問題が言及している一般的な文脈を示す徹底したコメントが添えられている。 いくつかの問題には、テキストエディタで再現して正解を見つけることができるコードスニペットが含まれています。 さらに、このコードを修正してみることで、学習に役立つ別のシナリオを作ることができる。 始まりに過ぎない 試験に合格したからといって、プログラマーのエキスパートになれるわけではないことを忘れないでください。 試験は出発点であり、目的地ではない。 優れた開発者は、日々知識を磨き、時代についていかなければならない。 新しいライブラリ、フレームワーク、プログラミング言語を学ぶ必要があり、何よりも情熱を注ぐ必要がある。 この情熱は、プロとして自分を向上させるために日々育まれなければならない。 孔子が言ったように: 好きな仕事を選べば、一生働く必要はない。 << このシリーズの前回の記事を読む

LPI WDEを使いこなす #4: JavaScriptを使ったWebインタラクション

これまでの連載で、HTMLとCSSがフロントエンド・プログラミングの2大基本言語であることを見てきた。 HTMLはウェブサイトを構造化し、CSSはその視覚的な外観をカスタマイズすることができます。 このタイプのプログラミングを分析するために必要な最後の要素は、JavaScriptだ。 このクライアント側スクリプト言語は、ダイナミックでインタラクティブなウェブページを可能にする。 JavaScriptは実際のプログラミング言語である 当初はMochaと呼ばれ、後にLiveScriptと改名されたJavaScriptは、エンドユーザーとのダイナミックなインタラクションを作成するためにウェブ開発で使用されるプログラミング言語である。 この言語は当初Mochaと呼ばれ、LiveScriptと呼ばれる段階を経た。 ECMAScriptという気の利かない名前で標準化されたが、今では誰もがJavaScriptと呼んでいる。 JavaScriptがなければ、ウェブページはHTML、CSS、そして含まれる画像やその他のメディアだけで構成され、その結果、基礎となるロジックのない静的なページとなり、フォームを介したユーザーとのインタラクションも最低限になります。 JavaScriptは理想的な言語である: ユーザー/ブラウザーのインタラクションに基づいて、HTMLページ内の任意の要素を動的に変更する。 ユーザー・フォーム内の情報の検証 ユーザーが生成したイベントに反応して特定のアクションを起こす ダイナミック・コンテンツの追加と削除 JavaScriptは、ウェブページの背後にある実際のエンジンです。 ウェブサーバー上で実行されるPHPなどの他のスクリプト言語とは異なり、JavaScriptはブラウザで直接実行されるため、クライアントサイドの言語となります。 一般的なプログラミング言語と同様、JavaScriptでも変数の定義、条件文の作成、ループによる繰り返し処理、関数による他のコードの呼び出しが可能です。 Linux Professional Institute (LPI)のWeb Development Essentials認定資格は、このプログラミング言語を基礎から学び、中程度に複雑なオブジェクトや関数の作成まで、段階を追って指導します。 その機能を学ぶことで、JavaScriptがHTMLやCSSとどのように統合してウェブサイトを視覚化するのかを完全に理解することができます。 この道は、プログラミングの知識がない人がプロのプログラマーになるための素晴らしい方法だ。 DOM: CSSを介したJavaScriptからHTMLへの橋渡し DOMはDocument Object Modelの頭文字をとったもので、JavaScript言語とHTML/CSSをつなぐ架け橋だ。 DOMはW3C(ワールド・ワイド・ウェブ・コンソーシアム)の標準規格である。 JavaScriptのようなスクリプト言語が、基礎となるドキュメントにダイナミックにアクセスするためのインターフェイスを定義している。 DOMは文書を階層的なツリー構造で表し、使用するプラットフォームやブラウザに依存しない。 ウェブページ制作者には欠かせないツールだ。 ウェブページがブラウザに読み込まれると、ページのDOMが作成される。 例えば、図1はパラグラフと見出しだけの初歩的なウェブページのDOMを示している。 各ノードはドキュメントの一部を表すオブジェクトとみなされる。 [caption id="attachment_19710" align="aligncenter" width="1024"] 図1:DOMは、ウェブページのオブジェクトとその関係を記述する規格である。[/caption] JavaScriptとDOMを通じて、以下のことが可能である: HTML要素の内容を変更する HTML要素の属性値を変更する HTML要素の追加と削除 CSSカスタマイズの適用 ユーザーによるウェブページへのアクションを含むイベントを処理する。 DOMはHTML、CSS、JavaScript間の共通リンクとして機能し、ウェブ開発者がHTMLページ内の各要素のグラフィカル・プレゼンテーションやコンテンツさえも動的に更新することを可能にする。 HTML、CSS、JavaScript、DOMはすべてW3C標準であることに注意することが重要だ。 しかし、混同してはいけない: DOMはJavaScriptの一部ではなく、JavaScriptはDOMにアクセスするための手段なのだ。 JavaはJavaScriptではない! JavaScriptに加え、Javaも聞いたことがあるだろう。 混同しないように注意してください: JavaはJavaScriptの略称ではない! Java」という言葉を共有しているにもかかわらず、この2つの言語は無関係である。 (この名前にまつわる歴史はこうだ: 両言語はサン・マイクロシステムズというコンピューター会社で開発され、同じような目標を目指していたため、経営陣はJavaとJavaScriptに似た名前をつけることにした) これまで見てきたように、JavaScriptはオブジェクトベースのスクリプト言語である。 ソースコードは解釈され、ブラウザによって一行ずつ実行される。 一方、Javaはオブジェクト指向のプログラミング言語である。 このコンパイル言語では、ソースコードは実際に実行される前に、より効率的な形式のコードに変換される。 JavaScriptのプログラムは、他のインタプリタ言語と同様、Javaで書かれた同等のプログラムよりも遅い。 しかし、JavaScriptの方がより柔軟で、修正も容易である。 最後に、JavaScriptはブラウザでウェブページやアプリケーションに使われるクライアントサイドのプログラミング言語であることを忘れてはならない。 [...]

LPI WDEを使いこなす #2: HTMLとウェブの基本

インターネットを閲覧するとき、私たちは1つのウェブページから別のウェブページへと移動し、無数の種類の情報を引き出したり、さまざまなサービスを利用したりする。それは、まるで巨大なバーチャル図書館を閲覧しているようなもので、各書籍はネットワーク上の他のページと相互接続されたウェブページに例えることができる。 ウェブページとは、エンドユーザーがアクセスできる様々な情報を含むデジタル文書である。しかし、どのようにしてこのような文書を作ることができるのだろうか? HTMLの重要性 すべてのウェブページのベースにはHTML言語がある。80年代後半に生まれたこの言語は、HyperText Markup Language(ハイパーテキスト・マークアップ・ランゲージ)の頭文字をとったものだ。HTMLは、ウェブページ内にどの要素を表示し、どのように配置するかを意味的に指定できる言語です。この言語を通して、私たちは以下のようなテキストを使ったリッチなユーザー体験を作り出すことができる: テキストの書式設定(タイトルや段落の作成、単語やテキストの一部を太字や斜体にする、など) 番号付きリストと番号なしリストの作成 リンクの挿入 埋め込みコンテンツ(画像、音声、動画)の挿入 ユーザーが記入して送信できるフォームを作成する テーブルの作成 各ウェブページは明確に定義された構造に従っており、それを構成する個々の部分には特定の意味があります: タイトル、段落、リスト、表、太字や強調の言葉は、適切なタグやラベル、つまりタグの内容をどのようにフォーマットして表示するかをブラウザーに指示するHTMLマーカーによって指定されます。 簡単な例です: <p> Hello LPI! </p> このようにして、ブラウザに表示される段落を定義する。段落要素の作成をブラウザに指示する対応するタグは "p "で、この場合、"<p>"が開始タグ、"</p>"が終了タグです。タグはウェブサイトの訪問者には見えませんが、開始タグと終了タグの間に含まれる「Hello LPI! ご心配なく!最初は、HTMLで書くことは少し奇妙に思えるかもしれません。それでも、この言語に慣れてくると、簡単な文章を書いているように自然に感じられるようになります。何事もそうですが、とにかく練習あるのみです! Linux Professional Institute (LPI)のWeb Development Essentials認定資格の学習では、ドキュメント内の重要な要素を定義する主なタグ、その意味、およびそのタグが参照する要素の詳細を指定するのに役立つ主な属性を理解することで、Webページを作成し、フォーマットする方法を学びます。 さて、何から始めようか? HTML言語を学ぶことは、しばしばウェブ・プログラミングの世界への第一歩と考えられている。HTMLページを書くのに複雑なツールは必要なく、古典的なメモ帳のような一般的なテキストエディタ(FOSSでありたいならvimやKate)があればいい。 以下のようなツールもあります: Visual Studio Code: デバッグ、コード補完、バージョン管理などの追加機能を備えたマイクロソフトのシンプルなソースコードエディタ。自由にダウンロードでき、クロスプラットフォームで、柔軟性があり、ニーズに合わせて機能を拡張できる多くの拡張機能がある。初心者に最適。 Komodo Edit: フリーでオープンソースの、非常にパワフルでカスタマイズ性の高いテキストエディタ。自動補完やインデントなどの古典的なコードエディター機能を備えていますが、残念ながらデバッグはサポートしていません。 Sublime Text: マルチプラットフォーム、マルチ言語のソースコードエディタ。多数のプラグインを備えているため、汎用性が高く、あらゆるニーズに対応できる。期間無制限で無料で使用できますが、無料版では頻繁にアラートメッセージが表示され、プロ版への切り替えを促します。 こうすることで、主要なタグとその属性に慣れ、知識をできるだけ定着させることができます。HTML言語に慣れたら、今述べたようなテキストエディタを使って、その機能を探求することができます。このようなエディタの機能を発見することは、あなたの学習の道にとって非常に興味深いものになるでしょう。 マイクロソフトのVisual StudioやアップルのXcodeを聞いたことがあるでしょう。繰り返しになるが、FOSSの代替ツールはたくさんある: Eclipse、MonoDevelop、Apache NetBeansなどだ。 また、社会に出れば間違いなく出会うことになる、より洗練された完全な開発環境もある。これらは統合デスクトップ環境(IDE)と呼ばれ、開発者の生活を楽にし、1つのプログラムでサポートされながら、より効率的に作業できるように設計されている。統合開発環境は、プログラマーにテキストエディタと、ソフトウェア開発プロセス全体をカバーする多かれ少なかれ洗練されたツールを提供する: コードの作成と自動化、インテリジェントな補完、コンパイル、テスト、およびデバッグは、生産性を向上させ、より効率的なプログラマになることを可能にするIDEが提供する機能の一部です。 図1に示すように、コード・エディタの機能はIDEの機能のサブセットです。 次のステップ 前回の記事で説明したように、HTMLはCSSやJavaScriptと並んでフロントエンドのプログラミング言語であり、ウェブサイトのエンドユーザーから見える部分を作成し、クライアントサイドで処理するためです。ウェブページの構造と基本的な要素が定義されたら、グラフィックの観点からカスタマイズする必要があります。これを実現するのがCSS言語です。CSSは美的観点からウェブページをデザインし、表示する役割を担っており、HTMLを補完するものです。詳しくは次回のエピソードで。 << このシリーズの前回の記事を読む

LPI WDEを使いこなす #1: 驚異的なウェブサイト制作への道

ソーシャルメディア、オンライン情報源、あらゆる種類のアプリケーションが充実した現代社会において、ウェブサイトはあらゆる組織にとって基本的な要件である。ウェブサイトによって、企業自身は、その事業内容を詳しく説明し、サービスを詳しく説明し、顧客を見つけ、維持し、オンラインで販売し、競争力を高めることができる。 ウェブは企業にとって好ましいコミュニケーション手段のひとつであると同時に、一般ユーザーにとっては、最も多様なコンテンツを見つけ、アクセスし、同時にニーズを満たすための基本的なツールである。 ウェブに関する絶え間ない技術革新は、より充実した機能を備え、視覚的に魅力的なウェブサイトの作成を可能にしている。しかし、ウェブサイトを作成する必要がある場合、何から始めればいいのでしょうか? Linux Professional Institute (LPI)は、Webサイトを作成するための基本的なツールやアイデアを段階的に学ぶことができるWeb Development Essentialsという新しい認定資格をデザインしました。この投稿では、資格取得までの道のりをできるだけスムーズにするために、試験の目的を通して一緒に旅をしましょう! 開発者のための資格... ウェブデベロッパーの目標は、プロジェクトの仕様に準拠し、可能な限り最高のユーザー体験を提供する機能的なウェブサイトやウェブアプリケーションを作成することです。 ウェブデベロッパーの資格取得までの道のりでは、インターネットを構成するコンクリート、レンガ、鋼鉄と考えられるものへの対処法を学びます。シンプルで魅力的なウェブサイトを作成するための基本を理解し、学ぶとともに、プロとして成長し続けるためのさらなる洞察と深い知識を身につけます。 この資格でカバーされる主な技術は以下の通りです: HTML CSS JavaScript Node.js Databases HTMLとCSS HTML(HyperText Markup Language)の頭文字をとったもので、ウェブサイトの構造とコンテンツを定義するために使用されるため、この種の認定パスの出発点としては自然なものである。HTMLはカスケーディング・スタイル・シート(CSS)と密接に関連しており、ウェブページにスタイルを適用して視覚的に魅力的なものにするために使用される。 JavaScript、Node.js、およびデータベース JavaScriptは、ウェブページをダイナミックにし、ユーザーがウェブページと対話できるようにするスクリプト言語である。JavaScriptはもともと訪問者のブラウザで実行されるように設計されているが、Node.jsはサーバ上でJavaScriptを実行するランタイム環境である。Node.jsは、特にリレーショナル・データベースや非リレーショナル・データベースとの統合を扱うことができる。 この認定パスは、Web開発者、つまりWebサイトやWebアプリケーションの設計、開発、管理を目的としたプログラミング言語のエキスパートになりたい人に最適です。 しかし、それだけではない! この資格は、ウェブサイトを作成するチームを編成するために不可欠な基本的な技術知識を身につけることができるので、ビジネスのより経営的な側面を扱う場合にも役立ちます(私自身はプログラマーではありません!)。さらに、ウェブ環境における知識とスキルを向上させることができます。このようなバックグラウンドは、仕様や採用技術の定義からプロジェクト自体の構築や展開に至るまで、あらゆるプロジェクトのライフサイクルにおいて非常に役立ちます。 ITマネージャーやプロジェクトマネージャーは、プロジェクトの各フェーズにおいて技術チームを適切にサポートし、プロジェクト実現のための最適なタイミングや最適な戦略を定義できるような知識ベースを持っている必要があります。また、そのような知識を持っているマネージャーは、プロジェクトの開発中であっても、プロジェクトのタイミングや仕様を再定義し、発生する可能性のある問題を解決するための最適なソリューションを提案する傾向が自然と強くなります。 フロントエンドとバックエンド、そしてフルスタック開発 ICTの仕事の機会は常に増え続けており、専門職の支払いもますます多くなっている。Webプログラマーとしての仕事を探したことがある人なら、フロントエンドプログラマー、バックエンドプログラマー、フルスタックプログラマーといった言葉を目にしたことがあるはずです。 混乱しないでください。これらのカテゴリのいずれかに属するプロフェッショナルは、いくつかの基本的な知識を持っています。 フロントエンド・プログラミングという用語は、エンドユーザーから見えるウェブサイトの一部を作成し、クライアント側のブラウザで処理することを指します。そのため、フロントエンド・プログラマーは、HTML、CSS、JavaScriptの各言語を熟知し、グラフィカルな視点とコンテンツの視点の両方からウェブサイトをデザインし、エンドユーザーがシンプルかつ直感的な方法でウェブサイトを操作できるようにする必要があります。 フロントエンド開発者のための追加知識には、React、Angular、VueJS、jQuery、Bootstrapなどの特定のフレームワークやライブラリが含まれます。Web Development Essentials認定資格には直接含まれませんが、フロントエンド・プログラミングに特化したい人にとっては、それらを習得するための基礎となります。 一方、バックエンド・プログラミングは、サーバー・サイド、つまりエンドユーザーに直接見えないすべての側面を指します。このタイプのプログラマーは舞台裏で働き、アプリケーションの機能ロジックを作成します。データベースとの統合、セキュリティ、データ保護は、バックエンド開発者が考慮しなければならない基本的な要素のほんの一部に過ぎません。 前述のNode.jsに加えて、バックエンドプログラマが知っておくべきプログラミング言語には、PHP、C#、Java、Pythonなどがあります。これらの言語はWeb Development Essentials認定資格ではカバーされていませんが、バックエンド開発者としてのスキルアップに役立つ知識です。 フルスタック開発者は、フロントエンドとバックエンドの両方のプログラミングの知識を持っています!このタイプのプロフェッショナルは、サーバーサイドとクライアントサイドの両方に関する広範な技術トレーニングを受けており、完全なウェブサイトやウェブアプリケーションを設計、開発、配布することができます。 あなたの立場は? つまり、フロントエンド・プログラミングに特化するか、バックエンド・プログラミングに特化するかということです。どの道に進むにしても、プロジェクトを成功させるためには、コインの両面を知ることが不可欠であることを覚えておいてください。したがって、フロントエンド開発者は、データベースとのインタラクションを含め、アプリケーションの機能ロジックにも精通していなければなりません。同様に、バックエンド開発者は、構造的、視覚的な観点と、ユーザーとのインタラクションの観点の両方から、ウェブページを作成するための基本を知っていなければなりません。フロントエンドとバックエンドのプログラマーは、実際、すべてのプロジェクトのフェーズで互いに協力し合わなければなりません。基本的なプログラミングの側面のひとつに知識のギャップがあると、協力が難しくなり、プロジェクトの成功が損なわれる可能性があります。 フロントエンドとバックエンドの技術を同等に操ることができれば、フルスタックプログラマーとして働くことができます。前述の2つの役割の技術的スキルを持つことで、ウェブサイトやウェブアプリケーションを実現するためのプロジェクトのあらゆる側面を、簡単かつ自然に担当することができるようになります。 今述べた知識の種類を図1にまとめました。これは、フルスタックデベロッパーが、フロントエンドとバックエンドの両方の技術的知識を取り入れた完全なプロフェッショナルであることを示しています。 [caption id="attachment_18725" align="aligncenter" width="1024"] 図1:フロントエンド、バックエンド、フルスタック開発者のナレッジグラフ[/caption] このシリーズの今後の記事では、前述のフロントエンドとバックエンドの各言語とツールについて簡単に説明し、それらの機能の概要を提供し、基本的なテキストエディタからインタラクティブなウェブサイトを作成する方法を紹介します。