<?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: YusufAdel</title>
    <description>The latest articles on DEV Community by YusufAdel (@yusufadel).</description>
    <link>https://dev.to/yusufadel</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%2F537621%2F9ed24e6b-a0cf-4cc4-b96c-dbaa952b5cc9.jpg</url>
      <title>DEV Community: YusufAdel</title>
      <link>https://dev.to/yusufadel</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/yusufadel"/>
    <language>en</language>
    <item>
      <title>15 web developer interview questions...</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Sun, 05 Sep 2021 17:33:22 +0000</pubDate>
      <link>https://dev.to/yusufadel/15-web-developer-interview-questions-5d5d</link>
      <guid>https://dev.to/yusufadel/15-web-developer-interview-questions-5d5d</guid>
      <description>&lt;h1&gt;
  
  
  Advanced Interview Questions
&lt;/h1&gt;

&lt;p&gt;The following will cover the senior web developer interview questions but I suggest you go through them even if you are a fresher or an intermediate web developer candidate&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.pexels.com%2Fphotos%2F5699475%2Fpexels-photo-5699475.jpeg%3Fcs%3Dsrgb%26dl%3Dpexels-alex-green-5699475.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.pexels.com%2Fphotos%2F5699475%2Fpexels-photo-5699475.jpeg%3Fcs%3Dsrgb%26dl%3Dpexels-alex-green-5699475.jpg" alt="Advanced Interview Questions"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  0- What are the types of popup boxes present in JavaScript?
&lt;/h2&gt;

&lt;p&gt;There are &lt;strong&gt;three&lt;/strong&gt; types of dialog boxes, which are used in JavaScript:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;type&lt;/th&gt;
&lt;th&gt;usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;alert&lt;/td&gt;
&lt;td&gt;Presents users with a message and an &lt;strong&gt;OK&lt;/strong&gt; button&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Confirm&lt;/td&gt;
&lt;td&gt;Gives the users a window with &lt;strong&gt;OK&lt;/strong&gt; and &lt;strong&gt;Cancel&lt;/strong&gt; buttons&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Prompt&lt;/td&gt;
&lt;td&gt;Shows the user input, alongside &lt;strong&gt;OK&lt;/strong&gt; and &lt;strong&gt;Cancel&lt;/strong&gt; buttons&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h1&gt;
  
  
  Advanced Interview Questions
&lt;/h1&gt;

&lt;p&gt;The following Blog will cover the senior web developer interview questions but I suggest you go through them even if you are a fresher or an intermediate web developer candidate&lt;/p&gt;

&lt;p&gt;What are the types of popup boxes present in &lt;strong&gt;JavaScript?&lt;/strong&gt;&lt;/p&gt;



&lt;h3&gt;
  
  
  1- There are &lt;strong&gt;three&lt;/strong&gt; types of dialog boxes, which are used in JavaScript
&lt;/h3&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;window.onload&amp;gt;&lt;/code&gt; event is not called until a page is completely loaded with the entire styling from CSS and images. The event does add a bit of delay when rendering a web page.&lt;/p&gt;

&lt;p&gt;With the &lt;code&gt;&amp;lt;onDocumentReady&amp;gt;&lt;/code&gt; event, it will wait only till the DOM is initialized and will begin the event action. This ensures to reduce any delays in actions.&lt;/p&gt;

&lt;h2&gt;
  
  
  2- How is type conversion handled in JavaScript?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;&lt;p&gt;JavaScript supports automatic type conversion. Since it is weakly typed, you can pass a function as an argument into another function easily.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;This ensures that there are no errors or data type-associated warnings as values get converted to the required data type automatically.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  3- What is the meaning of the scope of a variable in JavaScript?
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Scope&lt;/strong&gt; refers to the accessibility of functions and underlying variables in the running environment. There are two scopes supported in JavaScript:&lt;/p&gt;

&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Local scope: Here, values and functions declared inside the same function function can only be accessed within that function and not outside it. Consider the following example:
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Code present here cannot use localVariable&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;localVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;This is a local variable&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="c1"&gt;// Code present here can use localVariable&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;Global scope: If a variable is declared as global, it can be accessed from anywhere in the application. Consider the following example:
&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;globalVariable&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;This is a Global variable&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="c1"&gt;// Code present here can use globalVariable&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;myFunction&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="c1"&gt;// Code present here can also use globalVariable&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  4- How are comments used in JavaScript?
&lt;/h2&gt;

&lt;p&gt;JavaScript supports two types of comment insertion in the code. Single-line comments and multi-line comments.&lt;/p&gt;

