General discussion

  • Creator
    Topic
  • #2248379

    What should one learn for web development?

    Locked

    by Anonymous ·

    What should a web developer learn as far as languages and scripting, etc. goes? There is so much out there besides HTML, CSS and JavaScript. ASP? VBScript? VB.NET? C#? Perl? PHP/MySQL?

    What are the best things to get some background in?

All Comments

  • Author
    Replies
    • #3141062

      No to VBScript

      by onbliss ·

      In reply to What should one learn for web development?

      HTML, CSS and JavaScript are the basics.

      If you go the route of .net, then it will be ASP.Net. And there is no need for VBScript. You can either code in VB.Net or C# – two commonly used Microsoft products.

      And knowing XML would always come handy. You can not avoid it if you are using .Net.

      • #2645611

        Yes to vbScript (a thought)

        by nirg ·

        In reply to No to VBScript

        If you are looking for an easy “entry level” programming language for web-pages, vbScript (asp3) is *very much* for you. Staring with vbScript will allow you to:
        1) Mature into .NET, if need be.
        2) Start learning an easy language that is far more readable than PHP.
        3) Run using almost any standard web hosting plan.
        4) Not worry about OOP until you mature into it as a developer, and give you basic support for it when you do.
        5) Focus on the single web-page and it’s basic technologies such as HTML and CSS as opposed to needing to conceptualize entire systems in .NET.

        As mentioned, HTML, CSS and JavaScript are a bare *must* for a fledgeling web developer, no way around needing to understand them at least a little.

        Hope this helps.

    • #3138923

      As much as possible!

      by jmgarvin ·

      In reply to What should one learn for web development?

      You MUST learn HTML, CSS, javascript, and perl.

      There is also some good news. There is some “mapping” from one lanaguage to another. For instance PHP and ASP have similar syntax, so if you learn one, you’ve learned them both (save for some minor syntax issues). C# is pretty easy to pick up and similar in a lot of ways to Java and C++.

      I’d save SQL until later. The reason is so that you can become very proficient in the basics and then move up. Connecting to a db isn’t too hard, but writing a db can be down right brutal.

      Good luck…

      • #3138917

        writing a db

        by onbliss ·

        In reply to As much as possible!

        What do you mean by that?

        • #3138832

          For a noobie, DB stuff can be quite intimidating

          by jmgarvin ·

          In reply to writing a db

          Plus, after picking up the basic idea of how languages function, it’ll be easier to pick up something like SQL.

          At lot of folks just getting into programming seem to have trouble wrapping their head around the idea of dbs…

        • #3138723

          Oh

          by onbliss ·

          In reply to For a noobie, DB stuff can be quite intimidating

          I was little confused, did not know if you were meaning 1)writing an RDBMS from scratch, 2)writing to a database or 3)designing and creating an database

        • #3281846

          They still aren’t teaching this?

          by mark miller ·

          In reply to For a noobie, DB stuff can be quite intimidating

          I went through a computer science program at a university and not once did anyone tell me how to deal with a relational database, or Standard Query Language. I had to learn these skills out in the work world from people who were generous enough to allow me time to learn them. I think my alma mater is teaching about databases now in the CS program. It would surprise me if other schools have not followed suit.

        • #3280572

          short-sightedness of schools

          by apotheon ·

          In reply to They still aren’t teaching this?

          Schools have a tendency to teach theory and not practical use in a CS degree program, but to choose according to some half-baked notion of practicality when an implementation language is needed for teaching some concepts.

          As a result, you can easily learn about the theory of relational database structure and concepts like normalizations using flowcharts and hierarchical architecture tables, but possibly never see a line of SQL in any classes that touch on the subject. Similarly, the school will tend to teach the theory of programming using something wholly unsuited to teaching programming theory like Java because it’s a “practical” language or, conversely, may eschew “practical” languages altogether and teach everything using Scheme. The Scheme approach is becoming increasingly rare, unfortunately, because even though it would be best to learn both Scheme and something in more common usage, at least the Scheme-only approach is better than the Java-only approach (Java’s somewhat easier to pick up on your own in the “real world” when you already know programming skills in general than Scheme, thanks to the absurd Java-worship that occurs at most corporate development shops).

        • #3281548

          Strange….

          by now left tr ·

          In reply to They still aren’t teaching this?

          When I studied they taught all this & more. Even Object Orientated Databases such as POET were covered.

        • #3290158

          Sad But True

          by williamsmytheiii ·

          In reply to They still aren’t teaching this?

          Most of what can be applied is NOT learned in the classroom of universities. It is an unfortunate failing of the US education system. What is practicle and usable is not taught. Theory, conceptual analysis, and ‘history’ is more important to acedemia than what can be used in the real world.

          Part of this is the archaic methods used to educate – read, memorize (learn?), test. Rather, a ‘do’ method should coexist with the read and memorize portion of the experience.

          The biggest problem is, in my humble opinion, the lack of real-world experience the educators have. How professors had actually worked in their field to make a living for any period of time before teaching others about that field? Few. If your livlihood depends on producing a result (program, product, service) that has value to others, you quickly adapt and learn how to perform that task efficiently and comprehensively. Teaching only requires memorization of concepts and the ability to appear competent.

          While I have spent 5+ years in higher education, attained a BA and an associates in Psych and Computer Technologies (respectively), I may have applied 10 – 15% of my classroom knowledge to the workplace (aka real world).

          I do value the routine and intense concentration that does come from higher learning. There are few other environments that test your ability to learn and expand your mental capacity like college. While I don’t value it, I strongly recommend experiencing it.

    • #3138819

      It depends

      by mark miller ·

      In reply to What should one learn for web development?

      If you’re just interested in the web interface work, then HTML, CSS, javascript (and the development technologies that use it, like Flash) will be good enough. If you want to get into coding web applications, then I’d say learn many of the things you listed, and get familiar with the way that web application servers maintain state for an application. Learning that was the biggest hurdle for me.

      If you’re interested in DB application work, I’d encourage you to check out Ruby on Rails (http://www.rubyonrails.org/) in addition to the other web development languages. It’s a clever framework that makes connecting a web application to a database very easy.

      I’ve worked in ASP.Net 1.1, and it has a decent DB infrastructure, though it can still get laborious. ASP.Net 2.0 is better.

      • #3138799

        in addition to Mark’s comment

        by jaqui ·

        In reply to It depends

        AJAX, to “consume services” xml/xslt [ for the web2.0 rss feed thing ]

        I would also pick a style of site to work with, and focus on learning exactly what that style needs first off, then expand your knowledge base into additional areas. By style I mean a rich media content or an accessablility guidelines compatable style. Yes the two are completely exclusive, rich media is not accessable content.
        ajax/ rss feeds etc. are not accessable technologies.

        if you are doing db driven sites, make sure you break the db work apart from the presentation, so the presentation part can be made search engine friendly urls rather than the http://www.somesite.com/index.php?sdkjfh&ghwilut wich search engines cannot index to promote the site.

        • #3280569

          I disagree with your choices of “rich media” for incompatibility.

          by apotheon ·

          In reply to in addition to Mark’s comment

          AJAX can be made to degrade gracefully, offering an iterative approach to accessibility vs. a “rich user experience”. While AJAX is itself not high-accessibility, it is not strictly opposed to accessibility in the general case as it does (as I mentioned) degrade gracefully when well implemented. I’d recommend starting with accessibility and standards compliant use of web design technologies, then from there begin to learn how to use “rich user experience” stuff like AJAX and other Javascript-using design in a way that degrades gracefully.

          RSS is actually an accessibility enhancement: it provides additional means of accessing content without interfering with the basic site design in any way. It’s sort of a parallel interface so that other client applications than the browser (such as an RSS feed aggregator/reader) can be used to access the same content in a different way.

          The so-called rich media approach that is actually incompatible with accessibility and standards compliance is “multimedia” crap like Flash, which is pretty much entirely impossible for some people — such as the blind, using screen readers — to access and use at all. It really does require one to make a choice, at least initially, between “rich media” and accessible design, if by “rich media” you mean technologies like Flash for website design.

        • #3281558

          the problem with ajax,

          by jaqui ·

          In reply to I disagree with your choices of “rich media” for incompatibility.

          other javascript functions and rss feeds for those using screen readers or braille terminals isn’t just in the degrades gracefully or not, it’s the non static content that stops these devices from working properly.

          how does a screen reader work with a piece of a site that constantly changes? it doesn’t it crashes instead.

          so in effect, rich media is as non accessable as flash, or streaming video or audio content.

          a braille terminal has no support for javascript, or flash, or rss feeds, so any site that requires them is driving a visitor away.

          a screen reader cannot read content that isn’t static, since the changing content keeps resetting it or brining it down.

          a deaf person has no use for audio tracks on a site.

          a blind person has no use for the video or flash content on a site.

          all such content should be an enhancement to the text content, rather than a replacement for the text content.

        • #3281352

          it’s about the Javascript

          by apotheon ·

          In reply to the problem with ajax,

          Javascript is likely to crash a screen reader that can’t handle a dynamic interface. As such, most screen readers ignore Javascript, and even if you have one that doesn’t you should have client-side scripting turned off anyway. If Javascript is turned off, you need graceful degradation. Voila, problem solved.

          “[i]a braille terminal has no support for javascript, or flash, or rss feeds, so any site that requires them is driving a visitor away.[/i]”
          That’s what graceful degradation is about: not [b]requiring[/b] support for the technology. A technology that is implemented so that it degrades gracefully works fine with something that doesn’t support the technology. Voila, problem solved.

          “[i]all such content should be an enhancement to the text content, rather than a replacement for the text content.[/i]”
          I never said anything that disagreed with that statement.

        • #3281217

          I know

          by jaqui ·

          In reply to it’s about the Javascript

          we aren;t actually disagreeing on most, only on if the rich media / dynamic content is even slightly accessable :p

          I made the enhancement comment soley to bring that point out in the clear for all who are reading and not posting to the thread.
          rich media and multi media content is not the main content in any DECENT site developers sites.
          [ no so subtle poke at those called web/multimedia designers they think the rich media and multimedia content is the entire site, to the detriment of their clients ]

      • #3279958

        Depends

        by duckboxxer ·

        In reply to It depends

        I agree, it depends on where you want to focus. Regardless you are going to have to learn HTML, CSS and JavaScript. But if you want to focus more of the ‘pretty’ side, then Flash, Flex and graphical tools like Photoshop, ImageReady, Fireworks or even GIMP.

        If you want to focus on making things work, rather than the pretty parts, look to a server side language, SQL and database design. As far as what server side language, it depends on your background. From VB, look at .Net; from a C-like language, try Java or C#. No coding background? Look at ColdFusion – it’s syntax is formatted like HTML.

        And for heaven’s sake, don’t try to write code in FrontPage or worse, Microsoft Word. Look into Eclipse, Notepad or if you must, Dreamweaver. I would suggest a text editor rather than a GUI application. This will be more painful at first, but you will learn the code faster and help you out in the long run.

    • #3280802

      LAMP Linux, Apache, MySQL, Perl, PHP or Python

      by technical ·

      In reply to What should one learn for web development?

      Linux (FreeBSD even better) Apatche MySQL and PHP.
      OK I admit you do not need to know very much about the Linux (or FreeBSD) but you should ‘glance’ over the subject so you understand the platform your likely to use. Apache to the same level, understand the server you are likley to use. Just get the hang of the security ‘a bit’ so that you have ‘some’ idea. Why ? Apache is hosting more than 50% of the servers on the web. Why Linux etc, Its a personal view. I happen to think Linux / FreeBSD servers are better. They have a better TCP/IP stack, run faster, take more load and are more secure, only in my opinion you understand.
      I think they have been used for Hotmail for some reason.. I cant think why that might be?
      Maybe hotmail knows something about FreeBSD I don’t…
      The next bit you need to go quite a bit deeper….
      MySQL and PHP to build web sites because its the most common e-commerce platform. It just happens to be the simplest to get your head round as well. Why E-commerce focus. Because any idiot can produce a web site. Its the people that know a bit more that do e-commerce and understanding a bit about the security is always good… next thoughts….
      Perl is good but PHP is easyer. Python is the next stage after you understand some PHP.
      I would look at content managment systems CMS .
      I would not bother too much about graphics to start off with ( things like Dreamweaver Flash etc) because its easy to add Art you need to understand the actual web server and hosting with server side scripts.
      Too many people have flashy sites and no idea of e-commerce and CMS.
      I have had to run all sorts of servers and all sorts of web sites.
      NEXT …..
      I would recomend the following action as a fast track.
      TRY hosting an OS-Commerce site to learn the MySQL and PHP. To do this Get an old PC load some simple linux distro ( an really easy one like SimplyMEPIS 6.0 and load Apache ( takes all of 10 seconds to load Apache) This should cost you practicaly nothing. Load PHP and MYSQL onto the linux box, install OS-Commerce ( all the software is open source and freely avalible and people will help you). RUN the hosting on your LAN ( even at home). Then learn how to alter the PHP to customise the site to give it a new image and feel. Then start another web site writing your own PHP site linked to your own MySQL data base. None of this is rocket science. You will learn loads. It not difficult it just needs a bit of care to read the installation notes.
      and I belive the experiance will not be wasted.
      For a book I would read
      PHP and MySQL for Dynamic Web Sites: Visual Quickpro Guide By Larry Ullman.
      Because its got both MySQL and PHP in the same book its doesnt assume you know much but it should take you to another level.
      at the end of this exersise you should know enough MySQL and PHP to do some real damage!
      Next stage is to learn how to do it for real.
      You then need to get your head round backups version control (VITAL) Systems that control all the amendments in structured data all pictures with name conventions etc.
      good luck.

    • #3280801

      LAMP Linux, Apache, MySQL, Perl, PHP or Python

      by technical ·

      In reply to What should one learn for web development?

      Linux (FreeBSD even better) Apatche MySQL and PHP.
      OK I admit you do not need to know very much about the Linux (or FreeBSD) but you should ‘glance’ over the subject so you understand the platform your likely to use. Apache to the same level, understand the server you are likley to use. Just get the hang of the security ‘a bit’ so that you have ‘some’ idea. Why ? Apache is hosting more than 50% of the servers on the web. Why Linux etc, Its a personal view. I happen to think Linux / FreeBSD servers are better. They have a better TCP/IP stack, run faster, take more load and are more secure, only in my opinion you understand.
      I think they have been used for Hotmail for some reason.. I cant think why that might be?
      Maybe hotmail knows something about FreeBSD I don’t…
      The next bit you need to go quite a bit deeper….
      MySQL and PHP to build web sites because its the most common e-commerce platform. It just happens to be the simplest to get your head round as well. Why E-commerce focus. Because any idiot can produce a web site. Its the people that know a bit more that do e-commerce and understanding a bit about the security is always good… next thoughts….
      Perl is good but PHP is easyer. Python is the next stage after you understand some PHP.
      I would look at content managment systems CMS .
      I would not bother too much about graphics to start off with ( things like Dreamweaver Flash etc) because its easy to add Art you need to understand the actual web server and hosting with server side scripts.
      Too many people have flashy sites and no idea of e-commerce and CMS.
      I have had to run all sorts of servers and all sorts of web sites.
      NEXT …..
      I would recomend the following action as a fast track.
      TRY hosting an OS-Commerce site to learn the MySQL and PHP. To do this Get an old PC load some simple linux distro ( an really easy one like SimplyMEPIS 6.0 and load Apache ( takes all of 10 seconds to load Apache) This should cost you practicaly nothing. Load PHP and MYSQL onto the linux box, install OS-Commerce ( all the software is open source and freely avalible and people will help you). RUN the hosting on your LAN ( even at home). Then learn how to alter the PHP to customise the site to give it a new image and feel. Then start another web site writing your own PHP site linked to your own MySQL data base. None of this is rocket science. You will learn loads. It not difficult it just needs a bit of care to read the installation notes.
      and I belive the experiance will not be wasted.
      For a book I would read
      PHP and MySQL for Dynamic Web Sites: Visual Quickpro Guide By Larry Ullman.
      Because its got both MySQL and PHP in the same book its doesnt assume you know much but it should take you to another level.
      at the end of this exersise you should know enough MySQL and PHP to do some real damage!
      Next stage is to learn how to do it for real.
      You then need to get your head round backups version control (VITAL) Systems that control all the amendments in structured data all pictures with name conventions etc.
      good luck.

    • #3280764

      What to learn?

      by wayneb ·

      In reply to What should one learn for web development?

      It is a very simple answer to the question. You should learn as much as you can. As you may not become the master of any one particular language, it is a good thing to know a little about each type. With continually growing technology of today, it is a good idea to grasp all of the technologies. There are still sites designed with ASP and now there are sites with Flash and AJAX. A little goes a long way.

      • #3280732

        “Still sites designed with ASP”?

        by paymeister ·

        In reply to What to learn?

        You say that like it’s a bad thing.

        Uh… is it? I run an intranet site for work and some other websites privately using ASP, though I believe we have the .net framework available. ASP seems to meet my needs – what am I missing? (Aside from bells and whistles, that is…)

        • #3280700

          ASP not a bad thing!

          by wayneb ·

          In reply to “Still sites designed with ASP”?

          ASP is still very useful. I still use it frequently myself. I was just stating that in the number of growing programming technologies it is keen to know a little of everything even those languages that have been around for awhile. ASP has been out there for awhile and the .net infratructure seems to be the new car model on the lot..so to speak.

    • #3280746

      Wow, No Java Servlet/JSP?

      by johnnysacks ·

      In reply to What should one learn for web development?

      I’ve been deep in database world for a couple years and the front end development department at my company is 100% Microsoft. Have I been so far removed from front end development for so long that Java does not even merit a mention with regards to web development? Let’s check. For an overly simplified but nonetheless valid comparison, do a Dice.com search.
      ASP.NET – 95 jobs
      JSP – 129 jobs
      PHP – 37 jobs

      C# and VB.NET sure look pretty and work well coupled to a $1,000 Visual Studio IDE and they’re 100% platform independent (provided you’re running Windows). Just watch the sales presentation: Point, click, drag, … web site done. Trouble is in the real world, everything requires custom coding and that’s where the productivity of the many web development languages stratifies to about the same level.

      Sun may have done a disservice to the JSP/Servlet API by marrying it to the J2EE package. When I think J2EE, things like BEA, JBoss, Websphere come to mind, very complicated products. Many less complicated (and free) products are available for Servlets and JSP.

      During my PHP days, I was surprised to read PHP was not thread safe for use with Apache 2 and still, to this day, is not. Seemed to work OK for me on Apache 2 though, don’t understand why after all these years a web language is not considered thread safe. I had JSP/Servlet experience at the time and threading was a given. I was also doing a lot of old school ASP work also and was frustrated by the inability to create and share multi threaded objects in the web server context without C++.

      • #3280672

        Thread safe?

        by ytvette ·

        In reply to Wow, No Java Servlet/JSP?

        By thread safe, do you mean the capability for multi-threading? I’m just a newbie to web programming, so I don’t know all the buzz words yet. Thanks!

        • #3280545

          thread safety

          by apotheon ·

          In reply to Thread safe?

          Thread safety refers to the ability of a system to correctly run multiple threads concurrently. Thread safety is kind of a difficult proposition for cross-platform technologies, however, because of the fact that Windows itself is not capable of running threaded applicatons properly. All it can do is “fake it” with neutered multiple processes, as opposed to proper threads.

          Thus, a fully thread-safe system that is cross platform needs to be able to both leverage the threading capability of most operating systems and handle platforms where threading capability is limited, faked, or fully nonexistent as well. The PHP guys have pretty much decided to ignore thread safety altogether as a “solution” to the problem.

          Most web development doesn’t get to the point of requiring multithreaded web applications until they scale past the point where PHP isn’t an appropriate technology, anyway, though. As such, it’s hardly an issue. If you’re writing code complex enough that making a multithreaded application of your project sounds like a good idea, you should be using a server-side language other than PHP.

          As for Java-based solutions (JSP, et al.), don’t bother with those until you get to a point where multithreaded operation is such a given that supporting a Windows platform is a completely absurd proposition anyway. For small projects with relatively low traffic, JSP and the like are inappropriate. You need something lighter weight and easier to manage for such projects.

          There’s a middle zone of sorts, where threading can net you significant scalability advantages but Java solutions are still pretty hefty for your needs. That’s the area where pretty much anything other than Java or PHP is a good option, including Ruby on Rails, Python/Zope, Perl’s Mason or Catalyst, ASP.NET, and probably a couple dozen other options come into play. All of these can scale down through most of the situations where PHP would also be appropriate and up through most of the situations where Java would be appropriate. As such, for the most flexible and wide-ranging skillsets, I’d recommend pretty much anything other than Java or PHP, and these general-purpose technologies are basically all thread-safe when run on platforms that properly handle threaded code.

      • #3281553

        definition of platform independant:

        by jaqui ·

        In reply to Wow, No Java Servlet/JSP?

        it does not matter what OS you are using.

        your “(provided you’re running Windows).”
        is the perfect proof that the mentioned tools and technologies are NOT platform independant.

        sheesh, only a windows only person would think that platform independant meant anythiing but os independant. are you sure you don’t work for microsoft? they are infamous for that type of insane thought pattern.

        • #3281351

          Maybe it was sarcasm.

          by apotheon ·

          In reply to definition of platform independant:

          The guy was commenting on the fact that Java wasn’t included in the list of options, and contrasting it (favorably) with Microsoft technologies, so it’s possible he meant to say “plaform independent (provided you’re running Windows)” as a euphemism for “platform independent (but not, really)”.

          Then again, I could be wrong.

        • #3221166

          maybe

          by jaqui ·

          In reply to Maybe it was sarcasm.

          I’ll give him the benefit of the doubt on it.

          but it really is a common attitude amongst people who don’t understand operating systems at all.

    • #3280532

      an approach to learning web development

      by apotheon ·

      In reply to What should one learn for web development?

      First, of course, learn XHTML and CSS. Any web developer should know these things, even if (s)he expects to spend all development time working with a server-side language, because one should understand the interface design limitations when developing the back end to a web application.

      If you’re just looking to learn technologies on your own, I’d recommend learning PHP next as a way of easing into it. Skip Javascript unless and until you need it for something specific. When in doubt, don’t use Javascript. Among other things, this approach will help ensure that you learn how to design a site so that even when Javascript is used, it degrades gracefully.

      Once learning some PHP and getting familiar with it enough to kinda get a handle on how web development is done at the low end, move on to Perl, Python, or Ruby. If you’re looking to work solely on a Windows platform and are developing for end users that are 100% Internet Explorer users, ASP.NET is a definite option. On the other hand, if you intend to do cross-platform development or general-purpose web development for users who will potentially be using Firefox or other browsers, ASP.NET probably isn’t the best option. In fact, if you’re doing cross-platform development, it is DEFINITELY not the best option.

      If you’re already a programmer, it might make sense to skip the PHP step and go straight to Perl, Python, or Ruby. Of these, Perl is the most ubiquitous, and thus probably the most important unless you have specific needs that suggest Python or Ruby as the best first step. On the other hand, the only language more common on the web for web development than Perl is PHP, so keep in mind that despite PHP’s deficiencies as a programming language and regardless of your programming experience, PHP may be a best choice for a first language anyway.

      Don’t start with Java unless you already know Java and know you’ll be working pretty much exclusively with Java. Java for web development is something to learn if/when you are going to do some Java-based web development, and not before. The platform and installed system requirements are impressively difficult to maintain in anything less than an enterprise situation, the appropriateness of Java for small web development projects leaves something to be desired (to put it mildly), and stuff like J2EE/JSP constitutes an exceedingly painful system to use in comparison with other web development technologies. In short, if you don’t already know that Java is what you have to use, don’t bother starting with Java for web development (though you may want to end up there eventually, depending on your career goals).

      In summary:
      I recommend starting with just learning XHTML/CSS pretty well, then learn PHP, then move up to Perl, then start pursuing whatever catches your fancy — and fit Javascript in there just whenever it suits your needs and learn web development with Java only if you have to. ASP.NET, VBScript, VB.NET, and C#.NET are appropriate only for single-platform Windows development with only Internet Explorer being used by all your clients — and some of those (such as VBScript for the client) shouldn’t be used even with Windows servers and IE clients unless you’re specifically aware of what configuration is on the clients because your IT department controls all clients that will access your site (which limits the usefulness of VBScript on the client side to certain intranet sites).

      If you want to get started with PHP and don’t know where to begin, there are some things you should know:

      1. There’s a lot of bad PHP code out there. Don’t assume that because something was done in PHP a given way that this is the way it [b]should[/b] be done. Be careful when looking at example PHP code.

      2. There are many, many free online resources for PHP out there. Make use of that.

      3. You’ll eventually want to get a book or two on the subject of web development with PHP. When in doubt, try to aim for stuff that deals with database integrated development, and if all else fails you can generally trust the O’Reilly titles on just about any programming subject. If at all possible, get involved in the open source development community enough to get a firm grasp of what constitutes good and bad code and what constitutes good and bad books on the subject before spending any money. Surprisingly, the best community for learning to recognize good resources for PHP might just be the Perl community — check out [url=http://www.perlmonks.org][b]PerlMonks[/b][/url] in particular.

      If you have the right background knowledge to make use of it, there’s a [url=http://arc.apotheon.org/cheats/php.php][b]PHP tutorial[/b][/url] I wrote recently that might prove useful to you in getting started if PHP is where you want to go first for a back-end web development technology to learn. It’ll give you the basic knowledge necessary to start making easily-maintained, small websites that use PHP and flat-file data storage. You do need to know some basics of general programming concepts and both XHTML and CSS to be able to really make use of the tutorial, but you don’t by any stretch need to be an expert with any of it.

      Good luck with whatever you do.

      • #3280119

        Totally agree (rather better than my attempt)

        by technical ·

        In reply to an approach to learning web development

        Cant disagree with anything here. If you put all this into action its difficult to see where you could go wrong.

      • #3279973

        A little inacurate

        by ken cox ·

        In reply to an approach to learning web development

        Your Quote “ASP.NET, VBScript, VB.NET, and C#.NET are appropriate only for single-platform Windows development with only Internet Explorer being used by all your clients” is not entirely accurate. While these platforms certaininly take advantage of “familial” connections, they are far from “platform” dependant. I work on both sides of the MS/Java fence but in this case I have to call this misinformation and have to support MS even though I hate to do it.

        I have designed and implemented over a hundred websites now that are fully firefox, opera, netscape and IE compliant using the .NET platform so I would have to say that it is more a question of knowing your tools and not buying into any single persons opinion of what those tools are capable of. I also develop on the PHP/MySQL/Linix/Apache platform, probably about 30 sites so far, and personally find that .NET lends itself to a far better structured environment then is present in most “WEB” development projects.

        I would say your best tactic when looking at what you should study would be to pickup a little of everything and focus on those languages and tools that present themselves. You never know what environment you will be working in, and never, never, never discount any tool in your toolbelt, or someone elses, because of someones perceived notion of what they think of it. Find out for yourself what works in what situation. If you want to stay working be prepared for anything you will discover and dont be afraid to learn as you go.

        You will find a lot of people that have firmly dedicated themselves as JAVA or MS platforms. This platform war is stupid and does no one, especially the client a service. Be a fence sitter and keep a foot on each side of the rail and benifit from what both have to offer. Then you can decide what is the best tool for the situation in a non-predjudical manner.

        I would focus on XHTML, CSS, XML, Learn T-SQL with minor variations this is how you will connect to all dbms, Learn both PHP and ASP.NET. Be prepared to study and learn any of a hundred variations of languages and methods that you will encounter as you are working.

        • #3279912

          re: platform dependence

          by apotheon ·

          In reply to A little inacurate

          When I said “platform” I was referring to the server. Obviously, you can access ASP.NET websites from browsers other than IE running on operating systems other than Windows on the client side.

          Also, I said that ASP.NET (and related tech) is only [i]appropriate[/i] for single-platform development, not that it was only [i]possible[/i] for it. Keep in mind that Mono and proprietary .NET knock-offs don’t have access to the full range of proprietary .NET libraries on Windows, the .NET specification is a moving target so that what works on another platform today may be broken tomorrow, and as long as Microsoft has even just de facto control of the .NET spec you can bet money this is leading to a market dominance strategy that will leave people developing for Mono wondering why their websites are suddenly broken in IE.

          It wasn’t inaccurate at all, thanks. I chose my words [i]very carefully[/i] when I said “appropriate”.

    • #3279819

      First, you need to make some decisions

      by mdhealy ·

      In reply to What should one learn for web development?

      First, you need to decide whether you intend to focus on the front end, the back end, or both, because that will determine where the complexity will be. My own experience is mostly with the back end, not with fancy front ends. Do be aware that with fancy front ends you are much more likely to have compatibility issues than with simple HTML front ends; the fancier you get the more important it becomes to test with multiple browsers (at LEAST Mozilla and MSIE, but also I recommend testing with Opera and with the Lynx text-mode browser).

      The web applications I have built are for the use of scientific researchers, and behind them are various complex back-end applications: databases, bioinformatics analyses, etc. With all that complexity on the back end, I’ve tended to make rather simple front ends — just HTML forms to collect input data from the user, then the results get presented as simple HTML reports. Some use of frames and a few simple graphics when appropriate, but not much use of bells and whistles such as JavaScript or Flash.

      The database stuff is in SQL, not because I particularly like SQL as a language (it’s almost as ugly as COBOL or FORTRAN), but because nearly all serious database engines use it so I don’t have much of a choice. My code is nearly all Perl, since that’s my language of choice. I won’t claim Perl is the perfect language, it’s got its share of quirks, but I find I can get things done in Perl much faster than in any other language I have tried — and I have tried quite a few languages since I first learned programming in FORTRAN with PUNCH CARDS a while ago.

      I’ve done some coding in Java, which has some elegant features, but it always seems to take me a lot more lines of code to get something done in Java than it takes me to get it done in Perl. I must admit, however, that my Java code can be somewhat more readable than my Perl code — the enforced verbosity of Java does sometimes read better than the line noise Perl I sometimes catch myself writing.

      • #3221167

        re lynx and fancy front ends

        by jaqui ·

        In reply to First, you need to make some decisions

        I can tell you what the result will be for any fancy front end:

        useless in lynx.

        lynx only supports html, without frames, without tables, without javascript, without flash, and without graphics. I use lynx to browse online most of the time, because the fancy crap on websites has no interest for me. If a website is useless in lynx, then there is no content worth my time on the website.

        Lynx doesn’t even support css, so it really is a basic site only that works with it.

    • #3290160

      A bit of everything, alot of a few things…

      by williamsmytheiii ·

      In reply to What should one learn for web development?

      In my experience as a web dev, it is truly all about JavaScript.

      Most development for a page or a site ends up being coded in JS, like it or not. The reason is obvious – client side coding is a necessity for dynamic web pages – it is not an option.

      As far as backend, server languages, it is important to become familiar with MS’s .NET platform and at least one .NET language. C# is a good choice for those with C/C++ experience. VB is good for those with no experience or experience with another scripting language. Python is good for those who desire to work with an ‘open source’ language AND be able to work within a .Net environment.

      PHP is probably the simplest, most comprehensive language to use on Linux servers running Apache – you can do most things quickly, with relative ease, and with minimal use of libraries/import/includes. For the novice or beginning web developer, PHP is the answer.

      Good Luck!

      Bill

Viewing 9 reply threads