<?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: Alphaexcel</title>
    <description>The latest articles on DEV Community by Alphaexcel (@alphaexcel).</description>
    <link>https://dev.to/alphaexcel</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%2F876849%2F1cd8e308-f828-4fc5-a841-7eb3fc136b0c.jpg</url>
      <title>DEV Community: Alphaexcel</title>
      <link>https://dev.to/alphaexcel</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alphaexcel"/>
    <language>en</language>
    <item>
      <title>AI Won't Replace Developers, But It Will Change How We Work</title>
      <dc:creator>Alphaexcel</dc:creator>
      <pubDate>Wed, 25 Mar 2026 00:03:52 +0000</pubDate>
      <link>https://dev.to/alphaexcel/ai-wont-replace-developers-but-it-will-change-how-we-work-4apb</link>
      <guid>https://dev.to/alphaexcel/ai-wont-replace-developers-but-it-will-change-how-we-work-4apb</guid>
      <description>&lt;p&gt;Lately, there’s been a growing fear in the software engineering world.&lt;/p&gt;

&lt;p&gt;You see it everywhere:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;developers on forums
&lt;/li&gt;
&lt;li&gt;people learning to code
&lt;/li&gt;
&lt;li&gt;tech conversations online
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The questions are always the same:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Will AI replace developers?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Is it still worth learning programming?&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Are we too late to the industry?&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Honestly, I understand why people feel this way.&lt;/p&gt;

&lt;p&gt;AI tools today can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;generate code
&lt;/li&gt;
&lt;li&gt;debug errors
&lt;/li&gt;
&lt;li&gt;explain complex concepts
&lt;/li&gt;
&lt;li&gt;write documentation
&lt;/li&gt;
&lt;li&gt;scaffold entire project structures
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That’s a big shift.&lt;/p&gt;

&lt;p&gt;And yes, there have been moments where I’ve used AI and thought:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"This is doing in seconds what would have taken me much longer."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That can feel intimidating at first.&lt;/p&gt;

&lt;p&gt;But instead of seeing it as a threat, I’ve started seeing it differently — as a way to grow faster.&lt;/p&gt;




&lt;h2&gt;
  
  
  💡 Code Generation Is Not Software Engineering
&lt;/h2&gt;

&lt;p&gt;One major misunderstanding in the AI discussion is this:&lt;/p&gt;

&lt;p&gt;People assume that generating code equals software engineering.&lt;/p&gt;

&lt;p&gt;It doesn’t.&lt;/p&gt;

&lt;p&gt;Software engineering involves:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;understanding problems
&lt;/li&gt;
&lt;li&gt;designing solutions
&lt;/li&gt;
&lt;li&gt;making architectural decisions
&lt;/li&gt;
&lt;li&gt;thinking about scalability
&lt;/li&gt;
&lt;li&gt;communicating with teams
&lt;/li&gt;
&lt;li&gt;maintaining systems over time
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI can generate output.&lt;/p&gt;

&lt;p&gt;But developers provide &lt;strong&gt;judgment&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;And that difference matters.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚙️ Where AI Actually Helps Developers
&lt;/h2&gt;

&lt;p&gt;Instead of replacing developers, AI is starting to act more like a productivity multiplier.&lt;/p&gt;

&lt;p&gt;Here are some real ways developers are using AI right now:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;generating boilerplate code
&lt;/li&gt;
&lt;li&gt;debugging faster
&lt;/li&gt;
&lt;li&gt;learning new frameworks
&lt;/li&gt;
&lt;li&gt;understanding unfamiliar codebases
&lt;/li&gt;
&lt;li&gt;exploring different solutions quickly
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This doesn’t remove developers.&lt;/p&gt;

&lt;p&gt;It removes &lt;strong&gt;friction&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  ⚠️ The Real Risk Developers Should Think About
&lt;/h2&gt;

&lt;p&gt;The real risk isn’t AI.&lt;/p&gt;

&lt;p&gt;The real risk is refusing to adapt.&lt;/p&gt;

&lt;p&gt;Tech has always evolved:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;new frameworks appear
&lt;/li&gt;
&lt;li&gt;tools improve
&lt;/li&gt;
&lt;li&gt;workflows change
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;AI is just another shift — but a faster one.&lt;/p&gt;