&lt;p&gt;Single-line comment: “//” is used for single-line comment insertion&lt;br&gt;
Example:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;//This is a single-line comment&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Multi-line comment: `/**/” is used to add multi-line comments&lt;br&gt;
Example:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;&lt;code&gt;js&lt;br&gt;
/* This&lt;br&gt;
is a&lt;br&gt;
multi-line&lt;br&gt;
comment*/&lt;br&gt;
&lt;/code&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Coming to the next set of interview questions for web developers, here is a common question for JavaScript.&lt;/p&gt;

&lt;h2&gt;
  
  
  5- What are undefined and undeclared variables in JavaScript?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Variables that have been declared already but not initialized are known as undefined variables.&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;On the other hand, if a variable is being used in a program without being declared, then it is considered as an undeclared variable.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Consider the following example:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&lt;/code&gt;&lt;code&gt;js&lt;br&gt;
var undefVar;&lt;br&gt;
alert(undefVar); // undefined variable&lt;br&gt;
alert(notDeclared); // accessing an undeclared variable&lt;br&gt;
&lt;/code&gt;&lt;code&gt;&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  6- What is the method used to submit forms in JavaScript?
&lt;/h2&gt;

&lt;p&gt;Forms can be submitted easily in JavaScript by calling the following method:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;document.forms[0].submit();&lt;/code&gt;&lt;br&gt;
Here, &lt;strong&gt;Zero 0&lt;/strong&gt; denotes the index of the form.&lt;/p&gt;

&lt;h2&gt;
  
  
  7- Why is keyword used a lot in JavaScript?
&lt;/h2&gt;

&lt;p&gt;The &lt;code&gt;&amp;lt;this&amp;gt;&lt;/code&gt; keyword is used to access the current object present in a program. This object resides inside a method, and the keyword is used for referencing the corresponding variable or object.&lt;/p&gt;

&lt;h2&gt;
  
  
  8- What is the use of the ‘defer’ attribute in JavaScript?
&lt;/h2&gt;

&lt;p&gt;The  attribute is used as a boolean type attribute. It is used to delay the execution of the JavaScript code on a web page until the parser completely loads and initializes the page.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;&amp;lt;script src="/example.js" defer&amp;gt;&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  9- How can you prioritize SEO, maintainability, performance, and security in a web application?
&lt;/h2&gt;

&lt;p&gt;This is a &lt;strong&gt;commonly asked&lt;/strong&gt; question in a Web Development interview. Here, the interviewer is trying to assess your understanding of the working environment in the firm you’ve applied for.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If it is a large firm&lt;/strong&gt;, then security will get higher priority over SEO. Whereas, if it is a publication firm, &lt;strong&gt;SEO gets the preference&lt;/strong&gt;. A little groundwork about the company should help you answer this question.&lt;/p&gt;

&lt;p&gt;The next web developer interview question we will look at is regarding jQuery. Check it out.&lt;/p&gt;

&lt;h2&gt;
  
  
  10- What is the result if a jQuery Event Handler returns false?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;If the jQuery Event Handler returns a boolean false value, it simply means that the event will not execute further and will halt the execution for the particular action it is associated with.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  11- What is the use of the each() function in jQuery?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;The each() function in jQuery is used to iterate over a set of elements. A function can be passed to the each() method. This will result in the execution of each of the events for which the object has been called.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  12- What is pair programming?
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Pair programming&lt;/strong&gt; is a scenario where you will be working closely with a colleague on the project, and this is done to help solve the problems at hand. If the development scenario is fast-paced, Agile development might not work efficiently. The interviewer asks this question to see if you can work with other people easily and effectively.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  12- What is the use of the $() function in jQuery?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;The $() function is used as a wrapper to wrap objects into their jQuery counterparts. This is done to give users the ability to call any method that is defined for the jQuery object.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Selectors can also be passed to the $() function, resulting in the output of a jQuery object that contains matched DOM elements.&lt;/p&gt;

&lt;h2&gt;
  
  
  13- What are the advantages of using a content delivery network (CDN) in jQuery?
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;CDNs are widely used in jQuery as they offer an ample number of advantages for users.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;CDNs cause a significant reduction in the load&lt;/strong&gt; for the server.&lt;br&gt;
They provide large amounts of savings in the bandwidth.&lt;br&gt;
jQuery frameworks load faster due to optimizations.&lt;br&gt;
CDNs have a caching ability that adds to quicker load times.&lt;/p&gt;

&lt;h2&gt;
  
  
  14- List out the advantage of HTTP/2 as compared with HTTP 1.1?
&lt;/h2&gt;

