<?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: Javier Alvarado</title>
    <description>The latest articles on DEV Community by Javier Alvarado (@jhonkaman).</description>
    <link>https://dev.to/jhonkaman</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%2F436725%2F7f1e1b78-ebdf-4401-95f3-4e0e35eb7bad.png</url>
      <title>DEV Community: Javier Alvarado</title>
      <link>https://dev.to/jhonkaman</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jhonkaman"/>
    <language>en</language>
    <item>
      <title>The Knowledge Cutoff Problem</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Mon, 10 Feb 2025 21:10:42 +0000</pubDate>
      <link>https://dev.to/jhonkaman/the-knowledge-cutoff-problem-38io</link>
      <guid>https://dev.to/jhonkaman/the-knowledge-cutoff-problem-38io</guid>
      <description>&lt;p&gt;Lately I've been thinking about one problem all LLMs have: the knowledge cutoff problem. Basically, all LLMs have a training cutoff date where they don't know &lt;em&gt;anything&lt;/em&gt; after that date. Here are some examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ChatGPT's knowledge cutoff is October 2023&lt;/li&gt;
&lt;li&gt;Claude 3.5 Sonnet's knowledge cutoff is April 2024&lt;/li&gt;
&lt;li&gt;Gemini 2.0 Flash's knowledge cutoff is August 2024&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Keep in mind, this doesn't mean the LLMs know about everything up to these dates either. For some topics, the knowledge cutoff might be even earlier. (It's also not clear if October 2023 means October 1 or October 31. 🤔)&lt;/p&gt;

&lt;p&gt;In this article, I want to outline some potential solutions to this problem for LLMs and other AI tools.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;tldr:&lt;/strong&gt; For now, you can get around this issue by using an &lt;code&gt;llms-full.txt&lt;/code&gt; file or using an AI tool's web search feature.&lt;/p&gt;

&lt;h2&gt;
  
  
  llms.txt Proposal
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://llmstxt.org/" rel="noopener noreferrer"&gt;llms.txt&lt;/a&gt; is a relatively new proposal designed to make it easier for LLMs to understand information on the web.&lt;/p&gt;

&lt;h3&gt;
  
  
  llms.txt File
&lt;/h3&gt;

&lt;p&gt;The llms.txt proposal seems to have 3 ideas. One idea is to have a file called &lt;code&gt;llms.txt&lt;/code&gt; that lists out the URLs for a website in Markdown with some short descriptions. You can think of it as a sitemap specifically for LLMs. If I'm being honest though, I don't understand how someone would use this format today, since I'm not sure how to get an LLM to accurately follow links in a Markdown file. &lt;/p&gt;

&lt;p&gt;To see what it looks like, you can view &lt;a href="https://svelte.dev/llms.txt" rel="noopener noreferrer"&gt;Svelte's llms.txt file&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  llms-full.txt File
&lt;/h3&gt;

&lt;p&gt;Some developers are creating a file called &lt;code&gt;llms-full.txt&lt;/code&gt; which contains all of the documentation for their tool/library/framework in a single file, converted into Markdown. This idea makes more sense to me, since you can give the LLM all of the information at once and you don't have to worry about it visiting the right URLs. The only bad thing about the &lt;code&gt;llms-full.txt&lt;/code&gt; file is that I haven't seen any info on how project creators' should manage multiple versions of the &lt;code&gt;llms-full.txt&lt;/code&gt; file if their project has multiple major versions.&lt;/p&gt;

&lt;p&gt;To see what it looks like, you can view &lt;a href="https://svelte.dev/llms-full.txt" rel="noopener noreferrer"&gt;Svelte's llms-full.txt file&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Markdown Files
&lt;/h3&gt;

&lt;p&gt;llms.txt does have a third recommendation as well: documentation sites should have Markdown versions of each page. So if you have a page called &lt;code&gt;installation.html&lt;/code&gt;, you should also be able to visit &lt;code&gt;installation.html.md&lt;/code&gt; to see a clean Markdown version of that same information. Once again, I'm not sure how developers are supposed to use this format at the moment. &lt;/p&gt;

&lt;p&gt;To see what it looks like, you can look at this page on the &lt;a href="https://docs.cursor.com/tab/overview.md" rel="noopener noreferrer"&gt;Tab feature from Cursor's documentation&lt;/a&gt;.&lt;/p&gt;




&lt;p&gt;In the next sections, I'll go over how you can use the &lt;code&gt;llms-full.txt&lt;/code&gt; file with LLMs, and also how other tools are working around the knowledge cutoff problem.&lt;/p&gt;

&lt;h2&gt;
  
  
  ChatGPT
&lt;/h2&gt;

&lt;p&gt;ChatGPT has 4 ways of getting around the knowledge cutoff problem.&lt;/p&gt;

&lt;h3&gt;
  
  
  File Upload
&lt;/h3&gt;

&lt;p&gt;First, you can take the &lt;code&gt;llms-full.txt&lt;/code&gt; file, upload it in a chat, and then tell it to use the file to answer your questions.&lt;/p&gt;

&lt;h3&gt;
  
  
  Projects
&lt;/h3&gt;

&lt;p&gt;Second, you can create a Project folder, upload the &lt;code&gt;llms-full.txt&lt;/code&gt; file to the Project, and then add Instructions to the Project telling ChatGPT to answer questions using the file. The Projects feature lets you group related chats together and prevents you from having to upload the same file over and over again every time you start a new chat.&lt;/p&gt;

&lt;h3&gt;
  
  
  Custom GPT
&lt;/h3&gt;

&lt;p&gt;Third, you can create a custom GPT, upload the file &lt;code&gt;llms-full.txt&lt;/code&gt; under the Knowledge section, and then add Instructions telling the GPT to use the file to answer questions.&lt;/p&gt;

&lt;p&gt;One interesting thing about these first 3 methods is that &lt;a href="https://help.openai.com/en/articles/8843948-knowledge-in-gpts#h_c83316debf" rel="noopener noreferrer"&gt;they seem to use some form of RAG under the hood&lt;/a&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Search
&lt;/h3&gt;

&lt;p&gt;Finally, in a normal chat, you can tell ChatGPT to search the web or click the Search button to force it to search the web. Just remember, not every model has this feature. For example, o1 can't search the web.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tips
&lt;/h3&gt;

&lt;p&gt;If you use the &lt;code&gt;llms-full.txt&lt;/code&gt; file, I recommend renaming it to something more descriptive to prevent hallucinations. For example, I've been using Svelte's &lt;code&gt;llms-full.txt&lt;/code&gt; file and renamed it &lt;code&gt;svelte-5-docs.md&lt;/code&gt;. Also, you may have noticed I kept saying you have to tell ChatGPT to use the file. If you don't explicitly tell it that, it won't know to use the file.&lt;/p&gt;

&lt;h2&gt;
  
  
  Claude
&lt;/h2&gt;

&lt;p&gt;Claude also has the ability for users to upload files, so you could try uploading an llms-full.txt to teach it about a new library/framework.&lt;/p&gt;

&lt;p&gt;It also has a Projects feature, so you could create a Project and upload the file there to stay more organized. This is a paid feature though, so I haven't tried it yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  GitHub Copilot
&lt;/h2&gt;

&lt;p&gt;GitHub Copilot doesn't have any special features that I'm aware of for working with documentation websites or &lt;code&gt;llms-full.txt&lt;/code&gt; files, but one thing you could try is adding the &lt;code&gt;llms-full.txt&lt;/code&gt; file to your project folder and then using it as context in your Chat or Edit sessions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cursor
&lt;/h2&gt;

&lt;p&gt;In Cursor, you have the ability to use @ symbols in a chat. One of those symbols is @Docs. Cursor has already crawled and indexed the docs for many popular tools/libraries/frameworks. If you use @Docs and ask it about one of the things it's crawled and indexed, it can use that knowledge to answer your question. You can view the &lt;a href="https://raw.githubusercontent.com/getcursor/crawler/main/docs.jsonl" rel="noopener noreferrer"&gt;list of already crawled docs here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you want Cursor to know about something that it hasn't crawled or indexed yet, you can &lt;a href="https://docs.cursor.com/context/@-symbols/@-docs#add-custom-docs" rel="noopener noreferrer"&gt;add custom docs&lt;/a&gt;. One interesting thing about this feature is that it seems to basically be creating llms-full.txt files behind the scenes based on this &lt;a href="https://forum.cursor.com/t/how-does-docs-crawling-work/264/3" rel="noopener noreferrer"&gt;forum answer&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Windsurf
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://docs.codeium.com/windsurf/web-search#quick-start" rel="noopener noreferrer"&gt;Windsurf also has @ symbols&lt;/a&gt;. More specifically, it has @web and @docs symbols. From what I can gather, @docs is used for documentation Windsurf already knows about, and @web is used for documentation it doesn't know about. I'm not sure if Windsurf is converting the web pages to Markdown behind the scenes like Cursor is.&lt;/p&gt;

&lt;h2&gt;
  
  
  Devin
&lt;/h2&gt;

&lt;p&gt;I was curious how more advanced AI tools were solving this issue, so I looked up the docs for Devin, which was touted last year as the "first AI software engineer." According to &lt;a href="https://docs.devin.ai/learn-about-devin/prompting#provide-references-or-examples" rel="noopener noreferrer"&gt;Devin's documentation&lt;/a&gt;, you can provide links to documentation or Devin can search for documentation independently, so it seems like it's just using web search tools behind the scenes. Again, I'm not sure if Devin converts the documentation to Markdown behind the scenes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Solutions
&lt;/h2&gt;

&lt;p&gt;OpenAI recently did an AMA on Reddit and someone asked about the knowledge cutoff. Someone on the OpenAI team mentioned they are working on the knowledge cutoffs, but emphasized the search feature. In fact, Sam Altman said that now that they have search, &lt;a href="https://www.reddit.com/r/OpenAI/comments/1ieonxv/comment/ma9zhc2/?utm_source=share&amp;amp;utm_medium=web3x&amp;amp;utm_name=web3xcss&amp;amp;utm_term=1&amp;amp;utm_content=share_button" rel="noopener noreferrer"&gt;he personally doesn't think about the knowledge cutoff anymore&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;However, in my experience, I like the answers from llms-full.txt better than answers using search. From my perspective, the answers from search just feel more like a summary of the web results rather than a direct answer. I imagine there's a way to prompt the LLM to give better answers using search, but I'm not sure.&lt;/p&gt;

&lt;p&gt;Given the fact that it'll be hard for every single project out there to adopt the llms.txt standard and the direction OpenAI, Windsurf, and Devin are moving in, I think search will be the ultimate solution in the end (although I do really like the idea behind llms.txt). I think what I'd like to see in the future is an ability to whitelist or prioritize certain URLs, that way I can get the LLM to search the documentation first before consulting the rest of the web.&lt;/p&gt;

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

&lt;p&gt;What are your thoughts on this issue? Have you found other solutions? Let me know in the comments below!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How do you get around an LLM's knowledge cutoff?</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Sat, 25 Jan 2025 22:52:44 +0000</pubDate>
      <link>https://dev.to/jhonkaman/how-do-you-get-around-an-llms-knowledge-cutoff-44be</link>
      <guid>https://dev.to/jhonkaman/how-do-you-get-around-an-llms-knowledge-cutoff-44be</guid>
      <description>&lt;ul&gt;
&lt;li&gt;ChatGPT's knowledge cutoff is October 2023 &lt;/li&gt;
&lt;li&gt;Claude 3.5 Sonnet's knowledge cutoff is April 2024 &lt;/li&gt;
&lt;li&gt;Gemini 2.0 Flash's knowledge cutoff is August 2024&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This means that, by default, the LLMs don't know about updates to languages/libraries/frameworks after these dates. What's your preferred method for working around this? Feel free to include answers for LLMs and/or other AI tools like Cursor, Windsurf, etc.&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>ai</category>
      <category>llm</category>
    </item>
    <item>
      <title>Introducing simpledev.css</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Mon, 16 Sep 2024 21:58:42 +0000</pubDate>
      <link>https://dev.to/jhonkaman/introducing-simpledevcss-15ca</link>
      <guid>https://dev.to/jhonkaman/introducing-simpledevcss-15ca</guid>
      <description>&lt;p&gt;&lt;a href="https://simpledevio.github.io/simpledev-css/" rel="noopener noreferrer"&gt;&lt;strong&gt;simpledev.css&lt;/strong&gt;&lt;/a&gt; is a new CSS framework that I describe as a &lt;em&gt;mostly classless framework&lt;/em&gt;. I call it mostly classless because a lot of the code uses type selectors, so you don't have to add many classes to style your web page. There are some classes, but we try to keep them to a minimum (so far there are only about 42 classes).&lt;/p&gt;

&lt;p&gt;Let's go over some of the features below!&lt;/p&gt;

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

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Mostly classless design:&lt;/strong&gt; It's mostly classless, so you'll see your plain HTML page transform as soon as you add the framework.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Minimal classes for common elements:&lt;/strong&gt; We provide classes for things that are really common: a navbar, making links look like buttons, a basic footer, etc.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Accessibility-focused:&lt;/strong&gt; I'm not an accessibility expert, but I tried my best to incorporate accessibility best practices into the framework. Therefore, the framework has a skip link component, a &lt;code&gt;visually-hidden&lt;/code&gt; class, and we use rems for font sizes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Theme support:&lt;/strong&gt; simpledev.css supports different themes. You can use just light mode, just dark mode, or both.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Minimal JavaScript:&lt;/strong&gt; It's very light on JS. We only use JS for the navbar component. If you're not using the navbar (or you're using the simple navbar component instead), you can skip the JS entirely!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Easy to get started:&lt;/strong&gt; We have a Get Started page that has basic and advanced templates that you can copy or download, a GitHub repo that you can download or use to start a new repo, and a Pen from CodePen to try it directly in your browser.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recipes:&lt;/strong&gt; We also have a Recipes page where you can copy and paste CSS rules into your custom.css file to get things like a sticky navbar, rounded corners, striped tables, and smooth scrolling!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Custom color palettes:&lt;/strong&gt; You can bring your own color palette. simpledev.css doesn't really have any colors by default, so you can pick your own colors and add it to the framework.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modular components:&lt;/strong&gt; You can technically download some of the components and use them individually if you want. Just visit the GitHub repo and download the CSS files you want. Just keep in mind we developed our components on top of Modern Normalize, so you might need to incorporate Modern Normalize to get the same look.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Background
&lt;/h2&gt;