&lt;p&gt;Developers who learn how to use AI effectively will likely become more productive.&lt;/p&gt;

&lt;p&gt;Developers who ignore it completely may struggle to keep up.&lt;/p&gt;




&lt;h2&gt;
  
  
  👨‍💻 My Perspective as Someone Growing in Tech
&lt;/h2&gt;

&lt;p&gt;As someone still growing in tech, I’ve decided not to see AI as competition.&lt;/p&gt;

&lt;p&gt;Instead, I see it as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a learning accelerator
&lt;/li&gt;
&lt;li&gt;a productivity tool
&lt;/li&gt;
&lt;li&gt;and sometimes a debugging partner
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And there have been moments where I’ve used AI and thought:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"This is doing in seconds what would have taken me much longer."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That can feel intimidating.&lt;/p&gt;

&lt;p&gt;But instead of seeing that as a threat, I’m choosing to see it as an opportunity to grow faster.&lt;/p&gt;

&lt;p&gt;But I also know something important:&lt;/p&gt;

&lt;p&gt;If you rely on AI without understanding the fundamentals, it will eventually show.&lt;/p&gt;

&lt;p&gt;That’s why I’m focusing on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;core programming concepts
&lt;/li&gt;
&lt;li&gt;problem-solving
&lt;/li&gt;
&lt;li&gt;system thinking
&lt;/li&gt;
&lt;li&gt;and learning how to use AI wisely
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  🚀 The Future of Developers
&lt;/h2&gt;

&lt;p&gt;AI will definitely change software development.&lt;/p&gt;

&lt;p&gt;But I don’t think it eliminates developers.&lt;/p&gt;

&lt;p&gt;Instead, it changes what makes a developer valuable.&lt;/p&gt;

&lt;p&gt;In the future, strong developers may need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;better problem-solving
&lt;/li&gt;
&lt;li&gt;better judgment
&lt;/li&gt;
&lt;li&gt;better understanding of systems
&lt;/li&gt;
&lt;li&gt;and the ability to work with intelligent tools
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Honestly, that’s not something I fear.&lt;/p&gt;

&lt;p&gt;That’s something I want to grow into.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔚 Final Thought
&lt;/h2&gt;

&lt;p&gt;AI isn’t the enemy of developers.&lt;/p&gt;

&lt;p&gt;It’s a tool.&lt;/p&gt;

&lt;p&gt;And like every powerful tool, the real difference will come from &lt;strong&gt;how developers choose to use it&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Because the developers who will thrive are not the ones who resist change the hardest, but the ones who learn how to work with it.&lt;/p&gt;




&lt;p&gt;What's your take on AI in development?&lt;/p&gt;

&lt;p&gt;Do you see it as a threat, a tool, or something in between?&lt;/p&gt;

</description>
      <category>ai</category>
      <category>softwareengineering</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Automated Diaspora Data Broker for African Exports</title>
      <dc:creator>Alphaexcel</dc:creator>
      <pubDate>Sun, 06 Jul 2025 16:18:28 +0000</pubDate>
      <link>https://dev.to/alphaexcel/automated-diaspora-data-broker-for-african-exports-31c6</link>
      <guid>https://dev.to/alphaexcel/automated-diaspora-data-broker-for-african-exports-31c6</guid>
      <description>&lt;h2&gt;
  
  
  🛠️ What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Automated Diaspora Data Broker for African Exports&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
An AI-powered data agent using Runner H to uncover weekly product demand insights from diaspora communities across the globe — helping small African exporters make smarter decisions and connect directly with active buyers.&lt;/p&gt;

&lt;p&gt;This AI agent finds trending products, unmet diaspora needs, and untapped export opportunities using public social data, compiles everything into a structured Google Sheet, and gives actionable weekly recommendations.&lt;/p&gt;

&lt;p&gt;Watch the automation in &lt;br&gt;
action:&lt;/p&gt;

&lt;p&gt;&lt;iframe src="https://player.vimeo.com/video/1099092303" width="710" height="399"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  ⚙️ How I Used Runner H
&lt;/h2&gt;

