cho.sh
2,244 notes
Liked on XI made a mistake. When Jack and I decided to organize this $100K Hackathon, my biggest concern was cheating. Unlike a regular hackathon, everyone participates from home. And because the winner is whoever makes the most PROFIT (not revenue), there are so many ways to manipulate the numbers. So I added a $99 entry fee. One thing I’ve learned from building businesses is that people tend to be more committed when they pay for something. I thought it would filter out spam, attract serious builders, and make the competition fairer for everyone. But I completely missed the other side. 3 years ago, I was a living with my apps. Today, I’m financially free. My life changed so much that somewhere along the way, I lost perspective on what $99 means to someone else. For someone in India, someone struggling to pay their bills, or someone trying to make their first dollar online, $99 can be a lot of money. And those are exactly the people I want to help! I’ve spent years sharing what I’ve learned, reviewing random people’s landing pages, and organizing free meetups around the world. Not because there’s money to make, but because I genuinely love seeing people build things and succeed. And somehow, I was so focused on keeping cheaters out that I didn’t realize I was also keeping genuine builders out. That’s my mistake. So I’ve decided to make the $100K Hackathon completely FREE :) Everyone who already paid got a full refund. I’m still worried about cheating. That problem hasn’t disappeared, and Jack and I will have to figure out better ways to verify profits and keep the leaderboard fair. But that’s our problem to solve. Thank you to everyone who shared their thoughts. Sometimes you need people to remind you of things you’ve forgotten. I genuinely hope this hackathon changes someone’s life. ❤️Liked on XIt’s time to bring back Cafe CursorPosted on Xyo @pendev i can't live share edit a .pen file? it's the most needed featurePosted on XI'm coining a word "Agentsplaining" Agents condescendingly assuming the user don't know fuck and repeating the obviousReplied on X@jayhxmo @raycast Hard to explain. It's the small detailsPosted on X@raycast iOS keyboard is insanely good. Might resub Raycast pro just cuz of thisReplied on X@ishuagra02 I saw a theory that F5.2 is a post train of 5.1, but O5.5 is a distillation of F5.5(unreleased new pretrain) and thats why O5.5 > F5.2Liked on X@anaclumos don't know what is actually improved 👀Posted on Xam i the only one underimpressed with 5.2 fableReplied on X@bvvst great minds think alike https://t.co/YRFWhb1mcOLiked on XClaude Fable 5.2 is out and it's the perfect time to run this god-level prompt on your codebase: "I want you to audit our codebase, is anything here unnecessary, overly complicated in our current setup, or based on weak assumptions? Challenge them. - What can be deleted entirely? - What can be simplified now that unnecessary pieces are gone? Then make the changes. Prefer deleting over simplifying, simplifying over optimizing, and optimizing over automating. This product is being used by thousands of customers, do not cut any corners." This prompt is one I run often and leads to the best results.Replied on X@akshayadinesh19 @bot can we please BYOM for botsLiked on XTo be fair, the Chinese models have a much lower refusal rateLiked on XF*CK IT, im creating a library of AI slop indicators. my feed is full of taste larpers. stay tuned https://t.co/5Muv8nQRm3Liked on XJENSEN! THATS NOT WHAT WE MEANT BY CHINESE MODELS!!!!!!!Liked on Xmy parents had to declare bankruptcy when I was a kid, so they had every reason to pressure me towards a more stable career path instead, they were so patient with me, even as i failed startup after startup for years so getting to tell my mom that everything turned out okay was a really special moment :) for those who can't read Korean, her first message roughly translates to: "Really!!! Congratulations my son. So much :') Thank you God!" i know I've been posting about my exit for like a week now, but it really is a big deal for me and my family! i'll share more about how this all happened and some tactical advice later this week, but for now i'm just riding out all the emotions to quote my mom, thank you God!!!!Liked on X@thefarmers_Dog it stands for Egg GzampleLiked on X🦍 Introducing Memorilla: memory as a modality for LLMs Memorilla turns everything a frozen LLM needs to remember into just 16 memory embeddings ⚡ It uses up to 4,212× fewer tokens and is 27× faster than full context inference while more accurate 🎯 Pushes the Pareto frontier over RAG and agentic memory in personalization, long-document and knowledge QA A thread 🧵:Liked on XThere's a huge product opportunity downstream of Tailscale etc too. At @tldraw we've started designing for "high trust networks" and it's been a beautiful thing. 1. Features that would be a nightmare on the internet are okay on my computer and mostly okay on private networks. Websites that execute user-generated scripts, control production systems, allow for users to send desktop notifications, spend tokens, or directly prompt my agent. Crazy stuff that would only make sense if everyone was in a committed polycule. 2. When everyone on the server can be trusted to have _external_ reasons for good behavior (eg keeping their job, or maintaining friends, family, church, mafia org), the software can be designed in a default social way. Most apps default to isolation, low horizontal visibility, highly restricted collaboration. Makes sense if the social contracts are inside of the app, but if you can trust that they live outside of the app then you can get wild. Example being small group chat names as an emergent comedy phenomenon because anyone in the group can change the name. 3. This can work for commercial products, too, not just internal stuff. Security matters more than ever but the way we've seen that manifest is that more companies are more confident in their own solutions than anything we could provide, to the point where owning data and access is a better value proposition than having it managed. Always has been true for big companies but now even small companies can get a good secure network set up pretty easily, and the hooks we need to build are easy enough. tldraw offline got us started down this road (and shout out to @pendev for first introducing me to the idea of desktop + mcp). We've been bringing that product to private networks and it's been exciting to see how much we can get away with. Keep an eye outReplied on X@saradu birds eye viewLiked on XApplications close in 2 days!! If you have a cool bio idea, and $5-10k will go a long way for you, please apply!!! https://t.co/NCvmrNC53cLiked on XWe've been early adopters of Rust since 2018 and a lot of our infra, voice tech, and even some of the current client is already Rust, the holy grail was getting the whole client there. That means Electron goes away, and so does React Native, mobile keeps native UI but shares app code with desktop via Rust. We hope to get it into testing with users soon™. (And it's not Tauri, it's GPUI, so good guess everyone.) Alright, back to staring at the WoW Forever login screen.Reposted on XOh boy. https://t.co/X7SSskGuGvLiked on XRIP .si domain squatters
First week at Karrot