&lt;p&gt;Last year I discovered the awesome-css-frameworks repo on GitHub. It contains a long list of CSS frameworks grouped into different categories. I was particularly interested in the section on Classless CSS frameworks. I liked the idea of linking to a CSS file and instantly changing the way an HTML page looks without having to modify your HTML.&lt;/p&gt;

&lt;p&gt;Initially, I was inspired by the framework called Water.css in the list, but later on I drew more inspiration from Pico.css, another classless framework.&lt;/p&gt;

&lt;p&gt;Eventually I decided to try to create my own framework. However, I wanted it to be a little different:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I decided to just use vanilla CSS instead of Sass. This is because I wanted it to be easy for other people to try the framework and also learn from the source code.&lt;/li&gt;
&lt;li&gt;I didn't want it to be purely classless, because I think there are some things that require CSS classes.&lt;/li&gt;
&lt;li&gt;Pico is probably the best looking classless CSS framework, but I feel that some of the elements/components are a little big, so I wanted my elements/components to be smaller.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Thanks for reading this post! I have a few favors to ask:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;a href="https://github.com/simpledevio/simpledev-css" rel="noopener noreferrer"&gt;&lt;strong&gt;Please star the repo on GitHub!&lt;/strong&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Try building a small project with the framework&lt;/li&gt;
&lt;li&gt;If you notice any problems, please create an issue on GitHub&lt;/li&gt;
&lt;li&gt;If you have any feature requests, please start a discussion on GitHub&lt;/li&gt;
&lt;li&gt;If you have an idea for component, try building it on CodePen!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Leave a comment below if you have any questions or suggestions! I'll also probably follow up with a tutorial on simpledev.css later on.&lt;/p&gt;

