<?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: keith</title>
    <description>The latest articles on DEV Community by keith (@kburrus).</description>
    <link>https://dev.to/kburrus</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4136086%2Ff7fdf4f2-370a-4b95-8df9-65cb07d7400c.png</url>
      <title>DEV Community: keith</title>
      <link>https://dev.to/kburrus</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kburrus"/>
    <language>en</language>
    <item>
      <title>What 40 recent Base launches look like in the data (free 20-row sample)</title>
      <dc:creator>keith</dc:creator>
      <pubDate>Tue, 22 Sep 2026 13:09:07 +0000</pubDate>
      <link>https://dev.to/kburrus/what-40-recent-base-launches-look-like-in-the-data-free-20-row-sample-5gce</link>
      <guid>https://dev.to/kburrus/what-40-recent-base-launches-look-like-in-the-data-free-20-row-sample-5gce</guid>
      <description>&lt;p&gt;A small sample is more useful than a loud claim. I reviewed 40 recent Base launches and pulled 20 rows so the measurement choices are visible. This is a descriptive snapshot, not a leaderboard or a prediction.&lt;/p&gt;

&lt;p&gt;Scanner: &lt;a href="https://anansidata.xyz/scanner.html" rel="noopener noreferrer"&gt;https://anansidata.xyz/scanner.html&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Free 20-row sample
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;token&lt;/th&gt;
&lt;th&gt;venue&lt;/th&gt;
&lt;th&gt;liq ETH&lt;/th&gt;
&lt;th&gt;funded&lt;/th&gt;
&lt;th&gt;clean&lt;/th&gt;
&lt;th&gt;status&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;XCHAT&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.59&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;unknown&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1KTO100M&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.57&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MAG7Xon&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;2.50&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LAPTOP&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.44&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;BILLY&lt;/td&gt;
&lt;td&gt;V3&lt;/td&gt;
&lt;td&gt;4.00&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SPCX&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.61&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LJOHN&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;2.50&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GB&lt;/td&gt;
&lt;td&gt;Aero V2&lt;/td&gt;
&lt;td&gt;2.19&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cobee&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;15.20&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1KTO100M&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.48&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;MILO&lt;/td&gt;
&lt;td&gt;V3&lt;/td&gt;
&lt;td&gt;1.04&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;yes&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;CHUBBY&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.58&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;BELONG&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;9.19&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LIQUIDBGT&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.49&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JBLon&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;2.50&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;XCHAT&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.58&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SPY&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;2.52&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;XCHAT&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.47&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LIQUIDBGT&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;1.54&lt;/td&gt;
&lt;td&gt;1m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;dead&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Grok&lt;/td&gt;
&lt;td&gt;V2&lt;/td&gt;
&lt;td&gt;15.22&lt;/td&gt;
&lt;td&gt;0m&lt;/td&gt;
&lt;td&gt;no&lt;/td&gt;
&lt;td&gt;alive&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;In these 20 rows, 2 are marked clean, 12 are alive, 7 are dead, and 1 is unknown. The useful questions are how “clean” was defined, how quickly liquidity appeared, and which findings can be independently checked on-chain. Treat the sample as a starting point for inspection, not a conclusion.&lt;/p&gt;

&lt;p&gt;Full pack — $5: &lt;a href="https://buy.stripe.com/00w14pgOKeuUcJM72C2ZO0e" rel="noopener noreferrer"&gt;https://buy.stripe.com/00w14pgOKeuUcJM72C2ZO0e&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Not investment advice. AnansiData only.&lt;/p&gt;

