<?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: Freweini Beyene</title>
    <description>The latest articles on DEV Community by Freweini Beyene (@freta).</description>
    <link>https://dev.to/freta</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%2F1132591%2Fcf4327b5-4924-4d11-829f-f5a1c6b867bc.jpeg</url>
      <title>DEV Community: Freweini Beyene</title>
      <link>https://dev.to/freta</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/freta"/>
    <language>en</language>
    <item>
      <title>Decoding Web Hosting: Understanding the landlords of the digital Realm Landscape</title>
      <dc:creator>Freweini Beyene</dc:creator>
      <pubDate>Wed, 12 Jun 2024 10:38:50 +0000</pubDate>
      <link>https://dev.to/freta/decoding-web-hosting-understanding-the-landlords-of-the-digital-realm-landscape-14f2</link>
      <guid>https://dev.to/freta/decoding-web-hosting-understanding-the-landlords-of-the-digital-realm-landscape-14f2</guid>
      <description>&lt;p&gt;In the vast landscape of the internet, your website is like a cozy apartment or a store that welcomes visitors from all corners of the globe. But just like any physical space, your online presence needs a place to call home. this is where web hosting comes into play, acting as the landlord of the digital realm.web host companies are the digital equivalent of landlords. web host companies lease or rent space to websites so they can have their presence online.&lt;br&gt;
Imagine your web hosting provider as the landlord of an apartment in the city's heart. much like how a landlord provides the physical infrastructure for an apartment building, your hosting provider furnishes the digital infrastructure needed to keep your website up and running.&lt;br&gt;
The term landlord refers to a property owner who rents or leases that property to another party in exchange for rent payments. Landlords can be individuals, businesses, or other entities. Landlords typically provide the necessary maintenance or repairs during the rental period, while the tenant or leaseholder is responsible for the cleanliness and general upkeep of the property.&lt;br&gt;
Just as a landlord ensures that the building's utilities are in working order, your hosting provider ensures that your website has access to essential resources like storage space, bandwidth, and server capabilities. This digital infrastructure is the foundation upon which your website stands, enabling it to serve visitors reliably and efficiently.&lt;br&gt;
When renting a shop or a place the first thing you pay attention to is &lt;strong&gt;Location, location location&lt;/strong&gt; same goes, for the location of your hosting server can affect the speed and performance of your website. much like how a prime location in the city center attracts more foot traffic, hosting your website on servers strategically located near your target audience can result in faster loading times and improved user experience.&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%2Fw2upoukyot3w3l1j0800.jpg" 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%2Fw2upoukyot3w3l1j0800.jpg" alt="Image description" width="275" height="183"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Maintenance and security&lt;/strong&gt;: like a diligent landlord who ensures the safety and security of their tenants, your hosting provider implements security measures such as firewalls, encryption, and regular software updates to protect your website from cyber threats and unauthorized access.&lt;br&gt;
&lt;strong&gt;Scalability and flexibility&lt;/strong&gt;: as your business or family grows you might want to expand your apartment, The same goes as your website grows and evolves, you may find yourself in need of additional space and resources. a reliable hosting provider offers scalability options to upgrade your hosting plan seamlessly to accommodate increased traffic and demand.&lt;br&gt;
&lt;strong&gt;Support and Accessibility&lt;/strong&gt;: Just as a responsive landlord is available to address tenant concerns and maintenance requests, a reputable hosting provider offers reliable customer support to assist you with any technical issues or inquiries. Whether you need help setting up your website, troubleshooting errors, or optimizing performance, a good hosting provider is there to lend a helping hand.&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%2Ffdo37bfhrxufet5tss2a.jpg" 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%2Ffdo37bfhrxufet5tss2a.jpg" alt="Image description" width="327" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Informed of changes and improvements&lt;/strong&gt;: The landlord communicates with you about upcoming events, and improvements made. Your hosting will also inform any Network issues and outages are announced and explained &lt;br&gt;
 via email, off-site status page, twitter, etc… to communicate when major problems occur. It should be easy to find this information, and your host should be timely in providing updates for long-running issues. A good host will be proactive about communicating updates, changes, new offerings, and other important events to their clients. This should happen regularly.&lt;/p&gt;