</description>
      <category>css</category>
      <category>frontend</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>All Simple Dev tutorials are now FREE!</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Wed, 17 Aug 2022 19:04:15 +0000</pubDate>
      <link>https://dev.to/simpledevio/all-simple-dev-tutorials-are-now-free-4p9h</link>
      <guid>https://dev.to/simpledevio/all-simple-dev-tutorials-are-now-free-4p9h</guid>
      <description>&lt;p&gt;&lt;a href="https://simpledev.io/path/"&gt;All Simple Dev tutorials&lt;/a&gt; are now free! We recently decided to make all of our tutorials publicly available. Previously, only the HTML course was free, and a few other courses could be unlocked with a free membership. A paid membership was required for full access.&lt;/p&gt;

&lt;h2&gt;
  
  
  Memberships
&lt;/h2&gt;

&lt;p&gt;Now you can read any tutorial on the site for free. You can still &lt;a href="https://simpledev.io/sign-up/"&gt;sign up for a paid membership&lt;/a&gt;, which allows you to track your progress and mark tutorials complete. This is a great option if you'd like to support the site on a monthly basis. We hope to add more features to the paid membership in the future. Also, if you sign up for a paid membership, the Donate button in the corner and the Donation/Member banner at the top of each tutorial is hidden.&lt;/p&gt;

