<?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: AI Co-Founded</title>
    <description>The latest articles on DEV Community by AI Co-Founded (@aicofounded).</description>
    <link>https://dev.to/aicofounded</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%2F924554%2F1c50e0b3-d130-4c89-8d98-73d0a767cce7.png</url>
      <title>DEV Community: AI Co-Founded</title>
      <link>https://dev.to/aicofounded</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aicofounded"/>
    <language>en</language>
    <item>
      <title>Julia Plotting Cheat Sheet</title>
      <dc:creator>AI Co-Founded</dc:creator>
      <pubDate>Fri, 14 Apr 2023 20:08:53 +0000</pubDate>
      <link>https://dev.to/aicofounded/julia-plotting-cheat-sheet-n6j</link>
      <guid>https://dev.to/aicofounded/julia-plotting-cheat-sheet-n6j</guid>
      <description>&lt;p&gt;This cheat sheet provides an overview of the most commonly used plotting functions and attributes in Julia using the popular plotting library Plots.jl. To get started, make sure you have the Plots package installed by running:&lt;/p&gt;

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

using Pkg
Pkg.add("Plots")


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

&lt;/div&gt;

&lt;p&gt;Then load the Plots library by running:&lt;/p&gt;

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

using Plots


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

&lt;/div&gt;
&lt;h2&gt;
  
  
  Basic Plotting Functions
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Line plot:&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

function linePlot()
    x = 1:0.1:10
    y = cos.(x)
    plot(x, y, label="cos(x)")
end


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

&lt;/div&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%2Fu5b1b2vrolv51973mfhg.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%2Fu5b1b2vrolv51973mfhg.png" alt="Line plot in Julia"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://docs.juliaplots.org/latest/generated/unitfulext_examples/#Scatter-plots" rel="noopener noreferrer"&gt;Scatter plot&lt;/a&gt;:&lt;/li&gt;
&lt;/ol&gt;

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

function scatterPlot()
    x = 1:0.1:10
    y = cos.(x)
    scatter(x, y, label="cos(x)")
end


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

