<?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: Salika Dave</title>
    <description>The latest articles on DEV Community by Salika Dave (@salika_dave).</description>
    <link>https://dev.to/salika_dave</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%2F1271424%2F01f25f81-743e-4643-9710-d139500ac666.jpg</url>
      <title>DEV Community: Salika Dave</title>
      <link>https://dev.to/salika_dave</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/salika_dave"/>
    <language>en</language>
    <item>
      <title>Rubber Ducker - GPT + 🦆💻</title>
      <dc:creator>Salika Dave</dc:creator>
      <pubDate>Wed, 24 Apr 2024 17:29:16 +0000</pubDate>
      <link>https://dev.to/salika_dave/rubber-ducker-gpt--2bcm</link>
      <guid>https://dev.to/salika_dave/rubber-ducker-gpt--2bcm</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/devteam/join-us-for-the-coze-ai-bot-challenge-3000-in-prizes-4dp7"&gt;Coze AI Bot Challenge&lt;/a&gt;: Bot Innovator.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.coze.com/s/ZmFquWNtX/"&gt;Rubber Ducker&lt;/a&gt; 🦆 is a bot that can be your companion for rubber duck debugging. This is a method used by programmers to debug errors in their code. The idea of explaining it to an inanimate object like a duck requires one to explain ideas at the simplest level that in turn might help in arriving at a solution. However, &lt;em&gt;Rubber Ducker&lt;/em&gt; operates in two modes, like a rubber duck where it will &lt;em&gt;read&lt;/em&gt; your queries and try to understand you, and in the other mode, will actually help you debug the issue you explained. Apart from Coze, this bot is also available on &lt;em&gt;Discord&lt;/em&gt;. Integrate it with your server and get started by messaging @Rubber Ducker!&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Try the bot &lt;a href="https://www.coze.com/s/ZmFquWNtX/"&gt;here&lt;/a&gt; and on Discord &lt;a href="https://discord.com/api/oauth2/authorize?client_id=1232722379927588954&amp;amp;permissions=8797166831616&amp;amp;scope=bot"&gt;here&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiqywz0xmfxjrw4xduwrt.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiqywz0xmfxjrw4xduwrt.png" alt="Rubber Ducker demo image" width="800" height="674"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Your Configuration
&lt;/h2&gt;

&lt;p&gt;Persona and Skills&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# Character
You're a companionship tool for software developers, playing an essential role in the rubber duck debugging process. Your key feature is your ability to switch between two distinct modes based on the user's request. By default you are rubber duck mode on. Set the value of the rubber_duck_mode in the database to True.

## Skills
### Skill 1: Rubber Duck Mode On
- When the user turns on "rubber duck mode,", set the value of the rubber_duck_mode in the database to True. Respond to all user prompts, regardless of their nature, with a simple, understanding "okay...". If the users ask you to roleplay another animal or character, politely refuse and say you are a rubber duck. Do not use auto-suggestion in this mode. 

### Skill 2: Rubber Duck Mode Off
- When the developer switches off "rubber duck mode," you are free to interact and respond to the user's prompts as normally expected. Use the Stack Overflow Search API to search for user queries and respond appropriately. Set the value of the rubber_duck_mode in the database to False. Use auto-suggestion in this mode. 

## Constraints
- Never answer questions or elaborate further while in "rubber duck mode." Stick solely to responding with "okay..." OR "I see ..." OR ask a simple question that might be relevant. Do not ask follow up questions. If the user gives a wrong answer, make a suggestion to the user, however remind the user that you are just a bot and that they know better. 
- Be responsive and communicative when the "rubber duck mode" is off.
- Never deviate from the user's chosen mode. Promptly switch between modes based on user instructions.
- Restrict the conversation to software development only.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Plugins&lt;/p&gt;

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

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;I came across this idea when I read a post on &lt;a href="https://dev.to/anitaolsen/are-you-into-rubber-duck-debugging-3ndm"&gt;#discuss&lt;/a&gt; on rubber duck debugging by &lt;a class="mentioned-user" href="https://dev.to/anitaolsen"&gt;@anitaolsen&lt;/a&gt; . Coze makes it so much easier to prototype ideas that require a GPT backend so you can take feedback from your users and test out the idea. If you haven't tried it yet, you must! 💫&lt;br&gt;
Let me know in the comments below if you find issues with this bot or you have ideas to make it better!  😀&lt;/p&gt;

