質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.60%

  • PHP

    19858questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Java

    13503questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • HTML5

    3881questions

    HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

  • C

    3569questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • C++

    3337questions

    C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

プログラム(PHP)を学び始めて

受付中

回答 15

投稿

  • 評価
  • クリップ 9
  • VIEW 1,950

yutaishikawa_

score 46

こんばんは。

今回、私自身の悩みについて質問させてください。

私は先月6月より仕事の都合でPHPを完全マスターする為に独学でPHPを始めました。
始めたての頃は、これがあればなんでもできる!とやや興奮気味になって色々な教材やサイトをみて、睡眠不足になってしまうくらいの勢いで勉強していました。
そして約2ヶ月、毎日朝から夕方までわからないことがあればググってを繰り返し、そのたびに何度も壁にぶつかり、何度も挫折しそうになりました。
一番ネックだったのは、「理解できているようでできていないこと」でした。

ある日、某ブログのポップからこちらのサイトを見つけ、すぐに登録→質問まで至ったのですが、そこから途端に作業ペースをあげることができたものの、答えてくれる方々の思考や考え方などが個人個人で違い、ある意味混乱することも多く、ほしい答えとは違うベクトルの回答をいただくこともあり、わかりやすく、しっくりときたものをベストアンサーに選ばせていただいてました。

約2ヶ月間色々とご質問させていただいた後でいうのもなんですが、自分には向いていないのかなぁ、と。
度重なるパースエラーと動作しない生成物をみて感じ始めました。

元々Webデザインを学んでいた人間なのですが、この度Webサービスを作りたいと思いPHPを学び始めたのがきっかけです。

私自身、「まったくできないこと」よりも「自分にできること」を選ぶ人生を歩んできたもので、この「まったくできないこと」が長く続く時間がどこかストレスになり、このような思考になってしまったのかもしれません。

もちろん、学ぶようになって「できるようになる」喜びはこの上ないと思ってます。
可能であれば、これからもPHPプログラマーとしてお仕事をやっていきたいとも思ってますし、そのためにはもっとキャリアを積まなければダメだと思ってます。
しかし、お仕事にできるまでのスキルを持てない、努力の方向を誤り、理解できているようでできていないことが続く現状、先のことを考えると、まだまだ1からやり直していくのか、別のクリエイティブ業に移るのか、悩みます。

ここで質問です。

現在、実際に仕事でプログラムを用いてるプログラマーの方が、このプログラムを用いた仕事を選んだ理由などを共有していただけますでしょうか。
おそらく、私と同じ悩みを抱え、現状に満足できずに挫折していった方は数え切れないほど多くいらっしゃると思います。
モチベーション向上というか、自分勝手な質問だとは思いますが、ご協力いただければ嬉しいです。

いつもご回答いただいてくださっているプログラマーの方々。
いつもありがとうございます。不快に感じる質問かもしれませんが、これからの日本人エンジニアのためにも、ご回答いただけると本当に嬉しく思います。
おこがましいとは思いますが、何卒よろしくお願い致します。


  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 15

+9

直接の質問の回答でなくて申し訳ありません。
察するに楽に無駄なく取り組める開発環境を確立させることが最優先課題なのかもしれないと思いました。

文法チェックなど実行前に判別できる軽微なエラーをエディタ上で検出出来るだけでも生産性はずいぶん変わります。
テスト環境にアップロード→パースエラー→修正&アップロード→パースエラーの繰り返しは生産性が悪すぎます。

PHP専用テキストエディタの類を探すか、あるいは汎用開発環境にPHP特化させるとか。
EclipseとかNetBeansなどは無償で入手でき日本語化もされていますので、
とっつきやすいと思われます。

