<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Teo Deleanu</title>
    <description>The latest articles on DEV Community by Teo Deleanu (@teodeleanu).</description>
    <link>https://dev.to/teodeleanu</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F155623%2Fd89e1713-749e-43fa-83a6-b37869d2ad08.jpg</url>
      <title>DEV Community: Teo Deleanu</title>
      <link>https://dev.to/teodeleanu</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/teodeleanu"/>
    <language>en</language>
    <item>
      <title>Flourishing in the AI Epoch: A Developer's Odyssey Towards Relevance</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Mon, 10 Apr 2023 19:35:21 +0000</pubDate>
      <link>https://dev.to/teodeleanu/flourishing-in-the-ai-epoch-a-developers-odyssey-towards-relevance-m5i</link>
      <guid>https://dev.to/teodeleanu/flourishing-in-the-ai-epoch-a-developers-odyssey-towards-relevance-m5i</guid>
      <description>&lt;p&gt;Introduction:&lt;br&gt;
As we embark on the Artificial Intelligence (AI) odyssey, developers must embrace the shifting sands of the programming world. To remain indispensable in this brave new era, our heroes must adapt and transform. Here are the chronicles of a seasoned programmer, whose four-decade voyage has rendered invaluable lessons, perfectly suited for navigating the AI epoch.&lt;/p&gt;

&lt;p&gt;The Quest for Knowledge:&lt;br&gt;
In the AI epoch, knowledge is your compass, guiding you through the ever-changing technological landscape. Pledge your daily devotion to learning about emerging trends, languages, and tools. Delve into the vast sea of articles, blogs, and research papers, and attend the sacred gatherings of conferences and webinars. Embrace a holistic approach, and you shall be bestowed with a broader perspective and foresight.&lt;/p&gt;

&lt;p&gt;Embracing Metamorphosis:&lt;br&gt;
With a growth mindset as your armor, be prepared to learn and adopt new programming languages, frameworks, and tools. In the AI epoch, change is swift and relentless. Become a shapeshifter—versatile and eager to pivot your skillset as the winds change. This adaptability shall render you a formidable force in the ever-evolving realm of technology.&lt;/p&gt;

&lt;p&gt;The Art of Creation:&lt;br&gt;
Seize the opportunity to embark on side quests, participate in the grand tournaments of hackathons, or establish your own realm of innovation. These adventures shall hone your skills, teaching you invaluable lessons about collaboration, project management, and problem-solving. Moreover, the creative flame shall burn bright, sustaining your motivation and engagement amidst the shifting tides of the tech world.&lt;/p&gt;

&lt;p&gt;Carving a Legacy:&lt;br&gt;
Seek out the ventures where your skills can forge a lasting impact. Smaller realms or budding empires may offer fertile ground for personal growth and responsibility. Be the visionary, identifying areas for improvement beyond the confines of your role. By demonstrating initiative and a willingness to transcend boundaries, you shall set yourself apart and unlock hidden doors of opportunity.&lt;/p&gt;

&lt;p&gt;Defying Mediocrity:&lt;br&gt;
Life is a fleeting adventure, too precious to be spent languishing in an unfulfilling occupation. Should you find yourself trapped in the abyss of an unhealthy work environment or a role devoid of purpose, summon the courage to break free. The AI epoch promises a cornucopia of exhilarating opportunities for the skilled developer. With patience and unwavering determination, you shall discover the path that resonates with your heart's desires.&lt;/p&gt;

&lt;p&gt;Conclusion:&lt;br&gt;
To flourish in the AI epoch, you must embrace the journey of continuous learning, adaptability, creativity, and the relentless pursuit of impact. Heed these lessons, and wield an open mind as your weapon against the challenges of a rapidly changing world. As the AI revolution unfolds, embrace the metamorphosis and seize the opportunities that lie in wait. Your career shall be eternally grateful.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://twitter.com/teodeleanu" rel="noopener noreferrer"&gt;Join me in this era of AI relevance!&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>developer</category>
      <category>coding</category>
      <category>relevant</category>
    </item>
    <item>
      <title>From Novice to MVD - Minimum Viable Developer: Supercharge Your Career with Insights Inspired by Medicine 🚀</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Mon, 27 Mar 2023 13:31:11 +0000</pubDate>
      <link>https://dev.to/teodeleanu/from-novice-to-mvd-minimum-viable-developer-supercharge-your-career-with-insights-inspired-by-medicine-boj</link>
      <guid>https://dev.to/teodeleanu/from-novice-to-mvd-minimum-viable-developer-supercharge-your-career-with-insights-inspired-by-medicine-boj</guid>
      <description>&lt;p&gt;A Minimum Viable Developer (MVD) is a developer who has acquired a foundational skill set that allows them to contribute to projects, start building their career, and continue improving their expertise. In this ever-evolving technological landscape, reaching the MVD stage quickly and efficiently can be a major milestone on the path to success. Surprisingly, the world of medicine holds valuable lessons and secrets that can inspire and propel developers to achieve MVD status and beyond.&lt;/p&gt;

&lt;p&gt;In the upcoming sections, we'll explore the core strategies that can help you build a solid foundation as a developer and become a Minimum Viable Developer in record time. We'll also delve into the medical profession's dedication to continuous growth, adaptability, and learning, which can provide invaluable insights for developers on their quest to succeed in the competitive tech industry. 💡&lt;/p&gt;

&lt;p&gt;Join us as we embark on an exhilarating journey to help you reshape the way you approach your career as a developer. Drawing inspiration from the world of medicine, you'll uncover powerful strategies to supercharge your success, stay relevant, and conquer the dynamic tech landscape. 🌟&lt;/p&gt;

&lt;h2&gt;
  
  
  An overview on the affected jobs from AI(GPT3, GPT4, GPT5)
&lt;/h2&gt;

&lt;p&gt;The world is changing at breakneck speed, and AI-powered tools like ChatGPT are reshaping the job market in ways we've never seen before. To stay ahead of the curve and safeguard your future, it's crucial to adapt and evolve with these changes. We've analyzed the revised world population data (8 billion: Asia - 4.3, Europe - 0.7, Africa - 1.3, Americas - 1) and compiled a comprehensive list of the top 20 jobs most impacted by the rise of ChatGPT, along with the adjusted numbers affected. 📈&lt;/p&gt;

&lt;p&gt;By joining our course and diving into our exclusive book, you'll unlock the secrets to mastering these in-demand skills and navigating the ChatGPT-affected world with confidence. With expert guidance, powerful insights, and proven strategies, we'll equip you with everything you need to not only survive but thrive in this ever-evolving landscape. 🚀&lt;/p&gt;

&lt;p&gt;Are you ready to take control of your future and unleash your full potential? Then don't wait any longer! Join us on this transformative journey as we explore the top 20 skills you need to conquer the challenges of the ChatGPT revolution and emerge as a true leader in your field. Together, we'll turn adversity into opportunity and set you on a path to unshakeable success. Let's do this! 💪🔥&lt;/p&gt;

&lt;h2&gt;
  
  
  ⚠️ The Top 15 Jobs Under Siege by AI: Stay Ahead and Secure Your Future in the Face of ChatGPT 🤖
&lt;/h2&gt;

&lt;p&gt;The rapid advancements in AI and the rise of ChatGPT are shaking up the job market like never before. As the world hurtles towards a new era, many traditional roles are under threat. But fear not! By understanding the risks and adapting accordingly, you can stay ahead of the curve and safeguard your career. Check out the table below to discover the top 15 jobs most impacted by ChatGPT, and learn the essential strategies to dodge the bullet and thrive in these challenging times. 💼🔥&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Job&lt;/th&gt;
&lt;th&gt;Industry&lt;/th&gt;
&lt;th&gt;Reason&lt;/th&gt;
&lt;th&gt;Solution&lt;/th&gt;
&lt;th&gt;Numbers Affected&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Customer Support Agent&lt;/td&gt;
&lt;td&gt;Customer Service&lt;/td&gt;
&lt;td&gt;GPT can efficiently handle customer queries and provide instant support.&lt;/td&gt;
&lt;td&gt;Upskill to specialize in more complex or technical support roles.&lt;/td&gt;
&lt;td&gt;15,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Content Writer&lt;/td&gt;
&lt;td&gt;Media &amp;amp; Publishing&lt;/td&gt;
&lt;td&gt;GPT can create well-written articles, blogs, and other written content rapidly.&lt;/td&gt;
&lt;td&gt;Develop niche expertise, storytelling skills, and focus on investigative journalism.&lt;/td&gt;
&lt;td&gt;4,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Data Entry Operator&lt;/td&gt;
&lt;td&gt;Various Industries&lt;/td&gt;
&lt;td&gt;GPT can process and input data with high accuracy and efficiency.&lt;/td&gt;
&lt;td&gt;Transition to data analysis or learn more advanced data management skills.&lt;/td&gt;
&lt;td&gt;6,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Social Media Manager&lt;/td&gt;
&lt;td&gt;Marketing &amp;amp; Advertising&lt;/td&gt;
&lt;td&gt;GPT can generate engaging content and manage posting schedules autonomously.&lt;/td&gt;
&lt;td&gt;Focus on strategic planning, creativity, and understanding consumer behavior.&lt;/td&gt;
&lt;td&gt;1,500,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Telemarketer&lt;/td&gt;
&lt;td&gt;Sales &amp;amp; Marketing&lt;/td&gt;
&lt;td&gt;GPT can make scripted calls and manage large call volumes at a lower cost.&lt;/td&gt;
&lt;td&gt;Develop advanced sales techniques, relationship-building, and negotiation skills.&lt;/td&gt;
&lt;td&gt;2,500,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Translator&lt;/td&gt;
&lt;td&gt;Language Services&lt;/td&gt;
&lt;td&gt;GPT can translate text between languages with high accuracy and speed.&lt;/td&gt;
&lt;td&gt;Specialize in cultural context, localization, or high-level language services.&lt;/td&gt;
&lt;td&gt;1,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Personal Assistant&lt;/td&gt;
&lt;td&gt;Business &amp;amp; Administration&lt;/td&gt;
&lt;td&gt;GPT can perform scheduling, email management, and other administrative tasks effectively.&lt;/td&gt;
&lt;td&gt;Pursue roles that require more complex decision-making and critical thinking abilities.&lt;/td&gt;
&lt;td&gt;2,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Copywriter&lt;/td&gt;
&lt;td&gt;Advertising &amp;amp; Marketing&lt;/td&gt;
&lt;td&gt;GPT can create persuasive and engaging copy for various marketing channels.&lt;/td&gt;
&lt;td&gt;Focus on creative concepts, strategy, and understanding audience psychology.&lt;/td&gt;
&lt;td&gt;800,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Technical Writer&lt;/td&gt;
&lt;td&gt;Technology &amp;amp; Engineering&lt;/td&gt;
&lt;td&gt;GPT can draft technical documents, user guides, and manuals with accuracy.&lt;/td&gt;
&lt;td&gt;Specialize in complex technologies or industries where deep expertise is required.&lt;/td&gt;
&lt;td&gt;600,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Proofreader/Editor&lt;/td&gt;
&lt;td&gt;Media &amp;amp; Publishing&lt;/td&gt;
&lt;td&gt;GPT can proofread and edit text with high accuracy and speed.&lt;/td&gt;
&lt;td&gt;Develop expertise in niche industries or focus on managing and guiding content production.&lt;/td&gt;
&lt;td&gt;500,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Call Center Agent&lt;/td&gt;
&lt;td&gt;Customer Service&lt;/td&gt;
&lt;td&gt;GPT can handle inbound calls, provide information, and address concerns efficiently.&lt;/td&gt;
&lt;td&gt;Pursue more specialized roles requiring problem-solving, empathy, or advanced communication.&lt;/td&gt;
&lt;td&gt;2,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Email Marketer&lt;/td&gt;
&lt;td&gt;Marketing &amp;amp; Advertising&lt;/td&gt;
&lt;td&gt;GPT can craft personalized emails and manage email marketing campaigns.&lt;/td&gt;
&lt;td&gt;Focus on marketing strategy, analytics, and the development of customer journeys.&lt;/td&gt;
&lt;td&gt;700,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Travel Agent&lt;/td&gt;
&lt;td&gt;Tourism &amp;amp; Hospitality&lt;/td&gt;
&lt;td&gt;GPT can handle bookings, provide recommendations, and offer personalized itineraries.&lt;/td&gt;
&lt;td&gt;Focus on specialized travel experiences, event management, or tourism marketing.&lt;/td&gt;
&lt;td&gt;300,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SEO Specialist&lt;/td&gt;
&lt;td&gt;Digital Marketing&lt;/td&gt;
&lt;td&gt;GPT can optimize website content and perform keyword analysis.&lt;/td&gt;
&lt;td&gt;Focus on overall marketing strategies, analytics, and long-term business growth.&lt;/td&gt;
&lt;td&gt;200,000&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Online Tutor&lt;/td&gt;
&lt;td&gt;Education &amp;amp; Training&lt;/td&gt;
&lt;td&gt;GPT can provide general tutoring and answer questions in various subjects.&lt;/td&gt;
&lt;td&gt;Specialize in niche subjects, focus on personalized learning experiences, or mentorship.&lt;/td&gt;
&lt;td&gt;3,000,000&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  But wait! Why are not developers on this list?
&lt;/h2&gt;

&lt;p&gt;It's true that developers aren't among the top 20 jobs most threatened by GPT. While GPT could lend a helping hand in specific areas like generating code snippets or solving common issues, it's essential to remember that a developer's role is so much more than that. Embrace the diverse range of tasks that set you apart from AI and secure your future in the world of coding. 🌐&lt;/p&gt;

&lt;p&gt;Developers' tasks include:&lt;/p&gt;

&lt;p&gt;1️⃣ Understanding complex business requirements and turning them into technical solutions.&lt;br&gt;
2️⃣ Designing and architecting software systems.&lt;br&gt;
3️⃣ Collaborating with cross-functional teams to craft comprehensive solutions.&lt;br&gt;
4️⃣ Engaging in code reviews and sticking to best practices in software development.&lt;br&gt;
5️⃣ Debugging and problem-solving in various environments.&lt;/p&gt;

