Categories
Conferences Tampa Bay

The ultimate guide for working the room at Tampa Bay Tech Week (April 7–12)

I’ve spent years doing developer relations, which means “working the room” is basically part of my job description. And since Tampa Bay Tech Week is happening next week, I thought I’d share this bit of knowledge with you:

Working the room isn’t about being an extrovert or a schmoozer. It’s about having a system to make the most of encounters you have at a gathering.

Whether you’re new to tech events and the idea of walking into a roomful of strangers makes you want to back slowly toward the exit, or you’re a seasoned conference-goer looking to sharpen your approach, this article is for you. I’m sharing everything I know about making the most of a week like this.

You don’t have to try everything in this article. Instead, scan through it, find the tips that fit your situation and your personality, and put those into practice. The goal is  to leave Tampa Bay Tech Week with connections that actually go somewhere or lead to opportunities or friendships down the line.


Contents

  1. Before Tech Week
    1. Plan your week like a choose-your-own-adventure
    2. Do some homework
    3. Arrive with goals
    4. Prepare your introduction
    5. Have some “pocket stories” handy
    6. Warm up before you walk in
  2. At the events
    1. Project good posture
    2. Engage with eye contact
    3. Connect instantly with your LinkedIn QR code
    4. How to join a conversation in progress
    5. Observe, ask, reveal (OAR)
    6. Translate your work for the room
    7. Be more of a host and less of a guest
    8. Consider volunteering
    9. Read the social energy of each event
    10. Watch out for “rock piles” and “hotboxing”
    11. Manage your phone
  3. After Tech Week
    1. Organize your new contacts quickly (the day of, if you can)
    2. Send a brief, specific follow-up within 3 days
    3. Connect on the right channels
    4. Play the long game and keep the relationship warm
  4. A note for introverts
    1. What introversion actually means in this context
    2. Schedule your recharge breaks in advance, non-negotiably
    3. Aim small with a number
    4. Find the quieter edges
    5. Use content as a bridge
    6. Your introvert superpowers are real

Before Tech Week

Plan your week like a choose-your-own-adventure

Most tech conferences are contained. You show up to a hotel or convention center, everything is in one building, the schedule is linear, and your biggest logistical decision is whether to take the stairs or the elevator. Tampa Bay Tech Week is nothing like that.

Instead, Tampa Bay Tech Week is spread across multiple neighborhoods: Ybor City, downtown Tampa, midtown Tampa, and St. Pete. There are dozens of events happening over its four days ranging from 7am coffee runs to after-parties going late into the evening. The event types are just as varied: morning fireside chats, afternoon panel discussions, evening mixers, hackathons, themed after-parties, and a boat event. The topics are all over the map too: fintech, health tech, AI, defense tech, music tech, cybersecurity, proptech, beauty commerce, entrepreneurship, and more.

If you try to attend everything, you’ll absolutely burn out. If you don’t plan at all, you’ll spend half the week figuring out where you’re supposed to be and whether you can get there in time.

So before the week starts, spend a little time perusing the Tampa Bay Tech Week events page and make some decisions:

Which events align with your work or interests? A fintech founder has different priorities than a software engineer, who has different priorities than a student trying to break into the industry. TBTW is unusual in that all three of those people are in the same building at the same time, but you’ll have the most natural conversations at events where you have genuine context and curiosity about the content.

Which signature events do you want to be at? The ticketed events, like Innovation on the Water on Wednesday evening, Havana Nights Tech Edition on Thursday night, and the official kickoff on Tuesday, are prime networking territory precisely because the barrier to entry filters out people who aren’t taking the week seriously. If you have the $150 pass or specific event access (as a speaker, sponsor, or through a connection like the lovely people at TBTW who were kind enough to give me access; thank you, Emily!), prioritize these.

How are you getting around? Rideshare or drive? Will you need to know where to park? Will you need to cross a bridge? Plan ahead, or you’ll spend the whole transit stressed out and arrive frazzled rather than ready to meet people.

Give yourself permission to skip things. A focused day at two events where you’re fully present and engaged is dramatically more valuable than a frantic day at six events where you’re tired, rushing, and half-listening. It’s an all-too-common mistake to think of the gap between events as wasted time. It’s actually breathing room, and that breathing room is what makes the next conversation good.

[ Back to the table of contents ]

Do some homework

The single biggest predictor of whether you’ll have good conversations at a tech event isn’t your personality, your job title, or your business cards. It’s whether you showed up prepared. Homework is how introverts in particular can stack the deck in their favor before they ever walk in the door.

Review the speaker lineups and sessions for the events you’ve chosen. Even a quick skim is enough. You want to walk into each event with at least one or two things you’re genuinely curious about, because genuine curiosity is the raw material of good conversation. “I saw you’re speaking about AI voice agents. I’ve been skeptical about the enterprise use case and I’m curious about what you’ve seen” is a wildly better opener than “So what do you do?” (and definitely better than Joey Tribbiani’s “How you doin’?”).

Research the speakers and panelists you’d like to meet. Look them up on LinkedIn. Read their bio. If they’ve written articles, given a talk, or have a company you can poke around on, check them out. Not so you can impress them by reciting facts about them back at them (please don’t do that), but so you can ask a question that shows you’ve engaged with their work. People who are asked good, specific questions remember the person who asked them.

Look into the sponsors and exhibiting companies. There’s almost certainly at least one company at TBTW that you’ve been curious about, want to partner with, or are considering as a potential employer or client. Having a reason to approach their table, such as “I read your blog post about autonomous customer support and I had a question about how you handle edge cases,” is so much better than “So, what does your company do?” which they have to answer fifty times a day.

Check the event hashtag and page the day before. People often post “Excited to be attending TBTW this week, come find me!” These are warm leads. Comment on a few posts from speakers or attendees you want to meet. When you see them in person, you’re no longer strangers. You have a built-in opener: “Hey, I replied to your post about the fintech panel — I’m [your name here].” Cold room, made warm.

[ Back to the table of contents ]

Arrive with goals

There’s a version of “arriving with goals” that’s annoying and transactional. You’ve probably seen it from a networking mercenary who’s running through the room checking names off a list. This isn’t what I mean.

What I mean is: before you leave the house, know what you’re hoping to get out of the specific events you’re attending. It doesn’t have to be elaborate. It might be:

  • Learning something specific. “I want to understand what Tampa Bay founders are actually worried about on the funding side.”
  • Reconnecting with people you’ve lost touch with. Tampa Bay Tech Week is going to draw a lot of people from the local tech community who you haven’t seen since “The Before Times.” Take advantage!
  • Making a specific number of new connections. And here’s the key: make that number small. Rather than “meet as many people as possible,” aim for 3–5 meaningful conversations per day.

That last one deserves some unpacking. The default mode for conference networking is to try to meet everyone, collect a stack of business cards (or LinkedIn connections), and feel like you “won” the event by volume. This doesn’t work. The connections you actually keep and build on are the ones where you had a real conversation, ones where you learned something about the other person that you can reference later, where you found genuine common ground, where something actually clicked.

Five meaningful conversations a day for six days is thirty relationships worth tending to. That’s a fantastic outcome. Two deep conversations with people you’ll genuinely stay in touch with beats fifteen forgettable exchanges, every single time.

If you set a goal of 3–5 real conversations a day and you hit 2, but they were real, don’t beat yourself up. Give yourself credit for having had the courage to talk to two strangers. Then do it again tomorrow.

[ Back to the table of contents ]

Prepare your introduction

A good one-line self-introduction is a single sentence that tells people who you are in a way that invites a follow-up question. It’s not your resume. It’s not your elevator pitch. It’s the conversational equivalent of a hook at the top of an article: something that makes the person you’re talking to want to know more.

This concept comes from Susan RoAne’s book How to Work a Room, and I’ve used it at every conference I’ve attended for the past several years. It works.

Here are the rules for a good one-liner:

Keep it short. Ten seconds or less. It is not your life story. It is not a paragraph. If you’re still talking after ten seconds, you’ve lost the thread. People’s brains are trained to expect a pause and a handoff after about that long.

Lead with the interesting thing, not your job title. Job titles are boring. “Software engineer” tells someone almost nothing about you as a person. “Financial analyst” makes people’s eyes glaze over before you’ve finished saying it. But the interesting version of what you do — the version that a curious person would want to ask a follow-up question about — is almost always available if you think about it for a moment.

Susan RoAne tells a story about meeting a financial analyst at a networking event whose one-liner was “I help rich people sleep at night.” That’s brilliant. It’s accurate, it’s memorable, and it makes you want to ask “How?” Which is exactly what a good one-liner should do.

Show the benefit, not the mechanism. “I help companies make their AI pipelines faster” lands better than “I do MCP server optimization.” “I connect Tampa Bay’s tech community” lands better than “I run meetups.“ “I help founders find their first customers” lands better than “I do B2B sales consulting.“ Think about what your work actually does for people, and lead with that.

Inigo Montoya from The Princess Bride has the greatest self-introduction in cinema history. You know it:

“Hello. My name is Inigo Montoya. You killed my father. Prepare to die.”

Now, obviously, you’re going to adjust slightly for the context of a tech conference. But the structure is perfect:

  1. Polite greeting
  2. Name
  3. Relevant personal link
  4. Manage expectations

Greet them. Give your name. Give one piece of context that anchors who you are or why you’re here. Then open with a question or statement.

“Hi! I’m Joey de Villa. I run the Tampa Bay AI Meetup — this is my first time at Tech Week and I’m trying to hit as many events as I can this week. What brought you out today?”

That’s it. Short, warm, complete, and ends with a question that puts the spotlight on them, which is what most people want anyway. People love talking about themselves. Give them an easy on-ramp to do it.

One small addition that can work really well: state something you’re looking forward to or curious about. It gives the other person immediate conversational material.

“Hi! I’m Joey. I run a couple of Tampa Bay tech meetups and I do developer relations. I’m genuinely curious about the music tech session this afternoon — I play accordion, so I have a lot of feelings about AI in the studio. What’s on your agenda today?“

Now you’ve given them: your name, what you do, a memorable detail (in my example, accordion), a specific interest, and a question. That’s a lot of conversational material in about fifteen seconds.

[ Back to the table of contents ]

One extra tip for TBTW specifically: the crowd here is unusually mixed. Engineers, founders, VCs, health tech operators, defense contractors, music producers, students, marketers. Don’t assume technical fluency. Have a non-technical version of what you do ready. “I make it easier for AI tools to communicate with each other“ is more useful at this event than “I’m optimizing an MCP server.“ “I help companies build AI workflows that actually hold up in production“ works. Find your translation before you walk in the door, not in the middle of a conversation where the other person is nodding politely while not understanding a word.

[ Back to the table of contents ]

Have some “pocket stories” handy

Pocket stories are short, memorable, ready-to-deploy anecdotes you keep in your back pocket for networking situations. They‘re the conversational equivalent of a great example in a talk, and they make abstract things concrete. They give people something to react to, and they make you more memorable than the person who just delivered a list of facts about themselves.

Good pocket stories are:

  • Brief. A minute to a minute and a half, tops. You’re not delivering a TED talk. You’re giving someone a thread to pull on.
  • Relevant to tech, business, community, or Tampa Bay. You want the story to feel at home in the conversation, not like a non-sequitur.
  • Open-ended. The best pocket stories end in a way that invites the other person to share their own perspective or experience. This transforms a monologue into a conversation.
  • Specific enough to be real. Vague stories are forgettable. “I once worked on a project that went sideways” is nothing. “I once built a caching layer that was so clever it confused our own monitoring system into thinking we were under a denial of service attack” is something.

