Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
Get a devDuck
Rubber duck debugging has never been so cute! Get your favorite coding language devDuckBuy Now
Search - "gaben"
I want to marry C#
Seriously, I've never found any other programming language I enjoy the hell out of using quite like C#. If I could, I'd write my game engine in C# instead of C++26
>be excited for secret santa
>the guy who got my gift is happy :)
>wait till the end of the day
>no gift for me :/
>leave office with nothing to be excited about
>get to know about steam winter sale
>buy games to the point of happiness ;-;
10/10 would worship gaben ;~;17
I love this app. With such an active community, it's heartwarming to see things like "dfox +1'd your want", and not uncommon. We are part of a wonderful app where you can tell the devs care because they themselves are super active users of the app too.
Much appreciation devs and other community celebs, keep on being awesome.1
Do any of you notice changes between coding during the day and night?
I tend to listen to classical during the day, and the new DOOM soundtrack during the night to accompany my coding5
"let's use git for this game jam"
Wait! Don't go! I love git and use it on every project I work on! You'll have to hear me out here.
This was 4 years ago, at my first Global Game Jam. Every jam and game I'd worked on up to that point, I was the only Dev; no need for git, as backups were more than enough. I joined a group with high hopes for the game jam, with three coders and a proper art team.
The entire jam was "1 step forward 2 steps back", as git somehow constantly overwrote code as fast as we could write it.
By the end of the jam we barely had anything to show for our hard work. The takeaway isn't even about git. It's simply to never work with other people. Git is a great protocol but it can't stop people from accidentally fucking other people over. Every jam since, I've worked on my own and had a far better time of it.3
-See vaguely interesting feature in language (currently C#)
-Look at the docs and psuedocode to get a feel for what the feature is intended for
-Design small project around the feature
-Learn the feature by using it1
Career fair update:
At the fair I bee-lined right to a company I'd talked to at a hackathon before. The person I talked to there was extremely enthusiastic, and called me a "really strong candidate," and even talked about providing housing for the summer near the workplace!
I'm contrast, AMD's interviewer looked extremely uninterested. Pretty sure they just grabbed some random engineer who didn't want to be there.
Microsoft had a line so long that the fair ended before most of the people even got to talk to Microsoft. Needless to say, I didn't even bother.
Qualcomm seemed cool, that went alright.
Overall, really happy with how the fair turned out, and really excited with how likely this job looks for me.1
My class schedule was really hard to figure out (since I'm a double major with tons of timing conflicts), so I made my computer do it for me. I was gonna make a GUI and sell it to my school, but I got distracted halfway through and never finished.
RIP schedule solver, I'll see you when it comes time to make next semester's schedule...
Friend, jestingly: Gabe I did a hack, I edited the html on my browser and sent a pic to my boss so that it wouldn't look like I was 20 minutes late
Me, seriously: Friend that's literally 99% of IRL hacking. Human error.
Friend, who is positive about humanity, unlike me: why do you disappoint me like this
My experience was very recent. I was working on my game engine, Pillar3D, and realized that the setup allowed it to be automatically multithreaded with little to no concern about deadlock or race conditions. All based on the assumption that individual levels don't talk to each other, and that moving entities between levels could be done between frames. I can even track about how much work each thread has to do and use that to distribute levels among the threads. Now I can do things like force UI trees to exist in their own level and get fantastic multithreading.
I guess I'll just die.
Using unity for a commission project:
Have a CCG-like setup, the cards inherit from Scriptable object, need to serialize a card inventory for the sake of persistence.
Attempt 1: XML serialization: get fucked, can't serialize dictionaries (what the hell)
Attempt 2: using data representation of the dictionary contents: get fucked, can't serialize Scriptable objects because they have to be handled by the engine...
Well okay, what if I use a Scriptable object to keep a persistent dictionary?
Attempt 3: Scriptable object with dictionary: get fucked, the dictionary didn't persist
Well now I'm starting to lose it, I've tried so many things, XML, Binary and JSon serialization, Scriptable objects, data representations, I'm really running out of ideas. I can only think of one more option: throw the Card objects into a Resources folder, an build a set of comma delimited strings to serialize. This is stupid.
Fuck Unity. Shit like this is why I'm making my own engine. Every week I find some new peeve, some new way that unity is full of redundancy and poor design, architectural flaws and workflow deficiencies. I don't know how much more of this I can take.2
In C# I want to use 'using' on any damn temporary object I please, but it only works with objects that implement idisposable..6