First week at Karrot

Warning

Over a year old. May be outdated

ALT: Banner image showing onboarding goods such as MacBook, charger, sticker, guide, etc.

One week in as an intern at (started 2022-05-22), a Korean unicorn.

The internship is three months, but I want the interview and onboarding down before I forget them.

Application and Interview

A Great Start

It starts at the Karrot Market Team Recruiting Site.

I could really feel how much energy Karrot puts into finding good people.

The recruiting site is clean, and it answers pretty much every question an applicant might have.

Above all, the JD (Job Description) is specific and clear.

Some companies I interviewed at didn't share a JD at all, so this felt way more considerate.

Karrot Mini R&D Engineer Intern JD

Who we're looking for.

Karrot Market still builds a lot of its mobile app with web technology.

The web is a great tool, but it still has many limits when it comes to native platform support.

The OS WebView isn't built to run several apps at once.

And because the web security model and the OS security model differ, it's hard to match the native experience.

For example, if you ask for the user's location through a web API, the consent UI/UX looks different from the native one.

The Karrot Mini team wants a breakthrough from the modern web itself, not from the OS WebView.

We're looking for someone to break through what people thought the web couldn't do, and build an OS-level experience that runs entirely in the browser.

Specifically, you will

  • Research the next-generation web-based runtime for Karrot Market
  • Build a sandbox that isolates multiple apps
  • Provide Karrot Market integration through standard web interfaces
  • Build a scheduler that can watch and control the running state of multiple apps

We're looking for someone who

  • Knows web development with HTML, CSS, and JavaScript
  • Is good at building programs in JavaScript and TypeScript
  • Likes reading the DOM standard and implementing it themselves
  • Is interested in all kinds of web standard APIs
  • Has a basic understanding of the browser security model
  • Wants to run an open-source project from day one

Even better if you

  • Have contributed to or run an open-source project with lots of contributors
  • Know OS, scheduling, and concurrent programming well
  • Can work in several programming languages
  • Have experience with systems languages like C/C++, Go, Rust, or Zig

Please Note...

  • The position lasts three months, and in some cases it can be extended by 6 months

Procedure...

  1. Document submission
  2. Job interview
  3. Final acceptance

Document Screening

Karrot Market takes free-form applications.

Show your strengths however you like.

Any format works, like Word, PDF, or a web link, except hwp files.

Send your portfolio, GitHub link, and so on as needed.

Job Interview

Here we talk in depth about your experience and skills, based on your resume and assignments.

The interview takes 1 hour to 1 hour 30 minutes, with Karrot Market team members who work closely with the role.

Pretty detailed, right?

It was so transparent that I could guess what my position and responsibilities would be before the interview even started.

Applying was simple, too.

No cover letter or anything, just my existing resume.

It took less than 15 minutes.

The Interview

The interview was booked for 1 hour and 30 minutes, like the JD said.

I'd interviewed at several companies before this.

Until then, the interviews I'd had fell into two types.

Example of Behavioral Interview
  • If this happened on your team, how would you handle it?

  • What do you think matters most as a PM or developer?

  • Tell us about this project on your resume.

    What did you learn? What do you regret most?

Example of Technical Interview
  • ~ Please solve this problem.
  • (At a Web3 company) Explain blockchain Proof of Stake. How is it different from Proof of Work? What problem is it trying to solve?
  • Explain the difference between HTTP POST/GET/PUT, etc.

If you were going for a Computer Science internship, you had to prep hard for the second kind.

Either way, most of the interviews I'd had were things you could prepare for.

Karrot was different.