&lt;p&gt;The advantage of HTTP/2 compared to HTTP/1.1 is&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTTP headers data compression&lt;/li&gt;
&lt;li&gt;Server push technologies&lt;/li&gt;
&lt;li&gt;Over a single TCP connection parallel loading of page elements&lt;/li&gt;
&lt;li&gt;Prioritization of request&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  15- What are the types of CDNs supported in jQuery?
&lt;/h2&gt;

&lt;p&gt;There are two widely used CDNs with jQuery:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Microsoft&lt;/strong&gt;: Used to load from jQuery AJAX CDN&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Google&lt;/strong&gt;: Used to load jQuery from the Google libraries API&lt;/p&gt;

&lt;p&gt;If you are looking forward to becoming proficient in &lt;strong&gt;Web Development&lt;/strong&gt;, make sure to check out Intellipaat’s latest offerings for &lt;strong&gt;Web Development&lt;/strong&gt; Online Course. With these programs, you can become an expert in Web Development and earn a course certificate as well.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>programming</category>
      <category>javascript</category>
      <category>html</category>
    </item>
    <item>
      <title> Object Comparisons: “is” vs “==”</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Fri, 03 Sep 2021 14:55:41 +0000</pubDate>
      <link>https://dev.to/yusufadel/object-comparisons-is-vs-4oba</link>
      <guid>https://dev.to/yusufadel/object-comparisons-is-vs-4oba</guid>
      <description>&lt;p&gt;The &lt;strong&gt;==&lt;/strong&gt; operator compares by checking for equality: if these Python objects we compared them with the == operator, we’d get &lt;strong&gt;both objects are equal&lt;/strong&gt; as an answer.&lt;/p&gt;

&lt;p&gt;The &lt;strong&gt;is&lt;/strong&gt; operator, however, compares identities: if we compared our&lt;br&gt;
objects with the is operator, we’d get &lt;strong&gt;these are two different objects&lt;/strong&gt; as an answer.&lt;/p&gt;

&lt;p&gt;let’s take a look at some real Python code.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Let’s inspect these two variables. We can see that they point to&lt;br&gt;
identical-looking lists:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Because the two list objects look the same, we’ll get the expected result&lt;br&gt;
when we compare them for equality by using the == operator:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;
&lt;span class="bp"&gt;True&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;However, that doesn’t tell us whether a and b are actually pointing to&lt;br&gt;
the same object. Of course, we know they are because we assigned&lt;br&gt;
them earlier, but suppose we didn’t know—how might we find out?&lt;/p&gt;

&lt;p&gt;The answer is to compare both variables with the is operator. This&lt;br&gt;
confirms that both variables are in fact pointing to one list object:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="ow"&gt;is&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;
&lt;span class="bp"&gt;True&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Let’s see what happens when we create an identical copy of our list&lt;br&gt;
object. We can do that by calling list() on the existing list to create&lt;br&gt;
a copy we’ll name c:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Again you’ll see that the new list we just created looks identical to the&lt;br&gt;
list object pointed to by a and b:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now this is where it gets interesting. Let’s compare our list copy c with&lt;br&gt;
the initial list a using the == operator. What answer do you expect to&lt;br&gt;
see?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt;
&lt;span class="bp"&gt;True&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Okay, I hope this was what you expected. What this result tells us&lt;br&gt;
is that c and a have the same contents. They’re considered equal by&lt;br&gt;
Python. But are they actually pointing to the same object? Let’s find&lt;br&gt;
out with the is operator:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="ow"&gt;is&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt;
&lt;span class="bp"&gt;False&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is where we get a different result. Python is telling us&lt;br&gt;
that c and a are pointing to two different objects, even though their&lt;br&gt;
contents might be the same.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion:
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;An "is" expression evaluates to True if two variables point to the same (identical) object.&lt;/li&gt;
&lt;li&gt;An "==" expression evaluates to True if the objects referred to by
the variables are equal (have the same contents).&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>python</category>
      <category>programming</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Why you should use  Cookiecutter in you next Django Project.</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Tue, 31 Aug 2021 18:03:16 +0000</pubDate>
      <link>https://dev.to/yusufadel/django-cookiecutter-173n</link>
      <guid>https://dev.to/yusufadel/django-cookiecutter-173n</guid>
      <description>&lt;h2&gt;
  
  
  What is Cookiecutter?
&lt;/h2&gt;

