The submission window will open on 8/15/2023 and will close on 8/31/2023, at 11:59 pm Eastern Time zone. Speaker selection will be announced at the end of September. Read below to understand what we are looking for and then head over and submit your talks (

Session Formats

We will be accepting submissions for all types of sessions. Details are below. For some sessions that we know will be popular, we might ask you to do deliver the session more than once.

PreCompiler Sessions

These are 4-hour or 8-hour long workshops featured on Tuesday and Wednesday. There are about half as many attendees around, and it makes for a more intimate experience. These are meant to be very hands-on, and very skill-centric (not product-focused). We will allow up to two speakers for a PreCompiler session, however only one will receive full speaker benefits. We expect the primary speaker to submit the abstract and that speaker will be asked for details for a co-speaker if they have one.

General Sessions

The session format you know and love. One hour with your closest friends. These are held on Thursday and Friday. There are 130 of these session slots available. General sessions can have only one speaker.

Lightning Talks

If you are looking for lightning talk submissions, keep an eye on Twitter. Those are handled separately from our main call for speakers and will be announced later this fall. Please note: being accepted for a lightning talk does not qualify you for regular speaker benefits.

KidzMash Sessionz

  • This is a one-hour session geared for the Kidz ages 5-17 at CodeMash and scheduled for Tuesday through Friday.
  • KidzMash Sessionz can have only one ticketed speaker.
  • KidzMash speakers are fully credentialed speakers, in accordance with the below section titled “Speaker Benefits”.
  • They do not have to be ABOUT technology, as long as they are interesting to kidz. For instance, we have had Sessionz on everything from first aid to popcorn to how a computer counts
  • We need submissions for all different age ranges – we want to cater to the diversity of the range. However, a majority of attendees are under 6.
  • We will have about 15-20 sessions of this type.
  • Attendance will be limited by the KidzMash staff to 50 children per session.
  • Children must be attended by a parent or guardian during the session. Staff will enforce this rule.
  • Please provide an age range in your submission.
  • Please provide the names of any additional non-ticketed speakers.

KidzMash Divez

  • Divez are two-hour sessionz geared for the older Kidz, ages 12 – 17 at CodeMash to get into the details of a topic of interest.
  • Please remember these are kidz, not adultz. Schedule in break times and crazy times during your session to attempt to hold their interest and organize the chaos.
  • There will be 4-6 sessions of this type scheduled for Tuesday through Friday.
  • KidzMash Divez can have only one ticketed speaker.
  • KidzMash speakers are fully credentialed speakers, in accordance with the below section titled “Speaker Benefits”.
  • Divez do not have to be ABOUT technology.
  • Children must be attended by a parent or guardian during the session. Staff will enforce this rule.
  • Please provide an attendee limit for your session. Limit your attendance to 30 or less and provide that in your submission. This will be a ticketed, but free, event.
  • Please provide an age range between 12 and 17 in your submission.
  • Please provide the names of any additional non-ticketed speakers.

Content Tracks

During the submission of each session, you will need to select one “category” into which your session most appropriately fits. You will, as in years past, be able to “tag” it with up to 3 technology-specific categories. The following is the list of categories for this year and a general description of each. Please note that if you don’t see one that exactly fits your topic, choose the one that is closest and provide an explanation or concern in the “notes for the reviewer” section of the submission.

Programming Principles – Build understanding of fundamental coding concepts and best practices, including common programming paradigms such as Object-Oriented Programming (OOP), Functional Programming, Procedural Programming, and more. Through this track, attendees gain valuable insights to enhance their coding skills, enabling them to write more maintainable, efficient, and robust software solutions.

Security – Ways to help ensure your application doesn’t end up on the front page of CNN with the sub-title “46 million passwords leaked” and related topics.

Design (UI/UX/CSS/a11y) – How to make your great, amazing, best-in-the-world piece of software actually usable and accessible by real humans. Not just “make it pretty”, but functionally appropriate and inclusive design.

Hardware/IoT – The place for low-level tinkering or mass integration of small items. For those of you fortunate enough to work at this level, more tools and better approaches to hardware applications. For the rest of us, an opportunity to affect atoms with bits.

Teams & Collaboration – From aspiring developer to CEO, how we work together day to day is just as important as what we are building. Is your team getting along? Do you have good team processes? Is your remote culture working well? How do you use agile in a way that is best for your team? What tools are you using to organize your work? How do you lead effectively as a software engineer or engineering leader? All these things fit into defining ways of working for your team, yourself and your organization.

Data (big/small/otherwise) – The data track will focus on the latest trends and advancements in databases, data science, data visualization, big data management, analytics, machine learning, and artificial intelligence. Attendees will be able to learn from industry experts how to effectively collect, analyze, and interpret data to drive business success.

Software Quality – To testing, code maintenance, accessibility verification and beyond! Aiming for a functional (dare we say enjoyable) user experience in your application as quickly and painlessly as possible.. and then keeping it that way.

Web/Front-End – Making sense of the 3,876 ways to build a website and make it work and accessible with any device. Death to JavaScript. Long live JavaScript. (insert your favorite web tech here).

Architecture – Box arrow, box arrow, cylinder. The Art of designing your application’s inner workings. How to plan for scale, how to not over-engineer your 1-user-per-day website. Where does iterative design fit?

DevOps – Covers the principles, tools, and practices that foster collaboration between development and operations teams. By delving into topics like continuous integration, continuous delivery, automation, and cloud infrastructure, this track equips participants with the knowledge and skills needed to streamline software development processes, enhance deployment efficiency, and improve overall software quality.

Mobile – From native, cross-platform, and web apps to wearables, jetpacks and headsets. If your app is on the go, this track is for you.

Career Development – New to the field of technology, and curious about possible paths forward? Well established in your career and ready to take it to the next level and flex your leadership muscles? Are you trying to cross from a corporate background into the startup world or vice versa? Curious about the benefits of moving into or out of consulting work? This field covers personal development, thoughtful career moves, salary negotiation, and all the wonders of career development.

Writing a good submission

We get a LOT of submissions. They are almost all good, but we still must sift through to find the cream of the crop, the best cuts of bacon, etc. Here are some things that we feel make a good submission.

General Considerations

  • Ensure that your name or other personally identifying information are not in your talk title, description, or notes to help support our blind process. If you have any links for the notes or description field, please ensure you use a URL shortener to obscure the PII. The review team will not be clicking on any links you provide during the blind round, however we want to make sure we can’t immediately identify you by your URLs.
  • Submit more than one talk. Each speaker costs the conference and organizing committee a certain amount of time, energy, and funds. As such, when possible, we lean towards a single speaker who can deliver two awesome sessions than two speakers who can each only deliver one session each. This doesn’t mean we won’t have single-session speakers, it just helps.
  • Avoid submitting 200 talks. We try to limit speakers to 2 total. This is the converse to the previous point. If you simply submit every topic/submission you’ve considered delivering over the past 43 years of your life, the committee has very little idea what you are truly passionate about. We would much rather have you submit 2 or 3 talks that you really care about.
  • The submitter should secure the necessary permissions before submitting.
  • No product pitches. If you want that, become a sponsor, and pick a sponsored session slot. Then pitch all you want.
  • Avoid vendor-technology-specific talks. “An Introduction to Windows Azure Queues” will likely not get selected, regardless of how stellar the talk is. Something more along the lines of “Using Durable Messaging to make your application composable, reliable, and scalable” that then utilizes Azure Queues with comments about the similarity or not to Amazon SQS and RabbitMQ is a much better talk and will be applicable to a broader audience. The key here is to think less about the specific technology and more about the problem or concept that the technology is designed to address. Then, talk to the solution and use relevant technology-specific examples.
  • The broader the audience, the better. A talk on C# is limited to just the C# audience. A talk on abstract architecture for strongly typed languages will appeal to more people.
  • Avoid overly broad sessions. “Introduction to .NET 3.5” or “Testing is Great!” might be interesting, but generally speaking they’re way too broad to get much value out of in a 60-minute session. Draw the focus down to some specific items. Instead of a broad testing talk, narrow it to some tools, like Selenium, or mock or unit test frameworks. Speak to something specific in those.
  • Put your best foot forward by submitting an abstract and bio which follows “the three C’s”: it should be complete, cutting-edge, and coherent.
  • Edit, re-edit, then get it reviewed. Write the draft, step away from it, come back, and edit it later. Several times. Get the abstract out to your colleagues and friends for their feedback. Iterate through this several times.
  • Session content should fill the entire time slot assigned, with 5-10 minutes remaining for Q&A.

The Anatomy of a Good Submission

These are the most relevant fields in the CFP form when performing an evaluation.

  • Title
    • Titles matter. Really. Make your title and abstract sizzle. Really sell the talk. Keeping that in mind, cool titles like “I am MOSS Tester! And You Can Too!” sound nifty, but they are often going to lose the selection committees and attendees. Sure, make your title catchy, but make sure it highlights what your session is about.
  • Description
    • Concise
      • The one to two paragraphs of your abstract is like the one spoon tasters get at a chili competition. This is hard to do. You need to work really hard on making those paragraphs highly impactful. Fall right back to your elementary school fundamentals: introduction, body, conclusion. Set a hook with a great opening: “Bugs. Crashes. Malfunctions. Complete meltdowns. We run into difficulties in our work each and every day.” Follow that on with the value propositions to attendees and examples of what’s covered. Finish up with a great closer that will make your attendees’ mouths water, figuratively, at least.
    • Complete
      • Let us know who your audience is. “If you are a ruby developer looking to up your game…”. The attendees often look for this when deciding if a talk applies to them.
      • Let attendees know what you’ll be talking about. “This highly interactive session will show you three specific tips: improve your estimation, use a daily standup to keep a close focus on your progress, and work in retrospectives.” This helps the selection committee understand if the content fits in, and it helps potential attendees see they should be skipping that bogus session on Drag and Drop Driven Development to attend your presentation.
      • Make it clear what your attendees will learn during your session. “You’ll leave this session with a handle on ways to smooth out your project’s environment” or “This session will show you a great system for boosting customer collaboration and increasing your code’s quality” are good examples.
      • Often veteran CodeMash speakers submit short abstracts. That was fine in previous years. Now that we are doing a blind first round, this may work against you. In general, the committee likes abstracts that cover the three points above.
      • Do not include proprietary or confidential information.
    • Coherent
      • We are always amazed at the handful of unreadable, muddled, flat-out awful submissions we get. Spend time to make sure your submission is clear. Don’t bother submitting if you won’t take this step. Tough love, but it’s true: incoherent submissions are nearly always immediately dropped from consideration.
      • Use the present tense in the abstract. Do not use the first person (I, our, we).
  • Bio
    • The speaker’s bio and session abstracts will be printed on dead trees, the website, and many mobile apps. Ensure that it is something you want the world to see.
    • Your speaker bio is every bit as important as your abstract, particularly if you’re not well-known by the content selection committee. While not required by the system, adding details such as your Twitter handle, blog link, and other social media links is always helpful.
  • Notes and Comments
    • Use the notes to the content team field to explain any relevant background you have or any other color commentary about it. Perhaps this session was featured elsewhere? Perhaps the content led to a Nobel prize. Tell us what we should know. This will only be used during selection, and not shared with attendees.
    • Show some prior feedback on the session. Have you given this talk before? If so, try and collect some feedback on the presentation. Twitters can give you some awesome blurbage you can reference in your abstracts, or notes to the selectors. “I think I’ve learned more about Fitnesse from Jim than anyone else. It was a great talk — standing room only.” – Michael Eaton. Items like that, particularly ones you can hit via live URLs, give you immense credibility.
    • When you add notes, please make sure to do so in a way that does not give away who you are directly. Use shortened links and remove any obvious personally identifiable information.

We have thousands of submissions every year, and a small army is employed to review the submissions.

We break submissions into ‘tracks’, which are just collections of submissions with related topics. To support the polyglot spirit of CodeMash the tracks are topic-focused rather than specific to any given technology. For example, all the hardware/IoT talks, or all the software process talks. Each track is co-owned by a couple of track owners. Those folks are given a track budget to fill with the best talks they can find. Track budgets are determined based on our the results of our Content Interest Survey that we send out in early August.

Our review process involves 3 rounds. The first 2 rounds are evaluated using Sessionize. (KidzMash talks do not follow this process)

  • The initial round of selection is a blind round using the yes/no/maybe evaluation in sessionize. To make it a truly blind round, do not put any identifying information in the title, description, and notes fields. If you have links for the description or notes, please use a URL shortener to help obfuscate any info that may personally identify. The review team will not be clicking on any links you provide during the blind round, however we want to make sure we can’t immediately identify you by your URLs. Any identifying information in these fields that prevents us from evaluating it blindly will automatically disqualify the talk from the selection process.
  • The second round is conducted using the comparison feature in sessionize. This feature gives the reviewer 3 talks at a time and allows them to rank these three in isolation. These rankings are used by the tool to give each talk a score.
  • The final round is primarily a check to ensure we have a mix of known and unknown speakers. We also work to ensure we have a well-balanced and exciting set of content for our attendees. The results of the first 2 rounds are used to give an overall score to each talk. The committee co-chairs (Alyssa and Chris) double check these lists and then send them back to the track owners for final approval.

Expectations and Limits

For CodeMash 2024, the maximum number of general session talks (Thursday and Friday) is roughly 130. This does not include sponsor sessions. The precompilers (Tuesday and Wednesday) will have 8-10 concurrent sessions, or 32-40 total sessions. As always, we know that we will get far more talks submitted than we have room for. For Codemash 2020 we received over 1,400 abstract submissions which left us with an acceptance rate of around 18%. Believe us when we say it is incredibly hard to select sessions when so many great ones are submitted. We truly are grateful for all of the time it takes a speaker to submit a quality abstract.

New Speakers

We have regularly sought out new speakers for CodeMash and each year we have a large percentage of new-to-CodeMash speakers. As we did last year, we are once again being intentional about including at least 13 talks from speakers who are new to CodeMash. This means that in each session slot throughout the conference, there will be at least one session that is presented by a speaker who has never spoken at CodeMash before (or possibly ever). We will be encouraging folks to attend these sessions and hope that it will drive diversity of thought and develop new talent within our community.

Advanced Topics

Each year, we have some folks who love the level of the content and others who yearn for that really advanced session on that niche topic that all of four people in the world care about. We are specifically looking to feature one “Advanced” session during each time slot (13). We hope that this will result in some amazing sessions and, if you have extensive experience in a topic area, we encourage you to submit an advanced talk.

Each credentialed precompiler, general session, or Kidzmash speaker will receive the following benefits in thanks for their time, effort, and expertise at CodeMash. Please be aware that while we allow you to have anyone help you in your session that you would like, we can recognize/bestow benefits on only one speaker per accepted session. Some precompiler sessions can have secondary speakers – if you are submitting a precompiler session that requires a secondary speaker, you must provide an explanation in the “Notes for the reviewer section”. Thank you for making CodeMash great. Additionally, secondary speakers for precompilers must be disclosed at the time of session submission. Secondary speakers cannot be added after sessions have been accepted. 

  • A hotel room reservation, on campus, at the Kalahari to minimize fighting with the Mongol Horde to find a place to stay. That being said, you might end up closer to the water park, so bring good walking shoes. These reservations will be made for you after speaker selections have been made. You will have the opportunity, at your expense, to upgrade the room depending on availability. If you choose to do this, you will be responsible for any cost increase. 
  • A four-day pass to CodeMash. See Horde comment above. 
  • During speaker registration, which is how you commit to speaking at CodeMash once you are selected, you will be able to pick a special speaker gift. They are all roughly the same value. Gifts from last year include a nice speaker shirt, a food basket, an Arduino kit, a giant USB battery for your phone, and many more. 
  • All attendee benefits as well. I guess speakers inherit from the attendee base class. (this includes the famous, and usually really needed, CodeMash HoodieTM). 
  • Unlimited access to a secret speaker bunker, loaded with snacks, drinks, and jet fuel. Red Bull may replace jet fuel based on market prices. This room also includes tables with comfy chairs so you can get work done. 
  • PRECOMPILERS ONLY: In recognition of the amount of time and effort that is required to deliver a successful precompiler session, we are offering a $250 honorarium per 4-hour workshop. This is available only to the primary speaker. 
  • Speakers who need it (wouldn’t be able to come otherwise) can apply for travel grants to help cover their transportation costs. There are a limited number of these and will be limited to $500 each. After selections have been made, speakers will be given the opportunity to apply.