&lt;p&gt;After all the due diligence it's important to check the lease terms. what's the refund policy, payment options? In web hosting, you can normally pay monthly, or on a yearly basis. You don’t want to choose the cheapest host right off the bat, as other issues may crop up that can make this “cheap” host more costly in the long run.I hope this has helped some of you, thank you for reading.&lt;/p&gt;

</description>
      <category>web</category>
      <category>hosting</category>
      <category>website</category>
      <category>server</category>
    </item>
    <item>
      <title>The usefulness of review websites in the customer buying journey</title>
      <dc:creator>Freweini Beyene</dc:creator>
      <pubDate>Wed, 20 Dec 2023 14:50:51 +0000</pubDate>
      <link>https://dev.to/freta/the-usefulness-of-review-websites-in-the-customer-buying-journey-3kaf</link>
      <guid>https://dev.to/freta/the-usefulness-of-review-websites-in-the-customer-buying-journey-3kaf</guid>
      <description>&lt;p&gt;Adding Business listings across multiple review sites Listing across multiple websites brings significant advantages for both local businesses.&lt;br&gt;
Competitive edge: Maintaining precise information across multiple listings offers a simple method to enhance discoverability. Additionally, it empowers them to connect with customers seeking highly specific or detailed insights, surpassing the usual scope of Google reviews.&lt;/p&gt;

&lt;p&gt;Enhanced online reputation: A consistent stream of positive reviews across various platforms bolsters a business's credibility and reliability in the eyes of potential customers. This dynamic influence directly shapes purchasing choices, driving heightened customer engagement. Moreover, local businesses actively engaged on review sites gain the power to safeguard their reputation, effectively addressing negative feedback instead of letting it fester in the public realm. highlighting the usefulness of review websites in the customer buying journey.&lt;br&gt;
Unlocking the Power of Reviews: Navigating the Customer Buying Journey&lt;br&gt;
In the dynamic landscape of today's market, the customer buying journey has evolved, and decision-making has become more nuanced than ever. One crucial ally that consumers often turn to? Review websites.&lt;br&gt;
Online review websites often have high domain authority and appear in search engine results. When businesses have a strong presence on these platforms and receive positive reviews, it can improve their search engine rankings. This in return increases visibility and can lead to more organic traffic and potential customers discovering or validating a local business.&lt;br&gt;
Real Voices, Real Experiences: &lt;br&gt;
Reviews offer genuine insights into real customer experiences. From product performance to customer service, these testimonials provide a firsthand look at what others have encountered along their purchasing journey. When potential customers see positive reviews from real people, it creates a sense of trust and credibility in the business. They are more likely to trust the opinions of other customers and feel confident in making a purchase.&lt;br&gt;
Informed Decision-Making: &lt;br&gt;
Empowerment is key. Reviews empower potential buyers with the information they need to make informed decisions. It's like having a collective wisdom at your fingertips, guiding you toward the right choices.&lt;br&gt;
Building Trust: &lt;br&gt;
Trust is the cornerstone of any successful customer-business relationship. Reviews contribute significantly to building and fostering that trust. When individuals see positive feedback from their peers, it instills confidence and credibility.&lt;br&gt;
Uncovering Hidden Gems: &lt;br&gt;
Sometimes, the most valuable insights come from the details. Review websites allow customers to uncover hidden gems, unique features, or potential drawbacks that might not be immediately apparent from a product description alone.&lt;br&gt;
Community Wisdom:&lt;br&gt;
We're all in this together! Review websites create a sense of community where customers share their triumphs, challenges, and tips. It's a collaborative space where the collective wisdom of the community benefits everyone.&lt;/p&gt;