&lt;p&gt;A command-line utility that creates projects from cookiecutters (project templates), e.g. creating a Python package project from a Python package project template.&lt;/p&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Cross-platform: Windows, Mac, and Linux are officially supported.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You don’t have to know/write Python code to use Cookiecutter&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Works with Python 2.7, 3.5, 3.6, 3.7, 3.8 ,PyPy and PyPy3.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Project templates can be in any programming language or markup format:&lt;br&gt;
Python, JavaScript, Ruby, CoffeeScript, RST, Markdown, CSS, HTML, you name it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;You can use multiple languages in the same project template.&lt;br&gt;
Simple command line usage:&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Install cookiecutter
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;pip &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--user&lt;/span&gt; cookiecutter
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;or you can use any package manager&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Usage
&lt;/h2&gt;

&lt;p&gt;First, clone a Cookiecutter project template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;git clone git@github.com:audreyr/cookiecutter-pypackage.git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Make your changes
&lt;/h2&gt;

&lt;p&gt;Modify the variables defined in cookiecutter.json.&lt;/p&gt;

&lt;p&gt;Open up the skeleton project. If you need to change it around a bit, do so.&lt;/p&gt;

&lt;p&gt;You probably also want to create a repo, name it differently, and push it as your own new Cookiecutter project template, for handy future use.&lt;/p&gt;

&lt;h2&gt;
  
  
  Generate your project
&lt;/h2&gt;

&lt;p&gt;Then generate your project from the project template:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;cookiecutter cookiecutter-pypackage/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and thats is it, your are ready to go.&lt;/p&gt;

&lt;h2&gt;
  
  
  reference
&lt;/h2&gt;

&lt;p&gt;Documentation: &lt;a href="https://cookiecutter.readthedocs.io"&gt;https://cookiecutter.readthedocs.io&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/cookiecutter/cookiecutter"&gt;https://github.com/cookiecutter/cookiecutter&lt;/a&gt;&lt;br&gt;
PyPI: &lt;a href="https://pypi.python.org/pypi/cookiecutter"&gt;https://pypi.python.org/pypi/cookiecutter&lt;/a&gt;&lt;/p&gt;

</description>
      <category>django</category>
      <category>productivity</category>
      <category>programming</category>
      <category>webdev</category>
    </item>
    <item>
      <title>helpful language feature gets less attention
than it deserves</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Sun, 15 Aug 2021 14:47:28 +0000</pubDate>
      <link>https://dev.to/yusufadel/helpful-language-feature-gets-less-attention-than-it-deserves-3hb3</link>
      <guid>https://dev.to/yusufadel/helpful-language-feature-gets-less-attention-than-it-deserves-3hb3</guid>
      <description>&lt;p&gt;I’m going to give you an introduction to using assertions in Python.&lt;/p&gt;

&lt;p&gt;At this point, you might be wondering “What are assertions and what&lt;br&gt;
are they good for?” Let’s get you some answers for that.&lt;/p&gt;

&lt;p&gt;At its core, Python’s assert statement is a debugging aid that tests a&lt;br&gt;
condition. If the assert condition is true, nothing happens, and your&lt;br&gt;
program continues to execute as normal. But if the condition evaluates to false, an &lt;strong&gt;AssertionError&lt;/strong&gt; exception is raised with an optional&lt;br&gt;
error message.&lt;/p&gt;
&lt;h2&gt;
  
  
  Assert in Python — An Example
&lt;/h2&gt;

&lt;p&gt;Here is a simple example so you can see where assertions might come&lt;br&gt;
in handy. I tried to give this some semblance of a real-world problem&lt;br&gt;
you might actually encounter in one of your programs.&lt;/p&gt;

&lt;p&gt;Suppose you were building an online store with Python. You’re working to add a discount coupon functionality to the system, and eventually you write the following apply_discount function:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;apply_discount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;discount&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="n"&gt;price&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;int&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'price'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mf"&gt;1.0&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;discount&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
    &lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="n"&gt;price&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'price'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="n"&gt;price&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Notice the assert statement in there? It will guarantee that, no mat-&lt;br&gt;