&lt;p&gt;I created a multi-step prompt for Runner H that does the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Research diaspora conversations&lt;/strong&gt; on platforms like Reddit, Twitter/X, and Facebook groups using keywords like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;“Buy African food”&lt;/li&gt;
&lt;li&gt;“Where to order shea butter”&lt;/li&gt;
&lt;li&gt;“I miss Ankara fabric in Germany”&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Analyze for patterns&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Top requested African products&lt;/li&gt;
&lt;li&gt;Most mentioned countries and cities&lt;/li&gt;
&lt;li&gt;Challenges in sourcing or buying&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Output a structured Google Sheet&lt;/strong&gt; with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Trending Products&lt;/code&gt; tab&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Market Opportunities&lt;/code&gt; tab&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Weekly Recommendation&lt;/code&gt; tab&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Summarize findings&lt;/strong&gt; in 5 simple bullet points exporters can act on.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The prompt runs weekly and serves as an automated research assistant for African SMEs and solopreneurs.&lt;/p&gt;




&lt;h2&gt;
  
  
  🌍 Use Case &amp;amp; Impact
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Real-World Problem
&lt;/h3&gt;

&lt;p&gt;Small-scale exporters across Africa often struggle to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Identify what diaspora consumers truly want&lt;/li&gt;
&lt;li&gt;Know where to target for demand&lt;/li&gt;
&lt;li&gt;Find time or tools to research effectively&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Who This Helps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;African entrepreneurs&lt;/strong&gt; shipping local goods (e.g., snacks, fashion, cosmetics)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Diaspora-focused vendors&lt;/strong&gt; selling online from the UK, US, or EU&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Export marketers&lt;/strong&gt; and trade promotion agencies&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  How This Helps
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Saves time and money doing market research&lt;/li&gt;
&lt;li&gt;Empowers smarter, data-backed exports&lt;/li&gt;
&lt;li&gt;Opens pathways to new markets and unmet needs&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  ❤️ Social Love
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;I’m participating in the &lt;strong&gt;Community Champion&lt;/strong&gt; prize too!&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I’ve shared my project on Twitter/X and LinkedIn — please check it out, engage, and share to help spread the vision for African SME empowerment through AI!&lt;/p&gt;