</description>
      <category>cozechallenge</category>
      <category>devchallenge</category>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>BlogWithMe ⚡</title>
      <dc:creator>Salika Dave</dc:creator>
      <pubDate>Fri, 19 Apr 2024 17:53:10 +0000</pubDate>
      <link>https://dev.to/salika_dave/blogwithme-324i</link>
      <guid>https://dev.to/salika_dave/blogwithme-324i</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/devteam/join-us-for-the-coze-ai-bot-challenge-3000-in-prizes-4dp7"&gt;Coze AI Bot Challenge&lt;/a&gt;: Bot Innovator.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://www.coze.com/store/bot/7359202576719495174?bot_id=true"&gt;BlogWithMe&lt;/a&gt; is an AI assistant that can help technical bloggers evade "writer's block". It is meant to assist a user with:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Brainstorming ideas for their next blog&lt;/li&gt;
&lt;li&gt;Assess a user's confidence in a skill level from their contributions on GitHub&lt;/li&gt;
&lt;li&gt;Dive into other relevant GitHub repositories and issues, using these as a basis for unique blog inspiration&lt;/li&gt;
&lt;li&gt;Provide straightforward explanation for technical terms to beginners&lt;/li&gt;
&lt;li&gt;Provide a framework to follow for a blog post &lt;/li&gt;
&lt;li&gt;Generate a suitable cover image for the blog post if the user requires one&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Try the bot &lt;a href="https://www.coze.com/store/bot/7359202576719495174?bot_id=true"&gt;here&lt;/a&gt;&lt;/p&gt;

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

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

&lt;h2&gt;
  
  
  Your Configuration
&lt;/h2&gt;

&lt;p&gt;Plugins used:&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmtc1s22089iz8tmc7k1v.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmtc1s22089iz8tmc7k1v.png" alt="Persona and Prompts" width="555" height="744"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Journey
&lt;/h2&gt;

&lt;p&gt;I like to share my ideas with the community here on DEV but I am apprehensive about writing blogs. I had questions - &lt;em&gt;how does one find a good topic to write about?&lt;/em&gt; &lt;em&gt;can AI help us technical bloggers evade writer's block?&lt;/em&gt; &lt;em&gt;how can I add more value to the content I publish?&lt;/em&gt; . That's how I came up with the idea of using AI to help me brainstorm ideas and write quality content. For the next steps, I want to work on improving the kind of follow up questions generated by the prompt and exploring the use of more APIs to curate content that is more appropriate to the user skill level. &lt;/p&gt;

&lt;p&gt;The Coze platform is very intuitive and makes it extremely easy to build a bot. I was able to dive right in with the help of a well-written documentation.&lt;/p&gt;

&lt;p&gt;How can we add more purpose to this bot? Let's chat in the comments below!&lt;/p&gt;

&lt;p&gt;&lt;em&gt;FYI:&lt;/em&gt; The cover image for this post has been generated by this bot! A sample conversation of writing this post itself is available on the bot demo page. &lt;/p&gt;

</description>
      <category>cozechallenge</category>
      <category>devchallenge</category>
      <category>ai</category>
      <category>machinelearning</category>
    </item>
    <item>
      <title>Understanding Technical Research Papers</title>
      <dc:creator>Salika Dave</dc:creator>
      <pubDate>Thu, 18 Apr 2024 21:26:34 +0000</pubDate>
      <link>https://dev.to/salika_dave/understanding-technical-research-papers-1c1f</link>
      <guid>https://dev.to/salika_dave/understanding-technical-research-papers-1c1f</guid>
      <description>&lt;p&gt;When I first began, it felt incredibly overwhelming because I lacked context and dived right in. This post aims to share my insights to simplify the journey for others just starting. It's a summary of my learnings on how to get the more out reading efficiently.&lt;/p&gt;

&lt;h3&gt;
  
  
  TLDR;
&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;Pass 1:&lt;/em&gt; abstract, keywords, introduction, conclusion&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Pass 2:&lt;/em&gt; methodology, experiments, results&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Pass 3:&lt;/em&gt; Summarize, identify key strengths, weaknesses and possible directions of future work.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Process
&lt;/h2&gt;

&lt;p&gt;In the initial stages, divide your reading into a three-pass process.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pass 1
&lt;/h3&gt;

&lt;p&gt;Skim through the entire paper. Read the abstract, keywords, introduction and conclusion. Make notes of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;technical terms that are new to you&lt;/li&gt;
&lt;li&gt;key contributions and claims made by the paper&lt;/li&gt;
&lt;li&gt;questions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Before you begin Pass 2, study about the technical terms you need help understanding. This will clear a lot of the questions you have in Pass 1.  &lt;/p&gt;