&lt;p&gt;As a developer, you possess human ingenuity, creativity, and the ability to collaborate—attributes GPT cannot replicate. Stay ahead of the curve by continuously learning, adapting to new tools, frameworks, and programming languages. 💡&lt;/p&gt;

&lt;p&gt;To help you stand strong in the face of GPT, our groundbreaking book and course provide expert guidance, powerful insights, and proven strategies. Together, we'll empower you with the knowledge and skills to boost your career, ensuring that you thrive in the ever-evolving tech landscape. Are you ready to unleash your full potential? Let's do it! 🌟🔥&lt;/p&gt;

&lt;h2&gt;
  
  
  What Beginners should do? Master the Coding Game: Leverage AI and Unlock Your Full Potential as a Developer 🚀🔥
&lt;/h2&gt;

&lt;p&gt;Beginner developers, or those focused primarily on coding, might feel the impact of GPT and similar AI tools in various ways. The effects can manifest as follows:&lt;/p&gt;

&lt;p&gt;1️⃣ Increased productivity: GPT can offer quick solutions to common coding issues or suggest code snippets, helping newbie developers work more efficiently and learn at a faster pace.&lt;/p&gt;

&lt;p&gt;2️⃣ Competition: As GPT becomes better at generating code, some entry-level coding tasks may be automated. This could lead to increased competition for beginner developer roles and employers raising expectations, seeking candidates with more advanced skills or diverse experience.&lt;/p&gt;

&lt;p&gt;3️⃣ Shift in skillset demand: With some basic coding tasks being automated, the demand for skills like problem-solving, critical thinking, and creativity may rise. Beginner developers may need to invest more time in learning advanced programming concepts and honing their soft skills.&lt;/p&gt;

&lt;p&gt;4️⃣ Focus on collaboration and communication: As AI-generated code becomes more common, the ability to collaborate with cross-functional teams and communicate technical concepts to non-technical stakeholders will grow increasingly vital.&lt;/p&gt;

&lt;p&gt;To stay competitive in the job market, beginner developers should consider these winning strategies:&lt;/p&gt;

&lt;p&gt;1️⃣ Continued learning: Invest time in learning new technologies, frameworks, and languages to broaden your skillset and stay current with industry trends.&lt;/p&gt;

&lt;p&gt;2️⃣ Develop soft skills: Strengthen communication, problem-solving, and critical thinking abilities, as these skills will be highly valued in the job market.&lt;/p&gt;

&lt;p&gt;3️⃣ Specialization: Pursue expertise in a specific domain, industry, or technology stack to differentiate yourself from others.&lt;/p&gt;

&lt;p&gt;4️⃣ Adaptability: Embrace the integration of AI tools like GPT into your workflow, leveraging these tools to boost productivity and efficiency.&lt;/p&gt;

&lt;p&gt;With our cutting-edge book and course, you'll have everything you need to not only adapt to the changes brought by GPT and similar AI tools but also thrive in the ever-evolving tech landscape. So, are you ready to level up and master the coding game? Let's do this! 🌟💪&lt;/p&gt;

&lt;h2&gt;
  
  
  Excelling as a developer: Unlock Your Developer Superpowers: Master the Art of Software Development and Crush the Tech World 🚀🔥
&lt;/h2&gt;

&lt;p&gt;To excel as a developer and ride the wave of ever-evolving technology, it's essential to build strength in vital elements and areas of software development. Here's a breakdown of those crucial areas and strategies to develop your expertise:&lt;/p&gt;

&lt;p&gt;1️⃣ Translating complex business requirements into technical solutions:&lt;/p&gt;

&lt;p&gt;Build a strong foundation in software engineering principles and programming paradigms.&lt;br&gt;
Learn domain-specific knowledge to grasp industry-specific problems and requirements.&lt;br&gt;
Hone communication and active listening skills to accurately gather and interpret business needs.&lt;br&gt;
2️⃣ Designing and architecting software systems:&lt;/p&gt;

&lt;p&gt;Deep dive into design patterns and architectural principles, like SOLID and DRY.&lt;br&gt;
Explore various architectural styles, such as microservices, monoliths, and event-driven architectures.&lt;br&gt;
Master balancing trade-offs like performance, scalability, maintainability, and security in system design.&lt;br&gt;
3️⃣ Creating comprehensive solutions through cross-functional team collaboration:&lt;/p&gt;

&lt;p&gt;Boost teamwork and collaboration skills by joining group projects or contributing to open-source initiatives.&lt;br&gt;
Develop strong interpersonal skills to build relationships with diverse team members.&lt;br&gt;
Get a grip on project management methodologies like Agile or Scrum for effective teamwork.&lt;br&gt;
4️⃣ Adhering to software development best practices and engaging in code reviews:&lt;/p&gt;

&lt;p&gt;Familiarize yourself with coding standards and best practices for your programming languages and tech stack.&lt;br&gt;
Make a habit of writing clean, modular, and maintainable code.&lt;br&gt;
Actively participate in code reviews, both as a reviewer and submitter, to learn from others and sharpen your coding skills.&lt;br&gt;
5️⃣ Debugging and problem-solving in diverse and challenging environments:&lt;/p&gt;

&lt;p&gt;Cultivate analytical and logical thinking skills for powerful problem-solving.&lt;br&gt;
Master debugging techniques and tools for your programming languages and frameworks.&lt;br&gt;
Develop a systematic approach to troubleshooting, from reproducing problems to isolating causes and implementing fixes.&lt;br&gt;
By focusing on these key elements and areas, you'll strengthen your skill set, adapt to industry changes, and excel in your career. Our incredible book and course will guide you through embracing continuous learning and staying up-to-date with emerging trends and technologies, ensuring your success in the dynamic world of software development. Are you ready to unlock your developer superpowers? Let's do it! 🌟💪&lt;/p&gt;

&lt;h2&gt;
  
  
  An action plan: Unlock Your MVD Potential: Fast-Track Your Path to Becoming a Game-Changer Developer 💥🚀
&lt;/h2&gt;

&lt;p&gt;Becoming a Minimum Viable Developer (MVD) is all about building a solid foundation that lets you contribute to projects and kickstart your developer career. The time and effort required to achieve this can vary, but we've got you covered with strategies to fast-track your progress:&lt;/p&gt;

&lt;p&gt;1️⃣ Time investment: Expect an average of 3-6 months to become an MVD, assuming 20-30 hours per week spent learning and practicing. Remember, this varies based on your background, dedication, and learning style.&lt;/p&gt;

&lt;p&gt;2️⃣ Define your goals: Know your target developer role (e.g., front-end, back-end, full-stack) and industry, and streamline your learning process accordingly.&lt;/p&gt;

&lt;p&gt;3️⃣ Choose a programming language and framework: Pick a high-demand language and framework used in your target industry, with plenty of learning resources available.&lt;/p&gt;

&lt;p&gt;4️⃣ Follow a structured learning path: Maximize efficiency with a structured learning path, like online courses, coding boot camps, or self-paced study using books and tutorials.&lt;/p&gt;

&lt;p&gt;5️⃣ Hands-on practice: Spend time building small projects, solving coding challenges, or contributing to open-source projects for practical experience and confidence-building.&lt;/p&gt;

&lt;p&gt;6️⃣ Leverage online resources: Utilize free or affordable online resources, like tutorials, blogs, forums, and documentation, for supplemental learning and expert insights.&lt;/p&gt;

&lt;p&gt;7️⃣ Network and seek mentorship: Connect with developer communities, attend meetups, or join online forums. Find experienced mentors who can guide you, answer questions, and provide feedback.&lt;/p&gt;

&lt;p&gt;8️⃣ Iterate and improve: Assess your progress regularly, identify strengths and weaknesses, and adjust your learning plan for optimal time investment and focused improvement.&lt;/p&gt;

&lt;p&gt;Our game-changing book and course will guide you through these strategies, ensuring a smooth and efficient journey towards becoming an MVD. Remember, learning doesn't stop once you're an MVD; continuous improvement and adaptation are key for long-term success in the dynamic world of software development. Are you ready to fast-track your developer journey? Let's get started! 🌟💪&lt;/p&gt;

&lt;h2&gt;
  
  
  Learnings from doctors
&lt;/h2&gt;

&lt;p&gt;"Unleash Your Potential: The Doctor's Journey - Time-Tested Strategies for Success in Medicine and Beyond 🚀💉"&lt;/p&gt;

&lt;p&gt;Becoming a doctor demands a longer time investment and a structured educational path compared to becoming a developer. However, there are parallels in the approaches to optimize learning and growth in both professions. Let's explore the doctor's journey and how to maximize success:&lt;/p&gt;

&lt;p&gt;1️⃣ Time investment: It takes at least 10-12 years, including undergrad, med school, and residency, to become a licensed practicing doctor, with variations based on location, specialization, and circumstances.&lt;/p&gt;

&lt;p&gt;2️⃣ Define your goals: Determine your preferred specialization and the type of medical practice you want to pursue (e.g., hospital, clinic, research), just like developers choose their target role and industry.&lt;/p&gt;

&lt;p&gt;3️⃣ Choose a medical school and specialization: Pick a reputable med school and specialization that aligns with your interests, aptitude, and goals, considering factors like location, cost, curriculum, and resources.&lt;/p&gt;

&lt;p&gt;4️⃣ Follow a structured learning path: Medical education includes pre-medical studies, basic sciences, clinical rotations, and residencies, ensuring a comprehensive education in your chosen field.&lt;/p&gt;

&lt;p&gt;5️⃣ Hands-on practice: Gain practical experience through clinical rotations, internships, and residency programs to apply theoretical knowledge, develop skills, and build confidence.&lt;/p&gt;

&lt;p&gt;6️⃣ Leverage online resources: Supplement your core medical curriculum with online resources like medical journals, research articles, forums, and webinars to deepen understanding and stay current.&lt;/p&gt;

&lt;p&gt;7️⃣ Network and seek mentorship: Connect with peers, attend conferences, and find experienced mentors to gain valuable insights, support, and guidance throughout your journey.&lt;/p&gt;

&lt;p&gt;8️⃣ Iterate and improve: Engage in ongoing professional development to maintain skills and stay updated with the latest best practices, as medical knowledge and technology are always evolving.&lt;/p&gt;

&lt;p&gt;Our game-changing book and course will guide you through these success strategies, whether you're pursuing a career in medicine or another field. The principles of goal-setting, structured learning, hands-on practice, and continuous improvement apply universally. With dedication, hard work, adaptability, and a commitment to lifelong learning, you can unlock your true potential and thrive in any profession. Are you ready to embark on this transformative journey? Let's do this! 💥🌟&lt;/p&gt;

</description>
      <category>developer</category>
      <category>fullstack</category>
      <category>gpt4</category>
      <category>learning</category>
    </item>
    <item>
      <title>Man, Machine, and the Art of Algorithmic Mastery: A GPT4 Perspective</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Tue, 14 Mar 2023 23:56:17 +0000</pubDate>
      <link>https://dev.to/teodeleanu/man-machine-and-the-art-of-algorithmic-mastery-a-gpt4-perspective-ibi</link>
      <guid>https://dev.to/teodeleanu/man-machine-and-the-art-of-algorithmic-mastery-a-gpt4-perspective-ibi</guid>
      <description>&lt;p&gt;In the swirling vortex of FOMO and the ever-evolving world of technology, it's easy to feel overwhelmed or left behind. The rise of GPT-4, OpenAI's advanced language model, has left many wondering how it compares to human expertise in tackling complex challenges, like LeetCode problems or general computer programming. In this eclectic fusion of perspectives, inspired by Dan Abramov, Sam Ovens, and Joe Rogan, we'll delve into the limitations of GPT-4, the power of &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp" rel="noopener noreferrer"&gt;&lt;em&gt;THE BOOK&lt;/em&gt;&lt;/a&gt;, and the harmonious collaboration between man and machine.&lt;/p&gt;

&lt;h2&gt;
  
  
  From LeetCode to General Programming: The GPT-4 Conundrum
&lt;/h2&gt;

&lt;p&gt;GPT-4 has made waves with its natural language understanding and generation capabilities, but when it comes to medium or hard LeetCode algorithms, it struggles. The reason? GPT-4 isn't specifically trained to solve algorithmic problems or designed to optimize code for more advanced computational tasks. This shortcoming is evident in general computer programming as well.&lt;/p&gt;

&lt;p&gt;To gain a clearer picture, let's examine the success rates of GPT-4 and humans in tackling LeetCode problems of varying difficulty:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Difficulty&lt;/th&gt;
&lt;th&gt;GPT-4&lt;/th&gt;
&lt;th&gt;GPT-4 (No visions)&lt;/th&gt;
&lt;th&gt;GPT-3.5&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Easy&lt;/td&gt;
&lt;td&gt;31 / 41&lt;/td&gt;
&lt;td&gt;31 / 41&lt;/td&gt;
&lt;td&gt;12 / 41&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;td&gt;21 / 80&lt;/td&gt;
&lt;td&gt;21 / 80&lt;/td&gt;
&lt;td&gt;8 / 80&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Hard&lt;/td&gt;
&lt;td&gt;3 / 45&lt;/td&gt;
&lt;td&gt;3 / 45&lt;/td&gt;
&lt;td&gt;0 / 45&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Source: &lt;a href="https://openai.com/research/gpt-4" rel="noopener noreferrer"&gt;GPT4 research, Exams, Click "Show More"&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As the data demonstrates, GPT-4 has a substantially lower success rate with medium and hard problems compared to easy ones. Thus, human expertise remains vital in conquering complex algorithmic challenges and general programming tasks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Unleashing Potential: &lt;em&gt;THE BOOK&lt;/em&gt; and the Art of Training
&lt;/h2&gt;

&lt;p&gt;Just as a mixed martial artist trains relentlessly to hone their craft, so too must programmers sharpen their algorithmic prowess. &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp" rel="noopener noreferrer"&gt;&lt;em&gt;THE BOOK&lt;/em&gt;&lt;/a&gt; is the ultimate resource for acquiring the knowledge and strategies needed to master even the most intricate LeetCode problems and programming challenges.&lt;/p&gt;