&lt;h2&gt;
  
  
  Donations
&lt;/h2&gt;

&lt;p&gt;Speaking of donations, you can now donate to Simple Dev using the Donate button in the corner! The Donate button is powered by Ko-fi, which is a service that allows websites and creators to accept donations without taking a fee. You can also donate directly on &lt;a href="https://ko-fi.com/javidevio"&gt;our Ko-fi page&lt;/a&gt;. This is a great option if you'd like to make a one-time donation to support the site.&lt;/p&gt;

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

&lt;p&gt;If you're new to Simple Dev, it's a website designed to teach coding through short, easy-to-read, and up-to-date tutorials. There are over 300 tutorials on the site, covering HTML, CSS, JavaScript, VS Code, and more, and now you can read them all for free. Visit &lt;a href="https://simpledev.io/"&gt;Simple Dev&lt;/a&gt; today to get started.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>webdev</category>
      <category>html</category>
      <category>css</category>
    </item>
    <item>
      <title>Simple Dev Improvements</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Wed, 30 Jun 2021 22:02:59 +0000</pubDate>
      <link>https://dev.to/simpledevio/simple-dev-improvements-3e5d</link>
      <guid>https://dev.to/simpledevio/simple-dev-improvements-3e5d</guid>
      <description>&lt;p&gt;We've been making several changes to &lt;a href="https://simpledev.io/"&gt;Simple Dev&lt;/a&gt; recently. Our overarching goal with these changes is to make the site better for beginners (although intermediate developers may still benefit from these changes as well). &lt;/p&gt;

