GET https://kbin.spritesserver.nl/m/programmer_humor@programming.dev/t/15325/the-myth-of-type-safety

Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
0.15 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.03 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\Entry {#2399
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +magazine: App\Entity\Magazine {#262
    +icon: Proxies\__CG__\App\Entity\Image {#242 …}
    +name: "programmer_humor@programming.dev"
    +title: "programmer_humor"
    +description: """
      Welcome to Programmer Humor!\n
      \n
      This is a place where you can post jokes, memes, humor, etc. related to programming!\n
      \n
      For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
      \n
      Rules\n
      -----\n
      \n
      - Keep content in english\n
      - No advertisements\n
      - Posts must be related to programming or programmer topics
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 297
    +entryCommentCount: 2799
    +postCount: 1
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729523671 {#270
      date: 2024-10-21 17:14:31.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#233 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
    +entries: Doctrine\ORM\PersistentCollection {#176 …}
    +posts: Doctrine\ORM\PersistentCollection {#134 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
    +bans: Doctrine\ORM\PersistentCollection {#113 …}
    +reports: Doctrine\ORM\PersistentCollection {#99 …}
    +badges: Doctrine\ORM\PersistentCollection {#77 …}
    +logs: Doctrine\ORM\PersistentCollection {#67 …}
    +awards: Doctrine\ORM\PersistentCollection {#2434 …}
    +categories: Doctrine\ORM\PersistentCollection {#1804 …}
    -id: 100
    +apId: "programmer_humor@programming.dev"
    +apProfileId: "https://programming.dev/c/programmer_humor"
    +apPublicUrl: "https://programming.dev/c/programmer_humor"
    +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
    +apInboxUrl: "https://programming.dev/inbox"
    +apDomain: "programming.dev"
    +apPreferredUsername: "programmer_humor"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1726902871 {#268
      date: 2024-09-21 09:14:31.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700391429 {#276
      date: 2023-11-19 11:57:09.0 +01:00
    }
  }
  +image: Proxies\__CG__\App\Entity\Image {#1973 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
  +slug: "the-myth-of-type-safety"
  +title: "the myth of type safety"
  +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 20
  +favouriteCount: 229
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1701081474 {#1828
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1408 …}
  +votes: Doctrine\ORM\PersistentCollection {#1957 …}
  +reports: Doctrine\ORM\PersistentCollection {#1972 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
  +badges: Doctrine\ORM\PersistentCollection {#2166 …}
  +children: []
  -id: 15325
  -titleTs: "'myth':2 'safeti':5 'type':4"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1700714606
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/8589200"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700628206 {#2414
    date: 2023-11-22 05:43:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\Entry {#2399
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +magazine: App\Entity\Magazine {#262
    +icon: Proxies\__CG__\App\Entity\Image {#242 …}
    +name: "programmer_humor@programming.dev"
    +title: "programmer_humor"
    +description: """
      Welcome to Programmer Humor!\n
      \n
      This is a place where you can post jokes, memes, humor, etc. related to programming!\n
      \n
      For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
      \n
      Rules\n
      -----\n
      \n
      - Keep content in english\n
      - No advertisements\n
      - Posts must be related to programming or programmer topics
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 297
    +entryCommentCount: 2799
    +postCount: 1
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729523671 {#270
      date: 2024-10-21 17:14:31.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#233 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
    +entries: Doctrine\ORM\PersistentCollection {#176 …}
    +posts: Doctrine\ORM\PersistentCollection {#134 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
    +bans: Doctrine\ORM\PersistentCollection {#113 …}
    +reports: Doctrine\ORM\PersistentCollection {#99 …}
    +badges: Doctrine\ORM\PersistentCollection {#77 …}
    +logs: Doctrine\ORM\PersistentCollection {#67 …}
    +awards: Doctrine\ORM\PersistentCollection {#2434 …}
    +categories: Doctrine\ORM\PersistentCollection {#1804 …}
    -id: 100
    +apId: "programmer_humor@programming.dev"
    +apProfileId: "https://programming.dev/c/programmer_humor"
    +apPublicUrl: "https://programming.dev/c/programmer_humor"
    +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
    +apInboxUrl: "https://programming.dev/inbox"
    +apDomain: "programming.dev"
    +apPreferredUsername: "programmer_humor"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1726902871 {#268
      date: 2024-09-21 09:14:31.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700391429 {#276
      date: 2023-11-19 11:57:09.0 +01:00
    }
  }
  +image: Proxies\__CG__\App\Entity\Image {#1973 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
  +slug: "the-myth-of-type-safety"
  +title: "the myth of type safety"
  +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 20
  +favouriteCount: 229
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1701081474 {#1828
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1408 …}
  +votes: Doctrine\ORM\PersistentCollection {#1957 …}
  +reports: Doctrine\ORM\PersistentCollection {#1972 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
  +badges: Doctrine\ORM\PersistentCollection {#2166 …}
  +children: []
  -id: 15325
  -titleTs: "'myth':2 'safeti':5 'type':4"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1700714606
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/8589200"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700628206 {#2414
    date: 2023-11-22 05:43:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\Entry {#2399
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +magazine: App\Entity\Magazine {#262
    +icon: Proxies\__CG__\App\Entity\Image {#242 …}
    +name: "programmer_humor@programming.dev"
    +title: "programmer_humor"
    +description: """
      Welcome to Programmer Humor!\n
      \n
      This is a place where you can post jokes, memes, humor, etc. related to programming!\n
      \n
      For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
      \n
      Rules\n
      -----\n
      \n
      - Keep content in english\n
      - No advertisements\n
      - Posts must be related to programming or programmer topics
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 297
    +entryCommentCount: 2799
    +postCount: 1
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729523671 {#270
      date: 2024-10-21 17:14:31.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#233 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
    +entries: Doctrine\ORM\PersistentCollection {#176 …}
    +posts: Doctrine\ORM\PersistentCollection {#134 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
    +bans: Doctrine\ORM\PersistentCollection {#113 …}
    +reports: Doctrine\ORM\PersistentCollection {#99 …}
    +badges: Doctrine\ORM\PersistentCollection {#77 …}
    +logs: Doctrine\ORM\PersistentCollection {#67 …}
    +awards: Doctrine\ORM\PersistentCollection {#2434 …}
    +categories: Doctrine\ORM\PersistentCollection {#1804 …}
    -id: 100
    +apId: "programmer_humor@programming.dev"
    +apProfileId: "https://programming.dev/c/programmer_humor"
    +apPublicUrl: "https://programming.dev/c/programmer_humor"
    +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
    +apInboxUrl: "https://programming.dev/inbox"
    +apDomain: "programming.dev"
    +apPreferredUsername: "programmer_humor"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1726902871 {#268
      date: 2024-09-21 09:14:31.0 +02:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1700391429 {#276
      date: 2023-11-19 11:57:09.0 +01:00
    }
  }
  +image: Proxies\__CG__\App\Entity\Image {#1973 …}
  +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
  +slug: "the-myth-of-type-safety"
  +title: "the myth of type safety"
  +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
  +body: null
  +type: "image"
  +lang: "en"
  +isOc: false
  +hasEmbed: true
  +commentCount: 20
  +favouriteCount: 229
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1701081474 {#1828
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1408 …}
  +votes: Doctrine\ORM\PersistentCollection {#1957 …}
  +reports: Doctrine\ORM\PersistentCollection {#1972 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
  +badges: Doctrine\ORM\PersistentCollection {#2166 …}
  +children: []
  -id: 15325
  -titleTs: "'myth':2 'safeti':5 'type':4"
  -bodyTs: null
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1700714606
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/8589200"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700628206 {#2414
    date: 2023-11-22 05:43:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
6 DENIED moderate
App\Entity\EntryComment {#4004
  +user: App\Entity\User {#3952 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "It’s all bits in registers at the end of the day, and they all have the only type a bit can have"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 8
  +score: 0
  +lastActive: DateTime @1700749259 {#4013
    date: 2023-11-23 15:20:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4002 …}
  +nested: Doctrine\ORM\PersistentCollection {#4000 …}
  +votes: Doctrine\ORM\PersistentCollection {#3998 …}
  +reports: Doctrine\ORM\PersistentCollection {#3996 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3964 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3968 …}
  -id: 154708
  -bodyTs: "'bit':4,21 'day':12 'end':9 'regist':6 'type':19"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ml/comment/6056939"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700749259 {#3949
    date: 2023-11-23 15:20:59.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
7 DENIED edit
App\Entity\EntryComment {#4004
  +user: App\Entity\User {#3952 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "It’s all bits in registers at the end of the day, and they all have the only type a bit can have"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 8
  +score: 0
  +lastActive: DateTime @1700749259 {#4013
    date: 2023-11-23 15:20:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4002 …}
  +nested: Doctrine\ORM\PersistentCollection {#4000 …}
  +votes: Doctrine\ORM\PersistentCollection {#3998 …}
  +reports: Doctrine\ORM\PersistentCollection {#3996 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3964 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3968 …}
  -id: 154708
  -bodyTs: "'bit':4,21 'day':12 'end':9 'regist':6 'type':19"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ml/comment/6056939"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700749259 {#3949
    date: 2023-11-23 15:20:59.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
8 DENIED moderate
App\Entity\EntryComment {#4004
  +user: App\Entity\User {#3952 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "It’s all bits in registers at the end of the day, and they all have the only type a bit can have"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 8
  +score: 0
  +lastActive: DateTime @1700749259 {#4013
    date: 2023-11-23 15:20:59.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4002 …}
  +nested: Doctrine\ORM\PersistentCollection {#4000 …}
  +votes: Doctrine\ORM\PersistentCollection {#3998 …}
  +reports: Doctrine\ORM\PersistentCollection {#3996 …}
  +favourites: Doctrine\ORM\PersistentCollection {#3964 …}
  +notifications: Doctrine\ORM\PersistentCollection {#3968 …}
  -id: 154708
  -bodyTs: "'bit':4,21 'day':12 'end':9 'regist':6 'type':19"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ml/comment/6056939"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700749259 {#3949
    date: 2023-11-23 15:20:59.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
9 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
10 DENIED moderate
App\Entity\EntryComment {#4036
  +user: App\Entity\User {#4025 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 53
  +score: 0
  +lastActive: DateTime @1701190041 {#4042
    date: 2023-11-28 17:47:21.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4041 …}
  +nested: Doctrine\ORM\PersistentCollection {#4040 …}
  +votes: Doctrine\ORM\PersistentCollection {#4031 …}
  +reports: Doctrine\ORM\PersistentCollection {#4034 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
  -id: 149784
  -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5054617"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635274 {#4047
    date: 2023-11-22 07:41:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
11 DENIED edit
App\Entity\EntryComment {#4036
  +user: App\Entity\User {#4025 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 53
  +score: 0
  +lastActive: DateTime @1701190041 {#4042
    date: 2023-11-28 17:47:21.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4041 …}
  +nested: Doctrine\ORM\PersistentCollection {#4040 …}
  +votes: Doctrine\ORM\PersistentCollection {#4031 …}
  +reports: Doctrine\ORM\PersistentCollection {#4034 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
  -id: 149784
  -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5054617"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635274 {#4047
    date: 2023-11-22 07:41:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
12 DENIED moderate
App\Entity\EntryComment {#4036
  +user: App\Entity\User {#4025 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 53
  +score: 0
  +lastActive: DateTime @1701190041 {#4042
    date: 2023-11-28 17:47:21.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4041 …}
  +nested: Doctrine\ORM\PersistentCollection {#4040 …}
  +votes: Doctrine\ORM\PersistentCollection {#4031 …}
  +reports: Doctrine\ORM\PersistentCollection {#4034 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
  -id: 149784
  -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5054617"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635274 {#4047
    date: 2023-11-22 07:41:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
13 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
14 DENIED moderate
App\Entity\EntryComment {#4219
  +user: Proxies\__CG__\App\Entity\User {#4220 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "/me laughs in void*"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700635947 {#4217
    date: 2023-11-22 07:52:27.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4221 …}
  +nested: Doctrine\ORM\PersistentCollection {#4223 …}
  +votes: Doctrine\ORM\PersistentCollection {#4225 …}
  +reports: Doctrine\ORM\PersistentCollection {#4227 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
  -id: 149810
  -bodyTs: "'/me':1 'laugh':2 'void':4"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.blahaj.zone/comment/4529647"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635947 {#4218
    date: 2023-11-22 07:52:27.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
15 DENIED edit
App\Entity\EntryComment {#4219
  +user: Proxies\__CG__\App\Entity\User {#4220 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "/me laughs in void*"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700635947 {#4217
    date: 2023-11-22 07:52:27.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4221 …}
  +nested: Doctrine\ORM\PersistentCollection {#4223 …}
  +votes: Doctrine\ORM\PersistentCollection {#4225 …}
  +reports: Doctrine\ORM\PersistentCollection {#4227 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
  -id: 149810
  -bodyTs: "'/me':1 'laugh':2 'void':4"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.blahaj.zone/comment/4529647"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635947 {#4218
    date: 2023-11-22 07:52:27.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
16 DENIED moderate
App\Entity\EntryComment {#4219
  +user: Proxies\__CG__\App\Entity\User {#4220 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "/me laughs in void*"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700635947 {#4217
    date: 2023-11-22 07:52:27.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4221 …}
  +nested: Doctrine\ORM\PersistentCollection {#4223 …}
  +votes: Doctrine\ORM\PersistentCollection {#4225 …}
  +reports: Doctrine\ORM\PersistentCollection {#4227 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
  -id: 149810
  -bodyTs: "'/me':1 'laugh':2 'void':4"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.blahaj.zone/comment/4529647"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700635947 {#4218
    date: 2023-11-22 07:52:27.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
17 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
18 DENIED moderate
App\Entity\EntryComment {#4306
  +user: Proxies\__CG__\App\Entity\User {#4307 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4219
    +user: Proxies\__CG__\App\Entity\User {#4220 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4036
      +user: App\Entity\User {#4025 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 53
      +score: 0
      +lastActive: DateTime @1701190041 {#4042
        date: 2023-11-28 17:47:21.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4041 …}
      +nested: Doctrine\ORM\PersistentCollection {#4040 …}
      +votes: Doctrine\ORM\PersistentCollection {#4031 …}
      +reports: Doctrine\ORM\PersistentCollection {#4034 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
      -id: 149784
      -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5054617"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635274 {#4047
        date: 2023-11-22 07:41:14.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "/me laughs in void*"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700635947 {#4217
      date: 2023-11-22 07:52:27.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4221 …}
    +nested: Doctrine\ORM\PersistentCollection {#4223 …}
    +votes: Doctrine\ORM\PersistentCollection {#4225 …}
    +reports: Doctrine\ORM\PersistentCollection {#4227 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
    -id: 149810
    -bodyTs: "'/me':1 'laugh':2 'void':4"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.blahaj.zone/comment/4529647"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635947 {#4218
      date: 2023-11-22 07:52:27.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `Object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 11
  +score: 0
  +lastActive: DateTime @1700637176 {#4304
    date: 2023-11-22 08:12:56.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4308 …}
  +nested: Doctrine\ORM\PersistentCollection {#4310 …}
  +votes: Doctrine\ORM\PersistentCollection {#4312 …}
  +reports: Doctrine\ORM\PersistentCollection {#4314 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
  -id: 149856
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700637176 {#4305
    date: 2023-11-22 08:12:56.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
19 DENIED edit
App\Entity\EntryComment {#4306
  +user: Proxies\__CG__\App\Entity\User {#4307 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4219
    +user: Proxies\__CG__\App\Entity\User {#4220 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4036
      +user: App\Entity\User {#4025 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 53
      +score: 0
      +lastActive: DateTime @1701190041 {#4042
        date: 2023-11-28 17:47:21.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4041 …}
      +nested: Doctrine\ORM\PersistentCollection {#4040 …}
      +votes: Doctrine\ORM\PersistentCollection {#4031 …}
      +reports: Doctrine\ORM\PersistentCollection {#4034 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
      -id: 149784
      -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5054617"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635274 {#4047
        date: 2023-11-22 07:41:14.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "/me laughs in void*"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700635947 {#4217
      date: 2023-11-22 07:52:27.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4221 …}
    +nested: Doctrine\ORM\PersistentCollection {#4223 …}
    +votes: Doctrine\ORM\PersistentCollection {#4225 …}
    +reports: Doctrine\ORM\PersistentCollection {#4227 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
    -id: 149810
    -bodyTs: "'/me':1 'laugh':2 'void':4"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.blahaj.zone/comment/4529647"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635947 {#4218
      date: 2023-11-22 07:52:27.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `Object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 11
  +score: 0
  +lastActive: DateTime @1700637176 {#4304
    date: 2023-11-22 08:12:56.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4308 …}
  +nested: Doctrine\ORM\PersistentCollection {#4310 …}
  +votes: Doctrine\ORM\PersistentCollection {#4312 …}
  +reports: Doctrine\ORM\PersistentCollection {#4314 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
  -id: 149856
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700637176 {#4305
    date: 2023-11-22 08:12:56.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
20 DENIED moderate
App\Entity\EntryComment {#4306
  +user: Proxies\__CG__\App\Entity\User {#4307 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4219
    +user: Proxies\__CG__\App\Entity\User {#4220 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4036
      +user: App\Entity\User {#4025 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 53
      +score: 0
      +lastActive: DateTime @1701190041 {#4042
        date: 2023-11-28 17:47:21.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4041 …}
      +nested: Doctrine\ORM\PersistentCollection {#4040 …}
      +votes: Doctrine\ORM\PersistentCollection {#4031 …}
      +reports: Doctrine\ORM\PersistentCollection {#4034 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
      -id: 149784
      -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5054617"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635274 {#4047
        date: 2023-11-22 07:41:14.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "/me laughs in void*"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700635947 {#4217
      date: 2023-11-22 07:52:27.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4221 …}
    +nested: Doctrine\ORM\PersistentCollection {#4223 …}
    +votes: Doctrine\ORM\PersistentCollection {#4225 …}
    +reports: Doctrine\ORM\PersistentCollection {#4227 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
    -id: 149810
    -bodyTs: "'/me':1 'laugh':2 'void':4"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.blahaj.zone/comment/4529647"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635947 {#4218
      date: 2023-11-22 07:52:27.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `Object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 11
  +score: 0
  +lastActive: DateTime @1700637176 {#4304
    date: 2023-11-22 08:12:56.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4308 …}
  +nested: Doctrine\ORM\PersistentCollection {#4310 …}
  +votes: Doctrine\ORM\PersistentCollection {#4312 …}
  +reports: Doctrine\ORM\PersistentCollection {#4314 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
  -id: 149856
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700637176 {#4305
    date: 2023-11-22 08:12:56.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
21 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
22 DENIED moderate
App\Entity\EntryComment {#4375
  +user: Proxies\__CG__\App\Entity\User {#4376 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4306
    +user: Proxies\__CG__\App\Entity\User {#4307 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4219
      +user: Proxies\__CG__\App\Entity\User {#4220 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4036
        +user: App\Entity\User {#4025 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
        +lang: "en"
        +isAdult: false
        +favouriteCount: 53
        +score: 0
        +lastActive: DateTime @1701190041 {#4042
          date: 2023-11-28 17:47:21.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4041 …}
        +nested: Doctrine\ORM\PersistentCollection {#4040 …}
        +votes: Doctrine\ORM\PersistentCollection {#4031 …}
        +reports: Doctrine\ORM\PersistentCollection {#4034 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
        -id: 149784
        -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://programming.dev/comment/5054617"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700635274 {#4047
          date: 2023-11-22 07:41:14.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4036}
      +body: "/me laughs in void*"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700635947 {#4217
        date: 2023-11-22 07:52:27.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Anders429@programming.dev"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4221 …}
      +nested: Doctrine\ORM\PersistentCollection {#4223 …}
      +votes: Doctrine\ORM\PersistentCollection {#4225 …}
      +reports: Doctrine\ORM\PersistentCollection {#4227 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
      -id: 149810
      -bodyTs: "'/me':1 'laugh':2 'void':4"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.blahaj.zone/comment/4529647"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635947 {#4218
        date: 2023-11-22 07:52:27.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "Laughs in `Object`"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 11
    +score: 0
    +lastActive: DateTime @1700637176 {#4304
      date: 2023-11-22 08:12:56.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
      "@vzq@lemmy.blahaj.zone"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4308 …}
    +nested: Doctrine\ORM\PersistentCollection {#4310 …}
    +votes: Doctrine\ORM\PersistentCollection {#4312 …}
    +reports: Doctrine\ORM\PersistentCollection {#4314 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    -id: 149856
    -bodyTs: "'laugh':1 'object':3"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700637176 {#4305
      date: 2023-11-22 08:12:56.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700638507 {#4373
    date: 2023-11-22 08:35:07.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
    "@magic_lobster_party@kbin.social"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4377 …}
  +nested: Doctrine\ORM\PersistentCollection {#4379 …}
  +votes: Doctrine\ORM\PersistentCollection {#4381 …}
  +reports: Doctrine\ORM\PersistentCollection {#4383 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4385 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4387 …}
  -id: 149891
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5055496"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700638507 {#4374
    date: 2023-11-22 08:35:07.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
23 DENIED edit
App\Entity\EntryComment {#4375
  +user: Proxies\__CG__\App\Entity\User {#4376 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4306
    +user: Proxies\__CG__\App\Entity\User {#4307 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4219
      +user: Proxies\__CG__\App\Entity\User {#4220 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4036
        +user: App\Entity\User {#4025 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
        +lang: "en"
        +isAdult: false
        +favouriteCount: 53
        +score: 0
        +lastActive: DateTime @1701190041 {#4042
          date: 2023-11-28 17:47:21.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4041 …}
        +nested: Doctrine\ORM\PersistentCollection {#4040 …}
        +votes: Doctrine\ORM\PersistentCollection {#4031 …}
        +reports: Doctrine\ORM\PersistentCollection {#4034 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
        -id: 149784
        -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://programming.dev/comment/5054617"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700635274 {#4047
          date: 2023-11-22 07:41:14.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4036}
      +body: "/me laughs in void*"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700635947 {#4217
        date: 2023-11-22 07:52:27.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Anders429@programming.dev"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4221 …}
      +nested: Doctrine\ORM\PersistentCollection {#4223 …}
      +votes: Doctrine\ORM\PersistentCollection {#4225 …}
      +reports: Doctrine\ORM\PersistentCollection {#4227 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
      -id: 149810
      -bodyTs: "'/me':1 'laugh':2 'void':4"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.blahaj.zone/comment/4529647"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635947 {#4218
        date: 2023-11-22 07:52:27.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "Laughs in `Object`"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 11
    +score: 0
    +lastActive: DateTime @1700637176 {#4304
      date: 2023-11-22 08:12:56.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
      "@vzq@lemmy.blahaj.zone"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4308 …}
    +nested: Doctrine\ORM\PersistentCollection {#4310 …}
    +votes: Doctrine\ORM\PersistentCollection {#4312 …}
    +reports: Doctrine\ORM\PersistentCollection {#4314 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    -id: 149856
    -bodyTs: "'laugh':1 'object':3"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700637176 {#4305
      date: 2023-11-22 08:12:56.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700638507 {#4373
    date: 2023-11-22 08:35:07.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
    "@magic_lobster_party@kbin.social"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4377 …}
  +nested: Doctrine\ORM\PersistentCollection {#4379 …}
  +votes: Doctrine\ORM\PersistentCollection {#4381 …}
  +reports: Doctrine\ORM\PersistentCollection {#4383 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4385 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4387 …}
  -id: 149891
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5055496"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700638507 {#4374
    date: 2023-11-22 08:35:07.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
24 DENIED moderate
App\Entity\EntryComment {#4375
  +user: Proxies\__CG__\App\Entity\User {#4376 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4306
    +user: Proxies\__CG__\App\Entity\User {#4307 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4219
      +user: Proxies\__CG__\App\Entity\User {#4220 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4036
        +user: App\Entity\User {#4025 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
        +lang: "en"
        +isAdult: false
        +favouriteCount: 53
        +score: 0
        +lastActive: DateTime @1701190041 {#4042
          date: 2023-11-28 17:47:21.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4041 …}
        +nested: Doctrine\ORM\PersistentCollection {#4040 …}
        +votes: Doctrine\ORM\PersistentCollection {#4031 …}
        +reports: Doctrine\ORM\PersistentCollection {#4034 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
        -id: 149784
        -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://programming.dev/comment/5054617"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700635274 {#4047
          date: 2023-11-22 07:41:14.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4036}
      +body: "/me laughs in void*"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700635947 {#4217
        date: 2023-11-22 07:52:27.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Anders429@programming.dev"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4221 …}
      +nested: Doctrine\ORM\PersistentCollection {#4223 …}
      +votes: Doctrine\ORM\PersistentCollection {#4225 …}
      +reports: Doctrine\ORM\PersistentCollection {#4227 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4229 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4231 …}
      -id: 149810
      -bodyTs: "'/me':1 'laugh':2 'void':4"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.blahaj.zone/comment/4529647"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700635947 {#4218
        date: 2023-11-22 07:52:27.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4036}
    +body: "Laughs in `Object`"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 11
    +score: 0
    +lastActive: DateTime @1700637176 {#4304
      date: 2023-11-22 08:12:56.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Anders429@programming.dev"
      "@vzq@lemmy.blahaj.zone"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4308 …}
    +nested: Doctrine\ORM\PersistentCollection {#4310 …}
    +votes: Doctrine\ORM\PersistentCollection {#4312 …}
    +reports: Doctrine\ORM\PersistentCollection {#4314 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4316 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4318 …}
    -id: 149856
    -bodyTs: "'laugh':1 'object':3"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://kbin.social/m/programmer_humor@programming.dev/t/646487/-/comment/3707567"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700637176 {#4305
      date: 2023-11-22 08:12:56.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: "Laughs in `object`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700638507 {#4373
    date: 2023-11-22 08:35:07.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
    "@vzq@lemmy.blahaj.zone"
    "@magic_lobster_party@kbin.social"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4377 …}
  +nested: Doctrine\ORM\PersistentCollection {#4379 …}
  +votes: Doctrine\ORM\PersistentCollection {#4381 …}
  +reports: Doctrine\ORM\PersistentCollection {#4383 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4385 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4387 …}
  -id: 149891
  -bodyTs: "'laugh':1 'object':3"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5055496"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700638507 {#4374
    date: 2023-11-22 08:35:07.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
25 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
26 DENIED moderate
App\Entity\EntryComment {#4235
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: """
    Yeah, it’s especially bad, when a library doesn’t provide type hints itself. It can be comically difficult to find out what the return type of a function is, because every if-else-branch might have a different return value, so you may need to read the function body in full to figure out what the type might be.\n
    \n
    Add to that, that lots of the tooling around type hints isn’t as fleshed out / useful as it is in fully typed languages and I can definitely understand why someone might not immediately feel like it’s a valuable use of their time.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1700700450 {#4233
    date: 2023-11-23 01:47:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4237 …}
  +nested: Doctrine\ORM\PersistentCollection {#4239 …}
  +votes: Doctrine\ORM\PersistentCollection {#4241 …}
  +reports: Doctrine\ORM\PersistentCollection {#4243 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4245 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4247 …}
  -id: 152755
  -bodyTs: "'add':62 'around':70 'bad':5 'bodi':51 'branch':36 'comic':18 'definit':89 'differ':40 'difficult':19 'doesn':9 'els':35 'especi':4 'everi':32 'feel':96 'figur':55 'find':21 'flesh':76 'full':53 'fulli':83 'function':29,50 'hint':13,72 'if-else-branch':33 'immedi':95 'isn':73 'languag':85 'librari':8 'like':97 'lot':66 'may':45 'might':37,60,93 'need':46 'provid':11 'read':48 'return':25,41 'someon':92 'time':105 'tool':69 'type':12,26,59,71,84 'understand':90 'use':78,102 'valu':42 'valuabl':101 'yeah':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5063421"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700700450 {#4234
    date: 2023-11-23 01:47:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
27 DENIED edit
App\Entity\EntryComment {#4235
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: """
    Yeah, it’s especially bad, when a library doesn’t provide type hints itself. It can be comically difficult to find out what the return type of a function is, because every if-else-branch might have a different return value, so you may need to read the function body in full to figure out what the type might be.\n
    \n
    Add to that, that lots of the tooling around type hints isn’t as fleshed out / useful as it is in fully typed languages and I can definitely understand why someone might not immediately feel like it’s a valuable use of their time.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1700700450 {#4233
    date: 2023-11-23 01:47:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4237 …}
  +nested: Doctrine\ORM\PersistentCollection {#4239 …}
  +votes: Doctrine\ORM\PersistentCollection {#4241 …}
  +reports: Doctrine\ORM\PersistentCollection {#4243 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4245 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4247 …}
  -id: 152755
  -bodyTs: "'add':62 'around':70 'bad':5 'bodi':51 'branch':36 'comic':18 'definit':89 'differ':40 'difficult':19 'doesn':9 'els':35 'especi':4 'everi':32 'feel':96 'figur':55 'find':21 'flesh':76 'full':53 'fulli':83 'function':29,50 'hint':13,72 'if-else-branch':33 'immedi':95 'isn':73 'languag':85 'librari':8 'like':97 'lot':66 'may':45 'might':37,60,93 'need':46 'provid':11 'read':48 'return':25,41 'someon':92 'time':105 'tool':69 'type':12,26,59,71,84 'understand':90 'use':78,102 'valu':42 'valuabl':101 'yeah':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5063421"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700700450 {#4234
    date: 2023-11-23 01:47:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
28 DENIED moderate
App\Entity\EntryComment {#4235
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4036
    +user: App\Entity\User {#4025 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "I’ve seen this same thing happen with Python’s type hints. Turns out giving an “escape hatch” type for devs who have no clue what the type actually is leads to a lot of useless type hints."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 53
    +score: 0
    +lastActive: DateTime @1701190041 {#4042
      date: 2023-11-28 17:47:21.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4041 …}
    +nested: Doctrine\ORM\PersistentCollection {#4040 …}
    +votes: Doctrine\ORM\PersistentCollection {#4031 …}
    +reports: Doctrine\ORM\PersistentCollection {#4034 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4029 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4027 …}
    -id: 149784
    -bodyTs: "'actual':29 'clue':25 'dev':21 'escap':17 'give':15 'happen':7 'hatch':18 'hint':12,38 'lead':31 'lot':34 'python':9 'seen':3 'thing':6 'turn':13 'type':11,19,28,37 'useless':36 've':2"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5054617"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700635274 {#4047
      date: 2023-11-22 07:41:14.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4036}
  +body: """
    Yeah, it’s especially bad, when a library doesn’t provide type hints itself. It can be comically difficult to find out what the return type of a function is, because every if-else-branch might have a different return value, so you may need to read the function body in full to figure out what the type might be.\n
    \n
    Add to that, that lots of the tooling around type hints isn’t as fleshed out / useful as it is in fully typed languages and I can definitely understand why someone might not immediately feel like it’s a valuable use of their time.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 3
  +score: 0
  +lastActive: DateTime @1700700450 {#4233
    date: 2023-11-23 01:47:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Anders429@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4237 …}
  +nested: Doctrine\ORM\PersistentCollection {#4239 …}
  +votes: Doctrine\ORM\PersistentCollection {#4241 …}
  +reports: Doctrine\ORM\PersistentCollection {#4243 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4245 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4247 …}
  -id: 152755
  -bodyTs: "'add':62 'around':70 'bad':5 'bodi':51 'branch':36 'comic':18 'definit':89 'differ':40 'difficult':19 'doesn':9 'els':35 'especi':4 'everi':32 'feel':96 'figur':55 'find':21 'flesh':76 'full':53 'fulli':83 'function':29,50 'hint':13,72 'if-else-branch':33 'immedi':95 'isn':73 'languag':85 'librari':8 'like':97 'lot':66 'may':45 'might':37,60,93 'need':46 'provid':11 'read':48 'return':25,41 'someon':92 'time':105 'tool':69 'type':12,26,59,71,84 'understand':90 'use':78,102 'valu':42 'valuabl':101 'yeah':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5063421"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700700450 {#4234
    date: 2023-11-23 01:47:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
29 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
30 DENIED moderate
App\Entity\EntryComment {#4121
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "Sounds like you don’t know how to properly use TypeScript…"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 66
  +score: 0
  +lastActive: DateTime @1701794905 {#4116
    date: 2023-12-05 17:48:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4122 …}
  +nested: Doctrine\ORM\PersistentCollection {#4124 …}
  +votes: Doctrine\ORM\PersistentCollection {#4126 …}
  +reports: Doctrine\ORM\PersistentCollection {#4128 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
  -id: 149648
  -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493586"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700629402 {#4117
    date: 2023-11-22 06:03:22.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
31 DENIED edit
App\Entity\EntryComment {#4121
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "Sounds like you don’t know how to properly use TypeScript…"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 66
  +score: 0
  +lastActive: DateTime @1701794905 {#4116
    date: 2023-12-05 17:48:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4122 …}
  +nested: Doctrine\ORM\PersistentCollection {#4124 …}
  +votes: Doctrine\ORM\PersistentCollection {#4126 …}
  +reports: Doctrine\ORM\PersistentCollection {#4128 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
  -id: 149648
  -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493586"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700629402 {#4117
    date: 2023-11-22 06:03:22.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
32 DENIED moderate
App\Entity\EntryComment {#4121
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: null
  +root: null
  +body: "Sounds like you don’t know how to properly use TypeScript…"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 66
  +score: 0
  +lastActive: DateTime @1701794905 {#4116
    date: 2023-12-05 17:48:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4122 …}
  +nested: Doctrine\ORM\PersistentCollection {#4124 …}
  +votes: Doctrine\ORM\PersistentCollection {#4126 …}
  +reports: Doctrine\ORM\PersistentCollection {#4128 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
  -id: 149648
  -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493586"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700629402 {#4117
    date: 2023-11-22 06:03:22.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
33 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
34 DENIED moderate
App\Entity\EntryComment {#4205
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4121
    +user: App\Entity\User {#4134 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "Sounds like you don’t know how to properly use TypeScript…"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 66
    +score: 0
    +lastActive: DateTime @1701794905 {#4116
      date: 2023-12-05 17:48:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4122 …}
    +nested: Doctrine\ORM\PersistentCollection {#4124 …}
    +votes: Doctrine\ORM\PersistentCollection {#4126 …}
    +reports: Doctrine\ORM\PersistentCollection {#4128 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
    -id: 149648
    -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493586"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700629402 {#4117
      date: 2023-11-22 06:03:22.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 34
  +score: 0
  +lastActive: DateTime @1700630138 {#4206
    date: 2023-11-22 06:15:38.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4202 …}
  +nested: Doctrine\ORM\PersistentCollection {#4198 …}
  +votes: Doctrine\ORM\PersistentCollection {#4196 …}
  +reports: Doctrine\ORM\PersistentCollection {#4211 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
  -id: 149667
  -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493754"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700630138 {#4209
    date: 2023-11-22 06:15:38.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
35 DENIED edit
App\Entity\EntryComment {#4205
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4121
    +user: App\Entity\User {#4134 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "Sounds like you don’t know how to properly use TypeScript…"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 66
    +score: 0
    +lastActive: DateTime @1701794905 {#4116
      date: 2023-12-05 17:48:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4122 …}
    +nested: Doctrine\ORM\PersistentCollection {#4124 …}
    +votes: Doctrine\ORM\PersistentCollection {#4126 …}
    +reports: Doctrine\ORM\PersistentCollection {#4128 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
    -id: 149648
    -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493586"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700629402 {#4117
      date: 2023-11-22 06:03:22.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 34
  +score: 0
  +lastActive: DateTime @1700630138 {#4206
    date: 2023-11-22 06:15:38.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4202 …}
  +nested: Doctrine\ORM\PersistentCollection {#4198 …}
  +votes: Doctrine\ORM\PersistentCollection {#4196 …}
  +reports: Doctrine\ORM\PersistentCollection {#4211 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
  -id: 149667
  -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493754"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700630138 {#4209
    date: 2023-11-22 06:15:38.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
36 DENIED moderate
App\Entity\EntryComment {#4205
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4121
    +user: App\Entity\User {#4134 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: null
    +root: null
    +body: "Sounds like you don’t know how to properly use TypeScript…"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 66
    +score: 0
    +lastActive: DateTime @1701794905 {#4116
      date: 2023-12-05 17:48:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4122 …}
    +nested: Doctrine\ORM\PersistentCollection {#4124 …}
    +votes: Doctrine\ORM\PersistentCollection {#4126 …}
    +reports: Doctrine\ORM\PersistentCollection {#4128 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
    -id: 149648
    -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493586"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700629402 {#4117
      date: 2023-11-22 06:03:22.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 34
  +score: 0
  +lastActive: DateTime @1700630138 {#4206
    date: 2023-11-22 06:15:38.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4202 …}
  +nested: Doctrine\ORM\PersistentCollection {#4198 …}
  +votes: Doctrine\ORM\PersistentCollection {#4196 …}
  +reports: Doctrine\ORM\PersistentCollection {#4211 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
  -id: 149667
  -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5493754"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700630138 {#4209
    date: 2023-11-22 06:15:38.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
37 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
38 DENIED moderate
App\Entity\EntryComment {#4259
  +user: Proxies\__CG__\App\Entity\User {#4256 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
    \n
    I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700632288 {#4260
    date: 2023-11-22 06:51:28.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4253 …}
  +nested: Doctrine\ORM\PersistentCollection {#4251 …}
  +votes: Doctrine\ORM\PersistentCollection {#4255 …}
  +reports: Doctrine\ORM\PersistentCollection {#4266 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
  -id: 149717
  -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ca/comment/5081985"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632288 {#4263
    date: 2023-11-22 06:51:28.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
39 DENIED edit
App\Entity\EntryComment {#4259
  +user: Proxies\__CG__\App\Entity\User {#4256 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
    \n
    I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700632288 {#4260
    date: 2023-11-22 06:51:28.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4253 …}
  +nested: Doctrine\ORM\PersistentCollection {#4251 …}
  +votes: Doctrine\ORM\PersistentCollection {#4255 …}
  +reports: Doctrine\ORM\PersistentCollection {#4266 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
  -id: 149717
  -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ca/comment/5081985"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632288 {#4263
    date: 2023-11-22 06:51:28.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
40 DENIED moderate
App\Entity\EntryComment {#4259
  +user: Proxies\__CG__\App\Entity\User {#4256 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
    \n
    I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700632288 {#4260
    date: 2023-11-22 06:51:28.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4253 …}
  +nested: Doctrine\ORM\PersistentCollection {#4251 …}
  +votes: Doctrine\ORM\PersistentCollection {#4255 …}
  +reports: Doctrine\ORM\PersistentCollection {#4266 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
  -id: 149717
  -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.ca/comment/5081985"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632288 {#4263
    date: 2023-11-22 06:51:28.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
41 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
42 DENIED moderate
App\Entity\EntryComment {#4345
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
    \n
    I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 4
  +score: 0
  +lastActive: DateTime @1700634024 {#4343
    date: 2023-11-22 07:20:24.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4346 …}
  +nested: Doctrine\ORM\PersistentCollection {#4348 …}
  +votes: Doctrine\ORM\PersistentCollection {#4350 …}
  +reports: Doctrine\ORM\PersistentCollection {#4352 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
  -id: 149757
  -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494471"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700634024 {#4344
    date: 2023-11-22 07:20:24.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
43 DENIED edit
App\Entity\EntryComment {#4345
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
    \n
    I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 4
  +score: 0
  +lastActive: DateTime @1700634024 {#4343
    date: 2023-11-22 07:20:24.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4346 …}
  +nested: Doctrine\ORM\PersistentCollection {#4348 …}
  +votes: Doctrine\ORM\PersistentCollection {#4350 …}
  +reports: Doctrine\ORM\PersistentCollection {#4352 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
  -id: 149757
  -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494471"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700634024 {#4344
    date: 2023-11-22 07:20:24.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
44 DENIED moderate
App\Entity\EntryComment {#4345
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
    \n
    I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 4
  +score: 0
  +lastActive: DateTime @1700634024 {#4343
    date: 2023-11-22 07:20:24.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4346 …}
  +nested: Doctrine\ORM\PersistentCollection {#4348 …}
  +votes: Doctrine\ORM\PersistentCollection {#4350 …}
  +reports: Doctrine\ORM\PersistentCollection {#4352 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
  -id: 149757
  -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494471"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700634024 {#4344
    date: 2023-11-22 07:20:24.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
45 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
46 DENIED moderate
App\Entity\EntryComment {#4395
  +user: Proxies\__CG__\App\Entity\User {#4398 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700657905 {#4394
    date: 2023-11-22 13:58:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4402 …}
  +nested: Doctrine\ORM\PersistentCollection {#4404 …}
  +votes: Doctrine\ORM\PersistentCollection {#4400 …}
  +reports: Doctrine\ORM\PersistentCollection {#4406 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
  -id: 150357
  -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5061592"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700657905 {#4391
    date: 2023-11-22 13:58:25.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
47 DENIED edit
App\Entity\EntryComment {#4395
  +user: Proxies\__CG__\App\Entity\User {#4398 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700657905 {#4394
    date: 2023-11-22 13:58:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4402 …}
  +nested: Doctrine\ORM\PersistentCollection {#4404 …}
  +votes: Doctrine\ORM\PersistentCollection {#4400 …}
  +reports: Doctrine\ORM\PersistentCollection {#4406 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
  -id: 150357
  -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5061592"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700657905 {#4391
    date: 2023-11-22 13:58:25.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
48 DENIED moderate
App\Entity\EntryComment {#4395
  +user: Proxies\__CG__\App\Entity\User {#4398 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700657905 {#4394
    date: 2023-11-22 13:58:25.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4402 …}
  +nested: Doctrine\ORM\PersistentCollection {#4404 …}
  +votes: Doctrine\ORM\PersistentCollection {#4400 …}
  +reports: Doctrine\ORM\PersistentCollection {#4406 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
  -id: 150357
  -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://programming.dev/comment/5061592"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700657905 {#4391
    date: 2023-11-22 13:58:25.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
49 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
50 DENIED moderate
App\Entity\EntryComment {#4467
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4395
    +user: Proxies\__CG__\App\Entity\User {#4398 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4345
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4259
        +user: Proxies\__CG__\App\Entity\User {#4256 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4205
          +user: Proxies\__CG__\App\Entity\User {#1966 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4121
            +user: App\Entity\User {#4134 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: null
            +root: null
            +body: "Sounds like you don’t know how to properly use TypeScript…"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 66
            +score: 0
            +lastActive: DateTime @1701794905 {#4116
              date: 2023-12-05 17:48:25.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4122 …}
            +nested: Doctrine\ORM\PersistentCollection {#4124 …}
            +votes: Doctrine\ORM\PersistentCollection {#4126 …}
            +reports: Doctrine\ORM\PersistentCollection {#4128 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
            -id: 149648
            -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493586"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700629402 {#4117
              date: 2023-11-22 06:03:22.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 34
          +score: 0
          +lastActive: DateTime @1700630138 {#4206
            date: 2023-11-22 06:15:38.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4202 …}
          +nested: Doctrine\ORM\PersistentCollection {#4198 …}
          +votes: Doctrine\ORM\PersistentCollection {#4196 …}
          +reports: Doctrine\ORM\PersistentCollection {#4211 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
          -id: 149667
          -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493754"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700630138 {#4209
            date: 2023-11-22 06:15:38.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
          \n
          I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 14
        +score: 0
        +lastActive: DateTime @1700632288 {#4260
          date: 2023-11-22 06:51:28.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4253 …}
        +nested: Doctrine\ORM\PersistentCollection {#4251 …}
        +votes: Doctrine\ORM\PersistentCollection {#4255 …}
        +reports: Doctrine\ORM\PersistentCollection {#4266 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
        -id: 149717
        -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.ca/comment/5081985"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700632288 {#4263
          date: 2023-11-22 06:51:28.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
        \n
        I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 4
      +score: 0
      +lastActive: DateTime @1700634024 {#4343
        date: 2023-11-22 07:20:24.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4346 …}
      +nested: Doctrine\ORM\PersistentCollection {#4348 …}
      +votes: Doctrine\ORM\PersistentCollection {#4350 …}
      +reports: Doctrine\ORM\PersistentCollection {#4352 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
      -id: 149757
      -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5494471"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700634024 {#4344
        date: 2023-11-22 07:20:24.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 7
    +score: 0
    +lastActive: DateTime @1700657905 {#4394
      date: 2023-11-22 13:58:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4402 …}
    +nested: Doctrine\ORM\PersistentCollection {#4404 …}
    +votes: Doctrine\ORM\PersistentCollection {#4400 …}
    +reports: Doctrine\ORM\PersistentCollection {#4406 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
    -id: 150357
    -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5061592"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700657905 {#4391
      date: 2023-11-22 13:58:25.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
    \n
    So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700699470 {#4466
    date: 2023-11-23 01:31:10.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4470 …}
  +nested: Doctrine\ORM\PersistentCollection {#4475 …}
  +votes: Doctrine\ORM\PersistentCollection {#4471 …}
  +reports: Doctrine\ORM\PersistentCollection {#4477 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
  -id: 152700
  -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5062927"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700699470 {#4463
    date: 2023-11-23 01:31:10.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
51 DENIED edit
App\Entity\EntryComment {#4467
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4395
    +user: Proxies\__CG__\App\Entity\User {#4398 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4345
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4259
        +user: Proxies\__CG__\App\Entity\User {#4256 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4205
          +user: Proxies\__CG__\App\Entity\User {#1966 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4121
            +user: App\Entity\User {#4134 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: null
            +root: null
            +body: "Sounds like you don’t know how to properly use TypeScript…"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 66
            +score: 0
            +lastActive: DateTime @1701794905 {#4116
              date: 2023-12-05 17:48:25.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4122 …}
            +nested: Doctrine\ORM\PersistentCollection {#4124 …}
            +votes: Doctrine\ORM\PersistentCollection {#4126 …}
            +reports: Doctrine\ORM\PersistentCollection {#4128 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
            -id: 149648
            -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493586"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700629402 {#4117
              date: 2023-11-22 06:03:22.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 34
          +score: 0
          +lastActive: DateTime @1700630138 {#4206
            date: 2023-11-22 06:15:38.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4202 …}
          +nested: Doctrine\ORM\PersistentCollection {#4198 …}
          +votes: Doctrine\ORM\PersistentCollection {#4196 …}
          +reports: Doctrine\ORM\PersistentCollection {#4211 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
          -id: 149667
          -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493754"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700630138 {#4209
            date: 2023-11-22 06:15:38.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
          \n
          I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 14
        +score: 0
        +lastActive: DateTime @1700632288 {#4260
          date: 2023-11-22 06:51:28.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4253 …}
        +nested: Doctrine\ORM\PersistentCollection {#4251 …}
        +votes: Doctrine\ORM\PersistentCollection {#4255 …}
        +reports: Doctrine\ORM\PersistentCollection {#4266 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
        -id: 149717
        -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.ca/comment/5081985"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700632288 {#4263
          date: 2023-11-22 06:51:28.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
        \n
        I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 4
      +score: 0
      +lastActive: DateTime @1700634024 {#4343
        date: 2023-11-22 07:20:24.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4346 …}
      +nested: Doctrine\ORM\PersistentCollection {#4348 …}
      +votes: Doctrine\ORM\PersistentCollection {#4350 …}
      +reports: Doctrine\ORM\PersistentCollection {#4352 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
      -id: 149757
      -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5494471"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700634024 {#4344
        date: 2023-11-22 07:20:24.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 7
    +score: 0
    +lastActive: DateTime @1700657905 {#4394
      date: 2023-11-22 13:58:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4402 …}
    +nested: Doctrine\ORM\PersistentCollection {#4404 …}
    +votes: Doctrine\ORM\PersistentCollection {#4400 …}
    +reports: Doctrine\ORM\PersistentCollection {#4406 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
    -id: 150357
    -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5061592"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700657905 {#4391
      date: 2023-11-22 13:58:25.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
    \n
    So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700699470 {#4466
    date: 2023-11-23 01:31:10.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4470 …}
  +nested: Doctrine\ORM\PersistentCollection {#4475 …}
  +votes: Doctrine\ORM\PersistentCollection {#4471 …}
  +reports: Doctrine\ORM\PersistentCollection {#4477 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
  -id: 152700
  -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5062927"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700699470 {#4463
    date: 2023-11-23 01:31:10.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
52 DENIED moderate
App\Entity\EntryComment {#4467
  +user: Proxies\__CG__\App\Entity\User {#4236 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4395
    +user: Proxies\__CG__\App\Entity\User {#4398 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4345
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4259
        +user: Proxies\__CG__\App\Entity\User {#4256 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4205
          +user: Proxies\__CG__\App\Entity\User {#1966 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4121
            +user: App\Entity\User {#4134 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: null
            +root: null
            +body: "Sounds like you don’t know how to properly use TypeScript…"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 66
            +score: 0
            +lastActive: DateTime @1701794905 {#4116
              date: 2023-12-05 17:48:25.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4122 …}
            +nested: Doctrine\ORM\PersistentCollection {#4124 …}
            +votes: Doctrine\ORM\PersistentCollection {#4126 …}
            +reports: Doctrine\ORM\PersistentCollection {#4128 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
            -id: 149648
            -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493586"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700629402 {#4117
              date: 2023-11-22 06:03:22.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 34
          +score: 0
          +lastActive: DateTime @1700630138 {#4206
            date: 2023-11-22 06:15:38.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4202 …}
          +nested: Doctrine\ORM\PersistentCollection {#4198 …}
          +votes: Doctrine\ORM\PersistentCollection {#4196 …}
          +reports: Doctrine\ORM\PersistentCollection {#4211 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
          -id: 149667
          -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493754"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700630138 {#4209
            date: 2023-11-22 06:15:38.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
          \n
          I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 14
        +score: 0
        +lastActive: DateTime @1700632288 {#4260
          date: 2023-11-22 06:51:28.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4253 …}
        +nested: Doctrine\ORM\PersistentCollection {#4251 …}
        +votes: Doctrine\ORM\PersistentCollection {#4255 …}
        +reports: Doctrine\ORM\PersistentCollection {#4266 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
        -id: 149717
        -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.ca/comment/5081985"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700632288 {#4263
          date: 2023-11-22 06:51:28.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
        \n
        I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 4
      +score: 0
      +lastActive: DateTime @1700634024 {#4343
        date: 2023-11-22 07:20:24.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4346 …}
      +nested: Doctrine\ORM\PersistentCollection {#4348 …}
      +votes: Doctrine\ORM\PersistentCollection {#4350 …}
      +reports: Doctrine\ORM\PersistentCollection {#4352 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
      -id: 149757
      -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5494471"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700634024 {#4344
        date: 2023-11-22 07:20:24.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 7
    +score: 0
    +lastActive: DateTime @1700657905 {#4394
      date: 2023-11-22 13:58:25.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4402 …}
    +nested: Doctrine\ORM\PersistentCollection {#4404 …}
    +votes: Doctrine\ORM\PersistentCollection {#4400 …}
    +reports: Doctrine\ORM\PersistentCollection {#4406 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
    -id: 150357
    -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://programming.dev/comment/5061592"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700657905 {#4391
      date: 2023-11-22 13:58:25.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
    \n
    So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700699470 {#4466
    date: 2023-11-23 01:31:10.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4470 …}
  +nested: Doctrine\ORM\PersistentCollection {#4475 …}
  +votes: Doctrine\ORM\PersistentCollection {#4471 …}
  +reports: Doctrine\ORM\PersistentCollection {#4477 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
  -id: 152700
  -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5062927"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700699470 {#4463
    date: 2023-11-23 01:31:10.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
53 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
54 DENIED moderate
App\Entity\EntryComment {#4498
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4467
    +user: Proxies\__CG__\App\Entity\User {#4236 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4395
      +user: Proxies\__CG__\App\Entity\User {#4398 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4345
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4259
          +user: Proxies\__CG__\App\Entity\User {#4256 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4205
            +user: Proxies\__CG__\App\Entity\User {#1966 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: App\Entity\EntryComment {#4121
              +user: App\Entity\User {#4134 …}
              +entry: App\Entity\Entry {#2399}
              +magazine: App\Entity\Magazine {#262}
              +image: null
              +parent: null
              +root: null
              +body: "Sounds like you don’t know how to properly use TypeScript…"
              +lang: "en"
              +isAdult: false
              +favouriteCount: 66
              +score: 0
              +lastActive: DateTime @1701794905 {#4116
                date: 2023-12-05 17:48:25.0 +01:00
              }
              +ip: null
              +tags: null
              +mentions: [
                "@Zangoose@lemmy.world"
              ]
              +children: Doctrine\ORM\PersistentCollection {#4122 …}
              +nested: Doctrine\ORM\PersistentCollection {#4124 …}
              +votes: Doctrine\ORM\PersistentCollection {#4126 …}
              +reports: Doctrine\ORM\PersistentCollection {#4128 …}
              +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
              +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
              -id: 149648
              -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
              +ranking: 0
              +commentCount: 0
              +upVotes: 0
              +downVotes: 0
              +visibility: "visible             "
              +apId: "https://lemmy.world/comment/5493586"
              +editedAt: null
              +createdAt: DateTimeImmutable @1700629402 {#4117
                date: 2023-11-22 06:03:22.0 +01:00
              }
            }
            +root: App\Entity\EntryComment {#4121}
            +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 34
            +score: 0
            +lastActive: DateTime @1700630138 {#4206
              date: 2023-11-22 06:15:38.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
              "@Lowpast@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4202 …}
            +nested: Doctrine\ORM\PersistentCollection {#4198 …}
            +votes: Doctrine\ORM\PersistentCollection {#4196 …}
            +reports: Doctrine\ORM\PersistentCollection {#4211 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
            -id: 149667
            -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493754"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700630138 {#4209
              date: 2023-11-22 06:15:38.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: """
            I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
            \n
            I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
            """
          +lang: "en"
          +isAdult: false
          +favouriteCount: 14
          +score: 0
          +lastActive: DateTime @1700632288 {#4260
            date: 2023-11-22 06:51:28.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4253 …}
          +nested: Doctrine\ORM\PersistentCollection {#4251 …}
          +votes: Doctrine\ORM\PersistentCollection {#4255 …}
          +reports: Doctrine\ORM\PersistentCollection {#4266 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
          -id: 149717
          -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.ca/comment/5081985"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700632288 {#4263
            date: 2023-11-22 06:51:28.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
          \n
          I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 4
        +score: 0
        +lastActive: DateTime @1700634024 {#4343
          date: 2023-11-22 07:20:24.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
          "@roadrunner_ex@lemmy.ca"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4346 …}
        +nested: Doctrine\ORM\PersistentCollection {#4348 …}
        +votes: Doctrine\ORM\PersistentCollection {#4350 …}
        +reports: Doctrine\ORM\PersistentCollection {#4352 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
        -id: 149757
        -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5494471"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700634024 {#4344
          date: 2023-11-22 07:20:24.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1700657905 {#4394
        date: 2023-11-22 13:58:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4402 …}
      +nested: Doctrine\ORM\PersistentCollection {#4404 …}
      +votes: Doctrine\ORM\PersistentCollection {#4400 …}
      +reports: Doctrine\ORM\PersistentCollection {#4406 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
      -id: 150357
      -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5061592"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700657905 {#4391
        date: 2023-11-22 13:58:25.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
      \n
      So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 1
    +score: 0
    +lastActive: DateTime @1700699470 {#4466
      date: 2023-11-23 01:31:10.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
      "@Zikeji@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4470 …}
    +nested: Doctrine\ORM\PersistentCollection {#4475 …}
    +votes: Doctrine\ORM\PersistentCollection {#4471 …}
    +reports: Doctrine\ORM\PersistentCollection {#4477 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
    -id: 152700
    -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.de/comment/5062927"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700699470 {#4463
      date: 2023-11-23 01:31:10.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    Exactly this. I’d rather use TypeScript than regular JS, but I enjoy using almost any other statically-typed language more (except maybe C++) because TS has the potential to be just as bad as JS for codebases where it isn’t being used correctly (this is true for other languages as well but it’s usually a lot more obvious).\n
    \n
    Not that it isn’t possible to have good typescript code, but rather that code becomes a lot harder to maintain because of problems that could’ve been prevented at a language level (truthy/falsey logic, ‘any’ type being allowed by default rather than ‘unknown,’ etc)
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700702954 {#4493
    date: 2023-11-23 02:29:14.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
    "@Knusper@feddit.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4490 …}
  +nested: Doctrine\ORM\PersistentCollection {#4487 …}
  +votes: Doctrine\ORM\PersistentCollection {#4485 …}
  +reports: Doctrine\ORM\PersistentCollection {#4499 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4501 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4503 …}
  -id: 152883
  -bodyTs: "'allow':101 'almost':15 'bad':35 'becom':78 'c':25 'code':73,77 'codebas':39 'correct':46 'could':88 'd':4 'default':103 'enjoy':13 'etc':107 'exact':1 'except':23 'good':71 'harder':81 'isn':42,66 'js':10,37 'languag':21,52,94 'level':95 'logic':97 'lot':60,80 'maintain':83 'mayb':24 'obvious':62 'possibl':68 'potenti':30 'prevent':91 'problem':86 'rather':5,75,104 'regular':9 'static':19 'statically-typ':18 'true':49 'truthy/falsey':96 'ts':27 'type':20,99 'typescript':7,72 'unknown':106 'use':6,14,45 'usual':58 've':89 'well':54"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5516744"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700702954 {#4496
    date: 2023-11-23 02:29:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
55 DENIED edit
App\Entity\EntryComment {#4498
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4467
    +user: Proxies\__CG__\App\Entity\User {#4236 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4395
      +user: Proxies\__CG__\App\Entity\User {#4398 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4345
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4259
          +user: Proxies\__CG__\App\Entity\User {#4256 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4205
            +user: Proxies\__CG__\App\Entity\User {#1966 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: App\Entity\EntryComment {#4121
              +user: App\Entity\User {#4134 …}
              +entry: App\Entity\Entry {#2399}
              +magazine: App\Entity\Magazine {#262}
              +image: null
              +parent: null
              +root: null
              +body: "Sounds like you don’t know how to properly use TypeScript…"
              +lang: "en"
              +isAdult: false
              +favouriteCount: 66
              +score: 0
              +lastActive: DateTime @1701794905 {#4116
                date: 2023-12-05 17:48:25.0 +01:00
              }
              +ip: null
              +tags: null
              +mentions: [
                "@Zangoose@lemmy.world"
              ]
              +children: Doctrine\ORM\PersistentCollection {#4122 …}
              +nested: Doctrine\ORM\PersistentCollection {#4124 …}
              +votes: Doctrine\ORM\PersistentCollection {#4126 …}
              +reports: Doctrine\ORM\PersistentCollection {#4128 …}
              +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
              +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
              -id: 149648
              -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
              +ranking: 0
              +commentCount: 0
              +upVotes: 0
              +downVotes: 0
              +visibility: "visible             "
              +apId: "https://lemmy.world/comment/5493586"
              +editedAt: null
              +createdAt: DateTimeImmutable @1700629402 {#4117
                date: 2023-11-22 06:03:22.0 +01:00
              }
            }
            +root: App\Entity\EntryComment {#4121}
            +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 34
            +score: 0
            +lastActive: DateTime @1700630138 {#4206
              date: 2023-11-22 06:15:38.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
              "@Lowpast@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4202 …}
            +nested: Doctrine\ORM\PersistentCollection {#4198 …}
            +votes: Doctrine\ORM\PersistentCollection {#4196 …}
            +reports: Doctrine\ORM\PersistentCollection {#4211 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
            -id: 149667
            -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493754"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700630138 {#4209
              date: 2023-11-22 06:15:38.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: """
            I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
            \n
            I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
            """
          +lang: "en"
          +isAdult: false
          +favouriteCount: 14
          +score: 0
          +lastActive: DateTime @1700632288 {#4260
            date: 2023-11-22 06:51:28.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4253 …}
          +nested: Doctrine\ORM\PersistentCollection {#4251 …}
          +votes: Doctrine\ORM\PersistentCollection {#4255 …}
          +reports: Doctrine\ORM\PersistentCollection {#4266 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
          -id: 149717
          -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.ca/comment/5081985"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700632288 {#4263
            date: 2023-11-22 06:51:28.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
          \n
          I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 4
        +score: 0
        +lastActive: DateTime @1700634024 {#4343
          date: 2023-11-22 07:20:24.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
          "@roadrunner_ex@lemmy.ca"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4346 …}
        +nested: Doctrine\ORM\PersistentCollection {#4348 …}
        +votes: Doctrine\ORM\PersistentCollection {#4350 …}
        +reports: Doctrine\ORM\PersistentCollection {#4352 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
        -id: 149757
        -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5494471"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700634024 {#4344
          date: 2023-11-22 07:20:24.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1700657905 {#4394
        date: 2023-11-22 13:58:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4402 …}
      +nested: Doctrine\ORM\PersistentCollection {#4404 …}
      +votes: Doctrine\ORM\PersistentCollection {#4400 …}
      +reports: Doctrine\ORM\PersistentCollection {#4406 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
      -id: 150357
      -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5061592"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700657905 {#4391
        date: 2023-11-22 13:58:25.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
      \n
      So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 1
    +score: 0
    +lastActive: DateTime @1700699470 {#4466
      date: 2023-11-23 01:31:10.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
      "@Zikeji@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4470 …}
    +nested: Doctrine\ORM\PersistentCollection {#4475 …}
    +votes: Doctrine\ORM\PersistentCollection {#4471 …}
    +reports: Doctrine\ORM\PersistentCollection {#4477 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
    -id: 152700
    -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.de/comment/5062927"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700699470 {#4463
      date: 2023-11-23 01:31:10.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    Exactly this. I’d rather use TypeScript than regular JS, but I enjoy using almost any other statically-typed language more (except maybe C++) because TS has the potential to be just as bad as JS for codebases where it isn’t being used correctly (this is true for other languages as well but it’s usually a lot more obvious).\n
    \n
    Not that it isn’t possible to have good typescript code, but rather that code becomes a lot harder to maintain because of problems that could’ve been prevented at a language level (truthy/falsey logic, ‘any’ type being allowed by default rather than ‘unknown,’ etc)
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700702954 {#4493
    date: 2023-11-23 02:29:14.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
    "@Knusper@feddit.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4490 …}
  +nested: Doctrine\ORM\PersistentCollection {#4487 …}
  +votes: Doctrine\ORM\PersistentCollection {#4485 …}
  +reports: Doctrine\ORM\PersistentCollection {#4499 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4501 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4503 …}
  -id: 152883
  -bodyTs: "'allow':101 'almost':15 'bad':35 'becom':78 'c':25 'code':73,77 'codebas':39 'correct':46 'could':88 'd':4 'default':103 'enjoy':13 'etc':107 'exact':1 'except':23 'good':71 'harder':81 'isn':42,66 'js':10,37 'languag':21,52,94 'level':95 'logic':97 'lot':60,80 'maintain':83 'mayb':24 'obvious':62 'possibl':68 'potenti':30 'prevent':91 'problem':86 'rather':5,75,104 'regular':9 'static':19 'statically-typ':18 'true':49 'truthy/falsey':96 'ts':27 'type':20,99 'typescript':7,72 'unknown':106 'use':6,14,45 'usual':58 've':89 'well':54"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5516744"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700702954 {#4496
    date: 2023-11-23 02:29:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
56 DENIED moderate
App\Entity\EntryComment {#4498
  +user: Proxies\__CG__\App\Entity\User {#1966 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4467
    +user: Proxies\__CG__\App\Entity\User {#4236 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4395
      +user: Proxies\__CG__\App\Entity\User {#4398 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4345
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4259
          +user: Proxies\__CG__\App\Entity\User {#4256 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: App\Entity\EntryComment {#4205
            +user: Proxies\__CG__\App\Entity\User {#1966 …}
            +entry: App\Entity\Entry {#2399}
            +magazine: App\Entity\Magazine {#262}
            +image: null
            +parent: App\Entity\EntryComment {#4121
              +user: App\Entity\User {#4134 …}
              +entry: App\Entity\Entry {#2399}
              +magazine: App\Entity\Magazine {#262}
              +image: null
              +parent: null
              +root: null
              +body: "Sounds like you don’t know how to properly use TypeScript…"
              +lang: "en"
              +isAdult: false
              +favouriteCount: 66
              +score: 0
              +lastActive: DateTime @1701794905 {#4116
                date: 2023-12-05 17:48:25.0 +01:00
              }
              +ip: null
              +tags: null
              +mentions: [
                "@Zangoose@lemmy.world"
              ]
              +children: Doctrine\ORM\PersistentCollection {#4122 …}
              +nested: Doctrine\ORM\PersistentCollection {#4124 …}
              +votes: Doctrine\ORM\PersistentCollection {#4126 …}
              +reports: Doctrine\ORM\PersistentCollection {#4128 …}
              +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
              +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
              -id: 149648
              -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
              +ranking: 0
              +commentCount: 0
              +upVotes: 0
              +downVotes: 0
              +visibility: "visible             "
              +apId: "https://lemmy.world/comment/5493586"
              +editedAt: null
              +createdAt: DateTimeImmutable @1700629402 {#4117
                date: 2023-11-22 06:03:22.0 +01:00
              }
            }
            +root: App\Entity\EntryComment {#4121}
            +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
            +lang: "en"
            +isAdult: false
            +favouriteCount: 34
            +score: 0
            +lastActive: DateTime @1700630138 {#4206
              date: 2023-11-22 06:15:38.0 +01:00
            }
            +ip: null
            +tags: null
            +mentions: [
              "@Zangoose@lemmy.world"
              "@Lowpast@lemmy.world"
            ]
            +children: Doctrine\ORM\PersistentCollection {#4202 …}
            +nested: Doctrine\ORM\PersistentCollection {#4198 …}
            +votes: Doctrine\ORM\PersistentCollection {#4196 …}
            +reports: Doctrine\ORM\PersistentCollection {#4211 …}
            +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
            +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
            -id: 149667
            -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
            +ranking: 0
            +commentCount: 0
            +upVotes: 0
            +downVotes: 0
            +visibility: "visible             "
            +apId: "https://lemmy.world/comment/5493754"
            +editedAt: null
            +createdAt: DateTimeImmutable @1700630138 {#4209
              date: 2023-11-22 06:15:38.0 +01:00
            }
          }
          +root: App\Entity\EntryComment {#4121}
          +body: """
            I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
            \n
            I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
            """
          +lang: "en"
          +isAdult: false
          +favouriteCount: 14
          +score: 0
          +lastActive: DateTime @1700632288 {#4260
            date: 2023-11-22 06:51:28.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
            "@Lowpast@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4253 …}
          +nested: Doctrine\ORM\PersistentCollection {#4251 …}
          +votes: Doctrine\ORM\PersistentCollection {#4255 …}
          +reports: Doctrine\ORM\PersistentCollection {#4266 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
          -id: 149717
          -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.ca/comment/5081985"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700632288 {#4263
            date: 2023-11-22 06:51:28.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: """
          In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
          \n
          I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
          """
        +lang: "en"
        +isAdult: false
        +favouriteCount: 4
        +score: 0
        +lastActive: DateTime @1700634024 {#4343
          date: 2023-11-22 07:20:24.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
          "@roadrunner_ex@lemmy.ca"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4346 …}
        +nested: Doctrine\ORM\PersistentCollection {#4348 …}
        +votes: Doctrine\ORM\PersistentCollection {#4350 …}
        +reports: Doctrine\ORM\PersistentCollection {#4352 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
        -id: 149757
        -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5494471"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700634024 {#4344
          date: 2023-11-22 07:20:24.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 7
      +score: 0
      +lastActive: DateTime @1700657905 {#4394
        date: 2023-11-22 13:58:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
        "@roadrunner_ex@lemmy.ca"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4402 …}
      +nested: Doctrine\ORM\PersistentCollection {#4404 …}
      +votes: Doctrine\ORM\PersistentCollection {#4400 …}
      +reports: Doctrine\ORM\PersistentCollection {#4406 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4408 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4410 …}
      -id: 150357
      -bodyTs: "'abus':47 'base':1 'day':23 'descript':4 'enough':41 'fair':14 'given':11 'haven':9,37 'howev':34 'improv':30 'js':21,59 'least':25 'librari':60 'like':7 'll':17 'manual':67 'person':36 'project':45 'room':28 'run':43,55 'say':33 'shake':15 'sound':6 'take':18 'ts':19 'type':50,63,68 'unlucki':40 've':54 'worst':52"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://programming.dev/comment/5061592"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700657905 {#4391
        date: 2023-11-22 13:58:25.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I imagine what they mean is e.g. that TypeScript can tell you something is a `Date`, but it doesn’t attempt to fix some of the confusing, quirky behaviour with that: [developer.mozilla.org/en-US/docs/Web/…/Date#inter…](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#interpretation_of_two-digit_years)\n
      \n
      So, yes, it’s generally *better* than JS, but it doesn’t actually make it good/attractive, if you’re used to the sanity of backend languages. It very much feels like lipstick on a pig.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 1
    +score: 0
    +lastActive: DateTime @1700699470 {#4466
      date: 2023-11-23 01:31:10.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
      "@Zikeji@programming.dev"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4470 …}
    +nested: Doctrine\ORM\PersistentCollection {#4475 …}
    +votes: Doctrine\ORM\PersistentCollection {#4471 …}
    +reports: Doctrine\ORM\PersistentCollection {#4477 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4479 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4481 …}
    -id: 152700
    -bodyTs: "'/date':35 '/en-us/docs/web/':34 '/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':39 'actual':52 'attempt':21 'backend':64 'behaviour':29 'better':45 'confus':27 'date':16 'developer.mozilla.org':33,38 'developer.mozilla.org/en-us/docs/web/':32 'developer.mozilla.org/en-us/docs/web/javascript/reference/global_objects/date#interpretation_of_two-digit_years)':37 'doesn':19,50 'e.g':7 'feel':69 'fix':23 'general':44 'good/attractive':55 'imagin':2 'inter':36 'js':47 'languag':65 'like':70 'lipstick':71 'make':53 'mean':5 'much':68 'pig':74 'quirki':28 're':58 'saniti':62 'someth':13 'tell':11 'typescript':9 'use':59 'yes':41"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://feddit.de/comment/5062927"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700699470 {#4463
      date: 2023-11-23 01:31:10.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    Exactly this. I’d rather use TypeScript than regular JS, but I enjoy using almost any other statically-typed language more (except maybe C++) because TS has the potential to be just as bad as JS for codebases where it isn’t being used correctly (this is true for other languages as well but it’s usually a lot more obvious).\n
    \n
    Not that it isn’t possible to have good typescript code, but rather that code becomes a lot harder to maintain because of problems that could’ve been prevented at a language level (truthy/falsey logic, ‘any’ type being allowed by default rather than ‘unknown,’ etc)
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1700702954 {#4493
    date: 2023-11-23 02:29:14.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
    "@Zikeji@programming.dev"
    "@Knusper@feddit.de"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4490 …}
  +nested: Doctrine\ORM\PersistentCollection {#4487 …}
  +votes: Doctrine\ORM\PersistentCollection {#4485 …}
  +reports: Doctrine\ORM\PersistentCollection {#4499 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4501 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4503 …}
  -id: 152883
  -bodyTs: "'allow':101 'almost':15 'bad':35 'becom':78 'c':25 'code':73,77 'codebas':39 'correct':46 'could':88 'd':4 'default':103 'enjoy':13 'etc':107 'exact':1 'except':23 'good':71 'harder':81 'isn':42,66 'js':10,37 'languag':21,52,94 'level':95 'logic':97 'lot':60,80 'maintain':83 'mayb':24 'obvious':62 'possibl':68 'potenti':30 'prevent':91 'problem':86 'rather':5,75,104 'regular':9 'static':19 'statically-typ':18 'true':49 'truthy/falsey':96 'ts':27 'type':20,99 'typescript':7,72 'unknown':106 'use':6,14,45 'usual':58 've':89 'well':54"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5516744"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700702954 {#4496
    date: 2023-11-23 02:29:14.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
57 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
58 DENIED moderate
App\Entity\EntryComment {#4414
  +user: Proxies\__CG__\App\Entity\User {#4415 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "TypeScript *is* JavaScript and not in the literal it’s compiled to JS sense but in the think of TS as a linter not a language sense."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1701081474 {#4412
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4416 …}
  +nested: Doctrine\ORM\PersistentCollection {#4418 …}
  +votes: Doctrine\ORM\PersistentCollection {#4420 …}
  +reports: Doctrine\ORM\PersistentCollection {#4422 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4424 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4426 …}
  -id: 169570
  -bodyTs: "'compil':11 'javascript':3 'js':13 'languag':26 'linter':23 'liter':8 'sens':14,27 'think':18 'ts':20 'typescript':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.today/comment/3663613"
  +editedAt: null
  +createdAt: DateTimeImmutable @1701081474 {#4413
    date: 2023-11-27 11:37:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
59 DENIED edit
App\Entity\EntryComment {#4414
  +user: Proxies\__CG__\App\Entity\User {#4415 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "TypeScript *is* JavaScript and not in the literal it’s compiled to JS sense but in the think of TS as a linter not a language sense."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1701081474 {#4412
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4416 …}
  +nested: Doctrine\ORM\PersistentCollection {#4418 …}
  +votes: Doctrine\ORM\PersistentCollection {#4420 …}
  +reports: Doctrine\ORM\PersistentCollection {#4422 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4424 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4426 …}
  -id: 169570
  -bodyTs: "'compil':11 'javascript':3 'js':13 'languag':26 'linter':23 'liter':8 'sens':14,27 'think':18 'ts':20 'typescript':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.today/comment/3663613"
  +editedAt: null
  +createdAt: DateTimeImmutable @1701081474 {#4413
    date: 2023-11-27 11:37:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
60 DENIED moderate
App\Entity\EntryComment {#4414
  +user: Proxies\__CG__\App\Entity\User {#4415 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4345
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4259
      +user: Proxies\__CG__\App\Entity\User {#4256 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: """
        I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
        \n
        I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
        """
      +lang: "en"
      +isAdult: false
      +favouriteCount: 14
      +score: 0
      +lastActive: DateTime @1700632288 {#4260
        date: 2023-11-22 06:51:28.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4253 …}
      +nested: Doctrine\ORM\PersistentCollection {#4251 …}
      +votes: Doctrine\ORM\PersistentCollection {#4255 …}
      +reports: Doctrine\ORM\PersistentCollection {#4266 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
      -id: 149717
      -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.ca/comment/5081985"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632288 {#4263
        date: 2023-11-22 06:51:28.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.\n
      \n
      I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 4
    +score: 0
    +lastActive: DateTime @1700634024 {#4343
      date: 2023-11-22 07:20:24.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@roadrunner_ex@lemmy.ca"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4346 …}
    +nested: Doctrine\ORM\PersistentCollection {#4348 …}
    +votes: Doctrine\ORM\PersistentCollection {#4350 …}
    +reports: Doctrine\ORM\PersistentCollection {#4352 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4354 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4356 …}
    -id: 149757
    -bodyTs: "'allow':68 'bandaid':51 'default':80 'despis':41 'emphas':81 'etc':22 'explicit':37 'fan':6 'feel':45 'fields/parameters':35 'flesh':64 'freeli':78 'infer':9,30 'instead':59 'javascript':53 'kotlin':19 'languag':17,66 'like':47 'local':25 'm':4 'make':61 'modern':16 'need':36 'odditi':58 'option':70 'proper':63 'put':49 'return':33 'rust':20 'someon':48 'static':11 'system':13 'theori':2 'ts':21 'type':12,27,38,74 'types/object':34 'typescript':42 'use':18,77 'variabl':26"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5494471"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700634024 {#4344
      date: 2023-11-22 07:20:24.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "TypeScript *is* JavaScript and not in the literal it’s compiled to JS sense but in the think of TS as a linter not a language sense."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 1
  +score: 0
  +lastActive: DateTime @1701081474 {#4412
    date: 2023-11-27 11:37:54.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4416 …}
  +nested: Doctrine\ORM\PersistentCollection {#4418 …}
  +votes: Doctrine\ORM\PersistentCollection {#4420 …}
  +reports: Doctrine\ORM\PersistentCollection {#4422 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4424 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4426 …}
  -id: 169570
  -bodyTs: "'compil':11 'javascript':3 'js':13 'languag':26 'linter':23 'liter':8 'sens':14,27 'think':18 'ts':20 'typescript':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.today/comment/3663613"
  +editedAt: null
  +createdAt: DateTimeImmutable @1701081474 {#4413
    date: 2023-11-27 11:37:54.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
61 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
62 DENIED moderate
App\Entity\EntryComment {#4360
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "One file at a time. Make strong pre-commit eslint rules (that way you don’t impact existing code), eventually update tsconfig. You’ll get there :)"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700633203 {#4358
    date: 2023-11-22 07:06:43.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4361 …}
  +nested: Doctrine\ORM\PersistentCollection {#4363 …}
  +votes: Doctrine\ORM\PersistentCollection {#4365 …}
  +reports: Doctrine\ORM\PersistentCollection {#4367 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4369 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4371 …}
  -id: 149740
  -bodyTs: "'code':20 'commit':10 'eslint':11 'eventu':21 'exist':19 'file':2 'get':26 'impact':18 'll':25 'make':6 'one':1 'pre':9 'pre-commit':8 'rule':12 'strong':7 'time':5 'tsconfig':23 'updat':22 'way':14"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494323"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700633203 {#4359
    date: 2023-11-22 07:06:43.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
63 DENIED edit
App\Entity\EntryComment {#4360
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "One file at a time. Make strong pre-commit eslint rules (that way you don’t impact existing code), eventually update tsconfig. You’ll get there :)"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700633203 {#4358
    date: 2023-11-22 07:06:43.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4361 …}
  +nested: Doctrine\ORM\PersistentCollection {#4363 …}
  +votes: Doctrine\ORM\PersistentCollection {#4365 …}
  +reports: Doctrine\ORM\PersistentCollection {#4367 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4369 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4371 …}
  -id: 149740
  -bodyTs: "'code':20 'commit':10 'eslint':11 'eventu':21 'exist':19 'file':2 'get':26 'impact':18 'll':25 'make':6 'one':1 'pre':9 'pre-commit':8 'rule':12 'strong':7 'time':5 'tsconfig':23 'updat':22 'way':14"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494323"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700633203 {#4359
    date: 2023-11-22 07:06:43.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
64 DENIED moderate
App\Entity\EntryComment {#4360
  +user: App\Entity\User {#4134 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4259
    +user: Proxies\__CG__\App\Entity\User {#4256 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so `any` is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).\n
      \n
      I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 14
    +score: 0
    +lastActive: DateTime @1700632288 {#4260
      date: 2023-11-22 06:51:28.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4253 …}
    +nested: Doctrine\ORM\PersistentCollection {#4251 …}
    +votes: Doctrine\ORM\PersistentCollection {#4255 …}
    +reports: Doctrine\ORM\PersistentCollection {#4266 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4268 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4270 …}
    -id: 149717
    -bodyTs: "'actual':19 'also':69 'annoy':70 'anymor':57 'author':53 'avers':26 'bad':99 'becom':38 'code':45 'could':66 'dev':78 'develop':24 'even':63 'everywher':35 'fear':84 'feel':3 'forward':90 'general':97 'go':87,89 'ground':23 'help':10 'hurt':101 'junior':81 'kinda':2 'launch':11 'level':73 'love':106 'm':68 'mess':48 'on-the-ground':20 'pain':5 'pretti':80 'project':7,56 'safeti':30,95,105 'soul':107 'technic':16 'think':91 'touch':61 'type':29,94,104 'type-safety-loving-soul':103 'typescript':15,92 'use':28,34 'world':42 'worst':39 'wouldn':59 'written':13"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.ca/comment/5081985"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632288 {#4263
      date: 2023-11-22 06:51:28.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "One file at a time. Make strong pre-commit eslint rules (that way you don’t impact existing code), eventually update tsconfig. You’ll get there :)"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 6
  +score: 0
  +lastActive: DateTime @1700633203 {#4358
    date: 2023-11-22 07:06:43.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@roadrunner_ex@lemmy.ca"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4361 …}
  +nested: Doctrine\ORM\PersistentCollection {#4363 …}
  +votes: Doctrine\ORM\PersistentCollection {#4365 …}
  +reports: Doctrine\ORM\PersistentCollection {#4367 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4369 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4371 …}
  -id: 149740
  -bodyTs: "'code':20 'commit':10 'eslint':11 'eventu':21 'exist':19 'file':2 'get':26 'impact':18 'll':25 'make':6 'one':1 'pre':9 'pre-commit':8 'rule':12 'strong':7 'time':5 'tsconfig':23 'updat':22 'way':14"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5494323"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700633203 {#4359
    date: 2023-11-22 07:06:43.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
65 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
66 DENIED moderate
App\Entity\EntryComment {#4274
  +user: Proxies\__CG__\App\Entity\User {#4275 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Print the code out and burn it"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 12
  +score: 0
  +lastActive: DateTime @1700631277 {#4272
    date: 2023-11-22 06:34:37.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4276 …}
  +nested: Doctrine\ORM\PersistentCollection {#4278 …}
  +votes: Doctrine\ORM\PersistentCollection {#4280 …}
  +reports: Doctrine\ORM\PersistentCollection {#4282 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4284 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4286 …}
  -id: 149693
  -bodyTs: "'burn':6 'code':3 'print':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.nz/comment/3933970"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700631277 {#4273
    date: 2023-11-22 06:34:37.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
67 DENIED edit
App\Entity\EntryComment {#4274
  +user: Proxies\__CG__\App\Entity\User {#4275 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Print the code out and burn it"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 12
  +score: 0
  +lastActive: DateTime @1700631277 {#4272
    date: 2023-11-22 06:34:37.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4276 …}
  +nested: Doctrine\ORM\PersistentCollection {#4278 …}
  +votes: Doctrine\ORM\PersistentCollection {#4280 …}
  +reports: Doctrine\ORM\PersistentCollection {#4282 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4284 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4286 …}
  -id: 149693
  -bodyTs: "'burn':6 'code':3 'print':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.nz/comment/3933970"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700631277 {#4273
    date: 2023-11-22 06:34:37.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
68 DENIED moderate
App\Entity\EntryComment {#4274
  +user: Proxies\__CG__\App\Entity\User {#4275 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "Print the code out and burn it"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 12
  +score: 0
  +lastActive: DateTime @1700631277 {#4272
    date: 2023-11-22 06:34:37.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4276 …}
  +nested: Doctrine\ORM\PersistentCollection {#4278 …}
  +votes: Doctrine\ORM\PersistentCollection {#4280 …}
  +reports: Doctrine\ORM\PersistentCollection {#4282 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4284 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4286 …}
  -id: 149693
  -bodyTs: "'burn':6 'code':3 'print':1"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.nz/comment/3933970"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700631277 {#4273
    date: 2023-11-22 06:34:37.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
69 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
70 DENIED moderate
App\Entity\EntryComment {#4290
  +user: Proxies\__CG__\App\Entity\User {#4291 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 51
  +score: 0
  +lastActive: DateTime @1700632264 {#4288
    date: 2023-11-22 06:51:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4292 …}
  +nested: Doctrine\ORM\PersistentCollection {#4294 …}
  +votes: Doctrine\ORM\PersistentCollection {#4296 …}
  +reports: Doctrine\ORM\PersistentCollection {#4298 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
  -id: 149716
  -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632264 {#4289
    date: 2023-11-22 06:51:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
71 DENIED edit
App\Entity\EntryComment {#4290
  +user: Proxies\__CG__\App\Entity\User {#4291 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 51
  +score: 0
  +lastActive: DateTime @1700632264 {#4288
    date: 2023-11-22 06:51:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4292 …}
  +nested: Doctrine\ORM\PersistentCollection {#4294 …}
  +votes: Doctrine\ORM\PersistentCollection {#4296 …}
  +reports: Doctrine\ORM\PersistentCollection {#4298 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
  -id: 149716
  -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632264 {#4289
    date: 2023-11-22 06:51:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
72 DENIED moderate
App\Entity\EntryComment {#4290
  +user: Proxies\__CG__\App\Entity\User {#4291 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4205
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4121
      +user: App\Entity\User {#4134 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: null
      +root: null
      +body: "Sounds like you don’t know how to properly use TypeScript…"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 66
      +score: 0
      +lastActive: DateTime @1701794905 {#4116
        date: 2023-12-05 17:48:25.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4122 …}
      +nested: Doctrine\ORM\PersistentCollection {#4124 …}
      +votes: Doctrine\ORM\PersistentCollection {#4126 …}
      +reports: Doctrine\ORM\PersistentCollection {#4128 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
      -id: 149648
      -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493586"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700629402 {#4117
        date: 2023-11-22 06:03:22.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
    +lang: "en"
    +isAdult: false
    +favouriteCount: 34
    +score: 0
    +lastActive: DateTime @1700630138 {#4206
      date: 2023-11-22 06:15:38.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4202 …}
    +nested: Doctrine\ORM\PersistentCollection {#4198 …}
    +votes: Doctrine\ORM\PersistentCollection {#4196 …}
    +reports: Doctrine\ORM\PersistentCollection {#4211 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
    -id: 149667
    -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5493754"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700630138 {#4209
      date: 2023-11-22 06:15:38.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
  +lang: "en"
  +isAdult: false
  +favouriteCount: 51
  +score: 0
  +lastActive: DateTime @1700632264 {#4288
    date: 2023-11-22 06:51:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4292 …}
  +nested: Doctrine\ORM\PersistentCollection {#4294 …}
  +votes: Doctrine\ORM\PersistentCollection {#4296 …}
  +reports: Doctrine\ORM\PersistentCollection {#4298 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
  -id: 149716
  -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700632264 {#4289
    date: 2023-11-22 06:51:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
73 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
74 DENIED moderate
App\Entity\EntryComment {#4326
  +user: Proxies\__CG__\App\Entity\User {#4329 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4290
    +user: Proxies\__CG__\App\Entity\User {#4291 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 51
    +score: 0
    +lastActive: DateTime @1700632264 {#4288
      date: 2023-11-22 06:51:04.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4292 …}
    +nested: Doctrine\ORM\PersistentCollection {#4294 …}
    +votes: Doctrine\ORM\PersistentCollection {#4296 …}
    +reports: Doctrine\ORM\PersistentCollection {#4298 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
    -id: 149716
    -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632264 {#4289
      date: 2023-11-22 06:51:04.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
    \n
    > When life hands you lemons, just say fuck the lemons and bail
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 24
  +score: 0
  +lastActive: DateTime @1700653226 {#4325
    date: 2023-11-22 12:40:26.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4333 …}
  +nested: Doctrine\ORM\PersistentCollection {#4335 …}
  +votes: Doctrine\ORM\PersistentCollection {#4331 …}
  +reports: Doctrine\ORM\PersistentCollection {#4337 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
  -id: 150240
  -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5498507"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700653226 {#4322
    date: 2023-11-22 12:40:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
75 DENIED edit
App\Entity\EntryComment {#4326
  +user: Proxies\__CG__\App\Entity\User {#4329 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4290
    +user: Proxies\__CG__\App\Entity\User {#4291 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 51
    +score: 0
    +lastActive: DateTime @1700632264 {#4288
      date: 2023-11-22 06:51:04.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4292 …}
    +nested: Doctrine\ORM\PersistentCollection {#4294 …}
    +votes: Doctrine\ORM\PersistentCollection {#4296 …}
    +reports: Doctrine\ORM\PersistentCollection {#4298 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
    -id: 149716
    -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632264 {#4289
      date: 2023-11-22 06:51:04.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
    \n
    > When life hands you lemons, just say fuck the lemons and bail
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 24
  +score: 0
  +lastActive: DateTime @1700653226 {#4325
    date: 2023-11-22 12:40:26.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4333 …}
  +nested: Doctrine\ORM\PersistentCollection {#4335 …}
  +votes: Doctrine\ORM\PersistentCollection {#4331 …}
  +reports: Doctrine\ORM\PersistentCollection {#4337 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
  -id: 150240
  -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5498507"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700653226 {#4322
    date: 2023-11-22 12:40:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
76 DENIED moderate
App\Entity\EntryComment {#4326
  +user: Proxies\__CG__\App\Entity\User {#4329 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4290
    +user: Proxies\__CG__\App\Entity\User {#4291 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4205
      +user: Proxies\__CG__\App\Entity\User {#1966 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4121
        +user: App\Entity\User {#4134 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: null
        +root: null
        +body: "Sounds like you don’t know how to properly use TypeScript…"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 66
        +score: 0
        +lastActive: DateTime @1701794905 {#4116
          date: 2023-12-05 17:48:25.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4122 …}
        +nested: Doctrine\ORM\PersistentCollection {#4124 …}
        +votes: Doctrine\ORM\PersistentCollection {#4126 …}
        +reports: Doctrine\ORM\PersistentCollection {#4128 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
        -id: 149648
        -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493586"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700629402 {#4117
          date: 2023-11-22 06:03:22.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
      +lang: "en"
      +isAdult: false
      +favouriteCount: 34
      +score: 0
      +lastActive: DateTime @1700630138 {#4206
        date: 2023-11-22 06:15:38.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4202 …}
      +nested: Doctrine\ORM\PersistentCollection {#4198 …}
      +votes: Doctrine\ORM\PersistentCollection {#4196 …}
      +reports: Doctrine\ORM\PersistentCollection {#4211 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
      -id: 149667
      -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://lemmy.world/comment/5493754"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700630138 {#4209
        date: 2023-11-22 06:15:38.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
    +lang: "en"
    +isAdult: false
    +favouriteCount: 51
    +score: 0
    +lastActive: DateTime @1700632264 {#4288
      date: 2023-11-22 06:51:04.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4292 …}
    +nested: Doctrine\ORM\PersistentCollection {#4294 …}
    +votes: Doctrine\ORM\PersistentCollection {#4296 …}
    +reports: Doctrine\ORM\PersistentCollection {#4298 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
    -id: 149716
    -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700632264 {#4289
      date: 2023-11-22 06:51:04.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
    \n
    > When life hands you lemons, just say fuck the lemons and bail
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 24
  +score: 0
  +lastActive: DateTime @1700653226 {#4325
    date: 2023-11-22 12:40:26.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4333 …}
  +nested: Doctrine\ORM\PersistentCollection {#4335 …}
  +votes: Doctrine\ORM\PersistentCollection {#4331 …}
  +reports: Doctrine\ORM\PersistentCollection {#4337 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
  -id: 150240
  -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmy.world/comment/5498507"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700653226 {#4322
    date: 2023-11-22 12:40:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
77 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
78 DENIED moderate
App\Entity\EntryComment {#4431
  +user: Proxies\__CG__\App\Entity\User {#4432 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    > resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years\n
    \n
    So basically change careers
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700654852 {#4428
    date: 2023-11-22 13:07:32.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4433 …}
  +nested: Doctrine\ORM\PersistentCollection {#4435 …}
  +votes: Doctrine\ORM\PersistentCollection {#4437 …}
  +reports: Doctrine\ORM\PersistentCollection {#4439 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4441 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4443 …}
  -id: 150286
  -bodyTs: "'basic':13,26 'career':28 'chang':27 'cultur':20 'develop':19 'didn':7 'employ':5 'engin':16 'fail':9 'level':14 'manag':17 'resign':1 'seek':3 'year':22,24"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmings.world/comment/3806579"
  +editedAt: DateTimeImmutable @1701124259 {#4429
    date: 2023-11-27 23:30:59.0 +01:00
  }
  +createdAt: DateTimeImmutable @1700654852 {#4430
    date: 2023-11-22 13:07:32.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
79 DENIED edit
App\Entity\EntryComment {#4431
  +user: Proxies\__CG__\App\Entity\User {#4432 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    > resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years\n
    \n
    So basically change careers
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700654852 {#4428
    date: 2023-11-22 13:07:32.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4433 …}
  +nested: Doctrine\ORM\PersistentCollection {#4435 …}
  +votes: Doctrine\ORM\PersistentCollection {#4437 …}
  +reports: Doctrine\ORM\PersistentCollection {#4439 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4441 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4443 …}
  -id: 150286
  -bodyTs: "'basic':13,26 'career':28 'chang':27 'cultur':20 'develop':19 'didn':7 'employ':5 'engin':16 'fail':9 'level':14 'manag':17 'resign':1 'seek':3 'year':22,24"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmings.world/comment/3806579"
  +editedAt: DateTimeImmutable @1701124259 {#4429
    date: 2023-11-27 23:30:59.0 +01:00
  }
  +createdAt: DateTimeImmutable @1700654852 {#4430
    date: 2023-11-22 13:07:32.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
80 DENIED moderate
App\Entity\EntryComment {#4431
  +user: Proxies\__CG__\App\Entity\User {#4432 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: """
    > resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years\n
    \n
    So basically change careers
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 14
  +score: 0
  +lastActive: DateTime @1700654852 {#4428
    date: 2023-11-22 13:07:32.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4433 …}
  +nested: Doctrine\ORM\PersistentCollection {#4435 …}
  +votes: Doctrine\ORM\PersistentCollection {#4437 …}
  +reports: Doctrine\ORM\PersistentCollection {#4439 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4441 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4443 …}
  -id: 150286
  -bodyTs: "'basic':13,26 'career':28 'chang':27 'cultur':20 'develop':19 'didn':7 'employ':5 'engin':16 'fail':9 'level':14 'manag':17 'resign':1 'seek':3 'year':22,24"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemmings.world/comment/3806579"
  +editedAt: DateTimeImmutable @1701124259 {#4429
    date: 2023-11-27 23:30:59.0 +01:00
  }
  +createdAt: DateTimeImmutable @1700654852 {#4430
    date: 2023-11-22 13:07:32.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
81 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
82 DENIED moderate
App\Entity\EntryComment {#4447
  +user: Proxies\__CG__\App\Entity\User {#4448 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "`combustible lemon`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700655664 {#4445
    date: 2023-11-22 13:21:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4449 …}
  +nested: Doctrine\ORM\PersistentCollection {#4451 …}
  +votes: Doctrine\ORM\PersistentCollection {#4453 …}
  +reports: Doctrine\ORM\PersistentCollection {#4455 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4457 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4459 …}
  -id: 150307
  -bodyTs: "'combust':1 'lemon':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5042870"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700655664 {#4446
    date: 2023-11-22 13:21:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
83 DENIED edit
App\Entity\EntryComment {#4447
  +user: Proxies\__CG__\App\Entity\User {#4448 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "`combustible lemon`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700655664 {#4445
    date: 2023-11-22 13:21:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4449 …}
  +nested: Doctrine\ORM\PersistentCollection {#4451 …}
  +votes: Doctrine\ORM\PersistentCollection {#4453 …}
  +reports: Doctrine\ORM\PersistentCollection {#4455 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4457 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4459 …}
  -id: 150307
  -bodyTs: "'combust':1 'lemon':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5042870"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700655664 {#4446
    date: 2023-11-22 13:21:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
84 DENIED moderate
App\Entity\EntryComment {#4447
  +user: Proxies\__CG__\App\Entity\User {#4448 …}
  +entry: App\Entity\Entry {#2399
    +user: Proxies\__CG__\App\Entity\User {#1966 …}
    +magazine: App\Entity\Magazine {#262
      +icon: Proxies\__CG__\App\Entity\Image {#242 …}
      +name: "programmer_humor@programming.dev"
      +title: "programmer_humor"
      +description: """
        Welcome to Programmer Humor!\n
        \n
        This is a place where you can post jokes, memes, humor, etc. related to programming!\n
        \n
        For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
        \n
        Rules\n
        -----\n
        \n
        - Keep content in english\n
        - No advertisements\n
        - Posts must be related to programming or programmer topics
        """
      +rules: null
      +subscriptionsCount: 1
      +entryCount: 297
      +entryCommentCount: 2799
      +postCount: 1
      +postCommentCount: 0
      +isAdult: false
      +customCss: null
      +lastActive: DateTime @1729523671 {#270
        date: 2024-10-21 17:14:31.0 +02:00
      }
      +markedForDeletionAt: null
      +tags: null
      +moderators: Doctrine\ORM\PersistentCollection {#233 …}
      +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
      +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
      +entries: Doctrine\ORM\PersistentCollection {#176 …}
      +posts: Doctrine\ORM\PersistentCollection {#134 …}
      +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
      +bans: Doctrine\ORM\PersistentCollection {#113 …}
      +reports: Doctrine\ORM\PersistentCollection {#99 …}
      +badges: Doctrine\ORM\PersistentCollection {#77 …}
      +logs: Doctrine\ORM\PersistentCollection {#67 …}
      +awards: Doctrine\ORM\PersistentCollection {#2434 …}
      +categories: Doctrine\ORM\PersistentCollection {#1804 …}
      -id: 100
      +apId: "programmer_humor@programming.dev"
      +apProfileId: "https://programming.dev/c/programmer_humor"
      +apPublicUrl: "https://programming.dev/c/programmer_humor"
      +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
      +apInboxUrl: "https://programming.dev/inbox"
      +apDomain: "programming.dev"
      +apPreferredUsername: "programmer_humor"
      +apDiscoverable: true
      +apManuallyApprovesFollowers: null
      +privateKey: null
      +publicKey: null
      +apFetchedAt: DateTime @1726902871 {#268
        date: 2024-09-21 09:14:31.0 +02:00
      }
      +apDeletedAt: null
      +apTimeoutAt: null
      +visibility: "visible             "
      +createdAt: DateTimeImmutable @1700391429 {#276
        date: 2023-11-19 11:57:09.0 +01:00
      }
    }
    +image: Proxies\__CG__\App\Entity\Image {#1973 …}
    +domain: Proxies\__CG__\App\Entity\Domain {#1899 …}
    +slug: "the-myth-of-type-safety"
    +title: "the myth of type safety"
    +url: "https://lemmy.world/pictrs/image/eeebc53c-069d-4c09-8a6b-61e9e8a42760.jpeg"
    +body: null
    +type: "image"
    +lang: "en"
    +isOc: false
    +hasEmbed: true
    +commentCount: 20
    +favouriteCount: 229
    +score: 0
    +isAdult: false
    +sticky: false
    +lastActive: DateTime @1701081474 {#1828
      date: 2023-11-27 11:37:54.0 +01:00
    }
    +ip: null
    +adaAmount: 0
    +tags: null
    +mentions: null
    +comments: Doctrine\ORM\PersistentCollection {#1408 …}
    +votes: Doctrine\ORM\PersistentCollection {#1957 …}
    +reports: Doctrine\ORM\PersistentCollection {#1972 …}
    +favourites: Doctrine\ORM\PersistentCollection {#1394 …}
    +notifications: Doctrine\ORM\PersistentCollection {#2436 …}
    +badges: Doctrine\ORM\PersistentCollection {#2166 …}
    +children: []
    -id: 15325
    -titleTs: "'myth':2 'safeti':5 'type':4"
    -bodyTs: null
    +cross: false
    +upVotes: 0
    +downVotes: 0
    +ranking: 1700714606
    +visibility: "visible             "
    +apId: "https://lemmy.world/post/8589200"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700628206 {#2414
      date: 2023-11-22 05:43:26.0 +01:00
    }
  }
  +magazine: App\Entity\Magazine {#262}
  +image: null
  +parent: App\Entity\EntryComment {#4326
    +user: Proxies\__CG__\App\Entity\User {#4329 …}
    +entry: App\Entity\Entry {#2399}
    +magazine: App\Entity\Magazine {#262}
    +image: null
    +parent: App\Entity\EntryComment {#4290
      +user: Proxies\__CG__\App\Entity\User {#4291 …}
      +entry: App\Entity\Entry {#2399}
      +magazine: App\Entity\Magazine {#262}
      +image: null
      +parent: App\Entity\EntryComment {#4205
        +user: Proxies\__CG__\App\Entity\User {#1966 …}
        +entry: App\Entity\Entry {#2399}
        +magazine: App\Entity\Magazine {#262}
        +image: null
        +parent: App\Entity\EntryComment {#4121
          +user: App\Entity\User {#4134 …}
          +entry: App\Entity\Entry {#2399}
          +magazine: App\Entity\Magazine {#262}
          +image: null
          +parent: null
          +root: null
          +body: "Sounds like you don’t know how to properly use TypeScript…"
          +lang: "en"
          +isAdult: false
          +favouriteCount: 66
          +score: 0
          +lastActive: DateTime @1701794905 {#4116
            date: 2023-12-05 17:48:25.0 +01:00
          }
          +ip: null
          +tags: null
          +mentions: [
            "@Zangoose@lemmy.world"
          ]
          +children: Doctrine\ORM\PersistentCollection {#4122 …}
          +nested: Doctrine\ORM\PersistentCollection {#4124 …}
          +votes: Doctrine\ORM\PersistentCollection {#4126 …}
          +reports: Doctrine\ORM\PersistentCollection {#4128 …}
          +favourites: Doctrine\ORM\PersistentCollection {#4130 …}
          +notifications: Doctrine\ORM\PersistentCollection {#4132 …}
          -id: 149648
          -bodyTs: "'know':6 'like':2 'proper':9 'sound':1 'typescript':11 'use':10"
          +ranking: 0
          +commentCount: 0
          +upVotes: 0
          +downVotes: 0
          +visibility: "visible             "
          +apId: "https://lemmy.world/comment/5493586"
          +editedAt: null
          +createdAt: DateTimeImmutable @1700629402 {#4117
            date: 2023-11-22 06:03:22.0 +01:00
          }
        }
        +root: App\Entity\EntryComment {#4121}
        +body: "If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend"
        +lang: "en"
        +isAdult: false
        +favouriteCount: 34
        +score: 0
        +lastActive: DateTime @1700630138 {#4206
          date: 2023-11-22 06:15:38.0 +01:00
        }
        +ip: null
        +tags: null
        +mentions: [
          "@Zangoose@lemmy.world"
          "@Lowpast@lemmy.world"
        ]
        +children: Doctrine\ORM\PersistentCollection {#4202 …}
        +nested: Doctrine\ORM\PersistentCollection {#4198 …}
        +votes: Doctrine\ORM\PersistentCollection {#4196 …}
        +reports: Doctrine\ORM\PersistentCollection {#4211 …}
        +favourites: Doctrine\ORM\PersistentCollection {#4213 …}
        +notifications: Doctrine\ORM\PersistentCollection {#4215 …}
        -id: 149667
        -bodyTs: "'6':23 'almost':26 'also':44 'angular':22 'assur':34 'backend':48 'codebas':24 'drive':41 'everi':27 'go':9 'html':19 'includ':17 'insan':43 'legaci':21 'line':15 'multi':13 'multi-thousand':12 'prefer':47 'properti':28 'templat':20 'thousand':14 'time':7 'type':30 'willpow':5 'would':37"
        +ranking: 0
        +commentCount: 0
        +upVotes: 0
        +downVotes: 0
        +visibility: "visible             "
        +apId: "https://lemmy.world/comment/5493754"
        +editedAt: null
        +createdAt: DateTimeImmutable @1700630138 {#4209
          date: 2023-11-22 06:15:38.0 +01:00
        }
      }
      +root: App\Entity\EntryComment {#4121}
      +body: "The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use `unknown` instead of `any` for more sensitive parts, it will force you to typecheck."
      +lang: "en"
      +isAdult: false
      +favouriteCount: 51
      +score: 0
      +lastActive: DateTime @1700632264 {#4288
        date: 2023-11-22 06:51:04.0 +01:00
      }
      +ip: null
      +tags: null
      +mentions: [
        "@Zangoose@lemmy.world"
        "@Lowpast@lemmy.world"
      ]
      +children: Doctrine\ORM\PersistentCollection {#4292 …}
      +nested: Doctrine\ORM\PersistentCollection {#4294 …}
      +votes: Doctrine\ORM\PersistentCollection {#4296 …}
      +reports: Doctrine\ORM\PersistentCollection {#4298 …}
      +favourites: Doctrine\ORM\PersistentCollection {#4300 …}
      +notifications: Doctrine\ORM\PersistentCollection {#4302 …}
      -id: 149716
      -bodyTs: "'also':23 'boy':2 'bug':14 'featur':17 'file':19 'fix':5 'forc':37 'instead':28 'one':18 'part':34 're':10 'scout':3 'sensit':33 'techniqu':4 'time':22 'tri':24 'type':7 'typecheck':40 'unknown':27 'use':26 'work':11"
      +ranking: 0
      +commentCount: 0
      +upVotes: 0
      +downVotes: 0
      +visibility: "visible             "
      +apId: "https://fedia.io/m/programmer_humor@programming.dev/t/413123/-/comment/2553627"
      +editedAt: null
      +createdAt: DateTimeImmutable @1700632264 {#4289
        date: 2023-11-22 06:51:04.0 +01:00
      }
    }
    +root: App\Entity\EntryComment {#4121}
    +body: """
      The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.\n
      \n
      > When life hands you lemons, just say fuck the lemons and bail
      """
    +lang: "en"
    +isAdult: false
    +favouriteCount: 24
    +score: 0
    +lastActive: DateTime @1700653226 {#4325
      date: 2023-11-22 12:40:26.0 +01:00
    }
    +ip: null
    +tags: null
    +mentions: [
      "@Zangoose@lemmy.world"
      "@Lowpast@lemmy.world"
      "@0xSim@fedia.io"
    ]
    +children: Doctrine\ORM\PersistentCollection {#4333 …}
    +nested: Doctrine\ORM\PersistentCollection {#4335 …}
    +votes: Doctrine\ORM\PersistentCollection {#4331 …}
    +reports: Doctrine\ORM\PersistentCollection {#4337 …}
    +favourites: Doctrine\ORM\PersistentCollection {#4339 …}
    +notifications: Doctrine\ORM\PersistentCollection {#4341 …}
    -id: 150240
    -bodyTs: "'alway':42 'bail':54 'basic':18 'cultur':25 'develop':24 'didn':12 'employ':10 'engin':21 'fail':14 'fuck':2,50 'hand':45 'lemon':4,47,52 'level':19 'life':31,44 'manag':22 're':36 'resign':6 'run':38 'say':49 'seek':8 'short':33 'techniqu':5 'time':41 'year':27,29"
    +ranking: 0
    +commentCount: 0
    +upVotes: 0
    +downVotes: 0
    +visibility: "visible             "
    +apId: "https://lemmy.world/comment/5498507"
    +editedAt: null
    +createdAt: DateTimeImmutable @1700653226 {#4322
      date: 2023-11-22 12:40:26.0 +01:00
    }
  }
  +root: App\Entity\EntryComment {#4121}
  +body: "`combustible lemon`"
  +lang: "en"
  +isAdult: false
  +favouriteCount: 7
  +score: 0
  +lastActive: DateTime @1700655664 {#4445
    date: 2023-11-22 13:21:04.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Zangoose@lemmy.world"
    "@Lowpast@lemmy.world"
    "@0xSim@fedia.io"
    "@WhatAmLemmy@lemmy.world"
  ]
  +children: Doctrine\ORM\PersistentCollection {#4449 …}
  +nested: Doctrine\ORM\PersistentCollection {#4451 …}
  +votes: Doctrine\ORM\PersistentCollection {#4453 …}
  +reports: Doctrine\ORM\PersistentCollection {#4455 …}
  +favourites: Doctrine\ORM\PersistentCollection {#4457 …}
  +notifications: Doctrine\ORM\PersistentCollection {#4459 …}
  -id: 150307
  -bodyTs: "'combust':1 'lemon':2"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://feddit.de/comment/5042870"
  +editedAt: null
  +createdAt: DateTimeImmutable @1700655664 {#4446
    date: 2023-11-22 13:21:04.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
85 DENIED edit
App\Entity\Magazine {#262
  +icon: Proxies\__CG__\App\Entity\Image {#242 …}
  +name: "programmer_humor@programming.dev"
  +title: "programmer_humor"
  +description: """
    Welcome to Programmer Humor!\n
    \n
    This is a place where you can post jokes, memes, humor, etc. related to programming!\n
    \n
    For sharing awful code theres also [Programming Horror](https://programming.dev/c/programming_horror).\n
    \n
    Rules\n
    -----\n
    \n
    - Keep content in english\n
    - No advertisements\n
    - Posts must be related to programming or programmer topics
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 297
  +entryCommentCount: 2799
  +postCount: 1
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729523671 {#270
    date: 2024-10-21 17:14:31.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#233 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#229 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#218 …}
  +entries: Doctrine\ORM\PersistentCollection {#176 …}
  +posts: Doctrine\ORM\PersistentCollection {#134 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#196 …}
  +bans: Doctrine\ORM\PersistentCollection {#113 …}
  +reports: Doctrine\ORM\PersistentCollection {#99 …}
  +badges: Doctrine\ORM\PersistentCollection {#77 …}
  +logs: Doctrine\ORM\PersistentCollection {#67 …}
  +awards: Doctrine\ORM\PersistentCollection {#2434 …}
  +categories: Doctrine\ORM\PersistentCollection {#1804 …}
  -id: 100
  +apId: "programmer_humor@programming.dev"
  +apProfileId: "https://programming.dev/c/programmer_humor"
  +apPublicUrl: "https://programming.dev/c/programmer_humor"
  +apFollowersUrl: "https://programming.dev/c/programmer_humor/followers"
  +apInboxUrl: "https://programming.dev/inbox"
  +apDomain: "programming.dev"
  +apPreferredUsername: "programmer_humor"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1726902871 {#268
    date: 2024-09-21 09:14:31.0 +02:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1700391429 {#276
    date: 2023-11-19 11:57:09.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details