&lt;p&gt;As Sam Ovens emphasizes, consistent practice and a focused mindset are key ingredients for success. By diving headfirst into &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp" rel="noopener noreferrer"&gt;&lt;em&gt;THE BOOK&lt;/em&gt;&lt;/a&gt; and dedicating time to practice, humans can surpass GPT-4 and other AI models in tackling advanced algorithms.&lt;/p&gt;

&lt;h2&gt;
  
  
  GPT-4 Evolves: Training for Advanced Algorithms and Human Mimicry
&lt;/h2&gt;

&lt;p&gt;While GPT-4 may not currently be a master of complex algorithms, it could potentially be trained to excel in this area. By feeding the model more advanced algorithmic problems and solutions, GPT-4 could gradually learn to generate optimized code and tackle intricate challenges more effectively.&lt;/p&gt;

&lt;p&gt;Humans can mimic this focused approach by honing in on specific areas of programming or algorithms that they wish to improve upon. By targeting their training, individuals can quickly progress and achieve mastery in their chosen areas of expertise.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Ultimate Collaboration: Man, Machine, and Mastery
&lt;/h2&gt;

&lt;p&gt;In the words of Joe Rogan, life is about balance, and this rings true for the relationship between man and machine. GPT-4 may have its limitations, but it can still serve as a powerful tool to augment human capabilities. By embracing the unique strengths of both man and machine, individuals can overcome their respective weaknesses and achieve unprecedented success in the realm of algorithms and programming.&lt;/p&gt;

&lt;p&gt;To conquer FOMO, one must embrace the combined power of human expertise, &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp" rel="noopener noreferrer"&gt;&lt;em&gt;THE BOOK&lt;/em&gt;&lt;/a&gt;, and AI-assisted programming.&lt;/p&gt;

&lt;p&gt;Follow me on dev.to or&lt;br&gt;
&lt;iframe class="tweet-embed" id="tweet-1635772278939025409-346" src="https://platform.twitter.com/embed/Tweet.html?id=1635772278939025409"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1635772278939025409-346');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1635772278939025409&amp;amp;theme=dark"
  }



&lt;/p&gt;

</description>
      <category>gpt4</category>
      <category>leetcode</category>
      <category>algorithms</category>
      <category>book</category>
    </item>
    <item>
      <title>🤖📈 How TweetHunter Used NLP to Build a Successful Startup 🚀</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Fri, 10 Mar 2023 23:15:13 +0000</pubDate>
      <link>https://dev.to/teodeleanu/how-tweethunter-used-nlp-to-build-a-successful-startup-21ec</link>
      <guid>https://dev.to/teodeleanu/how-tweethunter-used-nlp-to-build-a-successful-startup-21ec</guid>
      <description>&lt;p&gt;Are you looking to reduce costs and increase customization on AI models? Well, imagine being able to do that for anything, even coffee ☕️. That's the power of LLMs, which offer customization at six times the cost of their foundational models on platforms like OpenAI.&lt;/p&gt;

&lt;p&gt;TweetHunter was able to optimize costs as much as possible by combining Generative AI and Customization to dynamically train models each time data or context changed. This resulted in a powerful model with three capabilities: thread generation, hook generation, and tweet writing.&lt;/p&gt;

&lt;p&gt;But how did they do it? It all starts with real data from your users. TweetHunter had access to good data for every niche, and their models were created to take that into consideration. The key is to use NLP and Generative AI, with core libraries like Python NLTK | nltk.TweetTokenizer() and TextBlob.&lt;/p&gt;

&lt;p&gt;One of the core libraries used by TweetHunter was Flair. Flair has robust feature engineering capabilities that help it learn effective text representations. It can be fine-tuned to target specific tasks such as named entity recognition, and it has strong support for multi-lingual NLP tasks.&lt;/p&gt;

&lt;p&gt;But Flair is just one piece of the puzzle. With Flair, you can classify data, but classification is another beast. To truly build a successful AI-powered tool like TweetHunterIO, you need to go beyond classification and use sentient analysis.&lt;/p&gt;

&lt;p&gt;Are you ready to learn more about TweetHunter's architecture? Stay tuned for the next sequence with a working POC! Thanks to makers for the inspiring builders on his 8-figure EXIT.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvo5y878gagdtbszoiogn.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvo5y878gagdtbszoiogn.png" alt="Example Architecture" width="800" height="511"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;🤖📈 Don't let your social media strategy get deprecated. Start leveraging the power of NLP and Generative AI today!&lt;/p&gt;

&lt;p&gt;Follow me on dev.to or &lt;iframe class="tweet-embed" id="tweet-1633968755020636160-637" src="https://platform.twitter.com/embed/Tweet.html?id=1633968755020636160"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1633968755020636160-637');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1633968755020636160&amp;amp;theme=dark"
  }



&lt;/p&gt;

</description>
      <category>ai</category>
      <category>chatgpt</category>
      <category>generativeai</category>
      <category>twitter</category>
    </item>
    <item>
      <title>Humans vs AI in 2035</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Fri, 10 Mar 2023 22:50:01 +0000</pubDate>
      <link>https://dev.to/teodeleanu/humans-vs-ai-in-2035-f0j</link>
      <guid>https://dev.to/teodeleanu/humans-vs-ai-in-2035-f0j</guid>
      <description>&lt;p&gt;This is year 2035.&lt;br&gt;
Diversity and inclusion initiatives have positively impacted the way people work together. But a different problem has rised: Most of the jobs are occupied by AI now.&lt;/p&gt;

&lt;p&gt;People are united in this fight and really find ways to work in harmony with the robots. Too bad robots don't "feel" the same.&lt;/p&gt;

&lt;p&gt;As a result, people have started to realize that they need to take control of AI technology to prevent it from becoming too powerful. One of the ways to do that is by creating customized AI models that are specific to their needs.&lt;/p&gt;

&lt;p&gt;Let me share a different perspective. Instead of focusing on the potential doom and gloom of a future dominated by AI, let me introduce you to Teona, a young student who defied the odds and managed to carve out a successful career in the field of AI.&lt;/p&gt;

&lt;p&gt;Teona started out as a curious student with a passion for coding and machine learning. Despite facing numerous obstacles and setbacks, she persisted and eventually landed a job as a junior developer at OpenAI, one of the leading AI research labs in the world.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq8nb9o2g4tgx9x3y9mzs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fq8nb9o2g4tgx9x3y9mzs.png" alt="Teona and her cat" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Through her hard work and dedication, Teona quickly rose through the ranks and eventually became the Principal Developer at OpenAI. Her groundbreaking work in the field of AI has helped to create more ethical and inclusive algorithms, ensuring that AI is used to benefit society as a whole.&lt;/p&gt;

&lt;p&gt;So instead of fearing the rise of AI, let's focus on the incredible potential it holds and the amazing individuals like Teona who are shaping the future of technology. Who knows, maybe you too can follow in her footsteps and create a successful career in this exciting field.&lt;/p&gt;

&lt;p&gt;In 12 years from now, we may see a future where AI has transformed the way we live, work and communicate. We will need individuals like Teona, who are passionate about AI and willing to push the boundaries of what's possible, to lead us into this new world. With continued innovation and collaboration, we can ensure that AI benefits humanity as a whole, and doesn't become a source of division or inequality. It's an exciting time to be alive, and the possibilities are endless. Who knows what the future will hold, but with the right mindset, we can make it a better one for all.&lt;/p&gt;

&lt;p&gt;So this is what a Joe Rogan podcast with Dan Abramov might look like in 2035...&lt;/p&gt;

&lt;p&gt;Dan Abramov: Welcome back folks, we're talking about the future of AI and its impact on society. And boy, it's been a wild ride so far. 😱&lt;/p&gt;

&lt;p&gt;Joe Rogan: That's right, Dan. And while some folks are scared of a world dominated by AI, there are individuals like Teona who are not only thriving in this field, but also making sure that AI is used for good. 😎&lt;/p&gt;

&lt;p&gt;Dan Abramov: Absolutely, Joe. Diversity and inclusion initiatives have brought people together, but with most jobs now being occupied by AI, it's time to take control of this technology before it becomes too powerful. 💪&lt;/p&gt;

&lt;p&gt;Joe Rogan: And Teona is a great example of someone who's doing just that. She started out as a curious student with a passion for coding and machine learning, and now she's the Principal Developer at OpenAI! 🤯&lt;/p&gt;

&lt;p&gt;Dan Abramov: That's right, Joe. Teona's groundbreaking work in the field of AI has helped to create more ethical and inclusive algorithms, ensuring that AI is used to benefit society as a whole. 🙌&lt;/p&gt;

&lt;p&gt;Joe Rogan: So instead of fearing the rise of AI, let's focus on the incredible potential it holds and the amazing individuals like Teona who are shaping the future of technology. Who knows, maybe you too can follow in her footsteps and create a successful career in this exciting field. 🤔&lt;/p&gt;

&lt;p&gt;Dan Abramov: That's the spirit, Joe. In 12 years from now, we may see a future where AI has transformed the way we live, work and communicate. But with individuals like Teona leading the way, we can ensure that AI benefits humanity as a whole, and doesn't become a source of division or inequality. 🔥&lt;/p&gt;

&lt;p&gt;Joe Rogan: It's an exciting time to be alive, folks. The possibilities are endless. Who knows what the future will hold, but with the right mindset, we can make it a better one for all. 🌎&lt;/p&gt;

&lt;p&gt;For those of you that don't know Dan Abramov is the co-author of Redux and Joe Rogan...well he is one of the top podcasters in the world.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

&lt;p&gt;BTW Teona is the first reader that used the book Chat GPT Full Stack Apps to build her Bachelor license project.&lt;/p&gt;

</description>
      <category>wecoded</category>
    </item>
    <item>
      <title>Computer science student unblocking their project with Chat GPT</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Thu, 09 Mar 2023 00:11:39 +0000</pubDate>
      <link>https://dev.to/teodeleanu/computer-science-student-unblocking-their-project-with-17b</link>
      <guid>https://dev.to/teodeleanu/computer-science-student-unblocking-their-project-with-17b</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawf1pr2y76w96bctp2vx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fawf1pr2y76w96bctp2vx.png" alt="Here's a Midjourney depict of Teona starting her project" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Hey there, my fellow adventurers! 🤩&lt;/p&gt;

&lt;p&gt;Are you ready for an inspiring story about how our book &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp?_gl=1*zohz8c*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3ODMxOTk0Mi4yMy4xLjE2NzgzMTk5NTguMC4wLjA." rel="noopener noreferrer"&gt;"Building full stack apps with ChatGPT: an intern's guide"&lt;/a&gt; helped a brilliant Computer Science student, Teona, kick off her Bachelor degree license project? 🚀&lt;/p&gt;

&lt;p&gt;If you're like Teona, who felt overwhelmed and unsure of where to begin with your project, don't fret! Our book is designed to provide you with a clear roadmap on how to build a full stack app using ChatGPT. With practical tips and examples, you can now start with confidence and turn your ideas into reality! 🙌&lt;/p&gt;

&lt;p&gt;Here's an example on how you can just follow steps and setup your env right away:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Here's a step-by-step guide on how to install each of the required tools:
Node.js:
Visit the Node.js website at https://nodejs.org/
Click on the "Download" button to download the latest version of Node.js
Install the software following the on-screen instructions
Code Editor:
Choose a code editor of your choice, for example, Visual Studio Code, Sublime Text or Atom
Visit the website of the code editor you have chosen
Download and install the software following the on-screen instructions
TypeScript:
Open the terminal or command prompt
Type the following command: npm install -g typescript
Press Enter to run the command
TypeScript will be installed on your computer
React:
Open the terminal or command prompt
Type the following command: npm install -g react
Press Enter to run the command
React will be installed on your computer
NEST.js:
Open the terminal or command prompt
Type the following command: npm install -g @nestjs/cli
Press Enter to run the command
NEST.js will be installed on your computer
Node-TS:
Open the terminal or command prompt
Type the following command: npm install -g @types/node
Press Enter to run the command
Node-TS will be installed on your computer
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;But wait, there's more! 💥&lt;/p&gt;

&lt;p&gt;We take pride in delivering value to our readers, which is why we constantly strive to improve our book. That's why we're excited to announce that we're updating the book soon! Yes, you heard it right! We're taking your feedback seriously and making sure the book is even better for your reading pleasure! 😎&lt;/p&gt;

&lt;p&gt;And that's not all! 🤯&lt;/p&gt;

&lt;p&gt;One of the significant advantages of our book is that it adds speed and deliverability. You can access it instantly and start learning and building right away. No waiting for shipping, no waiting for the book to arrive. &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp?_gl=1*zohz8c*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3ODMxOTk0Mi4yMy4xLjE2NzgzMTk5NTguMC4wLjA." rel="noopener noreferrer"&gt;You can download it, and boom! You're off to the races!&lt;/a&gt; 🏎️&lt;/p&gt;

&lt;p&gt;But, we're not done yet! 🙅‍♂️&lt;/p&gt;

&lt;p&gt;We want to hear from you! Our book is for students and new interns like you, and your feedback is critical to us. &lt;a href="https://discordapp.com/channels/715513659237072916/1083178073677119488" rel="noopener noreferrer"&gt;Tell us on Discord how we can improve our book even more, and we'll make sure it happens!&lt;/a&gt; 📣 &lt;/p&gt;

&lt;p&gt;In conclusion, our book &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp?_gl=1*zohz8c*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3ODMxOTk0Mi4yMy4xLjE2NzgzMTk5NTguMC4wLjA." rel="noopener noreferrer"&gt;"Building full stack apps with ChatGPT: an intern's guide"&lt;/a&gt; is a must-read for anyone who wants to start their project with confidence. With practical examples, clear explanations, and a focus on delivering value, we're confident that you'll find it helpful. So, what are you waiting for? &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp?_gl=1*zohz8c*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3ODMxOTk0Mi4yMy4xLjE2NzgzMTk5NTguMC4wLjA." rel="noopener noreferrer"&gt;Grab a copy today&lt;/a&gt;, and let's turn your ideas into reality! 🔥&lt;/p&gt;

