惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Hacker News
The Hacker News
Jina AI
Jina AI
aimingoo的专栏
aimingoo的专栏
博客园_首页
B
Blog RSS Feed
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Hugging Face - Blog
Hugging Face - Blog
B
Blog
MyScale Blog
MyScale Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
L
LINUX DO - 热门话题
D
Docker
A
Arctic Wolf
G
Google Developers Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Google DeepMind News
Google DeepMind News
Cisco Talos Blog
Cisco Talos Blog
P
Privacy International News Feed
I
Intezer
博客园 - 叶小钗
T
Threat Research - Cisco Blogs
MongoDB | Blog
MongoDB | Blog
美团技术团队
C
CERT Recently Published Vulnerability Notes
Project Zero
Project Zero
S
Securelist
P
Proofpoint News Feed
Simon Willison's Weblog
Simon Willison's Weblog
V
Visual Studio Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园 - 三生石上(FineUI控件)
Forbes - Security
Forbes - Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
The Cloudflare Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
V
Vulnerabilities – Threatpost
N
News and Events Feed by Topic
博客园 - Franky
The Last Watchdog
The Last Watchdog
T
Tailwind CSS Blog
T
Tenable Blog
Hacker News: Ask HN
Hacker News: Ask HN
雷峰网
雷峰网
Know Your Adversary
Know Your Adversary
Scott Helme
Scott Helme
S
SegmentFault 最新的问题
L
Lohrmann on Cybersecurity
F
Full Disclosure
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant Common SOC 2 Failures (Real World) Stop Vibe-Checking Your AI App: A Practical Guide to Evals How to Use SonarQube and SonarScanner Locally to Level Up Your Code Quality Your Next To-Do App Is Dead — I Replaced Mine with an OpenClaw AI Sign a Nostr event in 60 lines of Python using coincurve — no nostr-sdk, no nbxplorer, no rust toolchain ITGC Audit Explained Like You’re in Big 4 Patch Tuesday abril 2026: Microsoft parcha 163 vulnerabilidades y un zero-day en SharePoint Stop scraping everything: a better way to track competitor price changes Listing on MCPize + the Official MCP Registry while routing payments OUTSIDE the marketplace — how I kept 100% of my x402 revenue Building an AI-Powered Risk Intelligence System Using Serverless Architecture Why We Ripped Function Overloading Out of Our AI Toolchain Testing AI-Generated Code: How to Actually Know If It Works SaaS Churn Is Killing Your Business. Here Is What to Do About It (Without a Support Team) The Speed of AI Is No Longer Linear - And Self-Improving Models Are Why How to Implement RBAC for MCP Tools: A Practical Guide for Engineering Teams From Standard Quote to Persuasive Proposal: AI Automation for Arborists I built a CLI that scaffolds complete multi-tenant SaaS apps Axios CVE-2025–62718: The Silent SSRF Bug That Could Be Hiding in Your Node.js App Right Now The dashboard that ended our friendship Data Pipelines Explained Simply (and How to Build Them with Python) The Hidden Cost of AI Systems Nobody Talks About. undefined vs undeclared, and how typeof behaves Switching from file-based jobs to NATS/Kafka in Rust without changing code io_uring Adventures: Rust Servers That Love Syscalls Why Agentic AI is Killing the Traditional Database The POUR principles of web accessibility for developers and designers Quantum Neural Network 3D — A Deep Dive into Interactive WebGL Visualization How To Install Caveman In Codex On macOS And Windows Automation Pipeline Reliability: Why Your Workflow Breaks When Nobody Is Watching I Built an 'Open World' AI Coding Agent — It Works From ANY Folder From Freelancing to Product: A Tech Service Company's SaaS Transformation China's AI Giants: Adding Tencent Hunyuan & ByteDance Doubao to AI University (74 Providers) On the Vibe Coders and Their Lies clerk: Auto-Summarize Your Claude Code Sessions AI Weekly — 2026/04/10–04/17 | The Model Lockdown Is Here, but the Toolchain Is the Real Battleground AI 週報 — 2026/04/10–2026/04/17 模型封鎖潮來了,但工具鏈才是真戰場 Maybe this is how Open-Source apps are born... 🚀 Fine-Tune LLMs with LoRA and QLoRA: 2026 Guide tRPC v11 + Next.js App Router: End-to-End Type Safety Without the Boilerplate ShadCN UI in 2026: Why I Stopped Installing Component Libraries and Started Owning My Components SaaS Billing in React Server Components: Stripe + Supabase Without a Single `useEffect` Join our DEV Weekend Challenge — $1,000 in Prizes Across TEN winners! Submissions Due April 20 at 6:59 AM UTC. Implementing FSRS Spaced Repetition in Flutter + Supabase — Adding Memory Science to an AI Learning App "I Texted My Localhost From the Train — Claude Code Fixed the Bug Before I Got Home" I Built a Sales Prep AI and It Went Deeper Than Expected Design to Code #2: One JSON, Eleven Outputs Solving the 100M-Row Problem: A Summary Table Pattern for High-Volume Push Notification Logs Flutter Web With Wasm: What Actually Changes For Developers I Built 50 Royalty-Free Soundtracks for My Side Project in a Weekend Using AI Music Generation The Vibe Coding Security Checklist: 7 Things to Check Before You Ship Stop Letting Googlebot Guess Fix Your React App's SEO Right Desconstruindo o Streaming do LinkedIn: Como Criar um Engine de Extração de Vídeo de Alta Performance com HLS e FFmpeg (EDA Part-1) EDA (Exploratory Data Analysis) Explained With Real Life — Why Looking at Your Data Is the Most Important Step in Machine Learning Brand Relationship Management at Scale: Our 4-Touch Outreach System for 200+ Brands Why String.fromEnvironment() Might Return an Empty String in Dart JGuardrails 1.0.0 — Hardening Java LLM Apps Against Jailbreaks, Toxicity, and Prompt Injection Plan and Schedule a Full Week of Threads Content From One Claude Conversation Coding Cat Oran Ep3, Five Tables Changed Everything Updated: BFF Pattern I'm done watching freelancers get buried by 200 proposals. So I'm building the alternative. This is my first post BFS Algorithm in Java Step by Step Tutorial with Examples Tracking LLM Pricing Monthly: An Open Dataset for 22 AI Models How We Measure Content ROI on a Comparison Site: Revenue Attribution Without Perfect Data Introducing Nova AI Ops: The AI-Native Operating System for SRE Teams I built a free desktop video downloader for Windows — Grabbit How Talkie OCR Helps Vision-Impaired & Dyslexic Users Read the World Around Them VRCFaceTracking安装和iPhone面捕配置教程,有bug Even CrowdStrike Can't See Your Agents The Automation Gold Rush: What n8n Workflows and Claude Are Opening Up for Developers Right Now
I Used Blender, and In a Programmer’s Prospective
Vincent Yang · 2026-06-05 · via DEV Community