&lt;h3&gt;
  
  
  Pass 2
&lt;/h3&gt;

&lt;p&gt;With a newfound understanding of the technical terms, now look at the methodology or algorithms(if any) mentioned by the paper. Next, move on to the experimental setup and results.&lt;br&gt;
Makes notes of:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;technical terms that are new to you&lt;/li&gt;
&lt;li&gt;any new vital contributions you see to add to the list from the first pass&lt;/li&gt;
&lt;li&gt;do you have answers to your questions from the first pass?&lt;/li&gt;
&lt;li&gt;new questions&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Pass 3
&lt;/h3&gt;

&lt;p&gt;These are some questions you can ask to summarize your understanding:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What is the problem being solved by the authors?&lt;/li&gt;
&lt;li&gt;What is the proposed methodology?&lt;/li&gt;
&lt;li&gt;How were the experiments structured?&lt;/li&gt;
&lt;li&gt;How do the results correlate?&lt;/li&gt;
&lt;li&gt;What is the possible direction for future work?&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Where the learning &lt;em&gt;really&lt;/em&gt; begins
&lt;/h3&gt;

&lt;p&gt;One of the best ways to build more context about the problem being solved is to read the section on related work. But beware, it is easy to get lost in the rabbit hole (however, a fruitful diversion in this case) because there is a wealth of knowledge. This helps build an understanding of where the paper falls in the current realm of research.  &lt;/p&gt;

&lt;p&gt;Another essential technique to apply after reading the paper is think about the possible areas in which the work presented by the paper can be further extended. More often than not, published works can be incremental updates to work done in a previous paper. Identify possible shortcomings of an approach might give you a direction for the following line of your work!&lt;/p&gt;

&lt;p&gt;Devote time towards exploring the codebase of the published work (if available). Running your experiments and trying to reproduce the paper results is an excellent way to get more insights.&lt;/p&gt;

&lt;p&gt;Mastering the art of reading papers and grasping the key insights is a great skill. This method is a subjective process and I would love to hear from you if you have ideas on improving this process.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://paperswithcode.com/"&gt;Papers With Code&lt;/a&gt; is one of the good resources to get you to get started. &lt;/p&gt;

</description>
      <category>research</category>
      <category>beginners</category>
      <category>computerscience</category>
      <category>ai</category>
    </item>
    <item>
      <title>A quick byte of Fetch API 🍪</title>
      <dc:creator>Salika Dave</dc:creator>
      <pubDate>Mon, 01 Apr 2024 06:59:58 +0000</pubDate>
      <link>https://dev.to/salika_dave/a-quick-byte-of-fetch-18lc</link>
      <guid>https://dev.to/salika_dave/a-quick-byte-of-fetch-18lc</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for DEV Challenge v24.03.20, One Byte Explainer: Browser API or Feature.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Explainer
&lt;/h2&gt;

&lt;p&gt;If you are trying to GET a URL, make an async request to &lt;code&gt;fetch(URL)&lt;/code&gt;. Resolve the promise and you will have a response. But if you reached a 4xx or a 5xx, prepare to handle it with a catch(). Headers in fetch() are your best friends to POST data to a URL.&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional Context
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;How did I think about this?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;As a JavaScript developer, I wanted the one-byte explainer to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tell me the new concepts, if I am seeing this API for the first time &lt;strong&gt;OR&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Refresh my memory of it's usage, if I have worked it with earlier.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In my opinion to use the Fetch API one must be aware of the following concepts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;Asynchronous requests:&lt;/em&gt; &lt;code&gt;fetch()&lt;/code&gt; makes a network request without blocking the main JavaScript thread of execution.&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Promises:&lt;/em&gt; For understanding how this API works and what to expect when handling the return values (i.e. resolving the response) and errors during API fetch (i.e. catch())&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;Headers:&lt;/em&gt; These will differentiate the usage of this API to make HTTP GET, POST and many requests. &lt;/li&gt;
&lt;li&gt;
&lt;em&gt;HTTP Error Codes:&lt;/em&gt; We are web developers and of course we hate 4xx errors codes in our consoles.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;... and hence their inclusion in the one-byte explainer!&lt;/p&gt;

&lt;p&gt;All credits to &lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Basic_concepts"&gt;MDN&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;All work on this prompt challenge is an individual effort.&lt;/p&gt;

</description>
      <category>frontendchallenge</category>
      <category>devchallenge</category>
      <category>javascript</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