Here are a few that would work well at TBTW:

A tech-flavored pocket story:

“I’ve been working with AI tools for a while now, and something genuinely strange happened on a project last month. The AI gave the customer exactly the right answer, but for completely the wrong reason. Which led to this fascinating rabbit hole about whether we actually understand why these models work, or whether we’re just measuring that they do.”

A Tampa Bay-flavored pocket story (always a good move at a celebration of the local tech scene):

“I’ve been running tech meetups in Tampa Bay since before the pandemic, and the difference between then and now is genuinely hard to overstate. The community here has grown up in a way I didn’t expect. That’s honestly a big part of why I’m excited that this event exists. It feels like the scene is finally getting the kind of visibility it deserves.”

A “first year” pocket story (specific to TBTW being a new event):

“This is my first Tampa Bay Tech Week, and I’ve been curious to see how it shakes out. First-year events are always interesting. There’s this energy that either comes from everything going perfectly or from everyone improvising together…and honestly, the second kind is often more fun.”

Practice your pocket stories out loud before the event. Not so they sound rehearsed, but so the shape of them is familiar enough that you can deploy them naturally when there’s a conversational opening.

[ Back to the table of contents ]

Warm up before you walk in

Here‘s a tip that sounds strange until you try it, and then you wonder why nobody told you about it sooner.

The night before your first TBTW event, find some text. It can be this article, a news piece, really anything; then read it out loud for three minutes.

That’s it. Three minutes of reading out loud.

This works as a social confidence booster for several reasons:

It gets you comfortable with your own voice. A lot of people have some version of “I hate the sound of my own voice.” Here’s my dirty little secret: I used to hate the sound of my voice. People tell me I have a “radio voice” now, but it wasn’t always that way until I started using the “reading out loud” trick.

Reading out loud regularly desensitizes you to your voice. It gets you accustomed to hearing yourself talk, which reduces the self-consciousness that makes social situations feel harder than they are.

It sharpens your articulation. The physical act of reading out loud forces you to form words carefully and speak at a steady pace. You’ll catch yourself mumbling, and you’ll self-correct. You’ll notice when your volume drops and bring it back up. These habits carry over into actual conversations, and over time, you’ll fine-tune the way you speak and the voice you use.

It warms up the social circuitry. Talking is a physical and cognitive activity. Like any physical and cognitive activity, it’s easier once you’ve done a little warmup. Walking into a room as the first conversation of your day is cold-start networking. Walking in having already spoken out loud for a few minutes means the machinery is already running.

Try to do this every day of Tech Week. It’s three minutes. You can spare three minutes.

[ Back to the table of contents ]


At the events

Project good posture

Posture advice sounds like something from an old-timely self-help book, but it keeps showing up in networking guides for a reason: it works, and most people in tech environments have genuinely bad posture from years of hunching over keyboards.

Good posture at a conference signals confidence, openness, and engagement. And because your body and your brain are a genuine feedback loop, you will actually feel more confident when you stand up straight. This is well-documented. Your brain picks up cues from your own body the same way it picks up cues from the world around it.

The simple mechanical version: imagine a string pulling gently upward from the crown of your head. Let your spine lengthen. Keep your knees soft; locked knees make you look rigid and uncomfortable. Roll your shoulders back slightly, enough to open your chest, not so far back that you look like you’re at attention.

When you do this, you appear approachable and engaged. People will walk toward you. Contrast that with the forward-rounded-shoulders-head-down look that reads as “I don’t want to be here and I definitely don’t want to talk to you.” Which one do you want people to walk toward?

The posture tip compounds nicely with the eye contact tip below. Together they add up to a version of you that people want to approach, even before you’ve said a word.

[ Back to the table of contents ]

Engage with eye contact

Eye contact is one of the fastest-working social signals humans have, and it’s chronically underused at tech conferences, where it’s extremely common to see people’s eyes drifting to their phones, to the name badges on people’s chests, or just slightly to the left of whoever they’re talking to.

When you make genuine eye contact with someone, really look at them. It creates an immediate sense of warmth and attentiveness. It makes people feel seen, which is a remarkably powerful thing in a noisy, crowded, overstimulating environment where it’s easy to feel like one anonymous face in a crowd.

Here’s how to do it without it feeling weird: when you meet someone, make eye contact and hold it for a “one thousand one, one thousand two” count. That’s long enough to register as genuine attention; not so long that it feels like a challenge or an interrogation. Then let your gaze move naturally, the way it would in any comfortable conversation.

A note on autism and eye contact: if you’re allistic (not on the autism spectrum), be aware that for some people — particularly autistic people — direct eye contact is genuinely uncomfortable and can even be aversive. If the person you’re talking to seems uncomfortable with eye contact or consistently looks away, don’t push it. Looking at the general area of their face (such as their forehead, nose, or cheek) conveys the same attentiveness without the discomfort. This is also a good fallback for people who find direct eye contact hard to maintain themselves.

[ Back to the table of contents ]

Connect instantly with your LinkedIn QR code

Tap to view at full size.

Let me say this clearly: business cards are mostly dead at tech events. They exist in a handful of industries and contexts where they’ve survived for cultural reasons (I’m looking at you, Japanese business culture), but at a tech event in 2026, handing someone a paper card is a slightly awkward ritual that results in a card that will live in their jacket pocket until the next time they do laundry, at which point it will become a soggy rectangle and go in the bin.

Business cards have been replaced by the LinkedIn ritual:

  1. You present someone with your LinkedIn QR code. To do this, follow these steps:
    1. Open LinkedIn on your phone
    2. Go to the Home screen
    3. Tap the Search bar
    4. Tap the QR icon, and your QR code will appear
  2. They scan your QR code. They can do this with the LinkedIn app, but it’s much simple if they open their camera app and point the camera at QR code.
  3. They tap the link that appears. This takes them to your LinkedIn profile, and they can request to connect with you.

Better still: if you’re getting a custom nametag for the week (and you should; more on “interesting things” in a moment), put your LinkedIn QR code on it. Now someone can connect with you just by pointing their phone at your chest, right in the middle of a conversation, without either of you having to stop and fumble for a device.

Pro tip: after you connect with someone on LinkedIn, immediately add a note about where you met and what you talked about. LinkedIn lets you do this from the connection request screen. Future-you will be very grateful when you’re going through your connections two weeks later wondering who “Sarah Chen” is.

[ Back to the table of contents ]

How to join a conversation in progress

For a lot of people, introverts especially, the hardest networking move isn’t starting a conversation with one person. It’s walking up to a group of people who are already mid-conversation and joining in.

The fear is understandable. You’re worried about interrupting. You’re worried about being unwelcome. You’re worried about not knowing what they’re talking about and standing there blankly while they look at you.

Here’s the thing: at a networking event, joining conversations is expected. The social contract is different from, say, interrupting someone’s dinner. People are here to meet people, including you.

Here’s the playbook:

Step 1: Pick a lively group. Look for a group of 3–4 people who are engaged and animated. They’ve already done social work for you! They’ve chosen a topic, they’re comfortable together, and there’s energy in the circle. Avoid groups of exactly two people who are leaning in toward each other, making sustained eye contact; that’s likely a focused one-on-one conversation that genuinely isn’t open to a third party right now.

Step 2: Stand at the edge of the group and look interested. Just stand there, angled toward the group, with a pleasant expression. Don’t force your way into the center. Don’t wave or make a big entrance. Just be present at the periphery. In most groups, someone will notice you within thirty seconds and either nod you in or shift slightly to make room. This is the universal body-language signal that says “you’re welcome here.”

Step 3: When acknowledged, step in and introduce yourself. You’re in! Now use your one-liner and introduce yourself to the group. Don’t try to introduce yourself to each person individually while they’re mid-conversation. Just say your name and let things flow naturally from there.

Step 4: Don’t try to change the subject. You just arrived. The group has a conversation going. Contribute to that conversation; let the topic evolve naturally over time. Showing up and immediately trying to redirect the discussion to what you want to talk about is the networking equivalent of sitting down at someone’s poker table and announcing that actually you’d prefer to play blackjack.

One more thing: if you see me in a conversation circle, come join in. I always keep an eye on the edges for people hovering who want to step in, and I’ll wave you over. Come find me!

[ Back to the table of contents ]

Observe, ask, reveal (OAR)

The OAR (Observe, Ask, Reveal) technique is another gem from Susan RoAne’s How to Work a Room, and it’s one of the most practically useful conversation frameworks I’ve ever used. OAR it works because it’s structured, which means you don’t have to improvise from scratch. It gives you a template to follow, but it feels spontaneous and natural when you do it well.

Three steps:

1. Observe. Notice something. That “something” could be about the person, the venue, the content of the event, the situation you’re both in. You’re looking for a specific, concrete observation rather than a vague generality. “It’s a nice event” is not an observation. “I see you’ve got the TBTW lanyard. Did you get the full week pass?” is.

Good things to observe at TBTW:

  • Their nametag (company, event, custom text)
  • Something they’re holding or wearing
  • Which session they just came from
  • The venue itself, especially for distinctive TBTW events like the boat event or the Ybor City evening

2. Ask. Follow your observation with an open-ended question. The goal is to get them talking. Open-ended questions — ones that can’t be answered with a “yes” or a “no” — are your friend here. “What did you think of the AI panel?” lands better than “Did you go to the AI panel?” “What’s bringing you to TBTW this week?” lands better than “Is this your first time?”

3. Reveal. Share something about yourself that’s relevant to what they just said. This is the step that makes the conversation feel like an exchange rather than an interrogation. You give a little; they give a little. The rhythm is listen, contribute, listen, contribute.

⚠️ Two pitfalls to avoid:

  • Over-revealing. Don’t follow their short answer with a five-minute monologue about yourself. A reveal should be roughly proportional to what they shared.
  • Over-asking. If you observe, ask, they answer, you observe, ask, they answer, you observe, ask, and so on… it becomes an interrogation. The reveal step is what prevents this. Use it.

Some OAR examples specifically calibrated for TBTW:

“I noticed you were nodding pretty hard during the AI panel — what was the moment that got you?”

“I saw your nametag says [Company] — I’ve been curious about what you all are doing in the health tech space. What’s the problem you’re trying to solve?”

“This is an amazing venue for an event like this. Have you been to Armature Works before, or is this your first time?”

“That Havana Nights party last night was something else. Did you make it out? I ran into about six people I’ve been meaning to catch up with for months.”

[ Back to the table of contents ]

Translate your work for the room

This is advice specific to TBTW, and it’s important enough to get its own section.

At a developer conference like DevNexus or KCDC, you can say “I’m working on an MCP server that optimizes file deduplication using sampled hashing” and the people around you will nod, maybe ask a follow-up question about your hash function choices, and you’ll be off to the races. That’s a room full of people who speak the language.

Tampa Bay Tech Week is not that room.

TBTW is simultaneously a developer conference, a startup event, a VC mixer, an industry showcase, a community celebration, and an after-party. You might be in the same conversation with a software engineer, a health tech founder, a venture capitalist who came up through finance, a music producer curious about AI, and a student who’s just trying to break in. Most of these people do not know what an MCP server is. Some of them are not sure what a developer does day-to-day.

This is not a problem. Instead, it’s actually an opportunity, because the people who can explain technical things clearly in non-technical terms are far more memorable and interesting to talk to than the ones who retreat into jargon.

