SitePoint Sponsor

User Tag List

Page 1 of 4 1234 LastLast
Results 1 to 25 of 98
  1. #1
    SitePoint Member
    Join Date
    May 2010
    Posts
    14
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    How did you guys become competent at PHP

    Hey,

    I've read a few books and built a few sites but I still feel clueless.

    How did you guys develop competence?

    What did you practice? What opportunities presented themselves? What path did you take to (partial) mastery?

    I'm debating contributing to a few Open Source projects to get my chops up. Any other ideas?

  2. #2
    SitePoint Enthusiast
    Join Date
    Oct 2009
    Posts
    58
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I actually got a fulltime job as a PHP Programmer, that was the best thing that happened to me in terms of improving my web development skills, but also you have to be lucky. Not every company introduces good software development practices and has good programmers that you can learn from.

  3. #3
    SitePoint Member
    Join Date
    Apr 2010
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    practic makes men perfect, first u make a small programm thn thy to improve, again improve n again think is it some thing in tht problem can be improve tht the only secret

  4. #4
    SitePoint Zealot
    Join Date
    Jan 2006
    Location
    Gold Coast, Australia
    Posts
    123
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Build something that is beyond your skill level. Don't give up on it, persevere till you figure out how it is done and go forth and build it.

    Through this process you will realize how much you are capable off, and what you can accomplish. To reiterate the fact, do not build something that you are familiar with. You need to throw yourself in the deep end.

  5. #5
    SitePoint Enthusiast
    Join Date
    Sep 2007
    Location
    Pakistan
    Posts
    36
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    It was not an over night process. My degree in Computer Sciences helped me build my confidence and above all I able to think at the abstract level. When you are able to think the solution, what ever tool you use will do it for you.

  6. #6
    @php.net Salathe's Avatar
    Join Date
    Dec 2004
    Location
    Edinburgh
    Posts
    1,397
    Mentioned
    64 Post(s)
    Tagged
    0 Thread(s)
    I'll tell you when I get there.
    Salathe
    Software Developer and PHP Manual Author.

  7. #7
    dooby dooby doo silver trophybronze trophy
    spikeZ's Avatar
    Join Date
    Aug 2004
    Location
    Manchester UK
    Posts
    13,806
    Mentioned
    158 Post(s)
    Tagged
    3 Thread(s)
    Quote Originally Posted by Salathe View Post
    I'll tell you when I get there.
    me too.

    There is a PHP course coming up on SitePoint so it might be worth having a look and enrolling.
    Mike Swiffin - Community Team Advisor
    Only a woman can read between the lines of a one word answer.....

  8. #8
    Theoretical Physics Student bronze trophy Jake Arkinstall's Avatar
    Join Date
    May 2006
    Location
    Lancaster University, UK
    Posts
    7,062
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by wackyjoe View Post
    Build something that is beyond your skill level. Don't give up on it, persevere till you figure out how it is done and go forth and build it.

    Through this process you will realize how much you are capable off, and what you can accomplish. To reiterate the fact, do not build something that you are familiar with. You need to throw yourself in the deep end.
    That is fantastic advice.

    I think the most important step in becoming proficient at a programming language is to make an effort not to look at tutorials. There are many reasons behind this, but the main is that tutorials are like stabilisers on the bike of PHP - if you don't lose the stabilisers, you can't really ride the bike.

    In fact, the above sentence of mine is a little black and white. What you need to do is try and do a personal project yourself and, if you can't, find is a tutorial which explains the theory behind it - but not giving you the code itself. If you can't find one, ask on Sitepoint and we'll help.

    For example, a login system isn't easy if you haven't used sessions before, so avoiding tutorials completely won't do you much good. However, copying and pasting code won't do you any good at all.
    Jake Arkinstall
    "Sometimes you don't need to reinvent the wheel;
    Sometimes its enough to make that wheel more rounded"-Molona

  9. #9
    SitePoint Guru bronze trophy TomB's Avatar
    Join Date
    Oct 2005
    Location
    Milton Keynes, UK
    Posts
    989
    Mentioned
    9 Post(s)
    Tagged
    2 Thread(s)
    I learnt the basics of programming when I was about 13--I'm 24 now, by the way--from modding the game Jedi Knight, ah fun times. I made several gaming related sites after this and used php. I learnt the basics but made all the classic amateur mistakes. I went to university and got a degree in Software Engineering which certainly helped me get a good understanding of OOP, though I didn't do much PHP while I was there.

    Since then I've had 2 jobs as a full time PHP programmer which has helped advance my coding skills immenseley. When you're doing it all the time, you get a much better feel for what's 'correct'. I like my current job, I deal with lots of small sites rather than one big one like my last job. This lets me experiment. For example, on one project I can try Active Record, on another Data Mapper and compare the differences, first hand experience on real world projects. This is where the majority of my skillset has come from.

    I have also learnt a lot by reading the PHP Application Design forum here. Some of the discussions there are really interesting.


    For initially learning programming I always found the best method is to set yourself a goal and figure it out. "I want to make a script that..." then just work out how to do it.

  10. #10
    SitePoint Wizard
    Join Date
    Feb 2009
    Posts
    1,006
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm to inquisitive.

    467 of my posts were questions. And counting.

    I'm learning a lot since I arrive here, and I'm starting to understand the questions that the gurus here provide. I think we can call this progress.

    A long way I have to go but, I'm just wondering, have any of the gurus here present, started by asking all those questions, or you already knew a lot when you arrived here?

    I'm starting to feel bad about it, I mean since 2009 and I still can answer to others questions... I only have doubts and more doubts... hope that when I arrive to post number 3000, I can have some answers as well.

    Márcio

  11. #11
    SitePoint Wizard bronze trophy Immerse's Avatar
    Join Date
    Mar 2006
    Location
    Netherlands
    Posts
    1,661
    Mentioned
    7 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by wackyjoe View Post
    Build something that is beyond your skill level. Don't give up on it, persevere till you figure out how it is done and go forth and build it.
    Absolutely.

    I spent a while doing tutorials and writing really simple scripts first, just to learn the absolute basics, then I decided to build a banking website (i.e. where you can do payments, view statements etc.).

    I never did show it to anybody, but it really helped me learn a lot more than from just trying out the simpler tutorials.

    Then I built a CMS, and another. Then I got a job as lead developer/ project manager at a small PHP shop where my PHP and general programming knowledge increased vastly.

    This way of learning can be very frustrating, but as wackyjoe says: stick with it.

    So, you need to define a project that will challenge you. And then try to complete it. Oh, and it's fine to ask for help when it's needed That's why SitePoint is so cool!

  12. #12
    SitePoint Enthusiast
    Join Date
    Sep 2007
    Posts
    36
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I was lucky

    I started for a company with a philosophy of... "If we need it you learn it and code it"

    No proper training as such but working as professional developer now

  13. #13
    SitePoint Wizard bronze trophy
    Join Date
    Jul 2006
    Location
    Augusta, Georgia, United States
    Posts
    4,151
    Mentioned
    16 Post(s)
    Tagged
    3 Thread(s)
    I believe the thing that has helped me grow the most is working with others and their code. While you may not agree with all decisions in every decision there is something new to learn and understand. In that respect I think an essential part of professional growth is to avoid isolation and work with others. Tutorials and books are great for learning the fundamentals but once you get beyond that point nothing beats working with others to solve unsolved problems.
    The only code I hate more than my own is everyone else's.

  14. #14
    SitePoint Enthusiast
    Join Date
    Nov 2008
    Posts
    27
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Try w3schools tutorials and "PHP & MYSQL Bible" for learning PHP. I find that the best way to practice PHP is to build a site. There are several free databases floating around(like quotes or baby name databases), you could try building a simple local site using them.

  15. #15
    From Italy with love silver trophybronze trophy
    guido2004's Avatar
    Join Date
    Sep 2004
    Posts
    9,500
    Mentioned
    163 Post(s)
    Tagged
    4 Thread(s)
    Quote Originally Posted by dahouse View Post
    I still feel clueless.
    I won't repeat the great advice already given, but let me ask you a question:
    What is it your feel clueless about?

    If you already built some sites, then you apparently have mastered some PHP skill. Lots of the people that come here for the first time never arrived that far. So it might be helpful, and you might get even better advice, if you could tell us a little bit more about your doubts.

  16. #16
    SitePoint Member
    Join Date
    May 2010
    Posts
    14
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm not completely clueless, I just don't have that gut feeling of what's right and what's bad practice.

    When I write code, I don't know if I'm doing it the best way possible.

    I know enough to get the job done, I don't know if I'm getting it done right.

    I don't know if my applications would scale, I don't know if I have security holes. I don't know how to squeeze every bit of performance juice out of an application.

    I know how to design a basic application, I could write a blog, but I have no idea how, say, Drupal works....

  17. #17
    Keeper of the SFL StarLion's Avatar
    Join Date
    Feb 2006
    Location
    Atlanta, GA, USA
    Posts
    3,748
    Mentioned
    72 Post(s)
    Tagged
    0 Thread(s)
    Competant is about the best i could say my skills are.
    I'm nowhere near the guru that many here are.

    I have to agree with what joe said; build something outside your comfort zone. Force yourself to learn something new.
    I've never actually been employed as a full time programmer (though i would love to be), but I've done websites for friends (and a couple of clients), and what i find best is to tell them "If your website could do anything you wanted, what would it do?" and then try to give them everything they want.

    I should preface this by saying I do have a BS in computer science, so reading language documentation isnt a strange concept to me - which means i can stick my nose into the PHP manual and pick up the basics what i want to know.

    As I have often said; Programming is 99.9% theory and 0.1% syntax. If you learn how to -program-, then being competent at any language is just a question of putting your program into the correct syntax.

  18. #18
    SitePoint Addict dnordstrom's Avatar
    Join Date
    Jul 2006
    Location
    Amsterdam
    Posts
    337
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)
    I learned HTML when I was 12 and the old ASP when I was about 13. Moved on to C/C++ during age 15 after I'd gotten sick of the ASP code. C++ was fun at first but I found that I wanted to code for the web and started learning PHP using tutorials online.

    From there on, I wrote hobby projects, read up on design patterns and got a job as a PHP developer at an agency. Now I'm running my own company, still doing PHP.

    The most important part in my opinion is to keep learning new stuff all the time, never stop. Learn something every day. Read a book, check this forum and subscribe to interesting RSS feeds.
    Daniel Nordstrom. of. Nintera(ctive)
    -- Featured post: Part 2. Writing NI.JS JavaScript
    ----- Follow me on Twitter. Got project? Contact me.
    -------- SitePoint: Community GuidelinesBe A Great Member

  19. #19
    SitePoint Evangelist
    Join Date
    Sep 2006
    Posts
    428
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    My girlfriend would say that all you have to do is cuss at your computer a lot!!

    Seriously though, I like the jump off the deep end approach. I spent many a nights awake trying to solve coding problems for projects. As others have said, the learning never ends, I still learn new things every single day.

  20. #20
    SitePoint Wizard
    Join Date
    Apr 2007
    Posts
    1,399
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    As long as you have good fundamental programming knowledge then I'd say few books would do it. At the end, the programming languages are either structured/script like language or Object Oriented. So for me I'm already confident in Java but I'm sure 2~3 books will enough for me to be C# programmer. I'd say programming concept is the part that takes long time to learn.

  21. #21
    Floridiot joebert's Avatar
    Join Date
    Mar 2004
    Location
    Kenneth City, FL
    Posts
    823
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Trial and error. Cruising forums with an "anything you can do I can do better" mindset. Realizing when I'm wrong, even if I don't admit it. The PHP site manual. Open source projects. Junker computers turned servers at home. A couple of personal websites. Lots of reading. Focusing less of who said what, and more on what they said. Giving up a few years of having a "life".

  22. #22
    SitePoint Enthusiast Mounty's Avatar
    Join Date
    Mar 2008
    Location
    UK
    Posts
    90
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    as other said, challenges yourself with new projects beyond your current capabilities. I also like to skim through programming books, like say 1 per week or so and write down anything that seems useful. You can pick up a lot of new stuff (like design patterns, libraries) even without manually working through the code examples yourself.

  23. #23
    padawan silver trophybronze trophy markbrown4's Avatar
    Join Date
    Jul 2006
    Location
    Victoria, Australia
    Posts
    4,108
    Mentioned
    28 Post(s)
    Tagged
    2 Thread(s)

  24. #24
    SitePoint Guru
    Join Date
    Oct 2006
    Location
    Queensland, Australia
    Posts
    852
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by dahouse View Post
    I'm not completely clueless, I just don't have that gut feeling of what's right and what's bad practice.

    When I write code, I don't know if I'm doing it the best way possible.

    I know enough to get the job done, I don't know if I'm getting it done right.

    I don't know if my applications would scale, I don't know if I have security holes. I don't know how to squeeze every bit of performance juice out of an application.

    I know how to design a basic application, I could write a blog, but I have no idea how, say, Drupal works....
    All those things you just mentioned come down to experience. No tutorial or book can really help you with that. I've haven't coded a single PHP website or application in the last year or so. All I've been doing is implementing concepts and challenging myself. This gives me practical experience without committing to a project.

    I also suggest reading the documentation of various frameworks such as CakePHP, to see how they tackle common problems, from the MVC pattern to error handling. It all helps.

  25. #25
    SitePoint Wizard
    Join Date
    Feb 2009
    Posts
    1,006
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you want to became a good PHP programmer and want to know how do to it, I would advice to go into the next gas shop, and grab one of those book titled: "Thinks you need to know in order to make your life better - the 10 top sentences" - something like this.

    So, in order to became a good PHP programmer you need:

    Quote Originally Posted by Greg Winiarski View Post
    I actually got a fulltime job as a PHP Programmer, ...
    TIME


    Quote Originally Posted by al_aeena View Post
    practic makes men perfect, ....
    PRACTICE (with the time you have);


    Quote Originally Posted by wackyjoe View Post
    Build something that is beyond your skill level. ...
    AMBITION on knowing always more.

    Quote Originally Posted by Salathe View Post
    I'll tell you when I get there.
    Quote Originally Posted by spikeZ View Post
    me too.
    A little bit of MODESTY;

    Quote Originally Posted by oikram View Post
    I'm to inquisitive.
    Don't having afraid to ASK.

    Quote Originally Posted by oddz View Post
    I believe the thing that has helped me grow the most is working with others and their code.
    find some FRIENDS. (I'm exactly lacking this at this moment btw. programing alone for far to long)


    Quote Originally Posted by dnordstrom View Post
    ... keep learning new stuff all the time, never stop.
    Again:
    AMBITION on knowing always more.

    Quote Originally Posted by sg707 View Post
    As long as you have good fundamental programming knowledge then I'd say few books would do it.
    learn the FUNDAMENTALS.

    Quote Originally Posted by joebert View Post
    Trial and error. Cruising forums with an "anything you can do I can do better" mindset. Realizing when I'm wrong, even if I don't admit it. The PHP site manual. Open source projects. Junker computers turned servers at home. A couple of personal websites. Lots of reading. Focusing less of who said what, and more on what they said.
    be BRAVE on trying.

    Quote Originally Posted by joebert View Post
    Giving up a few years of having a "life".
    be ready for SACRIFICE

    Quote Originally Posted by Wardrop View Post
    All those things you just mentioned come down to experience.
    Again, Let the TIME form you.

    Now, all we have to do, is to pick on ancient guy book, and find those bold words on their books, and quote them.

    Ready-made, we have just create a "How can you be a better php programmer" book ready to be sold. With Confucius preface.


    Márcio


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •