Jump to content

Archived

This topic is now archived and is closed to further replies.

Mr Chris

career progression as a web developer/designer

Recommended Posts

Hi Guys,

Wondering if you could offer some advice on my learning/career progression as a web developer/designer.

I’ve just completed a ‘HNC in Computing’ on a part-time basis while I’m working over the last 2-years.  Now in the HNC I covered lots of ‘Internet based’ subjects – ie html, php, MySQL etc… and want to learn more.

Now the internet is where I want to be and I want to learn more ‘internet based’ subjects, but the  ‘Bsc Computing’ (which would be the next logical step) is concerned pretty much with computing as a whole,  with very little internet learning involved, which I figure will bore me over a 3-year period on a p/t basis.

So I just want to learn about the Internet.  Sadly locally for me (I live in Windsor) there are no part-time degrees I can carry on with my study that involve the internet as a whole.

Can I ask your advice?  I’ve looked for many short courses in things like Flash, Ajax, more database stuff, further PHP learning etc... but there are not even that many short courses around.

What would you guys suggest? 

Could anyone recommend any Open Learning / University ‘internet based’ courses? or an alternative route? 

What did you guys do?

I know a lot of you will probably recommend learning from books/online tutorials, but I’m one of those people who struggle learning from books and need someone physically in front of me explaining how to do things?

I’d really appreciate [b]everyone’s[/b] advice on this.

Many Thanks

Chris

Share this post


Link to post
Share on other sites
Sorry, the PHPFreaks board is for comments about the forums and/or the main site.

Share this post


Link to post
Share on other sites
i honestly don't think there are really any good schools out there that teach you things like flash and php and ajax and stuff, right now.  I could be wrong.  I haven't looked into it a whole lot, but I know that none of the community colleges in my area really go into it.  And I've talked to several people going to college for comp sci degrees and they pretty much concur.  Hell, even a couple of high school kiddies i know complain that their computer classes teach you a few basic html tags and that's it. 

I'm sure there's got to be some good "online colleges" out there.  But at that point, you may as well do what virtually everybody else does - buy a book and/or read the manual and come to places like this. 

I suppose I could go into some really long winded theory/explanation as to the nature of web development and the correlation between lack of formal school training and freelancing market, but I'd probably even put myself to sleep. 

If you're looking for a teacher to stand in front of you, then I would look into some trade schools like ITT tech or DeVry or something.  Go for the cisco, network and a+ classes.  This isn't spot on to what you are looking for, but that would teach you things like [i]how[/i] the internet works, so learning to do web development should become a whole lot easier on the software level.  especially if you get into things like sockets. 

my 2 cents.

Share this post


Link to post
Share on other sites
My suggestion is a bachelor degree in computer science.  Learn to become a programmer,and then apply your skills to a specific language if needed.  You'll need to know data structures, database design, sql, loops, conditions, etc in pretty much any career web/internet based.  I didn't learn php or mysql in college.  But I did learn to Relational database design, object oriented programming, discrete math, software engineering, etc which I applied to what I do now as a developer. I learned php from reading around the net.  I've never too much into reading books.

Share this post


Link to post
Share on other sites
I would have to agree with that.  I think web design/programming is an extension of other languages.  I personally would never hire someone that ONLY knew HTML/PHP/SQL.  You need a firm grasp of programming basics and things like relational database design.

Share this post


Link to post
Share on other sites
University and real colleges do not have such thing as PHP and MySQL as a course - perhpas as a course extension or some special elective. If univerisities have to offer the latest trend in programming or teach just PHP only, we'll be all stuck behind coding in the same language. Much of progress in parallel processing, complex algorithm, advanced AI stuff for the web, distributed database storage are thanks to research in the field of computer science.

A computer science degree cover the breadth and the overall picture of the Internet - you just have apply your knowledge if you want to progress.

The Internet is nothing more than machine connecting on one another to transfer documents and data. Thus, in college you'll be learning the softwares that can connect one hardware and to another. A technical might teach you "Internet 101" but real university teach client-sever computing and other advanced networking topics.

PHP is nothing more than a simplified programming language. If you want to be a good PHP programming, learn the art of algorithm design and analysis. I see many newbies program in PHP and want to create their own programming languages. Well, you can but what about concepts like compiler theory, EBNF (programming langauge concepts), higher-level and low-level language, grammar parsing, etc? A truly optimize programming languge has its root in compiler construction theory.

PHP was written in C. Most built-in functions are created for newbies to programmer. I'm sure 60% use a sort() function in PHP without knowing what kind of sorting algorithm it is (it's quicksort).

Good programmers know object-oriented design, complexity of algorithms, data structure (queues, stacks, trees, graphs, sorting routines, etc). Of course, if you're not into algorithm analysis, PHP has built-in function that does it all for you!