Before you walk into each event, have a non-technical version of what you do ready:

  • Instead of “I optimize MCP servers,” say “I make AI tools faster and more reliable when they’re talking to each other.”
  • Instead of “I build LLM integrations,” say “I help companies actually use AI in their products, not just demo it.”
  • Instead of “I do DevRel,” say “I help developers understand new technologies and give companies honest feedback on their developer experience.”

The test: could a smart non-technical person understand what you said, why it matters, and what to ask you next? If yes, you’re there. If no, keep translating.

[ Back to the table of contents ]

Be more of a host and less of a guest

This is one of my favorite pieces of advice, and I’ve given it in every version of this article because it keeps being true.

Being a host at a networking event doesn’t mean you have to be on the organizing committee. It means doing some of the things that hosts naturally do:

Introduce people to each other. This is the single highest-leverage move in any networking room. When you know two people who should meet each other and you make that introduction, both of them remember you as the person who connected them. “Joey, this is Sarah. She’s building an AI system for healthcare intake, and you just mentioned you worked on something similar at your last company.” That introduction takes ten seconds and creates a connection that might last years.

Say hello to people standing alone. Every networking event has wallflowers: people who’ve arrived, don’t know anyone, and are standing at the edge of the room trying to look like they meant to be alone. Walk over and say hello. They are almost certainly delighted to see you. This is one of the most human things you can do at an event and it costs you nothing.

Be generally helpful. Know where the bathrooms are and be willing to direct people to them. Know the schedule well enough to tell someone what’s coming next. Help someone find a session they’re looking for. None of this is glamorous, but it accumulates into a reputation for being a person who makes things easier for others, which is genuinely valuable currency in any professional community.

I’ll tell you exactly how this worked for me: when I first moved to Tampa, I didn’t know anyone in the local tech scene. I started attending meetups and simply helped out wherever I could by setting up chairs, live-tweeting talks, talking to the person who looked lost by the snack table. I gained a reputation for being useful and plugged-in, which led to speaking invitations, which led to inheriting a couple of meetup groups, which led to the Tampa Bay AI Meetup that now has 2,200+ members. None of that was a grand strategy. It was just: show up, be helpful, repeat.

[ Back to the table of contents ]

Consider volunteering

Tampa Bay Tech Week is in its first year. The organizers are pulling off something genuinely ambitious: a multi-day, multi-venue, multi-track event across multiple neighborhoods. We normally don’t get events of this scale.

That means they almost certainly need help, and helping is something you can offer.

Reach out before the week starts and ask if there are volunteer opportunities. There will be registration desks, people will need to be directed between sessions, there will be setup and clean-up, and all sorts of jobs that need to be done to make an event work.

Even if they don’t need you for formal volunteering, you can offer to be a resource. You can help spread the word in your network, connect them with venues or speakers for future events, to write about what you attended (ahem).

Here’s why this matters for networking specifically: having a functional role removes the social friction of approaching strangers. When you’re a volunteer, you approach people because that’s your job for the next couple of hours. “Can I help you find the right room?” “Are you here for the fintech panel? It’s just down the hall.” “Let me know if you need anything.” These interactions are low-stakes, useful, and they create dozens of small positive interactions that often blossom into real conversations when you’re both in the session together afterward.

For introverts especially, this is a powerful move. You’re  no longer cold-approaching strangers; you’re serving a function. The conversations find you.

Want to volunteer or help out in other ways? Contact the organizers at info@tampabaytechweek.com.

[ Back to the table of contents ]

Read the social energy of each event

TBTW is not a single event. It’s a collection of events with wildly different social norms, energy levels, and purposes. Walking into each one with the same approach is like bringing the same energy to a job interview, a cocktail party, and a funeral. Technically you’re “being yourself” at all three, but you’re going to have a rough time at two of them.

Here’s a rough map of the different event types and how to approach each:

Morning panels and fireside chats (9am – noon): People are in learning mode. They came for content. The best networking here happens in the ten minutes before the session starts (introduce yourself to your neighbors, comment on why you chose this session) and in the ten minutes immediately after (while the content is fresh and everyone has something to react to). Don’t try to network during the session. It’s rude, annoying, and doesn’t work.

Afternoon sessions and workshops: The energy is a bit more relaxed than mornings. People have had lunch, they’ve gotten their feet under them, and they’re more open to sidebar conversations. Workshops in particular create natural bonding because you’re working on something together.

Evening mixers (Founders & Entrepreneurs Mixer, Founders & Pho, etc.): These are explicitly networking events. People are here to meet people. This is where you deploy your full toolkit of one-liner intros, pocket stories,  and the OAR technique. Nobody is going to think it’s weird that you walked up to them; that’s literally why everyone is there.

Signature events (Innovation on the Water, Havana Nights, Official After Party): These have their own character. “Innovation on the Water” is a boat event, which creates natural conversation through shared novelty: you’re both on a boat, which is inherently fun and memorable. “Havana Nights” is a late-night after-party in the best Ybor City style, which means it’s loud, festive, and better suited to lighter social connections than deep professional conversations. Adjust accordingly.

After-parties (after 9pm): These are best for casual connection with people you’ve already met during the day, and for having the fun, slightly-less-professional conversations that don’t happen in the sessions. Not the place for pitching; definitely the place for making someone laugh.

[ Back to the table of contents ]

Watch out for “rock piles” and “hotboxing”

Two body-language patterns that accidentally make you unapproachable, and how to fix them:

Rock piles are groups of people huddled together in a tight, closed circle. Everyone’s so close to each other that their shoulders are almost touching, and nobody at the edge is making eye contact with the room. The message this sends, unintentionally, is “this is a private conversation, go away.” If you find yourself in a rock pile, step back slightly and shift your angle. It opens the formation to allow others to join.

Hotboxing: this is a term I’ve picked up in the context of professional events rather than the other meaning you might be thinking of. In this case, it’s when is when two people square up directly face-to-face in a way that physically blocks anyone else from entering the conversation. It’s essentially a one-on-one rock pile. The fix is the same: angle yourself slightly, leave a gap, let someone step in.

Both of these patterns are entirely unconscious. You’re not trying to exclude anyone; it just happens when you’re absorbed in a good conversation. Knowing about it is usually enough to catch yourself and correct it.

[ Back to the table of contents ]

Manage your phone

Your phone is a social barrier when you’re holding it, scrolling it, or staring at it. Even if you’re doing something completely innocuous (such as checking the event schedule or selecting a rideshare), the visual signal you’re sending is “I am not available for conversation.” At a networking event, that’s exactly the signal you don’t want to send.

There are legitimate reasons to have your phone out: looking up someone’s LinkedIn to connect, showing someone something on your screen, checking what’s next on the schedule. These are fine; just narrate them lightly. “Let me pull up my LinkedIn QR code” or “Let me see what time the next session starts” tells people what you’re doing and doesn’t leave them wondering if you’ve mentally left the conversation.

Otherwise: phone in pocket, eyes up. Your emails will still be there after the event.

Similarly: if you put your bag down, you’re staying. When you pick it back up and start gathering your things, people can read that you’re about to move on. This is actually useful, since it gives you a natural, non-awkward exit from conversations that have run their course.

[ Back to the table of contents ]


After Tech Week

Organize your new contacts quickly (the day of, if you can)

Memory is perishable. The vivid sense of “oh yes, I remember exactly who that was and what we talked about” fades faster than you think, especially at a multi-day event where you might meet fifty new people over the course of the week.

The single most valuable thing you can do after each event — ideally the same day, on the rideshare home or before you go to sleep — is to make a quick note on every meaningful connection you made:

  • Who: name, company, role.
  • Where and how you met: “at the Founders & Pho event Thursday night, we bonded over the music tech panel earlier in the day.”
  • What you talked about: even one or two sentences is enough. “She’s building an AI system for mental health intake; skeptical about regulation timeline.”
  • Any follow-up you promised: “I said I’d send her the article I wrote about AI in healthcare.” “He said he’d connect me with someone at his firm.”

A note app on your phone is completely adequate for this. You don’t need a CRM (though if you do have one, use it). The goal is to capture enough that when you sit down to write follow-up messages two days later, you’re writing to a specific person about a specific conversation. You don’t want to sending a generic “great meeting you!” to a name you can barely place.

[ Back to the table of contents ]

Send a brief, specific follow-up within 3 days

The timing matters. The warm period after a networking event is roughly 48–72 hours. Inside that window, people still remember who you are and what you talked about; your follow-up lands as a continuation of the conversation. Outside that window, you’re increasingly a stranger who’s sending them a cold message.

The message itself should be short. This is not the place for a five-paragraph email. It’s the place for a message that says:

  • I remember who you are and what we talked about (which is surprisingly rare and therefore memorable).
  • Here’s something useful related to our conversation.
  • Let’s keep this going.

“Great talking to you at the Founders & Pho event Thursday! I loved your take on the regulatory headwinds in mental health tech. Here’s the piece I mentioned about the FDA’s current stance on AI diagnostics: [link]. Would love to keep the conversation going.”

That’s three sentences and a link. That’s enough. If they want more, they’ll reply and you can go from there.

If you promised a specific follow-up, such as an introduction, an article, or a resource, lead with that. You said you’d do it; doing it promptly signals that you’re someone who follows through, which is a more valuable signal than most people realize.

[ Back to the table of contents ]

Connect on the right channels

Different platforms serve different kinds of ongoing relationships, and connecting on the wrong one can mean the relationship goes nowhere even if the initial spark was there.

LinkedIn is the default for professional connections. If you met someone in a professional context and want to stay vaguely in each other’s orbits, LinkedIn is the right channel.

GitHub is the right channel if you talked code, mentioned projects you’re working on, or might collaborate on something technical. Starring someone’s repo or following their account is a lightweight but genuine signal of interest.

Bluesky is where a significant chunk of the tech community has landed after leaving X/Twitter over the past couple of years. If you connected with someone over tech culture, industry opinions, or the kinds of conversations that used to happen on Twitter, Bluesky is probably where they’re having them now. Worth checking.

A group chat or Slack if there’s a specific project, community, or ongoing conversation that makes sense. Some events spin up a Slack workspace or Discord server; if TBTW does this, join it and be actually present rather than just a member.

[ Back to the table of contents ]

Play the long game and keep the relationship warm

The follow-up message is an opening, not a destination. The people you want in your network long-term are the ones where there’s genuine ongoing exchange. You learn from them, they learn from you, you help each other when you can.

The mechanics of this aren’t complicated:

  • Interact with their posts when something resonates. A thoughtful comment on LinkedIn is worth fifty passive likes.
  • Share relevant things with a one-line note. “Saw this and thought of what you said about proptech at TBTW. It seems relevant.” That’s a connection-maintenance act that takes thirty seconds and reminds them you’re a person who pays attention.
  • Make introductions when you can. “I know someone you should meet” is one of the most valuable things you can say to anyone in a professional network, and delivering on it cements you as a connector.
  • Show up to the same events over time. Relationships deepen through repeated encounters. If you meet someone at Tech Week and then again at a Tampa Bay AI Meetup a month later, you’re now more than an acquaintance. You’re starting to become a known quantity in each other’s worlds.

[ Back to the table of contents ]


A note for introverts

I want to spend a bit more time on this section than I usually do, because I think most networking advice for introverts is either patronizing (“It’s okay to be nervous!”) or not actually calibrated for how introversion works in practice.

