Jump to content

Self Taught Or Educated In PHP


graham23s

Self Taught or Educated?  

181 members have voted

  1. 1. Self Taught or Educated?

    • Self Taught
      171
    • Went to school/college
      8
    • Online courses
      3


Recommended Posts

[quote author=SharkBait link=topic=119164.msg496655#msg496655 date=1167891162]
Now if I could only self-teach myself graphics for web design I would be set!
[/quote]

I know that feeling! A buddy of mine is our designer here at the university, and I take a ton of ideas from him, and I've finally gotten to the point where I can duplicate almost anything he can do or draw out, but I still lack that initial creative genius that allows me to create those web masterpieces from scratch :(
Link to comment
Share on other sites

  • Replies 96
  • Created
  • Last Reply

Top Posters In This Topic

I'm self taught at PHP, but originally I got a book on Blitz Basic for game programming. If you think about it, all languages are really the same at the core, with variables, ifs, whiles, etc.
PS. Now I know Basic, C++(sorta), PHP, [url=http://www.gamemaker.nl]GML[/url], Actionscript, Python, (X)HTML, CSS.
I think that's it...
Link to comment
Share on other sites

[quote]PHP is so easy pretty much anyone can pick it up fast with some examples and tutorials you could do PHP in a week no worries ... that's why i love it Smiley[/quote]
That might be true in some instances, it took me about 6 months, before I even got intermediate.  That was LITERALLY 16 hours per day, from 7:00 in the morning until 1:00 at night, doing nothing but studying and building test site's.  It depends on the person, and whether or not they ever had previous programming experience before starting (in my opinion).
Only a few people I know, learn it that fast, and it was still about 4 weeks, before they could do php as well as they could wipe there butt.

As for self-taught versus formal education, I am 100% in agreement with crayon violent, after some trial and error, and help from a lot of other developers, you learn to do things the "right" way, instead of the way they teach you.  I seem to notice a formal eduction they don't keep up-to-date with the current teachings.  so they don't always teach you waht you need to know, and this career isn't about knowing something specific but about knowing what to know (which is what I am learning recently), know what to learn and what not to learn.  I personally was self taught, but then again I had a shitload of teachers (the whole php freaks community, and a few friends).
My first website (shitty design), took me through building a huge backend, whcih took me (literally 6 weeks), to do a basic website with some adding/editing/deleting capabilities and half ass admin panel.  It was for leanring the client new that, and I did it for free.  So when it was over, I came out tripled in php experience, but still sucked until I gained more experience.  Still far from knowing what I should.
Link to comment
Share on other sites

  • 2 weeks later...
I am self taught in everything IT related, which probably shows now and again :D

I also have to add that a lot of people who I have met in the industry and I don't just mean PHP or web/software development who have pretty long letters after their names tend to know absolutely nothing or extremely little. I know a guy who is considered an IT consultant and is a registered member of an IT chartered body as an IT Professional who, yes knows how to use Excel and a little bit of Access but doesn't even know simple things like CDrom drives can be taken out of one computer and used in another.
Link to comment
Share on other sites

i'm self-taught, starting with PHPFreaks tutorials (shameless plug there).  the reason i'm still around here is because i'd like to give something back, and the questions on here are often a fair bit easier to solve than what i'm currently looking at (that's a frequent reason for a stop here) - gives me a feeling of accomplishment.  that's not to condescend anyone's issues; i just mean there are a lot of people who just need a sober second thought on their code or a brush-up on the basics.

unlike many of the others here, IT isn't actually my day job.  it just started as a hobby, turned into a money-maker, and is (unreliably) putting me through school.  that's for the "Get to Know your Fellow Coder" thread, though.
Link to comment
Share on other sites

  • 3 weeks later...
[quote author=worldworld link=topic=119164.msg538696#msg538696 date=1172468368]
I have my view point that one should get educated from some PHP Developer with high skills and then start learning by his own way...  :)
[/quote]

To a point, I'll agree with this. I definitely think someone seriously interested in web application development as a profession should get some college level programming courses under their belt. Basically, you want to make sure that you understand the application design techniques and theories governing the way we code. Running through PHP tutorials will not do that. Don't believe me, just peruse some of the discussions on this board. ;-)

I have heard recently by one of the directors of an IT department of a state school nearby that the definition of a "good programmer" that they have held to for years is not how well they can code in C, C++, C#, Java, etc, but rather someone that knows the theories and design principles and can apply them to any language you throw at them.
Link to comment
Share on other sites

Self-taught most of C++ as a sophomore in high school.  Took a JC course in VB as a senior in high school, mostly to get extra credits and keep myself on task.

Between those two languages, I had enough experience that I could recognize similar language concepts when they were thrown my way in college.  Officially, I learned C in college, but it's nothing I couldn't have learned on my own.  After all, recognizing and knowing the syntax is about 90% of learning a language.  Learning when to apply certain language constructs is another 9%.  The last 1% is discovering the more subtle things, such as the difference between:
[code]int foo(const int *bar);[/code]
and
[code]int foo(int const *bar);[/code]

Note that I said [i]learning a language[/i], I said nothing about learning how to program.  Most individuals, while learning a language, will also learn how to write basic to intermediate programs.  Almost all of them will not know how to do it efficiently, however, without previous experience or a mentor.

When I entered college I knew how to write fairly complicated, although still basic, programs.  The valuable things I learned in college about programming are abstract data types, algorithm analysis, computer architecture, program design, how to write a compiler, how to build a CPU, etc.  Most of the concepts touched upon in those types of classes will remain unknown to a programmer until someone else tells them they exist.

So for the poll I'd have to answer self-taught and went to college.  I would have gone far on my own without having ever gone to college, programming comes naturally and easy to me, but the introduction to foreign concepts in college has proved invaluable.  I may have come across and learned many of them in due time, but college accelerated the process.

[quote author=obsidian link=topic=119164.msg539093#msg539093 date=1172508362]
I have heard recently by one of the directors of an IT department of a state school nearby that the definition of a "good programmer" that they have held to for years is not how well they can code in C, C++, C#, Java, etc, but rather someone that knows the theories and design principles and can apply them to any language you throw at them.
[/quote]

I agree.  In addition, good programmers are natural problem solvers as well as inherently lazy.  Programming is nothing more than solving problems with a unique tool; so if someone is lacking in general problem solving strategies they will not a good programmer make.  As for the lazy, a good programmer has to be diligent in their methods and solving a particular problem can be hard work; but once you've written the solution you can sit back, relax, and relish the automated glory that is your creation.
Link to comment
Share on other sites

[quote author=roopurt18 link=topic=119164.msg543048#msg543048 date=1172904949]
In addition, good programmers are natural problem solvers as well as inherently lazy.  Programming is nothing more than solving problems with a unique tool; so if someone is lacking in general problem solving strategies they will not a good programmer make.  As for the lazy, a good programmer has to be diligent in their methods and solving a particular problem can be hard work; but once you've written the solution you can sit back, relax, and relish the automated glory that is your creation.
[/quote]

Right on. This is one of the reasons it cracks me up to see some of the comments in the "introduce yourself" thread. Many people think that because they can develop a blog or forum from scratch or get an HTTP request to run properly or any other number of individual tasks, they are [i]great programmers[/i] or [i]great at PHP[/i]. Simply being able to get something to work does [b]not[/b] mark someone as a good programmer. As roopurt stated, and I agree with 100%, one of the marks between the average and good programmers is the mark of optimal coding and style. While I'm one of the [i]self-taught[/i] crowd, very few people who are [b]entirely[/b] self taught in every area of programming reach the advanced level in my estimation. Those who have had some basic software or programming training (whether or not it's web related) often have that extra bit of dedication and design expertise that pushes them over the top.
Link to comment
Share on other sites

[quote author=obsidian link=topic=119164.msg545433#msg545433 date=1173187923]
one of the marks between the average and good programmers is the mark of optimal coding and style.[/quote]

Just to elaborate on this comment, I couldn't agree more.  I've seen some programmers go "over the top" trying to optimize something for [i]minimal[/i] gains and sometimes even losses.  A lot of times these optimizations come at the cost of mangled or very difficult to read code.

It's always nice when you see that someone spent good hours optimizing a section of code to be 20% faster.  It's even better when you look at the bigger picture and show them that particular piece they optimized accounted for less than 1% of execution time in a program that takes an average of 2 seconds to complete a given task.  Big whoop.

One of my favorite examples that I experience first hand came at work.  As I've stated before, our Visual FoxPro server application sends data to the web for our sister application to process.  This is software for home builders so one of the functions online is to allow home buyers to shop for housing options online.  When I first started, the process of uploading and importing the data to the web took, for some clients, as much as 20-30 minutes.  Some of our clients were exporting ~40MB of data, which can take a while to upload.  Then the server has to kick in and import the data, which took as long as 15 minutes for some clients.

Step 1 in optimizing:  Zip the data before uploading it.  This is one of those slap-your-forehead-and-say-"DUH" moments.  I don't know why the previous developers weren't doing this.  That 40MB upload dropped down to 1MB.

Step 2 in optimizing: Look at the import process.  I noticed from import logs the import was spending about 15% of its time importing into direct-mapped tables on the web.  The other 85% was spent building a gigantic, super-table of housing option costs for when the home buyers browsed online.  Now, this information was already present in the other tables being imported, so I assumed compiling it into a single table was with the intent of avoiding queries with large numbers of joins and to increase performance.  Here's the kicker, as a buyer, it would take as long as [i]30 seconds[/i] to pull the information out of this super table and display a page to the buyer.  My favorite was selecting a category, waiting 30 seconds, and then having a display of "No options found within this category."  The solution?  Drop the table and use table joins when the buyers browsed options.  Option browsing for buyers loads almost instantaneously.  The actual importing of data by the cron script on the web now only takes 2 to 3 minutes to run.

So now the whole process of importing data to the web takes only a couple minutes, when it used to take almost half an hour.

Link to comment
Share on other sites

[quote author=WebGeek182 link=topic=119164.msg552391#msg552391 date=1173918094]
Self taught.

Let's be honest, they don't teach you THAT much in college. (Even though I DID go to college.)  :D
[/quote]

I would take a slightly different approach to that, now that I'm back working in the college realm: the [b]do[/b] teach you that much in college, but the average college student refuses to [b]learn[/b] that much while there (I include myself in that group, too) ;)
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.