MySQL is a relational database based on relational algebra, set theory, and perhaps some relational calculus. If you truly want to be more than just a MySQL - learn theory of storage structure (there's object-oriented based, real-time storage analysis, distributed, knowledge mining, etc).

HTML/XML - HTML is nothing more than tags that get interpreted by a software (usually web browser) that renders/display stuff. It was originally designed to transmit scientific document from one machine to another - not out of cool layouts and designs. Hence, you get all these W3C folks setting the standards for what the creators of HTML didn't forsee in the future as the Internet got popular.

Validation is more than just click this button and you're validated! It's based on parsing, grammar tree, syntax, semantic, and lexical analysis - with roots in programming and compiler theory.

I did not learn HTML, PHP, CSS, Javascript, or even MySQL in college. Why? Those are just web trends and will change soon. University provides the principle and foundation.

If you want to specialize and be practical immediately, work on your own projects and take some specialzed courses.




Share this post


Link to post
Share on other sites
well said extrovertive.  The closest thing to any web development in college was a web programming class that was added in my curriculum.  It was a half @ass class that didn't really help me at all.  In a matter of weeks they dumped html, xhtml, css, flash, photoshop, coldfusion, php, c#, data backend with no depth into any of it.  Most college work is really theory, not practical. You take what you learn and apply it.  Almost all programming I did was in Java in college. 

Share this post


Link to post
Share on other sites
[quote author=jcombs_31 link=topic=109519.msg442977#msg442977 date=1159442598]
well said extrovertive.  The closest thing to any web development in college was a web programming class that was added in my curriculum.  It was a half @ass class that didn't really help me at all.  In a matter of weeks they dumped html, xhtml, css, flash, photoshop, coldfusion, php, c#, data backend with no depth into any of it.  Most college work is really theory, not practical. You take what you learn and apply it.  Almost all programming I did was in Java in college. 
[/quote]

I had the same thing happen to me.  I took the only 'advanced web development' course my university offered, and it didn't really teach me anything.  A quick intro to XHTML, very basic CSS (no mention of the box model), one week spent on Perl, a week spent on JavaScript (with only the bare minimum of the DOM described), and that was about it.

I don't think that a computer science degree is necessary for most developers, however.  Why?  Well, I tried getting my CS degree, and failed at it.  Specifically, I failed at the assembly language course.  I'm much better at visualizing and implementing more abstract, higher level things than trying to manipulate bits.  From my experience so far, it seems that the web generally only deals with the abstract rather than the bit-level.  So, I agree that some computer theory is necessary -- the basics of oo, data structures, advanced sorts, but IMO the breadth of a computer science degree is too wide for those of us who only want to program for the web (sans Java).

Share this post


Link to post
Share on other sites
well, it really depends on the scale of development Nightslyr.  Of course you don't need a degree in CS to put together some html and css.  But, you want to develop complex database backends, shopping carts, ecommerce, etc, then I think a degree in CS is necessary to understand how to put it together.  Most people grab bits of code from here and there and have no idea how to tie it together in a complex system.  Just because code works sometimes, doesn't mean it is efficient or secure.  So again, it really depends on what you want to do.  I don't think you can be a successful developer when creating static sites. 

As far as assembly, I didn't like it very much either, but it was only 1 course so I got through it.

Share this post


Link to post
Share on other sites
1 course in ASM?  Granted, my degree was in Computer Engineering, but I think the CS guys at my univeristy had to take at least 2 ASM classes.  We had 2 assembly classes that were based off of Motorola processors and then we were also required to take a third distributed systems class that involved combining assembly and C.  Then we also had a capstone class that involved microprocessors and assembly as well.

And granted, very few people really need to know assembly as a language, but the concepts you build from working with it are invaluable.  You really get to see and learn how simple loops work in C to see how you can improve efficiency.  (not that I really remember some of that now, but it was interesting at the time and has pushed me to really think about my loops and whatnot executes. 

Share this post


Link to post
Share on other sites
[quote author=jcombs_31 link=topic=109519.msg443060#msg443060 date=1159451475]
well, it really depends on the scale of development Nightslyr.  Of course you don't need a degree in CS to put together some html and css.  But, you want to develop complex database backends, shopping carts, ecommerce, etc, then I think a degree in CS is necessary to understand how to put it together.  Most people grab bits of code from here and there and have no idea how to tie it together in a complex system.  Just because code works sometimes, doesn't mean it is efficient or secure.  So again, it really depends on what you want to do.  I don't think you can be a successful developer when creating static sites. 

As far as assembly, I didn't like it very much either, but it was only 1 course so I got through it.
[/quote]

True, although I don't think it's as binary as you're stating (i.e. CS degree = dynamic sites, no degree = static sites).

I find it unfortunate that there isn't a sort of middle road, academically speaking, to take.  A full CS degree has a lot of things, that, while interesting, don't seem to be useful for the web (assembly, compiler design, threaded programming...of course, in my ignorance, I could very well be wrong).  Associates degrees seem as though they only focus on getting from point A to point B, making students proficient in their language(s) of choice, but perhaps not able to see the larger, abstract picture.

So, in a nutshell, I do think that top-down programming theory is important to anyone who wants to write scripts/applications for the web, but some of the more advanced concepts don't really seem necessary.  A crash-course in efficiency (some basic BigO) and security (which my university never touched on) would be nice, too.

I feel fortunate because I had learned some theory before the assembly language course.  I couldn't code a stack in C++ at this point, but I know what the data structure is.  Actually, this topic has tempted me to find my old notes....

Share this post


Link to post
Share on other sites
I'm not trying to say you can't create a dynamic site without a degree, I'm saying the education you get from a CS degree will make you a better programmer overall and I think is necessary to become an advanced programmer in any language, whether it is web scripting and application programming.

Share this post


Link to post
Share on other sites

×

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.