お役立ちコンテンツ | フリーランスエンジニアの案件・求人なら【テクフリ】

お役立ちコンテンツ

フリーランスの抱える税金や確定申告、社会保険や経費に関するお悩みを解決いたします。そもそもフリーランスになるためにはどうすればよいのか、現在正社員で働いているが、フリーランスになりたいと考えている方々にも必見です。役立つコンテンツ満載でお届けいたします。

該当コンテンツ数3件中1~3件を表示
Perl

Perl(パール)とは?プログラミング言語の歴史

Perl(パール)の概要 今回はプログラミング言語の一つPerl(パール)の歴史について見ていきたいと思います。 が、「そもそもPerl(パール)って、どんなプログラミング言語なの?」という方もいらっしゃるかと思いますので、Perl(パール)の歴史の前に、Perl(パール)というプログラミング言語のことを知ってもらえるよう、プログラミング言語としての概要を簡単にご紹介いたします。 プログラミング言語を分類ごとに整理したときの特性を強調して、〇〇言語(〇〇に特性が入る)と表現することがありますが、Perl(パール)は“汎用スクリプト言語”と表現することが多いです。 汎用の意味は普遍性があるだとか、広く使えるという意味であることはみなさんご存知かと思いますが、“スクリプト言語”という言葉は非ITエンジニアの方にとっては「なんだそれ」だと思います。 “スクリプト言語”とは「ソースコードの記述が比較的簡単なプログラミング言語」のことを指しますが、Perl(パール)の場合はコンパイル(書いたソースコードを機械語に翻訳する作業)が不要でソースコードを書くとすぐに利用できる、という点が特に重要なポイントです。 テクフリでフリーランス案件を探してみる Perl(パール)プログラミング言語としての特性 もう少し現場的なPerl(パール)のプログラミング言語としての特性についても見ておきましょう。 Web系の方だと、言語をサーバ上で動くプログラミング言語のことを“サーバーサイドの言語”、Webブラウザ上で動くプログラミング言語のことを“フロントエンドの言語”と表現することが多いですが、この分類だと、Perl(パール)はサーバーサイドの言語になります。 「この商品をカートに入れる」をクリックすると「カートに追加されました」とポップアップが出るような“動きのあるWebページ”のことを動的ページと呼びますが、あるタイプの動的ページの実現方法の一つとしてCGI(Common Gateway Interface)と呼ばれる仕組みがあります。 このCGIは、どのように表示するかの処理をサーバ側で行ったうえで、処理結果をサーバからWebブラウザに転送して、表示してもらうというものです。 そして、サーバ上で動く。どのように表示するかの処理を行うプログラムにPerl(パール)が使われている、という構図になります。 ですので、ベテランプログラマーを中心にPerl(パール)案件といえばCGIのイメージを持っている方も多いと感じます。 Perl(パール)の歴史《黎明期》 Perl(パール)のことがなんとなくわかったところで、Perl(パール)の歴史を紐解いていきましょう。 Perl(パール)が誕生したのは1987年で、開発者は「怠惰(Laziness)」「短気(Impatience)」「傲慢(Hubris)」をプログラマーの三大美徳と提唱したことで有名なラリー・ウォールです。 Perl(パール)開発当時は、いまほどプログラミング言語の種類も多くなく、ちょっとしたサーバ上のテキスト処理をするにしても、コンパイルが必要なC言語か、あるいはUNIXコマンドをプログラミング言語のように扱うシェルでプログラミングを作成する、というのが一般的でした。 ですが、コンパイル言語はコンパイルの手間がかかりますし、シェルはドキュメント処理なども一応は可能でしたが、中身としてはいわゆるUNIXコマンドです。 そもそも論として、テキスト処理のために作られたものではなく、処理は早くないし、複雑な処理に対応するのは大変、という問題がありました。 そこで、コンパイルが不要でテキスト処理に強い言語として編み出されたのが、Perl(パール)となります。 ドキュメントが充実した言語、Perl(パール) Perl(パール)が広く世間に知られるようになったのは、時代のニーズに適合したプログラム言語であると同時にドキュメントの充実にも触れておくべきでしょう。 Perl(パール)が世間に公開されたのは開発から4年後の1991年ですが、この年、表紙にラクダのイラストがあることから“ラクダ本”という通称で知られる、オライリーメディア社の『プログラミングPerl』が発売されています。 なお、『プログラミングPerl』の執筆者には、Perl(パール)開発者のラリー・ウォール自身も参加しています。 ちなみに、現在もラリー・ウォールはPerl(パール)プロジェクトのBDFL(Benevolent Dictator For Life、優しい終身の独裁者。内部で対立があった際、最終的な決定権を持つ人物に対する称号)として、重要な役割を担っています。 Perl(パール)の歴史《成長期》 黎明期で触れたように、時代のニーズにあったプログラム言語として人気を集めたPerl(パール)ですが、よりPerl(パール)がメジャーな言語になったのは、言語の概要でも紹介した通り、CGIにPerl(パール)を使うのがスタンダードになったことが挙げられます。 そもそも、なぜPerl(パール)でCGIを使うのがスタンダードになったかというと、スクリプト言語で取り扱いが容易である、という点、CGIで動的ページを作るというのは、結局のところHTMLの生成、つまりテキスト処理であった、という点、そして、OSのサポート状態です。 今でもサーバ用OSといえばRed HatのようなLinux系OSが多いですが、90年代というのはWindowsがやっと登場したばかりで、サーバ用OSといえば、UNIXやLinuxが当たり前という時代でしたが、すでにその頃にはUNIXやLinuxには標準でPerl(パール)がインストールされていました。 わざわざPerl(パール)以外のプログラミング言語を利用しようと思う人も少なかったため、Perl(パール)でCGIを書くのが当たり前になったわけです。 Perl(パール)の弱点 こうして、一時代を築いたPerl(パール)ですが、やはり完ぺきな言語ではなく、いくつか欠点があり、その欠点に対応できる新たなプログラミング言語の誕生・発展も発生しています。 例えば、「やり方は一つではない」という有名なPerl(パール)のモットーは、機能Aを持ったプログラムのソースコードの書き方はいくつもあることを意味しています。 人によって書き方が違うと、あとあと確認するのが面倒ですし、デバックの際、解析するのも大変です。 生産性・保守性という意味ではデメリットでしかありません。 結果、「やり方はいつも同じ」になることを目指したPythonが注目され、人気を集めるようになったのです。 あるいは、Perl(パール)はオブジェクト指向言語でもあるものの、オブジェクト指向に対応するようになったのは1994年のバージョン5.0からと、いわば後付けであり、一部のプログラマーから、オブジェクト指向により最適なプログラミング言語を求める声も出てきました。 その声を具体化したのが日本発の国際プログラミング言語である、Rubyです。 RubyはPerl・Pythonと異なり、最初からオブジェクト指向言語として設計されたプログラミング言語です。 そして、CGIというやり方自体、どうだろうか、という考え方も出てきました。 CGIにおいてPerl(パール)で書かれた実行ソースコードはHTML本体に書かれているのではありません。 処理の度に、いちいち呼び出し処理が必要になります。 その手間をなくすために、最初からHTML内に記載するタイプの、より動的ページ作成に向いたプログラム言語があると良いのでは?というアイデアから生まれたのがPHPです。 Perl(パール)の歴史《現在》 Perl(パール)の欠点を解消するための新たなプログラム言語が登場し、それらが活躍していることはすでに触れた通りです。 では、それらに取って代わられてPerl(パール)は衰退・消滅している流れかというと、そういうわけではありません。 現在も開発が進められていますし、Perl(パール)には新しい言語より歴史が長い分、ドキュメントの充実、ノウハウの蓄積がある、という強みがあります。 すでにPerl(パール)で書かれたシステムを保有している企業においては、それらとの親和性を考えて、新規システムにおいてもPerl(パール)を選択するというのは普通のことです。 今後もライバル言語と比較検討されながら、使われ続けると思われます。 まとめ:様々なプログラミング言語が互いに影響を与えながら進化 今回はPerl(パール)の歴史を見ていきました。 Perl(パール)の歴史を知ることで、他のサーバーサイド言語との関係、それぞれの特徴も見えてきたかと思います。 このように、それぞれのプログラミング言語は、互いに影響を与えながら進化しているのです。 歴史を知ることで、プログラミング言語の特性がわかり、システム開発の際、どの言語を選択するべきかの判断材料にもなるので、知識として持っておくことをおススメします。 テクフリでフリーランス案件を探してみる
Perl

