Welcome to WebmasterWorld Guest from 126.96.36.199
I'm completely new to Design / Development, but I have an extreme desire to learn. As far as a specific career, I want to be able to dabble in design and be able to make competant websites, but my focus will be web-based programming. I have many different ideas for websites, and I want to learn to make these ideas a reality. They require very specific user interactivity.
I would like to pursue the Master CIW Enterprise Developer(Enterprise Specialist) Certificate.
I guess my questions for you guys would be:
1) Are there any online schools that teach a specific path to this certificate, or am I going to have to locate a university to accomplish this goal? If so, what school do you reccomend?
2) Do you guys have any tips for a aspiring developer?
3) I was told by a friend to start by learning html, photoshop, dreamweaver, css, php, is this the correct learning order?
Any insights you may have would be greatly appreciated. Thank you.
In my case, my aptitude lies with giving advice instead of building actual websites, so here goes ;-)
- schools. Well, this forum combined with your own experimentation and a lot of Google searching have way more knowledge than you'll get in any certification, bachelor's or associate's degree program. If you're a self-starter who can learn outside of a formal structure, just dive in first and see if you like it. If you find later you need certification, that is always out there, but frankly, I think that what is probably better is something more general than a web-oriented certification (i.e. a CS degree, a marketing degree, etc). That said, I would say a large % of the people here (the vast vast majority, learned everything they know about the web outside of a classroom).
- tips for aspiring developers. Start building. If you run out of ideas, come here and answer questions. But, you say, if you knew how to answer the question, you wouldn't be here? Not so. Find questions that sound interesting and then do the research and fiddling until you figure out the answer. Great way to learn.
- order of learning. Depends on what you want to end up as. Photoshop is more the design end and, though I'm an okay programmer, I can't do much of anything in Photoshop. I'm just not a design type. Others build sites like crazy and make fortunes, but will never really learn how to program.
Personally, I have never really learned how to use Photoshop or Dreamweaver, but I'm pretty decent with PHP.
If you have access to all the tools you mentioned, just fire them up and get going. Start with paper and pencil and sketch out your site architecture and look, then start creating it in Dreamweaver and Photoshop. When you get stuck come here. As you go on you may find yourself frustrated with the limitations of a tool like Dreamweaver and you may want to learn some programming, but perhaps not. There are some moderators here who make a nice living creating everything they need on FrontPage (and an image-editing application)
If you don't own Photoshop, you might want to look at Paint Shop Pro. I've never used it, but it is supposedly 80% of Photoshop for 20% the price (or something like that).
I would like to pursue the Master CIW Enterprise Developer(Enterprise Specialist) Certificate
What's a Master CIW Enterprise Developer (Enterprise Specialist)? Never heard of it.
Ok, never mind, looked it up on Wikipedia - 1 paragraph that really tells me nothing. Finding that suspicious, I ran my favorite search for things that I've never heard of before that sound a bit suspicious:
"xyz scam" (Substitute mysterious unknown for "xyz").
I'd suggest you do the same search:
[edited by: encyclo at 1:38 am (utc) on June 17, 2007]
[edit reason] moved from duplicate thread [/edit]
3) I was told by a friend to start by learning html, photoshop, dreamweaver, css, php, is this the correct learning order?
I would suggest learning basics for HTML>CSS then PHP . Once you have the basics down for each move on to the advanced stuff, they are intertwined and have to be used together to build affective websites.
As far as the software goes you'll get hundreds of opinions on that. Personally I use coffeecup which is a text editor, you work directly with the code. It's not the easiest path but highly beneficial in the end.
For graphics I use Ulead Photoimpact , a unknown to many people but for web graphics and design it excels. There's many built in components specifically geared towards making web pages, you could if you wanted even build web pages with it but it's not something I would recommend.
1 paragraph that really tells me nothing. Finding that suspicious,
Some thoughts on the CIW thing
I was trying to drive at something similar. Looking at the CIW website, it appears obvious to me that the entire CIW thing was invented by the company that sells the courseware and runs the exams. In other words, they are basically creating expensive courseware and exams, and then creating a certification to drive their own market. It's nice that it's "vendor neutral", but my feeling on this is that it is not technology neutral. What do I mean by that? Simply put, I learned more about programming in PHP by taking a course on Scheme at UC Berkeley than I ever would by taking a course on PHP anywhere.
Why a course using Scheme? I hadn't done any programming professionally since before object-oriented programming and lots of over paradigms, and the UCB course wasn't *on* Scheme, it merely chose Scheme as the language of teaching. The course itself was rather more abstract, teaching basic concepts of programming reasoning, but not teaching any language syntax at all (actually a tiny bit, but Scheme is such a syntactically simple language that syntax made up about 10% of the course, as opposed to the 50-90% it would occupy in a Java course).
But why is that better? Don't I usually use PHP these days? Well, yes, but every single thing I learned in that course could be applied to C++, Ruby on Rails and, in some cases, doing the laundry.
So, making a short story long here, I think the best way to learn tech stuff is with a two-pronged approach
1. Find a project that interests you and start coding/designing. That's what I did for C++ and PHP (and FORTRAN a million years ago). I'm not a great programmer mind you, but that's how I learned enough to do what I needed.
2. Take it to the next level with courses that focus on more abstract concepts that you can apply more broadly. My coursework has been in Pascal, Scheme, PDP-11 assembly language and maybe one more that I have never ever used outside of a course. Makes no difference whatsoever. If you know the concepts, learning the particulars of any one programming language isn't that bad. Once you get to a certain point, you might need some more training, but that's probably best achieved by joining a group project (say an open source project, which is what I did for a while after my PHP skills were sort of okay) and contribute code. You'll get good feedback and see how serious and, sometimes, bad programmers do it.
Some other thoughts on what to learn
What I just said about programing might go for design. Yes, learning Photoshop is fine, but Photoshop is just a tool. If someone asked me: "I'm planning on building some cabinets. Should I learn woodworking on a Dewalt or a Bosch table saw?" I would say that person is missing the point. You want to learn about wood and joinery and how it goes together and what looks nice. Once you know that, there isn't that much difference between a Dewalt and a Bosch. Graphics programs are a fair bit more varied than saws, but the same idea applies. So as for programming, sure, learn how to use Photoshop, but there's nothing magic about Photoshop (okay, actually there is, but not significantly more so than other good graphics programs). The key (and here I am ignorant) is to learn basic design principles and, frankly, most of these are not only not Photoshop specific, they're not even specific to the web. For example, the best book on typography [typebooks.org] was originally written before anyone really cared about the web (2nd edition 1997, but I'm not sure when the first edition was). And, if truth be told, Aldus Manutius (1449-1515), could probably teach you more about typeface and design than anyone working on CIW courseware.
Some thoughts on the order of learning
As I said, just start in on a project. The poster above said to learn HTML+CSS and then PHP. That's how most people probably started. I actually started using a free WYSIWYG editor from AOL, then learned HTML and CSS and PHP. Like I said, I got a copy of Dreamweaver and have just never learned how to use it. I find it useful only for hand-coding long tables and since my long tables almost always come from a database, I rarely use it.
That, however, is neither here nor there. If you want to focus on the design end, you'll eventually want to learn enough HTML and CSS to implement your designs (even if, ultimately, someone else is doing the coding, you'll at least want to understand), but you can pick that up as time goes by. Similarly, if you want to be a web programmer, you should learn some basic principles of usabilty and design, but you can pick that up as time goes by.
But I just want to get a job
Go to someplace like Craigslist and look at the listings. Search on CIW and "Certified Internet Web Professional" Do you find *any* job listings asking for or honoring this certificate? I suspect it will be tough going. I believe that what you will find is that they will ask for one or both of the following
- a portfolio of sites you've worked on
- a university degree in a related field.
In most cases, they are interested in your skills, and in some cases in your degree. Check out this, from an ad currently on Craigslist:
Q: Which coding languages does ProspectiveEmployer use?
A: ASP.NET 2.0, SQL Server 2005, C#, AJAX, XML, and some basic HTML and Java scripting.
Q: Do I have to be a pro at all of those?
A: Come onů You're smart enough to figure out whatever languages you need to learn!
That last Q&A is exactly what I was talking about above.
Nothing against certifications, but I just wonder if that's what you're really after.
In the web development industry no sooner do you learn something than it changes, it's just such a fast moving environment. Because of this your ability and experience are what really counts, espeialy your ability to keep on learning.
ergophobe - I credit FORTRAN (hey, only thirty years ago!) for any ability I have to visualize site architecture and set up logical navigation paths.
Some great responses here that make even an "oldbie" want to go out and learn something new.
[edited by: Beagle at 5:59 pm (utc) on June 26, 2007]
My first and last paid FORTRAN gig was in 1983-84. Sounds like a while ago, but I was young, and, I'll have you know, I'm even younger now. I've aged well.
But yeah, I think the way you break things down in your head, the skill of thinking like a programmer, is useful way beyond any given language if you learn it a couple abstraction levels up. I've been a historian almost my entire working life and I still find that things I learned programming FORTRAN etc come in handy all the time.
I think for me, what I see, is a more rigorous sense of order of operations than many others in the humanities. A bit hard to explain, but my wife sees it all the time. I would say, however, that it is likely that tendency drew me to programming initially as much as it was formed by it. It's partly just a temperment thing.
Here's where I'm at right now. I've decided that the whole certificate deal really isn't worth it. I've been searching for a 4 year degree to match my specific interests, and I've found a few, but I have a few concerns. At the rate that technology comes out, is it even worth it to pursue a bachelor's degree in the computer science field? I mean, I'm having a very hard time finding a school that teaches ASP.NET, Ajax, or Coldfusion, all of which I would like to learn. Even finding PhP training isn't easy. I'm worried that by the time I complete my degree -- the things they teach --C++, Java, ect won't even be used. I know what I want to do-- create enterprise level software for large scale business. I know it sounds like a long shot, but I would like to learn how to a code a website like ebay.com, amazon.com, only pertaining to my specific ideas.
Some of you suggested getting a degree in a non technical field like marketing or business... which I may end up doing.
But as far as learning to code, where should I start? It's all pretty overwhelming. I just ordered Adobe Web Premium Suite, I plan on spending all my time learning this software until I actually decide what I'm going to do.
Once again, thank you all for your input. This has been most educational.
At the rate that technology comes out, is it even worth it to pursue a bachelor's degree in the computer science field?
I know they're long, but reread my posts. Any four-year program that teaches you technologies (i.e languages) instead of skills is not worthy of being considered a university education. For example, at UC Berkeley, the courses that teach programming languages are all electives and are considered a bit remedial (sort of like arriving there to study a tech field without having had a solid year of calculus). Berkeley does not require you to take any course at all that teaches a language. Why? Because the expectation is that someone who has a CS degree will be able to learn any new language fairly quickly. They are teaching the concepts at a more abstract level and that's what you need if you are going to have a degree that gives you the foundation to write software on platforms that haven't been developed yet.
If what you are interested in is developing enterprise-level software (which is what you just said), then a CS degree will be worth it and it makes absolutely no difference what the listed language of instruction is. Of course, there was that student at Harvard who decided that he was better off quitting school and starting a business writing OS software. Not having a CS degree doesn't seem to have held him back.
If you really want to launch web-based businesses, get a non-CS degree and hire someone to do the coding.