Need advice about which tool to choose?Ask the StackShare community!
JavaScript vs PHP: What are the differences?
JavaScript and PHP are two popular programming languages used in web development. Here are the key differences between JavaScript and PHP:
Purpose and Context: JavaScript is a client-side scripting language for enhancing web pages with interactivity and user interface. It handles events, manipulates the DOM, makes AJAX requests, and implements client-side logic. PHP, on the other hand, is a server-side scripting language for generating dynamic web content, interacting with databases, handling form submissions, and performing server-side operations.
Syntax and Language Features: JavaScript and PHP have different syntax styles and language features. JavaScript follows the ECMAScript standard and has a C-like syntax. It supports modern features such as arrow functions, classes, modules, and promises. PHP, on the other hand, has a more traditional syntax influenced by C, Java, and Perl. It provides features specific to server-side programming, such as built-in support for handling HTTP requests and responses, session management, and database connectivity.
Client-side vs Server-side Execution: JavaScript is executed on the client-side, meaning it runs within the user's web browser. It is responsible for handling interactions and rendering elements dynamically on the user's device. PHP, on the other hand, is executed on the server-side. When a user requests a web page, the server processes the PHP code and generates HTML, which is then sent to the client's browser for rendering.
Use Cases and Application Domains: JavaScript is primarily used for front-end web development to create interactive user interfaces, validate form inputs, and make asynchronous requests to servers. It is also used for building web-based applications, mobile apps, and even server-side applications (e.g., with Node.js). PHP, on the other hand, is often used for server-side web development. It is commonly used in content management systems (CMS) like WordPress, e-commerce platforms, and server-side scripting for web applications.
Community and Ecosystem: JavaScript has a thriving community and versatile applications beyond web development. It is used for mobile and desktop app development, game development, and more. PHP also has a strong community, especially in web development, with frameworks like Laravel and content management systems like WordPress.
In summary, JavaScript is primarily used for client-side scripting, enhancing web interactivity and user experience. PHP is a server-side scripting language used for generating dynamic web content and handling server-side operations.
Hello Devs,
I am planning to implement a ETL test system for checking data quality and business use cases. I am confused on what stack to use. Any advice on the below will be very helpful.
- Any existing frameworks and its source code for help
- Any other stack apart from the mentioned stack (that might be suitable)
- Any ideas for features are welcomed.
- The usage of multiple BE stacks.
If you want to create using Python language, Robot Framework is one very helpful tool to improve your test scripting and we have a lot of methods created by the community. If you want to use Javascript, Cypress in terms of benefits is the better option to create and maintain tests, and run and generate reports in many browsers is really easy with them.
Hello everybody,
I'm Syed, recently graduated from university. I studied C++ as the first programming language and later I have (a little) experience working with C#. I also have a basic understanding of Kotlin, JavaScript and Python. As of today, I am studying Kotlin from https://developer.android.com/.
Please give me some tips about my career. Which language should I choose in today's modern era? Whether I go with Web development or work on Android app development. Thank you for your assistance.
Hi Syed, I wish you all the best. I'm an experienced programmer with more than 15 years of experience. Recently in my company, we were trying to hire a MERN Full-Stack developer and we found many who can code in React but few who were capable of thinking logically and actually able to solve the business problem. Learn any language or package, but keep in mind to learn for a goal. Syntaxes don't matter, we hire to achieve goals. Small to medium companies, usually hire full-stack developers due to the lack of resources. So it would be great to learn the following: For Web, I would suggest "React", and for mobile development, "Flutter" comes in handy with lots of promising future. How about learning both? much better but it's all about you. Good luck!
Hey everyone, I have a matrix chart drawn in HTML5/CSS 3 dominantly using CSS grid. I would like to add interactive features and am unsure about the best tool. My programming knowledge is limited to 2 semesters of Java in college, so I'd have to learn the language as I go. I am open to anything, but the selected languages would be useful in future projects.
Here are the features I am attempting to add to the site linked as my blog:
Assign over 120 attributes each to over 400 elements (probably in a DB)
Procedurally position elements in a matrix chart based on user-inputted filters (filtering and searching)
Procedurally position matrix elements based on attributes weighted by user-input
Change style of elements based on user input (highlighting)
Allow saving matrix chart states to be revisited or shared
Provide a user-friendly interface for users to submit the above input
Build several columns or matrices that are separate but related and seamless to the viewer
PyCharm + Python + Flask + Jinja2 is enough to build web server/ajax and JavaScript + JQuery (maybe React). You can write small easy application but also extreme high scalable application.
I know Java but it need 4x time more code and code is not clear (too much forced use of @decorators) - too complex and takes more memory :)
Remember if you code in Python it is easy to code in Java but if you code in Java you must understand that Python is much more flexible and powerful - also easier to learn.
There are two main facets to interactivity - whether your frontend (Javacsript, HTML, CSS) is programmed to behave dynamically based on events and on any other preprogrammed behavior, and based on what information your server can send and receive and compute for the benefit of your frontend. For the former (a dynamic frontend) you'll need to use Javascript (or Typescript) in some form. For the latter (a server with custom behavior and data endpoints beyond just sending static HTML etc. files), any of the major languages can serve this purpose. However, if you are going to create a dynamic frontend with Javascript and don't know that language at all, then learning it will be a task in itself, and without knowing a backend language well either (probably the case with only two semesters of one language a while back), you ideally don't want to also have to learn a whole other backend language on top of that. That's where NodeJS comes in. It has essentially the same exact syntax as frontend Javascript (just different native libraries). Since you already need to learn Javascript to make the frontend behave dynamically, if you also want a custom backend, NodeJS will spare you a big learning curve on top of the existing learning curve of learning JS. NodeJS is also highly performant for low-compute high-volume requests, i.e. handling a large barrage of requests if each doesn't require a lot of complicated behavior on the backend. A lot of coding bootcamps teach this, commonly called "full stack JS", for this reason - it allows someone to learn a constellation of full stack web development skills from the mastery of one language syntax. NodeJS + ExpressJS is also one of the easiest backend languages + REST API library to use to build a backend. Look up "NodeJS Express Hello World", and you'll be shocked at how easy it is to build a basic server. As far as frontend frameworks go, if this project is very limited in scope, JQuery could be fine, but I'd highly recommend learning React for something more involved - it will be immensely easier to manage and maintain, and generally lends itself to much better and more intuitive code organization. Its use of components will also be somewhat familiar and intuitive from the object oriented programming you learned through Java. Create React App is great tool to use, especially when first learning React, to avoid all of the finicky nonsense in configuring transpilation etc.
React is hands-down the tool I recommend to add interactivity to your matrix. Because it is Javascript, it will leverage a lot of the formatting from Java. Python would be very foreign to you. React shines in allowing you to use OOP principles within the JavaScript language and it is really powerful, fast and browser friendly.
Use Javascript alongwith HTML CSS and you have complete set of application ready (even for future for PWA or bundled applications).
You can use charts.js library https://www.chartjs.org/ or https://apexcharts.com/javascript-chart-demos/. You can find many examples, you can have a look at https://codepen.io/ksarpotdar/pen/NWyqqZM?editors=0010
Ok. Clearly you forgot the best tool to give for interactive features. JavaScript! In particular I recommend the freeCodeCamp JavaScript course. Here it is.
I am unhappy. When doing my research, I heard Python is useless. Data science is an unworthy field thanks to TensorFlow, and web scraping has also become pointless since the introduction of the PWA. Since PWAs are only frontend, I feel forced to learn JavaScript, and to ditch Python. I love Python with all my mind, it's simplicity, conciseness, and easiness as a tool. Here are a few questions:
- Should I forget Python and move on?
- Are there any PWA alternatives to JavaScript/TypeScript. I've been thinking of using Python for WASM and use HTML+CSS for the DOM to create the PWA. Is this possible?
- Why is JavaScript such a pain in the butt
- What's the point of me learning Python if it's not useful for web development?
You should not ditch or forget Python because of what you hear or because of one particular project. It's probably going to stay relevant and useful for the coming 20 years. If you're a programmer, you should however be prepared to use several tools, and programming languages are just part of the toolbox (like HTML or CSS, but also your IDE, powershell, linux commands, etc.) It's not for nothing that this site is called "stackshare".
Python is great for data science but it's not very performant and eats up loads of resources. I recommend that you give Go a go. It's easy to learn and very fast!
Python is definitely not useless, It has a ton of usecases, with a huge community behind it, but not that performant and consumes lots of resources, I don't think you should abandon it, and PWA is kind a in its early stage, so I doubt that there will be any language better than js for developing it any time soon, so I guess there are no alternatives, but I guess you will like js/ts if you spend a little more time playing with it, and the same goes for wasm it is also in its early stage, and i guess web assembly and rust will be used a lot for that, and lets say you have built a frontend web app , now with the help of python + django or flask you can write server code, and learn a little bit about databases, then bravo you are a full stack dev.
JavaScript is reduced Python. Python is powerful. If Python is not powerful you can mix it with C/C++ - this is not available in JavaScript in easy way. I am programmer and electrical engineer too - I think for research Python is the best thing. JavaScript is better for Web. I code in both very good.
Hi, I am working as a web developer (PHP, Laravel, AngularJS, and MySQL) with more than 8 years of experience and looking for a tech stack that pays better. I have a little bit of knowledge of Core Java. For better opportunities, Should I learn Java, Spring Boot or Python. Or should I learn Drupal, WordPress or Magento? Any guidance would be really appreciated! Thanks.
Hard to answer it depend on market. Python + Flask + Jinja2 is better that SpringBoot. Java can be paid better now but I think that future is Python. I code very good in PHP, Java, Python - prefer Python for less code and more effects. PHP is little ugly and limited to web.
What do you think about Node JS with React? I feel like this stack is fairly paid more than PHP.
I am also a Laravel developer, in process of transitioning towards Node js.
If you wanna personally connect with me, hit me up at @izshreyansh on twitter.
Hey I'm currently an undergraduate in computer science for almost 5 years now, still left with a few courses before I complete. I know that I'm not good at programming but still I choose developer based programming career approach, I have made plans to start my career in websites, etc, for that, I have purchased books related to HTML5, CSS , JavaScript. I'm currently learning HTML5 and CSS only and after this some JavaScript I am really confident in my decision but would love to know what an expert developer advice thanks in advance.
Whatever you do don't go WordPress path. Developers over-there tend to ignore system limitations and hardcode and overengineer their solutions so as to please their clients. If you are a beginner probably you'll get to work on someone else's shitty code and will be asked by your boss to do "yet another impossible thing with Wordpress". And... Probably... You'll do it.
My suggestion is: think in stacks and don't start too low. Starting with HTML, CSS3 and JavaScript is too low. Start on higher levels and with something practical. You'll have time for basics some time later and it would be much easier, because you'll see those technologies are compliment to what you do and not your main objective.
My suggestion for you:
- Android Mobile App Development path (complex enough so you won't get bored)
- All things web3 crypto, nft, virtual reality, blockchain path (has tons of computing web development tasks)
- Cloud computing setup and administration path (good, because you say you're not good at programming)
- Artificial intelligence and automation (this is future, people need this)
I've also found it helpful to think of each stack as a surface (find Google Images "radar chart") . Every time you try to learn something new you start in the center, with all technology-points overlapping. You are as low as you can get and you know nothing. Your job is to expand outwards each technology so as to make a stack-surace. The more surface the better. You'll see that some technological-aspects are easier to expand than others and plan your time accordingly.
Have a good start!
You can also try starting with one of the big marketing agencies. Even if you don't feel like you're ready to start as a web developer (you likely are, though, they hire at all levels) you can start as a content author or similar supporting role until you're more comfortable, then transition into a development role within the same company when you're ready.
I would recommend you to learn these quickly and get on learning a good front-end framework like Vue, ReactJs, Svelte. Pick up real world projects not just learn from books. Always keep learning about the new technologies used to develop things because IT Web development tools and their approach is growing faster than ever, you have got to keep up with those new techs and tools. Final advise, open any job portal, find your targeted job and see what requirements are their.
I don't believe that you are confident about your decision to follow a career path as a developer. This migh be your department's fault and not necessarily yours. Most good developers are already working as developers at that age. Although your current status states that you are an intern you are struggling to find a good starting point. Since you are interested in website developmnet you can start learning programming using a mainstream CMS such as wordpress. Do you know how many companies and self employed guys make their living by customizing wordpess? But if you want to step out of the crowd then seek for junior jobs on a fintech or on a vertical market such as travel or betting. Search for online job oportunities and find out what technologies these guys use then take an online course and start learning the language. Within a month or two apply for a job as a junior and use as reference the online course.
JavaScript is an ever growing technology with lots of opportunities and great depth for both front end and back end development. I would say that JavaScript is a safe bet in terms of furthering your career as a developer in 2022 and beyond. There’s lots of tools and frameworks based on this language that you would have to make decisions on which ones you want to become an expert. I recommend you follow interesting people that you admire to draw inspiration from. Such as Ben Awad or Jeff Delaney. Check this web page recommended to me by the latter on his YouTube channel “Fireship”: https://2021.stateofjs.com/en-US/resources/
JS + HTML + CSS only tackles the front-end of programming. I suggest you can start to learn by finding an open API related to something you love and then creating a website for it. (E.g. movies, documentaries, music, whatever you are into) Also you can do this dude's tutorials https://www.youtube.com/watch?v=dtKciwk_si4
Later on, when you've already one a few projects, start to learn the backend side of things (database + whatever you want - C#, Python...)
this article might help you. Web development is a combination of skills. not only developing skills but also SEO and other stuff. codehub.lk/web-development-skills-you-must-have/
I'm working in a company as a software engineer, Mainly we are focusing on PHP as the product is being developed in PHP (native) also there are a few products in Node.js, I tried to introduce Laravel but there is no luck to work on it. Now I have started learning Go language, should I focus more on Go or continue only with PHP and NodeJS. BTW I know PHP and NodeJS very well.
Be flexible, be agile in your personal and professional life. Don't be afraid to learn new things and step outside of your confort zone BUT with reason. Reason can be a career path or just money. Does Go belongs to your career path? Does Go belongs to your company's toolset? Do yo seek for new job oportunities? Some people follow a complete career path by using a single language i.e, PHP or java, but if you want to standout in the crowd this is not enough. You already know PHP. This is an oportunity to learn something new. In general, I would advise you to learn at least one language & library/framework per stack . This will help you to lead a team someday.
I am about to complete my graduation with a computer science background. I want to pursue my career in software development. My front-end knowledge is very poor. I didn't like PHP so I didn't go for Laravel. My university offers a course on ASP.NET, I liked C# that's why I took asp.net. But now I think .net tech is unnecessarily complicated and most of the job offers available for .net are not for freshers. Should I try js and Node.js now? I mean as a fresher which tech stack should I choose for web development(Backend)?
Just don't .NET
. It was a failed idea from the start. Node and javascript are easier to learn, with much wider adoption, and more active communities.
.NET
is an old experiment in using a markup language to separate the UI from the business logic. The idea was that this would allow a small team of hyper-competent engineers to build the tooling and code for a large team of less-skilled front-end developers to leverage. In practice, leveraging that customized UI markup requires understanding and adjusting the underlying code. The result is that any UI change requires a hyper-competent .NET engineer.
However, many larger companies bought into it a long time ago, and now have a hard dependency on old monolithic .NET ecosystems, and they do need .NET developers to maintain them.
So, you can get a well paying .NET job without much difficulty. However, you'll neither like it, nor be doing anything interesting. There's no growth here, only a very long slow death of .NET (that'll probably take another 20 years).
Node and Javascript are sticking around, and still growing.
What I can see, you are confusing yourself, if you studied .Net now it's better to work as .Net developer, and you will find opportunities as fresh. Just search and don't waste your time. After you get more experience in .Net, then you can learn NodeJS if you still need to learn it.
Hi, I learned some skills like HTML & CSS and JavaScript. Now I am learning React but sometimes I feel that I'm not good enough in the skills that I learned before although I make projects by any skills I learned. Every moment I feel that I need to be perfect and I know it's a wrong feel. Now I try to know How can I determine that I have the basis of any skills that I learn I mean that When can I move from learning completing tutorials to learning according to my requirement.
I admire your hard work for learning new technologies, but I would definitely recommend you to go out there, find internships and then learn by doing. There is not too much you can learn just from the tutorials, there are other important factors that you need to be a good programmer, you need to communicate, and do projects according to the liking of the client/project manager.
I would say it again, go out there and find internships to gain experience.
Build a relatively more complicated project. Probably a solution for a problem you might facing rn. Take a few months to build it. Get yourself stuck in the bugs. Try to get outta that bugs. Don't worry about that imperfect feelings. Even senior devs go to Stackoverflow to seek help. And most importantly, finish the project, and don't give it up in the middle of the journey.
I think with anything related to personal development is about comfort zone management. Being too comfortable one can feel bored, too outside ones comfort zone one may feel out of their depth. I'm sure there's more to this down the rabbit hole of psychology. However I found learning about motivation and striking the right balance of extending myself has truly helped keep me pushing forward at a steady pace. In the end do projects that are motivate you whilst incorporating learning as you go. So pick a project that you know is possible, that you can achieve if you put the work and effort in, and that the outcome of it will be as you expect. I think even the perfectionist in you will find that satisfying.
I was in your situation 6 months ago. I was well experienced in HTML, CSS, JS and NodeJS but wanted to learn React too.
What really got me going was doing one project for my customer. It was a good basis to learn React in a real environment and it got me rolling.
I can only advice you to do some REAL projects, not a a tutorial to-do list application of sorts: these won't teach you around hard stuff to handle as they are very controlled.
Go out there, create a real application for a business or as an intern somewhere. :)
Generally speaking, what are the most important things you expect a junior developer to know and be able to do from day 1 in your respective tech stack? Firm grasp of OOP? SQL? MVC? ORM? Algorithms and Datastructures? Understanding CRUD & the request response cycle? Database design? framework familiarity? Postman? Deployment? TDD? Git? Language-specific knowledge? Other things?
Start with building a solid understanding of computer science fundamentals. Understand the basics of building blocks - memory, processing, storage, networking. Understand what CPU bound, memory bound, I/O bound, network bound processes are. Understand the cost of accessing data from Memory vs. Disk vs Network. Understand how multiple CPU threads help in optimizing the performance of a single machine.
Build expertise on a programming language. You may pick any language of your choice. I would recommend starting with Java / Python. Make sure you know one language really well. Build a strong understanding of Data Structures and Algorithms. You should be able to develop an intuition on when to use what. You may practice DS and Algorithm problems, using the language of your choice, on a competitive coding platform (e.g. Leetcode) or by building your own App!
Next, get familiar with basic cloud computing and distributed system concepts. Here is a good resource for that - https://www.youtube.com/watch?v=p7NkTUyEE1o&ab_channel=JeffreyRichter If you understand the computer science fundamentals well, you will be able to apply those concepts here as well.
Hope it helps!
Ability to read code and willingness to try to reason flow of operations and information. Tools and technologies change, one doesn't need to have them in toolbelt from day one. All things you name are relevant in some contexts, so it's not bad to understand them.
Just learn to learn. Learn to search and develop your logical thinking, that's all you need. No books, no deep study of how computers work, just logic and willingness to learn
For me, it is less of a specific technology you know (although I would prefer you have some knowledge of some of my team stack). It is more the way you get into a problem, the eagerness to learn more, the true sincerity to say "I don't know", the open mind to find solutions in different ways and the "Yes we can" mentality no matter how hard it is.
Most employers don't expect from you to know how to implement CI/CD or any other funcy stuff. As junior developer you should focus on building a good toolset of good software practices & principles. Your soft skills are important as well. Learn about soft skills. Be eager to learn, be humble and show you talent and your creativity through your work. If you want to become a good developer ( at first) and a star engineer (at a later stage) then computer programming (coding) is your number one priority . Coding is like painting. Putting aside your talent, you have to practice a lot and improve your outcome each time. As junior developer you can learn how to write good code by studying existing code found in public git repositories (i e , github). As junior developer you should study some good software principles (i.e., DRY, KISS, YAGNI) and always recall them each time you write software code. As junior developer you should learn about coding standards and conventions. You will have to follow to your company's coding conventions (soon or later) as well as you will realize that you have to write code cosistent to the existing code base. At the end of the day, code consistency matters a lot. You have to improve your code day by day. If you manage to follow some good software practices you will find out that you will need an ORM to work with your database. Then you will realize that you need the X web framework to build your REST API etc. To sum up, you will start building a toolset with a single programming language and some good software practices & principles and then you will put new tools in it day-by-day.
Coming from a C/C++ background, I picked up PHP 20 years ago. Today, the language is still in constant evolution while still having a stable base. It powers all of my backend project. It is fast to prototype and get started, and is supported almost everywhere.
Python and Node.js do not provide anything that PHP cannot already offer, so there is no point for me to switch to those language. Mature framework like Laravel provides real ease and speed of development to kick-start any new web project, be it a simple API or a robust ERP running on server-less architecture. There are libraries available for machine learning, crypto, web3 and pretty much anything you can think of.
I’m well aware of the hate that php receives and some of it is well warranted. But the ease of implementation for so many features that I find myself needed on a daily basis is head and shoulders above what I could achieve with JavaScript on my backend. I can do more without the need of frameworks but I still have many options if I want that. Especially with database handling I find many of the complainants about php to be pure rhetoric.
Python will be used in order to train machine learning models from our data. We chose python for this task because it is the most common language for machine learning. It has very performant libraries like numpy and scikit-learn that provide functionality for manipulating data and creating models that you cannot get in other languages like JavaScript and Java. Additionally, it is the most familiar language for us to use for machine learning because almost every machine learning course teaches ml using python.
Javascript will be used for both our frontend and backend on the web service. JavaScript is ubiquitous as the language to use for the frontend. For the backend, we decided to create our server using JavaScript because of its easy setup; using Express we can create a server in just a few short lines of code. It is simple not only to run the server locally, but to host it as well because any major service will support the language. JavaScript is a simple language to code in and familiar among our team members, so using it will help speed up development. Using JavaScript allows us to use NodeJS and npm, so we can use packages to easily set up the server, connect to a database and other convenient utilities. We also considered Python for our server. It is also very simple to create a server in Python, especially using flask. However, the extra familiarity with the JavaScript language and the ease of using packages were enough for us to pick JavaScript as our language of choice.
Python: The top language in machine learning area because of the various open-source libraries. Our company will rely on open-source libraries for development as well.
Amazon EC2: Training machine learning model needs to be running on independent 3rd party computing resources. AWS EC2 can provide a variety of virtual computing resources based on what users need.
React+Javascript: React is popular and everyone in the team is familiar with it. React is an open-source JavaScript library that is used for building user interfaces specifically for single-page applications.
ExpressJS: Everyone in the team has used expressJS for development. It can create server-side web applications faster and smarter.
Amazon RDS: relational database service and free to use
Postman: Tool for the team to test API endpoint.
Circle CI: is lightweight and open. Therefore for faster deployment jobs, one can execute their codes on CircleCI as it deploys on scalable and robust cloud servers.
Docker: Easily pack, ship, and run any application as a lightweight, portable, self-sufficient container, which can run virtually anywhere
Github+Git: Julian is from Github so no other choice for us 😎
Slack: Everyone likes it and it's free
Python: Top one language in machine learning area because of the various open source libraries. Our company will rely on the open source libraries for development as well.
Amazon EC2: Training machine learning model needs to be ran on independent 3rd party computing resources. AWS EC2 can provide variety of virtual computing resources based on what users need.
React+Javascript: React is popular and everyone in the team is familiar with it. React is an open-source JavaScript library that is used for building user interfaces specifically for single-page applications.
ExpressJS: Everyone in the team has used expressJS for development. It can create server-side web applications faster and smarter.
Amazon RDS: relational database service and free to use
Postman: Tool for the team to test API end point.
Circle CI: is lightweight and open. Therefore for faster deployment jobs, one can execute their codes on CircleCI as it deploys on scalable and robust cloud servers.
Docker: Easily pack, ship, and run any application as a lightweight, portable, self-sufficient container, which can run virtually anywhere
Github+Git: Julian is from Github so no other choice for us 😎
Slack: Everyone likes it and it's free
2 major challenges for which JS comes as a handy tool, 1st its integration with AWS SDK was at par as Python and .net and the solution comes to hand with the reverse proxy solutions for the application to be running as an instance taking the situation of inside organization demography of resources expertise over the technology.
As a startup, we need the maximum flexibility and the ability to reach our customers in a more suitable way. So a hybrid application approach is the best because it allows you to develop a cross-platform application in a unique codebase. The choice behind Ionic is Angular, I think that angular is the best framework to develop a complex application that needs a lot of service interaction, its modularity forces you (the developer) to write the code in the correct way, so it can be maintainable and reusable.
I had a goal to create the simplest accounting software for Mac and Windows to help small businesses in Canada.
This led me to a long 2 years of exploration of the best language that could provide these features:
- Great overall productivity
- International wide-spread usage for long-term sustainability and easy to find documentation
- Versatility for creating websites and desktop softwares
- Enjoyable developper experience
- Ability to create good looking modern UIs
- Job openings with this language
I tried Python, Java, C# and C++ without finding what I was looking for.
When I discovered Javascript, I really knew it was the right language to use. Thinking of this today makes me realize even more how great a decision this has been to learn, use and master Javascript. It has been a fun, challenging and productive road on which I am still satisfied.
Obviously, when I refer to Javascript, it is not without implying the vast ecosystem around it. For me, JS is a whole universe in which almost every imaginable tools exist. It's awesome - for real. Thanks to all the contributors which have made it possible.
To be even clearer about how intense I am with Javascript, let's just say that my first passion was music. Until, I find coding with Javascript! Yep, I know!
So in conclusion, I chose Javascript because it is versatile, enjoyable, widely used, productive for both desktop softwares and websites with ability to create modern great looking user interfaces (assuming HTML and CSS are involved) and finally there are job openings.
Simple Customer Registration Crud, with the functions of Register, Delete, Edit and List new and old customers registered in the Database. PostgreSQL was used as DBMS, due to its easy use and practicality.
Crud de Cadastro a Clientes simples, com as funções de Registrar, Deletar, Editar e Listar novos e antigos clientes cadastrado no Banco de Dados. Foi utilizado como SGBD o PostgreSQL, pelo seu facil uso e praticidade.
Pros of JavaScript
- Can be used on frontend/backend1.7K
- It's everywhere1.5K
- Lots of great frameworks1.2K
- Fast898
- Light weight746
- Flexible425
- You can't get a device today that doesn't run js392
- Non-blocking i/o286
- Ubiquitousness237
- Expressive191
- Extended functionality to web pages55
- Relatively easy language49
- Executed on the client side46
- Relatively fast to the end user30
- Pure Javascript25
- Functional programming21
- Async15
- Full-stack13
- Future Language of The Web12
- Setup is easy12
- Its everywhere12
- Because I love functions11
- JavaScript is the New PHP11
- Like it or not, JS is part of the web standard10
- Easy9
- Can be used in backend, frontend and DB9
- Expansive community9
- Everyone use it9
- Easy to hire developers8
- Most Popular Language in the World8
- For the good parts8
- Can be used both as frontend and backend as well8
- No need to use PHP8
- Powerful8
- Evolution of C7
- Its fun and fast7
- It's fun7
- Nice7
- Versitile7
- Hard not to use7
- Popularized Class-Less Architecture & Lambdas7
- Agile, packages simple to use7
- Supports lambdas and closures7
- Love-hate relationship7
- Photoshop has 3 JS runtimes built in7
- 1.6K Can be used on frontend/backend6
- Client side JS uses the visitors CPU to save Server Res6
- It let's me use Babel & Typescript6
- Easy to make something6
- Can be used on frontend/backend/Mobile/create PRO Ui6
- Client processing5
- What to add5
- Everywhere5
- Scope manipulation5
- Function expressions are useful for callbacks5
- Stockholm Syndrome5
- Promise relationship5
- Clojurescript5
- Only Programming language on browser4
- Because it is so simple and lightweight4
- Easy to learn and test1
- Easy to understand1
- Not the best1
- Subskill #41
- Hard to learn1
- Test21
- Test1
- Easy to learn1
- Hard 彤0
Pros of PHP
- Large community953
- Open source819
- Easy deployment767
- Great frameworks487
- The best glue on the web387
- Continual improvements235
- Good old web185
- Web foundation145
- Community packages135
- Tool support125
- Used by wordpress35
- Excellent documentation34
- Used by Facebook29
- Because of Symfony23
- Dynamic Language21
- Easy to learn17
- Cheap hosting17
- Very powerful web language15
- Awesome Language and easy to implement14
- Fast development14
- Because of Laravel14
- Composer13
- Flexibility, syntax, extensibility12
- Easiest deployment9
- Readable Code8
- Fast8
- Short development lead times7
- Most of the web uses it7
- Worst popularity quality ratio7
- Fastestest Time to Version 1.0 Deployments7
- Simple, flexible yet Scalable6
- Faster then ever6
- Open source and large community5
- Cheap to own4
- Has the best ecommerce(Magento,Prestashop,Opencart,etc)4
- Is like one zip of air4
- Open source and great framework4
- Large community, easy setup, easy deployment, framework4
- Easy to use and learn4
- Easy to learn, a big community, lot of frameworks4
- Great developer experience4
- I have no choice :(4
- Hard not to use2
- Walk away2
- Interpreted at the run time2
- FFI2
- Safe the planet2
- Used by STOMT2
- Fault tolerance2
- Great flexibility. From fast prototyping to large apps2
- Simplesaml1
- Bando1
- Secure1
- It can get you a lamborghini1
- Secure0
Sign up to add or upvote prosMake informed product decisions
Cons of JavaScript
- A constant moving target, too much churn22
- Horribly inconsistent20
- Javascript is the New PHP15
- No ability to monitor memory utilitization9
- Shows Zero output in case of ANY error8
- Thinks strange results are better than errors7
- Can be ugly6
- No GitHub3
- Slow2
- HORRIBLE DOCUMENTS, faulty code, repo has bugs0
Cons of PHP
- So easy to learn, good practices are hard to find22
- Inconsistent API16
- Fragmented community8
- Not secure6
- No routing system3
- Hard to debug3
- Old2