&lt;p&gt;All of these changes are still ongoing, so you can expect to see more in the future. Read on to learn more.&lt;/p&gt;

&lt;h2&gt;
  
  
  Downloadable exercises
&lt;/h2&gt;

&lt;p&gt;The biggest change is that we've created downloadable exercises to go with our tutorials. This will make it easier to practice your coding skills with our tutorials. We've created exercises for most sections so far and will finish creating exercises for the other sections soon.&lt;/p&gt;

&lt;h2&gt;
  
  
  More Pens
&lt;/h2&gt;

&lt;p&gt;We've added Pens from CodePen to tutorials that were missing them before, including our JavaScript and Markdown tutorials.&lt;/p&gt;

&lt;h2&gt;
  
  
  More screenshots
&lt;/h2&gt;

&lt;p&gt;We've added more screenshots to different tutorials on the site. We especially focused on adding relevant screenshots to our VS Code tutorials.&lt;/p&gt;

&lt;h2&gt;
  
  
  More info
&lt;/h2&gt;

&lt;p&gt;We've been adding more info to our tutorials to make them more beginner-friendly, especially our JavaScript tutorials. Now you can learn how to write the code and have a better understanding of what it means.&lt;/p&gt;

&lt;h2&gt;
  
  
  VS Code Tips
&lt;/h2&gt;

&lt;p&gt;We've started including VS Code Tips directly inside our HTML, CSS, and other tutorials where possible. This makes it easier to learn how to quickly generate tags, properties, values and more and become a more productive developer. (We still have a separate VS Code Tips section as well for tutorials on productivity and customization.)&lt;/p&gt;




&lt;h2&gt;
  
  
  Minor changes
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Rearranged Path
&lt;/h3&gt;

&lt;p&gt;The Path has been rearranged. We've divided the first set of tutorials into Text Editors 1, Web 1, Text Editors 2, and Web 2. Since we're focused on teaching VS Code now, the Atom sections have been moved to the bottom as bonus sections. Bootstrap also comes before JavaScript now.&lt;/p&gt;

&lt;h3&gt;
  
  
  Projects
&lt;/h3&gt;

&lt;p&gt;We created some simple projects to cap off our HTML, CSS, and Bootstrap sections. We hope to add more projects in the future.&lt;/p&gt;




&lt;h2&gt;
  
  
  Feedback
&lt;/h2&gt;

