Hacker News new | past | comments | ask | show | jobs | submit login

Read about how the C# compiler creates Lambdas. Learn how eventing really works. Learn what your LINQ code is rewritten into.

A good C# developer knows the runtime and their compiler, the same way a good C++ developer does. Yes there is a performance gulf between what a good C# programmer can do and what a good C++ developer can do (although the size of that gulf is an argument for another day!), but there is also a huge performance difference between what a good C# developer does and what an average C# developer does.

As an example, my team has a log file that is consumed by other multiple teams. Log file parsers have been written in either C++ or C#.

The log file has a bunch of discreet entries in it, each one of which is independent of the others and measures in the tens of bytes.

One of the C++ parsers tries to read the entire log file it at once. It is dog slow and just chokes on larger files.

One of the C# parsers relies on the file system to predict future reads and just pulls the file in entry by entry.

The C# parser is faster and doesn't have file size limitations.

(On a related note, I have worked with C++ UI frameworks that are heavier weight than C# UI frameworks!!)

My point is, a good developer is a good developer, independent of the language.

(That said, some of the analysis of cache performance impressed me, instruction count is not everything!)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: