Learning HTML and stuff

Discussion in 'General Webmaster Support' started by Draphoelix, May 24, 2013.

  1. Draphoelix

    Draphoelix It's not the wintercold that's killing me

    +133 / 0 / -0
    I am taking a year off from school and was thinking of doing something productive during this time. Since pretty much everything is web based now I thought that learning HTML would be a nice skill to have. Now my primary question is, is it worth the time? (thought this would be a good place to ask). I have no former coding experience apart from Warcraft (GUI and JASS), and I know that everybody learns at a different pace, but how much do a year usually take people? My ambition is not to become pro or work with this in the future as an occupation. The purpose is rather to prepare myself, learning the basics in case I one day may need it because, like I said pretty much is web based nowadays.

    So to put it short, is 1 year enough to learn the basics of webdesign (HTML and CSS?) Like would I be able to create a forum or an auction website 1 year from now (not fancy but at least the structure, I'd at least know where to go)?

    If yes, it is worth the time, my other questions would be "How do I start?". Any website/book you can recommend me taking a look at? From what I read people strongly discourage you from learning by looking at finished codes. Why? I remember that I learnt GUI that way, opening finished maps and tried to figure out what the different triggers did.

    EDIT: Since I am not looking to become pro, would learning to use applications such as Dreamweaver be a better approach? Which is, if I understood completely is an application that designs website for you which means you don't have to learn HTML and stuff?
  2. Artificial

    Artificial Without Intelligence

    +325 / 0 / -0
    I would say getting the grasp of HTML and CSS is quite simple, a year of studying should definitely teach you more than the basics of those. The more complicated part of web development is programming the application logic in the client using JavaScript and on the server using pretty much any language. This requires you to learn one or two programming languages, which - given your experience with JASS - should not prove impossible. A year should teach you at least the basics. Any non-trivial website (which includes forums and auction websites) requires application logic.

    A year should be enough for you to learn to create a basic forum site or an insecure auction website (website security is quite a complicated matter but very important for auction sites). More importantly, it should definitely teach you the basics of how web sites and developing them work.

    If you do not wish to work with anything related to web development (including programming) or do such things as a hobby, I don't think it's going to of much use to you. You might get a better understanding of how the web, websites or their security work, but I can't imagine a whole lot of use for that information if you're not working with development.

    But if you see yourself doing any programming (even if it's not web development or professional) in the future, learning to make websites should be useful to you - web development is mostly just software development in a certain environment. If you wish to learn programming in languages other than JASS, web development can be a nice way of doing so since it makes it simple to create graphical programs you can share with your friends easily.

    In my opinion your question mostly boils down to 'Do I want to or need to have programming or web development skills in the future?' Your motivations to learn are still quite unclear to me, so I can't answer that for you.

    I would recommend you start by learning to create what are called static sites - these are web sites that don't have any application logic, i.e. they are composed of only HTML and CSS. It's been a long while since I learned that stuff, so I can't remember what resources I used, but I would trust the Mozilla Developer Network's resources. Their tutorial section seems to have pretty good coverage and their documentation is something I still use quite often.

    As for tools, I would recommend using Chrome (it has in my experience the best web development tools) and a text editor of your choice. Firefox (with the Firebug addon) and Opera also have good web development support.

    Once you've learned to create static sites, you have two routes to continue. Either you can learn JavaScript and how to create dynamicity within static pages (MDN should again be a pretty good source for this) or choose a programming language to learn to use to create server-side application logic (I would recommend Python for its simplicity). Client-side programming (JavaScript) will allow you to do stuff that happens without reloading the page (for example opening a drop-down menu when a button is pressed) whereas server-side programming will allow you to create stuff that happens between page loads (for example posting posts to a forum) but is more complicated to get started with.

    If you want to create a forum or auction site or anything of the like, you will need to eventually learn server-side development, whereas client-side development might not be necessary. Learning client-side development first might still be worth it, though, due to its compared simplicity. Once you start doing server-side programming, I'd recommend finding a web framework for your language (for Python I would recommend Flask or Django) to make the most complicated parts a whole lot easier. You should first learn the basics of the language you're using, and then find a tutorial for using your selected web framework (the framework's web site most likely has a pretty good one or links to good ones).

    I wouldn't discourage you from doing that, but when selecting which source code to learn from, you should be a bit picky. Many web sites on the web are not well made, and the majority of sites' source codes are not meant to be human readable (for example because they've been modified to be as short as possible for bandwidth savings or because they've been generated programmatically). I would recommend learning by looking at finished codes mainly when there's something specific you want to learn, for example 'How did they make that button have round corners?' (To get an answer to that in Chrome, you would right-click on the button and select 'Inspect element', which brings up the button's HTML and CSS code.) And you have to bear in mind that most of the application logic is on the server-side away from you to see.

    Dreamweaver and similar programs indeed make you not have to learn HTML and CSS when creating static sites. But when you want to create websites with some kind of logic you will still need to have basic understanding of at least HTML and you will definitely need to be able to make the server-side programming by yourself.

    Whether you should learn to use Dreamweaver or a similar program over HTML and CSS really depends on what you want to do and learn. If you want to learn how websites work, Dreamweaver will be useless. If you just want to be able to create a static page (for example a webpage with information about a band), Dreamweaver does the job.
    • Like Like x 3
  3. Draphoelix

    Draphoelix It's not the wintercold that's killing me

    +133 / 0 / -0
    Wow, thanks for the throrough explanation! Really, thanks for taking your time, it will certainly be helpful.

    EDIT: Regarding the server-side coding, there's a huge list in Wikipedia (ASP, PHP, Perl, Python). Do I simply pick one of them and stick with it, or do different languages serve different purposes?

    I didn't quite understand the logic part. So learning Dreamweaver won't really replace HTML and CSS? Cause I don't mind learning HTML and CSS. I'm just thinking that since I only have 1 year it might be time-saving to focus on other languages (server-side and client-side) and then just cover HTML and CSS with Dreamweaver.
  4. Artificial

    Artificial Without Intelligence

    +325 / 0 / -0
    No problem. :)

    I don't think it plays a huge role which language you choose to use, as long as it has good tutorials and documentation and doesn't make things too difficult for you. If I were to order the languages in terms of how easy it is to get started with them, I'd start the list with Python and PHP.

    PHP is a very traditionally used web development language that has tons of resources available, but that sadly also has several downfalls, such as inconsistencies in the API and outdated resources that do more harm than good. If you use a modern framework, most of these downfalls should be avoided, though. Python is far younger in the web development world, but is as a language incredibly simple and consistent yet powerful. At the web development company I work for we primarily use Python.

    If you are going to make a site with server-side or client-side application logic, you will need to know HTML. You can still use Dreamweaver, but you have to understand the HTML code it generates to be able to make your server-side code generate that HTML and your client-side code manipulate it.

    You don't necessarily have to know CSS, since you shouldn't have to touch the CSS Dreamweaver generates for you. But the basics of CSS are quite simple, so I would recommend you to spend at least a couple of days getting familiar with it to see if it's something that seems easy enough to learn. Knowing CSS is quite a big plus when working with websites, but it's not strictly required here.

    You could even create websites without any CSS at all - they'll look bad, but they'll still function as they should. So one more option is to just skip the looks department completely and dabble with CSS if you end up having time after all.
  5. Draphoelix

    Draphoelix It's not the wintercold that's killing me

    +133 / 0 / -0
    Once again, thanks for your time and fast reply :)
  6. danielleslot

    danielleslot New Member

    +0 / 0 / -0
    If you really wanna learn the language you probably could accomplish it in about 2 weeks... if you wanna become a pro i would say 2 a 3 months, if you have a normal job and wanna do it in the evenings it would probably take you 4 weeks... but the language is the most simple language you can ever learn...

Share This Page