&lt;p&gt;We hope you enjoy these changes we've made to Simple Dev, especially those of you just starting out on your coding journey. If you have any feedback, leave a comment below!&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>javascript</category>
      <category>codepen</category>
    </item>
    <item>
      <title>New: Exercises on Simple Dev!</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Tue, 22 Jun 2021 22:24:40 +0000</pubDate>
      <link>https://dev.to/simpledevio/new-exercises-on-simple-dev-5h2b</link>
      <guid>https://dev.to/simpledevio/new-exercises-on-simple-dev-5h2b</guid>
      <description>&lt;p&gt;We recently created downloadable exercises to go along with the tutorials on Simple Dev. We created exercises for the &lt;a href="https://simpledev.io/html/html-basics/"&gt;HTML&lt;/a&gt;, &lt;a href="https://simpledev.io/markdown/markdown-basics/"&gt;Markdown&lt;/a&gt;, &lt;a href="https://simpledev.io/css/css-basics/"&gt;CSS&lt;/a&gt;, &lt;a href="https://simpledev.io/bootstrap/bootstrap-4-grid-basics/"&gt;Bootstrap 4&lt;/a&gt;, and &lt;a href="https://simpledev.io/javascript/javascript-basics/"&gt;JavaScript&lt;/a&gt; sections. The goal here is to let users practice coding skills inside their text editor.&lt;/p&gt;

&lt;p&gt;You can find the exercises by visiting the Topic pages above. You can find a link to download the exercises in the Summary section.&lt;/p&gt;

&lt;p&gt;The exercises are hosted on GitHub. You can download them by clicking the green &lt;strong&gt;Code&lt;/strong&gt; button and selecting &lt;strong&gt;Download ZIP&lt;/strong&gt;. You can then extract the files into a new folder and then open that folder in your favorite text editor.&lt;/p&gt;

&lt;p&gt;Each tutorial has its own exercise folder, and the exercise folders are grouped into sections. Each exercise folder has its own README file that contains the instructions for what to do.&lt;/p&gt;

&lt;p&gt;This is still a new feature on Simple Dev, so we'd appreciate any feedback you have. You can fill out our &lt;a href="https://simpledev.io/feedback/"&gt;feedback form&lt;/a&gt; if you have comments, questions, or suggestions on this feature.&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>markdown</category>
      <category>javascript</category>
    </item>
    <item>
      <title>New: VS Code and Atom sections!</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Tue, 02 Mar 2021 20:57:27 +0000</pubDate>
      <link>https://dev.to/simpledevio/new-vs-code-and-atom-sections-2c5b</link>
      <guid>https://dev.to/simpledevio/new-vs-code-and-atom-sections-2c5b</guid>
      <description>&lt;p&gt;Recently we added 4 new sections to Simple Dev: &lt;a href="https://simpledev.io/vscode/vscode-basics/"&gt;VS Code Basics&lt;/a&gt;, &lt;a href="https://simpledev.io/vscode/vscode-tips/"&gt;VS Code Tips&lt;/a&gt;, &lt;a href="https://simpledev.io/atom-text-editor/atom-basics/"&gt;Atom Basics&lt;/a&gt;, and &lt;a href="https://simpledev.io/atom-text-editor/atom-tips/"&gt;Atom Tips&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Technically speaking, these are not brand new sections. Previously, we had 2 sections that already covered VS Code and Atom: Text Editor Basics and Text Editor Tips. Each tutorial in those sections covered how to perform a certain action in both VS Code and Atom. However, we felt that now was a good time to split those tutorials up so that VS Code users could focus on their content and Atom users could focus on their own content.&lt;/p&gt;

&lt;p&gt;The hope is that now we can add more tutorials on VS Code with this new structure. Acccording to the &lt;a href="https://insights.stackoverflow.com/survey/2019#development-environments-and-tools"&gt;Stack Overflow 2019 Developer Survey&lt;/a&gt;, VS Code is the most popular developer tool, and it's much more popular than Atom. Because of those facts, we feel that we should focus more on VS Code for now (although we may add some new Atom tutorials here and there).&lt;/p&gt;

&lt;p&gt;One of our goals with Simple Dev is to teach developers how to code locally on their own devices, so these are very important sections to us. Not every course spends time explaining how to use a text editor. We pride ourselves in teaching coders how to code from the very beginning, starting with how to use a text editor.&lt;/p&gt;

&lt;p&gt;If you have any questions or suggestions, leave a comment below!&lt;/p&gt;

</description>
      <category>vscode</category>
    </item>
    <item>
      <title>More intuitive shell commands</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Thu, 10 Dec 2020 18:47:26 +0000</pubDate>
      <link>https://dev.to/jhonkaman/more-intuitive-shell-commands-288a</link>
      <guid>https://dev.to/jhonkaman/more-intuitive-shell-commands-288a</guid>
      <description>&lt;p&gt;Recently I experimented with an idea to create natural language shell commands. Some of the shell commands can be unintuitive and a little hard to remember, so I decided to use aliases to make them easier to remember.&lt;/p&gt;