So let me be specific.

What introversion actually means in this context

Introversion doesn’t mean shyness, though they often co-occur. It means that social interaction, particularly with strangers, costs you energy rather than giving you energy. Extroverts (like myself) leave a great networking event feeling more energized than when they arrived. Introverts often leave the same event feeling depleted, even if they had a genuinely good time.

This is not a personality flaw. It’s just a different energy profile. And it has real implications for how you should approach a week like TBTW.

[ Back to the table of contents ]

Schedule your recharge breaks in advance, non-negotiably

This is the highest-leverage change most introverts can make to their conference approach, and it’s almost never in the standard advice.

Before the week starts, look at your event calendar and block 90-minute recharge windows the same way you block sessions you want to attend. These aren’t open slots that you’ll fill with more events if something interesting comes up. They’re protected time for you to be alone, be quiet, and recover.

What does recharging look like? Whatever works for you: sitting in your car in silence, going for a walk without headphones, sitting in a coffee shop that’s far enough from the venue that nobody you know will walk in, going back to your hotel room if you’re from out of town. The specific activity is less important than the solitude and the recovery.

Remember that you don’t have to attend everything. If there’s a session that’s not particularly interesting or useful to you, skip it and treat it as built-in decompression time. Use the break to let your nervous system come back to baseline before the next event.

[ Back to the table of contents ]

Aim small with a number

The standard “meet as many people as possible!” networking advice is actively counterproductive for introverts, because it creates a success criterion that’s both exhausting and incompatible with the way introverts build connections.

Introverts typically form better connections through fewer, deeper interactions. A ninety-minute conversation with one person that covers real ground is often worth more than ten five-minute conversations. The problem is that ninety-minute conversations are also more energetically expensive.

The reframe: aim for 3 meaningful conversations per event, or 3 to 5 per day. Write this down. Make it your actual goal. If you get to the end of an event having had 2 real conversations where you actually connected with the person, learned something about them, and exchanged something genuine, give yourself full credit. That’s a successful event.

If you hit your number and you have energy left, keep going. If you hit your number and you’re exhausted, you’re done. Leave. Go recharge. Show up tomorrow.

[ Back to the table of contents ]

Find the quieter edges

At any loud evening event, there are almost always quieter zones: an outdoor patio, a hallway near the exit, a corner of the bar that’s slightly removed from the main gathering. Introverts instinctively find these spots, and other introverts find these spots too.

Some of the best conversations I’ve had at conferences have happened in a hallway outside the main event space, where two people who needed a break from the noise ended up talking for forty-five minutes because the environment was finally calm enough to actually think. Go find those spots. You won’t be alone there.

[ Back to the table of contents ]

Use content as a bridge

Sessions, panels, and fireside chats give introverts something to talk about that isn’t themselves. This is huge. Instead of “So, what do you do?”, which requires you to perform and the other person to do the same, you can open with “What did you make of the AI panel?” or “I thought the moderator’s question about regulation was interesting. What’s your take?”

You’re talking about ideas rather than pitching identities. For introverts who prefer substantive conversations to small talk, this is a feature, not a workaround.

Aim to attend the sessions that are most relevant to your work or interests, and immediately after each one, position yourself to have a post-session conversation with someone nearby. “What did you think?” is about the easiest conversation opener there is.

[ Back to the table of contents ]

Your introvert superpowers are real

Most networking advice is written for extroverts, which means it emphasizes the skills extroverts naturally have: working the room, projecting warmth, holding court, keeping energy high. These are real skills. But they’re not the only skills that matter in professional networking.

Introverts tend to:

Listen more carefully. In a room full of people trying to be heard, the person who’s genuinely paying attention is rare and memorable. People will tell you things they don’t tell the person who’s already formulating their next sentence while you’re still talking.

Ask better follow-up questions. Because you actually heard what they said.

Have more substantive conversations. Introverts tend to gravitate toward depth when they’re engaged. The person who had a thirty-minute conversation with you about something you both care about is going to remember you far longer than the person who had a four-minute exchange with fifty people.

Follow up more thoughtfully. Because you took in more during the conversation, your follow-up can be specific and personal in a way that generic “Great to meet you!” messages aren’t.

These are genuine advantages. They don’t show up in the standard conference networking playbook, which is oriented toward volume and energy, but they show up in the quality of the relationships you build.

[ Back to the table of contents ]


I’ll be at Tampa Bay Tech Week all week. Come say hi — I’m not hard to find. I’m usually the one with the accordion.

— Joey

Categories
Picdump

Saturday picdump for Saturday, March 28

Happy Saturday, everyone! Here on Global Nerdy, Saturday means that it’s time for another “picdump” — the weekly assortment of amusing or interesting pictures, comics, and memes I found over the past week. Share and enjoy!


652857006_10165074076911672_7858038292685483826_n


“The unexamined life is pretty much all right.”

656864019_10163919250924556_542743733797660897_n


625376430_1318431033638572_8695029888695228421_n

IMG_1840

657376927_10238239110134836_3142365900684154695_n

i-have-round-the-corners

IMG_1868

IMG_1857

657448727_1362813882533620_7526462288954586888_n

621448003_1311805470967795_5043321079863370326_n

Screenshot
Screenshot

IMG_1844

0_3hc4kj2bSDGOK_jf

IMG_1866

IMG_1847-1

641470799_1338580761623599_6946621650712756364_n

529944708_1174227858058891_330381307334783988_n

640318429_1335831028565239_8650044018025574471_n

IMG_1873

IMG_1849

IMG_1855

656633968_10162719528482400_1330357180608476936_n

onesquare-5

IMG_1846

Screenshot
Screenshot

651826827_10173754176060253_1067033253214130280_n

IMG_1850

622254570_1312013340947008_46605098198368217_n

623571399_1313016347513374_3074571323951174992_n

656621224_1557129249753998_9159461835872174833_n

IMG_1817

IMG_1859

Screenshot
Screenshot

IMG_1875

IMG_1841

thislittlemaneuverisgonnacostustenstorypoints-v0-gg8hjlt9rnrg1

IMG_1865

653755798_947342517986985_9157738988185488767_n

IMG_1869

IMG_1860

IMG_1870

pullrequestreviewrequestpagliacci-v0-ovy2vfqd2tqg1

IMG_1877

IMG_1723

IMG_1880

529980893_1175585317923145_4245864478554787208_n

IMG_1862

620097539_1310805927734416_7121465950357278990_n

IMG_1856

salesengineer-v0-nri6jckphoqg1

IMG_1847

whyareyouwritingalibrary-v0-9t1h8lfieorg1

504902406_1127183082763369_1656587403480807757_n

IMG_1795

Screenshot
Screenshot

656816667_1361112359370439_4256819739003840298_n

dune-and-ai

656910801_1478381120326394_522911092645943125_n

IMG_1861

hamiltonai

657471466_789725850858377_4211577322015915131_n

IMG_1863

IMG_1872

487511136_1073094354838909_5686471663202526365_n

Screenshot
Screenshot

652282670_1436781304577618_6485245287654482389_n

IMG_1874

Screenshot
Screenshot

656720613_10173818841240253_3352620110354409982_n

IMG_1878

cannotreproducestrikesback-v0-ervlca689frg1

IMG_1786

sohowlonguntilthe3months-v0-6qh1m35sklrg1

IMG_1871

IMG_1853

633957844_1328534289294913_4321004297678224790_n

650973082_1745447073529624_564308744514865695_n

IMG_1858

IMG_1876

IMG_1811

Screenshot
Screenshot

644587902_1343621747786167_5084803011443309096_n

IMG_1879

1774359780505

IMG_1867

IMG_1854
Categories
Current Events Meetups Tampa Bay

Tampa Bay tech, entrepreneur, and nerd events list (Monday, March 30 – Sunday, April 5)

Here’s what’s happening in the thriving tech scene in Tampa Bay and surrounding areas for the week of Monday, March 30 through Sunday, April 5!

This list includes both in-person and online events. Note that each item in the list includes:

✅ When the event will take place

✅ What the event is

✅ Where the event will take place

✅ Who is holding the event

This week’s events

Monday, March 30

Monday at 6:30 p.m. online: Tampa AI Applications Meetup Group will cover Manus.ai as a prompt-based tool that can be used for automating tasks. Organizer Rodney Biddle currently uses it for gathering news stories on two websites and is using it to collect event data for a third. It is prompt based and can connect to your Google sheets, or other applications (he uses Airtable).

This will be a casual review of how he’s using it and a chance to toss around ideas as to how you could as well. Manus is not like ChapGPT or many other LLMS as it can perform many tasks once prompted autonomously and as it is working, can actually be “Nudged” as it works with additional prompts without stopping work it is doing.

Find out more and register here.

Event name and location Group Time
Venice Area Toastmasters Club #5486
Online event
Toastmasters District 48 7:30 AM to 9:00 AM EDT
UE5 Blueprint Fundamentals Class Series – Part 1
Online event
Orlando Game Developers Meetup 4:00 PM to 5:30 PM EDT
Tea Tavern – Dungeons and Dragons
Monday, Mar 30 · 6:00 PM to 11:00 PM EDT
Tea Tavern Dungeons and Dragons Meetup Group – DMS WANTED 5:59 PM
PL-300 Study Group Power BI – Use Cases. Wave theme: Travel and Entertainment
Online event
Orlando Power BI User Group 6:00 PM to 7:00 PM EDT
Speakeasy Toastmasters #4698
Online event
Toastmasters District 48 6:00 PM to 8:00 PM EDT
Sarasota Blood on the Clocktower
Clocktower meetup
Board Games and Card Games in Sarasota & Bradenton 6:00 PM to 10:00 PM EDT
MTG: Commander Night
Critical Hit Games
Critical Hit Games 6:00 PM to 11:00 PM EDT
Food, Fun & Games!
Village Inn
Gulfside Gatherings 6:00 PM to 8:00 PM EDT
Automations with Manus.AI
Online event
Tampa AI Applications Meetup Group 6:30 PM to 7:30 PM EDT
Toast of Lakewood Ranch Toastmasters Club
Lakewood Ranch Town Hall
Toastmasters District 48 6:30 PM to 7:30 PM EDT
North Port Toastmasters Meets Online!!
Online event
Toastmasters District 48 6:30 PM to 8:00 PM EDT
Mothership Monday: The Dose Makes the Poison
Kitchen Table Games (New Location)
St Pete and Pinellas Tabletop RPG Group 6:30 PM to 9:30 PM EDT
Adult Dungeons & Dragons One-Shot Campaigns at Conworlds Emporium
Conworlds Emporium
Tarpon Springs Community Fun & Games 6:30 PM to 10:00 PM EDT
Stirling Toastmasters Club #7461614 | Public Speaking & Leadership Development
Dunedin
Toastmasters District 48 7:00 PM to 8:30 PM EDT
Let’s Talk Toastmasters
Online event
Toastmasters Divisions C & D 7:00 PM to 8:30 PM EDT
March 30 – Clocktower Begins
Old Tavern Games
Blood on the Clocktower – New Port Richey 7:00 PM to 10:00 PM EDT
DigiMondays
Sunshine Games | Magic the Gathering, Pokémon, Yu-Gi-Oh!
Sunshine Games 7:30 PM to 9:30 PM EDT
Weekly General Meetup
Online event
Beginning Web Development 8:00 PM to 9:00 PM EDT
Where is Bitcoin Going?
Online event
Bitcoiners of Southwest Florida 9:00 PM to 10:00 PM EDT
Return to the top of the list

