元スレ【Perl】何をやれば「出来る」といえる?【PHP】
php覧 / PC版 /みんなの評価 :
1 = :
就職・転職などにおいて、PerlやPHPが「出来る」といえるレベルは、
何処までスキルが必要なのか?をみんなで意見を交換し合うためのスレです。
「こういう事が必須だ」というものは、人によって考え方が異なりますので
必ずすれ違いが出てきますが、自信を持って言えるかを客観的に見る
きっかけにはなると思います。
2 = :
> 自信を持って言えるかを客観的に見る
> きっかけにはなると思います。
えらそうだな。お前には教えてやんないw
3 = :
まず、ソートが出来るとか、関数の設計が出来るとかは前提として。
PHPの場合は、OOPは必須だと思う。フレームワークを使う場合は、
OOPの理論までを理解していないと、応用性が厳しいと思う。
4 = :
「xx作れ」って言われた時に
・可能である場合に納期を割り出せて
・時間がかかる部分を説明して納得させ
・作って
・デプロイして対価得る事
もしくはそういう役割を担っている先輩の役に立てる事。
5 = :
・できる
入力に対して必要な処理を行って出力できること
・つかえる
一通り把握していて、周りのやり方に文句を言わないこと
・つぎのぷろじぇくとできる
設計に拘り過ぎて違う違うと喚き散らして納期前に徹夜で作り直してエンバグさせる馬鹿
6 = :
やった事の無い言語でも、その仕様を調べて、ライブラリの概要を
1週間程度で掴めるくらいの経験は必須だと思う。
言語ってすぐに変わっていくからね。
8 = :
>>4
SEやPMに近いスキルですよね。
「いつまでに出来るのか?」を的確に答えきれるスキルは必須ですね。
システム構築の経験数はどれくらい必要だと思いますか?
9 = :
名指しかいなw
ウチけっこ曲がってるけど、まあ参考までに。
とりあえず新人にはphpかレガシーASP(VB)でテストDB扱う日報管理システム作らせてみてるよ
DB正規化を考えるアタマがあって、正規化し過ぎない人間であり、かつ
言語はともかく処理を実装できるなら、「とりあえず」使える範疇に
数えて、現場の引き継ぎ担当者に投げます。それ以外は孫請けの採用枠紹介するか、切るかの二択。
自分から積極的に学ぶ奴や、自前の設計でリプレースシステムのデモとかプレゼンしてくる奴は、勤労年数無視してさっさと昇格試験に推薦します。
言語問わず、俺が個人的に「xx言語が出来ます」と言っていいレベルの人物ってこの段階の人だと思う。
トレンド技術に追いついてない人であれ、OOPの理解がヘタってる人であれ、俺の経験した範疇では例外なくそのうち勝手に覚えるタイプだから。
八割は使えんな。OOP以前に、なんでこの業種を志したのか分からん奴ら。
もっぱら選別して辞めさせる仕事なので、胃が痛いところ。
「俺Perlできますよ」とか言われても黙れ青瓢箪、言語云々じゃねえ、と説教する立場。
ただ残りの出来る奴ら見てると本気で慌てるね。
手あかで汚れたHaskell本をデスクに置いてる奴がいたりすると、「俺はいつかこいつに抜かれるな」とか思う。
ってウチみたいな糞フローやってるとこの人間の発言なんて参考にならんと思うわ。申し訳ない。
システム構築ってのが、もしxoopsやら既成アプリ入れて設定できるだけの人を差してたら何百やってても実績には数えませぬ。
拡張モジュール開発したとかなら、一応話は聞いておく方向ですね。
長文ごめんな。
2行にまとめると、経験数とかじゃなく適応能力と学習意欲の問題だと思うですよ。
趣味でなければ。
10 = :
>>9
レスサンクス。
確かに「学ぶ意欲が大事だ」とは良く聞きますね。
専門学校出てて、Perlの正規表現がばりばりな人が、
PHPの話になると、「ちょっと・・・、Perlの仕事ないですかね・・・」
となったりと、「書き方はほとんど同じで、正規表現の書き方が
若干異なるだけなんだから苦労することじゃないでしょ」と思うことも
ありました。
私もこういうところが、40前で辞めていくかどうかの違いかなと思います。
11 = :
マジレスです。
>>1
>就職・転職などにおいて、PerlやPHPが「出来る」といえるレベル
【制作実績】
面接のときに、今まで作ったことのあるサイト、プログラムのデータを持ってきてくれと言われました。
某セレクトショップのWEBサイトを作ったことがあったので、そのデータを持っていきました。
面接担当者が、実際にWEBサイトとプログラム(PHP)を見てくれました。
実際にプログラムを書ける、WEBサイトを作れる=「出来る」レベルと言えます。
12 = :
>>8
>手あかで汚れたHaskell本をデスクに置いてる奴がいたりすると、「俺はいつかこいつに抜かれるな」とか思う。
Haskellでプログラムを書くのは簡単だよ?
http://pc11.2ch.net/test/read.cgi/php/1201783642/11-17
>30分あれば、とりあえず今日からアナタもHaskellプログラマーになれる!(・∀・)
不安ならすぐやってみればOK
何だこんなもんか、とすぐ安心できますよw
(Haskellが使えるプログラマー=すごいってのは単なる思い込みでしかない。)
13 = :
>>11
レスありがとうございます。
しかし、「Webサイト」というだけだと、単に文字を追記するだけの
掲示板も含まれてしまいますよね。
さらに具体的にどのようなレベルまで?となるのです。
例えば全部のデータが hidden で渡されていたら、改ざんされてしまうわけです。
設計にはOOPを生かしたものが必須なのかなとか、考えていくと、
言語が出来るとは、どこまでなんだろう。となるのです。
14 = :
「できる」の水準なんて場合次第で千差万別だし、そのレベルでも「十分できる」場合はあるんじゃないかな。
色んなデータを触って行く事になるけど、どんなアプリも基本は掲示板みたいに入力があって、処理して、出力するものだしなあ。
その上でどういう処理を知っているかで「できる」「できない」を決めるのは難しいと思うな。
OOPは一つの目安だと思う。でもその「OOPができる」の水準も千差万別ですな。
OOPである意味っていうと、最低でもカプセル化と継承を活用した設計ってあたりかしら?
設計面で言えば、言語機能として提供されていなくてもそれなりに配慮できる事なので、
>>3さんの言う、OOPで書かれた道具立てを適用していく事ができるか、って水準が無難だと思う。
もちろんOOPできてもソートアルゴリズム判らないと肝心な時に困ったりするし、直でSQL叩けないと困るだろう。
OOPできるプログラマを一概に「できる人」と言える訳でもないw
アルゴリズム理解の最低ラインは、クイックソートをソラで書けるあたりが良く使われてるかな?
古いかも。今だと高階関数への理解あるか聞いた方が時代に合ってるかな。
セキュリティ面はどうだろ。セキュリティにもトレンドあるから一概には言えないよね。
そもそもイントラオンリーなwebツールみたいにセキュリティある程度無視できる用途もあるけど。
この辺はその手の資格持ちか否かが、判断基準としては無難じゃないかな。
15 = :
>>13
面接の時に見せたセレクトショップ(服屋)のWEBサイトは、カタログサイトです。
・PHP+MySQLで構成
・デザインテンプレートエンジンを使用(デザインとロジックの分離)
・管理画面があって、商品データ(商品名、説明文、画像など)の追加、編集、削除ができる。
・JavaScriptで商品写真の表示を切替える。(サムネイル画像にマウスを乗せると写真が変わる)
・お問合せ用のメールフォームがある。(メール内容はDBに格納される)
・店長ブログとしてMovableTypeを入れた。
・トップページにフラッシュのアニメを入れてある。(Flashアニメは友人に作ってもらった)
というような内容です。
プログラム的には、画像掲示板にさらに機能をつけた感じです。
このプログラムではOOPは特に使ってませんでした。
16 = :
>>13
面接でアピールしたこと
【長所】
・DB(MySQL)を使える。=SQL文法は理解しており、サブクエリーとかも書ける。
・OOPを理解している。=Javaの勉強をしていた。PHPのOOP構文、PEARの使い方も分かる。
・デザインテンプレートシステムを使える。=Smarty等を使える。
・Photoshopを使える。
・DreamWeaverを使える。
・JavaScriptが使える。=JavaScriptの勉強をしていた。
・CSSを使える。=CSSの勉強をしていた。
・XMLを使える。=XMLの勉強をしていた。
【短所】
・WEBサーバ構築の知識がない。=Linuxはインストールくらいしかしたことがなく、ほとんど触ってなかった。
・フレームワークの知識がない。=フレームワークを使ったことがなかった。
とかでしょうか。
面接で質問されたときに、即座に答えられた方がいい内容として、
・Shift JISの文字化け対策
・エスケープ(SQLインジェクション対策)
とかがあると思います。
17 = :
WordPressのソースコードを自分なりに解説つけて面接官に渡した。
結構時間かかったけどw
たぶん16みたいなのは派遣会社or給料25万ぐらいの会社しか雇われないと思う。
給料がいい会社、在宅OKの会社に入りたいならそれなりに準備しないときびしいよ。
PHPができる=セキュリティ対策、機能が拡張しやすい、可読性
ぶっちゃけテンプレートエンジンとかPearとかOPPなんて過程の話で
16の内容は派遣会社の営業が書いたスキルシート
18 = :
>>9でいう 「とりあえず」使える範疇 に入れるかどうかじゃないのこのスレの趣旨は
>>17はデキる!
>>16はできる
19 = :
例えば、学校でいう「基礎」と、会社でいう「基礎」の解釈が異なっていたりするのです。
学校では、テストの点数がよくて、「優」が取れれば、その人は「出来る」と評価される
わけですが、その学校のレベルそのものが低い場合は、会社では、「出来ない」と
評価されるわけです。
また、学校で学んだ範囲で、すぐに会社でやる実務で使えなかったりもするので、
面接時に「できる」と自信満々に言って、具体的に話を進めていくと「なんだ、何も
出来ないじゃん」と評価されてしまうこともあるわけです。
20 = :
>>14
> その上でどういう処理を知っているかで「できる」「できない」を決めるのは難しいと思うな。
難しいからこそ、いろんなかたのご意見を聞いてみたいと思ったのです。
あと、このスレでいろんな意見を出し合っていると、勉強をする上での目標設定の
基準としても参考になるかなと思ったのです。
> OOPは一つの目安だと思う。でもその「OOPができる」の水準も千差万別ですな。
そうなんですよね。OOPもカプセル化と継承を使えるレベルでも、十分に出来ると
思えるのですが、それだけだと、フレームワークを自作したりは出来ないわけです。
C++のMFCも、「ここにこう書くんだ」程度の割り切った理解で、出来たりするのですが、
その程度の知識だと、何処まで通用できるのか、と不安になることもあります。
21 = :
>>14
「アルゴリズム理解の最低ラインは、クイックソートをソラでかける事。」
これは、基準としていいですね。
「直でSQLが叩けること」は、データ操作言語のみに絞って良いの
でしょうか?私はデータ定義言語は、書くことが少ないので、都度、
調べてコピペしてますが。
セキュリティー面は、基準を言うのが難しそうですね。
言語とは違う話ですが、いまさら、PHFバグとか言っても、
「何それ?」の世界ですしね。
22 = :
>>15-16
レスありがとうございます。
これだと、実務で使えそうな感じが伝わってきますね。
「作るもの」を目標として考えた場合、PHPやPerlが出来るか
どうかを考えると、時代的にSQLがかける事の他、
JavaScript、CSS、XMLがかけることも合わせて必要だと
思いますが、PhotoShopやDreamWeaverも、合わせて
必須だと思いますか?
このあたりは、Webデザイナーとの分担の役割が関係するかと
思いますが、私はこのあたりが、非常に疎いです。
23 = :
>>17
アドバイスありがとうございます。
WordPressというものは、初めて聞きました。汗
これについて調べてみて、丁度、「PostgreSQLのコードを読んで
改善した事がある」みたいな意味だと解釈しました。
すごいですね。
これだと、本当に誰もが「出来る」と認めるレベルですね。
24 = :
>>18
「できる」と「デキる」は、分かりやすい表現ですね。
こうなると、以下の3つのランクに分けて話を考えるといいかもしれませんね。
ランクA(デキる)
GPLのを解読できるクラス。
就職に困らない(?)
ランクB(出来る)
すぐに実務につけるクラス。
Webでショッピングが出来るものを一人で作ったなど。
DBやJavaScriptあたりも把握している。
プログラムを中心にやって行きたいのなら、このあたりが必須のレベル
ランク外(出来ない)
学校で「優」を取ってうかれているレベル。
実務では使い物にならない事を本人も理解していない。
くじ運が良ければ技術につけるかもしれないが、
いきなり営業にまわされるかもしれない。
25 = :
>>17
面接に行った会社は採用してくれた。
入った後に分かったことだけど、ちょうどその時スタッフを大量募集していたみたい。
=振り返って見ると、一定水準を満たしていれば誰でもOKだったのかな?と思っている。
手取りの給料は、だいたいそんなもんだったね。
(残業代とか入れるともう少し多いけど)
26 = :
WordPressのコードを批判する人は大勢いるが改善しようとするひとはいない
文句ばっかいって、つばつけてWordPressのシェアが落ちたとき
だからいっただろって人はランクAだな
仕事で精一杯で必死こいてるやつはランクB
土日は家で寝てるタイプw
PHPで動いているオープンソース関連のコードがなんとか読めると
業務もついていける。
つまり面接でPHPできますということだなぁ
27 = :
>>22
自分の場合は、WEBデザイン→WEBプログラミングという順番で辿ったので
・Photoshop
・DreamWeaver
は、プログラミングを始める前から使えた。
ゼロから始めるなら、
HTML → PHP → SQL → JavaScript(DOM、AJAX) → フレームワーク → CSS → 画像処理ソフト(Photoshop、Illustrator等)
という順番がいいんじゃないですか?
WEBデザイン(CSSとか画像処理ソフトの話)は、後回しで問題ないと思う。
XMLも、必要になったらそのときやる程度でOKだと思います。(RSSとかAPIとか絡みで)
28 = :
設計やコーディングだけじゃなくて、デバッグやテストのやり方/ツールも知っておく必要はあるね。
29 = :
>>25
会社の採用は、実力よりもタイミングというケースもありますからね。
職を探す立場だと結構むずかしいものです。
本当の会社の採用基準は、分からないでしょうが、今は技術的に
勉強不足を感じていないのであれば、それだけの技術は十分に
「できる」基準となると思います。
30 = :
>>26
日々精進が必要なんでしょうね。
早く帰ってから、のんびりしてるとかと、してない、の違いなんでしょうね。
でも、>>9さんが言うように、ランク外の人はこの業界を志望する人の
8割くらいで、ランクBに入るだけでも結構優秀なのかもしれませんね。
31 = :
>>27
なるほど。Webデザインから来た方だったんですね。
XMLやJavaScriptあたりも、何らかの基準を設けないと
いけなさそうですね。しかし、私は、このあたりの事は
入り口くらいの知識しかないので、その基準を探すところから
学ばなければなりませんね。
32 = :
>>28
「言語の出来るレベル」を考える場合、設計やコーディングの事ばかりに
視点が行ってましたが、デバッグやテストのやり方/ツールというのも
あるのですね。
何かキーワードなどあるのでしょうか。
34 :
最高の言語?
そりゃ、MASMですよ。
もちろん、バージョン6以降。
型や構造体、フロー制御ディレクティブなどのないアセンブラなんてアセンブラじゃありません。
C言語? あんな中途半端な言語は使えませんよ。
プログラミング言語といえば、MASM か C++のことでしょ?
35 = :
JavaScriptも必須という意見が出てて、それには同意だけど、
では、具体的に何が書ければ良いといえるかな?
俺、ttp://www.~ という記述をtextareaにコピペしてボタンを
押したら、<img src="http://www.~ という文字に変換してくれる
スクリプトなら書いたことがあるんだけどw
36 = :
>>35
うちではjQueryとそのプラグイン系を使えれば十分だなー。
検討の上prototype.jsに落ち着いた会社も多いだろうから、それも抑えておくと無難と言えると思う。
html用のjsってwebでは結局難読化止まりなので、資産化しにくい上に
定番技法は定番ライブラリに還元されまくるのよね。
自前でXMLHttpRequest叩きまくる事はなくなった
JSでのクロージャや高階モノに知悉している奴もいるんだけど、
そういった技術を生かせるタスクはいまんところ存在せず。。
ごくフツーなJSONPをできる人間なら、ほとんどの会社で十分なんじゃねーかなぁ。
ただ、うちの場合、外部向けページが「JavaScriptオフでも最低限動作する」前提だから古い考えかもしらん。
JS界隈って勤め人の固定観念を無視して、面白い実装がわらわら出て来る世界でもあるから
自前実装に凝りまくる求人も、ベンチャー方面では当面熱いと思う(これは完全に私見
37 = :
俺の個人的な主観。
Ajaxは、これから主流になるかもしれないけれど、今はまだWeb系では、
Flashのver1や2が出たレベルに相当するんじゃないかなと思う。
一部では、もてはやされるけれど、あくまで一部といった。
38 = :
>>35
とりあえず、Formで独自の機能をつけたボタンを作れるくらいでOKなんじゃないですか?
(1) JavaScriptの基本的な文法を知っている(=入門書を1冊読む)
↓
(2) JavaScriptのサンプルコードを見て、何をやっているか意味を理解できる
↓
(3) DOM(Document Object Model)の知識、使い方を学ぶ
http://itpro.nikkeibp.co.jp/article/COLUMN/20061206/256222/
↓
(4) PHPとの絡みで言えば、AJAXの知識、使い方を学ぶ
http://www.atmarkit.co.jp/fwcr/rensai/ajax_php01/01.html
↓
(5) prototype.jsのようなJavaScriptライブラリの使い方を学ぶ
http://hori-uchi.com/prototype/Effect.html
(参考サイト)
[翻訳]JavaScript: 世界で最も誤解されたプログラミング言語
http://d.hatena.ne.jp/brazil/20050829/1125321936
(参考書籍)
JavaScript 中級講座
http://www.amazon.co.jp/dp/4774132349/
↓
JavaScript 第5版
http://www.amazon.co.jp/dp/4873113296/
DOM Scripting 標準ガイドブック
http://www.amazon.co.jp/dp/4839922373/
39 = :
>>37
勉強の最初の段階では不要だと思うけど、やっぱPHPの次はFlash関係を押えておいた方が良いでしょうか?
Silverlight(Microsoft) vs Flash/Flex/AIR(Adobe)だと、Flash関連の方をやりたいです。
=YouTube、ニコニコ動画、Zoomeみたいな動画再生アプリを実装できるようになりたい。
Zoomeを見て「H.264」規格の高画質な動画再生は、人気が出るんじゃないかなーと思いました。
http://www.zoome.jp/
http://ja.wikipedia.org/wiki/H.264
40 = :
あー、動画系かぁ。スレ違い気味かもだけど、丁度おれがやってるw
Flex SDK+Red5(Flash Media ServerのJavaによるオープンソース実装)が、ライセンスフィー無償で遊び倒せる品物としてはお勧めだなー。すごく手軽なんだよ。ActionScriptの知識は軽く要るんだけどね。
H.264できるか試した事ないんで、見当違いだったらごめん。
AdobeのFMS3も、体験版出たばかりなのでホットだと思うよ。
体験版っていうか、無償で10アカウント接続できるDev版がDL出来る。
製作実績扱いしたい場合は、「色んなコンフィグで、配信量と安定性をどんだけ腐心してどういう成果を出せたか」というサーバーサイドの運用実績になりそう。
flexで.swf吐くアプリ側でいうと……複雑っぽい挙動も妙に簡単なので、逆に評価されないかもw
41 = :
ライセンスフォー
42 = :
フォー
43 = :
>>38
そういう風に必要なスキルを段階的にまとめていくと、分かりやすいですね。
ありがとうございます。サイトなど読んでみます。
44 = :
>>39
Webサイトを作るうえで主流となっている傾向を見てみると、Flashは
標準搭載になりつつあるのでは、と思います。
マウスを合わせると、メニューが出てくるなどするのは、よく見かける
ようになりましたし、プレゼンテーションの効果も高いです。
Webアプリの開発の世界では、DBやJavaScriptほど一緒に使うことは
ないと思いますが、これからはデザイン系の世界では必須だと思います。
Webアプリ系必須:PHP、DB、JavaScript、XML
Webデザイン系必須:PhotoShop、Illustrator、Dreamweaver、Flash
この二つも、はっきりと境界線があるわけではありませんが、
このような感じで、PHPとは方向性が違うものの世界では、必須と
捉えていてよいのでは、と思います。
45 = :
>>40
情報ありがとうございます。
私は動画系をほとんど知らないのでうといので、キーワードをもとに
検索をしてみます。
やはり、そういう動画系の場合は、それ専用のスクリプトの勉強
(ActionScript)も必要となりますが、PHP+DBの世界とは全く別ですよね?
(一緒に連動させてシステム構築などはないですよね?)
46 = :
俺の予想では、Webデザイン系ではFlashも必須であり、
ActionScriptなどを使って、簡単なゲームが作れるくらいにまで
なっていたい。サーバにデータを送る場合は、不正なデータを
はじく処理も必要だ。
(ただ、デザイン系に、プログラムを含めていいのか迷うが、
PHPと連動して使われることはないと思うので、デザイン系に
入れておきます。)
48 = :
>>44
授業の科目みたいに、必須と選択に分けるなら、こんな感じでしょうか?
Webプログラミング系必須科目:PHP、DB
Webデザイン系必須科目:HTML、Photoshop(Photoshopの代わりにFireworks、GIMP等でもOK?)
Webプログラミング系選択科目:JavaScript、Linux、XML
Webデザイン系選択科目:CSS、Dreamweaver、Illustrator、Flash
・必須科目を削りに削るなら、CSSとJavaScriptは後回しでも、とりあえずWEBページは作れると思います。
・WEBデザインでは、画像パーツくらい作れないWEBページが作れないかも=Photoshop等
・XMLは必要なときにやればいいくらいで、知らなくても普段は問題ないでしょうか?
49 = :
記事は、セキュリティーに関するものだけど、以下のサイトに、
FlashでWebサーバにアクセスしてゲームをする過程のことが書かれている。
http://www.atmarkit.co.jp/fsecurity/rensai/hoshino05/hoshino02.html
細かいところまで書いてないが、これはPHPやPerlとの連動をして
組むというよりも、ActionScriptでデータのやり取りを設計するっぽい。
「ActionScriptは、Webプログラミングで、必須な会社は必須だろう」
といった分類になるのかな。
50 = :
Flashの位置づけを何処にするのかは難しいですね。
Webデザインの世界にもなってきますし、ゲームプログラミングの世界にもなってきます。
PHPやPerlで組むとなると「Webの業務用アプリ」となり、それを作る場合に必要なのは
どんなスキルか?という考え方で区切ると、このあたりは、今は「スキルがあれば役に
立つかもしれないね。」という位置づけになるかと思います。
もちろん、時代が変わると、このあたりの技術も必須となってくるかもしれません。
今のWebにはFlashが当たり前となってきているので、Webショッピングにおいても
何らかの形でFlashを取り入れていくのが当たり前になるかもしれませんしね。
「時代の流れを読んで、将来的に必要だと思う場合は、勉強しておくといいかも。」
という意味合いで「スキルがあれば役に立つかもしれないね」に分類しておきます。
みんなの評価 :
類似してるかもしれないスレッド
- 【PHP】セッションについて語ろう!【PHP】 (829) - [45%] - 2018/6/27 23:16 ○
- 【Perl】勉強したい人協力したい人ドゾー【PHP】 (92) - [40%] - 2022/12/22 9:00
- 【ANTI】今、あえてPerlで攻める【PHP】 (161) - [36%] - 2017/12/31 9:32
- 【初心者】励ましあいながらサイト製作【PHP】 (202) - [35%] - 2019/1/23 15:00
- 【PHP】フレームワークについて語るスレ10【総合】 (1001) - [34%] - 2008/12/23 16:48 ○
トップメニューへ / →のくす牧場書庫について