&lt;p&gt;In a world where the customer is truly at the center, embracing the wealth of information available on review websites is a strategic move. Let's continue to leverage these insights to enhance the customer experience and shape the future of smarter, more informed buying journeys.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>What is an ORM</title>
      <dc:creator>Freweini Beyene</dc:creator>
      <pubDate>Mon, 23 Oct 2023 15:19:35 +0000</pubDate>
      <link>https://dev.to/freta/what-is-an-orm-1hjp</link>
      <guid>https://dev.to/freta/what-is-an-orm-1hjp</guid>
      <description>&lt;p&gt;An ORM (Object Relational Mapper), is a piece of software designed to translate between the data representations used by databases and those used in object-oriented programming. &lt;br&gt;
ORM is the layer that connects object-oriented programming (OOP) to relational databases. To perform different operations like creating, reading, updating, and deleting data from a database we use SQL for performing these operations in relational databases. ORM as a tool can help simplify the interaction between the relational databases and different OOP languages that you might be using.&lt;/p&gt;

&lt;p&gt;The idea of ORM is based on abstraction. it creates a logical model of the program with a high level of abstraction, i.e., without specifying the underlying code details. The ORM mechanism makes it possible to address, access and manipulate objects without having to consider how those objects relate to their data sources.&lt;/p&gt;

&lt;p&gt;Developers can also perform various data-creating, reading, updating, and deleting (CRUD) operations in relational databases without using SQL. This capability is particularly useful for developers who either don't know SQL or don't want to waste time writing SQL code. It's recommended for developers to know SQL queries since behind the hood the operation remains the same old SQL queries are being executed.&lt;/p&gt;

&lt;p&gt;to see how ORM is simplifying the SQL let's take as an example &lt;/p&gt;

&lt;p&gt;SQL:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;SELECT  name, email, phone_no FROM users WHERE id= 12&lt;/code&gt;&lt;br&gt;
this query will return the name, email, phone_no from a table called users where users id of 12&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;the same query can be written in ORM tool as&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;users.GetById(12)&lt;br&gt;
So the code above does the same as the SQL query.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Depending on the languages you are using you can find different compatible ORM tools: for example&lt;/p&gt;

&lt;p&gt;&lt;a href="https://typeorm.io/"&gt;TypeORM&lt;/a&gt;: is an ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, and WebSQL databases.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sequelize.org/"&gt;Sequelize&lt;/a&gt;: is a modern TypeScript and Node.js ORM for Oracle, Postgres, MySQL, MariaDB, SQLite and SQL Server, and more.&lt;/p&gt;

&lt;p&gt;Depending on the language you are planning to use you can find an ORM that will work for you.&lt;/p&gt;

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

</description>
      <category>typeorm</category>
    </item>
    <item>
      <title>Introduction to Docker</title>
      <dc:creator>Freweini Beyene</dc:creator>
      <pubDate>Thu, 12 Oct 2023 09:25:54 +0000</pubDate>
      <link>https://dev.to/freta/introduction-to-docker-4mdb</link>
      <guid>https://dev.to/freta/introduction-to-docker-4mdb</guid>
      <description>&lt;p&gt;Docker allows users to package an app with all of its dependencies into a standardized unit for software development. Docker is a tool to easily deploy applications in a sandbox(called containers) to run on the host operating system i.e. Linux. The sandbox for kids is a box filled with sand and toys they can play with, it’s placed in the middle of the grasses in the backyard where they can play.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is a Containers:&lt;/strong&gt; &lt;br&gt;
A container is a sandboxed process running on a host machine that is isolated from all other processes running on that host machine. container is an “instance” of an image. A running container uses an isolated filesystem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is an Images:&lt;/strong&gt; &lt;br&gt;
The isolated filesystem is provided by an image, image must contain everything like dependencies, configurations, scripts, binaries etc.&lt;/p&gt;