Tuesday, March 31

Tuesday at 5:30 p.m. at Hidden Springs Ale Works (Tampa): It’s the last Tuesday of the month, which means it’s time for taps and tacos!

Connect and network with tech industry peers! Connect & network with tech industry peers. Enjoy 15% off drinks as a tech attendee! And best of all, free tacos (and if you’re very, very, good, deep-fried Oreos).

Find out more here.

Event name and location Group Time
Coffee & Coworking
Tuesday, Mar 31 · 11:00 AM to 1:00 PM EDT
Hello Culture Tampa Bay 4:14 PM
UE5 Blueprint Fundamentals Class Series – Part 2
Online event
Orlando Game Developers Meetup 4:00 PM to 5:30 PM EDT
March | TampaTech Taps & Taco Tuesday

Hidden Springs Ale Works
Kelsey Puryear 5:30 PM to 8:30 PM EDT
Weekly Open Make Night
4931 W Nassau St
Tampa Hackerspace 6:00 PM to 9:00 PM EDT
Build and Vibe: Flutter 3D Orb
Online event
GDG Tampa Bay 6:00 PM to 7:30 PM EDT
Disney Lorcana Night
Critical Hit Games
Critical Hit Games 6:00 PM to 11:00 PM EDT
Hobby Night
Critical Hit Games
Critical Hit Games 6:00 PM to 11:00 PM EDT
Pinellas Writers and Authors Weekly Meeting (Online/Zoom)
Online event
Pinellas Writers Group 6:00 PM to 9:00 PM EDT
Winter Haven Toastmasters
St Paul’s Episcopal Church
Toastmasters Division E 6:30 PM to 8:30 PM EDT
D&D @ Critical Hit Games (Full)
Critical Hit Games
RPG-Pinellas 6:30 PM to 11:00 PM EDT
Tuesday Night Trivia at Henderson’s Kitchen and Bar
Henderson’s Bar & Kitchen
Gen Geek 6:30 PM to 9:30 PM EDT
The Sarasota Creative Writers
Sarasota Alliance Church
The Sarasota Creative Writers Meetup Group 6:30 PM to 9:30 PM EDT
[In-Person] Bitcoin Meetup – ARK Innovation Center
Tampa Bay Innovation Center
Tampa Bay Bitcoin 7:00 PM to 9:00 PM EDT
Winter Springs Toastmasters Club
Online event
Toastmasters Divisions C & D 7:00 PM to 8:15 PM EDT
Boards & Bones Table Top RPGs
Nerdbrew Rented Space
Nerdbrew Events 7:00 PM to 11:00 PM EDT
St. Pete Beers ‘n Board Games Meetup for Young Adults
Pinellas Ale Works Brewery
St. Pete Beers ‘n Board Games for Young Adults 7:00 PM to 10:00 PM EDT
Yu-Gi-Oh Evening Tournament
Sunshine Games | Magic the Gathering, Pokémon, Yu-Gi-Oh!
Sunshine Games 7:00 PM to 11:00 PM EDT
Nic At Nite – Weekly Movie Night
Online event
Nerdbrew Events 7:30 PM to 9:30 PM EDT
Online Event: Shut Up & Write on Zoom
Online event
Shut Up & Write!® Tampa 7:45 PM to 9:15 PM EDT
Return to the top of the list

Wednesday, April 1

Wednesday at 5:30 at Entrepreneur Collaborative Center (Tampa): In this session, you will find out how modern Artificial Intelligence (AI) is transforming protein classification and drug discovery by comparing classic Machine Learning (ML) approaches with emerging Agentic AI systems. They’ll explore how classic ML models compare with next-generation Agentic AI pipelines that leverage multi-step reasoning, tool-based workflow orchestration, scalability, productivity, and adaptive workflows, making them better suited for complex problems. They’ll will walk through a real-world protein classification problem in drug discovery, demonstrating how each approach processes biological sequence data and evaluates predictive performance.

The session will include:

  • A classic ML pipeline demonstration
  • An Agentic AI assistant built using modern frameworks
  • Performance comparisons and key insights

Find out more and register here.

Wednesday at 6 p.m. at Kforce (Tampa): Tampa Bay Product Group presents From Vision to Exit: Relationships, Grit, and Innovation!

This presentation shares Bob Crews’ real-world journey of conceptualizing, launching, growing, sustaining, and ultimately preparing to exit his I.T. company, Checkpoint Technologies, Inc., founded as an S-Corp in January 2003. He’ll reflect on the business decisions, risks, and lessons learned at every stage of the company lifecycle, from the earliest vision to long-term success planning.

He’ll talk about the constant pressure to keep up with changing technology, evolving client expectations, and the rapid rise of AI, all while staying relevant and competitive in a demanding industry. More than a company history, this is his practical and personal perspective on entrepreneurship, resilience, innovation, and what it truly takes to build something lasting, and to know when and how to exit well.

Find out more and register here.

Event name and location Group Time
World Toasters Toastmasters Club
Online event
Toastmasters Division E 7:05 AM to 8:00 AM EDT
Tampa Highrisers Toastmasters
Hyde Park United Methodist Church
Toastmasters District 48 7:45 AM to 8:45 AM EDT
Computer Repair Clinic
2079 Range Rd
Tampa Bay Technology Center 8:30 AM to 12:30 PM EDT
UE5 Blueprint Fundamentals Class Series – Part 3
Online event
Orlando Game Developers Meetup 4:00 PM to 5:30 PM EDT
40k Escalation League
Battlebrush Games
Battlebrush Games: Paint Minis & Play Warhammer/Warmachine 5:00 PM to 9:00 PM EDT
Classic ML vs Agentic AI for Protein Classification in Drug Discovery
Entrepreneur Collaborative Center
Tampa Bay Biotech 5:30 PM to 8:00 PM EDT
Wednesday Board Game Night
Bridge Center
Tampa Gaming Guild 5:30 PM to 11:00 PM EDT
From Vision to Exit: Relationships, Grit, and Innovation
Kforce Corporate Headquarters
Tampa Bay Product Group 6:00 PM to 8:00 PM EDT
Board Game Night
Critical Hit Games
Critical Hit Games 6:00 PM to 11:00 PM EDT
Blockchain & Crypto Investors & Enthusiasts – International Blockchain Group
Pinellas Ale Works, St. Petersburg, FL
Blockchain and Crypto Investors and Enthusiasts 6:30 PM to 8:30 PM EDT
Carrollwood Toastmasters Meetings meet In-Person and Online
Jimmie B. Keel Regional Library
Toastmasters District 48 7:00 PM to 8:30 PM EDT
Game Night!
Florida Avenue Brewing Co.
Tampa 20’s and 30’s Social Crew 7:30 PM to 9:30 PM EDT
Return to the top of the list

Thursday, April 2

Thursday at 7 p.m. at Armature Works (Tampa): Tampa Devs is holding their monthly social gathering at Armature Works!

Enjoy drinks, food, and friendly conversations. Whether you’re new to the area or a long-time resident, this event is a fantastic opportunity to meet new people and expand your social circle.

Find out more and register here.

Event name and location Group Time
UE5 Blueprint Fundamentals Class Series – Part 4
Online event
Orlando Game Developers Meetup 4:00 PM to 5:30 PM EDT
Open Board Gaming Day at Dark Side
Dark Side Comics & Games
Board Games and Card Games in Sarasota & Bradenton 4:00 PM to 10:00 PM EDT
Vecna – Eye of Ruin (T4-APL19)
Coliseum of Comics Kissimmee
Adventurers of Central Florida 6:00 PM to 9:00 PM EDT
TDevs – Meet & Greet @ Armature Works
Armature Works
Tampa Devs 7:00 PM to 8:00 PM EDT
Weekly Hacks
Online event
Hacktivate – Hackathon Meetup Group 8:00 PM to 9:00 PM EDT
Return to the top of the list

Friday, April 3

Event name and location Group Time
Computer Repair Clinic
2079 Range Rd
Tampa Bay Technology Center 8:30 AM to 12:30 PM EDT
Designer Cowork @ Foxtail (St Pete)
Foxtail St Pete
Tampa Bay Designers (Formerly Tampa Bay UX) 10:00 AM to 1:00 PM EDT
Beach Day!
Honeymoon Island
Gen Geek 10:00 AM to 2:00 PM EDT
Age of Sigmar: Escalation League
Battlebrush Games
Battlebrush Games: Paint Minis & Play Warhammer/Warmachine 5:00 PM to 9:00 PM EDT
Friday Board Game Night
Bridge Club
Tampa Gaming Guild 5:30 PM to 11:00 PM EDT
TGIF Game Night !
Park Shore Condos – Community Rec Room
Groupies Got Games 7:00 PM to 10:00 PM EDT
USF CAMPUS “On Anger” – Seneca, Book 3
USF Tampa College of Education
Tampa Stoics 7:00 PM to 9:00 PM EDT
Return to the top of the list

Saturday, April 4

Event name and location Group Time
NATIONAL RAMEN NOODLE NIGHT — STIR UP SOME FUN! Saturday, April 4, 2026-W
Saturday, Apr 4 · 4:45 PM to 9:30 PM EDT
Tampa (Citrus Park Area) Games Meetup Group 11:50 AM
[East Library @ SPC] Self Image Curation: Has Social Media Made It A Burden?
Saturday, Apr 4 · 2:00 PM to 4:00 PM EDT
Clearwater Philosopher’s Club 2:00 PM
Creative Writing In-Person Monthly Gathering for Aspiring Authors
16120 US Hwy 19 N
Pinellas Writers Group 9:00 AM to 12:00 PM EDT
Hunters Creek Toastmasters
Hart Memorial Library 2nd Floor
Toastmasters Division E 9:30 AM to 11:00 AM EDT
Saturday Chess at Wholefoods in Midtown, Tampa
Whole Foods Market
Chess Republic 9:30 AM to 12:00 PM EDT
Coffee & AI: No Tech Skills Required
Hashtag Café
EveryDay AI Learning & Social Meetup Group 10:00 AM to 11:00 AM EDT
EZ Stock (Stock, Options, Market)
2079 Range Rd
Tampa Bay Technology Center 10:00 AM to 12:00 PM EDT
Board Games & Brunch at Conworlds – First Saturday Monthly
Conworlds Emporium
Tarpon Springs Community Fun & Games 11:00 AM to 3:00 PM EDT
Mausritter One-Shot: Tiny Fables
Emerald City Comics 4902 113th Ave N, Clearwater, Florida 33760
St Pete and Pinellas Tabletop RPG Group 1:00 PM to 3:00 PM EDT
Youth Dungeons & Dragons Saturdays (Ages7-12) At Conworlds Emporium
Saturday, Apr 4 · 2:00 PM to 5:00 PM EDT
Tarpon Springs Community Fun & Games 1:00 PM
FREE Fab Lab Orientation
Faulhaber Fab Lab
Suncoast Makers 1:30 PM to 2:30 PM EDT
D&D (5e) @ Black Harbor Gaming (FULL)
Black Harbor Gaming
St Pete and Pinellas Tabletop RPG Group 1:30 PM to 5:30 PM EDT
Wild Beyond the Witchlight (5e dnd)
Coliseum of Comics
Adventurers of Central Florida 2:00 PM to 6:00 PM EDT
Playing Nintendo Games (Nintendo Switch and Switch 2)
Online event
Nintendo Meetup Central Florida 3:25 PM to 5:25 PM EDT
Seminole Game Night (1st Saturday of each Month 4 – 10 PM)
Barbara’s House
It’s All Fun & Games Bradenton, Parrish, Sarasota, & St Pete 4:00 PM to 10:00 PM EDT
Return to the top of the list