ローカル(自分のパソコン)上にテスト環境は立ち上げているでしょうか。
XAMPPほかいろんな手法があります。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/28 19:46

    m6u さん
    コメントありがとうございます。
    その環境については全く知りませんでした…「phpはサーバーサイドだからアップロードしないと動作結果は分からないものだ」と勝手に決め付けていました。
    貴重なご意見ありがとうございます。
    テキストファイルはSublimetextを用いていたのですが、実際にEclipseなどを用いてみます!

    効率のいい環境…全く無知でした…
    悩むのにもまだ無知すぎたのかもしれません…
    ありがとうございました!

    キャンセル

+3

「プログラミングは楽し、デバッグは苦し」と、
プログラミングをする人はみな感じることと思います。

プログラムを動かしたり、バグを少なくしたりするのに、
もっとも重要なことは、分割統治、部品化、構造化することです。

PHPならプログラムが大きくなれば、まず関数に切り分け、
さらに大きくなったときにオブジェクトに切り分けていきます。

ほかにも一般的に言って、可読性を良好にすることは重要です。
ifやforのネストを浅くすること、変数や関数の適切な命名など。
(もちろん、言語仕様の把握や開発環境の整備など、全部大事ですが)


しかし、この掲示板の質問などを見ていても実感しましたが、
学び始めの人ほど、構造化や可読性を過小評価しています。

学び始めの人は、目の前のプログラムが動くかどうかが大事で、
コードのキレイさは、細かいことだと思っている。

しかし、ただコードがキレイなだけでバグは減ります。
(原因の特定が難しい特殊なバグでなければ)

またこれは先の話でしょうが、キレイな設計(ドキュメント)があれば、
コードを実装するときのバグを減らせます。


これをたとえると、虫(バグ)が湧いたとき、虫を一匹一匹追い回すより、
衛生的な環境にしたほうが、虫の発生を一気に減らせるようなものです。

ただそうは言っても、最初のうちは実感するのが難しいと思います。
私もプログラミングを学び始めの頃は、汚いコードを書いては動かなくなり、
次から次へと書き捨てていたものです。

どうやってスタイルを変えるか。手っ取り早いのは、
コード作法やリファクタリング系の本を読むのが良いと思います。

最初はなぜそうするのか実感できなくても、
自分と違う書き方や考え方に触れるだけでも、大きな発見になると思います。

一番最初はひたすら手を動かし、動くプログラムを作るのが良いですが、
あるていど慣れてきたら、自分のスタイルを見直す機会が必要だと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 16:15

    LLman さん
    コメントありがとうございます。
    "キレイなコード"や"汚いコード"という表現をよく目にしますが、
    私のような初心者にはその差がわかりません。
    なんとなく、コード規約に乗っ取った記述ができるかどうかというイメージではあるのですが、、、

    >>コード作法やリファクタリング系の本を読むのが良いと思います。
    ということも視野に入れ、基礎が固まってきたところで挑戦してみようかと思います。

    ありがとうございました!

    キャンセル

+2

うーん私の場合は「仕事で必要だから覚えた」という感じです。
今はPHPがメインですが、元々はVB6だったりCだったりしました。
その時その時で必要な言語を覚えていきましたよ。