ter what, discounted prices calculated by this function cannot be lower&lt;br&gt;
than $0 and they cannot be higher than the original price of the prod-&lt;br&gt;
uct.&lt;br&gt;
Let’s make sure this actually works as intended if we call this function&lt;br&gt;
to apply a valid discount. In this example, products for our store will&lt;br&gt;
be represented as plain dictionaries. This is probably not what you’d&lt;br&gt;
do for a real application, but it’ll work nicely for demonstrating asser-&lt;br&gt;
tions. Let’s create an example product—a pair of nice shoes at a price&lt;br&gt;
of $149.00:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;shoes&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;'name'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s"&gt;'Fancy Shoes'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s"&gt;'price'&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="mi"&gt;14900&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;By the way, did you notice how I avoided currency rounding issues&lt;br&gt;
by using an integer to represent the price amount in cents? That’s&lt;br&gt;
generally a good idea… But I digress. Now, if we apply a 25% discount&lt;br&gt;
to these shoes, we would expect to arrive at a sale price of $111.75:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;apply_discount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;shoes&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.25&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Alright, this worked nicely. Now, let’s try to apply some invalid dis-&lt;br&gt;
counts. For example, a 200% “discount” that would lead to us giving&lt;br&gt;
money to the customer:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;apply_discount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;shoes&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;2.0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;Traceback&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;most&lt;/span&gt; &lt;span class="n"&gt;recent&lt;/span&gt; &lt;span class="n"&gt;call&lt;/span&gt; &lt;span class="n"&gt;last&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
&lt;span class="n"&gt;File&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="n"&gt;module&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="n"&gt;apply_discount&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;prod&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;2.0&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;span class="n"&gt;File&lt;/span&gt; &lt;span class="s"&gt;"&amp;lt;input&amp;gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;line&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="ow"&gt;in&lt;/span&gt; &lt;span class="n"&gt;apply_discount&lt;/span&gt;
&lt;span class="k"&gt;assert&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="n"&gt;price&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;=&lt;/span&gt; &lt;span class="n"&gt;product&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s"&gt;'price'&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;span class="nb"&gt;AssertionError&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As you can see, when we try to apply this invalid discount, our&lt;br&gt;
program halts with an AssertionError . This happens because a&lt;br&gt;
discount of 200% violated the assertion condition we placed in the&lt;br&gt;
apply_discount function&lt;/p&gt;

&lt;p&gt;You can also see how the exception stacktrace points out the exact line&lt;br&gt;
of code containing the failed assertion. If you (or another developer&lt;br&gt;
on your team) ever encounter one of these errors while testing the&lt;br&gt;
online store, it will be easy to find out what happened just by looking&lt;br&gt;
at the exception traceback.&lt;/p&gt;

&lt;p&gt;This speeds up debugging efforts considerably, and it will make your&lt;br&gt;
programs more maintainable in the long-run. And that, my friend, is&lt;br&gt;
the power of assertions.&lt;/p&gt;

&lt;p&gt;REFERENCE: &lt;a href="https://www.amazon.com/Python-Tricks-Buffet-Awesome-Features/dp/1775093301"&gt;Python Tricks A Buffet of Awesome Python Features by Dan Bader&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>productivity</category>
      <category>programming</category>
    </item>
    <item>
      <title>Battery Included Philosophy, python</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Mon, 05 Jul 2021 17:45:10 +0000</pubDate>
      <link>https://dev.to/yusufadel/battery-included-philosophy-python-5cee</link>
      <guid>https://dev.to/yusufadel/battery-included-philosophy-python-5cee</guid>
      <description>&lt;p&gt;Python has a “batteries included” philosophy. This is best seen through the sophisticated and robust capabilities of its larger packages. &lt;/p&gt;

&lt;p&gt;Feel free to share with us your experience in handling jobs with one or Built-in modules that will help in day-to-day work.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>python</category>
      <category>productivity</category>
    </item>
    <item>
      <title>tools that help you produce web code more efficiently.P1</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Sat, 08 May 2021 22:54:20 +0000</pubDate>
      <link>https://dev.to/yusufadel/tools-that-help-you-produce-web-code-more-efficiently-p1-529p</link>
      <guid>https://dev.to/yusufadel/tools-that-help-you-produce-web-code-more-efficiently-p1-529p</guid>
      <description>&lt;p&gt;Since the modern developer tooling ecosystem is so large, it's helpful to have a broad understanding of the major issues that the tools address. If you type &lt;strong&gt;"front-end developer tools"&lt;/strong&gt; into your favorite search engine, you'll get a wide range of results, including everything from text editors to browsers to note-taking pens.&lt;/p&gt;

&lt;p&gt;From a birds's view Client-side methods can be classified into three different types of problems to solve from a high-level perspective:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Safety net — Tools that are useful during your code development.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Transformation — Tools that transform code in some way, e.g. turning an intermediate language into JavaScript that a browser can understand.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Post-development — Tools that are useful after you have written your code, such as testing and deployment tools.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;in this article we will mention the first type.&lt;/p&gt;

&lt;h1&gt;
  
  
  Safety net.
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Linters
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Linters&lt;/strong&gt; are tools that go through the code and inform you if there are any errors, what kind of errors they are, and the code lines they are on. Linters may also be programmed to not only report errors, but also any breaches of a style guide that your team is following (for example, code that uses the incorrect number of spaces for indentation).&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://eslint.org/"&gt;eslint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://csslint.net"&gt;csslint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/SublimeLinter/SublimeLinter-csslint"&gt;SublimeLinter&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Source code control
&lt;/h2&gt;

