Goals

The training aims to develop Javascript programming skills using an adapted Agile methodology and the J.A.C.I method, through conversational interactions in English.


Agile Methodology

We will modify the Agile methodology to enhance the management of our training. In this scenario, we will incorporate sprints to determine the specific topics we will be studying over a two-week period. Alongside the sprints, we will conduct Daily meetings twice a week to facilitate efficient communication among team members, ensure progress updates, identify potential obstacles, and foster collaboration. Along this we still have a Sprint Planning that is a meeting with all the members that defines which chapter will fit in which sprint.


  • Scrum:
    • Scrum Master: Clara Conhalato Simão
    • Sprints: two-week period
    • Dailys: twice a week
    • Sprint Planning: defines which chapter will fit in which sprint


J.A.C.I. Method

  • Meanig:
    • Just: Adapts to the level of each participant.
    • Autodidact: Material for reading and use the chat group to debate
    • Collaborative: The main goal of this project is to help each other learn more about programming by sharing your knowledge.
    • Intense: Since day one the students have exercises and a final project.


Material


Team

  1. Clara Conhalato Simão
  2. Valdo
  3. Maycon Douglas Batista dos Santos
  4. Marcus Vinícius Torres Silva
  5. Ingrid Lima Cro Rossi
  6. Gabriel
  7. Amanda


Javascript


JavaScript is a widely used programming language in the web development industry. It is the de facto language for frontend programming and is also extensively used in backend development with platforms like Node.js. Its widespread adoption means that there are plenty of job opportunities available for developers with JavaScript expertise. It is a fundamental component of modern web development and enables the creation of interactions and dynamism on web pages, making them more engaging and interactive for users. With the growing importance of user experience on the web, the demand for JavaScript developers has only increased.


JavaScript has a vast and powerful ecosystem with many popular libraries and frameworks like React, Angular, and Vue.js for frontend development, and Express.js for backend development. This facilitates the creation of sophisticated web applications and drives the demand for professionals with knowledge in these technologies.In addition to web development, JavaScript has increasingly been used for mobile app development , games, and even desktop applications (using tools like Electron). Its versatility opens up opportunities in various areas.


JavaScript is continuously growing and evolving, with new tools and libraries being released regularly. Therefore, there is always something new to learn and stay updated, which is attractive to employers seeking professionals who are willing to keep up with the latest trends.Due to the high demand for JavaScript developers and its significance in the technology landscape, salaries are generally competitive for skilled professionals.



JavaScript x Python


  • Purpose:
JavaScript: Primarily used for web development to add interactivity and dynamic content to websites. It is a client-side scripting language that runs in web browsers.
Python: A general-purpose programming language designed for simplicity and readability. It is used for a wide range of applications, including web development, data analysis, artificial intelligence, scientific computing, automation, and more.


  • Syntax:
JavaScript: Uses C-style syntax with curly braces { }, and semicolons (;) to terminate statements.
Python: Utilizes an easy-to-read and minimalist syntax with indentation to denote blocks of code.


  • Typing:
JavaScript: Dynamically-typed language, meaning variable types are determined at runtime.
Python: Also dynamically-typed, allowing flexible variable assignments.


  • Ecosystem and Libraries:
JavaScript: Has a vast ecosystem primarily focused on web development, with popular frameworks and libraries like React, Angular, and Node.js for server-side development.
Python: Known for its extensive libraries and frameworks, such as Django and Flask for web development, NumPy, Pandas, and SciPy for data analysis, TensorFlow and PyTorch for machine learning, and many more.


  • Asynchronous Programming:
JavaScript: Supports native asynchronous programming through callbacks, Promises, and async/await, which is crucial for handling non-blocking operations in web development.
Python: Also supports asynchronous programming with the asyncio library, but it's less prevalent compared to JavaScript's role in web development.


  • Learning Curve:
JavaScript: Considered to have a steeper learning curve for beginners due to its complex asynchronous nature, event-driven programming, and quirks related to the web browser environment.
Python: Often praised for its readability and ease of learning, making it an excellent choice for beginners.


  • Performance:
JavaScript: Generally faster in browser-based environments due to its close integration with browsers and JIT (Just-In-Time) compilation.
Python: While it's a high-level language, Python is generally slower than JavaScript in certain performance-critical scenarios. However, its performance can be improved using libraries like Cython or by integrating with native code.


  • Conclusion:
The choice between JavaScript and Python depends on the specific project requirements
If you are primarily focused on web development and need to create interactive web applications, JavaScript is a natural choice
If you want a versatile language suitable for various tasks, including web development, data analysis, and machine learning, Python may be the better option
Both languages have vibrant communities and a wealth of resources, so learning either one will be beneficial for your programming journey.