</description>
      <category>chatgpt</category>
      <category>fullstack</category>
      <category>project</category>
      <category>issues</category>
    </item>
    <item>
      <title>20+ interview questions that you should get answered before going further</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Tue, 07 Mar 2023 00:20:25 +0000</pubDate>
      <link>https://dev.to/teodeleanu/20-interview-questions-that-you-should-answer-before-going-further-36oh</link>
      <guid>https://dev.to/teodeleanu/20-interview-questions-that-you-should-answer-before-going-further-36oh</guid>
      <description>&lt;p&gt;While doing research for the draft published book &lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern?_gl=1*rkot56*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3ODE0NzcyNy4xMy4xLjE2NzgxNDc3NzcuMC4wLjA." rel="noopener noreferrer"&gt;Intern's Guide Chat GPT Full Stack: Nest, React, Typescript&lt;/a&gt; found some interesting questions you can ask at your interviews to make sure you get ahead of other candidates and shared them in a tweet. Don't be a fool to think this doesn't matter.&lt;/p&gt;

&lt;p&gt;🤖👨‍💼 I’ve worked 15+ years in high innovative tech. Excited to interview for the software developer role! Here are my top 20+ questions to stand out and land the job. All powered by ChatGPT🚀 #softwaredevelopment #interviewtips&lt;/p&gt;

&lt;p&gt;Here's the tweet link if you want to read it there&lt;br&gt;
&lt;iframe class="tweet-embed" id="tweet-1632892516633653253-355" src="https://platform.twitter.com/embed/Tweet.html?id=1632892516633653253"&gt;
&lt;/iframe&gt;

  // Detect dark theme
  var iframe = document.getElementById('tweet-1632892516633653253-355');
  if (document.body.className.includes('dark-theme')) {
    iframe.src = "https://platform.twitter.com/embed/Tweet.html?id=1632892516633653253&amp;amp;theme=dark"
  }



&lt;br&gt;
Or continue below&lt;/p&gt;

&lt;p&gt;1/20: 🤔🚧 What are your expectations for this role? I plan on exceeding them with my skills and experience. #aimhigh #careeropportunities&lt;/p&gt;

&lt;p&gt;2/20: 🧐💻 What skills are you looking for in a candidate? I have a wide range of skills and can adapt to any project. Let's chat about how I can bring value to your team. #multitalented #teamplayer&lt;/p&gt;

&lt;p&gt;3/20: 🤝📈 What are some of the things I can do in my first months to add value and contribute? I'm eager to start contributing right away and make a positive impact on the company's goals. #proactive #positiveimpact&lt;/p&gt;

&lt;p&gt;4/20: 🌟👨‍💼 What would I be expected to accomplish in my first month, first six months, and year on the job? Let's talk about my goals and how I can help achieve the company's objectives. #goaloriented #resultsdriven&lt;/p&gt;

&lt;p&gt;5/20: 🌍🔮 Where do you see this company going in 5 years? I'm interested in the long-term growth and success of the company, and want to be a part of it. #futurefocused #teamwork&lt;/p&gt;

&lt;p&gt;6/20: 🌱🌳 How do you see this position growing, evolving, or changing? I'm looking for a long-term career and want to know about potential opportunities for growth and advancement. #careeropportunities #careerpath&lt;/p&gt;

&lt;p&gt;7/20: 🤔🧑‍💼 How would you describe your management style? I want to make sure I'm a good fit for the team and the management style aligns with my work style. #teamchemistry #goodfit&lt;/p&gt;

&lt;p&gt;8/20: 🤹‍♀️⚖️ How would you describe the work environment and the work/life balance? I value a positive work-life balance and want to make sure it aligns with the company culture. #worklifebalance #positiveworkenvironment&lt;/p&gt;

&lt;p&gt;9/20: 🕰️👩‍💻 What kind of hours are expected for me to perform this role? What would a typical workweek look like? I want to ensure that I'm able to meet the expectations of the role and the company. #jobexpectations #workhours&lt;/p&gt;

&lt;p&gt;10/20: 😊🤝 What are some things that you enjoy most about working here? I'm interested in the company's culture and want to know what makes it a great place to work. #companyculture #employeeexperience&lt;/p&gt;

&lt;p&gt;11/20: 🚀👨‍💼 Provided excellent performance, what are the paths for growth? I'm driven to succeed and want to know what opportunities are available to advance my career. #careeropportunities #growthpotential&lt;/p&gt;

&lt;p&gt;12/20: 💻🧐 Which systems do you use? Which computer programs would I be working with? I'm skilled with various systems and am always eager to learn new ones. #adaptable #techsavvy&lt;/p&gt;

&lt;p&gt;13/20: ❓🤔 Do you have any questions or concerns about my ability to do the job or my background? I want to make sure I address any doubts or concerns and make a strong case for myself. #confidence #positivity&lt;/p&gt;

&lt;p&gt;14/20: 🏆👩‍💼 🎯 What are the top projects or tasks I will be working on right away? I want to make sure I'll do my best on the job in place. #projects #novelty&lt;/p&gt;

&lt;p&gt;15/20 🆕 Is this a newly created position or an existing one?&lt;br&gt;
• This is a great question to ask to understand the context of the role and whether you will be building something from scratch or inheriting an existing system.&lt;/p&gt;

&lt;p&gt;16/20 Which systems do you use? Which stack would I be working with?&lt;br&gt;
• This is a great question to ask to show your experience with different software and to understand the tools you will be working with on the job.&lt;/p&gt;

&lt;p&gt;17/20 How many hours of calls do you usually do? What times do you usually have the calls?&lt;br&gt;
• This is a great question to ask to understand the nature of the work and how you can plan your schedule accordingly.&lt;/p&gt;

&lt;p&gt;18/20 What is the average length of time somebody worked here?&lt;br&gt;
• This is a great question to ask to understand the retention rate and culture of the company.&lt;/p&gt;

&lt;p&gt;19/20 Do you have any concerns about my ability to perform this role?&lt;br&gt;
• Use this question to address any concerns that the interviewer may have about your qualifications and to demonstrate how you plan to overcome those concerns.&lt;/p&gt;

&lt;p&gt;20/20 Extra questions:&lt;br&gt;
🏆 What does the best performer at your company do to excel in this role?&lt;/p&gt;

&lt;p&gt;🏅 What goals do you have for me in my first month, first six months, and year on the job?&lt;/p&gt;

&lt;p&gt;💼 How would you describe your management style?&lt;/p&gt;

&lt;p&gt;21/20 Secret Things to dig about:&lt;br&gt;
Chat GPT cannot reply to this and you probably won't get any honest answer but you should find your answers with a background check:&lt;br&gt;
Have you ever bounced pay checks?&lt;br&gt;
Any lawsuits or legal law suits against you?&lt;br&gt;
What former employees say about the company?&lt;/p&gt;

&lt;p&gt;I hope these questions give you a good idea of what to ask in a software developer job interview. Remember to be yourself and show your enthusiasm and experience throughout the interview process. Best of luck with your job search!&lt;/p&gt;

&lt;p&gt;Use job interview questions as an opportunity to discuss your strengths and set you apart from other candidates!&lt;/p&gt;

&lt;p&gt;If you found this thread🧵helpful:&lt;br&gt;
• Follow me &lt;br&gt;
&lt;a href="https://twitter.com/teodeleanu" rel="noopener noreferrer"&gt;@teodeleanu&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;•🔁RT the FIRST tweet&lt;br&gt;
•❤️LIKE the tweets&lt;/p&gt;

</description>
      <category>interview</category>
      <category>fullstack</category>
      <category>10x</category>
      <category>layoffs</category>
    </item>
    <item>
      <title>Intern's Guide Chat GPT Full Stack: Nest, React, Typescript</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Mon, 06 Mar 2023 21:10:36 +0000</pubDate>
      <link>https://dev.to/teodeleanu/interns-guide-chat-gpt-full-stack-nest-react-typescript-21a8</link>
      <guid>https://dev.to/teodeleanu/interns-guide-chat-gpt-full-stack-nest-react-typescript-21a8</guid>
      <description>&lt;p&gt;Hey there, fellow devs! 👋&lt;/p&gt;

&lt;p&gt;🤖 Are you worried about losing your freelancing job to an AI-powered chatbot? 😱 Fear not! 💡&lt;/p&gt;

&lt;p&gt;As a full-stack dev, you can offer more than just basic programming skills. 💪 You can create intelligent systems that automate complex tasks. But here's the deal: You need to be proficient in using tools like Chat GPT before your competition catches up. ⏰ The faster you master it, the better your chances of standing out in the market. 💼&lt;/p&gt;

&lt;p&gt;Don't wait! 🚀 Start exploring Chat GPT and other AI tools today. With Chat GPT, you can access an abundance of information, allowing you to learn and improve your coding skills at a faster pace. 💻&lt;/p&gt;

&lt;p&gt;By incorporating Chat GPT into your workflow, you can become a more productive and efficient developer. And the best part? Chat GPT is constantly learning and improving, so you'll always have access to the latest information and insights.&lt;/p&gt;

&lt;p&gt;Don't let FOMO get the best of you! Start using Chat GPT today to improve your coding speed and stay ahead of the curve. 🚀&lt;/p&gt;

&lt;p&gt;Oh, and did I mention that I've just launched The Intern's Guide Chat GPT Full Stack: Nest, React, Typescript? 📚 This book is a must-read for anyone seeking to master the art of full-stack web development. And the best part? I'm giving away 95 free copies! 🎁&lt;/p&gt;

&lt;p&gt;Authored by industry expert Chat GPT, this book provides a comprehensive introduction to building web applications using the popular NestJS framework for the backend, React for the frontend, and TypeScript for type-safe code. With plenty of examples, exercises, and real-world scenarios, you'll gain the skills you need to become a full-stack web developer.&lt;/p&gt;

&lt;p&gt;So what are you waiting for? &lt;br&gt;
&lt;a href="https://iamteo.gumroad.com/l/chat-gpt-full-stack-intern/446hqdp?_gl=1*1hy5y8w*_ga*NjU5MDU5ODI3LjE2Nzc3OTA1OTE.*_ga_6LJN6D94N6*MTY3Nzk3NDU1Ny45LjEuMTY3Nzk3NjU0Ni4wLjAuMA.." rel="noopener noreferrer"&gt;Click on here to get your free copy before it's too late! ⏳&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Here’s how I can help:&lt;/p&gt;

&lt;p&gt;Just launched The Intern's Guide Chat GPT Full Stack: Nest, React, Typescript is a must-read for anyone seeking to master the art of full-stack web development. Authored by industry expert Chat GPT, this book offers a comprehensive introduction to building web applications using the popular NestJS framework for the backend, React for the frontend, and TypeScript for type-safe code.&lt;/p&gt;

&lt;p&gt;Through a series of well-crafted chapters, you'll gain a deep understanding of the core concepts of web development, including RESTful APIs, data modeling, authentication, and more. With Chat GPT as your guide, you'll learn how to build scalable and performant web applications that are both robust and maintainable.&lt;/p&gt;

&lt;p&gt;The Intern's Guide Chat GPT Full Stack: Nest, React, Typescript is not just a reference book - it's a practical guide that provides a hands-on approach to learning. With plenty of examples, exercises, and real-world scenarios, you'll gain the skills you need to become a full-stack web developer. Whether you're an experienced developer looking to expand your skillset or a newcomer to web development, this book is a must-have resource that will take your skills to the next level.&lt;/p&gt;

&lt;p&gt;Good luck and happy coding! 😎&lt;/p&gt;

</description>
      <category>node</category>
      <category>react</category>
      <category>ts</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Use full stack to increase your income</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Mon, 20 May 2019 11:55:41 +0000</pubDate>
      <link>https://dev.to/teodeleanu/use-full-stack-to-increase-your-income-274n</link>
      <guid>https://dev.to/teodeleanu/use-full-stack-to-increase-your-income-274n</guid>
      <description>&lt;p&gt;This is a simple way of choosing a stack and being able to deliver an entire project by a single developer. A real full-stack kick-ass.&lt;br&gt;
First, pick the language. And Javascript is clearly the easiest to learn a full stack thing. Take a look at how languages questions evolved since 2008 in the below video.&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.youtube.com/watch?feature=player_embedded&amp;amp;v=cKzP61Gjf00" rel="noopener noreferrer"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--0JspgpIA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/http://img.youtube.com/vi/cKzP61Gjf00/0.jpg" alt="Trends in programming" width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you probably noticed Python is kind of taking a big interest. A lot of people already know that this is because of ML, Data features and also because of the syntax. We will discuss Python libraries in a different article.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;You can check our Flask starter for free on &lt;a href="https://github.com/rosoftdeveloper/appseed/tree/master/starter-flask" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I remember some years ago delivering my first freelance Backend project with no UI. Till then, I was just a backend developer, working in bigger teams with all the positions very well defined in a big company. But this was my first freelance project and I had to learn a lot.&lt;br&gt;
After 3 months of hard work, retrieved all the information from a Raspberry PI. But the way I was presenting the information was not relevant for nontechnical people. You need some kind of UI (nice or not) to do this.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9BYepFdY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/Rw3muE779KjKUundGYWxs-JXJAkI9usNU1Nizp-1xVMRVHaRltDHpVYOX2F377S34winyLfTQPiS4oqmjJzWmlhWwcKlgLax8by3Db3CxzanYDfYjlI9jw3TL9cOMdC-1dGUu-OsT30" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9BYepFdY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/Rw3muE779KjKUundGYWxs-JXJAkI9usNU1Nizp-1xVMRVHaRltDHpVYOX2F377S34winyLfTQPiS4oqmjJzWmlhWwcKlgLax8by3Db3CxzanYDfYjlI9jw3TL9cOMdC-1dGUu-OsT30" alt="Plain JSON" width="800" height="822"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;But since that was not acceptable we got a V2 upgrade. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--avwGVtl9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/wpo_4l2uByrpZaTepteTMpqiEtj8lx6ZkYTQSRSEta7GqxtqORPY7Rfm8vBX_RXyGAq1Fb7HjxEAXXpviuzFsQ4GosTkPAHBgeTBrL3SkfYWB-QyNKF09ehnGfyLoWVHShTxj8Gc_wg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--avwGVtl9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/wpo_4l2uByrpZaTepteTMpqiEtj8lx6ZkYTQSRSEta7GqxtqORPY7Rfm8vBX_RXyGAq1Fb7HjxEAXXpviuzFsQ4GosTkPAHBgeTBrL3SkfYWB-QyNKF09ehnGfyLoWVHShTxj8Gc_wg" alt="Plain HTML" width="750" height="682"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As you see this info can be actually read and it's easy to spot information. But is still an ugly HTML. The advantage is that we can see what we need to learn in order to get a complete project. &lt;br&gt;
And since this is important for everyone to have a nice overview, we will compare it with my favorite full-stack meal: The Burger (there are some good places to eat in both Iasi and Chisinau, but this is out of the scope for now)!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--XgzyCipe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/n_0lEjDCNwXN7J4orTcI3-T0ZCN_9XbrjDqGukmLnMGOoFULSEOooEiywpZaw-cWfBWNZkuLri2DGHJfkAA9uyWljYeucHoEYDxxu2hgo5domIW0ZxcJglHex9q0loViChWkZ2Cy14k" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--XgzyCipe--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/n_0lEjDCNwXN7J4orTcI3-T0ZCN_9XbrjDqGukmLnMGOoFULSEOooEiywpZaw-cWfBWNZkuLri2DGHJfkAA9uyWljYeucHoEYDxxu2hgo5domIW0ZxcJglHex9q0loViChWkZ2Cy14k" alt="Full stack burger" width="600" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And let's go out from the kitchen and understand exactly why people like full stack people:&lt;/p&gt;