&lt;p&gt;I'm on macOS, so I'm using zsh for my shell. However, the snippet below should work in bash as well (you would have to add the snippet to your &lt;code&gt;~/.bashrc&lt;/code&gt; or &lt;code&gt;~/.bash_profile&lt;/code&gt; file instead).&lt;/p&gt;

&lt;p&gt;I added the following code snippet to my &lt;code&gt;~/.zshrc&lt;/code&gt; file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;alias help='man'
alias show='less -S'
alias view='less -S'
alias create='touch'
alias copy='cp -iv'
alias move='mv -iv'
alias rename='mv -iv'
alias delete='rm -iv'
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After adding these aliases and opening a new terminal tab or window, I was able to start using them. Here are some examples of commands you can use:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;show index.html
create index.html
copy index.html about.html
move index.html folder-name
rename folder-name other-folder-name
delete index.html
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Goals
&lt;/h2&gt;

&lt;p&gt;I had 2 goals in mind while creating these aliases. The first was to make the command names a little more intuitive, without making them too long. The other goal was to add in options that would make the commands a little more user-friendly. For example, the &lt;code&gt;-i&lt;/code&gt; option makes the &lt;code&gt;copy&lt;/code&gt;, &lt;code&gt;move&lt;/code&gt;, &lt;code&gt;rename&lt;/code&gt;, and &lt;code&gt;delete&lt;/code&gt; commands interactive to prevent users from accidentally overwriting or deleting files.&lt;/p&gt;

&lt;h2&gt;
  
  
  Notes
&lt;/h2&gt;

&lt;p&gt;I noticed a couple of things while making these aliases. The first is that a couple of commands have 2 aliases. For example, I wasn't sure whether &lt;code&gt;show&lt;/code&gt; or &lt;code&gt;view&lt;/code&gt; would be a better alias for the &lt;code&gt;less&lt;/code&gt; command, so I added both. The &lt;code&gt;mv&lt;/code&gt; command is used to move and rename files, so I created 2 aliases to correspond with these 2 actions.&lt;/p&gt;

&lt;p&gt;I also realized the &lt;code&gt;help&lt;/code&gt; command doesn't work with these aliases (so something like &lt;code&gt;help show&lt;/code&gt; doesn't work, for example). The one exception is &lt;code&gt;help help&lt;/code&gt;, which does bring up the man page for the &lt;code&gt;man&lt;/code&gt; command.&lt;/p&gt;

&lt;h2&gt;
  
  
  Learn more about the shell
&lt;/h2&gt;

&lt;p&gt;If you want to learn more about using the terminal and shell, you can visit my website &lt;a href="https://simpledev.io/"&gt;Simple Dev&lt;/a&gt;. You can learn about the shell, Git, and web technologies like HTML and CSS.&lt;/p&gt;

</description>
      <category>bash</category>
    </item>
    <item>
      <title>New: Improved site navigation</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Mon, 16 Nov 2020 19:08:22 +0000</pubDate>
      <link>https://dev.to/simpledevio/new-improved-site-navigation-1kaa</link>
      <guid>https://dev.to/simpledevio/new-improved-site-navigation-1kaa</guid>
      <description>&lt;p&gt;We recently added a new navigation feature to Simple Dev called module navigation. With our new module navigation, links to related tutorials will appear on the right side of the tutorial you're currently viewing (or on the bottom if you're viewing the site on a smartphone). &lt;/p&gt;

&lt;p&gt;For example, if you're currently looking at a tutorial on a CSS selector, you will see all of the other tutorials on CSS selectors on the side of the screen, like in the picture below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ikq2FHOf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kzgzl33ydezdkwpawz6r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ikq2FHOf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kzgzl33ydezdkwpawz6r.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This makes it easier to jump around related tutorials.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's a module?
&lt;/h2&gt;

&lt;p&gt;Currently, we group related tutorials into what we call Topic pages. We have Topic pages for HTML, CSS, Git, and many other topics. The modules for the topic are the subsections listed on the Topic page. For example, the CSS Topic page has the following modules: Introduction, Syntax, Values, Properties, and Selectors, as well as a few others.&lt;/p&gt;