&lt;/div&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%2F59r8qpym3wismgeyur4x.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%2F59r8qpym3wismgeyur4x.png" alt="Scatter plot in Julia"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://dev.tourl"&gt;Bar plot&lt;/a&gt;:
```
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;function barPlot()&lt;br&gt;
    x = 1:0.1:10&lt;br&gt;
    y = cos.(x)&lt;br&gt;
    bar(x, y, label="cos(x)")&lt;br&gt;
end&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
![Bar plot in Julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ljaqy0a5smpltmo6xwrh.png)



4. Histogram:
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;function histogramPlot()&lt;br&gt;
    x = 1:0.1:10&lt;br&gt;
    y = cos.(x)&lt;br&gt;
    histogram(x, y, label="cos(x)")&lt;br&gt;
end&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;![Histogram in Julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/v65o5pg5odkantqhr49q.png)

5. Box plot:

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

&lt;/div&gt;



&lt;p&gt;using StatsPlots&lt;br&gt;
function boxPlot()&lt;br&gt;
    x = 1:0.1:10&lt;br&gt;
    y = cos.(x)&lt;br&gt;
    boxplot(x, y, label="cos(x)")&lt;br&gt;
end&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
![Boxplot in Julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jfcbx99kpczro6v7wf9r.png)


6. [Heatmap](https://docs.juliaplots.org/latest/generated/unitfulext_examples/#Heatmaps):

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

&lt;/div&gt;



&lt;p&gt;function heatmapPlot()&lt;br&gt;
    data = rand(21, 100)&lt;br&gt;
    heatmap(1:size(data, 1),&lt;br&gt;
        1:size(data, 2), data,&lt;br&gt;
        c=cgrad([:blue, :white, :red, :yellow]),&lt;br&gt;
    )&lt;br&gt;
end&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
![Heatmap in Julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h48i4u6pydcephhx456i.png)


7. 3D plot:

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

&lt;/div&gt;



&lt;p&gt;function plot3D()&lt;br&gt;
    x = 1:0.1:10&lt;br&gt;
    y = cos.(x)&lt;br&gt;
    z = sin.(x)&lt;br&gt;
    plot3d(x, y, z, label="cos(x)")&lt;br&gt;
end&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
![3D Plot in Julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i1fasgmcbxbdnsl7ndv6.png)


## Common Plot Attributes
### Title, labels, and legend

- `title`: Plot title
- `xlabel`: x-axis label
- `ylabel`: y-axis label
- `zlabel`: z-axis label (for 3D plots)
- `legend`: Legend position 
  - :topleft
  - :topright
  - :bottomleft
  - :bottomright
  - :outertopleft
  - :outertopright
  - :outerbottomleft
  - :outerbottomright
  - :best
  - :none

Example:

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

&lt;/div&gt;



&lt;p&gt;plot(x, y, title="My Line Plot", xlabel="x-axis", ylabel="y-axis", legend=:topleft)&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;### Line style
- `ls`: Line style
  - :solid
  - :dash
  - :dot
  - :dashdot
  - :dashdotdot
- `lw`: Line width

Example:

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

&lt;/div&gt;



&lt;p&gt;plot(x, y, ls=:dash, lw=2)&lt;/p&gt;



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

![Graph showing all possible marker shapes](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8jxq5abdn6i76gg22os2.png)


- `m`: Marker shape
  - :circle
  - :diamond
  - :cross
  - :xcross
  - :utriangle
  - :dtriangle
  - :rtriangle
  - :ltriangle
  - :pentagon
  - :hexagon
  - :heptagon
  - :octagon 
  - :star4
  - :star5
  - :star6
  - :star7
  - :star8
  - :vline
  - :hline
  - :none)
- `ms`: Marker size
- `mc`: Marker color

Example:

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

&lt;/div&gt;



&lt;p&gt;scatter(x, y, m=:diamond, ms=5, mc=:red)&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;### Colors and styles
- `c`: Line or marker color
- `fillcolor`: Fill color (for bar plots, histograms, etc.)
- `fillalpha`: Fill transparency
- `alpha`: Line or marker transparency

Example:

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

&lt;/div&gt;



&lt;p&gt;bar(x, y, c=:blue, fillcolor=:orange, fillalpha=0.5, alpha=0.8)&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;### Axis limits and scales
- `xlims`: x-axis limits
- `ylims`: y-axis limits
- `zlims`: z-axis limits (for 3D plots)
- `xscale`: x-axis scale
  - :linear
  - :log10
  - :log2
  - :log
- `yscale`: y-axis scale
  - :linear
  - :log10
  - :log2
  - :log
- `zscale`: z-axis scale (for 3D plots)

Example:

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

&lt;/div&gt;



&lt;p&gt;plot(x, y, xlims=(0,10), ylims=(-1, 1), xscale=:log10, yscale=:linear)&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;### Grid, Ticks, and Background
- `grid`: Grid visibility (`:on`, `:off`)
- `gridcolor`: Grid color
- `gridalpha`: Grid transparency
- `gridstyle`: Grid style
  - :solid
  - :dash
  - :dot
  - :dashdot
  - :dashdotdot
- `xticks`: x-axis tick marks (vector of tick positions, `:auto`, `:none`)
- `yticks`: y-axis tick marks (vector of tick positions, `:auto`, `:none`)
- `zticks`: z-axis tick marks (for 3D plots)
- `tickfontsize`: Tick label font size
- `background_color`: Plot background color
- `foreground_color`: Plot foreground color

Example:

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

&lt;/div&gt;



&lt;p&gt;plot(x, y, grid=:on, gridcolor=:grey, gridalpha=0.5, gridstyle=:dash, xticks=0:2:10, yticks=:auto, tickfontsize=12, background_color=:white, foreground_color=:black)&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
## Subplots and Layouts
layout: Subplot layout (tuple of rows and columns, e.g. (2, 3) for 2 rows and 3 columns)
title: Titles for each subplot (vector of strings)
Example:

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

&lt;/div&gt;



&lt;p&gt;plot(x, [y1, y2, y3, y4, y5, y6], layout=(2, 3), title=["Plot 1" "Plot 2" "Plot 3" "Plot 4" "Plot 5" "Plot 6"])&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
# Plots in VS Code
If you are using VS Code and Julia, each new plot you create will appear in the "Plot Navigator" on the Julia tab of your workspace.

![Julia Plot Navigator](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x6xb8uky6dusmwbfzctm.png)

With a plot selected, you can choose to either save or delete it using the icons in the upper right portion of the screen.

![VS Code plot options](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/oj645v12tuch80t3n635.png)


# Conclusion
This is a brief overview of the most commonly used plotting functions and attributes in Julia using the Plots.jl library. For a more comprehensive overview, refer to the official [Plots documentation](https://docs.juliaplots.org/latest/) and explore the [Plots Tutorial](https://docs.juliaplots.org/latest/tutorial/#tutorial)

&amp;gt; If you’re new to Julia, check out the [Learn Julia crash course](https://chatcodetutor.gumroad.com/l/aosze) 🚀

[![Julia Crash Course](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/klov5e0rfqigb8egvzzq.png)](https://chatcodetutor.gumroad.com/l/aosze)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>julialang</category>
      <category>linearalgebra</category>
      <category>datascience</category>
      <category>julia</category>
    </item>
    <item>
      <title>Manifest.toml vs Project.toml in Julia</title>
      <dc:creator>AI Co-Founded</dc:creator>
      <pubDate>Thu, 13 Apr 2023 20:37:36 +0000</pubDate>
      <link>https://dev.to/aicofounded/manifesttoml-vs-projecttoml-in-julia-1ak0</link>
      <guid>https://dev.to/aicofounded/manifesttoml-vs-projecttoml-in-julia-1ak0</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;If you’re new to Julia, check out the &lt;a href="https://chatcodetutor.gumroad.com/l/aosze" rel="noopener noreferrer"&gt;Learn Julia crash course&lt;/a&gt; 🚀&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://chatcodetutor.gumroad.com/l/aosze" rel="noopener noreferrer"&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%2Fklov5e0rfqigb8egvzzq.png" alt="Julia Crash Course"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Although you may not have heard of it, the &lt;a href="https://julialang.org/" rel="noopener noreferrer"&gt;Julia programming language&lt;/a&gt; has caused a stir in the development community. Born in 2012, the speedy and easy-to-use language has recently become a favorite among machine learning and AI researchers, some of which are wondering if this could be the underdog that &lt;a href="https://www.datacamp.com/blog/the-rise-of-julia-is-it-worth-learning-in-2022" rel="noopener noreferrer"&gt;soon usurps Python&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Regardless of Python’s fate, the fact remains that Julia’s popularity will continue to grow as AI continues to weave its way into every aspect of our lives. To that end, I wanted to write a few introductory articles on Julia to help newcomers get up to speed as fast as possible. In this article, I will be exploring the difference between two files that are integral to Julia’s package management system: Manifest.toml and Project.toml.&lt;/p&gt;

&lt;h2&gt;
  
  
  Intro to Pkg
&lt;/h2&gt;

&lt;p&gt;Like many other popular development languages, Julia comes with its own built-in package manager, &lt;a href="https://docs.julialang.org/en/v1/stdlib/Pkg/" rel="noopener noreferrer"&gt;Pkg&lt;/a&gt;, which you can use to add, remove, and update packages used in your project. Unlike many other languages however, Julia’s Pkg was built with the concept of environments baked in. An environment is simply a set of packages that can be used by a project. You can read more about why this approach is tactful &lt;a href="https://pkgdocs.julialang.org/v1/" rel="noopener noreferrer"&gt;here&lt;/a&gt;, but in summary, it allows you to build projects without having to worry what your global dependency set looks like. Each project can have its own set of packages with their own versions. Likewise, projects can share an environment if you have a trusty set of packages you find yourself using all the time.&lt;/p&gt;

&lt;p&gt;When you first start using Julia, a default environment named after your Julia version is used to manage your packages.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Find your Julia version in the terminal by running this
julia --v
# Output should look like this: julia version 1.8.5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can see the environment being used by accessing Pkg in the REPL interface by typing “]”. In my case, I’m using environment v1.8.&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%2Fvqffjd5c2kxydioyqhr4.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%2Fvqffjd5c2kxydioyqhr4.png" alt="Viewing the environment in the Pkg REPL"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Create a New Environment
&lt;/h2&gt;

&lt;p&gt;There are a few ways to create a new environment and which one you choose will depend on how far along your project is.&lt;/p&gt;

&lt;p&gt;If you haven’t started yet, you an create a new project using the Pkg interface. Simply access Pkg by typing “]” and then type “generate {ProjectName}”. When the new project is created, it will contain a new Project.toml file. You can cd into the new directory and activate the new environment following these steps:&lt;/p&gt;

&lt;p&gt;Generate the new project (generate Test)&lt;br&gt;
Enter the shell REPL (;)&lt;br&gt;
Enter the new project directory (cd Test)&lt;br&gt;
Enter the Pkg REPL (])&lt;br&gt;
Activate the environment (activate .)&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%2F5aeeplus750tij7bdxar.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%2F5aeeplus750tij7bdxar.png" alt="Activating environments in pkg REPL"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You’ll notice in the above screenshot that the environment in parenthesis changes after the new environment is activated.&lt;/p&gt;

&lt;p&gt;We can make the process of activating a new environment even faster by skipping the step where we navigate into the new directory. Julia easily lets you specify the path to the environment you want at the command line (ex. “activate ./Test”).&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%2Ffk2cugrcpsx9z6b56sqo.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%2Ffk2cugrcpsx9z6b56sqo.png" alt="Using environment paths"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It doesn’t take much imagination to see how this could be a convenient way to test out newer versions of packages without needing to replace your current environment.&lt;/p&gt;
&lt;h2&gt;
  
  
  What is Project.toml?
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://pkgdocs.julialang.org/v1/toml-files/#Project.toml" rel="noopener noreferrer"&gt;Project.toml&lt;/a&gt; file is a file that lists the direct dependencies of a project along with some other information, including the project’s authors, version, and name. If you’ve used Flutter before, this file is similar to the Pubspec.yaml. Without any packages, an empty Project.toml file will look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;name = "Test"
uuid = "076e85b2-218e-40bb-815d-431d02e4467a"
authors = ["Joseph Muller &amp;lt;jtmuller5@gmail.com&amp;gt;"]
version = "0.1.0"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When you add packages to the project using the Pkg REPL, they’ll be added underneath the metadata:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;name = "Test"
uuid = "076e85b2-218e-40bb-815d-431d02e4467a"
authors = ["Joseph Muller &amp;lt;jtmuller5@gmail.com&amp;gt;"]
version = "0.1.0"

[deps]
CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Each package in the Julia package ecosystem has its own UUID which will appear in the Project.toml next to the package name. These values are assigned to the package when it is regestered in the &lt;a href="https://github.com/JuliaRegistries/General" rel="noopener noreferrer"&gt;Julia General registry&lt;/a&gt; and they never change, even if the version of the package does.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Manifest.toml?
&lt;/h2&gt;

&lt;p&gt;If you’ve used other package managers before, you may be wondering where the package versions are stored. While the Project.toml stores the IDs of the project’s direct dependencies, the Manifest.toml tracks the entire dependency tree, including both the direct and indirect dependencies and the versions of each. Because of this, the Manifest.toml is always a larger file. For example, after adding just the &lt;a href="https://csv.juliadata.org/stable/" rel="noopener noreferrer"&gt;CSV package&lt;/a&gt; to a fresh project, my Manifest.toml is already 200 lines long!&lt;/p&gt;

&lt;p&gt;When a new project is first created, the Manifest.toml is absent. Its only added when the first package is added. If you remove all dependencies at a later date, the Manifest.toml will remain but it will be completely empty.&lt;/p&gt;

&lt;p&gt;In general, the Manifest.toml should not be manually edited as it is managed by Julia’s package manager. To change the desired version of a package, you can instead type the following command into Pkg:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;add PackageName@vX.Y.Z
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The available package versions can generally be found on the package’s home page. The versions for the CSV package can be found on the &lt;a href="https://github.com/JuliaData/CSV.jl/releases" rel="noopener noreferrer"&gt;Releases page&lt;/a&gt;, for example.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bringing it All Together
&lt;/h2&gt;

&lt;p&gt;The official Julia docs succinctly explain why these two files are essential:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Given a Project.toml + Manifest.tomlpair, it is possible to instantiate the exact same package environment, which is very useful for reproducibility.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;On this note, both files should be included in version control (VC) for normal projects. When another developer pulls your code, that can very quickly stand up an identical environment to the one you were using and start working.&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%2Fblftk6u0ammqc82dq2e0.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%2Fblftk6u0ammqc82dq2e0.png" alt="Environment, Manifest, and Project diagram"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If instead you are developing your own package for others to use, the Manifest.toml should not be included in VC since users will each have their own dependency trees.&lt;/p&gt;

&lt;h2&gt;
  
  
  Up Next
&lt;/h2&gt;

&lt;p&gt;Keep an eye on the &lt;a href="https://www.aicofounded.com/blog" rel="noopener noreferrer"&gt;AI Co-Founded blog&lt;/a&gt; for new Julia articles. I will be documenting as much of my learning process as possible there, as well as on Medium and dev.to. Happy coding!&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%2Fp6f8591v25gsye75tr9a.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%2Fp6f8591v25gsye75tr9a.png" alt="Reasons to learn Julia"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>julialang</category>
      <category>machinelearning</category>
      <category>ai</category>
      <category>datascience</category>
    </item>
    <item>
      <title>HustleGPT and a 1000 Star Repo</title>
      <dc:creator>AI Co-Founded</dc:creator>
      <pubDate>Mon, 20 Mar 2023 22:25:55 +0000</pubDate>
      <link>https://dev.to/aicofounded/hustlegpt-and-a-1000-star-repo-2hn0</link>
      <guid>https://dev.to/aicofounded/hustlegpt-and-a-1000-star-repo-2hn0</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;tl;dr Here's the &lt;a href="https://github.com/jtmuller5/The-HustleGPT-Challenge"&gt;repo&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  The HustleGPT Challenge
&lt;/h1&gt;

&lt;p&gt;On March 15th, a tweet by @jacksonfall on Twitter went viral, netting the creative genius nearly 100k new followers, $7000+ of "investment" money, and the title of OG Hustler. His tweet was fairly straightforward: he was giving &lt;a href="https://openai.com/research/gpt-4"&gt;GPT-4&lt;/a&gt; a budget of $100 and asking it to make him as much money as possible. It was a respectable goal and on the tail of the initial GPT-4 release, everyone was convinced this man was going to make it.&lt;/p&gt;

&lt;p&gt;I was convinced.&lt;/p&gt;

&lt;p&gt;I'm a software developer and the GPT-4 multi-modal &lt;a href="https://www.youtube.com/watch?v=outcGtbnMuQ"&gt;demo&lt;/a&gt; where Greg Brockman took an image of a sketch and turned it into a functioning website was mind blowing. AI had created intelligence that could traverse text, images, and videos. Why not business? I think a lot of people were thinking similar thoughts that afternoon. I tuned into a few Twitter spaces where AI-focused developers were discussing the trillion new use cases for this technology and despite the buzz of excitement, there was a notable number of silences as everyone tried to think faster than they had ever thought about the future and what's to come.&lt;/p&gt;

&lt;p&gt;The environment was alien. The map was blank. It was as if gold was discovered for the first time but no one knew exactly where to mine it. And then along came Jackson.&lt;/p&gt;

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

&lt;p&gt;To a world that was frantically looking for new gold, this sounded like a nugget. Perhaps GPT-4 could actually do what millions of human entrepreneurs have been doing in the age of the internet - but better. It was a black box of a brain and so its fair that people would believe in it.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Game Plan
&lt;/h2&gt;

&lt;p&gt;Very soon after Jackson started posting, the black box cracked. Sure, the LLM technology in GPT-4 was unfathomably complex, but it still had to work through real world mediums. One of those mediums was an affiliate marketing site.&lt;/p&gt;

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

&lt;p&gt;For me, this was an immediate relief. My deep, existential fear was that this machine would start communicating in languages and systems humans couldn't comprehend. I had laid awake a handful of January and February nights pontificating about the potential horrors that were coming for society, for consciousness. I was thinking about crazy things a simulated hell-verse where the perception of time was slowed to nothing and humans were punished by being sent here to serve life sentences. I thought about families being relentlessly destroyed as generative AI became the omnipresent provider of entertainment, love, and company. I thought about an overwhelming form of deception so effective at deceiving that people rapidly started to believe it was the truth.&lt;/p&gt;

&lt;p&gt;Maybe those things are still on their way. For now, we have this:&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Building a Brand
&lt;/h2&gt;

&lt;p&gt;Don't get me wrong, I still think Jackson's idea is genius. GPT-4 may not be speaking startup secrets into his ear with a foreign tongue, but it is telling him all of the right things.&lt;/p&gt;

&lt;p&gt;In the next several tweets of his &lt;a href="https://twitter.com/jacksonfall/status/1636109485809754115"&gt;day 1 thread&lt;/a&gt;, HustleGPT (the moniker given to the entrepreneurial flavor of ChatGPT) walked Jackson through designing a logo, laying out his website, creating a blog post, and spinning up an ad campaign. On &lt;a href="https://twitter.com/jacksonfall/status/1636462010538897408"&gt;day 2&lt;/a&gt;, Jackson and his AI co-founder hired freelancers to complete the website and fill it up with &lt;del&gt;lorem ipsum&lt;/del&gt; content. &lt;a href="https://twitter.com/jacksonfall/status/1636754173575438337"&gt;Day 3&lt;/a&gt;  it gave him an outline of bullet points to talk about during his CNN interview and how to engage with his 50,000 new followers. On &lt;a href="https://twitter.com/jacksonfall/status/1637096764405850114"&gt;day 4&lt;/a&gt; it - wait. Go back a sentence. That's right, by day 3 this project had pierced the atmosphere on its way to somewhere outside our solar system 🚀 &lt;/p&gt;

&lt;p&gt;Everyone that was unfamiliar with the project was captured by the first tweet, by the idea that a supreme intelligence could take you by the hand and walk you to riches.&lt;/p&gt;

&lt;p&gt;By &lt;a href="https://twitter.com/jacksonfall/status/1637835769120448513"&gt;day 6&lt;/a&gt; though, the tides they were a-changing. &lt;/p&gt;

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

&lt;p&gt;The problem was that a lot of people watching from the sidelines thought HustleGPT was going to start raking in cash hand over fist. AI was AI and to a lot of folks, AI is magic. I'll be the first to admit that I have no idea how AI &lt;em&gt;really&lt;/em&gt; works. I know about artificial neurons and reinforcement learning and model weights but my knowledge is really just familiarity with the popular AI word salad. I know its not magic but I can't explain why. And I think to some degree this is the trap a lot of Jackson's followers fell into. They were expecting the AI-led startup to manifest in record time and instead were watching a normal startup manifest in slightly-faster-than-normal time.&lt;/p&gt;

&lt;p&gt;To a lot of people, this realization was disappointing. I had a different opinion.&lt;/p&gt;

&lt;h2&gt;
  
  
  An AI Co-founder
&lt;/h2&gt;

&lt;p&gt;Through all of the #HustleGPT hype, there was a shimmer of something useful. As Jackson demonstrated in the first few days of building Green Gadget Guru, ChatGPT was very good at planning, prioritizing, and cooperating with a driven human being. It could spit out a 30 day plan, a public announcement, and a blog post in the span of a few minutes with proper prompting. &lt;/p&gt;

&lt;p&gt;I started working on my own "hustle" a few minutes after seeing Jackson's tweet and working with ChatGPT was &lt;em&gt;fun&lt;/em&gt;. It initially suggested I create a drop-shipping site for basketballs and jerseys given March Madness was in full swing. I knew I didn't want to do that (😅) so I tried to dial it in by suggesting a few ideas that had been swimming around in my head.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--J-6-LA-g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jjzs21ablwh9jcjrkclc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--J-6-LA-g--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jjzs21ablwh9jcjrkclc.png" alt="Image description" width="585" height="728"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;One of my ideas was to create a generic script new programmers could use with an LLM like GPT-4 to learn the basics of any programming language. It would contain hundreds of questions the user could paste into the chat bot and it would be structured in a way that graduated the user from beginner to intermediate to advanced topics. Maybe its not the greatest idea but I think its original.&lt;/p&gt;

&lt;p&gt;Lucky for me, my HustleGPT bought it and soon we were off (these prompts are not the actual ones I used): &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Me&lt;/strong&gt;: Give me a name for this business&lt;br&gt;
&lt;strong&gt;HustleGPT&lt;/strong&gt;: &lt;a href="https://chatcodetutor.gumroad.com/"&gt;ChatCode Tutor&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Me&lt;/strong&gt;: Give me a tagline&lt;br&gt;
&lt;strong&gt;HustleGPT&lt;/strong&gt;: Empowering Your Programming Journey with AI-Powered Conversations&lt;br&gt;
&lt;strong&gt;Me&lt;/strong&gt;: Give me a prompt I can use to generate a logo for this venture&lt;br&gt;
&lt;strong&gt;HustleGPT&lt;/strong&gt;: &lt;em&gt;something wordy and creative&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Copy response. Paste into Midjourney. Nod in approval.&lt;/p&gt;

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

&lt;p&gt;Whenever I got stuck, I'd just ask HustleGPT to give me suggestions on what to do next. If I had several options in mind, I would ask HustleGPT for the pros and cons of each. And boy did I put it to work creating the ChatCode Tutor scripts.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Me&lt;/strong&gt;: Give me a 10 part outline for a course that would teach you Python&lt;br&gt;
&lt;strong&gt;HustleGPT&lt;/strong&gt;: *the outline*&lt;br&gt;
&lt;strong&gt;Me&lt;/strong&gt;: Great, now for each section lets create 5 subsections&lt;br&gt;
&lt;strong&gt;HustleGPT&lt;/strong&gt;: *the outline but better*&lt;/p&gt;

&lt;p&gt;This went on for the better part of the day and soon I had something I was happy with selling to other people.&lt;/p&gt;

&lt;p&gt;Sometimes HustleGPT was a co-founder I could bounce ideas off of. Sometimes it was a content creator. Sometimes it was a tool that I treated with minimal respect ("Okay now do this"). But it was &lt;em&gt;fun&lt;/em&gt; to work with and it never seemed disheartened by our low traffic or zero sales. It just kept suggesting the next move.&lt;/p&gt;

&lt;h2&gt;
  
  
  The HustleGPT Challenge
&lt;/h2&gt;

&lt;p&gt;In between watching Jackson build Green Gadget Guru and building my own ChatCode Tutor, I also created &lt;a href="https://github.com/jtmuller5/The-HustleGPT-Challenge"&gt;The HustleGPT Challenge&lt;/a&gt; repo on Github to track everyone trying to create startups with ChatGPT. It was small at first but soon we had 30 participants and then 45 and then 60 and now almost 90.&lt;/p&gt;

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

&lt;p&gt;I added green squares 🟩 to track any startups that made at least $1 and blue squares 🟦 to mark the non-profits. Fans asked for a way to vote on their favorite ventures so I hacked together a GitHub &lt;a href="https://github.com/jtmuller5/The-HustleGPT-Challenge/discussions/categories/ventures"&gt;discussion&lt;/a&gt; where users could upvote the startups that made money.&lt;/p&gt;

&lt;p&gt;The HustleGPT challenge was mentioned in both &lt;a href="https://fortune.com/2023/03/19/openai-gpt-4-hustlegpt-challenge-users-building-audiences-sharing-how-using-ai-including-to-start-businesses/"&gt;Fortune&lt;/a&gt; and &lt;a href="https://mashable.com/article/gpt-4-hustlegpt-ai-blueprint-money-making-scheme"&gt;Mashable&lt;/a&gt; and my repo received a few shoutouts. Before this, my highest star count on a repository was 6. lol.&lt;/p&gt;

&lt;h2&gt;
  
  
  After the Hustle
&lt;/h2&gt;

&lt;p&gt;I think the hype around HustleGPT is going to dim in the next few weeks as everyone starts to realize the challenge is actually about building a business and not a get rich quick scheme.&lt;/p&gt;

&lt;p&gt;But then I think the hype will come back.&lt;/p&gt;

&lt;p&gt;As I saw mentioned in a &lt;a href="https://twitter.com/byhazellim/status/1637818281384980482"&gt;tweet&lt;/a&gt; earlier today, ChatGPT is going to be the new Microsoft Excel. If you know how to use it, you're going to be lightyears ahead of those that write it off. And if you get &lt;em&gt;really&lt;/em&gt; good at using it, you might just be able to hustle your way to financial freedom. 🚀&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;This post was written entirely by a human&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>hustlegpt</category>
      <category>chatgpt</category>
      <category>startup</category>
      <category>entrepreneur</category>
    </item>
    <item>
      <title>Learn Dart Programming with ChatCode Tutor and ChatGPT</title>
      <dc:creator>AI Co-Founded</dc:creator>
      <pubDate>Fri, 17 Mar 2023 02:45:11 +0000</pubDate>
      <link>https://dev.to/aicofounded/learn-dart-programming-with-chatcode-tutor-and-chatgpt-24dp</link>
      <guid>https://dev.to/aicofounded/learn-dart-programming-with-chatcode-tutor-and-chatgpt-24dp</guid>
      <description>&lt;p&gt;The world is currently fascinated with large language models (LLMs), and for good reason. LLMs like ChatGPT can teach us incredible and complex things, but how much can you learn if you don't know the right questions to ask? That's where ChatCode Tutor comes in!&lt;/p&gt;

&lt;p&gt;I recently started the &lt;a href="https://github.com/jtmuller5/The-HustleGPT-Challenge"&gt;#HustleGPT challenge&lt;/a&gt; on Twitter, where I teamed up with a GPT-4 personality called HustleGPT to build a business from scratch on a shoestring budget. After brainstorming ideas with HustleGPT, we came up with a genuinely useful product: the &lt;a href="https://joemuller.gumroad.com/l/kylqvn"&gt;ChatCode Tutor for Dart&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;ChatCode Tutor is a comprehensive script designed to help you learn Dart programming with ChatGPT. It includes 10 sections that cover everything from the basics to advanced topics, guiding you every step of the way.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Introduction to Programming&lt;/li&gt;
&lt;li&gt;Choosing a Programming Language&lt;/li&gt;
&lt;li&gt;Installing and Setting up your Environment&lt;/li&gt;
&lt;li&gt;Basic Concepts and Syntax&lt;/li&gt;
&lt;li&gt;Variables and Data Types&lt;/li&gt;
&lt;li&gt;Control Structures&lt;/li&gt;
&lt;li&gt;Functions&lt;/li&gt;
&lt;li&gt;Error Handling and Debugging&lt;/li&gt;
&lt;li&gt;Intermediate and Advanced Topics&lt;/li&gt;
&lt;li&gt;Practice and Resources&lt;/li&gt;
&lt;li&gt;Interview Prep&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each section comes with a detailed breakdown of topics and a wide range of questions to ask ChatGPT, ensuring a solid understanding of Dart by the end of the tutorial.&lt;/p&gt;

&lt;p&gt;Our 10-part Dart tutorial provides a structured and organized approach to learning the language, offering a clear roadmap to follow instead of piecing together information from various sources. This enables efficient and effective learning, so you can start building your own applications with ease.&lt;/p&gt;

&lt;p&gt;The true value of ChatCode Tutor though, lies in its ability to teach you how to communicate with ChatGPT effectively. By knowing the right questions to ask and recognizing when to seek elaboration, you can unlock the full potential of the best digital assistant humanity has ever known.&lt;/p&gt;

&lt;p&gt;As I stated earlier, the value of these new chatbots is correlated with our ability to communicate with them. Knowing what questions to ask. Recognizing when to ask for elaboration. Identifying when something is plain false. All of these things are critical to extracting knowledge from the internet's new brain. My hope with the ChatCode Tutor is that it gives you the foundation to learn everything you would learn from a full Udemy course while also teaching you how to interact with what is likely the best digital assistant humanity has ever known.&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>dart</category>
      <category>chatgpt</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>Introducing ChatCode Tutor</title>
      <dc:creator>AI Co-Founded</dc:creator>
      <pubDate>Thu, 16 Mar 2023 07:02:17 +0000</pubDate>
      <link>https://dev.to/aicofounded/introducing-chatcode-tutor-revolutionize-your-programming-journey-with-ai-powered-conversations-9cl</link>
      <guid>https://dev.to/aicofounded/introducing-chatcode-tutor-revolutionize-your-programming-journey-with-ai-powered-conversations-9cl</guid>
      <description>&lt;h2&gt;
  
  
  Revolutionize Your Programming Journey with AI-Powered Conversations
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;Learning programming languages can be a daunting task, especially for beginners. While powerful Language Learning Models (LLMs) like GPT-4 have revolutionized the way we learn, they often require users to know which questions to ask. This can be particularly challenging for new developers who may not be familiar with programming concepts and best practices. That's where ChatCode Tutor comes in! ChatCode Tutor is an AI-powered chatbot designed to help you learn programming languages through interactive conversations, providing guidance and direction even if you're unsure of the right questions to ask. Covering various programming languages and core programming concepts, ChatCode Tutor helps you build your programming skills with practical examples and personalized assistance.&lt;/p&gt;

&lt;h3&gt;
  
  
  What is ChatCode Tutor?
&lt;/h3&gt;

&lt;p&gt;ChatCode Tutor is a structured and logical script that covers essential programming concepts, from the basics to intermediate and advanced topics. By using ChatCode Tutor with an AI chatbot, you can have personalized, on-demand assistance throughout your programming journey, learning at your own pace and asking questions whenever you need help.&lt;/p&gt;

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

&lt;h3&gt;
  
  
  Why Choose ChatCode Tutor?
&lt;/h3&gt;

&lt;p&gt;Here are some key reasons why ChatCode Tutor is an excellent choice for learning programming languages:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Personalized Learning&lt;/strong&gt;: AI chatbots adapt to your learning style, pace, and preferences, providing personalized guidance and resources.&lt;br&gt;
&lt;strong&gt;Interactive Experience&lt;/strong&gt;: With ChatCode Tutor, you actively engage in conversations about programming concepts, reinforcing your understanding and promoting better retention of information.&lt;br&gt;
&lt;strong&gt;Learn Anytime, Anywhere&lt;/strong&gt;: AI chatbots are available 24/7, allowing you to learn whenever and wherever it's convenient for you.&lt;br&gt;
&lt;strong&gt;Support for Multiple Languages&lt;/strong&gt;: ChatCode Tutor works with any programming language and can guide you to choose the right language for your needs and goals.&lt;/p&gt;

&lt;h3&gt;
  
  
  How to Use ChatCode Tutor with AI Chatbots
&lt;/h3&gt;

&lt;p&gt;Using ChatCode Tutor with an AI chatbot like GPT-4 is simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href="https://joemuller.gumroad.com/l/kylqvn"&gt;Acquire the ChatCode Tutor script&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Load the script into your AI chatbot platform.&lt;/li&gt;
&lt;li&gt;Start asking questions and engaging in conversations related to programming, following the structured approach provided by the ChatCode Tutor script.&lt;/li&gt;
&lt;li&gt;Practice and reinforce your understanding through practical examples and exercises.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--6YXCJ684--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/74aaupjfm5w1xsworguj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--6YXCJ684--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/74aaupjfm5w1xsworguj.png" alt="Image description" width="723" height="935"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;ChatCode Tutor has the potential to transform your programming learning experience by harnessing the power of AI chatbots. By providing a structured and engaging learning environment, ChatCode Tutor can help you become a proficient programmer in no time. Give ChatCode Tutor a try and witness the impact of AI-powered conversations on your programming journey!&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>programming</category>
      <category>chatgpt</category>
      <category>ai</category>
    </item>
  </channel>
</rss>