I have not wrote blogs for a while, because of various things regarding
to my job. But recently, I started to use
Blender -- the 3D modelling software. And
this is not my first time using Blender, but it is my first time
seriously using it, so I believe that most things I did this time was
new to me.

Logo of Blender

Blender Foundation, CC BY-SA 4.0, via Blender.org

I am just going to say, Blender is a spectacular piece of software.
While the bad side being that it is too fun to use that I sat in front
of my computer for 2 days straight besides sleeping and eating. Which
made my pinky barely movable.

Installing Blender

Because I am a programmer, and Blender is open source, finally I am
working on Linux. I decided that I would compile blender myself and use
flags like "-O3" and "-march=native" to ensure that I have absolute
maximum performance when running on my host.

First, I downloaded the source code. Blender maintains all its
dependencies independently, which I can just download a pre-compiled
version via "make update" and then uses CMake to configure and build the
project, which had no problem detecting my Nvidia GPU.

After it is done compiling, I had to install it, but Blender does
not follow the program directory structure that Unix uses, but
instead it creates its own independent directory for each version, and
it assumes that you already create an independent directory for it. So,
when I was trying to let it install to /usr/local, it installed itself
to /usr/local/5.2 which is my blender version.

Screenshot of Welcome Page

Blender Foundation, CC BY-SA 4.0, via Wikimedia Commons

Therefore, I recommend set the prefix to an independent directory when
installing Blender, like /usr/local/blender. Within the Blender
installation directory, the executable is directly on the top-level
directory, and there is no "bin" folder, so it is better for me at least
to symlink the executables to /usr/local/bin so I won't have to add any
more things to PATH.

Overall, I think this is very good, as I did not see any weird
errors when building, and I don't have to deal with shared library
versions and other annoying things.

Create a Model

Now I can finally start modeling, I decided to make an airplane, or an
Airbus A350-900 to be exact, as it is a childhood dream to create a
model of this plane.

How To Make a Model?

But I have absolutely no idea on how I am supposed to do this, as I had
never done it before. And I end up learning it the hard way to do it.

Since there is a thing called AI, I completely forgot that YouTube
tutorials exist, so I just started to ask AI on how should I do it.
Which it did gave me a few steps to make a model, which I think is
reasonable:

  1. Download a blueprint and import it into Blender

  2. Structure the plane by tracing the blueprint

  3. Create details like windows and doors

  4. Add colour via the "material" section

Importing a Blueprint

