Skip to content
DevMeme
3243 of 7590
Languages Post #3566 · source on Telegram

Java Developer's First Look at C#

Description

This is a two-panel meme using the 'Sounds Like Slavery With Extra Steps' format from the show Rick and Morty. The top panel has the text 'When a Java Developer Switches to C#'. The bottom panel shows a scene from the cartoon: Rick, with the Java logo floating near him, and Morty are talking to a green alien. The alien is saying, 'Well that Sounds Like Java With Extra Steps'. The meme humorously captures the sentiment of some Java developers when they first encounter C#. Due to the languages' shared history and similar C-style syntax, many core concepts appear familiar, yet C# has its own distinct features, ecosystem, and syntactic sugar (like LINQ, properties, and async/await) that can feel like additional layers on top of Java's foundation. It plays into the long-standing friendly rivalry and debate within the developer community about the merits and complexities of each language

Comments

12
Anonymous ★ Top Pick The best part of a Java dev learning C# is their sudden appreciation for checked exceptions after their first encounter with a wild `NullReferenceException` that async/await helped hide
  1. Anonymous ★ Top Pick

    The best part of a Java dev learning C# is their sudden appreciation for checked exceptions after their first encounter with a wild `NullReferenceException` that async/await helped hide

  2. Anonymous

    Made the jump from Java to C#: same NullPointerException wearing a .NET badge, JAR hell rebranded as “assembly binding redirects,” and now it’s MSBuild passive-aggressively narrating my dependency drama instead of Maven

  3. Anonymous

    After 20 years of arguing about checked exceptions, we finally switched to C# only to spend the next 20 years explaining why we still write 'final' in code comments out of muscle memory

  4. Anonymous

    Ah yes, the classic Java-to-C# migration: where you trade NullPointerExceptions for NullReferenceExceptions, discover that LINQ is just streams with better marketing, and realize that 'async/await' is what you've been manually implementing with CompletableFuture all along. The real extra step? Explaining to your team why you now need Visual Studio licenses and why 'cross-platform' suddenly means 'works great on Windows, theoretically on Linux.'

  5. Anonymous

    Switching from JVM to CLR feels like renaming packages to namespaces, swapping Maven for NuGet, and realizing your NPE just changed its last name to NullReferenceException - plus the generics finally survive the JIT

  6. Anonymous

    C# to Java vets: same JVM dance on CLR stage, but now with LINQ solos and NuGet encores

  7. Anonymous

    Java → C#: Spring annotations become attributes, Streams become LINQ, and NPE gets rebranded as NRE - identical outage, plus an extra meeting about why we enumerated it twice

  8. @beton_kruglosu_totchno 5y

    at least C# reduces amount of getters and setters needed tho

  9. @choke_hazard 5y

    When C# developer switches to Java: Well that sounds like C# 2 archaeological periods ago

  10. @Box_of_the_Fox 5y

    Why would java developer switch to C# when there's kotlin?

    1. @AgafonovNI 5y

      +

    2. Deleted Account 5y

      +

Use J and K for navigation