Question Is it useful to learn JavaScript, DOM, HTML and CSS?

anandtechreader

Senior member
Apr 12, 2018
293
5
81
Hi, is it useful to learn these things? Given that there are applications like Dreamweaver that allow users to build websites easily, what is the point of learning these things?
 

beginner99

Diamond Member
Jun 2, 2009
5,315
1,760
136
That the code isn't entire *redacted*, unreadable and hard to maintain? Like the generated code is? That you can do what you want eg. not beign limited what the "generator app" offers? That you actually understand what you are doing?
Does dreamweaver even allow to use modern JS libraries?

No swearing in the tech forums, please -- Programming Moderator Ken g6
 
Last edited by a moderator:

Red Squirrel

No Lifer
May 24, 2003
70,164
13,569
126
www.anyf.ca
Tools like dreamweaver are kinda like a training wheel to real web design. You can use them at first, but you should really learn the actual code and do it in a text editor as it will be more elegant.
 

purbeast0

No Lifer
Sep 13, 2001
53,544
6,368
126
If you want to do webapp development, yes. Same with complex dynamic website development.

There's also TONS of other technology you will want to learn along with them.

If you want to just build static websites (which hardly exist today) then you can just do that with HTML and css.
 

piokos

Senior member
Nov 2, 2018
554
206
86
It's really not just websites in a way most people think about them (e.g. wikipedia or whatever you check for news).

HTML, CSS and JS are used for apps that run in browsers or on engines similar to browsers'. You have a whole branch of programming front-ends (with another trendy words: DevOps).

If you're thinking about career like that, then sure - learn those. They're not going anywhere for sure.

IMO programs like Dreamweaver will go away soon. People don't make websites anymore. Almost everything is built on advanced CMS or moved to platforms like facebook or wordpress.

15 years ago I was making websites - first as a hobby, then to impress girls at school ;-) (doing their coursework) and finally as a part-time job.
I ended up an analyst, not a front-end developer. I haven't written anything in HTML for years, but I do read a lot of HTML when web scraping...

Keep in mind that if you're thinking about any IT-related career (programmer, analyst, architect, tester etc) you're almost sure to use XML.
 

purbeast0

No Lifer
Sep 13, 2001
53,544
6,368
126
I wouldn't worry about XML at all. It's nothing more than a very basic file format. There isn't much to it, and if you do need it, it takes like 5 minutes to pickup. It's also pretty old technology and in the web world you will use JSON a lot more than XML.

Also, DevOps is a whole other area that is pretty much unrelated to doing anything front end in the web world.
 

piokos

Senior member
Nov 2, 2018
554
206
86
I wouldn't worry about XML at all. It's nothing more than a very basic file format. There isn't much to it, and if you do need it, it takes like 5 minutes to pickup. It's also pretty old technology and in the web world you will use JSON a lot more than XML.
XML is a more formalized solution and easier to use in complex situations.

As for "takes 5 minutes to pickup" - I know 50-year-old people working in finance that have been looking at XML for over a decade and they're still confused. It really depends who you are.
XML is ubiquitous outside of IT as well -that's something worth remembering. ;-)

I don't know OP's background. Maybe it's his first contact with programming.
 

purbeast0

No Lifer
Sep 13, 2001
53,544
6,368
126
I wouldn't say anything is 'easier' to use at all. It just depends what you are doing, what the system already uses, etc.

If anything, JSON is easier to use because it's smaller and more readable than XML is. It's easier to deal with in the world of web too because you don't have to use any parsers. XML is basically hanging around because these old complex systems haven't migrated to newer technologies. It's been around for a long time and is mature.

Code:
<car>
   <doors>3</doors>
   <color>red</color>
   <make>honda</make>
<car>

versus

Code:
car: {
  doors: 3,
  color: 'red',
  make: 'honda'
}

Any modern API will accept JSON whereas you'd be hard pressed to find one that accepts XML, unless again, it's for old systems or is old.
 

piokos

Senior member
Nov 2, 2018
554
206
86
If anything, JSON is easier to use because it's smaller and more readable than XML is.
Maybe as long as you don't consider attributes. That's the whole point of XML. Migrating attributes to JSON turns it into a total mess.
Any modern API will accept JSON whereas you'd be hard pressed to find one that accepts XML, unless again, it's for old systems or is old.
Well, so? :)
Systems using XML exist and will stay for decades.

Also, whereas JSON is used almost exclusively in APIs, XML is also great for storing data, transfers etc. Not everything works on APIs. :)

Both technologies have their place. XML is more universal and has more potential. JSON is, automatically, simpler and easier to use in its best case scenario (APIs).
 

mxnerd

Diamond Member
Jul 6, 2007
6,799
1,103
126
With color coding, XML is very clear.

Without it, it's absolutely much worse than JSON.

The biggest problem - it takes too much space & storage.
 

mooncancook

Platinum Member
May 28, 2003
2,874
50
91
You'll need to learn json if want to do web or app development, but it's also good to learn xml. I think there is still a lot of data exchange are done thru xml.

Anyway, back to op's original question, using Dreamweaver is kind of like using your smartphone camera, it works fine for personal use, but if you want to do pro photography work you'll find its capability to be too limited. You'll soon find that you'll need better pro equipment, and knowledge about aperture, shuttle speed, metering, lighting, etc.
 

piokos

Senior member
Nov 2, 2018
554
206
86
Hi, is it useful to learn these things? Given that there are applications like Dreamweaver that allow users to build websites easily, what is the point of learning these things?
I came back from work with a JavaScript usefulness story. ;-)
For the last few weeks I've been using software called Earnix (a popular suite in insurance and banking). Basically, most of the work is creating data tables and functions. It's very manual and painful. It turns out underneath the interface it's all based on JS - even tables are kept as JS scripts. And there is a way to open a JS terminal and automate everything.

Of course Earnix is still niche software and you may never see that name again.
But there are some much more popular programs that use JS as well - for example Photoshop, AutoCAD and SAP.

Sure, learning JS is not a big deal (likely the reason why it's chosen so often). But you'll know it before people around you and it may turn out to be worthwhile. :)
With color coding, XML is very clear.

Without it, it's absolutely much worse than JSON.
I don't see why it would be without syntax highlighting? Syntax highlighting is a great invention and should be used. The second best thing in code visualization after line breaks. ;-)
Anyway, most languages are awful without it - from C++ to Excel cell formulas.

XML of course seems more complex visually because of all the extra data, but it adds a lot of metadata possibilities.
Metadata has to be forced in JSON or put in a separate file - both solutions less than ideal.

Of course all these advantages (regardless of whether we agree or not) are only for files that need to be human-readable.
If one's only concern is holding data (for automated parsing) then of course JSON is just as good (and should be faster to process as well).

Obviously, we have a great example of what I'm talking about. Websites. We use a markup language, but all that information could be packed into a JSON. Just imagine how working with websites would look. :)
 

purbeast0

No Lifer
Sep 13, 2001
53,544
6,368
126
Javascript is so helpful to know all by itself. It'll save you so much time when you don't have access to server-side code.
It's good for anything really.

I wrote a script the other day that read a CSV file and for every entry it reached out to the URL, got the contents of the document and then created a new file based on offsets of the CSV entry, and saved that file to disc. It basically doing stuff completely unrelated to web app client/server side stuff in general. I'm using node for it and it just executes a function.