Perlの案件単価を徹底調査! フリーランスデビューに必要なこと

フリーランスになろうと考えているPerlエンジニアは、会社勤めをしているいまのうちにPHPとJavaの言語を取得しておいてはいかがでしょうか。 フリーランスは理想の働き方です。自分で仕事を選べますし、働く時間を自由に設定できますし、自分の労働が100%そのまま収入になります。 しかしフリーランスには唯一、仕事の枯渇という心配事があります。 3つの言語を持っていれば、仕事探しに困らないでしょう。3言語化の壁は思っているほど高くはなく、ベテランエンジニアは「2つの言語を覚えたら、3つ目の取得はそれほど苦労しない」といいます。 「Perl一本」でフリーランスになれないわけではありませんが、Perlエンジニアが独立するとき、慎重になったほうがよい理由があるのです。 Perl案件を探す Perlの特徴とは Perlの特徴を、Perlの歴史を追いながら解説していきます。 Perlはアメリカのウエストコースト社のシステム管理者、ラリー・ウォール氏が開発しました。ウォール氏はOS「UNIX」でシステム開発をしていたとき、使っていた言語に使いにくさを感じました。それで新しい言語をつくろうと考えたのです。 ウォール氏は1987年にPerlを公開しました。すると世界中のプログラマーから改善案や質問が寄せられ、ウォール氏はそれを参考にしてPerlを改良していきました。 PerlはウィンドウズやMacのOSに移植されるようになり、1990年代に入るとCGIプログラムにも使われるようになりました。 CGIはコモン・ゲートウェイ・インターフェースといい、Webサーバー上でユーザープログラムを動かす仕組みのことです。 Perlはインターネットの浸透とともに普及していったのです。 Perlには次のような特徴があります。 ・安定している ・テキスト処理に優れている ・後方互換性に優れている ・記述が容易 ・コンパイル作業が不要 ・それゆえに速い Perlの強みとニーズを詳しくみていきましょう。 Perlの強みとニーズ Perlはスクリプト言語なので、コンパイル(翻訳)作業が要りません。Perlでソースコードを書くと次々マシン語に変換していくので、短い記述で「サクサク」処理していくことができます。 C言語のようなコンパイル言語の場合、事前にソースコードをコンパイルしてマシン語に変換しておかなければなりませんが、Perlではその工程が要らないのですぐに作業に取りかかることができます。 またPerlは高速処理が得意です。数百万行のテキストファイルでも、エンジニアがストレスを感じることなく処理していきます。 さらにベテランのPerlエンジニアは「Perlは他のスクリプト言語より安定している」と評価します。その評価は、UNIXとLinuxに標準でインストールされていることからも正しいことがわかります。もちろんウィンドウズやMacにPerlをインストールすることも容易です。 そしてPerlは、新しい製品が出ても古い製品を使うことができる後方互換性に優れています。これならエンジニアは安心してPerlを使い続けることができます。 Perlの後方互換性の高さは、コンピュータ業界の流行り廃りに左右されたくないビジネスシーンで高い支持を勝ち取ることに成功しました。 Perlのライブラリの多さを重視するPerlエンジニアは少なくありません。特にCPANというライブラリは無料で公開されていて、さまざまな機能が掲載されています。CPANを使いたいからPerlスキルを取得するエンジニアもいるくらいです。 作業性ではテストのしやすさやモジュールのパッケージングのしやすさが指摘されています。そして、ソースコードの整理のしやすさや書きやすさは、初学者に歓迎されています。 ベテランから初級者まで受け入れる懐の深さがPerlの人気の秘密です。 Perlで気を付けること フリーランスのPerlエンジニアや、これからプログラミングを学ぶ人が注意しなければならないことは、Perlに勢いが感じられないことです。 JavaScript、Pythonというニューカマーの勢力が増した分、相対的にPerlの勢いが奪われた形です。 プログラミング言語の世界シェアを計測しているオランダのTIOBE Softwareの2018年12月のランキングでは、Perlの世界シェアは1.013%で18位でした。前年同月の14位から4つもランクダウンさせています(*)。 *:https://www.tiobe.com/tiobe-index/ トップ3は1位Java、2位C言語、3位Pythonでした。JavaScriptは7位でした。 こうした状況を考えると、現在Perlのみでフリーランスになっているエンジニアは、Perlの仕事(案件)を主軸としつつも、2言語目や3言語目の取得を検討し始めたほうがいいかもしれません。 Perlエンジニアの募集要項のトレンドとは Perlエンジニアは、どのようなポジションで働くことが求められているのでしょうか。案件票の募集要項などを参考に、Perlエンジニアの働き方のトレンドを探っていきます。 上流から下流までまんべんなく携わることができる 自社クラウドサービスを提供している企業が、上流から下流までの業務にまんべんなく携わることができるポジションのPerlエンジニアを募集しています。 具体的な業務は次のとおりです。 ・サーバーサイドでの開発 ・API(アプリケーション・プログラミング・インターフェース、ソフトウェアの機能を共有する仕組み)の作成 ・管理画面の開発 ・パフォーマンス測定、改善 ・監視システムの更新 そしてこの企業は、新しく採用するPerlエンジニアに、クライアントとの打ち合わせも任せたいと考えています。 Perlエンジニアは開発の総責任者のポジションを得ることもできるのです。 現在のポジションをどう維持するか 「Perlで気を付けること」の章で、Perlの世界シェアが落ちていることを紹介しました。落ちているとはいえ、トップ20には入っているのでPerlエンジニアの仕事がすぐになくなることは考えられませんが、「万が一の事態」に備えておいたほうがいいでしょう。 Perlエンジニアとしてのポジションを維持・向上させるためには「市場価値が高いエンジニア」になることです。 その方策として最も手っ取り早いのは2言語目、3言語目を取得することです。 また大規模プロジェクトの開発経験や、大規模プロジェクトを統括する仕事の経験は、フリーランスになったときに貴重な武器になるでしょう。 別の言語の習得は後からでも可能ですが、「経験」はチャンスに巡りあわないと積むことができません。 会社員エンジニアのうちに、企画、要件定義、各種設計、コーディング、テスト、リリース、改善・修正、予算管理、スタッフ管理といった一連の工程・業務を押さえておきたいものです。 こうした経験を積んでおけば、転職するときにワンランク上の案件に挑戦できます。 Perlエンジニアが活躍している業界、分野 Perlエンジニアは、Webアプリ開発、システム管理、テキスト処理などの業界・分野で活躍することができます。 Webアプリでは、SNSの開発でPerlが使われることがあります。SNSといえばフェイスブックやツイッターやインスタグラムなど「世界王者」が鎮座する業界ですが、最近は社内限定のSNSを構築する企業も増えています。 情報漏洩のリスクを考えると、コストをかけてでもクローズド環境のSNSのほうが「安上がり」だからです。 ただPerl案件のうち、他言語では対応できない案件は少なくなってきています。特にこれから成長が期待されるAndroid向けアプリやiOS向けアプリの開発では、他言語のほうが明らかに有利です。 Perlのフレームワーク事情 Perlによる開発でよく使われているフレームワークを紹介します。 Mojoliciosとは MojoliciosはWebアプリ開発用のフレームワークです。Mojoliciosの特徴は、シンプルなWebアプリづくりにも、複雑な構造のWebアプリづくりにも対応しているところです。 そのため経験が浅いプログラマーから、ベテランPerlエンジニアまで幅広く使うことができます。スキルやポジションが上がっても継続して使い続けることができるので、長期的にみて「学習コスパ」がよいフレームワークといえそうです。 Mojoliciosのテストフレームワークは使いやすいと評判です。変更への対応に柔軟性があるので、クライアントからの変更依頼をストレスなく実施できます。 さらに標準モジュールに依存しないのでインストールがスムーズだったり、短い行数で済んだりといった操作性のよさも評価されています。 サポート体制が充実しているのでメンテナンスが楽です。 TripletaiLとは TripletaiLは「継承が要らない」「依存モジュールが少ない」という特性から、使いやすいという評価が定着しています。基本機能だけで開発できる点も評価されています。 名称の「トリプル」は「安全性、生産性、保守性の3拍子そろっている」という意味です。安全対策として、HTMLのなかに文字列を展開するときにテンプレート機能で記号処理を行っています。 Dancerとは Dancerは簡素なコーディングをするときに便利なフレームワークです。最小限の構文で開発できるよう、モジュールへの依存性を少なくしています。 またカスタマイズが簡単にできる点もPerlエンジニアたちから評価されています。 そして構文がシンプルなため、メンテナンスや修正に時間がかかりません。 トレーニング用のプログラミングがあるので、習得ストレスが少ない特長があります。 Amon2とは Amon2も少ないコードで記述することを目指したフレームワークです。PSGI/Plackがベースになっています。シンプルな構造ですが、拡張性に優れているのでさまざまなプロジェクトに対応できます。そのためAmon2は大規模システムの構築でも使われます。 Catalystとは CatalystはMVCアーキテクチャーを持つフレームワークです。 MVCはモデル、ビュー、コントローラーの頭文字を取っていて、この3要素を別々に設計する手法のことです。 MVCは作業を分業することができるので、大規模Webアプリを製作するときなどに適しています。 ちなみにモデル(M)はアプリの根幹をなす部分、ビュー(V)はアプリのユーザーインターフェースを定義する部分、コントローラー(C)はモデルとビューの間を取り持つ部分のことです。 Perl案件単価事情 フリーランスのPerlエンジニアにはどのような業務が発注されるのでしょうか。案件の単価などを紹介します。 DSPサービスのサーバーサイドからフロントエンドまでの開発全般、月70万円 この会社はDSPサービスを提供しています。DSPはデマンド・サイド・プラットフォームの略で、広告主側のプラットフォームのことです。広告主が広告を入札するときに使います。 この案件の業務内容は、サーバーサイドからフロントエンドまでの開発全般です。かなり幅が広い仕事になり、報酬は月70万円です。 具体的な仕事内容は次のとおりです。 ・ユーザーが触れる部分の表現や仕組みづくり ・業務効率向上させる管理UIの開発 ・プラットフォームと連携するAPI開発 ECサイトの機能改修など、ポジションはSE、月70万円以上 この案件ではPerlエンジニアにシステムエンジニアに就くことを求めています。業務内容は小売業向けのECサイトの機能改修と、CRMシステムとデータを連携させる作業です。詳細設計から担当できます。 報酬は月70万円以上と特別高いわけではありませんが、EC(電子商取引)に関わることができるのは、フリーランスにとってよい経験になるでしょう。 EC業界は楽天やヤフオク!といった老舗から、メルカリやZOZOタウンなどの新興勢力まで群雄割拠の様相を呈しています。そしてリアル店舗で拡大してきたセブン-イレブンやユニクロなどもECに進出しています。 つまりフリーランスのPerlエンジニアがEC案件を経験しておけば、仕事の幅が確実に広がります。 この案件を発注している企業はフリーランス・エンジニアに向けて「当社はインフラに特化したサービスを提供しているので、サーバーやネットワークの知識を吸収できます」というメッセージを送っています。 経験値を高めたいフリーランスにうってつけの案件といえるでしょう。 Perl案件の具体的な業務 フリーランスのPerlエンジニアたちは、具体的にどのように業務を進めているのでしょうか。 仕事(案件)を獲得してしまえば、「やること」は会社員エンジニアでもフリーランス・エンジニアでも同じです。 しかしフリーランス・エンジニアは、「やることをやって終わり」というわけにはいきません。 なぜなら、フリーランスにとってアプリやシステムを完成させることの次に重要な仕事は、次の仕事を確保することだからです。フリーランス・エンジニアが仕事を失うと、一瞬で無収入になるからです。 次の仕事は、いまの仕事をしながら探しましょう。 フリーランスに仕事を出すクライアントは原則、困っています。その困りごとの種類はさまざまで、受注しすぎた、スタッフが足りない、ソリューションがみつからない、などが考えられます。 ということは、いま仕事を引き受けているクライアント企業には、まだまだ案件が眠っているかもしれないのです。 クライアント企業の困りごとはフリーランス・エンジニアにとってのビジネスチャンスです。 受注しすぎているクライアント企業は、業績好調なはずです。こうした企業からは「いくらでも」案件を引き出すことができます。 スタッフが足りないクライアント企業は、人件費を削りたがっているはずです。ということは、フリーランス・エンジニアのほうで報酬をディスカウントすれば、これまた「いくらでも」案件を引き出すことができます。 低単価案件にはなりますが、仕事が途切れたときは「ありがたい存在」になるはずです。 ソリューションがみつからずに困っているクライアント企業がフリーランス・エンジニアに頼ってきたら、価格交渉で高額報酬を獲得できるでしょう。 もちろん「相手の弱みに付け込む」方法はご法度ですが、きちんと「ソリューションの良案があるが、これは自分のノウハウが詰まっているのでそれなりの報酬をいただきたい」と伝えればいいのです。 「自分を安く売らない」フリーランスは、結局はクライアントから信頼されます。 同じクライアントから連続して仕事を獲得するには、クライアントとコミュニケーションを取る必要があります。仕事の話以外の雑談のなかにこそ、次の仕事のヒントが隠されているものです。 Perl案件の案件票をみてみよう フリーランスのエンジニアも、企業の正社員エンジニアの働き方や待遇、福利厚生などを把握しておきましょう。フリーランスがクライアントと報酬交渉をするときの材料になるからです。 そこでPerlエンジニアを正社員で採用する企業の案件票をみてみましょう。 VR(仮想現実)AR(拡張現実)アプリのサーバーサイド開発、年収280万~600万円 この会社はスマホ向けのVRアプリとARアプリの開発に力を入れています。 そこでサーバーサイド開発を担ってくれる正社員のシステムエンジニアやプログラマーを募集しています。 年収は280万~600万円と倍以上の開きがあります。ポジションやソーシャルゲームの開発経験に応じて年収が変動します。 VRもARも、AI(人工知能)と並んで次代のIT・ネット業界の目玉になりうるツールです。会社員時代に最新技術に触れておけば、独立したときの「売り」になります。特にVRとARは、これらを使おうとしている企業ですら手探り状態です。つまり完全にブルーオーシャン状態です。 フリーランス・エンジニアは可能な限り、ライバルが少ないブルーオーシャン案件を探しましょう。ライバルのフリーランスと競合するレッドオーシャン案件は価格競争になり「忙しいのに儲からない」状況に陥ります。 まとめ~いまより将来のことを考えよう 「得意でない言語を使った開発に携わりたくないからフリーランスになった」という方もいるでしょう。フリーランスの立場であれば、Perl案件だけを引き受けることができます。 しかしPerlの現在の勢力を考えると、なかなかそうもいっていられないかもしれません。もちろん2~3年のうちに仕事が枯渇するといった緊迫した状況ではありません。 では5年後はどうでしょうか。30歳のフリーランス・エンジニアなら、10年後はまだ40歳でバリバリの現役です。 フリーランスのPerlエンジアが5年後10年後でも安定した仕事を安定した収入を得るには、いまから「武器」を持っておく必要があります。 2つめの言語や3つめの言語でも構いません。管理業務スキルの獲得でも構いません。AIやVR・ARのような目新しい技術の知見でも構いません。 いずれにしてもプログラミング市場の動向を見据えながらスキルアップすることは欠かせません。 フリーランス案件を探す
Perl

