Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
My Manager wants to learn HTML and JS, and he has no idea of programming. Can you give me any good references from where he can learn?
Do yourself a huge favor: do not use w3schools. A lot of its content has obviously not been updated in around 10 years, and a large portion of the javascript code on it is absolutely attrocious and should not be considered best practice even in a parallel universe.
For more details on this, see http://w3fools.com/ - which also suggests some alternative resources.
That said, I've personally found Mozilla Developer Network to be a very well-written resource, though I'll admit it may not necessarily cater to the greenest of audiences.
For JavaScript as a language, I'd highly recommend picking up Douglas Crockford's book JavaScript: The Good Parts, as it discusses the language while specifically trying to emphasize the good parts of the language while steering you clear of the bad. It's important to remember that while JavaScript looks like Java, its similarities pretty much end there.
EDIT: for JavaScript you may be better off starting with a resource like Eloquent JavaScript as Rebecca pointed out in her answer (for which she gets a +1 from me, and for which I kick myself for forgetting about).
I might also point you towards Rebecca Murphey's jqfundamentals - particularly the first chapter, which also briefly goes through some JavaScript basics, though admittedly it does so quickly and thus shouldn't be your only read. But it's also well-written and should be hopefully easy to understand. (For consumable formats, look here: https://github.com/rmurphey/jqfundamentals/tree/master/book/release)
... non-technical person ... learn HTML+JS ... but no idea of programming.
All I can says is "good luck".
HTML you may get away with, but JS is programming. Can't get away from that fact.
Teach him to program using Javascript if you like, but don't expect to get a non-technical understanding of it, because it is technical.
My suggestion: teach him HTML only to start with. Don't bother even acknowledging that Javascript exists until he's got a good handle on that.
Then teach him CSS. You can't write a web site without it these days, and a lot of what he's going to want to do with Javascript would involve changing element styles anyway, so a good understanding of HTML and CSS is important.
Once he's got that - properly - then, and only then should you consider letting him loose on Javascript.
For people who can get past jargon, a good place to learn HTML and JavaScript is by learning it from the source:
HTML 4.01 Specification (W3C Recommendation 24 December 1999)
HTML 5 Reference - A Web Developer’s Guide to HTML 5 (W3C Editor’s Draft 23 March 2009)
Core JavaScript Guide (Copyright © 2000 Netscape Communications Corp.)
Core JavaScript Reference (Copyright © 2000 Netscape Communications Corp.)
This gets good reviews:
Google: HTML, CSS, and Javascript from the Ground Up
Eloquent JavaScript is a fantastic resource, but I'm with Spudley -- learning JavaScript without some programming background is going to be a long and arduous road. Libraries can flatten some of the learning curve, but the tradeoff is the risk of writing code that "works" in the loosest sense of the word.
JavaScript: The Good Parts is a great book, but it's going to be way over the head of a beginner without programming experience.
The most complete place to learn JavaScript is from the people who make it work: https://developer.mozilla.org/en/JavaScript/Guide
w3schools has JavaScript content, but it's very scarce and doesn't really explain things is much detail.
Mozilla also have HTML Docs for when you want to take the next step. https://developer.mozilla.org/en/HTML
If you have no idea of programming then you can start with classes from Lynda.com as they are easier to follow for beginners. Their Essential HTML and Essential Javascript courses are a good start for those with no prior experience. However, you will have to pay for them.
Tizag.com also has easy to follow tutorials for beginners.
W3C school tutorials is also recommended.
I would advise you to get familiar with HTML and CSS first and then move on to JS.
I am sorry that I couldn't include more links because SO doesn't allow more than one link for new users.
Don't start with W3schools to learn. Here is an alternative for W3schools.
SnoopCode
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I am ColdFusion developer working in ColdFusion since last 2 years. Recently before few weeks i have started learning cfclient API of ColdFusion Splendor as I am always interested in Mobile application development. But today after reading comments on the blog
http://blogs.coldfusion.com/post.cfm/coldfusion-mobile-features-are-not-just-about-cfclient-but-it-is-necessary#comment-08603915-B031-CC32-1C2DE6521C233F65
I am in big dilemma, Is it worth of spending time for learning cfclient. Some of conclusions that I found after reading the comments on the blog are.
Adobe never have a good track record on generating JS. They generate very ugly looking js.
cfform and cfgrid were introduced with some client side functionality.But now a days no one loves to use it because they have not been updated since long and we can get more flexibility using custom js library.The same may happen to cfclient.
It's a crappy decision from Adobe to focus on mobile application development instead of making the server side language more robust and fixing old bugs.
cfclient inspires the developers not to learn JavaScript.
Adobe is trying to solve a problem that does not exist.
I think you've answered your own question here, to be honest: don't waste your time.
Basically <cfclient> is, by Adobe's own admission, just a hook into the language to tell how the compiler should treat the code: translating it into JavaScript instead of compiling it to bytecode like with normal CFML. And it's a really crap way of achieving that.
The other reason is that they couldn't work out how to implement the hooks into ColdFusion Builder to make all its mobile-dev workflow work.
Another problem is that the Adobe guys are just... not any good at writing anything other than Java. This has been borne out by every single foray into anything other than Java that they write (this includes CFML, incidentally: they can't even write that).
So do you really want journeymen developers who aren't comfortable in the language writing wizards to write your JS for you? No.
Do yourself a favour, and just learn to do it properly. <cfclient> is just an example of Adobe having not learned their lessons over the years after all the <cfform>, AJAX-enabled layout widgets like <cfpod>, and Flash forms. They have never had the skillset to do this work properly, so don't put yourself at their mercy.
Oh, and I'm also voting to close the question as it's not one that can be answered objectively.
This is my take on it
Even if it were good approach today, it is not future proof. New browsers will come, new javascript features will come. I fear that this won't move ahead.
I could not agree more
And some of the existing bugs really need to be addressed.
<cfclient> asserts that client side development should be in cfml. IMHO, Coffeescript covers some of those concerns.
There is a demand for Mobile friendly websites. If I had to pick ONE thing to move ColdFusion forward in this arena it would be: Can we get the JSON functions to work right
There are many ways that Adobe could have moved forward on the mobile application front. If they promoted various community based solutions that would be useful. I know Bootstrap + FW/1 + ColdFusion. But I don't know PhoneGap/Cordova + ColdFusion. I would be good to see those work together.
True, But if you're using CFClient, you're not wanting to write JS anyway, so what do you care what it looks like on the client.
I believe Adobe has promised that we would be able to update the core underpinnings of CFClient (probably PhoneGap/Cordova) and other JS libraries.
Agreed.
I don't know about inspires.
I disagree here. I'd love for a way to quickly deploy to mobile.
PS> I'm sure since this question isn't code related, it will get downvoted / deleted; Might be a better topic for the CF-Talk mailing list or some ColdFusion forum somewhere.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I'm very sorry if that question has been asked already, couldn't find anything closely related though.
By now I've pretty much learned HTML/HTML5, CSS/3, learned using JQuery (not saying there's nowhere to improve, obviously there is). I really want to start learning front-end dev (client MVC, etc). I've started learning backbone.js, but it turns out i'm having difficulties learning it. Am I missing something? I've read "JS: Good Parts" and Javascript Garden is basically my go-to source yet I still get confused.
I'd appreciate any recommendations as to what I should learn/practice first, thanks :)
My favorite answer for that is always - start your own side-project.
Pickup any simple existing application, ToDo list, issue tracker, blog platform, what ever and spend energy to make it done. Host sources on github, search for similar applications to inspire.
You would not believe how many actual questions you would have, by just trying the things out. If you already have good skills with HTML/CSS and JS you'll be able to build something really valuable and learn a lot.
Backbone.js is good, but could be really difficult to start with. Do, some learning curve - implement same simple app in jQuery, then Backbone, then Angular.js. It will give you great client MVC overview.
Two things
Don't quit.
Stackoverflow.
You can read all you want and it will definitely help, but in the end, you'll just have to start, work through it and finish something. Finishing is very important, so I would recommend starting simple, for example, build your own todo with an example on the side and work from there.
Different people have different learning styles, so not all answers you will get will work for you (except GijsJanB's "Don't quit"). Personally, once I am through a tutorial or other documentation, I like to study a real-world system of substantial size. Two that I've looked at and might match your interests are:
Brackets: a Javascript/HTML/CSS editor written entirely in Javascript. Written and maintained by Adobe, open source and available on Github via this link.
Travis-web: the front-end of the Travis-CI continuous integration framework, based on the Ember framework. Written largely in CoffeeScript, not JavaScript proper.
I'd suggest AngularJS (http://angularjs.org/). Why? Because it has a pretty good tutorial section, good documentation AND it's backed by a large company (Google).
But unfortunately, the learning is still up to you ;-)
A free online resource is w3schools, it teaches you back-end too(PhP and mySQL).I really suggest you to learn Angular2, this is a great js framework that most front-end developers use. Always practice,code at least 2 hours a day, make a lot of websites for your portofolio, learn how to make slideshows and animated text, you can even learn how to make a working login page, and a working contact form(a lot of cients want theese stuff). Learn photoshop and illustrator because clients want great design these days.One thing you have to remember is that you never stop learning,if you ever think that you finished learning it emans that you are at the beginning.Good luck and never forget the semicolons :)
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I have yet to learn a programming language, and I have to choose between Python and JaveScript for my project.
With Python, I know, most of the libraries are already there for me, quite ready to use. But I absolutely love the fact that if I learn JavaScript, I can do both server-side (Node.js) and client-side (jQuery) scripting in one language; plus Node.js is considerably faster than Python from what I read. And I am obessed with that.
But that also means, I might have to create my own modules/libraries from scratch for my project, due to the lack of many standard libraries in JS (at least that's what I heard). So, can someone who's been into JavaScript/Node.js/jQuery stuff please tell me this - - what's the timeframe it normally takes to complete writing a custom library in JavaScript?
Timeframe = from "time taken to write a basic library" to "time taken to write a very complex library". For example, "like 10 days to a month."
That will really help me decide whether as a beginner I can depend on JavaScript/Node.js combo for my project right from the start. Thanks.
Well, there really is no answer that will mean anything to you. With no programming experience it may well take you a week to do a simple library and years to do a complex library. For an experienced programmer is may take an hour or less to make a simple library and years to make a complex one. With that in mind:
1 hour to 10 years to create a library from scratch.
I've had pleasure of learning first Python and then Node.js and it's clearly harder and slower to write production level stuff with Node.js.
Main reason is the Javascript itself that is pretty nasty language, consider Coffeescript from beginning.
Node.js callback based approach makes imperative coding difficult and learning curve steep
Javascript prototype based inheritance is difficult to master compared to Python object oriented model.
Python philosophy is that there should be one (obvious) way to do it right. Not so with Javascript.
Node.js module documentation is usually very poor compared to Python that has of course much longer history.
At least for me writing similar library in Node.js than with Python takes roughly 50% more time.
I've written a ton of node.js libraries for my work at i.tv. The fact is that if you know Javascript it's not that hard and there are already a ton of libraries out there. For the stuff I imagine that you want, the answer is that someone else probably already figured out how to do it. If that's not the case JavaScript is incredibly easy to learn and has a great community. Like other posters said it doesn't strictly enforce conventions or a best way, but learn from examples, see what other people are doing and ask for help on StackOverflow or IRC!
Some of the libraries that exist include database connectivity (mongoose), web-framework (express), making http requests (request), doing fancy stuff with dates (moment.js).
Two great places to look for node modules are:
https://github.com/joyent/node/wiki/modules
http://search.npmjs.org/
For general node instructions and help, there are some great (though occasionally dated) articles on the site http://howtonode.org/. If you want to get into the knitty gritty the node.js mailing list is a great place to learn about the latest and greatest modules. A final suggestion is to following the JSMentor's mailing list. People there debate JavaScript best practices all day long.
Best of luck to getting started with node.js. It's a lot of fun.
Well, a very simple library might just take half an hour or so if all it does is creating color hashes from supplied strings. Small bindings to C++ code with four or eight methods are also doable in a few hours. However, other projects, like socket.io, need multiple contributors that constantly work on it. It's really hard to answer.
Do eenie minie mo and pick a language to learn first.
Your question is similar to:
"I don't know how to write/read in Japanese or Chinese. How long will it take for me to write an article in either language"
Regardless of how you look at it, you need to learn how to "write/communicate" first. Python vs. Js shouldn't be a concern right now.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
There's a few mentions of Javascript newbies getting starting by checking out some of Douglas Crockford's work (https://stackoverflow.com/questions/11246/best-resources-to-learn-javascript), but none of his resources seem to be for those looking to learn from the ground up.
Are there any suggestions for complete beginners regarding how best to learn JavaScript?
Personally I have plenty of HTML and CSS experience, and some PHP (which would help learning JS), but for those that don't know any programming language what would you recommend?
I would recommend:
Eloquent JavaScript (interactive tutorial)
A re-introduction to JavaScript
Mozilla JavaScript Guide
Javascript Tutorial for beginners
I have been using the tutorials in Learnable.com from the Sitepoint folks, Lynda.com, and Tutsplus. These are all paid services, but I learn lots from them. The Codecademy Javascript Fundamentals tutorial/class definitely gets a thumbs up. Codecademy is real time, challenging and free.
Code Year also has a great program for ground up learning!
I have been working my way through Codecademy's offerings, specifically, "JavaScript Fundamentals", the "non-track courses" in JavaScript, and, as mentioned above, their current "Code Year."
I am coming at it from the perspective of someone who used to write *nix shell scripts and C and Fortran (yes, yes) code for a living a while back, and who lately has been doing some basic HTML/CSS, so some parts were obvious. Most of it, though, was new to me, since I had pretty much no experience with object-oriented or event-driven programming.
On the whole, I have found it very useful. It can be a bit frustrating getting your answer to a particular exercise to "pass," because the validation process appears to be sensitively dependent on the individual "teacher's" ability to write good checks, but this is only a minor complaint. Mostly, this is not an issue, and the already-posted answers on the forums on the site are quite helpful if you're stuck. Generally, though, doing what you're asked will get you a happy success message, and I really like the interactivity of it all. It's not perfect, of course, but I feel like I'm getting a good introduction to the key points and concepts of JavaScript; enough, at minimum, that I can speak enough of the language to know how to Google/Stackoverflow things more precisely. And really, I feel like I'm getting a lot more than that -- the dumb ideas I've had for little utility scripts are becoming a pleasure to implement.
http://www.w3schools.com/js/default.asp
As ground up as it gets.
"Javascript, the good parts" is very good, but you need to have some theoretical background or some serious programming experience to put it to use. It is a bit high-brow. However if you have had programming courses during your education it will be fine.
I have been learning from: http://www.informit.com/library/library.aspx?b=STY_JavaScript_24_hours
I'd say W3Schools is a pretty good tutorial for someone with no programming experience. But as soon as you finish that, start working through Crockford's material, and unlearn all the bad stuff you learnt.
I don't know of any introduction to JavaScript that follow's Crockford's good parts, but he says in the introduction to his book that he'd like to write an introduction to JavaScript at some point, so fingers crossed!
Head First Javascript is an excellent book for beginners. The Head First series does a great job of breaking things down to the basics, but still covering a lot of ground throughout the book.
There are NOW some good interactive tutorials for learning Javascript right from the beginning. If you are fairly new to Computer Programming, try Code Avengers (a site I helped create) or CodeCademy. Both are free and get you to write code right from the beginning.
If you have a some programming experience, try Code School. It has courses for html, css, Javascript and JQuery. However, they do cost about $50 a course. Learners watch fairly entertaining video tutorials then complete programming tasks.
My experience in learning and teaching others to program is that these type of sites can be both and effective and enjoyable way to learn programming. Probably in conjunction with other resources.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I realize that title may require explanation.
The language I first learned was C, and it shows in all my programs... even those not written in C. For example, when I first learned F# I wrote my F# programs like C programs. It wasn't until someone explained the pipe operator and mapping with anonymous functions that I started to understand the F#-ese, how to write F# like a F# programmer and not a C programmer.
Now I've written a little javascript, mostly basic stuff using jquery, but I was hoping there was a good resource where I could learn to write javascript programs like a javascript programmer.
Douglas Crockford's - Code Conventions for the JavaScript Programming Language would be a good place to start.
I learned a lot of useful information in regards to code convention through his video tutorials, which I suggest viewing. I posted the link to the first video out of the four in the series.
Also, as suggested by Ben, (which is a book I would also highly recommend) is Douglas Crockford's book JavaScript: The Good Parts
If you want to find good explanations on jQuery, check out the creator, lead developer and fellow StackOverflower John Resig's website/personal blog.
The book Pro Javascript Design Patterns is a great resource:
http://jsdesignpatterns.com/
I really like this article:
A re-introduction to JavaScript
http://eloquentjavascript.net/
It may be a little wordy, but it gives you some excellent examples that will stick with ya.
The more you work with JavaScript/jQuery - especially working with other people's code - the more of the style you will pick up. I recommend reading though the documentation on the jQuery website and maybe picking up a book on Javascript. Then just keep working with it. Also, make sure you keep looking at other people's code - read through the source code of some of the jQuery plugins you are using, and seek out examples online for 'best practices'.
First off, start using JSLint on all your code, for at least a week (http://www.jslint.com). I'm not going to say you should use it constantly, forever and ever, and it's perfect, because it's not. But, it will help you learn a lot about JavaScript, if you take the time to read what it says, and understand why. Even if you disagree, which you may, understand the reasoning behind each message. Then you can decide if it's a tool you'd like to continue using.
The other first step is to pick up a copy of JavaScript: The Good Parts. This is by far the best book on JavaScript. It's short, very easy to read, and really will help you learn better JavaScript. http://oreilly.com/catalog/9780596517748
Other than that, there are a lot of good blogs to follow. You can find these via google, but I'd look at Perfection Kills and John Resig's blog, in particular. I think mine is pretty good too, you can find it via my profile if you're interested :)
I would also recommend "Secrets of a JavaScript Ninja" by John Resig. It will be out in July this year and would definitely be an excellent resource.
Else, Douglas Crockford "JavaScript:The good parts" is excellent.
Javascript has functional programming roots.That makes a big difference compared to the OO world.
Here are some links that helped me jump the fence:
A simple explanation:
http://www.joelonsoftware.com/items/2006/08/01.html
A deeper one:
http://www.hunlock.com/blogs/Functional_Javascript
Read/debug the code of this library:
http://osteele.com/archives/2007/07/functional-javascript
You can read/debug the source code of PURE, a JS templating engine we wrote.The 2nd version was totally rewritten in functional JS.