• Home
  • Technology
  • Gaming
  • Entertainment
  • World & Business
  • Science
  • Sports
  • AI
HomeTechnologyGamingEntertainmentWorld & BusinessScienceSportsAI
    • Home
    • Technology
    • Gaming
    • Entertainment
    • World & Business
    • Science
    • Sports
    • AI
    AI
    Joke

    The work behind building an inbox in an afternoon

    A post argues that a quick build also means handling deliverability, email threading, permissions and message syncing.

    Hiten ShahHS
    Antoine MinouxAM
    2 Sources, ,

    TLDR

    A post argues that building an inbox in an afternoon is only the first job. Its list of follow-up work spans email delivery and threading, chat and help-center upkeep, AI answers based on stale or conflicting content, and security and monitoring.

    Combined views

    18.3K

    2 Sources, first seen 7h ago

    Combined views

    18.3K

    2 Sources, first seen 7h ago

    261 likes
    7h ago
    first seen 7h ago
    261 likes
    51 comments
    159 saves
    33 reposts
    51 comments
    159 saves
    33 reposts
    Featured Source

    Sentiment

    Positive——Negative

    Summary

    Not enough discussion yet.

    No sentiment analysis available yet.

    Sentiment

    Positive——Negative

    Summary

    Not enough discussion yet.

    No sentiment analysis available yet.

    Today's Rank

    —

    Not ranked yet

    Today's Rank

    —

    Not ranked yet

    2 Sources

    Antoine Minoux@AntoineMinouxYes, you can now build an inbox in an afternoon. Congratulations, you are now responsible for: - Deliverability. - Bounce management. - SPF, DKIM, DMARC. - A domain that slowly drifts into spam. - Finding out it why the hell it's drifting into spam?! - Parsing emails from a mail server last updated in 2007 - HTML, plain text, and emails somehow containing neither. - Outlook’s interpretation of HTML. - Outlook’s other interpretation of HTML. - Threading that breaks when someone changes the subject. - Someone starting a new conversation by replying to an email from 2022. - Forwards inside forwards inside forwards. - CC, BCC, reply-all, and someone who really shouldn’t have clicked reply-all. - Attachments. - Attachments with malware.. - Inline images that become attachments. - Attachments that were supposed to be inline images. - A company logo attached to every reply, forever. - Quoted replies. - Distinguishing a quoted reply from the actual reply. - Someone answering your five questions inside the quoted reply. - Signatures longer than the conversation. - The out-of-office that answers your out-of-office. - Two autoresponders having a productive weekend together. - Notifications that fire twice. - Notifications that never fire. - A reply sent from the notification itself. - A reply to a notification about an internal note. - Making absolutely sure that notes stays internal. - Permissions. - Two teammates writing the same reply. - Drafts that sync across devices. - Drafts that overwrite other drafts across devices. - A confidently displayed “Saved” that was optimistic. - Snoozed conversations. - Time zones (!) - Daylight saving time (!!) - A conversation snoozed until a time that technically doesn’t exist. - One customer showing up as three people across email, chat, and Slack. - Three different people sharing one email address. - Merging them. - Undoing the merge. - Search. - Search that finds the thing you can literally see on screen. - Webhooks arriving twice. - Webhooks arriving out of order. - Webhooks not arriving. - Retrying a failed send without sending the customer six apologies. - Rate limits you discover during your first traffic spike. - Training your AI on your product. - Scraping your website. - Scraping the pages that need JavaScript. - Not scraping your entire website footer into every answer. - PDFs. - PDFs that are actually pictures of PDFs. - Keeping the content fresh. - Knowing when content changed. - Knowing when content disappeared. - Making the AI forget the pricing page from last year. - Conflicting answers across your docs, website, and past replies. - Deciding which one wins. - Chunking. - Embeddings. - Reindexing everything when you change embedding models. - Retrieval that finds the answer, not just something with similar words. - Web search tooling. - Knowing when to search. - Prompt injection hiding in a page you just scraped. - An agent confidently promising a feature you don’t have. - An agent confidently issuing a refund it shouldn’t. - Tool permissions. - Tool timeouts. - Tool retries that issue the refund twice. - Knowing when to hand off to a human. - Actually handing off to a human. - Not continuing to argue after handing off to a human. - Evaluating whether any of this works. - Evaluating it again after a model update. - Token budgets. - Context windows. - A customer pasting an entire novel into the chat. - WebSockets. - WebSocket authentication. - Reconnecting WebSockets. - Reconnecting 10,000 WebSockets at once after a restart. - A connection that looks alive but isn’t. - A phone switching from Wi-Fi to mobile data mid-message. - Messages that arrive once. - Messages that arrive in order. - Messages that arrive. - Syncing read states. - Unread badges. - Typing indicators that stop typing eventually. - A customer opening your widget in six tabs. - Anonymous users becoming logged-in users. - Logged-in users logging out on a shared computer. - The iPhone keyboard covering the message composer. - Safari. - Keyboard navigation. - A widget that must not slow down the actual product. - Explaining that “sent” and “delivered” are different things. - A help center. - An editor. - An editor that survives pasting from Google Docs. - Images. - Image resizing. - Broken images. - Article drafts. - Autosave. - Version history. - Restoring the version before someone deleted half the article. - Reordering nested categories without losing an afternoon. - Slugs. - 301 Redirects when slugs change. - Internal links that now point nowhere. - Working out which translations need updating after an edit. - Search that understands what customers mean. - Custom domains. - DNS verification. - SSL certificates. - Renewing SSL certificates. - Someone putting Cloudflare in front of your Cloudflare. - Mobile layouts. - Dark mode. - Code blocks. - Tables on small screens. - Sitemaps. - Canonical URLs. - Accidentally indexing draft content. - Accidentally deindexing published content. - Cache invalidation. - “I published it. Why does it still show the old version?” - Making sure your AI sees the new version too. - Spam. - Phishing. - Someone uploading malware as “a screenshot of the issue.” - Someone pasting their CC details into chat. - Someone asking you to delete every trace of that CC. - Logs that also contain the CC. - Backups that also contain the CC. - Backups. - Restoring backups. - Discovering those are two separate features. - An expired token. - A background job that quietly stopped on Thursday. - “Disk is full.” Sunday. 3 a.m. - Monitoring all of this. - Monitoring the monitoring. Now you have two jobs 🤷‍♂️7h
    Hiten Shah@hnshahRT @AntoineMinoux: Yes, you can now build an inbox in an afternoon. Congratulations, you are now responsible for: - Deliverability. - Bou…1h

    2 Sources

    Antoine Minoux@AntoineMinouxYes, you can now build an inbox in an afternoon. Congratulations, you are now responsible for: - Deliverability. - Bounce management. - SPF, DKIM, DMARC. - A domain that slowly drifts into spam. - Finding out it why the hell it's drifting into spam?! - Parsing emails from a mail server last updated in 2007 - HTML, plain text, and emails somehow containing neither. - Outlook’s interpretation of HTML. - Outlook’s other interpretation of HTML. - Threading that breaks when someone changes the subject. - Someone starting a new conversation by replying to an email from 2022. - Forwards inside forwards inside forwards. - CC, BCC, reply-all, and someone who really shouldn’t have clicked reply-all. - Attachments. - Attachments with malware.. - Inline images that become attachments. - Attachments that were supposed to be inline images. - A company logo attached to every reply, forever. - Quoted replies. - Distinguishing a quoted reply from the actual reply. - Someone answering your five questions inside the quoted reply. - Signatures longer than the conversation. - The out-of-office that answers your out-of-office. - Two autoresponders having a productive weekend together. - Notifications that fire twice. - Notifications that never fire. - A reply sent from the notification itself. - A reply to a notification about an internal note. - Making absolutely sure that notes stays internal. - Permissions. - Two teammates writing the same reply. - Drafts that sync across devices. - Drafts that overwrite other drafts across devices. - A confidently displayed “Saved” that was optimistic. - Snoozed conversations. - Time zones (!) - Daylight saving time (!!) - A conversation snoozed until a time that technically doesn’t exist. - One customer showing up as three people across email, chat, and Slack. - Three different people sharing one email address. - Merging them. - Undoing the merge. - Search. - Search that finds the thing you can literally see on screen. - Webhooks arriving twice. - Webhooks arriving out of order. - Webhooks not arriving. - Retrying a failed send without sending the customer six apologies. - Rate limits you discover during your first traffic spike. - Training your AI on your product. - Scraping your website. - Scraping the pages that need JavaScript. - Not scraping your entire website footer into every answer. - PDFs. - PDFs that are actually pictures of PDFs. - Keeping the content fresh. - Knowing when content changed. - Knowing when content disappeared. - Making the AI forget the pricing page from last year. - Conflicting answers across your docs, website, and past replies. - Deciding which one wins. - Chunking. - Embeddings. - Reindexing everything when you change embedding models. - Retrieval that finds the answer, not just something with similar words. - Web search tooling. - Knowing when to search. - Prompt injection hiding in a page you just scraped. - An agent confidently promising a feature you don’t have. - An agent confidently issuing a refund it shouldn’t. - Tool permissions. - Tool timeouts. - Tool retries that issue the refund twice. - Knowing when to hand off to a human. - Actually handing off to a human. - Not continuing to argue after handing off to a human. - Evaluating whether any of this works. - Evaluating it again after a model update. - Token budgets. - Context windows. - A customer pasting an entire novel into the chat. - WebSockets. - WebSocket authentication. - Reconnecting WebSockets. - Reconnecting 10,000 WebSockets at once after a restart. - A connection that looks alive but isn’t. - A phone switching from Wi-Fi to mobile data mid-message. - Messages that arrive once. - Messages that arrive in order. - Messages that arrive. - Syncing read states. - Unread badges. - Typing indicators that stop typing eventually. - A customer opening your widget in six tabs. - Anonymous users becoming logged-in users. - Logged-in users logging out on a shared computer. - The iPhone keyboard covering the message composer. - Safari. - Keyboard navigation. - A widget that must not slow down the actual product. - Explaining that “sent” and “delivered” are different things. - A help center. - An editor. - An editor that survives pasting from Google Docs. - Images. - Image resizing. - Broken images. - Article drafts. - Autosave. - Version history. - Restoring the version before someone deleted half the article. - Reordering nested categories without losing an afternoon. - Slugs. - 301 Redirects when slugs change. - Internal links that now point nowhere. - Working out which translations need updating after an edit. - Search that understands what customers mean. - Custom domains. - DNS verification. - SSL certificates. - Renewing SSL certificates. - Someone putting Cloudflare in front of your Cloudflare. - Mobile layouts. - Dark mode. - Code blocks. - Tables on small screens. - Sitemaps. - Canonical URLs. - Accidentally indexing draft content. - Accidentally deindexing published content. - Cache invalidation. - “I published it. Why does it still show the old version?” - Making sure your AI sees the new version too. - Spam. - Phishing. - Someone uploading malware as “a screenshot of the issue.” - Someone pasting their CC details into chat. - Someone asking you to delete every trace of that CC. - Logs that also contain the CC. - Backups that also contain the CC. - Backups. - Restoring backups. - Discovering those are two separate features. - An expired token. - A background job that quietly stopped on Thursday. - “Disk is full.” Sunday. 3 a.m. - Monitoring all of this. - Monitoring the monitoring. Now you have two jobs 🤷‍♂️7h
    Hiten Shah@hnshahRT @AntoineMinoux: Yes, you can now build an inbox in an afternoon. Congratulations, you are now responsible for: - Deliverability. - Bou…1h