Airbus was nice enough to provide blueprints for all their planes like
the A350 and A320, which you can find on the official Airbus
website

for free.

But there is a minor problem, because Airbus uses AutoCAD for their
blueprint drawings and the blueprint is only available in a DWG file. I
know Blender has extensions that allows you to import DXF files (the
open source variant of DWG), but I still had to convert it.

I tried 3 options, for converting a DWG to a DXF -- FreeCAD, CloudConvert and LibreDWG, and I will be
talking about how all 3 options failed for me.

CloudConvert

CloudConvert was the first option I tried as it is the easiest, while
CloudConvert did gave me a "converted" DXF file, the size is very
small, which already raised my suspicion of it not working correctly,
and when I imported it into Blender, the only thing that showed up was
"cargo_door_0".

LibreDWG

LibreDWG

Rodrigo Rodrigues da Silva, Felipe Correa da Silva Sanches (São Paulo, Brazil), GNU LibreDWG development team (Free Software Foundation), CC BY-SA 3.0, via Wikimedia Commons

LibreDWG is developed by GNU to serve as a DWG to DXF or SVG converter
(according to my knowledge), and it is a surprisingly very active
project, which gave me some hope of it working.

Installation is very easy, I just used my Linux distribution's package
manager (APT in my case) to install it, but when I run the command
"dwg2dxf" it gave me the same file size, and it is also broken when I
load it inside Blender.

Question: I suspect that CloudConvert also uses LibreDWG to convert
these? I do not know, if someone knows please reply in comments or email
me.

I also tried to use "dwg2svg" which supposably would converts a DWG to
SVG curves, which Blender also supports. But guess what, it gave me
5 lines of SVG, literally 5 lines for an entire aircraft. Which
obviously did not work

FreeCAD

This is the final option I found, which is use a 3^rd^ party software
that acts as an intermediate layer which does the conversion between a
DWG and whatever format FreeCAD supports. But when I try to run FreeCAD
and create any empty project or import a DWG file, FreeCAD just crashes,
so it is really not any option.

What did work

For this, I found a solution purely by accident. I tried CloudConvert
another time, but this time instead of making a DWG into a DXF, I let it
convert from a DWG to SVG vectors, which finally gave me a reasonable
file size, and when imported into Blender, it does indeed work.

The Stupid Single Thread Calculation

Now I have the blueprint imported, Blender became very slow, because
there are a million curves on the blueprint, so I wanted to convert the
curves into meshes, and join all meshes together into 1 mesh.

This is easy, just select all the lines, then right click and select
"convert to" and then select "mesh", then after that select all the
meshes and do shift-J in object mode. But what surprised me is the speed
of Blender -- slower than a turtle.

As you know, I have a Nvidia GPU, but when Blender is trying to convert
curves into meshes, it could only use the CPU to do that, and it is
single threaded. I found this out because since I had a million
lines, when I click convert, Blender stopped responding immediately.

So naturally, I opened nvtop, which is the activity monitor for Nvidia
GPUs on Linux, but I do not see the GPU being used to an extent that
Blender will stop responding. It is only when I opened htop where I see
that a single Blender background worker is using a single thread on my
CPU calculating the millions of curves into meshes.

I end up waiting 10 minutes for Blender to convert the curves into
meshes, and after that I checked the settings, and it is set so that
Blender will use my GPU, but somehow it is not. Then I let Blender merge
all meshes into 1, which also took another 5 minutes.

Modelling Is Actually the Easiest

Finally, I can start modelling, and this is actually the easiest part.
You just create cylinders for each part of the plane, and extrude them
to make it into the shapes of an airplane. The details were also easy
for me to make because I can just edit each vertices.

The vertices system is also what I like about Blender the most, where
Blender only provide a few pre-made shapes, and you have to create
vertices on those shapes to make what you want, which gave you absolute
freedom of what you can do here.

The UI layout is also something I very like, because it minimises
"icons" and write everything in text, so even if I don't know anything
about the buttons I still know what it does, and I don't have to hover
over the icon to see the tool tip text.

3D Model of A350

By Vincent Yang (me)

Conclusion

This blog is long, but what I want to say is that every piece of
software has its pros and cons, and it is purely on yours perspective
and your use case of determining if a piece of software is good or bad
to you.

In this Blender scenario, if you are a person that just wants to do some
3D modelling and animations, I think Blender is an excellent choice for
you because it has high compatibility, it is fully free as free software
and it is lighter that other options with a size of only 1GB.

But if you are working with other people using other software, Blender
may be an issue for you on converting between file formats, and in my
knowledge, Blender is very different than Fusion or SketchUp.

If this blog is interesting to you, you may go to my blog site to read more blogs like this. Or you can download the Blender model made by me on my website.