&lt;p&gt;Source code management, also known as version control systems (VCS), is critical for archiving and collaborative work. In a standard VCS, you keep a local copy of the code you're working on. You then "push" the updates to a "master" version of the code saved on a remote server. So that a team of developers does not constantly overwrite each other's work, there is normally a means of monitoring and scheduling what modifications are made to the "master" copy of the code, and when.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://git-scm.com"&gt;Git&lt;/a&gt;  most people use these days&lt;/p&gt;

&lt;p&gt;It's a Command Line tool but you can use it  via friendly user interfaces&lt;br&gt;
you can use a hosted source control website such as &lt;a href="https://github.com/"&gt;GitHub&lt;/a&gt;, &lt;a href="https://about.gitlab.com/"&gt;GitLab&lt;/a&gt;, or &lt;a href="https://bitbucket.org/product/features"&gt;BitBucket&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code formatters
&lt;/h2&gt;

&lt;p&gt;Script formatters are similar to linters, in that instead of pointing out mistakes in the code, they normally make sure it's formatted properly, according to your design guidelines, and preferably patch any errors they detect automatically.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://prettier.io/"&gt;Prettier&lt;/a&gt; is a well-known example of a code formatter, and we'll use it later in the module.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bundlers/packers
&lt;/h2&gt;

&lt;p&gt;These are tools that prepare your code for production, such as "tree-shaking" to ensure that only the parts of your code libraries that you use are included in your final production code, or "minifying" to remove all whitespace from your production code and make it as small as possible before uploading it to a server.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://parceljs.org/"&gt;Parcel&lt;/a&gt; is an especially smart application that falls into this group — it can do all of the above, but it also lets you organise assets like HTML, CSS, and image files into compact packages that you can then deploy, as well as automatically adding dependencies anytime you attempt to use them. It can also help you with any code transformation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://webpack.js.org/"&gt;Webpack&lt;/a&gt; is another well-known packing platform that performs related functions.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Hosting a Website or online Resume on GitHub (Free!)</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Fri, 23 Apr 2021 19:39:39 +0000</pubDate>
      <link>https://dev.to/yusufadel/hosting-a-website-or-online-resume-on-github-free-p4n</link>
      <guid>https://dev.to/yusufadel/hosting-a-website-or-online-resume-on-github-free-p4n</guid>
      <description>&lt;p&gt;GitHub is not only a great place to store and share your code with others&lt;br&gt;
but they also offer free web hosting of your HTML, CSS, and JavaScript projects!&lt;br&gt;
want something like &lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0gm0uaczdkcnuevojmsk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0gm0uaczdkcnuevojmsk.png" alt="yusufadell.github.io"&gt;&lt;/a&gt; &lt;a href="https://yusufadell.github.io" rel="noopener noreferrer"&gt;https://yusufadell.github.io&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;follow these 8 easy steps&lt;/strong&gt;&lt;br&gt;
Firstly you should &lt;/p&gt;

&lt;h4&gt;
  
  
  1-Create a GitHub account on github.com.
&lt;/h4&gt;

&lt;p&gt;after that you have 2 choices.&lt;br&gt;
create a repository from the website then chose &lt;strong&gt;setup on desktop&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;or you can &lt;/p&gt;

&lt;h4&gt;
  
  
  2-download  desktop version:
&lt;/h4&gt;

&lt;p&gt;windows and mac &amp;gt;&amp;gt; &lt;a href="https://desktop.github.com/" rel="noopener noreferrer"&gt;this website&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;for &lt;a href="https://gist.github.com/yusufadell/807827670087c04f2cebe36a1b835b42" rel="noopener noreferrer"&gt;ubuntu-linux&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  3-(On Mac): After you login, click advanced and make sure that your name and email are correct. Then, click "Install Command Line Tools", just in case you want to start using the command line later in life.
&lt;/h4&gt;

&lt;p&gt;4-Create a new repository in your GitHub application.&lt;/p&gt;

&lt;h4&gt;
  
  
  Name it your-username.github.io
&lt;/h4&gt;

&lt;p&gt;The name is very important.&lt;br&gt;
Make sure the "Push to GitHub?" box is checked.&lt;/p&gt;

&lt;p&gt;5-Move your website's files into the folder that GitHub just created when you made the repository.&lt;/p&gt;

&lt;h3&gt;
  
  
  IMPORTANT:
&lt;/h3&gt;

&lt;p&gt;Your homepage HTML file must be called "index.html", and it must exist in the top-level directory.&lt;/p&gt;