&lt;p&gt;What do customers want?&lt;br&gt;
To hire a freelancer that is capable of doing everything: basically delivering the full burger. Sorry, the full stack.&lt;br&gt;
So they are capable of creating infrastructure and setting that up to be secure.&lt;br&gt;
They create servers and spawn new servers when a high load is required.&lt;br&gt;
This full stack developer is also capable of creating and architecting databases.&lt;br&gt;
After that, they are capable to pick the right packages and libraries for our tools.&lt;br&gt;
They can write backend. They also can do a little bit of design and frontend.&lt;br&gt;
Sounds like a hard job! But today we have all the tools to do it and also the materials to learn it.&lt;br&gt;
So let's get back to our target: Being a full-stack developer.&lt;/p&gt;

&lt;h2&gt;
  
  
  How Many Javascript libraries do you think are out there?
&lt;/h2&gt;

&lt;p&gt;Try a simple guess, it won't hurt to test your estimation skills. Just set a number in your mind. Could be hundreds, thousands or millions?&lt;br&gt;
Nowadays statistics are easy to find. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1lA4dxAC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/BJ7zqCJykPLik_0kZ2ujKvtZPvpNmSGCTi5fBtb6az_mrSpa3oF9YLjv1pFndujpJMM3KD-jGFcSsqaMtbL5L5pIAC2zYMv3iSH5mu4IV1J2f5ZNQSboF9-j93siwFOGw1y-6ASq9mU" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1lA4dxAC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/BJ7zqCJykPLik_0kZ2ujKvtZPvpNmSGCTi5fBtb6az_mrSpa3oF9YLjv1pFndujpJMM3KD-jGFcSsqaMtbL5L5pIAC2zYMv3iSH5mu4IV1J2f5ZNQSboF9-j93siwFOGw1y-6ASq9mU" alt="NPM libraries count" width="800" height="559"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We’re gonna hit 1 million npm packages at the end of 2019. That's a big number of libraries to choose from.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dTN-_kmK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/2KOfcozNsZg3PC9W_JIgPrEidUhS2eN0EK7hMmdrwBY4fiJBpF_E_SZ7_2ycqsnkjqgClJB9xBrMCEfkS1wtp2W0AMIxu5UTj0RJ5UY27IY1BZujYI36AVmSFGWNyk_QgWwcB6YmBqE" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dTN-_kmK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/2KOfcozNsZg3PC9W_JIgPrEidUhS2eN0EK7hMmdrwBY4fiJBpF_E_SZ7_2ycqsnkjqgClJB9xBrMCEfkS1wtp2W0AMIxu5UTj0RJ5UY27IY1BZujYI36AVmSFGWNyk_QgWwcB6YmBqE" alt="Active github repos" width="800" height="368"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And more than 320K JS Active repositories. All this is behind the so-called Javascript fatigue: too many libraries and frameworks to choose from. &lt;br&gt;
And no! no! no! Javascript itself is not fatigued. We are getting tired when choosing from so many libraries.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--xFfEahYY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/RMbb7qcpSVysfaaxVR0oC5OXcGxh_0Th8Fz6-oJQyg9qZzEKSgk2wXxqvNXl85NHWeO1_Os-_-TnZn6kIYNlZE00WzmW8B4hfqmtDPIhpD597O8WM1R1iqIsYDV14BB3FNlOcHmrVnQ" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--xFfEahYY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/RMbb7qcpSVysfaaxVR0oC5OXcGxh_0Th8Fz6-oJQyg9qZzEKSgk2wXxqvNXl85NHWeO1_Os-_-TnZn6kIYNlZE00WzmW8B4hfqmtDPIhpD597O8WM1R1iqIsYDV14BB3FNlOcHmrVnQ" alt="The actual fatigued JS is me!" width="800" height="535"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Countless hours to research and read all Reddit, medium and dev.to articles.&lt;br&gt;
So many choices to make and just 24h to send my next project estimation.&lt;br&gt;&lt;br&gt;
I want to be able to pick the right ones for my next project and also be able to use them in the production environment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Let’s begin by preparing the kitchen!
&lt;/h2&gt;

&lt;p&gt;We need all kind of tools in the infrastructure below.&lt;br&gt;
Serverless is a good alternative, but in many cases, we still need a server and more architecture.&lt;/p&gt;

&lt;h3&gt;
  
  
  Kubernetes
&lt;/h3&gt;

&lt;p&gt;K8s It's like a real kitchen. You even have the mechanism to lock things and keep them secure.&lt;br&gt;
And is pretty much used right now in devops.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vvPFOPyQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/0npziNZQWi2uBuR4Megdv6NJaSlIIT23E3qr4icUUIBC2nH4JPC5wk3tuhyCDFhyA_DP_S7_6Mq7XdeIlAhU0-Ur_7U6mHQI0ko5fRS6nF_bK0kXSeTKgTMvxPD-854IUi27LptVNBk" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vvPFOPyQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/0npziNZQWi2uBuR4Megdv6NJaSlIIT23E3qr4icUUIBC2nH4JPC5wk3tuhyCDFhyA_DP_S7_6Mq7XdeIlAhU0-Ur_7U6mHQI0ko5fRS6nF_bK0kXSeTKgTMvxPD-854IUi27LptVNBk" alt="Kubernets yaml example" width="798" height="690"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With Kubernetes you can inject configuration and secret variables and keep the infrastructure safe.&lt;br&gt;
k8s is available on Google Cloud, Digital Ocean, Azure, and AWS.&lt;/p&gt;

&lt;h3&gt;
  
  
  Docker
&lt;/h3&gt;

&lt;p&gt;Let’s think at it as the barbecue or an oven and the tools we need in the kitchen to make our burgers.&lt;br&gt;
Docker is a container definition - basically, a VM that you define and POOF.&lt;br&gt;
You have a database running. And POOF: You have a node js backend running.&lt;br&gt;
Of course, you have to write the Node js backend, but it’s easier than ever to deploy it on the server.&lt;br&gt;
The database: either mongo or Mysql. Will see later how to choose from.  And your Frontend also.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--f9PwaPWp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/U4JzLeXYn47Zs0lO9yL4bs7cRLDzC-aFPIWljT6oCp91QLvESU8D0LDZVSmseyX801mlssjOiVJ7HqdcGM55XWprKWaucsgOtgtOj5HxBGmTm4urcBDFxyOw0y_nKEpr48WWWjlIkdQ" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--f9PwaPWp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/U4JzLeXYn47Zs0lO9yL4bs7cRLDzC-aFPIWljT6oCp91QLvESU8D0LDZVSmseyX801mlssjOiVJ7HqdcGM55XWprKWaucsgOtgtOj5HxBGmTm4urcBDFxyOw0y_nKEpr48WWWjlIkdQ" alt="Docker description example" width="800" height="931"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Bonus tip: use docker in interviews and coding challenges
&lt;/h3&gt;

&lt;p&gt;You can even do this for small tests or coding challenges for hiring.&lt;br&gt;
I’ve spent around one hour for setting up a Docker container with Mongo, Redis and Node Js. It’s very simple until it gets complicated.&lt;br&gt;
So for building a simple example with Node.JS and mongo I had to use a script (from Github) WAIT_HOSTS.&lt;br&gt;
Basically waits for a database to start and then starts the node js container.&lt;/p&gt;

&lt;h2&gt;
  
  
  But...where is the Javascript?
&lt;/h2&gt;

&lt;p&gt;Well, we kind of needed the kitchen which is the perfect environment to prepare everything. Now that we have infrastructure, databases and a way to start backend we can go to the app layer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Backend should be easy
&lt;/h2&gt;

&lt;p&gt;This is what they said...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5bmp7Rx0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/El0R-uJ2qUEOgsKXXXvdfZcJQWTQV0dm7Ds_BZHCiW2SF670rBo_Yl977XvaMG-ckk7xky0ISHdOzVyoZwUCo59NdZuaj5WkxJVNnHQbfNm46veTTPR2xt9fXmyFJ3DVTVSDr7HRwo4" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5bmp7Rx0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/El0R-uJ2qUEOgsKXXXvdfZcJQWTQV0dm7Ds_BZHCiW2SF670rBo_Yl977XvaMG-ckk7xky0ISHdOzVyoZwUCo59NdZuaj5WkxJVNnHQbfNm46veTTPR2xt9fXmyFJ3DVTVSDr7HRwo4" alt="REST libraries" width="800" height="351"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;On the npm trends, it’s pretty easy to pick up a backend.&lt;br&gt;
Express is pretty popular at 7M downloads per day. It has middleware that you can install, import and adds to your application.&lt;br&gt;
The advantage of going with the crowd is that you will find a lot of examples.&lt;br&gt;
So you can go with the crowd or choose something else. Hapi.JS is used more in enterprise apps. It has a plugin system similar to middleware.&lt;br&gt;
What will be the best decision?&lt;/p&gt;

&lt;h2&gt;
  
  
  Choose the framework on more than 1 parameter
&lt;/h2&gt;

&lt;p&gt;I am working with HAPI with a big customer that has a bigger Rest API. &lt;br&gt;
It’s easier to develop things on HAPI than on Express. If the API will be lighter and lower support is required we can go for Express. If you want to be more Async await pattern you can choose Koa.&lt;br&gt;
Btw I used to express with Async and it also works.&lt;/p&gt;

&lt;h2&gt;
  
  
  Database and ORM
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--hcr_TfGi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/3rXEobZO_hIYHU88aiZGxfsD0zu6Wwryujs5bq1cXBBLntYsJU2MtJhx6dQ5L_BD3OI6KPRSOC6v5XUu9zbnDtA482vBVYY8KAETuTueKvyPo7bsvp2qU8Uu7LM48HFg0UtZnDFjC1I" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--hcr_TfGi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/3rXEobZO_hIYHU88aiZGxfsD0zu6Wwryujs5bq1cXBBLntYsJU2MtJhx6dQ5L_BD3OI6KPRSOC6v5XUu9zbnDtA482vBVYY8KAETuTueKvyPo7bsvp2qU8Uu7LM48HFg0UtZnDFjC1I" alt="ORM Database libraries" width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ORM(Object Relational Mapping) or ODM(for documents) helps with easy management on the database.&lt;br&gt;
Mongoose is the most downloaded but it works just with Mongo.&lt;br&gt;
Sequelize is the second most downloaded but it works just with SQL databases.&lt;br&gt;
Type ORM works with both but is typescript.&lt;/p&gt;

&lt;h3&gt;
  
  
  Bonus tip: use mongoose in interviews!
&lt;/h3&gt;

&lt;p&gt;I used Mongoose when the customer was the most in a hurry. But after 6 or 12 months they wanted more cross tables analytics without writing new code. At the end, SQL would have been better for more people.&lt;br&gt;
If you are 100% sure that you will use SQL go for Sequelize. If you want to use both try TypeORM since it covers both and will ease migration without changing code.&lt;br&gt;
TypeORM may have some slowness in coding when using it from JS so you will have to learn a bit of Decorator and Typescript.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is a backend developer?
&lt;/h2&gt;

&lt;p&gt;My friends say that is somebody scared of CSS.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--nNgb6HBm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/G0JbjvmZy40UmQlEQgQThhzZnYLq1jG3cx2IYAYabzR8pLJPDLsT2D5EHNruOp8QufFfnvtEJndQ7cqSku-igkZz5ojWLzdYzTH_kkBUOrJonS30U_plEHDxLsQ7V-X3wfqJSPFT7Lk" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--nNgb6HBm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/G0JbjvmZy40UmQlEQgQThhzZnYLq1jG3cx2IYAYabzR8pLJPDLsT2D5EHNruOp8QufFfnvtEJndQ7cqSku-igkZz5ojWLzdYzTH_kkBUOrJonS30U_plEHDxLsQ7V-X3wfqJSPFT7Lk" alt="CSS fear" width="540" height="499"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Or somebody that hates it. In either way, you should not let feelings to get between you and CSS.&lt;br&gt;
But no worries, we have the right tools to handle the feelings. &lt;/p&gt;

&lt;h2&gt;
  
  
  This is Frontend!
&lt;/h2&gt;