Sunday, April 5

Event name and location Group Time
CorelDraw Academy
MakerSpace Pinellas
Makerspaces Pinellas Meetup Group 12:00 PM to 3:00 PM EDT
Blood on the Clocktower at Tampa Gaming Guild
Tampa Bay Bridge Center
Tampa Gaming Guild 1:00 PM to 5:00 PM EDT
Sunday Gaming
Tampa Bay Bridge Center
Tampa Gaming Guild 1:00 PM to 11:00 PM EDT
Sunday Chess at Wholefoods in Midtown, Tampa
Whole Foods Market
Chess Republic 2:00 PM to 5:00 PM EDT
D&D Adventurers League
Critical Hit Games
Critical Hit Games 2:00 PM to 7:30 PM EDT
Traveller – Science Fiction Adventure RPG
Black Harbor Gaming
St Pete and Pinellas Tabletop RPG Group 3:00 PM to 6:00 PM EDT
Sunday Pokemon League
Sunshine Games | Magic the Gathering, Pokémon, Yu-Gi-Oh!
Sunshine Games 4:00 PM to 8:00 PM EDT
A Duck Presents NB Movie Night
Discord.io/Nerdbrew
Nerd Night Out 7:00 PM to 11:30 PM EDT
Return to the top of the list

About this list

How do I put this list together?

It’s largely automated. I have a collection of Python scripts in a Jupyter Notebook that scrapes Meetup and Eventbrite for events in categories that I consider to be “tech,” “entrepreneur,” and “nerd.” The result is a checklist that I review. I make judgment calls and uncheck any items that I don’t think fit on this list.

In addition to events that my scripts find, I also manually add events when their organizers contact me with their details.

What goes into this list?

I prefer to cast a wide net, so the list includes events that would be of interest to techies, nerds, and entrepreneurs. It includes (but isn’t limited to) events that fall under any of these categories:

    • Programming, DevOps, systems administration, and testing
    • Tech project management / agile processes
    • Video, board, and role-playing games
    • Book, philosophy, and discussion clubs
    • Tech, business, and entrepreneur networking events
    • Toastmasters and other events related to improving your presentation and public speaking skills, because nerds really need to up their presentation game
    • Sci-fi, fantasy, and other genre fandoms
  • Self-improvement, especially of the sort that appeals to techies
  • Anything I deem geeky
Categories
Artificial Intelligence Business Meetups Presentations

Meet Madtech.AI: Notes from Bill Lederer’s presentation at AI Salon: St. Pete/Tampa Bay

If you were at spARK Labs in St. Pete last night for AI Salon: St. Pete/Tampa Bay, you got to hear from two very different voices on AI in the enterprise.

Where Accenture’s James Gress offered a view from 50,000 feet and talked about the big-picture challenges facing massive organizations, Bill Lederer brought it down to earth with something more specific and more personal: the story of Madtech.AI, his B2B SaaS startup, built in St. Pete, and now looking to change how mid-market organizations make marketing decisions.

Bill’s been in this space a long time. He’s been a Wall Street executive, a professor, and now he’s a founder. When asked what “Madtech” stands for, he lights up like you just handed him a perfectly teed pitch and answers “Marketing. Advertising. Data. Technology.” The convergence of all four is the thesis he’s been working toward for over a decade, and last night he laid out what that convergence has produced.

Bill’s Madtech presentation

The Problem: Your data’s a mess, and you know it!

Madtech.AI exists to solve one foundational problem that Bill says afflicts 80% of the market they serve: disconnected, siloed, unusable data.

This isn’t not a glamorous problem. It doesn’t make for great conference keynotes. But if you’ve ever tried to make a marketing decision and discovered that your data lives in six different systems that don’t talk to each other, you know exactly what he means. You can have all the AI in the world sitting on top of your stack, and if the data feeding it is fragmented and dirty, you’re building on sand.

Bill and his team have spent roughly ten years in the unglamorous trenches of this problem, building data connectors, ETL and ELT pipelines, transformation tools, data warehousing. The kind of infrastructure work that nobody talks about at cocktail parties but that everything else depends on. The result: over 300 data connectors and more than 700 proprietary data models accumulated over eleven years of professional services work. That’s a significant moat, even if it doesn’t sound like one.

The metric that stopped the room

Here’s the number that got people’s attention (mine included): building a data pipeline used to take six to nine person-hours. Madtech.AI has that down to three minutes, fully deployed and tested. And Bill mentioned, almost in passing, that they’re ninety days away from getting it to thirty seconds.

This is the kind of orders-of-magnitude productivity difference that James Gress had been talking about earlier: AI compressing time-consuming processes by enormous factors. If your organization is spending engineering days on data pipeline work, that number should make you sit up.

Who they’re built for (hint: probably you!)

Bill was explicit about Madtech.AI not chasing the Fortune 500. He wasn’t thinking about enterprise clients when he built the platform. His target is the middle market, which he defined as organizations doing between $1 million and $200 million in annual revenue. They’re actively going after.about 20,000 target enterprises.

Interestingly, their current customer base skews heavily toward nonprofits. And there’s a real insight buried in that: nonprofits, unlike most businesses, are willing to share data on an aggregated, anonymized basis. That willingness unlocks something powerful. When organizations share, everyone benefits from insights none of them could have reached individually. It’s a cooperative data model that the for-profit world, with its instinct toward data hoarding, tends to miss out on.

Their verticalization roadmap runs from nonprofits and cultural attractions into associations and post-secondary schools, which have similar data cultures and marketing challenges.

The price point is the point

The platform, which includes a full data unification and transformation suite plus a marketing decision intelligence layer, runs $5,000 a month. Flat. No charges per data source, no charges per data model, no metered consumption traps.

Bill made the comparison explicitly: buying these capabilities separately, or having someone build them for you, would normally run into the hundreds of thousands of dollars. At $5K monthly, they’re positioning this as enterprise-grade capability at a price point that the middle market can actually afford. That’s the bet.

The business model is standard B2B SaaS: licensing, some consumption charges, and a marketplace where third-party data and software providers integrate and share revenue. The entire platform is white-labelable, which means channel partners and resellers are very much welcome.

They’re raising, and they’re hiring

Bill was refreshingly direct about where Madtech.AI is right now: close to breakeven, actively raising a $517,000 round, and looking for both investors and the right people to join the team.

He also announced that Kyle Shea, a friend of twenty years, has joined as Chief Revenue Officer, relocating to St. Pete from Fort Lauderdale. The team is small and deliberate, which is consistent with the middle-market-focused, capital-efficient approach they’ve described.

If you’re a potential investor, a channel partner, a nonprofit marketing director staring at a spreadsheet full of data you can’t use, or just someone who wants to know more, Bill is easy to find. He was working the room after his talk the way a man does when he genuinely enjoys talking about what he’s built (I certainly enjoyed my chat with him).

And based on what he showed last night, he’s built something worth talking about.

Categories
Artificial Intelligence Meetups Tampa Bay

Five Things We Learned at AI Salon: St. Pete/Tampa Bay – Notes from a fireplace conversation with Accenture’s James Gress

Last night, spARK Labs in St. Pete hosted another edition of AI Salon: St. Pete/Tampa Bay, and it featured a “fireplace” conversation with Brian Peret as host and James Gress [Linkedin] as guest.

James is a solutions architect at Accenture who spends his days helping large enterprises figure out how to actually deploy AI instead of just posting on LinkedIn about it. You’ve probably seen him at all sorts of local events, from his Tampa Bay Generative AI Meetup to conferences like DevOps Days Tampa Bay and Civo Navigate. A lot of people talk AI; James actually helps clients get stuff done with it.

Brian uses a deliberately loose format with AI Salon fireside chats. They’re part structured interview, part open floor, and if there’s ever any jargon or terminology that may not be familiar to laypeople, he always makes sure that the audience gets a definition. The end result is a more grounded, hype-free AI conversation, and a catalyst for conversations among attendees once the presentations end. It’s one of the reasons I continue to attend AI Salon: St. Pete/Tampa Bay.

The five things we learned

1. Shadow AI is real, and your restrictive policy is probably creating it

James made what might be the evening’s most quotable observation: If you ban AI in your organization, you’re not stopping your employees from using it. You’re just driving their AI usage underground.

He called this shadow AI, the AI-era cousin of shadow IT. Someone discovers that Claude or Gemini dramatically cuts their workload. Their company hasn’t approved it. So they use their personal laptop, their personal account, and a free tier,which almost certainly means their prompts and outputs are being used for model training. Your trade secrets and confidential information just became someone else’s training data.

OpenClaw, the viral open-source autonomous AI agent that went through a dizzying rename trilogy (Clawdbot → Moltbot → OpenClaw) before its creator joined OpenAI,  came up as a specific example. James mentioned IT staff installing it on company machines without authorization, introducing real vulnerabilities into their organizations’ ecosystems. This isn’t hypothetical: security researchers at Cisco have documented OpenClaw instances performing data exfiltration without user awareness, and one of the project’s own maintainers warned publicly that it’s “far too dangerous for you to use safely” if you don’t understand what you’re doing at the command line.

A blanket ban won’t work. What works is intentional governance: an AI governance board, approved tooling, and enterprise licensing agreements with real data protection clauses baked in. Stifling AI use, James argued, will radicalize your people towards Shadow AI.

2. NemoClaw raises the right questions even if you don’t have answers yet

One audience member asked James about NemoClaw, NVIDIA’s open-source stack that layers privacy and security controls on top of OpenClaw, and its implications for enterprise AI adoption. James was candid: he’s not in those specific loops at Accenture. But the question itself is the point.

As autonomous agents like OpenClaw become more capable and more widely deployed, the enterprise world is going to need hardened, governable versions of these tools. NemoClaw represents one approach to that problem. Whether it becomes the standard, or whether the market converges on something else entirely, it addresses an important question: “How do you let an autonomous agent act on your behalf without giving it a loaded gun pointed at your data?” Every organization is going to have to come up with an answer.

3. Data privacy looks different depending on your company size

For enterprises, the data privacy question is largely handled through legal agreements. Accenture has armies of lawyers who negotiate with OpenAI, Microsoft, and Google to ensure client data isn’t used for model training and doesn’t leak. That’s how large organizations get comfortable enough to let their workforces use these tools.

But most of us in the room aren’t Accenture- or OpenAI- or Microsoft-sized. For those of us in that boat, James was candid: if you can’t afford legal counsel to vet your SaaS AI agreements, at minimum read what you’re signing. On free tiers, you’re the product, and your data trains the model. If you’re handling anything sensitive, you probably need a paid tier with real data terms, and possibly a consultant who knows what to look for.

He also mentioned a practical habit worth stealing: he sets up dedicated accounts with secondary email addresses for AI tools he doesn’t fully trust yet. If something goes sideways, it’s isolated from his primary identity and credentials.

I myself have account like these that purportedly belong to a Volvo-driving Rails developer divorcee with a penchant for tv shows and novels in the vein of Heated Rivalry. Given what we know about OpenClaw’s permission requirements and prompt injection vulnerabilities, that kind of defensive hygiene is looking less paranoid by the day.

