C# and .NET
Desktop software, practical examples, tooling, and maintainable application code.
About
Clear, practical tutorials about C#, WPF, PLC communication, HMI software, machine vision, and the real problems that appear when industrial automation meets software engineering.
I started this blog in 2010 to document what I was learning while working in industrial automation, PLC programming, C#, WPF, HMI development, and machine vision.
Over time, the site became a practical resource for engineers and software developers who want to build real applications for industrial environments: connecting C# applications to PLCs, creating desktop HMIs, working with communication protocols, and solving the kind of problems that are not always easy to find in official documentation.
My goal is simple: write clear, practical tutorials based on real experience.
I try to make the articles useful for people who are building software, not just reading theory.
Desktop software, practical examples, tooling, and maintainable application code.
Desktop HMIs, supervision software, MVVM, navigation, and operator-facing UI patterns.
Siemens, Allen Bradley, Modbus, OPC, S7.Net, Sharp7, drivers, and polling strategies.
Image acquisition, computer vision experiments, cameras, and industrial inspection ideas.
Practical architecture, lessons from real projects, and patterns that survive near machines.
Small tools, source code, experiments, and details that make implementation easier.
I’m Michele Cattafesta, an electronic engineer and software developer based in Dublin, Ireland.
I have been developing software since 2008, starting with PLC and HMI systems for industrial automation, then moving deeper into C#, WPF, desktop applications, Xamarin, UWP, and cross-platform client software.
During my career I have worked on industrial automation systems, machine HMI software, computer vision applications, healthcare software, and large-scale client applications. I currently work as a software developer at Synchronoss Technologies.
I believe one of the best ways to really understand something is to explain it clearly to someone else.
That is why I use this blog to document problems I solve, technologies I learn, and practical approaches that helped me in real projects. Some articles are tutorials, some are notes, some are experiments, but the idea is always the same: make technical knowledge easier to apply.
Mesta Automation receives hundreds of page views every day, and I’m grateful that many engineers and developers have used it over the years to learn C#, WPF, PLC communication, and industrial software development.