2025 State of Web Dev AI

https://2025.stateofai.dev/en-US/

  1. 模型 #ChatGPT 91% most-used, #Claude #Gemini #DeepSeek ,平均使用 4个
  2. Hallucination & inaccuracies 幻觉和不准确依然是最大问题
  3. AI IDE: #Cursor #Zed #Windsurf #VSCode, 代码生成服务:v0, Bolt
  4. 编码助手: #GitHub Copilot 70%,Codeium, Tabnine, Supermaven(已被 Curor 收购)
  5. AI 生成代码比例:平均 28%。69% 的使用者通过 AI 生成的代码比例都不到 25%,只有 8% 的使用者生成的代码比例超过 75%。
  6. Vercel AI SDK 是最受欢迎的 SDK

TIL-2505

TIL-2504

  • 取消微信的健康权限,比如微信运动读取步数,很明显提高微信打开时的 loading 速度
  • Bento Grids,「弁当」日语便当。Bento Grid 的特点是内容在卡片内,不容大小内容的卡片组合展示,类似「🍱」效果
  • 沉浸式翻译出的 PDF 识别 https://github.com/funstory-ai/BabelDOC
  • nanobrowser 浏览器插件+AI=网页自动化
  • defaults write -g NSStatusItemSpacing -int 8 decrease macOS’s status bar item spacing
  • Yak Shaving, Stay focused on the task at hand, and don’t shave that yak!

TIL-2503

TIL-2502

  • FOFA/Shodan/hunter.qianxin etc search engine can be used to find unexpected exposed services, e.g. port:9200 for ES
  • summarize your tool in a markdown table with availability, use this prompt to check ChatGPT’s levels, and re-enable some skills
  • :g/foo/s/bar/baz/ in vim can replace bar with baz in the line contains foo
  • :v same as :g!, inverse searching. :v/foo/d will delete lines not contains foo

TIL-2501

  • g? in vim will encode the selected TEXT in ROT13
  • :let @a = @a . '@a', append macro call to make the macro recursive, run to the end of the file
  • https://instances.vantage.sh/, list and compare instances of AWS EC2/RDS etc
  • fc -W will save history to ~/.zsh_history. DO NOT RUN history -c THAT WILL CLEAR THE HISTORY

Python's module-script utilities

The Python standard library offers many module-script utilities that can be used as command-line tools with the python -m syntax.

  • python -m webbrowser https://pym.dev/p open URL in default browser
  • python -m antigravity open https://xkcd.com/353/
  • python -m this display the Zen of Python (PEP 20)
  • python -m __hello__ print Hello world!
  • python -m http.server start a simple web server
  • python -m json.tool validate and pretty-print JSON data from stdin or file
  • python -m calendar display a command-line calendar
  • python -m uuid generate an UUID string
  • python -m sqlite3 launch sqlite3 shell
  • python -m zipfile/gzip/tarfile like zip/unzip or gzip/gunzip or tar CLI
  • python -m base64 like base64 CLI
  • python -m ftplib like ftp CLI
  • python -m pip run pip to install third-party packages
  • python -m venv create an virtual environment
  • python -m pydoc show documentation for given string
  • python -m pdb run Python Debugger
  • python -m unittest run unittest tests from modules or file
  • python -m timeit time a Python expression
  • python -m site display current Python environment info like sys.path
  • python -m platform display OS information
  • python -m encodings.rot_13 encode/decode text by ROT13 cipher

More utilities and detailed explanation Python’s many command-line utilities

Apps by Sindre Sorhus

I’ve known @sindresorhus for a long time, used some of his Apps, and I’m a big fan of his work. Here are some of his Apps that I use:

Velja

Even though I prefer using Safari as my default browser, there are certain cases where I need to open a link like Google Docs in Arc because Safari is logged in with my personal account, while Arc is with my work account. In cases like this, I use Velja:

  1. Set Velja as the default browser and Safari as the primary one
  2. Use Arc as the alternative browser and click on links while pressing Fn for them to open in Arc
  3. Set rules for specific URLs to open in Arc, with URL matching
  4. Velja’s Safari extension also supports to open the current webpage in Arc

Velja is More Than a Browser Picker

Hyperduck

I need to send links from my iPhone to Mac for further reading, I have tried several methods:

  1. Tools like Pocket/Instapaper, which require opening the app on Mac to use
  2. Safari Reading List/iCloud Tabs, which I have been using for a long time before Hyperduck, but sometimes it does not sync well

Hyperduck does this job perfectly, shares link from Send to Mac, opens on Mac directly, and I don’t have to worry about syncing.

Thank you @sindresorhus for these great Apps! 🎉

29/02/24

From 29/02/08, this site has been running for 16 years.

Debounce and Throttle

  1. debounce 延迟生效,将间隔不超过设定时间的多次连续调用变成一次。如果在设定时间内连续两次调用,第一次调用会被取消,如果设定时间内没有再次调用,则生效执行
  2. throttle 节流阀,确保函数被多次连续调用时,在设定时间内最多只执行一次
  3. debounce 和 throttle 都可以用于降低事件处理函数的调用频率,以提高性能
  4. 在连续快速输入时,debounce 会等待最后一次输入后才执行,autocomplete 场景很有用
  5. throttle 会规律、稳定的执行,但是会有一定的延迟