&lt;p&gt;Everybody in the JS world heard about React by this hour. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BaZbV5O2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/YHH3frl0FOTDA_1peeR5HUYuNh1JHpj6Iy-9B6uyUZZrMPqqBcnymCKAab9ov32oItjtxVl0o7rQrOCQ7fQyXE2MT62sVST0shQwEckUQ1ck6Xyg2kByv4g0AxWWcEXClf-4JgAaykA" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BaZbV5O2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/YHH3frl0FOTDA_1peeR5HUYuNh1JHpj6Iy-9B6uyUZZrMPqqBcnymCKAab9ov32oItjtxVl0o7rQrOCQ7fQyXE2MT62sVST0shQwEckUQ1ck6Xyg2kByv4g0AxWWcEXClf-4JgAaykA" alt="React world" width="800" height="376"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;React is around 5mil downloads. While Vue is closing down Angular at around 1 million daily downloads. Sounds like an easy choice to go for React.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Yo6NAVEV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/sYypvFf-5b8YQR7U4cBioKvRocwTzE5LPb-2N17e6XQV1fhfcN3YNAWuQylowwVRJ1MfO87x-eYcaCsbrTO8QgyjJdsdPhM7Pd9HrPsL6AhB_k65cHwujSjFQbz8jj9uVpvTzMagq4U" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Yo6NAVEV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/sYypvFf-5b8YQR7U4cBioKvRocwTzE5LPb-2N17e6XQV1fhfcN3YNAWuQylowwVRJ1MfO87x-eYcaCsbrTO8QgyjJdsdPhM7Pd9HrPsL6AhB_k65cHwujSjFQbz8jj9uVpvTzMagq4U" alt="Google trends" width="800" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This is the interest graph on Angular, React and Vue. Overall is a big growth in interest on all 3 technologies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Angular
&lt;/h2&gt;

&lt;p&gt;Angular is the entire kitchen that gives you all the tools necessary for you to build the meal that is your web app. You can build more than a burger with it and is not really recommended for small projects. You will also need at least one chef - experienced developer or architect to handle the project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://lh4.googleusercontent.com/RWwN_lVUCciQsGALVOQW--_hwDH9CyE1CaUeXX-83ZtxFZLY_099eN_n9RFT3z2DXZwTTXCAlnP1AqFVZd0QMKLPHHBGScnBXHhT1vn8MWW2Di1yOWF2Im7GpS8c0MqjnJdmkGUie0Q" rel="noopener noreferrer"&gt;Angular chef&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can think of Angular as a swiss-army knife that is capable of doing everything under the ng-cli world: create the project, create components, test them, build, develop.&lt;br&gt;
If you have an outsourcing company that works with multiple customers is good to choose Angular. This can help you have the same tools for the entire team.&lt;br&gt;
Angular is a framework, typescript recommended, you can build universal apps and large scale, feature-rich apps. It uses MVC and is maintained by Google.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--OvNWifQd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/S92mJCa3cudi8zGPRUnnuMS-v7Y1Q68UvTM3AC2uVjfrHO9X2h22pGkqRpGD9T2Lwve4joAEO3seWf-7d1efCZI_LIVOZtRHOkkHI7D70Vl7yeZ6Uj4e7r89Joj34V9lnaWtYb765_Y" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--OvNWifQd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/S92mJCa3cudi8zGPRUnnuMS-v7Y1Q68UvTM3AC2uVjfrHO9X2h22pGkqRpGD9T2Lwve4joAEO3seWf-7d1efCZI_LIVOZtRHOkkHI7D70Vl7yeZ6Uj4e7r89Joj34V9lnaWtYb765_Y" alt="Angular retention rate" width="800" height="289"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Being complicated creates some curious statistics. Almost 35% of the users that used Angular said that will not use it again.&lt;/p&gt;

&lt;h2&gt;
  
  
  React
&lt;/h2&gt;

&lt;p&gt;React is similar to a professional oven. You can cook the food in it but you will need more tools to prepare it. So basically you will need other external tools and libraries: babel for building, JSX, routers like redux.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZbCtPmyT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/eOEsEwW7YbqtcFl8aHiJFaNqUSihRFNLyTMFZw92qzwI9-jdQdcZq_FNHknOr4pwUSo2G4HIdHnvk5_kVQvrifnMn07ue5oB47Vqt4pO6awulMPSBszGKr--2y5FqEd_kOk93XUDBHA" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZbCtPmyT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/eOEsEwW7YbqtcFl8aHiJFaNqUSihRFNLyTMFZw92qzwI9-jdQdcZq_FNHknOr4pwUSo2G4HIdHnvk5_kVQvrifnMn07ue5oB47Vqt4pO6awulMPSBszGKr--2y5FqEd_kOk93XUDBHA" alt="React oven" width="600" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The idea behind React was to have Everything in Javascript. And you can build SPA or mobile apps with it. It's easier than Angular and uses Virtual DOM with recommended JSX. Facebook is maintaining React.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uw42Y2bH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/mEYhDkdIM8HORtFAgmavgzXB2D-1x3wOGqUzMj4ORnwZNrpvNe3CCIQ_wrQx4PzWSOMBGn-J4IgD0RRj6XNoDyjC-qCGRY1RihtG22Bnxbu4McZXnMjTlnn7QpQwweMDs1xeRvJypKw" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uw42Y2bH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/mEYhDkdIM8HORtFAgmavgzXB2D-1x3wOGqUzMj4ORnwZNrpvNe3CCIQ_wrQx4PzWSOMBGn-J4IgD0RRj6XNoDyjC-qCGRY1RihtG22Bnxbu4McZXnMjTlnn7QpQwweMDs1xeRvJypKw" alt="React popularity" width="800" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The retention is much better on React world: only 7% of the users will not use it after using it. That's nice!&lt;br&gt;
If you work in a single product company, that requires the UI to get updated often, React is the best to go. You will also need some senior dev experience.&lt;/p&gt;

&lt;h2&gt;
  
  
  Vue
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v-Y6bma9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://blog.appseed.us/content/images/2019/05/microwave--on-fire.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v-Y6bma9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://blog.appseed.us/content/images/2019/05/microwave--on-fire.gif" alt="Vue microwave" width="320" height="133"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Looking at the other two frameworks, you can easily compare Vue.JS with a microwave. It's easier to use, small learning curves.&lt;br&gt;
Vue is the microwave that allows you to get up and running really fast and make your cooking life efficient and easy. &lt;br&gt;
You just need the burger ingredients and it will be just fast and cooked. But remember to cook all the things in the right order and separately.&lt;br&gt;
If I am a startup with a young developer team and a strict deadline, I like Vue.js.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VzvkVsFV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/p_v3iTrNG-l7vahTW4cxrJO3wd5cao2g3H1FT5Z1Gb5wSrSVUkI0eUQUEwt14iBmCVooPLX6AkHxz9XRP2YlVDvTBrrQjL1RP36CUhI2ckysV50NWLXDAwN4xA91oxEZyziiHQhdI14" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VzvkVsFV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/p_v3iTrNG-l7vahTW4cxrJO3wd5cao2g3H1FT5Z1Gb5wSrSVUkI0eUQUEwt14iBmCVooPLX6AkHxz9XRP2YlVDvTBrrQjL1RP36CUhI2ckysV50NWLXDAwN4xA91oxEZyziiHQhdI14" alt="Vue.js popularity" width="800" height="285"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The popularity over time is increasing and the retention rate Vue.js is very high, under 1% of people would not use it again.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--icG9v7jK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/DYKvyRcPIGASBXkF1yCyBLZ5mrUY2YvNFAe4KLf5cPwQckdF63H6yD14Qlxr8I4MeKsuudaw03ksRWgNMETzMukVxMfaxdaEXzAhEy1ycNPxfCHsCRFi60tWGovN4Sw0d82RIclfGug" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--icG9v7jK--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh5.googleusercontent.com/DYKvyRcPIGASBXkF1yCyBLZ5mrUY2YvNFAe4KLf5cPwQckdF63H6yD14Qlxr8I4MeKsuudaw03ksRWgNMETzMukVxMfaxdaEXzAhEy1ycNPxfCHsCRFi60tWGovN4Sw0d82RIclfGug" alt="Hello to Vue.js components" width="472" height="654"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Say hello to components! All you need is style, template, and script. Just like HTML. That makes Vue so simple.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qu5_L-_V--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/tsdNt68rMra59vE8uOTzNd6O9x5MCTMscoO5lLR0Xjph8yU7UresaG3Ps9thQw__sfA2od0ClZMI5ARxrzDmMutEP2kL6igw21wPy1dXVlREM4qeplPWMIsyzIyPyb1gPPxqeKmmD4I" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qu5_L-_V--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh4.googleusercontent.com/tsdNt68rMra59vE8uOTzNd6O9x5MCTMscoO5lLR0Xjph8yU7UresaG3Ps9thQw__sfA2od0ClZMI5ARxrzDmMutEP2kL6igw21wPy1dXVlREM4qeplPWMIsyzIyPyb1gPPxqeKmmD4I" alt="Vue.js trends in Asia" width="800" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The most interesting thing about Vue is that Asian market, especially China is very interested in it.&lt;br&gt;
A real reason could be that Angular and React are dependent to US giants like Google and Facebook. Vue.js is the only real open source maintained between these 3 top Frontend libraries. All of them are licensed open source.&lt;/p&gt;

&lt;h2&gt;
  
  
  Salary Differences
&lt;/h2&gt;

&lt;p&gt;Some salary insights based on frontend tech. Looks like React is on top of it also on the higher margin.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--vu5JbvQM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/fPWvdWgCAXNslywT1gXF7E_yNGajUi_9Bf5SY6v6fbd5J2QOPEV0XagGieJMLFGoWsiLJYJLrv3FbXJiBgTzhD8FBqBVAHVi-fit7JGSk6Is0Sbxjh9fJUTeKqWMGGORzS-aJkZ0UU4" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--vu5JbvQM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh6.googleusercontent.com/fPWvdWgCAXNslywT1gXF7E_yNGajUi_9Bf5SY6v6fbd5J2QOPEV0XagGieJMLFGoWsiLJYJLrv3FbXJiBgTzhD8FBqBVAHVi-fit7JGSk6Is0Sbxjh9fJUTeKqWMGGORzS-aJkZ0UU4" alt="Salaries front end" width="800" height="409"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The freelance full stack revenue can grow higher if you have the right full stack skills from above.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6piLGZXr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/Rk4-qo3UIIW8Qz8a7JJTGXSfQkIM5xHzOW00FXoyIv4Lk7gm2X8JPpk_q00vaAZ_0ZXoNwSkh9aCcEqLRZEFOG4Lb-R7Xzc6rseXbqN4jMK2x4w2gr1y5Opyg-pgAJPHQV6uXzPWKD4" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6piLGZXr--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/Rk4-qo3UIIW8Qz8a7JJTGXSfQkIM5xHzOW00FXoyIv4Lk7gm2X8JPpk_q00vaAZ_0ZXoNwSkh9aCcEqLRZEFOG4Lb-R7Xzc6rseXbqN4jMK2x4w2gr1y5Opyg-pgAJPHQV6uXzPWKD4" alt="Full stack winners" width="800" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;With 120K Linkedin jobs and based on trends I would go for a stack with React, Express, Bulma and Docker with K8S. &lt;br&gt;
But if I need a startup project Vue.JS(11K Linkedin jobs) is a better choice because it has a smaller learning curve.&lt;br&gt;
If I want a career in enterprise and outsourcing world I would pick Angular(96K Linkedin jobs) to be able to work in bigger teams.&lt;/p&gt;

&lt;h3&gt;
  
  
  And how about my CSS emotions?
&lt;/h3&gt;

&lt;p&gt;You can pick any of &lt;br&gt;
Bootstrap, 68kb/12kb size, 49 elements, &lt;br&gt;
Bulma, 73kb/10kb size, 53 elements &lt;br&gt;
Foundation, 30kb/7kb, 56 elements&lt;br&gt;
UIKit, 33kb/6kb, 51 elements&lt;br&gt;
From all these, I would choose BULMA but you have a wide variety to choose if you want to start fast with a CSS framework. The main advantage of using Bulma is that its box model is fully based on Flexbox. (Yes! no more CSS floats and percentages!) Bulma claims its main features are: 100% responsive&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aXyipQy1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/YsW1W_cFEwCes9G2FDsvyBrt4xy-V0qYikFQWyT-uPl8IRpoKrnU-B-u4I5nCPx4YJSulprNCqp4yAoEq7Drtk9hOicQPjoRyHKyklebPD1FmwoQS2PTlqAEqcRKStPSxIfbrDvmpE0" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aXyipQy1--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/YsW1W_cFEwCes9G2FDsvyBrt4xy-V0qYikFQWyT-uPl8IRpoKrnU-B-u4I5nCPx4YJSulprNCqp4yAoEq7Drtk9hOicQPjoRyHKyklebPD1FmwoQS2PTlqAEqcRKStPSxIfbrDvmpE0" alt="Bulma example" width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And the main advantage of Bulma is that it’s fully responsive. And it gets a 99-speed score while bootstrap gets a 90. This feature beats downloads statistics.&lt;/p&gt;

&lt;p&gt;Do you remember the plain JSON and HTML we had at the beginning of the article?&lt;br&gt;
It's a piece of cake to attach one of the frameworks and get a better representation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PVHlQ-mc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://blog.appseed.us/content/images/2019/05/image-2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PVHlQ-mc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://blog.appseed.us/content/images/2019/05/image-2.png" alt="Bulma table example" width="800" height="354"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Every project is a full stack
&lt;/h3&gt;

