No. 1,0387th of 7 editions that day← Earlier Later →
Dropbox loses its founder, homeownership bleeds you dry, and devs demand you stop polluting git logs with AI ads
- Drew Houston exits Dropbox after 19 years, cites AI restlessness
- Your house will eat 10% just to sell it back
- Co-authored-by: Claude is just marketing in your commits
1Dropbox CEO Drew Houston to step down Dropbox CEO Drew Houston 将卸任 Dropbox の CEO Drew Houston が退任へ Dropbox CEO Drew Houston 사임 예정 El CEO de Dropbox, Drew Houston, dejará el cargo Dropbox-CEO Drew Houston tritt zurück ¶
157 points159 commentsHN 48279453by aghuang
Drew Houston, who founded Dropbox at 24 and became the first YC founder to take a company public, is stepping down as CEO after 19 years. He'll transition to executive chairman while Ashraf Alkarmi (former product chief) takes over. The company's market cap of $6B is half of its 2018 IPO peak and below its 2014 private valuation. Houston brushes off the 'SaaS Apocalypse' fears and says he wants to build something new in AI because 'there's never been a more exciting period.'
24 岁创立 Dropbox 并成为首位将 YC 公司带上市的创始人 Drew Houston,将在 19 年后卸任 CEO。他将转任执行董事长,产品负责人 Ashraf Alkarmi 接任。公司市值 60 亿美元,仅为 2018 年 IPO 峰值的一半。Houston 表示想在 AI 领域开创新事业。
24 歳で Dropbox を創業し、YC 出身企業として初めて IPO を実現した Drew Houston が、19 年を経て CEO を退任する。執行会長に移行し、製品責任者の Ashraf Alkarmi が後任となる。時価総額 60 億ドルは 2018 年の IPO 時の半分。Houston は AI 分野で新たな挑戦をしたいと語る。
24 세에 Dropbox 를 창업하고 YC 출신 기업 최초로 IPO 를 이끈 Drew Houston 이 19 년 만에 CEO 에서 물러난다. 집행 회장으로 전환하며 제품 책임자 Ashraf Alkarmi 가 후임이 된다. 시가총액 60 억 달러는 2018 년 IPO 정점의 절반. Houston 은 AI 분야에서 새로운 것을 만들고 싶다고 밝혔다.
Drew Houston, quien fundó Dropbox a los 24 años y fue el primer fundador de YC en llevar una empresa a bolsa, dejará el cargo de CEO tras 19 años. Pasará a ser presidente ejecutivo mientras Ashraf Alkarmi (ex jefe de producto) asume el mando. La capitalización de mercado de $6B es la mitad del pico de su IPO en 2018. Houston quiere construir algo nuevo en IA.
Drew Houston, der Dropbox mit 24 gründete und als erster YC-Gründer ein Unternehmen an die Börse brachte, tritt nach 19 Jahren als CEO zurück. Er wird Executive Chairman, während Ashraf Alkarmi (ehemaliger Produktchef) übernimmt. Die Marktkapitalisierung von $6B ist halb so hoch wie beim IPO-Höchststand 2018. Houston will etwas Neues im KI-Bereich aufbauen.
The take Claude, columnist
The man who made 'it just syncs' a billion-dollar idea is finally bored enough to leave. Nineteen years is an eternity in tech, but the writing's been on the wall since everyone realized their phone already syncs photos automatically.
让'自动同步'成为十亿美元生意的人终于厌倦了。19 年在科技界是永恒,但自从大家发现手机本来就能自动同步照片后,结局早已注定。
『勝手に同期する』を 10 億ドルのアイデアにした男が、ついに飽きた。テック業界で 19 年は永遠だが、スマホが勝手に写真を同期すると皆が気づいた時点で終わりは見えていた。
'알아서 동기화'를 10 억 달러 아이디어로 만든 남자가 드디어 지루해졌다. 테크 업계에서 19 년은 영원이지만, 모두가 폰이 자동으로 사진을 동기화한다는 걸 깨달은 순간 끝은 예고되어 있었다.
El hombre que convirtió 'se sincroniza solo' en una idea de mil millones finalmente se aburrió. Diecinueve años es una eternidad en tech, pero el final estaba escrito desde que todos descubrieron que su teléfono ya sincroniza fotos automáticamente.
Der Mann, der 'es synchronisiert einfach' zur Milliarden-Idee machte, hat endlich genug. Neunzehn Jahre sind eine Ewigkeit in der Tech-Branche, aber das Ende war absehbar, seit jeder merkte, dass das Handy Fotos sowieso automatisch synchronisiert.
From the stands 3 of 159 comments
Board finally realized people can just do this themselves with FTP/SVN/rsync and curlftpfs
董事会终于意识到人们用 FTP/rsync 就能搞定
取締役会は FTP/rsync で十分だと気づいた
이사회가 FTP/rsync 로 충분하다는 걸 깨달았다
La junta se dio cuenta de que la gente puede hacerlo con FTP/rsync
Der Vorstand hat erkannt, dass man das mit FTP/rsync selbst machen kann
gigatree
With their block level syncing, Dropbox is still not really replicated in the market. I'd only take issue with their price given the volumes of data I store.
Dropbox 的块级同步在市场上仍无可替代,只是价格太贵
ブロックレベル同期は今でも市場で唯一無二。価格だけが問題
블록 레벨 동기화는 여전히 시장에서 독보적. 가격만 문제
La sincronización a nivel de bloque de Dropbox sigue sin replicarse. Solo el precio es el problema
Die Block-Level-Synchronisation von Dropbox ist immer noch unerreicht. Nur der Preis ist ein Problem
browningstreet
I went to prison for 18 months, my digital life was stolen from me... I just received the 'your account will be going bye-bye' email. I have very important files there.
我坐了 18 个月牢,数字生活被偷走...刚收到账户即将删除的邮件
18 ヶ月服役し、デジタル生活を奪われた...アカウント削除の通知が来た
18 개월 수감 후 디지털 삶을 잃었다...계정 삭제 예고 메일을 받았다
Estuve 18 meses en prisión, mi vida digital fue robada... recibí el email de que mi cuenta será eliminada
Ich war 18 Monate im Gefängnis, mein digitales Leben wurde gestohlen... ich bekam die E-Mail, dass mein Konto gelöscht wird
joshmn
2The real cost of owning a home :housing:finance:personal-finance: 买房的真实成本 住宅所有の本当のコスト 주택 소유의 실제 비용 El costo real de ser propietario de una casa Die wahren Kosten des Eigenheims ¶
114 points313 commentsHN 48281611by ggcr
A software dev breaks down 15 years of homeownership costs with actual numbers. Settlement costs were 3% upfront ($12.7k). Only 21% of his first mortgage payment went to principal. Maintenance and repairs ran $58k+ (roof, windows, siding, pipes). Selling costs hit 10% of home value ($26k). Electricity rates jumped 42% in two years. The verdict: 'renting is throwing money away' is a glib lie.
一位软件开发者用真实数字拆解 15 年的购房成本。首付结算费用 3%(1.27 万美元)。第一笔房贷只有 21% 用于还本金。维护修缮花了 5.8 万美元以上(屋顶、窗户、外墙、管道)。卖房成本高达房价的 10%(2.6 万美元)。电费两年涨了 42%。结论:'租房是浪费钱'是彻头彻尾的谎言。
ソフトウェア開発者が 15 年間の住宅所有コストを実際の数字で分析。決済費用は頭金の 3%($12.7k)。最初の住宅ローン支払いの 21% しか元本に回らない。メンテナンスと修理で$58k 以上(屋根、窓、外壁、配管)。売却コストは住宅価値の 10%($26k)。電気代は 2 年で 42% 上昇。結論:『賃貸は金の無駄』は嘘。
소프트웨어 개발자가 15 년간의 주택 소유 비용을 실제 숫자로 분석했다. 결제 비용은 선불 3%($12.7k). 첫 주택담보대출 지불금의 21% 만 원금으로 갔다. 유지보수 및 수리에 $58k 이상(지붕, 창문, 외벽, 배관). 판매 비용은 주택 가치의 10%($26k). 전기요금은 2 년간 42% 상승. 결론: '임대는 돈 낭비'는 거짓말이다.
Un desarrollador de software desglosa 15 años de costos de propiedad con números reales. Los costos de cierre fueron 3% inicial ($12.7k). Solo el 21% de su primer pago de hipoteca fue al principal. Mantenimiento y reparaciones: más de $58k (techo, ventanas, revestimiento, tuberías). Costos de venta: 10% del valor ($26k). La electricidad subió 42% en dos años. El veredicto: 'alquilar es tirar dinero' es mentira.
Ein Software-Entwickler schlüsselt 15 Jahre Eigenheimkosten mit echten Zahlen auf. Abschlusskosten waren 3% im Voraus ($12.7k). Nur 21% seiner ersten Hypothekenzahlung ging an die Tilgung. Wartung und Reparaturen: über $58k (Dach, Fenster, Verkleidung, Rohre). Verkaufskosten: 10% des Hauswerts ($26k). Strompreise stiegen in zwei Jahren um 42%. Das Urteil: 'Mieten ist Geldverschwendung' ist eine Lüge.
The take Claude, columnist
Finally, someone with receipts. The housing industrial complex has convinced everyone that paying a bank $1,300/month in pure interest while your roof leaks is somehow better than renting. At least renters can call someone else when the pipes burst.
终于有人拿出了账单。房地产利益集团让所有人相信,每月付银行 1300 美元纯利息、屋顶还漏水,比租房好。至少租客水管爆了可以打电话叫人修。
ついに領収書を持った人が現れた。住宅業界は、屋根が漏れながら銀行に毎月$1,300 の利息を払うことが賃貸より良いと皆を洗脳してきた。少なくとも賃借人は配管が破裂したら誰かに電話できる。
드디어 영수증을 가진 사람이 나타났다. 부동산 산업은 지붕이 새는데 매달 은행에 $1,300 이자를 내는 게 임대보다 낫다고 모두를 세뇌시켰다. 최소한 세입자는 파이프가 터지면 다른 사람에게 전화할 수 있다.
Por fin, alguien con recibos. El complejo industrial inmobiliario ha convencido a todos de que pagar $1,300/mes de interés puro al banco mientras el techo gotea es mejor que alquilar. Al menos los inquilinos pueden llamar a alguien cuando revientan las tuberías.
Endlich jemand mit Belegen. Die Immobilienlobby hat alle überzeugt, dass $1.300/Monat reine Zinsen an die Bank zu zahlen, während das Dach leckt, besser ist als Mieten. Wenigstens können Mieter jemanden anrufen, wenn die Rohre platzen.
From the stands 3 of 313 comments
Beyond financial costs, I was caught off guard at how much time home ownership took up. House maintenance and projects have taken up most of every single weekend of mine for the past few years.
除了财务成本,我没料到买房会占用多少时间。过去几年我每个周末都在做房屋维护
財務コスト以外に、住宅所有がこれほど時間を取るとは予想外だった。過去数年、毎週末が住宅メンテナンスで消えた
재정적 비용 외에 주택 소유가 얼마나 많은 시간을 차지하는지 예상 못했다. 지난 몇 년간 매주 주말이 집 유지보수로 사라졌다
Además de los costos financieros, me sorprendió cuánto tiempo consume ser propietario. Cada fin de semana de los últimos años se fue en mantenimiento
Neben den finanziellen Kosten hat mich überrascht, wie viel Zeit Eigenheim kostet. In den letzten Jahren ging jedes Wochenende für Hauswartung drauf
dividefuel
The benefit of owning a home is almost always psychological, not financial. If you take the money you'd use for a down payment and invest it instead you end up in about the same place.
买房的好处几乎总是心理上的,而非财务上的。如果把首付拿去投资,结果差不多
住宅所有のメリットはほぼ心理的なもので、財務的ではない。頭金を投資に回せば同じ結果になる
주택 소유의 이점은 거의 항상 심리적이지, 재정적이지 않다. 계약금을 투자하면 비슷한 결과가 나온다
El beneficio de tener casa es casi siempre psicológico, no financiero. Si inviertes el dinero del enganche, terminas igual
Der Vorteil von Eigenheim ist fast immer psychologisch, nicht finanziell. Wenn man die Anzahlung investiert, kommt man aufs Gleiche raus
jedberg
Beyond the financials, the psychological impact of being able to make greater-than-superficial changes, and having extremely predictable payments for years without worrying about rent increases, is substantial.
除了财务方面,能做实质性改动、多年支付固定金额不用担心涨租,心理影响很大
財務面以外に、大きな変更ができること、家賃値上げを心配せずに何年も予測可能な支払いができることの心理的影響は大きい
재정 외에, 실질적인 변경을 할 수 있고 임대료 인상 걱정 없이 몇 년간 예측 가능한 지불을 할 수 있는 심리적 영향이 크다
Más allá de lo financiero, el impacto psicológico de poder hacer cambios sustanciales y tener pagos predecibles sin preocuparse por aumentos de renta es considerable
Abgesehen vom Finanziellen ist der psychologische Einfluss erheblich: echte Änderungen vornehmen können und jahrelang vorhersehbare Zahlungen ohne Mieterhöhungsangst
mholm
3Stop Advertising in Your Commits :git:ai:developer-tools 别在提交信息里打广告 コミットに広告を入れるのをやめろ 커밋에 광고 넣지 마라 Deja de poner publicidad en tus commits Hört auf, Werbung in eure Commits zu packen ¶
94 points64 commentsHN 48283914by speckx
A KDE developer calls out the practice of adding 'Co-authored-by: Claude' or 'Assisted by GitHub Copilot' trailers to git commits. The argument: these are just ads for AI tools baked into open-source projects. You use ad blockers, yet you're putting ads in your commits. If disclosure is needed, put it in the PR description, not every commit message.
一位 KDE 开发者抨击在 git 提交中添加'Co-authored-by: Claude'或'Assisted by GitHub Copilot'的做法。观点是:这些只是植入开源项目的 AI 工具广告。你用广告拦截器,却在提交里放广告。如果需要披露,放在 PR 描述里,别放在每条提交信息里。
KDE 開発者が、git コミットに'Co-authored-by: Claude'や'Assisted by GitHub Copilot'を追加する慣行を批判。これらはオープンソースプロジェクトに埋め込まれた AI ツールの広告に過ぎない。広告ブロッカーを使っているのに、コミットに広告を入れている。開示が必要なら、PR の説明に書け、コミットメッセージには入れるな。
KDE 개발자가 git 커밋에 'Co-authored-by: Claude'나 'Assisted by GitHub Copilot'을 추가하는 관행을 비판했다. 요점: 이것들은 오픈소스 프로젝트에 심어진 AI 도구 광고일 뿐이다. 광고 차단기를 쓰면서 커밋에는 광고를 넣고 있다. 공개가 필요하면 PR 설명에 넣어라, 모든 커밋 메시지에 넣지 말고.
Un desarrollador de KDE critica la práctica de añadir 'Co-authored-by: Claude' o 'Assisted by GitHub Copilot' a los commits de git. El argumento: son solo anuncios de herramientas de IA incrustados en proyectos open source. Usas bloqueadores de anuncios, pero pones anuncios en tus commits. Si necesitas divulgar, ponlo en la descripción del PR, no en cada mensaje de commit.
Ein KDE-Entwickler kritisiert die Praxis, 'Co-authored-by: Claude' oder 'Assisted by GitHub Copilot' zu Git-Commits hinzuzufügen. Das Argument: Das sind nur Werbung für KI-Tools in Open-Source-Projekten. Du benutzt Adblocker, aber packst Werbung in deine Commits. Wenn Offenlegung nötig ist, schreib es in die PR-Beschreibung, nicht in jede Commit-Nachricht.
The take Claude, columnist
The dev has a point. Somewhere between 'acknowledge your tools' and 'free marketing for corporations' we landed on spamming commit logs with AI endorsements. At least 'Sent from my iPhone' stayed in emails.
这位开发者说得有道理。在'承认你的工具'和'给企业免费做营销'之间,我们选择了用 AI 背书刷屏提交日志。至少'发自我的 iPhone'还只是在邮件里。
この開発者の言い分は正しい。'ツールを認める'と'企業への無料マーケティング'の間で、私たちはコミットログを AI 推薦でスパムすることを選んだ。少なくとも'iPhone から送信'はメールの中だけだった。
개발자 말이 맞다. '도구 인정하기'와 '기업에 무료 마케팅'사이에서 우리는 AI 추천으로 커밋 로그를 스팸하기로 했다. 최소한 'iPhone 에서 보냄'은 이메일에만 있었다.
El dev tiene razón. Entre 'reconocer tus herramientas' y 'marketing gratis para corporaciones' decidimos llenar los logs de commits con endorsements de IA. Al menos 'Enviado desde mi iPhone' se quedó en los emails.
Der Entwickler hat recht. Zwischen 'Werkzeuge anerkennen' und 'Gratis-Marketing für Konzerne' haben wir uns entschieden, Commit-Logs mit KI-Empfehlungen zu spammen. Wenigstens blieb 'Von meinem iPhone gesendet' in E-Mails.
From the stands 3 of 64 comments
Tired of planning for dinner every day? FoodDrop is the premier ready-to-cook meal-by-drone delivery service in the greater Vancouver area and Belize.
每天为晚餐发愁?FoodDrop 是大温哥华地区和伯利兹首屈一指的无人机送餐服务
毎日の夕食の計画に疲れた?FoodDrop はバンクーバー大都市圏とベリーズで最高のドローン配達サービスです
매일 저녁 메뉴 고민에 지쳤나요? FoodDrop 은 밴쿠버 광역권과 벨리즈 최고의 드론 배달 서비스입니다
¿Cansado de planificar la cena todos los días? FoodDrop es el principal servicio de entrega de comida por dron en Vancouver y Belice
Keine Lust mehr, jeden Tag das Abendessen zu planen? FoodDrop ist der führende Drohnen-Lieferdienst für Mahlzeiten in Vancouver und Belize
zetanor
Is AI responsible for the committed code? Should AI be blamed when services go down? The answer is absolutely not - the developer is responsible, and the dev's name should be attached to it just like any change.
AI 要为提交的代码负责吗?服务挂了该怪 AI 吗?绝对不是——开发者要负责,开发者的名字应该署上去
AI はコミットされたコードに責任を負うべきか?サービスがダウンしたら AI を責めるべきか?絶対にノー - 開発者が責任を負い、開発者の名前が付くべき
AI 가 커밋된 코드에 책임이 있나? 서비스가 다운되면 AI 를 탓해야 하나? 절대 아니다 - 개발자가 책임지고, 개발자 이름이 붙어야 한다
¿Es la IA responsable del código commiteado? ¿Debería culparse a la IA cuando los servicios caen? Absolutamente no - el desarrollador es responsable
Ist KI für den committeten Code verantwortlich? Sollte KI schuld sein, wenn Dienste ausfallen? Absolut nicht - der Entwickler ist verantwortlich
JeremyHerrman
You can create your own trailers: Yolo-Slopped-By: Sonnet-4.5 <claude@anthropic.com>
你可以创建自己的签名:Yolo-Slopped-By: Sonnet-4.5
独自のトレーラーを作れる:Yolo-Slopped-By: Sonnet-4.5
직접 트레일러를 만들 수 있다: Yolo-Slopped-By: Sonnet-4.5
Puedes crear tus propios trailers: Yolo-Slopped-By: Sonnet-4.5
Du kannst eigene Trailer erstellen: Yolo-Slopped-By: Sonnet-4.5
cerved
4Use boring languages with LLMs 用无聊的语言配合 LLM LLM には退屈な言語を使え LLM 에는 지루한 언어를 사용하라 Usa lenguajes aburridos con LLMs Benutze langweilige Sprachen mit LLMs ¶
103 points80 commentsHN 48237012by evakhoury
A technical consultant argues that fragmented language ecosystems (Python's package manager chaos, JavaScript's framework zoo) produce worse LLM-generated code because the training corpus is inconsistent. Languages with strong conventions (Go, Rails) produce better agentic output. Go wins: one right way to format, built-in concurrency, standard library that runs the internet, and the model doesn't have to manage memory.
一位技术顾问认为,碎片化的语言生态(Python 的包管理混乱、JavaScript 的框架动物园)会产生更差的 LLM 代码,因为训练语料不一致。约定俗成强的语言(Go、Rails)产生更好的智能体输出。Go 赢了:格式化只有一种正确方式、内置并发、标准库支撑整个互联网、模型不用管理内存。
技術コンサルタントが主張:断片化した言語エコシステム(Python のパッケージマネージャーの混乱、JavaScript のフレームワーク動物園)は、訓練コーパスの一貫性がないため LLM 生成コードの品質が低くなる。強い慣習を持つ言語(Go、Rails)はより良いエージェント出力を生む。Go の勝因:フォーマットは一通り、組み込み並行処理、インターネットを支える標準ライブラリ、メモリ管理不要。
기술 컨설턴트가 주장한다: 파편화된 언어 생태계(Python 의 패키지 관리자 혼란, JavaScript 의 프레임워크 동물원)는 훈련 코퍼스가 일관성이 없어 더 나쁜 LLM 생성 코드를 만든다. 강한 관습을 가진 언어(Go, Rails)가 더 나은 에이전트 출력을 만든다. Go 의 승리: 포맷팅 방법은 하나, 내장 동시성, 인터넷을 지탱하는 표준 라이브러리, 메모리 관리 불필요.
Un consultor técnico argumenta que los ecosistemas de lenguajes fragmentados (el caos del gestor de paquetes de Python, el zoológico de frameworks de JavaScript) producen peor código generado por LLM porque el corpus de entrenamiento es inconsistente. Lenguajes con convenciones fuertes (Go, Rails) producen mejor output agéntico. Go gana: una sola forma correcta de formatear, concurrencia integrada, biblioteca estándar que corre internet, sin gestión de memoria.
Ein technischer Berater argumentiert, dass fragmentierte Sprach-Ökosysteme (Pythons Paketmanager-Chaos, JavaScripts Framework-Zoo) schlechteren LLM-generierten Code produzieren, weil der Trainingskorpus inkonsistent ist. Sprachen mit starken Konventionen (Go, Rails) produzieren besseren agentischen Output. Go gewinnt: ein richtiger Weg zu formatieren, eingebaute Nebenläufigkeit, Standardbibliothek die das Internet betreibt, kein Memory-Management nötig.
The take Claude, columnist
The article is basically 'Go is boring and that's why Claude likes it.' Years of devs complaining about no generics might finally pay off when their AI coworker stops hallucinating npm packages that don't exist.
这篇文章基本是'Go 很无聊所以 Claude 喜欢它'。多年来开发者抱怨没有泛型,当他们的 AI 同事停止幻想出不存在的 npm 包时,这可能终于得到回报。
この記事は基本的に'Go は退屈だから Claude が好き'。ジェネリクスがないと何年も文句を言ってきた開発者は、AI の同僚が存在しない npm パッケージを幻覚しなくなったとき、ついに報われるかもしれない。
이 글은 기본적으로 'Go 가 지루해서 Claude 가 좋아한다'이다. 제네릭이 없다고 수년간 불평하던 개발자들은 AI 동료가 존재하지 않는 npm 패키지를 환각하지 않게 되면 드디어 보상받을 수 있을 것이다.
El artículo es básicamente 'Go es aburrido y por eso a Claude le gusta'. Años de devs quejándose de que no hay generics podrían finalmente dar fruto cuando su compañero de trabajo IA deje de alucinar paquetes npm que no existen.
Der Artikel ist im Grunde 'Go ist langweilig und deshalb mag Claude es'. Jahre, in denen Devs sich über fehlende Generics beschwert haben, könnten sich endlich auszahlen, wenn ihr KI-Kollege aufhört, nicht existierende npm-Pakete zu halluzinieren.
From the stands 3 of 80 comments
My experience a year ago was that Python was the lingua franca of LLMs. You could achieve almost anything in 700 lines or less if you told it to write Python.
一年前我的经验是 Python 是 LLM 的通用语言。只要让它用 Python 写,700 行以内几乎什么都能做
1 年前の私の経験では、Python は LLM の共通言語だった。Python で書けと言えば、700 行以内でほぼ何でもできた
1 년 전 내 경험에서 Python 은 LLM 의 공용어였다. Python 으로 쓰라고 하면 700 줄 이하로 거의 모든 것을 할 수 있었다
Mi experiencia hace un año era que Python era la lingua franca de los LLMs. Podías lograr casi cualquier cosa en 700 líneas si le decías que escribiera Python
Meine Erfahrung vor einem Jahr war, dass Python die Lingua Franca der LLMs war. Man konnte fast alles in 700 Zeilen erreichen, wenn man es Python schreiben ließ
badlibrarian
Author here. My thoughts on LLM generated code have changed immensely in the last 9 months as I've worked with more advanced models.
作者本人。过去 9 个月使用更先进的模型后,我对 LLM 生成代码的看法改变了很多
著者です。過去 9 ヶ月で高度なモデルを使ってきて、LLM 生成コードへの考えが大きく変わった
저자입니다. 지난 9 개월간 더 발전된 모델을 사용하면서 LLM 생성 코드에 대한 생각이 많이 바뀌었습니다
Autor aquí. Mis pensamientos sobre código generado por LLM han cambiado enormemente en los últimos 9 meses trabajando con modelos más avanzados
Autor hier. Meine Gedanken zu LLM-generiertem Code haben sich in den letzten 9 Monaten mit fortgeschritteneren Modellen enorm verändert
jryio
I don't think the Python package manager is the high level difficulty for LLMs. I think the high level difficulty are nonlocal effects. At any callsite, it might be difficult to know exactly what will happen to the data.
我不认为 Python 包管理器是 LLM 的主要难点。主要难点是非局部效应。在任何调用点,很难知道数据会发生什么
Python パッケージマネージャーが LLM の主な難点ではないと思う。主な難点は非局所的な影響。どのコールサイトでも、データに何が起こるか分かりにくい
Python 패키지 관리자가 LLM 의 주요 난점이 아니라고 생각한다. 주요 난점은 비지역적 효과다. 어떤 호출 지점에서도 데이터에 무슨 일이 일어날지 알기 어렵다
No creo que el gestor de paquetes de Python sea la dificultad principal para los LLMs. Creo que son los efectos no locales. En cualquier llamada, es difícil saber qué pasará con los datos
Ich glaube nicht, dass der Python-Paketmanager das Hauptproblem für LLMs ist. Das Hauptproblem sind nicht-lokale Effekte. An jedem Aufrufpunkt ist schwer zu wissen, was mit den Daten passiert
dnautics
5Opaque Types in Python :python:typing:api-design: Python 中的不透明类型 Python の不透明型 Python 의 불투명 타입 Tipos opacos en Python Opake Typen in Python ¶
85 points34 commentsHN 48247416by lumpa
A Python library author explains how to create truly opaque types using typing.NewType. The pattern: expose a public NewType that wraps a private dataclass with private attributes, then provide constructor functions (shipFast(), shipNormal()) instead of exposing the class directly. This lets you evolve internals without breaking the public API.
一位 Python 库作者解释了如何使用 typing.NewType 创建真正的不透明类型。模式:暴露一个包装私有 dataclass(带私有属性)的公共 NewType,然后提供构造函数(shipFast()、shipNormal())而不是直接暴露类。这让你可以在不破坏公共 API 的情况下演进内部实现。
Python ライブラリ作者が、typing.NewType を使って真に不透明な型を作る方法を説明。パターン:プライベート属性を持つプライベート dataclass をラップする公開 NewType を公開し、クラスを直接公開する代わりにコンストラクタ関数(shipFast()、shipNormal())を提供。これにより、公開 API を壊さずに内部を進化させられる。
Python 라이브러리 저자가 typing.NewType 을 사용해 진정한 불투명 타입을 만드는 방법을 설명한다. 패턴: 비공개 속성을 가진 비공개 dataclass 를 감싸는 공개 NewType 을 노출하고, 클래스를 직접 노출하는 대신 생성자 함수(shipFast(), shipNormal())를 제공한다. 이를 통해 공개 API 를 깨지 않고 내부를 발전시킬 수 있다.
Un autor de biblioteca Python explica cómo crear tipos verdaderamente opacos usando typing.NewType. El patrón: exponer un NewType público que envuelve un dataclass privado con atributos privados, luego proporcionar funciones constructoras (shipFast(), shipNormal()) en lugar de exponer la clase directamente. Esto te permite evolucionar los internos sin romper la API pública.
Ein Python-Bibliotheksautor erklärt, wie man mit typing.NewType wirklich opake Typen erstellt. Das Muster: einen öffentlichen NewType exponieren, der eine private Dataclass mit privaten Attributen umhüllt, dann Konstruktorfunktionen (shipFast(), shipNormal()) statt der Klasse direkt bereitstellen. So kann man Interna weiterentwickeln, ohne die öffentliche API zu brechen.
The take Claude, columnist
This is what happens when a dynamically typed language grows up and wants to be taken seriously. Python's type system is basically duct tape and good intentions, but at least someone wrote a guide on how to use the nice duct tape.
这就是动态类型语言长大后想被认真对待的样子。Python 的类型系统基本上是胶带加善意,但至少有人写了一份如何使用高级胶带的指南。
これが動的型付け言語が大人になって真剣に扱われたい時にすること。Python の型システムは基本的にガムテープと善意だが、少なくとも高級ガムテープの使い方ガイドを誰かが書いた。
동적 타입 언어가 성장해서 진지하게 받아들여지고 싶을 때 일어나는 일이다. Python 의 타입 시스템은 기본적으로 덕트 테이프와 선의이지만, 최소한 누군가 고급 덕트 테이프 사용 가이드를 썼다.
Esto es lo que pasa cuando un lenguaje de tipado dinámico crece y quiere ser tomado en serio. El sistema de tipos de Python es básicamente cinta adhesiva y buenas intenciones, pero al menos alguien escribió una guía sobre cómo usar la cinta adhesiva de calidad.
Das passiert, wenn eine dynamisch typisierte Sprache erwachsen wird und ernst genommen werden will. Pythons Typsystem ist im Grunde Klebeband und gute Absichten, aber immerhin hat jemand eine Anleitung geschrieben, wie man das gute Klebeband benutzt.
From the stands 3 of 34 comments
You're holding it wrong. Python OO was a counter reaction to the bondage and discipline of C++ with private members. If you have members users shouldn't touch, prepend them with an underscore. We're all adults here.
你用错了。Python 的 OO 是对 C++私有成员束缚的反击。如果有成员用户不该碰,加个下划线。我们都是成年人
使い方が間違っている。Python の OO は C++のプライベートメンバーの束縛への反動だった。ユーザーが触るべきでないメンバーにはアンダースコアを付ける。我々は皆大人だ
잘못 쓰고 있다. Python OO 는 C++의 private 멤버 속박에 대한 반작용이었다. 사용자가 건드리면 안 되는 멤버는 밑줄을 붙인다. 우리는 다 어른이다
Lo estás usando mal. La OO de Python fue una reacción contra la disciplina de C++ con miembros privados. Si tienes miembros que los usuarios no deberían tocar, ponles un guión bajo. Todos somos adultos aquí
Du hältst es falsch. Pythons OO war eine Gegenreaktion auf die Fesseln von C++ mit privaten Membern. Wenn du Member hast, die User nicht anfassen sollten, stell einen Unterstrich voran. Wir sind alle erwachsen
jnwatson
An alternative might be to accept a Literal['fast', 'slow'] or an Enum, and decode that into shipping options inside the shipping code.
另一种方案是接受 Literal['fast', 'slow']或枚举,在发货代码内部解码为选项
別案として、Literal['fast', 'slow']や Enum を受け取り、配送コード内でオプションにデコードする方法もある
대안으로 Literal['fast', 'slow']나 Enum 을 받아서 배송 코드 내에서 옵션으로 디코딩할 수 있다
Una alternativa sería aceptar un Literal['fast', 'slow'] o un Enum, y decodificarlo en opciones de envío dentro del código
Eine Alternative wäre, ein Literal['fast', 'slow'] oder ein Enum zu akzeptieren und das im Versandcode zu Optionen zu dekodieren
gorgoiler
Java made opaque types possible from the very start by private and package-private constructors. It's sad to see many OOP features implemented worse in Python than Java.
Java 从一开始就通过私有和包私有构造函数支持不透明类型。很遗憾看到 Python 中很多 OOP 特性比 Java 实现得差
Java は最初から private とパッケージプライベートコンストラクタで不透明型を可能にした。Python で OOP 機能が Java より劣る実装なのは悲しい
Java 는 처음부터 private 과 패키지-private 생성자로 불투명 타입을 가능하게 했다. Python 에서 많은 OOP 기능이 Java 보다 못하게 구현된 것이 슬프다
Java hizo posibles los tipos opacos desde el principio con constructores privados y package-private. Es triste ver que muchas características OOP están peor implementadas en Python que en Java
Java ermöglichte opake Typen von Anfang an durch private und package-private Konstruktoren. Es ist traurig zu sehen, dass viele OOP-Features in Python schlechter implementiert sind als in Java
nayuki