</description>
      <category>data</category>
      <category>blockchain</category>
    </item>
    <item>
      <title>10 cold emails I keep ready so freelancing outreach isn’t a blank page</title>
      <dc:creator>keith</dc:creator>
      <pubDate>Tue, 22 Sep 2026 13:06:34 +0000</pubDate>
      <link>https://dev.to/kburrus/10-cold-emails-i-keep-ready-so-freelancing-outreach-isnt-a-blank-page-4a2i</link>
      <guid>https://dev.to/kburrus/10-cold-emails-i-keep-ready-so-freelancing-outreach-isnt-a-blank-page-4a2i</guid>
      <description>&lt;p&gt;Cold outreach works best as a useful note, not a pitch blast. Here are 10 prompts I keep ready:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Observation:&lt;/strong&gt; I noticed [detail]. One idea for [outcome] is [suggestion]. Want the short version?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit:&lt;/strong&gt; I found one testable improvement on [page]: [observation]. I can send the first steps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Example:&lt;/strong&gt; A recent project solved [problem] with [tactic]. Want the summary?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Question:&lt;/strong&gt; Are you focused on [priority A] or [priority B]? I can share a checklist.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resource:&lt;/strong&gt; This guide may help with [problem]. It includes [useful detail], with no pitch attached.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Launch help:&lt;/strong&gt; Congrats on [milestone]. I help with [deliverable] and can outline a fix for [friction].&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Results:&lt;/strong&gt; I help [client type] improve [outcome] with [method]. I can share the framework.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Referral:&lt;/strong&gt; I thought of you for [need] because [context]. If someone else owns it, could you point me to them?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Follow-up:&lt;/strong&gt; One concrete thought: [observation]. It should take [time] to test. I can send a plan.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Graceful close:&lt;/strong&gt; I’ll close the loop. If [problem] becomes a priority later, reply “send it” and I’ll share the outline.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Follow-up rhythm
&lt;/h2&gt;

&lt;p&gt;Send the first note only with a real reason. Follow up twice at most: once with new value after 3–5 business days, then a close a week later. Stop when someone says no or asks not to be contacted.&lt;/p&gt;

&lt;h2&gt;
  
  
  Anti-spam checklist
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Use a verifiable personal detail and one clear next step.&lt;/li&gt;
&lt;li&gt;Be honest; avoid fake urgency, hype, attachments, and misleading subjects.&lt;/li&gt;
&lt;li&gt;Include an easy opt-out, honor it, and suppress opt-outs.&lt;/li&gt;
&lt;li&gt;Respect laws, platform rules, and recipient preferences.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is a relevant note the recipient can quickly assess.&lt;/p&gt;

&lt;p&gt;Cold Email Script Pack for Freelancers — $5 — &lt;a href="https://buy.stripe.com/00w14pbuqbiIaBEbiS2ZO0d" rel="noopener noreferrer"&gt;https://buy.stripe.com/00w14pbuqbiIaBEbiS2ZO0d&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Standalone PDF. Instant after checkout.&lt;/p&gt;

</description>
      <category>freelancing</category>
      <category>marketing</category>
    </item>
    <item>
      <title>The onboarding step I stopped skipping: writing down the handoff</title>
      <dc:creator>keith</dc:creator>
      <pubDate>Mon, 21 Sep 2026 16:18:05 +0000</pubDate>
      <link>https://dev.to/kburrus/the-onboarding-step-i-stopped-skipping-writing-down-the-handoff-14ii</link>
      <guid>https://dev.to/kburrus/the-onboarding-step-i-stopped-skipping-writing-down-the-handoff-14ii</guid>
      <description>&lt;p&gt;A small freelance project can feel straightforward right up until the first handoff.&lt;/p&gt;

&lt;p&gt;The brief looked clear. The client seemed aligned. The deadline was reasonable. Then a familiar set of questions appeared in different places:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Which file is the current one?&lt;/li&gt;
&lt;li&gt;Who is approving this?&lt;/li&gt;
&lt;li&gt;What exactly counts as “done”?&lt;/li&gt;
&lt;li&gt;Where should the final copy live?&lt;/li&gt;
&lt;li&gt;What happens if the scope changes halfway through?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these questions is difficult on its own. The expensive part is answering them repeatedly, in the middle of production, with slightly different assumptions each time.&lt;/p&gt;

&lt;p&gt;The process lesson for me was simple: onboarding is not an administrative preface to the work. It is the first piece of the work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Start with a one-page project brief
&lt;/h2&gt;