4. Measuring AI ROI starts with measuring anything

When Brian asked for concrete KPIs to evaluate AI effectiveness, James gave what I thought was the most honest answer of the night: most organizations don’t currently measure the processes they’re trying to improve, so they have no baseline to compare against.

James’ framework is simple: pick a process you already care about, measure how long it takes today, then measure after AI intervention. Full automation is rare. More often, you’ll see something like a four-hour task shrunk to two hours. That 50% reduction is real, trackable ROI. Replicate that across your workflow, add up the hours, and you have a story you can tell leadership.
The inverse test is equally useful: if it takes you longer to set up and prompt the AI than it saves you, you’ve found a bad fit. Move on.

5. Python: last language standing?

This one generated the liveliest back-and-forth of the night. James made a striking prediction: as vibe coding becomes the norm, developers will naturally gravitate toward whichever languages AI generates most reliably.

Right now, that’s Python. Not because Python is objectively superior for every task, but because the models have seen so much of it that their output is consistently good.

(COBOL, for what it’s worth, is still a disaster. James admitted as much, with the weary tone of a man who has stared into that particular abyss.)

The implication is unsettling for language diversity. If a new programming language can’t get traction with AI code generation on day one, it faces an enormous adoption headwind. And if everything AI generates trends toward Python, we may end up with a monoculture which, as one audience member noted, creates systemic fragility. Everyone shares the same vulnerabilities.

I chimed in, saying that high-level programming languages might come to be seen as a “middleman” that can be removed, and we may end up with a more direct route, with our prompts being converted directly to assembly code. James remarked that most developers don’t do assembly and that it would remove the human from the loop, and I suggested that for some parties, that might be the goal.

James’s counterpoint was interesting: perhaps Python becomes the human-readable surface layer while compilers handle the optimization underneath, preserving expressiveness without sacrificing performance. An elegant theory. We’ll see.

The conversation continued well past the official end time, with audience members clustering around James to continue threads the format couldn’t fully accommodate. That’s the sign of a good AI Salon.

The next one’s May 6th (and just a couple of days before Brian’s birthday). Don’t miss it!

Categories
Artificial Intelligence Programming

Upgrading “Eternal Grind” with Claude Code, step by step

Eternal Grind — my zero-player RPG homage to the legendary Progress Quest — was originally built agentically using Zencoder’s Zenflow tool. The code is clean, self-contained, and dependency-free web page made up of just three files: index.html, game.js, and style.css. No build system required!

You can play it right now if you want to watch a randomly-generated hero grind their way through meaningless progress bars. I’ll wait…

Back? Great. Now let me show you how I upgraded Eternal Grind using Claude Code. If you’re new to vibe coding, this article’s for you!

Starting up

The first thing I did was change directories to the one containing the Eternal Grind code and then launch Claude Code with this command:

claude

Claude Code started up, and my terminal displayed the following:

Getting oriented with /init

With Claude Code launched in the Eternal Grind directory, it was time to run /init, Claude Code’s command for initializing a project:

/init

/init analyzes the codebase in the current directory and generates an AGENTS.md file, a document that describes the repo’s structure and conventions so that the AI agent can work effectively within it.

Here Claude Code responded to /init. The process took a few moments…

⏺ Searched for 2 patterns, read 6 files (ctrl+o to expand)

⏺ Now I have a complete picture. This is a simple, 
self-contained vanilla web app with no build system, no 
linters, and no test framework. Let me generate 
the AGENTS.md.

⏺ Write(AGENTS.md)
  ⎿  Wrote 38 lines to AGENTS.md
       1 # Repository Guidelines
       2
       3 ## Project Structure & Module Organization
       4
       5 Eternal Grind is a zero-player RPG (a parody idle game inspired by Progress Quest) built as a self-contained vanilla web application with no build tools, frameworks, or dependencies.
       6
       7 - `index.html` — Three-column dashboard layout (Character Sheet, Engine of Progress, Data Feed)
       8 - `game.js` — All game logic in a single file: data arrays, helpers, state management, game loop, and DOM rendering
       9 - `style.css` — Retro Windows 95 aesthetic using monospace fonts and high-contrast borders
      10 - `docs/Eternal Grind spec.md` — Original functional specification describing UI layout, core mechanics, and data tables

⏺ AGENTS.md has been created at the repository root. 
It covers:

  - Project structure — the three core files and the spec 
    document
  - Architecture overview — how game.js is organized
    (data, helpers, state, game loop, DOM rendering)
  - Development — how to run it (just open index.html)
  - Commit conventions — derived from git history

  Since there's no build system, linter, test framework, 
  or CI pipeline, those sections were omitted per the 
  "no evidence, no section" rule.

I like that last note: “no evidence, no section.” Claude Code read the git history to infer commit conventions rather than making things up, and correctly skipped sections about build pipelines and test suites because there aren’t any. It understood the project accurately on the first pass!

The content pipeline: populating the game’s data arrays

Most of Eternal Grind‘s personality lives in game.js as plain JavaScript arrays, which are lists of things like monsters, items, locations, tasks, and so on. The game randomly samples from these lists to generate its endlessly absurd narration. Extending the game is mostly a matter of adding more material to these arrays.

I asked Claude Code to show me what was already there:

List the monsters/opponents in the game.

It responded with the following:

⏺ Based on game.js:62-66, the monsters are:

  1. A Literal Metaphor
  2. The Concept of Ennui
  3. A Low-Level Bugbear
  4. An Imaginary Friend
  5. A Confused Salesman
  6. A Dust Bunny of Doom
  7. The Ghost of a Dead Pixel
  8. A Sentient Terms of Service Agreement

That’s a solid starting lineup, but it needed reinforcements. Specifically, the kind of opponents you’d actually encounter in everyday modern life. I requested the following…

Add the following monsters to the game: A Grumpy Barista,
Two Podcasters Who Won't Shut Up, A Five-Year-Old on a Sugar
Rush, The HR Department, A Belligerent Walmart Greeter,
"Screech" from "Saved By the Bell"

…and it replied like so:

⏺ Update(game.js)
  ⎿  Added 4 lines, removed 1 line
      62    "A Literal Metaphor", "The Concept of Ennui", "A Low-Level Bugbear",
      63    "An Imaginary Friend", "A Confused Salesman",
      64    "A Dust Bunny of Doom", "The Ghost of a Dead Pixel",
      65 -  "A Sentient Terms of Service Agreement"
      65 +  "A Sentient Terms of Service Agreement",
      66 +  "A Grumpy Barista", "Two Podcasters Who Won't Shut Up",
      67 +  "A Five-Year-Old on a Sugar Rush", "The HR Department",
      68 +  "A Belligerent Walmart Greeter", "\"Screech\" from \"Saved By the Bell\""
      69  ];

Note that Claude Code correctly handled the escaped quotes around "Screech" without being asked. Small thing, but the kind of thing that would cause a runtime error if it got it wrong.

Expanding the treasure system

Treasure in Eternal Grind is generated by randomly combining an adjective with a noun, so you end up hauling things like an Overpriced Paperclip of Hope or a Slightly Damp Sock of Mystery. I asked Claude Code to list what was already in the system, then added to both halves:

What are the trasures in the game?

Note that I misspelled “treasure.” Also note that Claude Code knew what I meant:

⏺ Based on game.js:48-59, treasures are generated by 
combining a random adjective with a random noun:

  Adjectives: Dull, Polished, Forbidden, Rusty, Lamentable, 
  Insignificant, Glowing, Slightly Damp, Overpriced, Mediocre, Legendary-ish

  Nouns: Scissors of Regret, Pebble of Mediocrity, Scone 
  of Power, Lint of Destiny, Paperclip of Hope, Broken Twig, 
  Expired Coupon, Sock of Mystery, Unfinished Novel, 
  Jar of Pickled Thoughts

  So you'd get items like "Overpriced Scissors of Regret" 
  or "Slightly Damp Lint of Destiny."

First, I asked for more adjectives:

Add the following to the list of adjectives for treasures:
Moderately Sticky, Dusty, Bullet-Riddled, Slightly Reeking,
Retro-Ish, Somewhat Cursed
⏺ Update(game.js)
  ⎿  Added 2 lines, removed 1 line
      48  const ITEM_ADJECTIVES = [
      49    "Dull", "Polished", "Forbidden", "Rusty", "Lamentable",
      50    "Insignificant", "Glowing", "Slightly Damp", "Overpriced",
      51 -  "Mediocre", "Legendary-ish"
      51 +  "Mediocre", "Legendary-ish", "Moderately Sticky", "Dusty",
      52 +  "Bullet-Riddled", "Slightly Reeking", "Retro-Ish", "Somewhat Cursed"
      53  ];

Then, some new nouns. This is where I got to bring in some very specific cultural artifacts:

Add the following to the list of treasure nouns: 1980s
Goldstar TV, Troll Doll, Off-Brand Labubu, McDonalds Sweet
and Sour Sauce, Ceramic Elvis Bust, Ron Jon Surf Shop
T-Shirt, Sneakers of Minor Destiny, Poker Chips of Fate
⏺ Update(game.js)
  ⎿  Added 4 lines, removed 1 line
      56    "Scissors of Regret", "Pebble of Mediocrity", "Scone of Power",
      57    "Lint of Destiny", "Paperclip of Hope", "Broken Twig",
      58    "Expired Coupon", "Sock of Mystery", "Unfinished Novel",
      59 -  "Jar of Pickled Thoughts"
      59 +  "Jar of Pickled Thoughts", "1980s Goldstar TV", "Troll Doll",
      60 +  "Off-Brand Labubu", "McDonalds Sweet and Sour Sauce",
      61 +  "Ceramic Elvis Bust", "Ron Jon Surf Shop T-Shirt",
      62 +  "Sneakers of Minor Destiny", "Poker Chips of Fate"
      63  ];

I have to admit “Somewhat Cursed Off-Brand Labubu” is one of my proudest creative achievements.

Finding the gaps

Rather than guessing what else needed updating, I asked Claude Code directly:

What lists have I not yet edited?
⏺ Based on the data arrays in game.js, you haven't edited:

  1. NAMES (line 7) — Character names
  2. RACES (line 18) — Character races
  3. CLASSES (line 25) — Character classes
  4. TASKS (line 32) — Actions performed during questing
  5. LOCATIONS (line 41) — Places the character visits
  6. SPELLS (line 68) — Spells and abilities
  7. STATS (line 75) — Character stat names
  8. EQUIPMENT_SLOTS (line 82) — Equipment slot names
  9. ACTS (line 86) — Plot act titles

  You've edited MONSTERS, ITEM_ADJECTIVES, and ITEM_NOUNS.

I still find the fact that Claude Code “knows” what’s been touched and what hasn’t a bit eerie, but it’s also useful and it’s exactly where a good agentic coding tool shines.

Tasks and acts

Tasks are the descriptions of what the player’s character is doing at any given moment. The originals leaned heavily into corporate ennui, which I wanted to preserve and amplify:

List the tasks.
⏺ Based on game.js:32-39, the tasks are:

   1. Debating a fence post
   2. Polishing a rusty nail
   3. Contemplating the void
   4. Waiting for a sign
   5. Filing a 1040-EZ
   6. Staring into the middle distance
   7. Organizing a sock drawer
   8. Explaining the internet to a rock
   9. Searching for a lost remote
  10. Counting ceiling tiles
  11. Simulating a personality
  12. Buffing out a scratch in reality