プログラムが好きなので、言語にこだわりはありません(汗

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/28 19:50 編集

    yu-ri さん

    コメントありがとうございます。
    多くの方々は「仕事で使うことになった」という義務的な学習を強いられたのかもしれません。
    しかし私は、「これを作りたい!」という、どちらかというと仕事をつくる立ち位置なので、あってもなくても正直困ることなんてないのです。
    ただ、作れるようになりたいという気持ちから、できなくてどうしよう…という不安が生まれ、今回身勝手な質問をさせていただいた次第であります。

    やはりその前提で、「プログラムが好きだ」とい気持ちが大事なのですね…!
    ありがとうございました!

    キャンセル

  • 2015/07/28 22:43

    好きこそものの上手なれ ですね。
    仕事で必要でなくても覚えたいというのは素晴らしいことですね。
    プログラムを覚えることで現場の肌感や仕事のボトルネックが分かるようになるので、現場の人間としてはそういう人が仕事を作る(企画かな?)のは非常にありがたいです。

    ええもう営業からの無茶振りが多いこと多いこと(笑)

    キャンセル

  • 2015/07/29 08:58

    yu-riさん

    ありがとうございます。「好きこそものの上手なれ」おっしゃる通りですね。
    これからの時代、自分最大の武器となる技術を身につけておきたいという危機感の中で選んだのがこういったプログラムになります。
    正直、現場でプログラムを使用されている方に、そういう風におっしゃっていただけることが何よりも頑張ろうと思える一つの要因だったりします・・・(笑)

    無茶振りを重ねてスキルが上がっていくのであればいいかもしれませんが、そうでない場合のことを考えると、気持ちのもちようなんだなとしみじみ感じます...。

    ありがとうございました!

    キャンセル

+2

現役ではないので、自分は適切な回答者じゃないかもしれませんが。
現在、実際に仕事でプログラムを用いてるプログラマーの方が、このプログラムを用いた仕事を選んだ理由などを共有していただけますでしょうか。 
最初の動機は、計算が苦手だったから計算機にやってもらいたかった。ただそれだけですね。自分の場合
一応やめた理由の方は、地元に帰りたかっただけなので、あんまり参考にならないですね・・・ははは・・・

理解できているようでできていないこと
理解することと使いこなせるようになる事ではだいぶ差があります。
よくある話としてはオブジェクト指向とそれに伴うクラスの設計手法等でしょうかね。
この手の概念は使い込んで”便利”だと思えるようになって初めて使いこなせるような代物で、勉強よりも実践でしか培われないものですので、大変かと思います。

”楽な環境を用意すること”ってのは大事なのですが、その前提条件として、今まで苦労してプログラムが書ける人が楽になる環境、コンピュータの仕組を理解している人間が楽できるプログラム環境ばかりだと思います。お蔭で体系的に勉強できる機会が無かった方には結構つらい環境だと思います。この辺が初心者にとっては不幸な点でしょうか。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:15 編集

    tenraku さん
    コメントありがとうございます。
    現役でないということだと、元々プログラムに触れるお仕事をされていたということですか?「計算機にやってもらいたかった」という言葉から察するに、その背景に今当たり前のようにDLできる便利ツールなどがまだ出回っていない時代でしょうか。


    理解することと使いこなすことが別物だということについて、驚いています。
    理解 = 正常動作 という概念の中で、使いこなすことはまた別のものだという認識でいました。ただ、"動作させること"自体を知らなければ、理解することも又到底難しいということになると思うので、その辺りはネットにある既存の構文などを参照していければと思ってます。

    "楽な環境を用意する"ことに関しては、私にPHPを指導してくださっている方もそういった考え方の方で、例えばphpMyAdminがあったとして、「便利に誰でも使えるようにこれを作った人がいるけど、これを使いこなせた上でエンジニアと名乗るのか、この環境でなくてもターミナルから泥臭くコードを一文一文書いて使いこなせた上でエンジニアと名乗るのか。「なんでも作れます」という意味合い自体も若干ズレてしまうから気をつけろよ。」などとおっしゃっていただけました。
    得ていく情報の種類や鮮度も自分の基準値次第となってくると、まずは著書などでしっかり基礎を固める必要があるような気がしてきました...。

    ありがとうございました!

    キャンセル

  • 2015/07/29 11:26 編集

    元、プログラマ、SEです。派遣だったので場所によっては設計からやらされたりと
    (内部システム担当してた時は、エンドユーザと直接ヒアリングから納品までやってたこともありました)
    計算機といっても私の時代ではすでにPCは、Windows2000とかでしたので最近ですよ。

    > その辺りはネットにある既存の構文などを参照していければと思ってます。
    それ以上に最新の思想、概念を許される範囲で、実践で使ってみてください。
    個人で勉強されるのであれば、試しに使ってみてください。たぶん見て読むだけでは分からない世界だと思います。

    > 例えばphpMyAdminが・・・
    この例だとphpMyAdminが裏で何をやってるかイメージできる人かどうかが結構大きな差だと思います。たとえば、テーブルのカラム変更とかでもphpMyAdminが単純にSQLでAlterを使って変えてくれるんだ。というイメージさえできてれば環境が変わってもそれを手で打てばいいだけですよね?その方法は別にWebで調べれば出てくるので対応可能ですよね?そういった応用力につながるものだと思います。

    > 得ていく情報の種類や鮮度も自分の基準値次第となってくると、・・・
    基礎力を固めたいならOSの仕組とかは一度押さえておくと良いと思います。
    LinuxをVM上でCUIで立ち上げてみたり、WindowsAPIで、C言語でアプリ組んでみるとか。古臭くて実践に役立たないだろ!ってものの方が見通しが良く本質を理解するには向いてますね。特に後者のプログラムの方法はすごく時代遅れな方法ですが、根底の仕組みを理解するにはいい方法だと思います。
    実際、自分の周りで、実践的なものを優先して勉強した結果、エラーの原因と対策が立てられずに苦しむ方が多かったです。

    キャンセル

  • 2015/07/30 15:13

    コメントありがとうございます。
    そうだったんですね。転職する際にもかなり強みになりそうなご経験ですね。
    その際どんどん学んでいけたというのが羨ましいです。

    >>MyAdmin
    その背景に対応力を鍛えるものがあるとは、気づきもしませんでした、、
    PHPからmysqlに接続させることくらいエンジニアとして当たり前のようにやっているからかもしれませんが、しばらくは黙って支持された通りのことをこなします。

    >>Webデザインをやっていたもので、その段階でOSの仕組みについてもかなり勉強しました。ただ、そういったLinuxをVM上でCUIで立ち上げたりといったことはやってみたことがないので、触れてみようかと思います。
    根底の仕組みを知るということがもっとも近道だったりするのですね。。もっと勉強します...!!
    ありがとうございました!

    キャンセル

+2

就職に失敗して文系卒で未経験でプログラマになり、
Java,C,C++,PHPと渡り歩きました。
現在は転職し、ゲームプログラマ(インフラ・サーバサイド)になっています。


プログラム言語は「言語」
プログラムは「書いたようにしか動かない」
プログラムは「一番最初が一番難しい」

これをおまじないみたいに唱えてください。
今へこんでてもダイジョーブ。みんな同じですよ。

わかっているようでわかってない、
コンパイルすら通らない、
ただ画面に文字を出したいだけなのに、なんでこんなに躓くんだ、
自分はなんて無能なんだろうと悩むのは

最初だけ です。

プログラム言語は言語ですから、
nativeになるには時間がかかりますよ。
プログラムを初めて1年未満っていうのは、
英語を勉強しはじめて1年未満と同じです。
その状態で、ニュースキャスターみたいにスラスラ喋れる人はなかなかいないですよね。

ちゃんとスラスラ喋れるようになったら、何も考えずにコード書いてますよ。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 16:22 編集

    Coroさん
    コメントありがとうございます。

    なんというか、まったく自信の持てなかった自分にとって、どんな言葉よりも分かりやすく背中を押しておいただけたような気がしました。
    無理のない範囲で、もっともっと頑張ろうと思います。
    それでもできないのであれば、また別のやり方で1からやっていこうと思います。
    まずは1年、これからもずっと挑戦し続けていこうと思いますので、今後ともよろしくお願いいたします。

    キャンセル

+2

はじめまして。

気づけばかれこれ15年程プログラマとしてこの業界で現役働かせて頂いている者です。(今は管理メインですが)
そんな私でも未だに質問者様と同じ様な事を思う事はありますよ。安心してください。

また新人にプログラム教育などを行っている立場でもあるので良く似た様な内容で悩み質問される事もありますので少しでもモチベーションUPにつながればと思い解答させて頂きます。

以下、質問者様の投稿内容をもとに私の解答させてもらいます。
※あくまでも私個人の意見ですのであくまでも参考までに

>度重なるパースエラー
キャリア15年あってもドットが抜けている事に気づかず30分以上悩んだりする事もあります(笑
何か作る際にどんな便利な開発環境を利用していてもパースエラーなしで組めるプログラマなど皆無だと思うので気にしないでください。こればかりは慣れなので2ヶ月程度では当たり前です。
むしろどんどんパースエラーを出してください。 様々なエラーを出してください。
そうする事である時エラー内容を見ただけで、間違えた場所が瞬時にわかるようになるものです。


>著書を探す
こんなのは何でもいいです。
あくまで個人的な意見ですが著書ばかり読むから理解したようで理解できていない状況が産まれる
と私は考えます。
著書などはあくまでも入り口にすぎません。どんな本でも1冊よめば十分です。
ただし新たに始めるのであれば最新のもの、また自身が開発に使用するPCで説明がある著書を購入する事をお勧めします。初心者が著書ではまる最初の内容は開発環境のバージョン違いなどで発生する謎の現象です。
winでは動くがmacでは記載通りに記述しても動かないなどはざらです。
Webデザインでいうブラウザ依存のようなものです。

>綺麗な記述、汚い記述
良く勘違いされがちですが、綺麗な記述と良い記述は別物です。
綺麗な記述については第三者にプログラムを読んでもらうという思いやりを持って記述すれば自然と
綺麗なプログラムになります。
良い記述というのはこればかりは慣れです。fuctionを分割した方がいいのか、それともまとめた方がいいのか
同じ動作をするが、Aの記述で書いた方が動作が早いなど。

まぁ正直な所、綺麗、汚い、良い、悪いはプログラマにとっては永遠のテーマだと思います。
良いプログラムだと言われて見たプログラムが私にはとても読みづらいソースだった事もあります。
もちろんその逆で私はとても綺麗に書いたつもりでも他人には慣れない読みづらいソースな事もあります。

だからといって気にするなとは言いません。始めた時からこれらを意識して書いて来たかどうかで
後々に記載されるプログラムの善し悪しに雲泥の差がでてきます。
最初は出来なくて当然です。徐々に良くなるのです。
後、書いたものを他人に見てもらってください。そういうった知人がいなければ
書いたものを後日、時間を開けてから改めて見直してください。それだけで大きく成長するはずです。



長くなりましたがとにもかくにも、質問者様が悩んでいる事
これは先人も今まさに学んでいる方々も必ず思う所なので大丈夫です。
むしろそういった悩みを持ち学んでいるという分、他者よりもプログラマとして向いていると思います。


最後にこの業界に勉強の終わりはありません。
今学んでいる内容がが明日には過去の技術になることだって十分あり得ます。
その度について行けずに挫折したくなる事もあります。。
同じ業界でやっていくことを志している同志として是非是非諦めずに頑張って頂ければ幸いです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

+1

すこし求められている回答とは方向性がずれているかもしれませんが、
100%を目指すからできない気がするのではないかなー?と思いました。
ご自分でもおっしゃっているように『自分にできること』をやってこられたなら、なおさら。

どの世界もそうですが"完全マスター"などあり得ない気がします。
私はまだまだ若輩者ですが、こちらでいつもご回答くださる熟練の方々でも自分がその言語を"完全マスター"していると思ってらっしゃる方はいないのではないでしょうか?

出来ないこと、を見ると果てしないです。
というか、できなくて当たり前です。
(中にはそういう方もいらっしゃるかもしれませんが)独学2ヶ月で『これで食べていけるぜ!』みたいなレベルになるんであれば、苦労はしませんw
なので、この2ヶ月でできるようになったこと、の方に焦点を当てられてはどうでしょう?
あと、ダイエットとかと同じで、スランプが来てそのあと一気に理解が進んだりしますよ。

たった2ヶ月で方向転換、というのでは正直ほかの道に行っても同じ壁に当たる気がします。
取り急ぎ、というのでなければ完全にPHPを切るのではなく、その近辺で自分が出来そうなところに寄り道してもいいと思います。

なんだかまとまりのない文章になってしまいましたが、あんまり悲観的にならない方がいいよ!ということです^^

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:24

    ao_love さん
    コメントありがとうございます。
    まさに、おっしゃる通りですね。"完全マスター"などいうのは始めたての勢いというか、「なんでも作れるようになる!」という自己基準のもと形成された自分の中でのゴールのようなものだと捉えていただければ嬉しいです。

    独学2ヶ月で得られたものについても基礎の基礎を学べていない現状に、とても悲観的な意見、質問をしてしまう結果となってしまったのですが、その現状を認められない自分があって挫折を考えていたのかもしれません。
    こうやって皆様の回答を拝見して、ただ思うのは「頑張ろう」と、ただそれだけです。

    自分のレベルをよく理解した上で、きちんと線引きをしながらこれからも勉強・実践を頑張っていこうと思います。
    ありがとうございました!

    キャンセル

+1

私が、今の分野(プログラミング系)を選んだのは、面白そうだったからで、そして実際にやってみて面白いと感じたからです。

もし今取り組んでいることが好き、面白いと感じるなら、たとえ向いていないと思っても、続ける価値はあると思います。
「好きこそ物の上手なれ」という言葉があるように、好きなことなら時間を掛けられますし、努力もできると思います。その結果、たとえ不向きだったとしも、ある程度の技術力を手に入れられると思います。

逆に、好きじゃない、面白くないと感じるようならば、頑張ってもキツイだけなので、見切りをつけるのも一つの選択ではないかと思います。

余談ですが、エラーやバグはプロの現場でも割と日常茶飯事かと思われます。
その原因を探り、修正できるかどうかです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:31

    half_sleep さん
    コメントありがとうございます。

    私のこの「プログラムが好きだ」という気持ちが根底にあって、できていない現状からでる不安や焦燥感などを、実際のプログラマーの方々はどういった風に捉えてくれるのかなということでご質問させていただきました。
    今この壁を越え、努力した先のことをご存知の方からご意見をいただけることほど「頑張ろう」と思える要因はないと思います。
    もっともっと貪欲に、自分のレベルにあった学び方を考えて頑張っていきますので、今後ともよろしくお願いします。

    ありがとうございました!

    キャンセル

+1

現在、実際に仕事でプログラムを用いてるプログラマーの方が、このプログラムを用いた仕事を選んだ理由

一度もプロのプログラマーだったことが無い私が、プロでも無いのにプログラムを仕事に使うことにした理由を話します。とは言っても社内SEだったんですけど。

職場には常駐の社外のプログラマーがいて、ほとんどの同僚は彼らにコーディングを依頼してた。仕事の精度をあげようとすれば、テストなどは自分も加わった方が良かったが、がっつりプログラムする人間はほとんどいなかった。

テストデータやテストを手動で行った場合、バグが見つかった場合、テストはゼロからやり直しになっていた。自動化のためExcelを駆使した。標準関数でスクリプトやテストデータを自動生成した。

データ構造が複雑なので、オブジェクト指向を覚えたくなった。そのためにオブジェクト指向の書籍が一番多いJAVAを覚えた。Excelマクロでそれを応用した。

テストは自動実行するようにした。基幹システムの入れ替えがC#でやるというので、C#を覚えた。このあたりで、コーディングの能力で開発会社の通常のメンバーに劣ることが無くなっていた。

仕事便利にしようと思ったら、プログラムは自然と詳しくなるし、上達すればするほど新しい課題が出てくる。問題を一つ解決したら新しい課題が見えてくる。これは誰がどこにいても変わらない普遍的なことだと思う。

それで私はこう考えています。

これはゲームだ。前のステージで手に入れたアイテムとテクニックを駆使すれば、新しいステージは必ずクリア出来る。ご褒美に新しいステージとアイテムがもらえる。エンディングのあと訪れるのは”退屈”だ。エンディングを見るのが目的になるとゲームは楽しめない。

yutaishikawa_さんは新しく出来ていないことにであった時は、その問題を次々にクリアしていけばいいと思います。向き不向きがあるので、他の分野に向かわれるのも良いと思います。どの仕事をするのであれ新しい課題を楽しめる仕事を選ぶことが重要だと思います。

また、ゴールが遠すぎると達成感が得られづらいので、直近の課題をクリアする度にこれを出来るようになったと考え、結果を得られないことはとりあえず忘れてもいいかもしれません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:48

    iwamoto_takaaki さん
    コメントありがとうございます。
    〜したいから〜を覚えたっていうのはすごいですね。目的意識がはっきりとある上で、〜をするには〜が必要だ!という意識のもと、様々な言語に触れていくことが重要なのかな?と考えました。
    私の場合は、「〜をするには〜が必要」という考え方のなかでも、「これからプログラマとして生きていく上でPHPでなんでも作れるくらいになることが必要」だという遠のきすぎているゴールを追いかけていたことで、今回のようない悲観的な思考にたどり着いたのかもしれません。

    おっしゃっていただいてる"ゲームのように"一つ一つの課題を達成していく上で、結果を出すとはまた別のベクトルである「〜ができるようになった」ということを追いかけていこうと思いました。
    ご自身の経験談のもと、よい目標設定ができ、勉強になりました。
    ありがとうございました!

    キャンセル

+1

二ヶ月で向き不向きを判断するのは時期尚早と思います。
今、毎日身につけている知識がだんだん知恵として生きるようになってくるの思うので、もう少し続けてみることをオススメします。
プログラムのロジックは一つじゃないから、人の意見を聞きすぎると迷います。
結構、人それぞれの好みの部分が強いので。
全ての可能性をヒアリングするんじゃなく、自分が進もうとしている方向を示して、それに対してピンポイントでアドバイスしてもらって、自分に足りなかった考えを補完できると、次第に自分自身で、その気づきができるようになっていけると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:42

    kzyplus さん
    コメントありがとうございます。
    やはり、早すぎますかね。
    上記でおっしゃっていただいている通り、私が一番混乱してしまっているのは「プログラムのロジックは一つではない」ということです。
    プログラマーお一人お一人の書き方、癖などは個性そのもので、好みが大きく違います。
    自分の方向性をもっとはっきりと決め、自分の許容範囲の中で足りなかった考えを補完する。
    自分自身もいちプログラマーだという認識のもと、よい記述ができるよう日々学んでいこうと思います。

    ありがとうございました!

    キャンセル

+1

私も最初にプログラムの勉強をしていたときは夢の中でもコードを書くくらいのめり込んでました。
プログラマーとして10年ちょっと働いていますが(現在は自分でコードを書くことが立場上少なくなりましたが)
何年経っても乗り越えなくてはいけない壁が現れます、それこそ何時間どころではなく1週間以上も上手く行かなくて悩むこともあります。
でも、悩んで調べて悩んで、そして解決したときの快感はプログラマーの特権です(途中の苦しみもw)

そして、この業界は次々に新しい技術などが出てくるので、好奇心を満たすのは簡単ですが、全部を勉強するわけには行かないので、どれを覚えてどれは諦めるかの取捨選択も多いです(今後、何が流行って、何が廃れていくかの判断は凄く難しいです)
でも、次々に新しいものが生まれてくるので、これが楽しめる人には良い職業でしょうね。

・悩んだ末に思い通りの動きをしたときの快感を忘れられない。
・次々と新しく出てくる技術などに心が躍る。
このような人はプログラマーで生きていくのに向いているんじゃ無いかと思います。
あと、体が丈夫なことも重要かな?w

私は悩んで試行錯誤した上で解決したときの快感が好きで、この仕事に就きました。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

それなりの厚さの入門書は通読されていますか?
度重なるパースエラーとのことですが、タイプミス以外でのパースエラーは、基本知識が足りていないと言うことです。
プログラミング一般の基本知識が足りていないのか、それは大丈夫だがPHPの基本知識が足りていないのかによって、読む本も違ってくるかと思います。どの本が適しているかは人によって違うので、自分で立ち読みして選ぶしか無いです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2015/07/29 09:35

    入門書に関しては、マイナビ社の「よくわかるPHPの教科書」という書籍を購入したのですが、ツール頼りの少し古いバージョンを用いた記述が多く、参考になることがなかったので、検索をかけたり、こういったサービスで具体的な記述についてお世話になっております。
    プログラミングの基礎とPHPの基礎が別物、(わかってくると二つに一つだと思いますが)基礎の基礎をもっと固めていきます。元々HTMLやCSSしか触れたことのない人間だったので、どういった著書を最初に触れておくべきなのかというのはあまり考えた事がありませんでした。
    まず、自分のレベルに適した著書を探してみようかと思います。

    ありがとうございました!

    キャンセル

0

自分はプログラミングが好きなのでこの世界に入ったのであまり参考になるかはわかりませんが、

プログラミングとは楽をするための手段である

と考えてみるのはいかがでしょう?
極論、PHPでのweb案件の場合は、全ユーザさんの全状態に対応するHTMLを用意してそれを表示すればいいわけですが、それが「めんどくさい」ので我々はコードを書くのです。

モチベーションの足しになれば幸いです。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

私がプログラマしてるのは高校の時「あ、これできるわ」と思って好きなことやってたあとに就職するときにプログラムたぶんできるしプログラマにするかというノリですね。

パースエラーは仕方ないですよ。慣れみたいなもんですから、昔のゲームみたいに根気よくやるしかないです。
私もパースエラー大嫌いですw
嫌ならIDEを使って楽することですね。書かれてる方もいると思いますが無料で使えるのならEclipseとかNetBeansとかですね。

最近はほんとにいろんな技術が使われているので2ヶ月くらいじゃまだまだスタートライン超えてすぐくらいですよ。
間違ってるから理解できないんじゃないです。まだまだ歩いてる量が少ないから自分が行く方向が正しいのかさえ分からないんですよ。でも大体そのくらいのところだったら歩いたところ無駄にならないと思いますよ。
それにまだまだほんとにやること理解するべきことが山のようにあるので大変ですが一個一個やるしかないです。
一個一個やっていくうちにいろんな考え方が身についてだんだん応用や理解が進むようになります。

とりあえず3年くらい全力でやってみたらだいぶいろいろわかると思いますよ。2ヶ月で全部わかるようじゃアルバイトにでもやらせればいいやって程度の仕事だと思います。
頑張ってください

追記ですが、勉強が終わることはありません。どんどん新しい技術が出てきています。業界として新しいトレンドが生まれえたりもするし、この前までは全く関係のない知識が要求されたりすることもあります。
オンラインゲームよりも実のある内容がオンラインゲームより速い速度で更新されるようなもんです。飽きはしないですが勉強も終わらないです

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

2ヶ月で結論に至るのは早すぎますね・・・
何事も1、2年やらないと向いてるのかすらわかりません、
10年やって初めて一人前です。
今少しでも楽しいと感じているなら、間違えなく向いてます。

誰でも、全くわからないものをやるのは、苦痛を感じます。
わかるから楽しくなるものだと思います。

ある程度構文を覚えたなら、次のステップは、実践コードを見る段階だと思います
一番早いのは、経験なしでもOKて現場に飛び込むのが早いですね

オープンソース等で、他人の書いた物を読むと、さらに上達すると思いますよ。

私が始めたきっかけはゲームが作りたいがスタートになってます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.60%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • PHP

    19858questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

  • Java

    13503questions

    Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

  • HTML5

    3881questions

    HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

  • C

    3569questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

  • C++

    3337questions

    C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。