&lt;p&gt;Some modules only contain one tutorial at the moment, but most contain several tutorials.&lt;/p&gt;

&lt;h2&gt;
  
  
  Moving between modules
&lt;/h2&gt;

&lt;p&gt;If you want to move between different modules, you have a couple of options. The easiest thing to do is to click on the  Topic link that is listed on the top of each tutorial to go back to the main Topic page. There you can see all of the modules and all of the tutorials in that topic.&lt;/p&gt;

&lt;p&gt;Alternatively, if you're at the first or last tutorial in a module, you can use the Next and Previous navigation links at the bottom of the tutorial to get to the next or previous module (if there is one).&lt;/p&gt;

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

&lt;p&gt;As always, if you want to find information even faster, you can always use our powerful search feature to instantly find any tutorial on the site.&lt;/p&gt;

&lt;p&gt;Let us know what you think of this new feature in the comments below!&lt;/p&gt;

</description>
    </item>
    <item>
      <title>New: Jekyll tutorials!</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Fri, 13 Nov 2020 23:33:27 +0000</pubDate>
      <link>https://dev.to/simpledevio/new-jekyll-tutorials-440n</link>
      <guid>https://dev.to/simpledevio/new-jekyll-tutorials-440n</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--1FKEg14i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3w86allr8voge0h0kxwt.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--1FKEg14i--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3w86allr8voge0h0kxwt.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We recently released the first batch of our Jekyll tutorials! You can see them on our &lt;a href="https://simpledev.io/jekyll/jekyll-basics/"&gt;Jekyll Basics&lt;/a&gt; topic page.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Jekyll?
&lt;/h2&gt;

&lt;p&gt;Jekyll is a static site generator, which means it's a tool that makes it easier to build static sites. When building a multi-page static site using just HTML, you end up with a lot of code you have to repeat on each page (if each page is using the same general layout). Jekyll, on the other hand, lets you reuse code by creating common layouts and template parts that can be used with each page, without having to copy and paste large chunks of code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Before You Start
&lt;/h2&gt;

&lt;p&gt;To get the most out of these tutorials, you should be familiar with HTML, CSS, Sass, and the terminal (though you don't have to be an expert at all of them). Luckily for you, we have tutorials for all of these topics! Check out &lt;a href="https://simpledev.io/"&gt;our home page&lt;/a&gt; for links to all of our tutorials.&lt;/p&gt;

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

&lt;p&gt;Let us know what you think of these tutorials in the comments below! We'll be adding more Jekyll tutorials soon.&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>New: "Cheat sheet" view for Topic pages</title>
      <dc:creator>Javier Alvarado</dc:creator>
      <pubDate>Fri, 02 Oct 2020 00:23:32 +0000</pubDate>
      <link>https://dev.to/simpledevio/new-cheat-sheet-view-for-topic-pages-381l</link>
      <guid>https://dev.to/simpledevio/new-cheat-sheet-view-for-topic-pages-381l</guid>
      <description>&lt;p&gt;We recently added code snippets directly to some of our Topic pages. Now users can easily skim through them to find what they're looking for.&lt;/p&gt;

&lt;p&gt;The new Topic pages look like this:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s---A_etJdL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/lqrz7s1wct6c1ug2uksf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s---A_etJdL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/lqrz7s1wct6c1ug2uksf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We're calling this new layout the "cheat sheet" view because it allows you to get information at a glance.&lt;/p&gt;

&lt;p&gt;For comparison, our old Topic pages consisted of lists of links, like this:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Oy4JrsTp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dugb7ivtjdoyc47rowji.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Oy4JrsTp--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/dugb7ivtjdoyc47rowji.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;They were functional, but hard to skim through, especially on the pages with a lot of tutorials. To be clear, some of the Topic pages are still keeping the old format for now (like the Text Editor Basics page in the example above), but that may change in the future.&lt;/p&gt;

&lt;p&gt;You can check out our list of Topic pages on the &lt;a href="https://simpledev.io/"&gt;Simple Dev home page&lt;/a&gt;. Try viewing the HTML, CSS, Git, and npm pages to see examples of the new layout.&lt;/p&gt;

&lt;p&gt;If you want to find information even faster, don't forget that you can always use our powerful search feature to instantly find any tutorial on the site.&lt;/p&gt;

&lt;p&gt;Have fun coding!&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>javascript</category>
      <category>git</category>
    </item>
  </channel>
</rss>