No quiz. 5 minutes in we were talking about real work, more like a team meeting than an interview.

First, the interviewer explained a problem the team was facing.

Then he asked me to look at the possible solutions and walk through their strengths and weaknesses.

Here's what he explained during the interview.

On Mini-Apps

  • WeChat in China has Mini Programs, called Xiaochengxu.
  • They let you sideload small programs inside WeChat.
  • No install needed. Scan a QR code and the mini-app loads super fast, and it feels almost like an app.
  • You don't need to sign up or connect a payment method, either. Your WeChat ID and WeChat Pay are linked automatically, so nothing gets in the user's way.
  • In China, mini-apps already took over the market, and Line and Snap are getting ready for the same trend.
  • Apple launched its own take on mini-apps, App Clips.

If you're curious about mini-apps, check these out!

Karrot

So, how did it go?

Each answer led into the next question.

Interview Questions
  • WeChat builds its own native client, and that client runs the mini-apps. But that means the mini-apps don't follow web standards and use their own security model, which makes them hard to take global. Karrot Market is imagining a similar mini-app environment. What's the right strategy?
  • → It'd be enough to build a general-purpose mini-app that follows standard web specs and the web security model perfectly. In other words, you want to run a WebView inside the web. The first thing that comes to mind is an iframe. What's the problem with doing this in an iframe?
  • → Code inside and outside an iframe runs on the same thread, so if the mini-app freezes, the client app freezes too. How would you fix that?
  • → With a Web Worker, you can put the mini-app and the client app on separate threads. But then the Web Worker can't access the DOM API. For example, you can't call getClientBoundingRect. How would you fix that?
  • → Give Web Workers a virtual DOM API they can access. Google built a model called WorkerDOM for exactly this. And an open-source project called PartyTown, which moves third-party JS into its own Web Worker, came out recently. So how would you build a mini-app system with these?
  • → Say we build the mini-app system on top of Web Worker and WorkerDOM. Can we then do force-quit and multitasking on the web, inside the web? How?

It wasn't a typical interview. It was about seeing how I'd come up with ideas and find a solution at a practical level.

It felt like a coffee chat, and I felt really well taken care of, even as the one being interviewed.

You could see the people team's effort everywhere. They promised to tell everyone, pass or fail, within three days, and when the results ran late they emailed to apologize.

Curious about the answers above? These cover them.

Interesting Things about Karrot

Onboarding

Interns with Power

We're 8 people, and it felt like joining a tiny startup as a core member, not interning at a unicorn.

Interns get a real voice. Nothing is held back, information or opportunities.

Even as an intern I could pitch ideas, ship to production, and suggest new directions for the product design.

On my first day, the team lead encouraged me to speak up more, and that helped a ton.

I was learning on the job, for real.

Great Power and Responsibility

Karrot trusted me first and gave me as much freedom as it could.

For example, I come in whenever I want between 9:00 and 11:00, and I don't say bye when I leave.

Nobody tracks hours. I just have to show results.

Being an intern, I asked about a million things, and I loved hearing "We trust you, go ahead however you think is right."

Working Anywhere

Related to the above, our team has never all met in person.

For the last few days I was the only one from my team at the office.

Right now one of our developers is living on Jeju Island for a month.

Still, everyone on the team kept doing their best work.

Asynchronous communication impressed me, too.

As more work goes remote, meetings where everyone shows up at the same time just eat too much energy.

Instead, we document and record everything and handle it all over Slack during our own working hours.

Of course, this only works on top of trust between team members and the freedom and responsibility above.

(i.e., it runs on the belief that nobody is free-riding like in a group assignment.)

Transparent Information

Weekly team meeting where all information is shared

Interns get no restrictions.

You can read Karrot Market's server code, check how much local advertising sold, and read the minutes of meetings with Karrot's investors.

Reading this, you're probably thinking of Reed Hastings's book No Rules Rules.

At the company meeting every Monday, each team shares its updates.

What impressed me is that nobody uses slides. Everything is written in a shared Notion doc, so it's easy to look up later.

Overall, the culture pushes people to speak up, boldly and creatively.

And because the company trusts people first, people act responsibly.

Endless Debates

Our team wrote all 277 replies that morning 😔

I saved the one that impressed me most for last.

The culture of debating with mutual respect was amazing.

Two days in we had a 6-hour meeting, then hundreds of Slack messages until dawn on where the product should go.

I've done plenty of group assignments and student startup projects, but I'd never seen people care about a product this deeply or argue about it this hard.

Watching them debate how to spend limited resources to win the market was inspiring.

Everyone argued with logic, tried to understand the other side, and looked for a middle ground.

And it was cool that it never got personal. Everyone respected each other.

Moving Forward

From here, I'll be working on sandboxing for the mini-app standard.

Put simply, it's building a web inside the web, the foundation for the mini-app environment.

Lots of technical and product goals. I'll post again after the internship.

Please look forward to the Karrot Mini Team!

Backlinks0

No backlinks found