Dmitry Dorogoy

2.4K posts

Dmitry Dorogoy

Dmitry Dorogoy

@DimonSmart

C#, .NET, backend, developer, speaker. https://t.co/rjubGX8A3T

Planet Earth Katılım Temmuz 2010
288 Takip Edilen106 Takipçiler
Dmitry Dorogoy retweetledi
Autodesk Fusion
Autodesk Fusion@adskFusion·
We have partnered with @AnthropicAI to launch the Claude connector for Fusion. With the Fusion MCP, you can now tap into Claude’s desktop capabilities—speech, vision, web search, and cross-service workflows—right inside your design flow. Combined with #AutodeskAssistant, this opens up more flexible, customizable agentic workflows for how you build with Fusion + Claude. Learn more here: autode.sk/4mXFaQN
Claude@claudeai

With the Autodesk Fusion connector, designers and engineers can create and modify 3D models through conversation.

English
33
170
1.7K
171.5K
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
@zoranh75 «Is this a domain class or a database row?» - Why not to put domain model under “Domain” namespace?
English
1
0
0
17
Zoran Horvat
Zoran Horvat@zoranh75·
𝒀𝒐𝒖'𝒗𝒆 𝒘𝒓𝒊𝒕𝒕𝒆𝒏 𝒂 𝒅𝒐𝒎𝒂𝒊𝒏 𝒎𝒐𝒅𝒆𝒍 𝒕𝒉𝒂𝒕 𝒍𝒐𝒐𝒌𝒔 𝒓𝒊𝒈𝒉𝒕, 𝒃𝒖𝒕 𝒆𝒗𝒆𝒓𝒚 𝒄𝒍𝒂𝒔𝒔 𝒉𝒂𝒔 𝒂𝒏 𝑰𝒅 𝒑𝒓𝒐𝒑𝒆𝒓𝒕𝒚, 𝒂 𝒇𝒐𝒓𝒆𝒊𝒈𝒏 𝒌𝒆𝒚, 𝒂𝒏𝒅 𝒂 𝒏𝒂𝒗𝒊𝒈𝒂𝒕𝒊𝒐𝒏 𝒑𝒓𝒐𝒑𝒆𝒓𝒕𝒚 𝒕𝒉𝒂𝒕 𝒉𝒂𝒔 𝒏𝒐 𝒃𝒖𝒔𝒊𝒏𝒆𝒔𝒔 𝒎𝒆𝒂𝒏𝒊𝒏𝒈. Every time a new engineer reads the code, they ask: "Is this a domain class or a database row?" And if you strip the ORM attributes, the whole thing falls apart, because the model was never really a domain model at all. The real problem is that your domain model knows too much about the database. 𝑷𝒆𝒓𝒔𝒊𝒔𝒕𝒆𝒏𝒄𝒆 𝒊𝒈𝒏𝒐𝒓𝒂𝒏𝒄𝒆 is the principle that domain classes should carry no knowledge of how or where they are stored. In my latest video, I show how EF Core supports this principle out of the box, without a single custom wrapper. - 𝑺𝒉𝒂𝒅𝒐𝒘 𝒑𝒓𝒐𝒑𝒆𝒓𝒕𝒊𝒆𝒔 – EF Core can manage database IDs entirely outside your model class. The surrogate key lives in the change tracker and the database, but your C# object never sees it. - 𝑺𝒕𝒓𝒐𝒏𝒈𝒍𝒚-𝒕𝒚𝒑𝒆𝒅 𝒑𝒖𝒃𝒍𝒊𝒄 𝑰𝑫𝒔 – Aggregates need a stable identity that other aggregates can reference without touching the database key. A record wrapping a raw GUID gives you that identity and makes wrong assignments a compile error. EF Core maps it to a plain GUID column via a value converter and an alternate key declaration. - 𝑪𝑸𝑹𝑺 𝒂𝒕 𝒕𝒉𝒆 𝒅𝒂𝒕𝒂 𝒍𝒂𝒚𝒆𝒓 – Commands load a single aggregate, mutate it, and save via the DbContext that operates as unit of work. Queries are a different concern: they cross aggregate boundaries freely and compose with LINQ to Entities as the specification. No custom repository abstractions needed for either side. The cherry on top of the cake is that your DbContext supports Repository, Unit of Work, and Specification patterns that are fundamental to DDD, so that you don't have to implement any of them. Persistence ignorance and persistence patterns are not exotic requirements. It is the baseline that keeps domain models readable and testable long-term. Watch the full video "EF Core is DDD (And Here is Why)" youtu.be/X3bCQtQIFRQ And, if you wish to learn more about Domain-Driven Design with EF Core, these are the learning resources I can recommend first-hand: 𝘿𝙤𝙢𝙖𝙞𝙣-𝘿𝙧𝙞𝙫𝙚𝙣 𝘿𝙚𝙨𝙞𝙜𝙣 by Eric Evans ► #ad" target="_blank" rel="nofollow noopener">codinghelmet.com/go/book-domain… 𝘿𝙤𝙢𝙖𝙞𝙣 𝙈𝙤𝙙𝙚𝙡𝙞𝙣𝙜 𝙈𝙖𝙙𝙚 𝙁𝙪𝙣𝙘𝙩𝙞𝙤𝙣𝙖𝙡 by Scott Wlaschin ► #ad" target="_blank" rel="nofollow noopener">codinghelmet.com/go/wlaschin-fu… 𝙃𝙖𝙣𝙙𝙨 𝙤𝙣 𝘾# .𝙉𝙀𝙏: 𝙀𝙣𝙩𝙞𝙩𝙮 𝙁𝙧𝙖𝙢𝙚𝙬𝙤𝙧𝙠 𝘾𝙤𝙧𝙚 at Udemy ► codinghelmet.com/go/hands-on-cs… 𝗗𝗶𝘀𝗰𝗹𝗼𝘀𝘂𝗿𝗲: This post contains affiliate links. If you make a purchase through those links, I will earn a small commission at no extra cost to you.
YouTube video
YouTube
Zoran Horvat tweet media
English
1
1
15
1.2K
堀洋祐 Yosuke Hori / カサネタリウム kasanetarium
反響が大きかったので、STLファイルから3Dプリンタ用のアミアミ構造(編み込まれたような構造)を作るスライサーソフト「AmiSlicer」のα版を共有します。3Dプリンタ用G-Codeデータを生成するソフトです。動作保証はできませんが、使ってみてください。 github.com/kasanetarium/A…
堀洋祐 Yosuke Hori / カサネタリウム kasanetarium tweet media堀洋祐 Yosuke Hori / カサネタリウム kasanetarium tweet media
堀洋祐 Yosuke Hori / カサネタリウム kasanetarium tweet media
日本語
15
211
1.2K
72.5K
Dmitry Dorogoy retweetledi
Vaishnavi
Vaishnavi@_vmlops·
IT'S NOT JUST A COMMAND. MICROSOFT SHIPPED SOMETHING WINDOWS DEVELOPERS HAVE NEEDED FOR YEARS sudo natively, on windows no more closing your terminal and relaunching as admin just to run one command it's built into windows 11...written in rust & it actually ships in the os, not as a third-party workaround the caveat..? it's not a linux sudo port different OS, different permission model... Some unix scripts won't transfer directly but for 95% of day-to-day dev tasks, this is the fix windows has needed for years enable it: settings → developer features → sudo for windows → github.com/microsoft/sudo
English
82
366
2.7K
214.9K
Gerald Versluis
Gerald Versluis@jfversluis·
.NET 10 shipped dnx, basically npx for .NET. dnx NuGet.Mcp.Server --yes Downloads and runs a local MCP server. No install needed. Works with NuGet, Azure, Bicep, Power Platform MCP servers. Add to your mcp.json and go. Quietly a big deal for AI tooling.
Gerald Versluis tweet media
English
6
12
143
7.8K
Anton Martyniuk
Anton Martyniuk@AntonMartyniuk·
Most Senior devs tell you to create repositories for EF Core. But that's not the best way to code. As your .NET projects grow, handling data gets more and more complicated. Many teams start with the Repository Pattern, wrapping their EF Core queries inside. At first, this works fine. But as your project grows, your Repositories either don't do enough or try to do too much. Your code becomes harder to understand and modify as business requirements change. Each time you need a new filter or query, you add another method or even a new repository. Remember that EF Core's DbContext already implements the Repository and Unit of Work patterns This is clearly stated in the official Microsoft documentation on DbContext. You can also see this in the DbContext code summary in your IDE. When we create a repository over EF Core, we create an abstraction over an abstraction, leading to over-engineered solutions. How can you solve this issue? The answer is a 𝗦𝗽𝗲𝗰𝗶𝗳𝗶𝗰𝗮𝘁𝗶𝗼𝗻 pattern. The Specification Pattern is a way to describe what data you want from your database using small, reusable classes called "specifications". Each Specification represents a filter or a rule that can be applied to a query. This lets you build complex queries by combining simple, easy-to-understand classes. Recently, I shared with 𝟮𝟰,𝟬𝟬𝟬+ people: ➡️ Why Repositories Become a Bottleneck in Real Projects ➡️ What Is the Specification Pattern? ➡️ How to Implement Specifications in EF Core ➡️ Advanced Specifications Read the full article here: ↳ antondevtips.com/blog/specifica… 📌Subscribe to my weekly .NET newsletter, amazing content is coming in September — ♻️ Repost to help others learn about Specification Pattern ➕ Follow me ( @AntonMartyniuk ) for more
Anton Martyniuk tweet media
English
8
24
115
5.8K
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
Did you know the bit pattern of a null pointer in C++ doesn’t have to be all zero bits? So p == nullptr is fine, but aftermemset(&p, 0, sizeof(p)); the check p == nullptr isn’t guaranteed. Yet in WASM, memory really starts at address 0, and accessing it is valid.
English
0
0
0
22
Venkatesh
Venkatesh@Venkydotdev·
Explained how Quantum computers work
English
258
1.8K
19K
3M
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
@KarenPayneMVP This is a great example of a bad name. It would be better to name it so it clearly signals a compile-time symbol, e.g. ConditionalCompilationAttribute or CompileOnlyIfSymbolDefinedAttribute
English
0
0
0
86
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
#IdeaOfTheDay: A phone feature (or built-in camera option) that automatically swaps/obscures faces in public street photos with one tap, keeping the scene intact. Share city shots without stressing over privacy rules or accidental bystanders.
English
0
0
0
20
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
@KarenPayneMVP First. And I like when lines connect exact fields, not just tables (like in old MS Access)
English
0
0
1
125
Karen Payne MVP
Karen Payne MVP@KarenPayneMVP·
Which is more appealing for an overview of a database?
Karen Payne MVP tweet mediaKaren Payne MVP tweet media
English
17
2
24
4.1K
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
Updated my C# Copilot/Codex instructions template. github.com/DimonSmart/Cop… One shared AI rules file, plus Copilot and Codex entry files. Less duplication, same standards.
English
0
0
0
27
Dmitry Dorogoy retweetledi
Aman
Aman@Amank1412·
Someone built a web-based System Design Simulator, where you drag & drop architecture components and actually simulate traffic, failures, latency, and scaling in real time, System design just got way more interactive.
English
133
558
7K
475.1K
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
#IdeaOfTheDay: Add a “Prediction Post” mode to social platforms (Telegram, socials, etc.). You write a post today, pick the future publish date, and then it’s locked forever. The platform guarantees it will go live on time and shows both timestamps: “written on” + “published on”.
English
0
0
0
15
Dmitry Dorogoy
Dmitry Dorogoy@DimonSmart·
Prompting is the new horsepower.
Dmitry Dorogoy tweet media
English
0
0
0
10