&lt;p&gt;Right now every project requires at least a small amount of skills.&lt;br&gt;
Remember that it's easy to choose a library or a framework by doing some simple things:&lt;br&gt;
Check &lt;a href="https://trends.google.com/trends/explore" rel="noopener noreferrer"&gt;google trends&lt;/a&gt;&lt;br&gt;
Check &lt;a href="https://www.npmtrends.com/" rel="noopener noreferrer"&gt;npm trends&lt;/a&gt;&lt;br&gt;
Github page of the project for opened issues, solved issues, how fast are solved&lt;br&gt;
Follow the creators of the libraries on Twitter and find out when they release new things&lt;br&gt;
Try ready &lt;a href="https://www.appseed.us/" rel="noopener noreferrer"&gt;coded libraries for free&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Open source
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uY2G6Czb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/4LOR2wKtAIPxgdPg4cYs3sEJjQ8Vc3cvZSNDX_MlWhZ7uw2-p7VM4hpZXj46HztN0hVo2pWGEf_tAPWcLqT7XxdZ4odrpKgRt8xxVgrCzXV7HNpiJyQuB4PwpSr6LDE3uui48dmRkmQ" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uY2G6Czb--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://lh3.googleusercontent.com/4LOR2wKtAIPxgdPg4cYs3sEJjQ8Vc3cvZSNDX_MlWhZ7uw2-p7VM4hpZXj46HztN0hVo2pWGEf_tAPWcLqT7XxdZ4odrpKgRt8xxVgrCzXV7HNpiJyQuB4PwpSr6LDE3uui48dmRkmQ" alt="Open source" width="175" height="75"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm a freelance developer building open source full-stack examples. You could think of it as recipes for burgers, but not exactly that. Basically scaffolding in React, Vue, Angular, Node and Flask. You can download and &lt;/p&gt;

&lt;h3&gt;
  
  
  The story: pottery class
&lt;/h3&gt;

&lt;p&gt;When I want to learn something I always think about this story.&lt;br&gt;
In a pottery class, the teacher split the class in two.&lt;br&gt;
So the teacher told to the right side students that whoever creates the most kilograms of pottery will win.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rmx4pgpQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://blog.appseed.us/content/images/2019/05/pottery.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rmx4pgpQ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_800/https://blog.appseed.us/content/images/2019/05/pottery.gif" alt="Learning new things" width="260" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And then the teacher turned to the left side class and told them that the one that creates the most beautiful ceramic will win the class.&lt;br&gt;
After one week the winner was chosen.&lt;/p&gt;

&lt;h3&gt;
  
  
  From which side of the class do you think he was?
&lt;/h3&gt;

&lt;p&gt;The ones that build quantity or the ones that were aiming for quality?&lt;br&gt;
The answer is actually pretty misleading: the ones that built for quantity created the most beautiful pottery.&lt;/p&gt;

&lt;h3&gt;
  
  
  Why that?
&lt;/h3&gt;

&lt;p&gt;The students from the left side procrastinated a lot and created just one single piece of ceramics per day, spending more time on planning.&lt;br&gt;
The students from the right side, quantity one, were more focused on doing. So at the end of the day, they were creating 5-6 pieces. They failed a lot and they also learned a lot. At the end of the week, they had an experience of 30 ceramics build, so plenty to choose from. The winner was the one that practiced the most.&lt;br&gt;
So remember each time you want to learn more to build as much as you can. And at the end of 2019, you will be the 10x better than the ones that just procrastinate.&lt;/p&gt;

&lt;h2&gt;
  
  
  The end
&lt;/h2&gt;

&lt;p&gt;All the above content was on stage at &lt;a href="https://codecamp.ro/chisinau" rel="noopener noreferrer"&gt;Codecamp Chisinau&lt;/a&gt;, Frontend Track, 11th May 2019. The public was amazing and I got positive feedback to improve the content.&lt;br&gt;
Got some inspiration from these wonderful fellows:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Andrei Neagoie's &lt;a href="https://medium.com/zerotomastery/tech-trends-showdown-react-vs-angular-vs-vue-61ffaf1d8706" rel="noopener noreferrer"&gt;articles&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;UI is a full Stack &lt;a href="https://www.youtube.com/watch?v=0c9OC9NBsro" rel="noopener noreferrer"&gt;presentation&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;State of &lt;a href="https://stateofjs.com/" rel="noopener noreferrer"&gt;JS&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Octoverse GitHub &lt;a href="https://octoverse.github.com/" rel="noopener noreferrer"&gt;statistics&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Linkedin &lt;a href="https://www.linkedin.com/jobs/search/" rel="noopener noreferrer"&gt;Jobs&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This article was first published on &lt;a href="https://blog.appseed.us/use-full-stack-to-increase-your-income/" rel="noopener noreferrer"&gt;Appseed.us blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>node</category>
      <category>react</category>
      <category>vue</category>
      <category>angular</category>
    </item>
    <item>
      <title>Node JS 12 is out there</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Thu, 25 Apr 2019 18:14:01 +0000</pubDate>
      <link>https://dev.to/teodeleanu/node-js-12-is-out-there-4g2f</link>
      <guid>https://dev.to/teodeleanu/node-js-12-is-out-there-4g2f</guid>
      <description>&lt;p&gt;Where do you get your info when you need to know something new about Node.js?&lt;br&gt;
Is good to be informed and to know when new things come out.&lt;br&gt;
Like a new update, hotfixes, security issues, vulnerabilities, a leaked npm package or a brand new feature?&lt;/p&gt;

&lt;p&gt;I'll tell you where I'm getting some information:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://medium.com/@nodejs" rel="noopener noreferrer"&gt;Medium Node foundation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/nodejs" rel="noopener noreferrer"&gt;Node js twitter account&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://twitter.com/BethGriggs_" rel="noopener noreferrer"&gt;Beth Griggs&lt;/a&gt; - one of the code Node maintainers&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://twitter.com/mhdawson1" rel="noopener noreferrer"&gt;Michael Dawson&lt;/a&gt; - NodeJS community lead&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The thing is you will not only know what came out, but you will know why to upgrade. &lt;br&gt;
And at one of the updates, we got event 100% speed increase on backend services responses by simply updating libraries and Node.JS.&lt;/p&gt;

&lt;p&gt;So let's see what got out with the last release:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;V8 Gets an Upgrade&lt;/strong&gt;: V8 update to V8 7.4
Async stack traces, faster calls with arguments mismatch, &lt;strong&gt;faster await and faster script parsing&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TLS 1.3 support by default&lt;/strong&gt; - can be disabled if required. It's a major security step.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Switch default http parser to llhttp&lt;/strong&gt; - Not experimental anymore. Check if you were using http parser in your code before upgrading.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Making Native Modules Easier&lt;/strong&gt; - improving support for this&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Worker Threads&lt;/strong&gt; - although an old feature it can be used without flags on runtime&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Heap Dumps and Diagnostics Report&lt;/strong&gt; - not required to use 3rd party libs anymore and you can diagnose your app without changing production code.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speed at startup&lt;/strong&gt; - Node 12 generates the code cache for built-in libraries in advance at build time. This gives a ~30% speedup in startup time for the main thread.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;New compiler and platform minimums&lt;/strong&gt; - the codebase now requires a minimum of GCC 6 and glibc 2.17 on platforms other than macOS and Windows. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Windows minimums remain the same as Node.js 11, requiring at least Windows 7, 2008 R2 or 2012 R2 and a minimum compiler of Visual Studio 2017. macOS users needing to compile Node.js will require a minimum of Xcode 8 and Node.js binaries made available on nodejs.org will only support a minimum of macOS 10.10 “Yosemite”.&lt;/p&gt;

&lt;p&gt;Further details are available in the Node.js &lt;a href="https://github.com/nodejs/node/blob/v12.x/BUILDING.md#platform-list" rel="noopener noreferrer"&gt;BUILDING.md&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Got inspiration from this &lt;a href="https://medium.com/@nodejs/introducing-node-js-12-76c41a1b3f3f" rel="noopener noreferrer"&gt;article&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Article was first published on Appseed.us blog:&lt;br&gt;
&lt;a href="https://blog.appseed.us/node-js-12-is-out-there/" rel="noopener noreferrer"&gt;https://blog.appseed.us/node-js-12-is-out-there/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>node</category>
      <category>update</category>
      <category>developer</category>
      <category>javascript</category>
    </item>
    <item>
      <title>How to use Sequelize ORM in your Express application</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Thu, 18 Apr 2019 13:25:11 +0000</pubDate>
      <link>https://dev.to/teodeleanu/sequelize-orm-in-your-express-application-2oag</link>
      <guid>https://dev.to/teodeleanu/sequelize-orm-in-your-express-application-2oag</guid>
      <description>&lt;p&gt;Adding and ORM or picking up one is definitely not an easy task. But the speed it will bring to you coding is critical.&lt;br&gt;
I've checked fast one of the ORMs available for JS &lt;a href="https://www.slant.co/topics/11235/~javascript-orms" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;br&gt;
For those of you that prefer just relational databases based on SQL, you can use Sequelize. &lt;br&gt;
That is the main reason we picked it for this example.&lt;/p&gt;
&lt;h1&gt;
  
  
  PROs and CONs
&lt;/h1&gt;

&lt;p&gt;&lt;a href="https://www.npmjs.com/package/sequelize" rel="noopener noreferrer"&gt;Sequelize&lt;/a&gt; - 483K weekly downloads at the time of writing - seems like the most stable with a difference in not using mongo (which is the preferred MVP database or project).&lt;br&gt;
Sequelize is a promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite, and Microsoft SQL Server. It features reliable transaction support, relations, eager and lazy loading, read replication and more.&lt;br&gt;
PROs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sequelize abstracts away the nuanced differences between various SQL implementations.&lt;/li&gt;
&lt;li&gt;Sequelize has a middleware implemented which allows customizing the error message for fails in every field.&lt;/li&gt;
&lt;li&gt;Sequelize provides a promise-based library, which helps better managing of the exception and the result when it is unexpected.&lt;/li&gt;
&lt;li&gt;Has the capability to "sync" the database on changed models. So it will alter or automatically create the tables for you.&lt;/li&gt;
&lt;li&gt;Has the capacity to query all the complicated join's for you. You just have to learn the way to connect the Objects with each other.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Cons:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sequelize sometimes generates complex queries. In the model definition sometimes doesn't understand the relation correctly when the relationship is "hasOne."&lt;/li&gt;
&lt;li&gt;Sequalize lacks NoSQL support: Wanna use Mongo? Gotta switch.&lt;/li&gt;
&lt;li&gt;Has some weird exceptions when things get, and you want to create more connections to the DB. You can use a connection pool for that.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most significant advantage of an ORM - Object Relationship Model - are fast switching between any SQL DB's. So if you started with SQLite as local database and you want to switch next week to MySQL or Postgre, you just change the connector.&lt;/p&gt;
&lt;h1&gt;
  
  
  Choosing the SQL Database
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://www.sqlite.org/index.html" rel="noopener noreferrer"&gt;SQlite&lt;/a&gt;&lt;/strong&gt; - easy to use a local database with no server required to run. It will use just a local file, so it's suitable for non-concurrent access and single server applications.
When to use SQLite: Embedded applications, Disk access replacement, Testing
When not to use SQLite: Working with lots of data, High write volume, Network access required.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://www.oracle.com/mysql/" rel="noopener noreferrer"&gt;mySQL&lt;/a&gt;&lt;/strong&gt; - this is the de-facto SQL server that has support in most of the old languages. Nokia, Google, Facebook, YouTube uses it. It allows multiple users to connect to the same server and have different databases. Also has &lt;a href="https://www.mysql.com/products/workbench/" rel="noopener noreferrer"&gt;mysql workbench&lt;/a&gt;, one of the most used UI tools for MySQL, in case you don't like MySQL CLI.
When to use MySQL: Popularity and ease of use - so you will easily find resources about it, Security, Speed, and replication. Websites and web applications, Distributed operations, Expected future growth
When not to use MySQL: Known limitations - lacks support for FULL joins, Licensing, and proprietary features - some features are not available in the open source license since 2009 was acquired by Oracle, and new features development was slowed down. SQL compliance is necessary, Concurrency and large data volumes.
MySQL is widely chosen for web-based projects that need a database only for straightforward data transactions. It is common, though, for MySQL to underperform when strained by heavy loads or when attempting to complete complex queries.
MySQL performs well when only read speeds are required. MySQL + InnoDB provides very good read/write speeds for different scenarios. Overall, MySQL performs well with high concurrency scenarios. MySQL is reliable and works well with Business Intelligence applications, as business intelligence applications are typically read-heavy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://www.postgresql.org/" rel="noopener noreferrer"&gt;postgre&lt;/a&gt;&lt;/strong&gt;:  PostgreSQL’s &lt;a href="https://www.pgadmin.org/" rel="noopener noreferrer"&gt;PGAdmin&lt;/a&gt; tool is pretty awesome and fairly complete when it comes to configuring and interacting with your server. PostgreSQL is widely used in large systems where to read and write speeds are crucial, and data needs to validate. Also, it supports a variety of performance optimizations that are available only in commercial solutions such as Geospatial data support, concurrency without reading locks.
Overall, PostgreSQL performance is utilized best in systems requiring the execution of complex queries. PostgreSQL performs well when read/write speeds are required, and extensive data analysis is needed.
PostgreSQL also works well with Business Intelligence applications but is better suited for Data Warehousing and data analysis applications that require fast read/write speeds.
When you use Postgres: Data integrity is essential, integration with other tools, Complex operations - queries can be distributed on multiple CPUs.
When not to use Postgres:  Speed is imperative - for fasted reads, Simple setups, Complex replication.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://mariadb.org/" rel="noopener noreferrer"&gt;MariaDB&lt;/a&gt;&lt;/strong&gt; is being used by many large corporations, Linux distributions, and more. Some organizations that use MariaDB include Google, Craigslist, Wikipedia, archlinux, RedHat, CentOS, and Fedora. MariaDB is a fork of Mysql, so most of the features are compatible, including queries and indexes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://www.microsoft.com/en-us/sql-server/sql-server-2016" rel="noopener noreferrer"&gt;tedious - Microsoft SQL Server&lt;/a&gt;&lt;/strong&gt; Very similar to MySQL and also a fork from it. With MSSQL, you create a database and don’t specify different engines. Is generally expensive to run, because you need licenses for the server is running the software. If you use .NET, you have some advantages, but it's not our case. On the other side, you can extend an existing functionality with Node connecting directly to MSSQL.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;
  
  
  Configuring Sequelize
&lt;/h1&gt;