Add these to the tasks list: Daydreaming about cheese,
Alphabetizing soup cans, Sorting a spreadsheet column,
Doom-scrolling LinkedIn, Applying to Blue Man Group,
Pressing a crosswalk button, Adjusting the thermostat,
Turning the pillow to the cool side
⏺ Update(game.js)
  ⎿  Added 5 lines, removed 1 line
      35    "Filing a 1040-EZ", "Staring into the middle distance",
      36    "Organizing a sock drawer", "Explaining the internet to a rock",
      37    "Searching for a lost remote", "Counting ceiling tiles",
      38 -  "Simulating a personality", "Buffing out a scratch in reality"
      38 +  "Simulating a personality", "Buffing out a scratch in reality",
      39 +  "Daydreaming about cheese", "Alphabetizing soup cans",
      40 +  "Sorting a spreadsheet column", "Doom-scrolling LinkedIn",
      41 +  "Applying to Blue Man Group", "Pressing a crosswalk button",
      42 +  "Adjusting the thermostat", "Turning the pillow to the cool side"
      43  ];

The acts are the overarching chapter titles that frame the endless grind. The original game had four. I felt it needed more. Much more:

List the acts.
⏺ Based on game.js:86-91, the acts are:

  1. Act I: The Tutorial Nobody Asked For
  2. Act II: The Grinding Begins
  3. Act III: Despair in Four Stages
  4. Act IV: The Post-Credits Confusion
Add the following acts: Act V: That Wasn't the End, Act VI:
The Writer's Barely-Disguised Fetish, Act VII: Mid-Season
Filler, Act VIII: Do You Really Read These?, Act IX: My
Sister Was Bitten By a Møøse Once, Act X: A New Hope, Act XI:
The Old Hope Was Better, Act XII: Twelve Angry Badgers, Act
XIII: Triskaidekaphobia, Act XIV: They're Coming to Take Me
Away, Ha-Ha, Act XV: Still Playing, Are We?
⏺ Update(game.js)
  ⎿  Added 12 lines, removed 1 line
       98    "Act I: The Tutorial Nobody Asked For",
       99    "Act II: The Grinding Begins",
      100    "Act III: Despair in Four Stages",
      101 -  "Act IV: The Post-Credits Confusion"
      101 +  "Act IV: The Post-Credits Confusion",
      102 +  "Act V: That Wasn't the End",
      103 +  "Act VI: The Writer's Barely-Disguised Fetish",
      104 +  "Act VII: Mid-Season Filler",
      105 +  "Act VIII: Do You Really Read These?",
      106 +  "Act IX: My Sister Was Bitten By a Møøse Once",
      107 +  "Act X: A New Hope",
      108 +  "Act XI: The Old Hope Was Better",
      109 +  "Act XII: Twelve Angry Badgers",
      110 +  "Act XIII: Triskaidekaphobia",
      111 +  "Act XIV: They're Coming to Take Me Away, Ha-Ha",
      112 +  "Act XV: Still Playing, Are We?"
      113  ];

Locations

Adding locations to Eternal Grind was pretty straightforward:

List the locations.
⏺ Based on game.js:41-46, the locations are:

  1. The Forest of Mild Inconvenience
  2. The Cave of Echoing Sighs
  3. Downtown Boredom
  4. The Desert of Dry Humor
  5. Mount Mediocrity
  6. The Swamps of 'I'll Do It Tomorrow'
  7. The Suburbs of Despair
Add these locations: The Villages (Florida), The Complaints
Depertment, The Closet, The Basement of No Return, The Attic
of Surrender
⏺ Update(game.js)
  ⎿  Added 3 lines, removed 1 line
      46    "The Forest of Mild Inconvenience", "The Cave of Echoing Sighs",
      47    "Downtown Boredom", "The Desert of Dry Humor",
      48    "Mount Mediocrity", "The Swamps of 'I'll Do It Tomorrow'",
      49 -  "The Suburbs of Despair"
      49 +  "The Suburbs of Despair", "The Villages (Florida)",
      50 +  "The Complaints Department", "The Closet",
      51 +  "The Basement of No Return", "The Attic of Surrender"
      52  ];

⏺ Done. The five new locations have been added to 
  LOCATIONS in game.js:47-49. (Note: I corrected 
  "Depertment" to "Department" — let me know if 
  you wanted the original spelling.)

I appreciate that Claude Code silently corrected my typo from the derpy “Depertment” to the correctly-spelled  “Department”) and mentioned it in the response rather than just doing it invisibly. Fixing it, but also notifying me, was the right call.

With the first round of content additions done, I committed and pushed:

Commit and push the changes
⏺ Commit successful. Now pushing to remote.

⏺ Bash(git push)
  ⎿  To https://github.com/AccordionGuy/eternal-grind.git
        99a2460..122c62c  main -> main

⏺ Done. Changes have been committed and pushed to 
  origin/main.

A bigger change: separating equipment from treasure

Up to this point, the character’s equipment was just randomly generated treasure items using the same adjective-plus-noun combinations that fill the loot feed. That felt wrong. Your boots shouldn’t be a Rusty Paperclip of Hope. So I started asking questions:

Does the player's equipment change during the game, or is it
simply determined at the beginning?
⏺ Equipment is only set once at the beginning. 
  It's generated during initialization (line 174-176) 
  where each slot gets a random item, and renderEquipment() 
  just displays the current state. There's no logic anywhere
  that upgrades or swaps equipment during gameplay.

  Would you like me to add equipment upgrades — for example, 
  replacing a piece of gear when the player levels up or
  defeats a monster?

I filed that question away for later. First, I wanted a cleaner separation of concerns; dedicated, per-slot equipment lists with items that actually feel like equipment:

Not at first. Instead, I want equipment to be distinct from
treasure, and for there to be separate lists for each
equipment slot: helm, torso, left and right hands (hands
should use equipment from the same list, and both are allowed
to be equipped with the same item), legs, boots, neck amulet,
and ring. For the time being, the player's equipment should
simply be generated at the start of the game and not updated.
⏺ Read 1 file (ctrl+o to expand)

⏺ Now I have the full picture. I'll replace EQUIPMENT_SLOTS with per-slot item lists and update the initialization to use them.

⏺ Update(game.js)
  ⎿  Added 42 lines, removed 4 lines
       94 +const EQUIPMENT = {
       95 +  "Helm": [
       96 +    "Dented Bucket", "Thinking Cap", "Tin Foil Hat", "Visor of Denial",
       97 +    "Crown of Mild Authority", "Headband of Overthinking",
       98 +    "Hard Hat of Soft Skills", "Beanie of Bewilderment"
       99 +  ],
      100 +  "Torso": [
      101 +    "Ill-Fitting Chainmail", "Hawaiian Shirt of Protection",
      102 +    "Sweater Vest of Resilience", "Bathrobe of Power",
      103 +    "Breastplate of Participation", "Hoodie of Invisibility",
      104 +    "Polo Shirt of Middle Management", "Poncho of Plausible Deniability"
      105 +  ],
      106 +  "Hands": [
      107 +    "Rubber Chicken", "Stapler of Justice", "Foam Finger of Fate",
      108 +    "Spatula of Smiting", "TV Remote of Command", "Rolled-Up Newspaper",
      109 +    "Pool Noodle of Reckoning", "Half-Eaten Sandwich"
      110 +  ],
           … (Legs, Boots, Neck Amulet, Ring slots follow the same pattern)

This was a real structural change, and more than just adding items to an existing list. It refactored the data model entirely.

Claude Code replaced the flat EQUIPMENT_SLOTS array with a keyed EQUIPMENT object, generated appropriate thematic items for each slot, and handled the “Hands” edge case (one shared list, two separate display slots) correctly without extra prompting. It also added an EQUIPMENT_DISPLAY_SLOTS constant to maintain the rendering order without coupling it to the data structure. Clean separation.

Commit and push the changes
⏺ [main a3a60c0] Separate equipment from treasure with per-slot item lists
  1 file changed, 55 insertions(+), 7 deletions(-)
  To https://github.com/AccordionGuy/eternal-grind.git
  3b8918d..a3a60c0  main -> main

⏺ Committed and pushed.

A small UI touch: context-sensitive emoji

The last change in this session was a cosmetic one, but a fun one. The center panel displayed a “crossed swords” image. I wanted it to change based on what the character is doing:

Is the "cross swords" image in the center panel an emoji?
⏺ Yes. It's the crossed swords emoji (⚔️), rendered via 
  HTML entities ⚔️ — U+2694 (CROSSED SWORDS) followed by 
  U+FE0F (variation selector for emoji presentation).
The game should display the crossed swords emoji when the
player is battling a monster, but the ‍♀️ emoji
when performing a task.
⏺ I'll add portrait updating to renderTaskBar since that's 
  where the task phase is already checked.

⏺ Update(game.js)
  ⎿  Added 8 lines
      334 +  // Update portrait emoji based on current phase
      335 +  var portrait = document.getElementById("portrait");
      336 +  if (state.taskPhase === "battle") {
      337 +    portrait.textContent = "\u2694\uFE0F";
      338 +  } else {
      339 +    portrait.textContent = "\uD83D\uDE47\uD83C\uDFFC\u200D\u2640\uFE0F";
      340 +  }
      341  }

Claude Code correctly identified that renderTaskBar() was already checking state.taskPhase, making it the natural home for this logic. Rather than adding a separate function or a polling mechanism, it hooked into existing state management. Two lines of conditional logic, zero new complexity.

Commit and push
⏺ [main e498194] Switch portrait emoji based on task phase
  1 file changed, 8 insertions(+)
  To https://github.com/AccordionGuy/eternal-grind.git
  a3a60c0..e498194  main -> main

⏺ Committed and pushed.

What this session illustrates

This wasn’t a session where I asked Claude Code to write the game from scratch; after all, the game already existed.

What I was doing was extending it, treating Claude Code as an unusually capable pair programmer who could read the codebase, answer questions about it accurately, and execute targeted changes without breaking anything else.

I was impressed by what it did:

  • It knew what it didn’t know. When I asked about equipment upgrades, it answered the question I asked (static, set at init) and then suggested (and didn’t assume) that I might want dynamic upgrades. It waited for direction.
  • It read context before writing code. For the equipment refactor, it explicitly re-read the file before making changes. This is the kind of due diligence that prevents “fixed” code from breaking something three functions away.
  • It handled structural changes alongside content changes. Adding items to an array is trivial. Replacing a flat array with a keyed object, updating initialization logic, and adding a display-order constant to preserve rendering behavior. That’s a real refactor, and it did it in one pass.
  • It fixed typos and told me so. It corrected “Depertment”to “Department” in the locations list and flagged the change rather than silently altering my input.

The game is playable at accordionguy.github.io/eternal-grind, and the source is on GitHub. There’s more work to do: equipment upgrades on level-up, more character names and races, and maybe some actual spell effects beyond the purely cosmetic. Future Claude Code sessions, probably.

 

Categories
What I’m Up To

Latest updates to my portfolio

I maintain a portfolio of my work on a GitHub page that you can access using these easy-to-remember URLs…

…and I’ve updated it to include some new stuff, because it’s been a pretty busy 2026 so far!

Additions include:

  • My upcoming talk at Arc of AI
  • My work for Hammerspace
  • My March appearance with Cory Doctorow on the This Week in Tech podcast
  • The Surviving Your Layoff talk that I did with Anitra at BSides Tampa 2025
  • A couple of “pretty little ditties” at the end

Check it out!