&lt;p&gt;Difference between images and containers&lt;br&gt;
Docker images and containers are closely related terms and its common to confuse the two for beginners. Docker images are built by executing commands in the Docker File and what it primarily does is that it captures the run-time environment parameters so that if it runs again in some other machine, it runs exactly the same as the current machine. On the other hand, a container is an “instance” of an image.In simple words, docker image be a blueprint of a building, and a container would then be the actual building!&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Writing a Docker file&lt;/strong&gt;&lt;br&gt;
Docker file is used to specify instructions to create a Docker container. It is essentially a list of commands in a text file( Docker file has no extension).&lt;br&gt;
You open a dockerfile using the touch command.&lt;br&gt;
    $ touch dockerfile&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;A dockerfile is typically constructed from a base image such as Ubuntu(OS), SQL to allow a primary setting of the environment. This is done as follows:&lt;br&gt;
 Syntax: FROM &lt;br&gt;
 Example: FROM ubuntu:latest&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;It is then essential to establish the working directory. You either create one using mkdir command or setting an existing directory as working directory by using&lt;br&gt;
WORKDIR /&lt;/p&gt;
&lt;h1&gt;
  
  
  And then copy the contents in the container
&lt;/h1&gt;

&lt;p&gt;COPY . /&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;You can then expose ports or run preferred commands. Some examples are below →&lt;/p&gt;
&lt;h1&gt;
  
  
  Exposing port 8080
&lt;/h1&gt;

&lt;p&gt;EXPOSE 8080&lt;/p&gt;
&lt;h1&gt;
  
  
  Installing dependencies
&lt;/h1&gt;

&lt;p&gt;RUN apt-get install -y python&lt;/p&gt;
&lt;h1&gt;
  
  
  Running Python
&lt;/h1&gt;

&lt;p&gt;CMD ["python", "main.py"]&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Note: The difference between RUN and CMD is that the RUN command is executed while building the image and CMD command is executed when we start the container.&lt;/p&gt;

&lt;p&gt;In the end, it will look like this:&lt;br&gt;
     FROM ubuntu:latest&lt;br&gt;
     FROM node:18&lt;br&gt;
     # Create app directory&lt;br&gt;
     WORKDIR  /app&lt;br&gt;
     # Install app dependencies&lt;br&gt;
     COPY package*.json ./package.json&lt;br&gt;
     COPY package-lock.json ./package-lock.json&lt;br&gt;
     RUN npm install&lt;br&gt;
     # Bundle app source&lt;br&gt;
     COPY . /app&lt;br&gt;
     EXPOSE 8080&lt;br&gt;
     CMD [ "node", "index.js" ]&lt;/p&gt;

&lt;p&gt;Once the Docker file is created, you can just build the image using the command&lt;br&gt;
   $ docker build&lt;br&gt;
Docker will find the dockerfile in the current directory and build a docker image based on it.&lt;/p&gt;

&lt;p&gt;To see the list of docker images available locally&lt;br&gt;
$ docker images&lt;br&gt;
REPOSITORY     TAG      IMAGE ID        CREATED             SIZE&lt;br&gt;
hello-world   latest    bf756fb1ae65   6 months ago        13.3kB&lt;/p&gt;

&lt;p&gt;Similarly, you can get a list of containers in a tabular format using the command&lt;br&gt;
$ docker ps&lt;br&gt;
CONTAINER ID   IMAGE          COMMAND                 NAMES&lt;br&gt;
e90b8831a4b8   nginx        "/bin/bash -c 'mkdir'"   my_nginx&lt;br&gt;
00c6131c5e30   telegraf:1.5   "/entrypoint.sh"       my_telegraf&lt;/p&gt;

&lt;p&gt;Create a container from a docker image and run it&lt;br&gt;
$ docker run [ or ]&lt;/p&gt;

&lt;p&gt;You can start or stop a container using the start and stop command&lt;br&gt;
$ docker start &lt;br&gt;
$ docker stop &lt;/p&gt;

&lt;p&gt;You can pull or push an image to Docker Hub. Docker Hub is the world's largest library and community for container images.&lt;br&gt;
$ docker push &lt;br&gt;
$ docker pull &lt;/p&gt;

&lt;p&gt;You can also remove images and containers using rm or rmi command&lt;br&gt;
$ docker rm &lt;br&gt;
$ docker rmi &lt;/p&gt;

&lt;p&gt;Hope that has helped you, thanks for reading.&lt;/p&gt;

</description>
      <category>docker</category>
      <category>containers</category>
      <category>dockerhub</category>
    </item>
  </channel>
</rss>
