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 9 years ago.
Improve this question
I have a question about the design of a web application with JavaScript: Should a web application be designed to work without JavaScript, and then later add JavaScript for users that have it? Or should I design a web application with JavaScript in mind and then add fallback functionality for user that do not have JavaScript.
I hope this question makes sense. Let me know if you need me to clarify something.
Thanks.
The terms, that describe what you are looking for are "Progressive Enhancement" and "Graceful Degradation".
Here is good article describing what you already have in your question in more detail:
A List Apart: Understanding Progressive Enhancement
An article that could help you on your decision:
Dev.Opera: Graceful degradation versus progressive enhancement (The named reasons are still valid, despite the fact that the article is marked as outdated)
I favor progressive enhancement in most cases, since it is more accessible when it comes to different output devices, software and the capabilities of the user using that website.
Answers like "there are so few people with JavaScript disabled" are just one side of the medal. Not relying on JS also could improve your site experience to non-graphical clients like search engine robots (how should they load AJAX content, when that is only accessible via JS?) or screen reader software. In fact there are many more good reasons not to rely on on JS.
At this time of age there are so few people with javascript disabled, that there is no signifcant benefit for creating a static version. Try to imagine who is your visitor and if he/she would even know how to disable it.
I suggest you to design a web application with JavaScript in mind and then add fallback functionality for user that do not have JavaScript.
Now a days everything runs on JS only. You should create some kind of services/API on server side and a separate project for UI, this is the trend being followed these days.
UI project can be based on any JS framework or it can even be a simple MVC/.net project. This approach can decouple stuff, and thereafter you can create 2 UI projects one for JS users and one for the users who do not have JS.
seems a bit of a work but, it will pay in the long run.
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 3 years ago.
Improve this question
Recently I started learning web development. I tried to read the HTML and CSS codes of some famous websites in my web browser. But I observed that they intentionally mess everything such as changing the real names of the bootstrap classes, while looking at the design architecture and page layout anyone could guess what kinds of technologies are used.
What would be the possible reasons?
I think it's not about security because any average programmer can still know everything about their front-end technologies if he puts some efforts.
There are multiple reasons.
Some companies, indeed, try to obfuscate some of all of the code to hinder some of the attacks. That is not 100% proof, of course, because a sophisticated actor can still reverse engineer almost any code that's out in the open.
However, most of the times it's simply how modern frontend development is done nowadays. The trend has been moving more and more towards using various build, bundle, code-minification and packaging tools. Like Webpack, for example.
What you see simply is a result of source code being processed packaged for optimal delivery and running in the browser.
The days when we could view web-page source and inspect pure HTML/JS/CSS, as it was written by the original developer, are long gone.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
Can we make a web based messenger application through the use of just these two languages javascript and jquery?
You will at least need to learn some basics of HTML as well.
(Hopefully) you also want to style your application, which means you should learn at least some CSS.
As far as programming languages go you will however need to know JavaScript and can use jQuery (among other things) to manipulate DOM.
Many modern applications however user React or Angular heavily to make the application building process easier in the long run.
You will also need to store your data somewhere, which means either server-side code and learning how to use a database such as mySQL, MongoDB or CouchDB to name a few (noSQL such as MongoDB or CouchDB are probably more appropriate for a messaging app). Or make it easier on yourself and use Firebase or something similar to store and retrieve data as well as handle user account and authentication.
I know all this may seem overwhelming, but making web apps involves a lot of moving parts.
SUMMARY
If you are starting out, I would recommend simpler challenges than a web app, but if that is what you are set on, the easiest in my opinion would be:
HTML + CSS + JQUERY (this is how your app UI is handled)
JAVASCRIPT (connects UI and data)
FIREBASE (stores data and enables user management and authentification)
Resources to help you get started:
https://www.codecademy.com
https://firebase.google.com
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 7 years ago.
Improve this question
I see a lot of Javascript frameworks created recently since I've been learning web development (http://www.infoq.com/research/javascript-frameworks-2015). Do you know what kind of knowledge you need to know in order to create a Javascript framework in particular or any framework in general?
Creating a JS (or any other kind of) framework isn't something done easily, but some of the steps include:
Find a niche where no framework exists yet or doesn't cover a specific use-case, and where you have good knowledge of the problem space
Design and implement an easy to use (and, if required, future-proof) API
Publish it, e.g., on GitHub and advocate for it with a website or through blog posts
Maintain it
Hence, you'll need to know how to design good APIs, reasonable JS knowledge to build them and patience.
Note: while the initial fun starts with building out something, releasing and maintaining an actual framework is far more complex and requires time and effort - especially to build a community and once these users start requesting additional features, or your initial design considerations fall short of the new use-cases imposed by real-world usage. You can always build something and publish it to NPM, but be aware that maintaining a project in the open source community involves more than "writing code", and deprecating or deleting a framework/package can yield surprising results.
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 9 years ago.
Improve this question
I am trying to build a web application which will have many different pages. each page mainly shows data in table and various graphs based on data.
I want to decouple front end completely from the backend. for this reason I am considering angularjs.
My concern is following two points:
angular js is considered best for SPA style applications
angularjs will load the partial view when required and will load data through ajax, every page needs at least two seperate http requests to render the page.
Is it really a good choice to select angular or any better approach?
I think that using Angular is a good solution, I am working in a very big project, that manage a lot of data and angular is working perfectly.
There are a lot of advantages of using Angular. However, I think that it depends on your needs, if you don't need a rich experience of user, maybe you can select other option different from a SPA that could be faster, if you don’t have experience developing a SPA..
I think that in your case, it is most important choosing well the backend technology than the frontend technology, because the responsibility of managing the data is from the backend.
I hope that helps.
Angular JS is a good for these kind of applications.
1.) Angular JS simplifies your code.
2.) It builds on HTML so you don't have to learn something entirely new and it is fast to catch up.
3.) It has a large community so you can get help on topics easily.
4.) It is continuously evolving.
5.) It is based on MVC structure.
P.S: Read on dirty checking part of angular as it is considered best in some scenarios and not so good in others. It is considered to keep no. of objects to 1000 or less while using angular for good performance.
Hope that helps! :)
From my experience I would say yes, is good. But maybe you can see with your eyes some case studies and applications built with angular: builtwith.angularjs.org.
Check this blog post also: Building large apps with AngularJS.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I need to build a website that allows users to upload files and a few other actions. I have zero experience with javascript so I was wondering if there was some type of built site that already had logins coded so I could just work on the other logic?
I'm a long time delphi developer so I'm not new to programming. Any javascript video references would be great as well.
Thanks in advance.
You don't want to be handling logins with plain-old JavaScript unless you start building a super cool NodeJS setup, which, I wouldn't recommend if you have zero experience with JavaScript.
To ease your JS adventure, check out JQuery.com which makes it easier to code JS without worrying so much about browser quirks.
For easy server-side login, I recommend PHP since there are literally millions of tutorials and free code snippets out there, hosting is cheap, and an enormous community of PHP developers online to help you. To ease your PHP adventure, start with a framework such as CodeIgniter.
To answer your question, here's an example of a PHP + JavaScript (JQuery) login solution: http://blog.webwizo.com/2011/05/04/simple-login-with-php-and-jquery-ajax/
In order to upload files, you'll need a server-sided script, possibly done in PHP.
As for communicating with the server, it can be somewhat daunting for a beginner, but it's largely done via xmlhttprequest (otherwise known as AJAX).
Here's a tutorial on how to use it by W3CSchools, but there are plenty more on the net: http://www.w3schools.com/ajax/default.asp
One word of advice; don't make the mistake of relying of a JS library too soon; familiarize yourself with the language and its capabilities. A lot of answerers are just going to say "Use JQuery." You can (and possibly should), but it's important to know how Javascript works without it.