# 6 sad squid snuggle softly

> Whenever a problem causes Asana to crash, our error-reporting system automatically generates a memorable, goofy phrase you can use when reporting the issue.

Source: https://asana.com/inside-asana/6-sad-squid-snuggle-softly

## 6 sad squid snuggle softly

Many of our users are probably familiar with the “unique error phrase” that shows up whenever our application crashes in some way. These have a curious form, and we wanted to share the motivation behind them.

When diagnosing problems, it’s helpful to be able to associate a specific customer incident with information in the logs. Whenever our app crashes, we generate a unique ID for the incident, which is shown to the customer so that they may include it when they write in to us about a problem. This is not a novel practice—it’s actually fairly primitive—but given an ID our staff can jump directly to more technical information on the customer’s issue, letting us classify and respond to it more quickly.

What is novel in Asana is the form these IDs take. In most other applications, a customer-facing ID is usually a long jumble of numbers and/or letters. There are lots of small, subtle drawbacks to representing a number to a human this way, and so for the sake of curiosity—and to add a little levity to an otherwise frustrating situation—we tried something different.

### Sentences from numbers

Imagine representing 32 bits of information (numbers up to 4 billion) as a sentence instead of a jumble of digits. Each sentence can have the same predictable structure, and the number will be used to choose words from a dictionary to fill in that structure—like Mad Libs.

One possible sentence structure can be: count + adjective + plural noun + verb + adverb, e.g. “6 sad squid snuggle softly.” We can divide the bit-space of the number like so:
- 5 bits for the count (2-33, so it is always plural)
- 7 bits for the adjective (one of 128 possibilities)
- 7 bits for the plural noun (one of 128 possibilities, which we made all animals just for fun)
- 7 bits for the verb (one of 128 possibilities)
- 6 bits for the adverb (one of 64 possibilities)

Now, given a dictionary containing words categorized in this way, we can generate 4 billion unique (and sometimes very memorable) sentences. In Asana, the ID used to generate the error phrase is random, so the same sentence is unlikely to occur twice.

### Automatic issue tracking

Since we care deeply about providing users with a stable experience, we have put major effort into a system which records problems that occur _anywhere_ in our application, whether on our servers or in customers’ browsers. It collects a bunch of useful information about the crash (stack traces, log snippets, application state, user and session information, etc.) and automatically groups similar problems and imports them into an internal Asana task list, pictured below.

Having all of the issues in Asana allows us to see aggregate information on each problem, such as the number of occurrences and different users it has affected. From there we can tag, prioritize, and assign it so it gets fixed. This system makes Asana a very effective issue tracker for us, as each issue has lots of important metadata associated with it—including, of course, a way to find it from a unique error message reported by a user.

So, in the event you experience a crash, rest assured it’s already on the list for our team to act on. And we hope you at least get a gem as a consolation prize. 12 soft kittens cuddle warmly. Or 8 mad orcs stomp loudly. Or .. you get the idea.

- [관리 콘솔의 마이크로 프레임워크](/ko/inside-asana/microframeworks-admin-console)

엔지니어링

모든 Asana 배포에는 관리 콘솔이 있습니다. 여기에서 IT 관리자는 비밀번호 요구 사항, 역할 및 권한, Dropbox에서 파일을 첨부할 수 있는지 여부, 기본 설정으로 새 프로젝트를 볼 수 있는 사용자 등 회사가 Asana를 사용하는 방식을 설정합니다.Asana가 성장함에 따라 관리 콘솔에는 수년간의 사용자 지정 ...

- [사양 중심 개발: 장점 - 그리고 3개월 후 얻은 교훈](/ko/inside-asana/spec-driven-development)

엔지니어링

#### 스태프 소프트웨어 엔지니어

3개월이 지난 후, 우리는 추가된 구조가 언제 도움이 되었고 언제 방해가 되었는지 더 명확하게 파악할 수 있었습니다.저희 엔지니어 중 한 명이 데이터 마이그레이션을 준비하고 있었고, 업무 계획을 세우기 위해 사양 중심 개발(SDD)을 사용하기로 했습니다. SDD는 엔지니어가 초기에 누락 사항을 파악하고, 접근 방식을 더 ...

- [우리는 2주 만에 Enzyme에서 마이그레이션했습니다. 5년이 걸렸어야 했습니다.](/ko/inside-asana/migrating-off-enzyme-2-weeks)

엔지니어링

최근에 우리는 AI를 사용하여 한 번의 스프린트에서 수년간의 엔지니어링 작업을 완료했습니다. 그 방법과 이것이 가능성에 대한 우리의 생각을 변화시킨 이유를 소개합니다.5년 문제2022년에 우리는 Asana의 프런트엔드 테스트 스위트를 오래된 테스트 라이브러리인 Enzyme에서 React Testing Library(RT ...

- [치명적인 3가지 요소 해소: Asana가 에이전틱 AI 보안을 생각하는 방식](/ko/inside-asana/how-asana-thinks-about-agentic-ai-security)

엔지니어링

#### 스태프 보안 엔지니어

에이전틱 AI는 업계에서 아직 해결되지 않은 보안 위험 유형을 도입합니다. Asana가 바라보는 보안 위험과 Asana의 AI 기능 전반에 걸쳐 적용하는 보안 불변 사항은 다음과 같습니다.문제점에이전틱 AI 시스템은 단순히 질문에 답하는 데 그치지 않습니다. 문서를 읽고, 조치를 취하고, 여러 도구 간에 조율합니다. 할 ...

- [6 sad squid snuggle softly](/ko/inside-asana/6-sad-squid-snuggle-softly)

엔지니어링

Many of our users are probably familiar with the “unique error phrase” that shows up whenever our application crashes in some way. These have a curious form, and we wanted to shar ...

- [엔지니어링](/inside-asana/engineering-spotlight)