&lt;p&gt;Now let's get back to our Sequelize ORM.&lt;br&gt;
For our example we will choose the most straightforward way: &lt;a href="https://www.npmjs.com/package/sqlite" rel="noopener noreferrer"&gt;Sqlite&lt;/a&gt; - 20K weekly downloads - since has zero configuration for the server side. &lt;br&gt;
If you need more complex examples, on a given subject, please comment in the section below.&lt;/p&gt;

&lt;p&gt;Let's start installing things around:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ npm install --save sequelize # This will install v5

$ npm install --save sqlite3

# Optionally add other db connectors - but you will need only one at a time
# keep your code clean and remove the unused ones from package.json
$ npm install --save pg pg-hstore # [Postgres](https://www.npmjs.com/package/pg) 680K vs [HStore deserializer](https://www.npmjs.com/package/pg-hstore) 80K AMT
$ npm install --save mysql2 # [Mysql](https://www.npmjs.com/package/mysql2) 198K weekly downloads ATM
$ npm install --save mariadb #  [MariaDB connector](https://www.npmjs.com/package/mariadb) 5K weekly downloads ATM
$ npm install --save tedious # [Microsoft SQL Server](https://www.npmjs.com/package/mssql) - 80K downloads ATM
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That was the easy part. We should actually want to use also the &lt;code&gt;sequelize-cli.&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ npm install --save --only=dev sequelize-cli
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now we want to create default config files.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;node_modules/.bin/sequelize init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This will generate some folders config/config.js, seeders, models/index.js, migrations.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Unrelated to this subject: In &lt;a href="https://appseed.us/fullstack-apps-generator" rel="noopener noreferrer"&gt;Appseed PRO&lt;/a&gt; version you can also get everything set up for easily checking code quality in VSCode. You can even get all the above code for free and use it yourself. Licensed MIT.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The file index.js gets all the models that you will create under &lt;code&gt;models&lt;/code&gt; folder and loads them at run time. It also calls the &lt;code&gt;sync&lt;/code&gt; method for you to make sure the DB is up to date.&lt;/p&gt;

&lt;p&gt;Let's have a look at the config file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;module.exports = {
    development: {
        dialect: 'sqlite',
        storage: './db.development.sqlite'
    },
    test: {
        dialect: 'sqlite',
        storage: ':memory:'
    },
    production: {
        username: process.env.DB_USERNAME,
        password: process.env.DB_PASSWORD,
        database: process.env.DB_NAME,
        host: process.env.DB_HOSTNAME,
        port: process.env.DB_PORT,
        dialect: 'mysql',
        use_env_variable: 'DATABASE_URL'
    },
    production2: {
        use_env_variable:"DB_CONNECTION_STRING",
        dialect: "postgres",
        ssl: true,
        dialectOptions: {
            ssl: true
        }
    }
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As you may see you can use different configurations for your database based on diferent environemnt. That must match the ENV variable from your .env file.&lt;br&gt;
Among options you can use are: env variable, ssl, host, port, full connection string, storage, database name, dialectOptions, protocol(tcp or null for Heroku), logging(can be set to null or console.log), sync: { force: true }, pool(max: 5, idle: 30000, acquire: 60000). More details with sequelize options on coonfig can be found on &lt;a href="http://docs.sequelizejs.com/manual/usage.html" rel="noopener noreferrer"&gt;Sequelize doc page&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Now let's create a User. You can either use the CLI or write the code itself. I like using both when adding pieces of information as primary keys and other extra details.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;node_modules/.bin/sequelize model:create --name User --attributes name:string,surname:string,email:string,password:string
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The coolest thing is this generates the full model automatically. If you want you can copy the id from the migration and add it there &lt;code&gt;id: DataTypes.INTEGER&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;'use strict';
module.exports = (sequelize, DataTypes) =&amp;gt; {
  const User = sequelize.define('User', {
    name: DataTypes.STRING,
    surname: DataTypes.STRING,
    email: DataTypes.STRING,
    password: DataTypes.STRING
  }, {});
  User.associate = function(models) {
    // associations can be defined here
  };
  return User;
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As an extra, it also generates the migration for this table model.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;'use strict';
module.exports = {
  up: (queryInterface, Sequelize) =&amp;gt; {
    return queryInterface.createTable('Users', {
      id: {
        allowNull: false,
        autoIncrement: true,
        primaryKey: true,
        type: Sequelize.INTEGER
      },
      name: {
        type: Sequelize.STRING
      },
      surname: {
        type: Sequelize.STRING
      },
      email: {
        type: Sequelize.STRING
      },
      password: {
        type: Sequelize.STRING
      },
      createdAt: {
        allowNull: false,
        type: Sequelize.DATE
      },
      updatedAt: {
        allowNull: false,
        type: Sequelize.DATE
      }
    });
  },
  down: (queryInterface, Sequelize) =&amp;gt; {
    return queryInterface.dropTable('Users');
  }
};
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;So you get a full example on how you can do it your own.&lt;br&gt;
If you already have some models created manually and want to create a migration you can do it by calling sequelize:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ sequelize migration:generate --name [name_of_your_migration]
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h1&gt;
  
  
  Coding your way to the DB
&lt;/h1&gt;

&lt;p&gt;But let's get back to the most beautiful part of our life: coding!!!&lt;br&gt;
In your methods, you must include the models. I would suggest separating models and database access from your API routes handlers.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const User        = require('../../models').User;

//get some fake data for example
const faker = require('faker');
const email = faker.internet.email();
const password = faker.internet.password();
const firstName = faker.name.firstName();
const lastName = faker.name.lastName();
const body = {email: email, password: password, name: lastName, surname: firstName};

//create a user
const newUser = await User.create(body);

//find the user
let user = await User.findOne({where: {email}});

//destroy the user with the object, this will call DELETE where id = our_user_id automatically.
await user.destroy();
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And now we have the all cycle for an object.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Bonus 1&lt;/strong&gt;: Besides the normal cycle of one user you may want to display all the users in an admin dashboard:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
let limit = 50;   // number of records per page
let offset = 0;
try{
    const data = await User.findAndCountAll();
    let page = req.params.page;      // page number
    let pages = Math.ceil(data.count / limit);
    offset = limit * (page - 1);
    const users = User.findAll({
        attributes: ['id', 'name', 'surname', 'email'],
        limit: limit,
        offset: offset,
        $sort: { id: 1 }
    });
    // next return an object that describes
    // the page and offset
    // this ensures you can display pages
    // and give to the ui the option
    // to display this to the user
    return {
        page,
        pages,
        offset,
        users
    };
}catch(err){
    //do something with your status like in the commented example
    //res.status(500).send('Internal Server Error');
} 
});
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Bonus 2&lt;/strong&gt;: you can use &lt;a href="https://www.npmjs.com/package/joi" rel="noopener noreferrer"&gt;Joi&lt;/a&gt; to validate your data on the route side before you add it in your model.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;const Joi         = require('joi');
const userSchema = Joi.object().keys({
    username: Joi.string().alphanum().min(3).max(30).optional(),
    password: Joi.string().required(),
    email: Joi.string().email({ minDomainAtoms: 2 }).required(),
    name: Joi.string().alphanum().min(2).max(100).optional(),
    surname: Joi.string().alphanum().min(2).max(100).optional()
});
//....
const result = Joi.validate(user, userSchema);
if(result.error){
    return res.status(422).json({
        errors: result.error
    });
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Bonus 3&lt;/strong&gt;:&lt;br&gt;
Calling &lt;code&gt;npm run test&lt;/code&gt; in the code will check everything for you. To set up that check the article with &lt;a href="https://blog.appseed.us/automated-tests-bdd-adding-tests-with-lab-in-your-project-with-express/" rel="noopener noreferrer"&gt;BDD testing&lt;/a&gt;. &lt;br&gt;
You can also set up your code quality and error detections pretty easy with &lt;a href="https://blog.appseed.us/automate-error-detection-with-es-lint/" rel="noopener noreferrer"&gt;ESLint&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Please let me know your opinion about this article in the comments section below is. I would be glad to answer to your requests.&lt;/p&gt;

&lt;p&gt;PS: This article was first published on &lt;a href="https://blog.appseed.us/sequelize-orm-express-application/" rel="noopener noreferrer"&gt;appseed.us blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>node</category>
      <category>orm</category>
      <category>sequelize</category>
      <category>database</category>
    </item>
    <item>
      <title>Automate JS error detection with ES Lint</title>
      <dc:creator>Teo Deleanu</dc:creator>
      <pubDate>Mon, 15 Apr 2019 13:44:59 +0000</pubDate>
      <link>https://dev.to/teodeleanu/automate-js-error-detection-with-es-lint-6h3</link>
      <guid>https://dev.to/teodeleanu/automate-js-error-detection-with-es-lint-6h3</guid>
      <description>&lt;p&gt;&lt;strong&gt;ESLint&lt;/strong&gt; - only 6.6M weekly downloads - is a Javascript code quality tool that analysis your code without executing it. It will warn you about mistakes and win you a lot of time.&lt;br&gt;
ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. In many ways, it is similar to JSLint and JSHint with a few exceptions: these come with a predefined set of rules for you. ESlint has the flexibility so you can set up.&lt;/p&gt;

&lt;p&gt;A simple example on how can this help you?&lt;/p&gt;

&lt;p&gt;So let's get a simple example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function(a,b){
    //do something with the variables
    return a * d;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This error is obvious when you have a small amount of code.&lt;br&gt;
But if you have a large amount this will be very useful.&lt;br&gt;
By running eslint to your code you get the next output:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;1:10  error  'test' is defined but never used                  no-unused-vars
1:17  error  'b' is defined but never used                     no-unused-vars
2:1   error  Expected indentation of 1 tab but found 4 spaces  indent
3:1   error  Expected indentation of 1 tab but found 4 spaces  indent
3:16  error  'd' is not defined                                no-undef
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Without ES lint you can have unwanted bugs that can make your customers unhappy.&lt;br&gt;
So part of the automation process of code quality and together with automated tests you can setup eslint to get better code quality.&lt;br&gt;
This will fix unwanted bugs and your clients can be happier.&lt;/p&gt;

&lt;p&gt;You can see in the above code that this already found some errors and I have an already setup eslint configuration. &lt;br&gt;
Let's do it for you now!&lt;/p&gt;

&lt;p&gt;If you want to include ESLint as part of your project’s build system, we recommend installing it locally. You can do so using npm:&lt;/p&gt;

&lt;p&gt;Installation and Usage&lt;br&gt;
Prerequisites: Node.js (&amp;gt;=6.14), npm version 3+.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Just a bit related to this subject: In &lt;a href="https://appseed.us/fullstack-apps-generator" rel="noopener noreferrer"&gt;Appseed PRO&lt;/a&gt; version you can also get everything set up for easily debugging tests in VSCode. You can even get all the above code for free and use it yourself. Licensed MIT.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;There are two ways to install ESLint: globally and locally.&lt;/p&gt;

&lt;p&gt;Local Installation and Usage&lt;/p&gt;

&lt;p&gt;$ npm install eslint --save-dev&lt;br&gt;
You should then setup a configuration file:&lt;/p&gt;

&lt;p&gt;$ ./node_modules/.bin/eslint --init&lt;br&gt;
After that, you can run ESLint in your project’s root directory like this:&lt;/p&gt;

&lt;p&gt;$ ./node_modules/.bin/eslint yourfile.js&lt;br&gt;
Instead of navigating to ./node_modules/.bin/ you may also use npx to run eslint:&lt;/p&gt;

&lt;p&gt;$ npx eslint&lt;br&gt;
Note: If ESLint wasn’t manually installed (via npm), npx will install eslint to a temporary directory and execute it.&lt;/p&gt;

&lt;p&gt;Any plugins or shareable configs that you use must also be installed locally to work with a locally-installed ESLint.&lt;/p&gt;

&lt;p&gt;Global Installation and Usage&lt;br&gt;
If you want to make ESLint available to tools that run across all of your projects, we recommend installing ESLint globally. You can do so using npm:&lt;/p&gt;

&lt;p&gt;$ npm install -g eslint&lt;br&gt;
You should then setup a configuration file:&lt;/p&gt;

&lt;p&gt;$ eslint --init&lt;br&gt;
After that, you can run ESLint on any file or directory like this:&lt;/p&gt;

&lt;p&gt;$ eslint yourfile.js&lt;/p&gt;

&lt;p&gt;Any plugins or shareable configs that you use must also be installed globally to work with a globally-installed ESLint.&lt;/p&gt;

&lt;p&gt;So ESLint finds errors, inforces rules and can also fix issues automatically.&lt;br&gt;
Running the fix command is easy:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;./node_modules/.bin/eslint --fix --ext .js test.js

/appseed/starter-express/test.js
  1:10  error  'test' is defined but never used  no-unused-vars
  1:17  error  'b' is defined but never used     no-unused-vars
  3:13  error  'd' is not defined                no-undef

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After running the fix command it returns just the errors that require your attention.&lt;br&gt;
It's clear that we never use the test function in our case. And looks like I made a typo on using variable d instead of b.&lt;br&gt;
Let's fix that and see the output. The code looks like this right now:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;function test(a,b){
    //do something with the variables
    return a * b;
}

test(1,2);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And the output for eslint is the one bellow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;node_modules/eslint/bin/eslint.js test.js
➜  starter-express git:(feat/sequelize-orm-register) ✗
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;One of the best features of node you can use with npm is the package scripts.&lt;br&gt;
So in your package.json you can set some commands to easily run eslint from your project or call it from you travis ci.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;"scripts": {
    "start": "node index.js",
    "dev": "nodemon start",
    "lint": "./node_modules/.bin/eslint --ext .js config/ models/ routes/ seeders/ index.js",
    "lint-fix": "./node_modules/.bin/eslint --fix --ext .js config/ models/ routes/ seeders/ index.js",
  },
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is helpful because now you can just run a simple command for testing and fixing your small errors.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm run lint
npm run lint-fix
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;PS: This article was first published on &lt;a href="https://blog.appseed.us/automate-error-detection-with-es-lint/" rel="noopener noreferrer"&gt;appseed.us blog&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>node</category>
      <category>lint</category>
      <category>codequality</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