&lt;p&gt;Before opening a task board or drafting a first version, I try to capture five things in plain language:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The outcome:&lt;/strong&gt; what should be true when the project is finished?&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The audience:&lt;/strong&gt; who will use, read, or approve the result?&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The constraints:&lt;/strong&gt; deadline, format, channels, technical limits, and anything that is explicitly out of scope.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The decision-maker:&lt;/strong&gt; one person who can give the final yes or no.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The evidence of completion:&lt;/strong&gt; the file, link, launch, or other observable result that closes the project.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This does not need to become a long proposal. If the summary cannot fit on one page, that is often a signal that the project still has unresolved questions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Turn assumptions into small confirmations
&lt;/h2&gt;

&lt;p&gt;Freelancers are often rewarded for being proactive, but guessing silently is a risky version of proactivity. I now separate assumptions from decisions and ask for confirmation on the assumptions that could change the work.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;I’m assuming the first draft covers the homepage and pricing page, with one revision round. I’ll deliver the final copy in the shared document by Friday. Is that the right boundary?&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That message does three useful things: it gives the client something concrete to correct, creates a written record, and keeps a small ambiguity from becoming a large scope conversation later.&lt;/p&gt;

&lt;h2&gt;
  
  
  Keep the first handoff boring
&lt;/h2&gt;

&lt;p&gt;A good first handoff is easy to scan. Mine usually has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;what I completed;&lt;/li&gt;
&lt;li&gt;links to the current files;&lt;/li&gt;
&lt;li&gt;open questions, if any;&lt;/li&gt;
&lt;li&gt;the specific feedback I need;&lt;/li&gt;
&lt;li&gt;the next date or decision point.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I avoid sending a paragraph that mixes status, questions, and new ideas. Separate sections make it easier for a busy client to respond—and easier for me to see whether the project is actually moving.&lt;/p&gt;

&lt;p&gt;The same principle applies to filenames and folders. A predictable structure such as &lt;code&gt;01-brief&lt;/code&gt;, &lt;code&gt;02-working&lt;/code&gt;, &lt;code&gt;03-review&lt;/code&gt;, and &lt;code&gt;04-final&lt;/code&gt; is not exciting, but it reduces the number of tiny decisions everyone has to make.&lt;/p&gt;

&lt;h2&gt;
  
  
  Add a lightweight “pause” rule
&lt;/h2&gt;

&lt;p&gt;Some requests are harmless additions. Others change the audience, promise, channel, or risk profile of the work. I use a pause rule for the second kind:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Restate the requested change.&lt;/li&gt;
&lt;li&gt;Note what it affects (time, deliverables, approvals, or claims).&lt;/li&gt;
&lt;li&gt;Ask whether to replace an existing item or add work.&lt;/li&gt;
&lt;li&gt;Confirm the updated next step before proceeding.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is especially useful when the work touches public-facing language or a client’s brand. A quick review for unsupported claims, confusing wording, privacy issues, or accidental use of someone else’s material can prevent an avoidable rework cycle.&lt;/p&gt;

&lt;h2&gt;
  
  
  Close the loop deliberately
&lt;/h2&gt;

&lt;p&gt;At the end, I send a short closeout rather than assuming silence means completion. It includes the final link, the agreed deliverables, any remaining maintenance note, and a sentence asking whether anything is still outstanding.&lt;/p&gt;

&lt;p&gt;That last check is valuable because it distinguishes “I sent a file” from “the client received what they needed.” It also leaves a cleaner trail for the next project.&lt;/p&gt;

&lt;p&gt;The broader takeaway is that a checklist is not there to make a freelancer look formal. It is there to move decisions earlier, while they are still cheap to change. The best onboarding process is often the one nobody notices because it quietly prevents confusion.&lt;/p&gt;

&lt;p&gt;If a printable version would be useful, I keep the &lt;strong&gt;Freelance Client Onboarding Checklist&lt;/strong&gt; here: &lt;a href="https://buy.stripe.com/9B63cx1TQaeEeRUev42ZO0b" rel="noopener noreferrer"&gt;view the checklist&lt;/a&gt;. It is intentionally short and meant to be adapted to your own workflow. I also made a companion &lt;strong&gt;Brand Safety Checklists&lt;/strong&gt; worksheet for projects that touch public claims or brand risk, but the process above is the part that made the biggest difference for me.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>career</category>
      <category>writing</category>
      <category>freelancing</category>
    </item>
  </channel>
</rss>