Perl:人気のプログラミング言語16位【2019】

Perlとは 今回はある種のプログラミング言語の人気投票である「GitHubPullRequest」にて2019年1月から3月の統計にて第16位にエントリーされたPerlについてご紹介いたします。 Perlは1987年に誕生し、1991年に公開されたプログラミング言語です。 現在も主要プログラミング言語として比較的使われるプログラミング言語の中では比較的歴史が長い言語です。 過去記事の「プログラミング言語の歴史 <Perl編>」に詳しいですが、C言語やシェルなどしかなかった時代に、比較的、簡単に記述・実行できる“スクリプト言語”を目指し、開発されました。 スクリプト言語の定義はあいまいですが、C言語より記述の自由度が高く、そして、C言語と異なり、実行前にコンパイル(ソースコードをコンピューターに理解できる機械語に変換すること)が不要という点は、Perlが登場した当時、非常に画期的でした。 Perlの案件を探す ▼ P系プログラミング言語、Perl 現在の使われ方は? Perlは一気に主要プログラミング言語の一つとなると同時に、Perlの問題点・不満点の解消を目指した、新たなプログラミング言語がいくつか生まれました。 なお、こうした経緯で誕生したPHP、Python、Rubyといった言語は、Perlの影響を受けながら誕生・成長してきたため、Perlも含めて「P系プログラミング言語」と呼ぶ人もいます。 話はPerlに戻すと、確かにPerlは「汎用スクリプト言語」という呼ばれ方がされますが、現在、実際の主な使われ方は、CGI(Common Gateway Interface)の実装です。 CGIとは動きのあるWebページの実装方法の一つです。 簡単に言うと、利用者側のWebブラウザーの要求に応じて、サーバー側で外部プログラムを呼び出し、実行結果をWebブラウザー側に送ることで、動きのある表現を実現する方法です。 例えば、ショッピングサイトで買い物中に「買い物かご」の中身を確認したいと思い、買い物かごボタンをクリックしたとしましょう。 まず、Webブラウザーから、インターネット経由で「買い物かごの中身を見せて」という要求がサーバーに対して発信されます。 その要求を受け取ったサーバーは、「ユーザーごとの買い物かご情報を教えてくれるプログラム」を呼び出し、買い物かご情報を取得し、Webブラウザーに対して「情報だよ」と送信します。 そして、その情報を受け取ったWebブラウザーが、「買い物かご情報」を表示するという仕組みになっています。 ちなみに、Web業界では、プログラミング言語のうちWebブラウザー側(クライアント側)で実行されるものをフロントエンド言語、サーバー側で実行されるものをバックエンド言語と分類することが多いです。 その分類に従えばPerlはバックエンド言語となります。 ▼ Perlの系統 Perl6は「失敗した言語」 もう一つ補足しておくと、Perlには、Perl5(いわゆる、普通のPerl)とPerl6の二系統あります。 番号が示す通り、もともとはPerl5の次期バージョンとして整備されたPerl6でしたが、Perl5よりも、より自由度の高い記述など、革新的なプログラミング言語となるように実装を進めていった結果、これまでのPerlとの互換性がまるでなくなってしまいました。 結果、Perlの新バージョンではなく、Perl6という新たなプログラミング言語、という扱いを受けています。 Perl6は日本ではまず使われることはありません。 世界的にもGitHubPullRequestのランキングで40位以下と非常に利用率が低いため、Perl6は“失敗したプログラミング言語”と揶揄されがちです。 Perl6の学習をしても、あまり年収アップや転職市場での優位性に繋がらないので、普通のPerlと間違って教本を買ったりしないようにしましょう。 Perlの現在 昨年の順位と比較して人気を考察 Perlは2019年1月から3月の統計では第16位でしたが、2018年1月から3月では18位と実は順位を上げています。 順位が上がった原因としては、Perlの利用率が上がったというよりは、近い順位だった他の言語、例えばSwiftやObjective-Cなどの利用率が下がってしまったことが大きいように思います。 もともとiOSアプリ開発の現場で使われてきたSwiftやObjective-Cは、昨今のiPhoneの販売不振などが原因で、じわじわと利用率を低下させていると言われています。 逆に言えば、Perlは古い世代の言語でありながら、利用率が安定しています。 Webサイト、Webシステムは絶対になくならないでしょうし、Perlは他の後発言語よりも歴史が長い分、資産やナレッジが多いというメリットもあります。 それらPerlの蓄積を利用したい場合、敢えて、PythonやPHPなどの世代の若いプログラミング言語を使わずに、Perlを積極的に選択することも多々あります。 また、保守運用においても、もともとPerlで書かれているWebシステムの修正・バージョンアップの方法として、改めて新しい世代のプログラミング言語ですべて再作成する、全面更改するのもアリです。 しかし、全面更改するよりも、Perlを使って問題個所・更新箇所のみ手を加えていく方が、コストもリスクも低いでしょう。 そのようなニーズのおかげで、Perlは古い言語でありながら、順位も安定しているのでしょう。 Perlは転職に強いのか すでにご説明した通り、Perlは歴史のあるプログラミング言語であり、今なお多くの現場で利用されています。 そのため、求人市場においても、価値のあるスキルになっています。 ただし、“パンチ力”に欠けるのは否めません。 たしかに、Perlはニーズが安定しているプログラミング言語ですが、やはり世代の古い言語ですので、敢えてPerlにこだわる理由がないのであれば、わざわざPerlにしない、というセオリーもあります。 そういう意味では、他の言語も十分な実績を積んで、Perlと同程度の過去の資産が蓄積されれば、急速にPerlの存在感は減少するでしょう。 実際、ここ数年、Webサイトのリニューアルに合わせて、PerlからPythonなどの世代の新しいプログラミング言語へと全面更改する案件の人材募集も散見されます。 単に「Perlが扱える」だけではダメで、「Perlは扱えるが、他のプログラミング言語にも対応できるようになりたい」という積極性・柔軟性が求められていると感じます。 Perlで活躍できる業種はWeb系IT企業 すでにお伝えした通り、Perlは基本的にはWebシステム開発で使われるプログラミング言語です。 そのため活躍できる業種も、Webシステム開発を行っている、いわゆるWeb系IT企業が主になります。 もちろん、非IT企業が自社Webサイトを運営していることもありますので、そうした非IT企業からの求人も、ごくわずかですが、登場することもあります。 Perlエンジニアの年収 年収ですが、エンドサイドエンジニア(場合によってはサーバサイドエンジニア)として扱われ、その役職に応じた給与体系で支払われることが一般的です。 具体的な金額で言うと、正社員の場合年収300万円~700万円のレンジに収まることが多いです。 フリーランスの場合、月50万円から100万円が多く、平均はおおむね70万円代と、他のプログラミング言語と同程度か、注目度の高い世代の新しいものに比べて、やや低いくらいの年収となりそうです。 まとめ:Perlだけで勝負は危険? 繰り返しになりますが、Perlは歴史のあるプログラミング言語であり、長い歴史があるからこその強みもあれば、弱みもあります。 現在のところ、Perlは主要言語としての地位を守っていますが、IT業界は移り変わりが激しく、実際、近年、どんどん新たなプログラミング言語が登場しています。 ある日突然、ピタッとPerl案件がなくなる、ということはないでしょうけれど、じわじわと減っていく可能性は十二分にあるので、Perlだけで勝負するとは考えずに、複数のプログラミング言語を身に着けることをお勧めします。 なお、他のプログラミング言語も、P系言語など、Web業界での利用頻度が高いプログラミング言語を戦略的に選択すると、転職市場で強い人材になれるでしょう。 フリーランス案件を探す 今だけ!登録で最大1,500円相当もらえるお仕事探しサービス「テクスカ」 「テクスカ」は、報酬をもらいながらお仕事探しができる新体験のスカウトサービスです。 【テクスカの4つの特徴】 1.面談するだけで、3,500円相当のAmazonギフトカードを獲得できます 2.優秀な貴方に仲間になってほしいと真に願うとっておきのスカウトが企業から届きます 3.貴方の経歴・スキルを見て正社員のオファーだけでなく副業オファーも届きます 4.転職意欲がなくとも自分のスキルが通用するか各社のCTOに評価してもらうチャンスがあります 忙しさのあまり、企業との新たな出会いを逃している… スパムのように届くスカウトメールにうんざりしている… 自分の市場価値がわからない… 社外の人からの評価が気になる… 副業の仕事が見つからない… そんなあなたにおすすめです!
<span class="translation_missing" title="translation missing: ja.layouts.footer.icon_back_to_top">Icon Back To Top</span>
TOP