&lt;p&gt;🔗 [&lt;a href="https://x.com/oyinemi/status/1941894145439649816?t=87TNhIQ_JNnrzWCJbVtLwA&amp;amp;s=19" rel="noopener noreferrer"&gt;https://x.com/oyinemi/status/1941894145439649816?t=87TNhIQ_JNnrzWCJbVtLwA&amp;amp;s=19&lt;/a&gt;]  &lt;/p&gt;




&lt;p&gt;Thanks for reading — I hope this inspires other entrepreneurs to use AI tools like Runner H for real-world impact! 🇳🇬✨&lt;br&gt;&lt;br&gt;
Let’s build smarter, export better, and connect global markets through data + creativity.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>runnerhchallenge</category>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>ANGULAR COMPONENT LIFECYCLE HOOK METHODS YOU SHOULD KNOW</title>
      <dc:creator>Alphaexcel</dc:creator>
      <pubDate>Tue, 18 Oct 2022 15:52:17 +0000</pubDate>
      <link>https://dev.to/alphaexcel/angular-component-lifecycle-hook-methods-you-should-know-5aif</link>
      <guid>https://dev.to/alphaexcel/angular-component-lifecycle-hook-methods-you-should-know-5aif</guid>
      <description>&lt;p&gt;First, let’s break down the two major words here which are “Lifecycle” and “Hook”.&lt;br&gt;
• Lifecycle encompasses the stages that the component &lt;br&gt;
        undergoes from its creation to its destruction which would &lt;br&gt;
        mean death when we talk about a living organism.&lt;br&gt;
• Hook categorizes the different breakpoints that the &lt;br&gt;
        component passes through from when it was created.&lt;br&gt;
*&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;em&gt;WHAT IS THE ANGULAR LIFECYCLE HOOK&lt;/em&gt;*
&lt;/h2&gt;

&lt;p&gt;A component instance has a lifecycle hook that starts when Angular instantiates a component class the minute you create an application and renders the component view along with its child views.&lt;br&gt;
A lifecycle continues with change detection, that is a change occurs that is also part of the lifecycle of a component.&lt;br&gt;
It updates both views and the component instances as needed as it checks to see what data-bound properties change.&lt;br&gt;
The lifecycle ends when Angular destroys the component instance and it removes the rendered templates from the DOM. &lt;br&gt;
You can check more on the DOM  &lt;a href="https://medium.com/@ojigbareoyinemi2/dynamics-of-a-basic-counter-javascript-project-5690426a86da" rel="noopener noreferrer"&gt;https://medium.com/@ojigbareoyinemi2/dynamics-of-a-basic-counter-javascript-project-5690426a86da&lt;/a&gt;&lt;br&gt;
NB: Directives can also have lifecycle hooks.&lt;br&gt;
This is a list of lifecycle hooks in Angular:&lt;br&gt;
• &lt;strong&gt;ngOnChange()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngOnInit()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngDocheck()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngAfterContentInit()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngAfterContentChecked()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngAfterViewInit()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngAfterViewChecked()&lt;/strong&gt;&lt;br&gt;
• &lt;strong&gt;ngOnDestroy()&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You need to know these three life cycle methods out of the eight:&lt;br&gt;
• &lt;strong&gt;ngOnChange() **: This occurs whenever anything on a &lt;br&gt;
        component changes this lifecycle method is called or used.&lt;br&gt;
• **ngOnInit()&lt;/strong&gt;: This is the most commonly used lifecycle &lt;br&gt;
        method it is present immediately after you create the &lt;br&gt;
        application on angular CLI.&lt;br&gt;
Whenever we load any component the constructor is called next then the ngOnInit() is called.&lt;br&gt;
Constructor: A constructor is basically a part of a class.&lt;br&gt;
What happens when you create a component using Angular is it initiates a class, then when a class is initiated then the constructor is called after those properties are added then the constructor is called after the properties are added then the view is loaded. Then when this process is completed and the constructor is ready to mount, then the ngOnInit lifecycle is created. This ngOnInit means when the component is ready to be mounted on the HTML of the DOM. That’s why it’s called after the constructor.&lt;br&gt;
• &lt;strong&gt;ngOnDestroy()&lt;/strong&gt;: This helps repeated instances or loops &lt;br&gt;
        in the component lifecycle to be ended easily. When this &lt;br&gt;
        component lifecycle is called or used.&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;Conclusion&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;You may not necessarily use all of this Angular component lifecycle hook  but the three explained will be essential for your daily usage as you build applications using angular framework.&lt;br&gt;
Happy Coding.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>angular</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>How to fetch data from the backend for primeng drop down</title>
      <dc:creator>Alphaexcel</dc:creator>
      <pubDate>Sun, 02 Oct 2022 03:31:05 +0000</pubDate>
      <link>https://dev.to/alphaexcel/how-to-fetch-data-from-the-backend-for-primeng-drop-down-29e3</link>
      <guid>https://dev.to/alphaexcel/how-to-fetch-data-from-the-backend-for-primeng-drop-down-29e3</guid>
      <description>&lt;p&gt;When using components in primeng depending on the framework of your choice which may be angular or react or some other framework. We will be discussing today,  using the primeng component to fetch data from the backend. &lt;br&gt;
What you need to know about using the primeng component is you need to go to their documentation using this url:&lt;a href="http://www.primefaces.org/primeng/dropdown" rel="noopener noreferrer"&gt;www.primefaces.org/primeng/dropdown&lt;/a&gt;, this link takes you straight to the dropdown component. &lt;br&gt;
then you install primeng to your application using the following command.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

npm install primeng --save
npm install primeicons --save


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

&lt;/div&gt;

&lt;p&gt;once they have been installed successfully you would see the following imports &lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

import {AccordionModule} from 'primeng/accordian';
import {MenuItem} from 'primeng/api';


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

&lt;/div&gt;

&lt;p&gt;this would be part of your import array in your module.&lt;br&gt;
Then, you import the primeng dropdown by adding the following command to your import array.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

import {DropdownModule} from 'primeng/dropdown';


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

&lt;/div&gt;

&lt;p&gt;NB: If you have been using various components ranging from material U.I to primeng and several others you notice that any component you  use requires you to import the module containing the component,&lt;br&gt;
for efficiency and to minimize the size of the application during the build and increase the efficiency of the application.You can try to import all the components you would use in your application in one module and the export them so you can import them wherever you want to use them in your application. &lt;br&gt;
The lesser the time to build the faster the application.&lt;br&gt;
You create an empty array and you initialise it, after that you subscribe to a service you have created which will contain a function getting all the data from the backend. &lt;br&gt;
Then you go to your template which will contain a customized code of the primeng snippet of code which is:&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

&amp;lt;p-dropdown [options]="cities" [(ngModel)]="selectedCity" optionLabel="name"&amp;gt;&amp;lt;/p-dropdown&amp;gt;


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

&lt;/div&gt;

&lt;p&gt;where options will contain the name that encompasses all the data you are getting from the backend. In this instance, I will be using mock data to explain exactly how it works in the backend it the same principles.&lt;br&gt;
The code snippet contains mock data gotten from primeng documentation.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

interface City {
    name: string,
    code: string
}

export class DropdownDemo {

    cities: City[];

    selectedCity: City;

    constructor() {
        this.cities = [
            {name: 'New York', code: 'NY'},
            {name: 'Rome', code: 'RM'},
            {name: 'London', code: 'LDN'},
            {name: 'Istanbul', code: 'IST'},
            {name: 'Paris', code: 'PRS'}
        ];
    }

}



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

&lt;/div&gt;

&lt;p&gt;this is a mock data but with an array name of cities which is the name initialised on the top code snippet, now for you to filter through and pick from one of the array options which could be either the name or the code from the options provided. You use the "optionLabel" which can be equal to any of the two elements assigned values which are "name" and "code". if you use the element "name" the drop-down will contain these values: 'New York', 'Rome', 'London', 'Istanbul', and 'Paris'. In that exact order. If you choose to say the optionLabel equals "code" instead you would see the following values: 'NY', 'RM', 'LDN', 'IST', and 'PRS'. In that exact order.&lt;/p&gt;

&lt;h2&gt;
  
  
  IN CONCLUSIONS
&lt;/h2&gt;

&lt;p&gt;You can easily replicate these processes when working with a live backend it works the same way.&lt;br&gt;
That's it, for now, happy coding.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>productivity</category>
      <category>beginners</category>
    </item>
    <item>
      <title>STARTING OUT WITH ANGULAR</title>
      <dc:creator>Alphaexcel</dc:creator>
      <pubDate>Sun, 25 Sep 2022 23:57:32 +0000</pubDate>
      <link>https://dev.to/alphaexcel/starting-out-with-angular-3cia</link>
      <guid>https://dev.to/alphaexcel/starting-out-with-angular-3cia</guid>
      <description>&lt;p&gt; Let's will start with &lt;br&gt;
&lt;strong&gt;What is Angular&lt;/strong&gt;&lt;br&gt;
Angular is a javascript framework based on which is based on typescript which is a subset of Javascript and HTML.&lt;br&gt;
It's also described as a component-based framework that uses typescript and HTML to build client-side  single-page application &lt;em&gt;"SPA"&lt;/em&gt;.&lt;br&gt;
&lt;strong&gt;Why Angular?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Angular is owned by Google which means frequent updates because a lot of software engineers are consistently researching and improving on it. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It's best to build enterprise applications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It allows you to build a particular aspect of the application &lt;br&gt;
being built without having to build the entire application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It supports MVC and SPA which means Mobile Version Control and Single Page Application.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It allows testing and building at same in the same environment.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;STRUCTURE OF ANGULAR **&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The angular structure contains modules and components. These components each contain a typescript that can be recognized by "ts " and an HTML file. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The typescript file contains the logic and functional operations while the template or HTML file contains what is rendered on the browser.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Angular contains a root module where all component interactions start from.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Angular is structured in such a manner that  different components  interact with each other. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;With the new angular 14 updates where standalone components have been added as one of the new features here, the standalone component acts like its own module. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In angular components can be structured so that each component performs a specific function.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;One of the main benefits of the structure in angular is that it allows reusability of various functions in different components in different modules.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;What Are The Main Concepts Of Angular&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Component&lt;/strong&gt;: This s the basic structural unit of how an angular application is based. Components hold specific functions, you may decide to create a component to handle just your Navbar in which you write a function specifically, just for the Navbar and you create another component to handle  a specific page which will  display on your application.&lt;/p&gt;

&lt;p&gt; You can generate this component by simply typing this command in your Vs code terminal. &lt;/p&gt;

&lt;p&gt;ng generate component componentName&lt;/p&gt;

&lt;p&gt;This part that shows componentName represents the  component's name and you may decide to give any name of your choice.&lt;br&gt;
&lt;strong&gt;2. Component Interaction:&lt;/strong&gt; This concept can be explained from the name it is simply  how components communicate. If you want to communicate from a parent component to a child  component where you pass data from parent to child you use the @Input decorator, while if you choose to pass data from child to parent you use the  @Output decorator where you use an EventEmitter to capture the event.&lt;br&gt;
NB: Decorators are design patterns or functions that describe how angular features work. They make modifications to a class or service.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Pipes:&lt;/strong&gt; These are simple functions that you can use in the template expression to accept an input value and return a transformed value.&lt;br&gt;
Pipes are useful because you can use them throughout your application, while you only declare each pipe once.&lt;br&gt;
you can use a pipe to transform currency, date, string amount, etc.&lt;br&gt;
you can see an example below where a date is changed from a raw string to January 26th, 1997&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

{{ 26/01/1997 | date: 'dd/MM/yyyy'}}


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

&lt;/div&gt;

&lt;p&gt;this symbol &lt;em&gt;" |"&lt;/em&gt; represents a pipe anywhere it's used in angular.&lt;br&gt;
&lt;strong&gt;4.Directives:&lt;/strong&gt;These are classes that add additional behavior to your elements in your angular application.&lt;br&gt;
You can use angular built-in directives to manage forms, lists, styles, and what your user sees.&lt;br&gt;
&lt;strong&gt;The types of directives include: &lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Component directives: You can use these directives can be used in the template. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Attributes directives: You can use these to change the appearance or behavior of an element, component, or another directive. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Structural directives: You can use these to change the DOM layout by adding and removing elements.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;TYPES OF BUILT-IN ATTRIBUTE DIRECTIVES&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;NgClass &lt;/li&gt;
&lt;li&gt;NgStyle &lt;/li&gt;
&lt;li&gt;NgModel&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;TYPES OF BUILT-IN STRUCTURAL DIRECTIVES &lt;/strong&gt;&lt;br&gt;
 All the structural directives are written with an * in front of them&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;NgIf which you  as an if statement in angular.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NgFor which you use to loop conditions in angular.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;NgSwitch which allows you to display one or more DOM elements depending on the condition you set.&lt;br&gt;
&lt;strong&gt;5. ROUTING:&lt;/strong&gt; This simply can be described as how you navigate from one part of the page to the other. You can move from the home page to log in and back and forth that's the function of routing. &lt;br&gt;
You start with adding the router-outlet which is a router functionality that you use to insert the exact component that matches the route you are trying to implement.&lt;br&gt;
Two components of routing you need to know are: &lt;br&gt;
 The path that's where you are navigating to which you can always add with a &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

path: '',


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

&lt;/div&gt;

&lt;p&gt;The Component which you can use to specify the component to be rendered or displayed.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

component: ComponentName,


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

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;6. Services:&lt;/strong&gt; Let's use a real-life scenario to explain this if you want to use a data plan you need a data subscription, that data subscription is a service that allows you to access the internet. &lt;br&gt;
So services in angular are no different they allow you to access API endpoints and ensure that the component doesn't become encumbered with too many functionalities. To use your service first you have to create a service using the following command&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

ng generate service ComponentName/ComponentName


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

&lt;/div&gt;

&lt;p&gt;Now you use dependency injection to inject your service into the constructor. Let's say you name your component photos and you created a service for photos, to use that service you would have to do the following.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

ng generate service photos/photos


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

&lt;/div&gt;

&lt;p&gt;that's to create the component, then for you to use dependency injection in the constructor, you inject the service you have created by doing this&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

constructor(private photoservice: Photoservice) {}


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

&lt;/div&gt;

&lt;p&gt;above is called Dependency Injection.&lt;br&gt;
&lt;strong&gt;7. Modules&lt;/strong&gt;: Using a real-life context modules are like containers that contain components, pipes, services, and every other part of part related to the angular application. every component created would be part of the NgModule array that encompasses the imports and various declarations.&lt;br&gt;
a module can be created with the following command.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

ng generate module moduleName


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

&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;NB:&lt;/strong&gt; you can only have one root module that all other modules would be linked to.&lt;br&gt;
&lt;strong&gt;That's it for now happy coding&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>webdev</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