&lt;p&gt;6-Back in the GitHub application, you should see your files in the left column. Make sure they are all checked. If so, enter a message in the text box called "commit summary", something like "initial commit." Then, click the commit button.&lt;/p&gt;

&lt;p&gt;7-Click the "Publish repo" button in the top right corner.&lt;/p&gt;

&lt;p&gt;8-Give it about 10 minutes, then check your-&lt;br&gt;
username.github.io. Your website should be there!&lt;/p&gt;

&lt;h2&gt;
  
  
  Interesting in Using a custom Domain name
&lt;/h2&gt;

&lt;p&gt;consider reading &lt;a href="https://www.dev.to/yusufadel"&gt;this post&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>github</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Coding is after Design.</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Sat, 17 Apr 2021 20:51:33 +0000</pubDate>
      <link>https://dev.to/yusufadel/coding-is-after-design-50b0</link>
      <guid>https://dev.to/yusufadel/coding-is-after-design-50b0</guid>
      <description>&lt;p&gt;Software design and coding are interconnected, but they are not the same. While many people, including programmers, often view programming as binary (right or wrong, good or bad), the reality is much more subjective. There are usually multiple ways to solve a problem, and this is where code design becomes crucial.&lt;/p&gt;

&lt;p&gt;Just as GUI design involves visual elements, code also requires careful design. A software designer, much like a graphic designer, typically doesn’t write any code. Instead, they focus on understanding the project requirements and setting up a functional specification that outlines the technologies, data architecture, and information flow. They define the software’s functionalities and create a high-level blueprint of the software to be developed.&lt;/p&gt;

&lt;p&gt;This blueprint is then handed over to a team of programmers who write the actual code to bring the design to life. Ideally, a software designer should have coding experience and a solid understanding of data architecture and workflows. They need to be logical and knowledgeable about the technologies being used to ensure the design is practical and implementable.&lt;/p&gt;

&lt;p&gt;In summary, effective software development relies on a clear distinction and collaboration between design and coding, with each role contributing its unique expertise to the final product.&lt;/p&gt;

</description>
      <category>programming</category>
      <category>softwaredesign</category>
      <category>softwarelifecycle</category>
    </item>
    <item>
      <title>Start a new job, automate tools setup. </title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Sat, 17 Apr 2021 14:43:40 +0000</pubDate>
      <link>https://dev.to/yusufadel/start-a-new-job-automate-tools-setup-o1d</link>
      <guid>https://dev.to/yusufadel/start-a-new-job-automate-tools-setup-o1d</guid>
      <description>&lt;h1&gt;
  
  
  Feel free to share your scripts
&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Scripts&lt;/strong&gt;: that installs all the tools you need   &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Objective&lt;/strong&gt; of this discuss is to find many solutions as possible for different platforms to help Getting start with setting up necessary tools   &lt;/p&gt;

&lt;p&gt;By the end of this discuss, I hope we get a useful solution for automating setups for various OS specially &lt;del&gt;Debian based distros&lt;/del&gt;&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>ubuntu</category>
      <category>bash</category>
      <category>python</category>
    </item>
    <item>
      <title>1,000.000 open source project under you belt</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Fri, 09 Apr 2021 20:45:22 +0000</pubDate>
      <link>https://dev.to/yusufadel/search-engine-that-finds-your-lost-peace-of-code-from-over-1-000-000-projects-j2j</link>
      <guid>https://dev.to/yusufadel/search-engine-that-finds-your-lost-peace-of-code-from-over-1-000-000-projects-j2j</guid>
      <description>&lt;p&gt;&lt;a href="https://python.hotexamples.com/" rel="noopener noreferrer"&gt;the tool is here&lt;/a&gt;&lt;br&gt;
I was trying to find a new function for a problem i was trying to solve then i faced this miracle search engine that would save ton of effort for any developer and i want to share it with you.&lt;/p&gt;

&lt;p&gt;Also it would be a good opportunity to also share some tools that you find so much useful and increase your productivity.  &lt;/p&gt;

&lt;h1&gt;
  
  
  here is one of the search examples "ordereddict"
&lt;/h1&gt;

&lt;p&gt;it gives you the file which the code came from and also the open source project which contain this file.&lt;/p&gt;

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

&lt;h2&gt;
  
  
  provived with related content in same language
&lt;/h2&gt;

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

&lt;h2&gt;
  
  
  even in other languages for extended usage
&lt;/h2&gt;

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

