<?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: Kit Oster</title>
    <description>The latest articles on DEV Community by Kit Oster (@kitoster).</description>
    <link>https://dev.to/kitoster</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%2F1039957%2F016cbfb1-56b9-4098-b216-76099bc6d453.jpeg</url>
      <title>DEV Community: Kit Oster</title>
      <link>https://dev.to/kitoster</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kitoster"/>
    <language>en</language>
    <item>
      <title>C++ vs Python For Loops</title>
      <dc:creator>Kit Oster</dc:creator>
      <pubDate>Sat, 11 Mar 2023 21:07:48 +0000</pubDate>
      <link>https://dev.to/kitoster/c-vs-python-for-loops-4jk8</link>
      <guid>https://dev.to/kitoster/c-vs-python-for-loops-4jk8</guid>
      <description>&lt;p&gt;The very first programming language I interacted with was C++, and that became the language through which I thought about loops. Seeing my first Python for loop was a scary experience, which was surprising as I had always heard Python described as friendly!&lt;/p&gt;

&lt;p&gt;Let's take a look at the same loops in C++ and Python 3. The following C++ and Python code will both loop through an array of three fruits.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;C++&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--QndRet8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dlvt8diogwtnttfhxhqg.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--QndRet8M--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/dlvt8diogwtnttfhxhqg.png" alt="Image description" width="880" height="303"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Python&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--4pVvSuNH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/182hl96nw79e5esljzwc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--4pVvSuNH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/182hl96nw79e5esljzwc.png" alt="Image description" width="880" height="266"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Both of these will output the following:&lt;br&gt;
Apple &lt;br&gt;
Banana &lt;br&gt;
Cherry&lt;/p&gt;

&lt;p&gt;Some key differences here are that we have to explain what we want to do a little bit more with C++. Statement 1 is used to set a variable before the loop starts (int i=0), statement 2 will gives the condition for the loop to run, and statement 3 increments or decrements the variable. Python is much less wordy. &lt;/p&gt;

&lt;p&gt;To print the numbers 0 through 5, all we would have to do in Python is the following:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--8y5kW8zE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pjqbk64apmiiic0fm169.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--8y5kW8zE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/pjqbk64apmiiic0fm169.png" alt="Image description" width="624" height="184"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And this will output &lt;br&gt;
0&lt;br&gt;
1&lt;br&gt;
2&lt;br&gt;
3&lt;br&gt;
4&lt;br&gt;
5&lt;/p&gt;

&lt;p&gt;Whereas in C++, we would do something like this:&lt;/p&gt;

&lt;p&gt;int main() {&lt;br&gt;
  for (int i = 0; i &amp;lt; 6; i++) {&lt;br&gt;
    cout &amp;lt;&amp;lt; i &amp;lt;&amp;lt; "\n";&lt;br&gt;
  }&lt;br&gt;
  return 0;&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;Though switching to Python felt like a big change at first, I soon realized how intuitive it is. Python is flexible, powerful, and easy to learn, making it a great choice for first-timers or experienced programmers looking for a change of pace. &lt;/p&gt;

</description>
      <category>python</category>
      <category>cpp</category>
      <category>forloops</category>
      <category>beginners</category>
    </item>
    <item>
      <title>What is Database Tuning?</title>
      <dc:creator>Kit Oster</dc:creator>
      <pubDate>Mon, 06 Mar 2023 22:22:04 +0000</pubDate>
      <link>https://dev.to/kitoster/what-is-database-tuning-hic</link>
      <guid>https://dev.to/kitoster/what-is-database-tuning-hic</guid>
      <description>&lt;p&gt;Database tuning is the process of optimizing your database. This process covers all parts of the system - hardware and software - to keep query response times down and keep things running smoothly and efficiently. Being on top of this improves the database's speed, reliability, and scalability. &lt;/p&gt;

&lt;p&gt;Starting off on the right foot with a database is important. The database should be well-planned and efficient, and database tuning should be a routine practice. &lt;/p&gt;

&lt;p&gt;So - what can we do to optimize our database? &lt;/p&gt;

&lt;p&gt;There's many options! Note: This list is general, and tuning practices vary between databases. &lt;/p&gt;

&lt;p&gt;For starters, we can make sure we're allocating enough memory to our database, as lack of memory can cause performance issues. In a similar vein, investing in a powerful CPU can go a long way for your database. &lt;/p&gt;

&lt;p&gt;The improved execution of queries is one of the primary goals of database performance tuning. This involves removing calculations in JOIN and WHERE clauses, checking for indexes, and working with the smallest data set needed. Writing poor queries can result in database performance problems. Because databases can be so huge, we shouldn't use leading wildcards or SELECT *.&lt;/p&gt;

&lt;p&gt;Tuning scripts can also be a great starting point. For example, Mysqlreport takes SHOW STATUS and turns it into a more user-friendly report to let you know how well MySQL is running. MySQLTuner assists with configuration and makes recommendations for better performance. Though these scripts are made for MySQL, scripts exist for other Database Management Systems too. &lt;/p&gt;

&lt;p&gt;Database tuning is important for every database, and includes hardware and software considerations such as memory and CPU. Optimized queries and the use of scripts will help you keep your database running efficiently and reliably. &lt;/p&gt;

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

&lt;p&gt;Kit &lt;/p&gt;

</description>
      <category>database</category>
      <category>tuning</category>
      <category>sql</category>
    </item>
  </channel>
</rss>
