Programming Confessions Thread



  • @lordofduct Don't call me that. That name died in the cell block 32.



  • @dkf I grew up on Mac Classic, which (or at least the THINK C interface for it) used handles everywhere but pointers pretty much never.

    Kind of weird to learn handles before pointers. Screwed me up in the head. But now I think both are equally stupid and everybody should be using memory managed languages.



  • @blakeyrat said in Programming Confessions Thread:

    @dkf I grew up on Mac Classic, which (or at least the THINK C interface for it) used handles everywhere but pointers pretty much never.

    Kind of weird to learn handles before pointers. Screwed me up in the head. But now I think both are equally stupid and everybody should be using memory managed languages.

    I'm not sure why they're stupid.

    I mean, sure as hell, I love memory managed languages when I want to get off the ground running real fast.

    But that doesn't mean I don't like dropping down into my own memory management at times. The hoops I sometimes have had to jump through to wrestle with garbage collectors I have no control over and I'm stuck being victim to its inadequacies.

    Each have their time and place for dealing with object identity.



  • @lordofduct although extremely uncommon, there are memory managed languages that don't use garbage collection. For example, C++ RAII, Rust, and Qore are the ones I know of.



  • @lordofduct said in Programming Confessions Thread:

    The hoops I sometimes have had to jump through to wrestle with garbage collectors I have no control over and I'm stuck being victim to its inadequacies.

    I certainly hope that by 'sometimes' you mean 'once every five years' - because ime, you're either dealing with a system too weak for managed languages or the memory management is something far deeper than you should be thinking about.



  • @LB_ said in Programming Confessions Thread:

    @lordofduct although extremely uncommon, there are memory managed languages that don't use garbage collection. For example, C++ RAII, Rust, and Qore are the ones I know of.

    Sorry if I wasn't being obtusely specific...

    @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    The hoops I sometimes have had to jump through to wrestle with garbage collectors I have no control over and I'm stuck being victim to its inadequacies.

    I certainly hope that by 'sometimes' you mean 'once every five years' - because ime, you're either dealing with a system too weak for managed languages or the memory management is something far deeper than you should be thinking about.

    Yes, it's not super common.

    But it happens.

    Example, the Unity game engine uses an outdated version of the mono runtime. The garbage collector of which is very naive and prone to frame stutter if you don't pay close attention to your garbage under certain conditions.



  • @lordofduct said in Programming Confessions Thread:

    Example, the Unity game engine uses an outdated version of the mono runtime. The garbage collector of which is very naive and prone to frame stutter if you don't pay close attention to your garbage under certain conditions.

    That's just another case for not using Unity. Seriously, just use Monogame. Unity is for people who need to be able to get something out fast, like mobile games. It's seriously horrible for everything, though, and not without alternatives.



  • @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    Example, the Unity game engine uses an outdated version of the mono runtime. The garbage collector of which is very naive and prone to frame stutter if you don't pay close attention to your garbage under certain conditions.

    That's just another case for not using Unity. Seriously, just use Monogame. Unity is for people who need to be able to get something out fast, like mobile games. It's seriously horrible for everything, though, and not without alternatives.

    Well for one, not every developer has control over which engine they use.

    Also, it's only your opinion that any other option is any better. Why Monogame? Monogame, unlike Unity, is only a framework and doesn't come with a suite of artist friendly tools (I may be a programmer, but my teams aren't necessarily all programmers). Why not any one of the number of other frameworks or engines out there?

    For another, you even admit that it's useful for mobile development, so you've highlighted a time where even you agree that it's useful.

    And last, but not least...

    just because you don't like it, doesn't mean it's not an example. It still exists, it's still popular, and it's still a situation where the garbage collector can bite you in the ass causing you to have to jump through hoops to deal with it. Does this suck? Yes, that's why I brought up having to jump through hoops sucks!

    (note - Unity supports native plugins, you can drop into a C++ compiled library to perform operations. This means it's not managed by the outdated garbage collector)



  • @lordofduct said in Programming Confessions Thread:

    Why Monogame? Monogame, unlike Unity, is only a framework

    Which can use the current version of Mono on each platform it's available on. Which is all of them.

    @lordofduct said in Programming Confessions Thread:

    Also, it's only your opinion that any other option is any better. Why Monogame? Monogame, unlike Unity, is only a framework and doesn't come with a suite of artist friendly tools (I may be a programmer, but my teams aren't necessarily all programmers).

    Have you ever talked to an artist? My friend is a professional VFX artist, and found Unity to be utterly terrible. If you want something to be artist friendly, pick Unreal. It's better than Unity at everything.

    @lordofduct said in Programming Confessions Thread:

    Why not any one of the number of other frameworks or engines out there?

    Because you mentioned mono, which I only know of two game frameworks that use.

    @lordofduct said in Programming Confessions Thread:

    For another, you even admit that it's useful for mobile development, so you've highlighted a time where even you agree that it's useful.

    For small companies who want to push out a thousand bejeweled clones before tuesday,

    @lordofduct said in Programming Confessions Thread:

    It still exists, it's still popular, and it's still a situation where the garbage collector can bite you in the ass causing you to have to jump through hoops to deal with it. Does this suck? Yes, that's why I brought up having to jump through hoops sucks!

    I want people to stop using software that sucks. Apparently I'm not allowed to say that on THE DAILY WTF?



  • @lordofduct said in Programming Confessions Thread:

    Well for one, not every developer has control over which engine they use.

    This is a crazy thing to say. Someone has control over what engine to use. Nobody is hit by falling game engines.

    And anyway 'sometimes you're forced to use it' is the worst argument for anything. "I like Unity better than Monogame because sometimes I have to use Unity".



  • @AyGeePlus said in Programming Confessions Thread:

    This is a crazy thing to say. Someone has control over what engine to use. Nobody is hit by falling game engines.

    I was assuming it was mandated by a C-level:

    "Hey guys I just herd this nw tech called Unity people lik it. Rebuild the game to work in that asap. Btw we're gonna use git now. Think agile!

    Sent from my iPhone"



  • @Magus There's gotta be a startup somewhere that swoops in when sad developers put up the C-level signal and un-bamboozle execs.

    When a technically ignorant boss makes a technical decision.
    When the boss's nephew tries to refer everyone to a useless framework because it's the one he knows.

    Hanzocorp will be there! We'll have powerpoints! Graphs! Return-on-investment charts! We'll pay You to fix your company's stupid technical decisions! (they pay us, if you're wondering)



  • @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    Why Monogame? Monogame, unlike Unity, is only a framework

    Which can use the current version of Mono on each platform it's available on. Which is all of them.

    But is still only a framework, not an entire game suite. Two different things.

    @lordofduct said in Programming Confessions Thread:

    Also, it's only your opinion that any other option is any better. Why Monogame? Monogame, unlike Unity, is only a framework and doesn't come with a suite of artist friendly tools (I may be a programmer, but my teams aren't necessarily all programmers).

    Have you ever talked to an artist? My friend is a professional VFX artist, and found Unity to be utterly terrible. If you want something to be artist friendly, pick Unreal. It's better than Unity at everything.

    Yes, I have, the artists I've worked with. My best friend of 20+ years, partner on some projects here and there, has over 10 years experience working on games like Guitar Hero, Marvel Ultimate Alliance, and Skylanders... as an artist.

    And yes, many have griped about Unity. I too have griped about Unity.

    But they'd prefer Unity over disparate tools. It has a defined content pipeline. What's the content pipeline in Monogame? There isn't one, you have to define your own. Which is totally fine for those who want to define their own. But that doesn't mean everyone wants to do that!

    @lordofduct said in Programming Confessions Thread:

    Why not any one of the number of other frameworks or engines out there?

    Because you mentioned mono, which I only know of two game frameworks that use.

    But why use Mono at all? If we're restricting ourselves to JUST mono frameworks... well.... Unity is more than a framework. It has an entire suite of dev tools and content pipeline.

    Again, you may not LIKE it... but that's not what the argument is. Some people like Mac, Windows or linux... because you may like Windows, doesn't mean Macs don't exist and can't be used in an example!

    @lordofduct said in Programming Confessions Thread:

    For another, you even admit that it's useful for mobile development, so you've highlighted a time where even you agree that it's useful.

    For small companies who want to push out a thousand bejeweled clones before tuesday,

    And... THEY EXIST.

    What's your point? Because they're bejeweled clones, those jobs don't need to get done?

    And it's more than bejeweled clones...

    @lordofduct said in Programming Confessions Thread:

    It still exists, it's still popular, and it's still a situation where the garbage collector can bite you in the ass causing you to have to jump through hoops to deal with it. Does this suck? Yes, that's why I brought up having to jump through hoops sucks!

    I want people to stop using software that sucks. Apparently I'm not allowed to say that on THE DAILY WTF?

    Say it all you want.

    It doesn't negate that my example was a valid example.

    Sorry if I've had to work in environments you don't approve of. I've also had to maintain VB6 applications that were written AFTER VB6 died... sure I fucking hated it, but that doesn't meant that job didn't have to get done!

    But I guess I'm not allowed to point out my own WTF's on THE DAILY WTF??



  • @lordofduct said in Programming Confessions Thread:

    Because they're bejeweled clones, those jobs don't need to get done?

    They literally don't need to get done. They're a giant waste of time and energy for everyone involved.



  • @lordofduct said in Programming Confessions Thread:

    What's the content pipeline in Monogame? There isn't one, you have to define your own.

    :wtf: no, its the XNA content pipeline. And it's there. Next?

    @lordofduct said in Programming Confessions Thread:

    What's your point? Because they're bejeweled clones, those jobs don't need to get done?
    And it's more than bejeweled clones...

    If you're making literally anything else it's a bad choice. I will stand by this statement.

    @lordofduct said in Programming Confessions Thread:

    Say it all you want.
    It doesn't negate that my example was a valid example.

    What is all this incoherent blather about an example? Stop using bad software. Seriously.

    If you want maximum configurability and minimum mess, you use something like Monogame. If you want something with serious features, you go Unreal. Unity is popular, sure. Lots of people use it. That does not make it good, or mean you should ever use it, especially without thinking very carefully first.

    I don't get it, are you one of the drones making a thousand bejeweled clones? If so, fine, I can get why you'd use it. But if you care at all about performance, usability, and cross platform support, you have far better choices on both sides of the spectrum.


  • kills Dumbledore

    @Magus hey, blakey, you forgot to sign out of your alt



  • @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    What's the content pipeline in Monogame? There isn't one, you have to define your own.

    :wtf: no, its the XNA content pipeline. And it's there. Next?

    OK, tell me how you setup and play animations?

    Tell me how you set up and use Particle Effects?

    Tell me how you set up and play Music?

    How do you setup and interpret Music/SoundFX/etc?

    Through what tools do you layout scenes?

    @lordofduct said in Programming Confessions Thread:

    What's your point? Because they're bejeweled clones, those jobs don't need to get done?
    And it's more than bejeweled clones...

    If you're making literally anything else it's a bad choice. I will stand by this statement.

    OK... you don't like it. I understood that.

    @lordofduct said in Programming Confessions Thread:

    Say it all you want.
    It doesn't negate that my example was a valid example.

    What is all this incoherent blather about an example? Stop using bad software. Seriously.

    You asked:

    I certainly hope that by 'sometimes' you mean 'once every five years' - because ime, you're either dealing with a system too weak for managed languages or the memory management is something far deeper than you should be thinking about.

    So I gave an example... which happen to be Unity.

    That's the example I'm talking about.

    Listen, you do understand that I was griping that when using memory managed environments that I've had to jump through hoops.

    I'm griping about Unity in my example. That's my WTF. I'm not praising Unity, I'm griping about Unity and its outdated memory management.

    If you want maximum configurability and minimum mess, you use something like Monogame. If you want something with serious features, you go Unreal. Unity is popular, sure. Lots of people use it. That does not make it good, or mean you should ever use it, especially without thinking very carefully first.

    Sometimes I don't get to decide what to use. I'm not always the LEAD. Sorry if you have the ability to LEAD every fucking project you're on. I guess I should be jealous... fuck head?

    I don't get it, are you one of the drones making a thousand bejeweled clones? If so, fine, I can get why you'd use it. But if you care at all about performance, usability, and cross platform support, you have far better choices on both sides of the spectrum.

    No, no I'm not.

    How about this.

    Fuck off.

    I don't care what you think.

    Tootles.



  • @Jaloopa Pray tell, when has blakey ever uttered the word 'blather'?

    @lordofduct said in Programming Confessions Thread:

    OK, tell me how you setup and play animations?
    Tell me how you set up and use Particle Effects?
    Tell me how you set up and play Music?
    How do you setup and interpret Music/SoundFX/etc?
    Through what tools do you layout scenes?

    There are a bunch of XNA tools for that stuff. They all still work. I don't use them, because they would be no benefit to my game. But they exist.

    @lordofduct said in Programming Confessions Thread:

    I don't care what you think.

    Or developing quality software with quality tools. So have fun playing around in an amalgam of horrible memory hogs and outdated components that barely work.



  • @Magus said in Programming Confessions Thread:

    @Jaloopa Pray tell, when has blakey ever uttered the word 'blather'?

    @lordofduct said in Programming Confessions Thread:

    OK, tell me how you setup and play animations?
    Tell me how you set up and use Particle Effects?
    Tell me how you set up and play Music?
    How do you setup and interpret Music/SoundFX/etc?
    Through what tools do you layout scenes?

    There are a bunch of XNA tools for that stuff. They all still work. I don't use them, because they would be no benefit to my game. But they exist.

    Yes, I have to define my own content pipeline... that was my point. Schmuck.

    @lordofduct said in Programming Confessions Thread:

    I don't care what you think.

    Or developing quality software with quality tools. So have fun playing around in an amalgam of horrible memory hogs and outdated components that barely work.

    Schmuck.


  • Discourse touched me in a no-no place

    @AyGeePlus said in Programming Confessions Thread:

    Nobody is hit by falling game engines.

    As a matter of fact, that happened to my sister 3 times just last week!



  • @lordofduct said in Programming Confessions Thread:

    Yes, I have to define my own content pipeline... that was my point. Schmuck.

    How in the world do you get 'you have to do it yourself' from my explanation that there are existing tools to do it. Can you not read?



  • @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    Yes, I have to define my own content pipeline... that was my point. Schmuck.

    How in the world do you get 'you have to do it yourself' from my explanation that there are existing tools to do it. Can you not read?

    Defining a content pipeline isn't writing every tool for it.

    It's defining every part of it. Selecting out every piece of software for each part and having to integrate them together into a content pipeline.

    Various game engines (not just frameworks), like Unity, Unreal, Cry, etc, all define a full environment in which to make games so you can just get to that... making games.

    This is great for small teams that don't have the time necessary to implement every little aspect. They can just start making games. Not rinky dink games. Not bejeweled clones. But actual full blown games.

    With that said... Unity is on the lower end as game engines go. I do agree, Unity is not the best choice. I'm not sure where you got that idea considering that this entire thing started from me BITCHING about Unity.

    But you can't say you hit the ground running with Monogame. That'd be like saying you can hit the ground running with DirectX or OpenGL... I mean srsly, Monogame is just XNA since it went defunct, and XNA is just ManagedDX since it went defunct, which is just a managed DirectX. Monogame has a few extra bells and whistles tacked on... but it's a programming framework, and that's it. That is NOT artist friendly! You may no some technically inclined artists, but sorry, my artists I've worked with would rather take a spiked butt plug up the ass than have to think about code. That's what I'm for!

    If I need anything beyond that, well I have to reach out for other tools that work with Monogame (or not directly with Monogame). This is extra overhead.

    Of course, there are tons of flaws in this method. You're stuck with various issues. For example in the case of Unity you are stuck with an outdated mono framework... and that I fucking gripe about. But at the end of the day, it's bearable, as I can get shit done.

    You may dislike Unity, for whatever reasons you may have, but that doesn't mean everyone who works with it makes bejeweled clones. Just check out the community and you'll see that.

    ...

    What I don't understand is how you took me giving a god damn example of when I've had to deal with shitty garbage collection and turned it into whatever the fuck this is.

    I get it dude, you don't like Unity.

    But can you get off your fucking soap box for once?

    I swear, this forum isn't just people bitching about code WTFs... it appears to be people basically telling eachother their choices are wrong, evil, and they should fucking suffer for making such stupid and naive choices because they didn't know any fucking better. Yet they can't see past their own fucking assholes and realize not everyone has the fucking time/patience/wherewithall/funding/or control to make all those choices. Unity isn't that horrible... sure it's flawed as all hell, but it sure as hell gets the job done when said and done. I've made multiple games in it, not a fucking one a bejeweled clone (honestly, I never even fucking played the game to know what it's even like).

    Yet you feel it's damn fine to evangelize to me that I should use Monogame... a fucking framework that you admittedly haven't had experience with in quite some god damn time, as well as admit doesn't come with the suite of tools necessary to get off the ground. Hey guess what... while I COULD be integrating whatever fucking 3d physics, FX, and other tools into Monogame... I could be off making my games in Unity.

    And not 2d games. That's admittedly a lot faster to get off the ground with in Monogame. But 3d... not so much.

    Especially when my artist is bitching they want this visual effect, or that visual effect, that they're used to getting when developing AAA titles for fucking Activision. Sorry if I cut some god damn corners in my free time so instead of trying to get the damn forward rendering actually working, I could instead worry about the enemy AI and pathfinding! Or the more annoying, that being god damn UI so that they can draw scenes with the visual effects in place so they can see everything as they go along. Guess what... engines like Unity and Unreal do this. They can just hop in and start plopping down entities into a game and see it all work.

    Oh... sure... I could hunt down a less popular Monogame alternative that has a smaller community and I know nothing about!

    But why?

    So I can avoid a sub par garbage collector?

    WHY!?

    That's a lot of fucking work just to avoid a sub par garbage collector!

    How about I just, every once in a while, have to write some weird hoop jumping code to deal with too much garbage in an inadvertant spot.

    I mean hell, generational garbage collection may be less expensive... but it still has to hault processing to clean out garbage. And that haulting... that cause frame drops. Ooops, created a few to many boxed values this frame, there's no references left to them, still gotta purge... chug chug chug.

    Managed memory, no matter what, is still prone to these draw backs.



  • @lordofduct

    Nevermind that shit... I guess I shouldn't have used Unity as a god damn example.

    How about this one.

    I last week had to write a tool in the latest version of .Net. I have access to the latest and greatest garbage collector.

    I decided I'd use Linq to SQL because it's so much fun getting to use inline lambdas instead of fucking strings to write select statements against our database.

    But alas, someone decided they wanted to run this application against a database of 3 million entries (medical data). .Net ran out of memory because of the way Linq to SQL deals with caching objects so that it doesn't need to load them again in the future.

    But because I don't have access to said cache, I can't force purge the memory every so often. I can't submit my changes and then dump everything. Instead I have to disconnect my connection to the database, and start a new one, and preserve some token in the mean time to remember where I left off in the database so I don't reevaluate entries I already did.

    And then this is compounded by a multi-threading situation.

    Hoops galore to hop through, and not an outdated GC in sight.

    Of course, this is mostly a problem with Linq to SQL, but it's still the managed memory that I'm ending up having to wrestle with.

    I guess I shouldn't have used Linq to SQL... I guess I wasn't born with the Oracle genes so that I can sense what new technology is awesome, and what isn't.

    Oh wait.. that doesn't exist. Rather it's called gathering experience along the way. But alas, I guess I don't learn as fast as you... better give myself some lashings.

    sorry masta sir, I won't fuck up next time

    I mean fuck, everyone should be using high quality managed memory environments. There's no reason to drop down to C/C++ or its ilk (and don't give me shit that this is not what you're arguing, because that's where this all started... I claimed that pointers/handles still have its place). Because you know, all those engineers out there who choose managing the memory themselves are fucking morons, @magus knows best, @magus needs to school these peeps on what's what.

    But of course, go ahead and comment on a single sentence here, or there, taken out of context, and claim I mean that in all scenarios and tell me how I'm wrong. Don't give the benefit of the understanding that when making decisions on what actions to take you weigh the pros/cons... no system is perfect. But alas, @magus knows what system is perfect, and I should have known better.

    I'm sorry dude, but in the 10 years (which may not be that much in your eyes, the fuck if I know your experience), but in the 10 years I've been programming on a professional level I've had to dig into all sorts of different dirt where some tools may have been naively chosen. Where some other tool may have worked better, but they had to work with what they had on hand, was considered awesome in its time, or was within the budget to get things going.

    I enjoy the regular TDWTF, not because I think I know whats better. But because it's a reflection of the real world. We have work to get done, and we get it done with the tools we have on hand. I don't think the WTF's appear out of pure idiocy... there was often a rhyme or reason behind it (not always, sometimes it is a truly retarded individual making truly retarded choices).

    ::takes a guzzle from his vodka cranberry, because he's a cock sucking faggot like that!::

    tldr;

    You're a schmuck.



  • @lordofduct said in Programming Confessions Thread:

    You may dislike Unity, for whatever reasons you may have, but that doesn't mean everyone who works with it makes bejeweled clones. Just check out the community and you'll see that.

    https://www.youtube.com/watch?v=JJxiHDLJiRI

    https://www.youtube.com/watch?v=x_6Lz_gaszU

    https://www.youtube.com/watch?v=kNJqBdiALdg

    These are the kinds of games I think of when you say "Unity Engine".



  • @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    Example, the Unity game engine uses an outdated version of the mono runtime. The garbage collector of which is very naive and prone to frame stutter if you don't pay close attention to your garbage under certain conditions.

    That's just another case for not using Unity. Seriously, just use Monogame. Unity is for people who need to be able to get something out fast, like mobile games. It's seriously horrible for everything, though, and not without alternatives.

    Btw, lately Unity uses WebGL instead of it's own player to render content. I think that should be better. (if it still has memory problem, it's bug of browser now. Go blame the buggy browser, mu ha ha...


  • Discourse touched me in a no-no place

    @LB_ said in Programming Confessions Thread:

    although extremely uncommon, there are memory managed languages that don't use garbage collection. For example, C++ RAII, Rust, and Qore are the ones I know of.

    There are others too. However, I didn't know that we were calling C++ RAII “extremely uncommon”. ;)



  • @blakeyrat how about Ori and the Blind Forest? Pillars of Eternity?

    Most stuff in Unity looks like Unity because everyone seems to stick to the stock renderers and lighting.



  • @dkf When you look at how many garbage collected languages there are, it makes the ones with RAII-style memory management look like unicorns.



  • @lordofduct said in Programming Confessions Thread:

    @Magus said in Programming Confessions Thread:

    @lordofduct said in Programming Confessions Thread:

    Why Monogame? Monogame, unlike Unity, is only a framework

    Which can use the current version of Mono on each platform it's available on. Which is all of them.

    But is still only a framework, not an entire game suite. Two different things.

    @lordofduct said in Programming Confessions Thread:

    Also, it's only your opinion that any other option is any better. Why Monogame? Monogame, unlike Unity, is only a framework and doesn't come with a suite of artist friendly tools (I may be a programmer, but my teams aren't necessarily all programmers).

    Have you ever talked to an artist? My friend is a professional VFX artist, and found Unity to be utterly terrible. If you want something to be artist friendly, pick Unreal. It's better than Unity at everything.

    Yes, I have, the artists I've worked with. My best friend of 20+ years, partner on some projects here and there, has over 10 years experience working on games like Guitar Hero, Marvel Ultimate Alliance, and Skylanders... as an artist.

    Weird question but did he work at Vicarious Visions? That seems like a list of games they make (or port).



  • @Lathun

    Yeah, VV is owned by Activision. Most people have never heard of VV though.



  • @Arantor said in Programming Confessions Thread:

    how about Ori and the Blind Forest? Pillars of Eternity?

    How about them?

    @Arantor said in Programming Confessions Thread:

    Most stuff in Unity looks like Unity because everyone seems to stick to the stock renderers and lighting.

    It's not the look that bothers me, it's the fact that Unity has its name attached to a lot of really shitty games.


  • FoxDev

    @blakeyrat said in Programming Confessions Thread:

    @Arantor said in Programming Confessions Thread:

    how about Ori and the Blind Forest? Pillars of Eternity?

    How about them?

    they are unity games



  • @accalia said in Programming Confessions Thread:

    they are unity games

    Ok.

    Do you think Arantor was trying to make some kind of point by listing them? Or just mouth-farting?


  • FoxDev

    @blakeyrat said in Programming Confessions Thread:

    @accalia said in Programming Confessions Thread:

    they are unity games

    Ok.

    Do you think Arantor was trying to make some kind of point by listing them? Or just mouth-farting?

    yeah, the point was pretty obvious actually.

    But i'll not spoil the joke by explaining it. i know how much you hate it when the joke is ruined by explaining it.



  • @accalia I think he was going for, "hey look doodz I am going to white-knight for a game engine and list some good games that are made in the Unity engine!"

    Which is great, but has nothing to do with what I posted. I merely said, "when I think of the Unity engine, I think of these shitty games". I never claimed there were no good Unity games.



  • @lordofduct My brother works at VV, which is how I know about it. It is also the only video game studio I know of around where I live so I've looked into it before.


  • Impossible Mission - B

    @Magus said in Programming Confessions Thread:

    There are a bunch of XNA tools for that stuff. They all still work. I don't use them, because they would be no benefit to my game. But they exist.

    Your game has no sound effects or music?

    @FrostCat said in Programming Confessions Thread:

    @AyGeePlus said in Programming Confessions Thread:

    Nobody is hit by falling game engines.

    As a matter of fact, that happened to my sister 3 times just last week!

    Are you sure it wasn't a møøse?

    @LB_ said in Programming Confessions Thread:

    @dkf When you look at how many garbage collected languages there are, it makes the ones with RAII-style memory management look like unicorns.

    There's a reason for that. It can be expressed rather succinctly as "good ideas tend to get copied around."

    @blakeyrat said in Programming Confessions Thread:

    @accalia I think he was going for, "hey look doodz I am going to white-knight for a game engine and list some good games that are made in the Unity engine!"

    Which is great, but has nothing to do with what I posted. I merely said, "when I think of the Unity engine, I think of these shitty games". I never claimed there were no good Unity games.

    Again, Sturgeon's Law is a thing. Everyone knows this. Why are you making a big deal of it?



  • @masonwheeler said in Programming Confessions Thread:

    Why are you making a big deal of it?

    I'm not making any kind of deal of it.

    I am kind of trying to understand what Arantor was attempting to communicate by providing a list of games. But I've now given up on that because fuck this forum.



  • @Lathun said in Programming Confessions Thread:

    @lordofduct My brother works at VV, which is how I know about it. It is also the only video game studio I know of around where I live so I've looked into it before.

    Oh, you're up in the Albany region?

    Nice area. I still have some friends and a cousin up there. My buddy in question has since moved on (he didn't like the cold), but I make my way up their regularly to see my other friends. I'm technically from Massachusetts, so I also go there to see friends and fam as well.

    Coincidentally, I'm going there next week.



  • @blakeyrat said in Programming Confessions Thread:

    Here's another one: I've had the concept of "dependency injection" explained to me about half a dozen times by half a dozen people, and I still don't really understand what it is, or why I would want to use it in my own code. I especially don't understand IoC (Inversion Of Control) containers.

    Basically, you use an interface which your higher level classes use to communicate with lower level concrete classes through an abstraction. Instead of your higher level classes creating instances of the concrete classes it depends upon, even if it's through that interface (so for example the code below), instead you give the class the object that you want it to use that implements that interface.

    
    class Watcher
    {
        INotifyAction act = null
        public void Notify(string message)
        {
            if (action == null)
            {
                // here you map abstraction
                act = new EventLogWriter(); // implements INotifyAction
            }
            act.ActOnNofitication(message);
        }
    }
    

    You can give the dependency object to the higher level object in one of three ways:

    Through the constructor:

    Watcher (INotifyAction action) 

    Through a method:

    myWatcher.Notify("This is the message", new EventLogWriter());

    or through a property:

    myWatcher.actor = new EventLogWriter(); 

    The benefit to doing this is that the Watcher class doesn't have to know anything about how the INotifyAction implementers do their stuff or what methods they implement, all it needs is that INotifyAction interface to talk to them. And the INotifyAction doesn't actually have to do anything if you're not at that part of the project. If you're writing a class that depends on other classes, you neither need to know or care about the details of the dependencies, you only need to know the interface. You can even sub in a mock object that does nothing when any of the interface methods are called and implement them later. Since they're decoupled, they can be tested independently without worrying about bugs in the dependent code (since you've subbed in a mock object that can't have bugs because it doesn't actually do anything, the method bodies are all blank or return a preset value).

    This makes the software more flexible to change and maintenance.

    IoC (Inversion of Control) containers are used when your dependency objects themselves rely on an abstract interface and a dependency injection. The biggest challenge is to write the entire non-trivial application this way which can be done using DI frameworks like (in the case of Java) Swing, Nano-container, or Pico-Container (or in the case of C#) or Spring.NET, CastleWindsor, or StructureMap. Apparently Ninject is another good framework according to stack overflow.

    Sources:
    http://www.javaworld.com/article/2071914/excellent-explanation-of-dependency-injection--inversion-of-control-.html



  • @GinoMan Good job. Take the timepod back 2 years ago to when I first posted this thread and that information might have been slightly useful to me then, although probably still not.



  • @blakeyrat

    🤷 I didn't know what it was either. And originally the explanations I found of it were really obtuse.



  • @GinoMan Ok here's two protips:

    1. Look at the age of the thread before you post
    2. If a person didn't ask for information, don't provide it because it's fucking irritating

    And yes, the only reason I didn't understand it is because people explain it like douchebags and make-up all kinds of weird concepts that don't exist in my brain to explain it.



  • Everyone's so angry in here.

    Jeez guys, take a chill pill.

    Be calm... like me. See my calm demeanor????


  • kills Dumbledore

    @lordofduct fuck you



  • @lordofduct said in Programming Confessions Thread:

    @Lathun said in Programming Confessions Thread:

    @lordofduct My brother works at VV, which is how I know about it. It is also the only video game studio I know of around where I live so I've looked into it before.

    Oh, you're up in the Albany region?

    Nice area. I still have some friends and a cousin up there. My buddy in question has since moved on (he didn't like the cold), but I make my way up their regularly to see my other friends. I'm technically from Massachusetts, so I also go there to see friends and fam as well.

    Coincidentally, I'm going there next week.

    Yeah, I was born and raised in Upstate New York - about 30-40 minutes away from Albany.
    I was actually thinking yesterday how crappy the weather is here in terms of extremes. In winter it can get into the negatives and in the summer it goes up to the 90s, it is a huge range of temperatures.

    Massachusetts is nice, my parents used to take me to Cape Cod every year and Boston is a really nice city, at least from what I've seen.



  • Hey guys, some idiot posted a 4-page rant about how xna is just directx. Next he's going to tell us visual studio is actually a notepad skin!



  • @Magus said in Programming Confessions Thread:

    Hey guys, some idiot posted a 4-page rant about how xna is just directx. Next he's going to tell us visual studio is actually a notepad skin!

    Notepad++ you fucking twit... jeez, learn your history, momo.

    (lol, and you did exactly what I said... took one small sub section of my rant out of context and made it out that I was claiming only that in absolute)



  • @Magus said in Programming Confessions Thread:

    Next he's going to tell us visual studio is actually a notepad skin!

    Impossible. A notepad skin couldn't take 3 to 5 hours to install.



  • @masonwheeler said in Programming Confessions Thread:

    @LB_ said in Programming Confessions Thread:

    @dkf When you look at how many garbage collected languages there are, it makes the ones with RAII-style memory management look like unicorns.

    There's a reason for that. It can be expressed rather succinctly as "good ideas tend to get copied around."

    Obviously controversial things tend to remain controversial for a while.


Log in to reply