&lt;h2&gt;
  
  
  supported languages
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;python, java, c#, c++, Go, Js, TS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;and there is the awesome search engine ready to find your lost piece to complete your project&lt;br&gt;
&lt;a href="https://python.hotexamples.com/" rel="noopener noreferrer"&gt;Click Here&lt;/a&gt;&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>todayilearned</category>
      <category>todayisearched</category>
      <category>dev</category>
    </item>
    <item>
      <title>Design, Coding, Testing and Maintenance.</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Thu, 08 Apr 2021 20:39:35 +0000</pubDate>
      <link>https://dev.to/yusufadel/forming-the-basis-for-the-subsequent-phases-of-design-coding-testing-and-maintenance-1fo1</link>
      <guid>https://dev.to/yusufadel/forming-the-basis-for-the-subsequent-phases-of-design-coding-testing-and-maintenance-1fo1</guid>
      <description>&lt;h1&gt;
  
  
  Never code until the specifications are precise and complete.
&lt;/h1&gt;

&lt;p&gt;I'm going to survey a great deal of ground, but mainly from a bird’s-eye view, going to expand some of the principles in software engineering&lt;/p&gt;

&lt;h2&gt;
  
  
  what is software engineering?
&lt;/h2&gt;

&lt;p&gt;It is the study and practice of methods helpful for the construction and maintenance of large software systems. Although small by realistic standards,  we are going to illustrate necessary aspects of software engineering.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;phases of life cycle&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Analyze&lt;/strong&gt; the problem precisely and completely. Be sure to specify all necessary user interface with care.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Build&lt;/strong&gt; a prototype and experiment with it until all specifications can be finalized.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Design&lt;/strong&gt; the algorithm, using the tools of data structures and of other algorithms whose function is already known.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Verify&lt;/strong&gt; that the algorithm is correct, or make it so simple that its correctness is self-evident.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Analyze&lt;/strong&gt; the algorithm to determine its requirements and make sure that it meets the specifications.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Code&lt;/strong&gt; the algorithm into the appropriate programming language.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Test&lt;/strong&gt; and evaluate the program on carefully chosen test data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Refine&lt;/strong&gt; and repeat the foregoing steps as needed for additional classes and functions until the software is complete and fully functional.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Optimize&lt;/strong&gt; the code to improve performance, but only if necessary.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Maintain&lt;/strong&gt; the program so that it will meet the changing needs of its users.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;we will handle the primary way in which the user and the software engineer attempt to understand each other and establishes the standard by which the final project will be judged. Among the contents of this specification will be the following:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Functional requirements&lt;/strong&gt; for the system: what it will do and what commands will be available to the user.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Assumptions and limitations&lt;/strong&gt; on the system: what hardware will be used for the system, what form must the input take, what is the maximum size of input,what is the largest number of users, and so on.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Maintenance requirements&lt;/strong&gt; : anticipated extensions of the system, changes in hardware, changes in user interface.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Documentation requirements&lt;/strong&gt; : what kind of explanatory material is required for what kinds of users.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The requirements specifications state what the software will do, not how it will be done. These specifications should be understandable both to the user and to the programmer. If carefully prepared, they will form the basis for the subsequent phases of design, coding, testing, and maintenance.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;conclusion&lt;/strong&gt;&lt;br&gt;
I want to give a small advice &lt;strong&gt;Be sure you understand your problem before you decide how to solve it.&lt;/strong&gt;&lt;br&gt;
and we will be continuing what we have start with forming the basis of software life cycle and go throw SDLC Models &amp;amp; Methodologies. &lt;/p&gt;

</description>
      <category>design</category>
      <category>testing</category>
      <category>codequality</category>
    </item>
    <item>
      <title>how to determine a field to get in deep with if you a cs student?</title>
      <dc:creator>YusufAdel</dc:creator>
      <pubDate>Thu, 08 Apr 2021 19:49:27 +0000</pubDate>
      <link>https://dev.to/yusufadel/how-to-determine-a-field-to-get-in-deep-with-if-you-a-cs-student-cd2</link>
      <guid>https://dev.to/yusufadel/how-to-determine-a-field-to-get-in-deep-with-if-you-a-cs-student-cd2</guid>
      <description>&lt;p&gt;the more i know the tech world the more i get confused to choose what I'm really want to do.&lt;/p&gt;

&lt;p&gt;i have been studying python for over a six months.&lt;/p&gt;

&lt;p&gt;doing some cool stuff with it like web development, data visualization, building games, discovering the software world in detailed with it,  beside solving problems for over three months.&lt;br&gt;
and i really don't know where i should focus most of my effort to, if you can help me please don't think twice and share you knowledge with me.     &lt;/p&gt;

</description>
      <category>discuss</category>
    </item>
  </channel>
</rss>
