00:00
00:00
Newgrounds Background Image Theme

seanclopedia just joined the crew!

We need you on the team, too.

Support Newgrounds and get tons of perks for just $2.99!

Create a Free Account and then..

Become a Supporter!

Open Office Hours (Need Help? Post Here)

570 Views | 36 Replies
New Topic Respond to this Topic

Hello fellow hackers!


I think it's a shame that this sub-forum is such a complete desert. I know that a big part of that is a knock-on effect of General being closed. Still, I want to do what I can.


At least for the next couple of weeks, maybe indefinitely depending on the reception, I am committing at least of few minutes of every day to trying to answer any and all CS/coding questions put forth in this thread (though no homework please). I encourage others with the expertise to help out as they can. Why this thread and not the sub-forum? I'm trying to establish not just a Q&A forum, but a place to hang out... well... like office hours. Baby steps.


We're not going to get to every person's question every day, and we're not going to get to every question, but hopefully over time this can become a place to discuss the bigger and more aesthetic aspects of programming that are hard to look up or discuss with an LLM.


Anyway, post what you might need some help with that isn't homework, and I'll (and hopefully eventually others) will see what we can do.

Response to Open Office Hours (Need Help? Post Here) 2024-11-12 04:12:00


…No takers? Okay. Let's talk about programming language slander.


I love lengthy takedown articles of programming languages the writer hates. Beyond simple jokes about superficial quirks of the language. They are so annoyed with the language but also so familiar with it that they can attack its fundamental flaws.


Eevee's PHP: a fractal of bad design is a classic from over 12 years ago.


Fasterthanlime's I want off Mr. Golang's Wild Ride is from 2020 and got a lot of heat from Go fans.


LogLog Games published Leaving Rust gamedev after 3 years earlier this year.


BBS Signature

At 11/12/24 04:12 AM, silverchase wrote:…No takers? Okay. Let's talk about programming language slander.


Yeah... even I underestimated how dead this forum was. :|


As a former Amiga user and current Lisp programmer whose main machine is a five year old iPad, I generally don't impugn other people's coding choices (well except for Unity users). Thanks for the Go rant though, I had not seen that one.


Some rabble rousing I do support is against over-engineering:


Response to Open Office Hours (Need Help? Post Here) 2024-11-12 14:21:23


At 11/12/24 04:12 AM, silverchase wrote:I love lengthy takedown articles of programming languages the writer hates. Beyond simple jokes about superficial quirks of the language. They are so annoyed with the language but also so familiar with it that they can attack its fundamental flaws.


this one is funny:


https://web.archive.org/web/20080102040259/http://www.zedshaw.com/rants/rails_is_a_ghetto.html


I haven't seen these about Rust and Go, I'll take a look lol


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo


At 11/12/24 02:21 PM, detergent1 wrote:[...]
https://web.archive.org/web/20080102040259/http://www.zedshaw.com/rants/rails_is_a_ghetto.html


Holy cow. I haven't thought of Zed Shaw (or Ruby really) in ten years. I guess the latter proves he was right. His "The Hard Way" series is pretty good though. I personally prefer a more first principles teaching style (I literally learned to code with flowcharts first) but it's a good antidote to the "Learn X in Y Hours" approach that he set out to contrast.

Response to Open Office Hours (Need Help? Post Here) 2024-11-12 21:23:05


At 11/12/24 07:11 PM, alsoknownas1 wrote:
At 11/12/24 02:21 PM, detergent1 wrote:[...]
https://web.archive.org/web/20080102040259/http://www.zedshaw.com/rants/rails_is_a_ghetto.html

Holy cow. I haven't thought of Zed Shaw (or Ruby really) in ten years. I guess the latter proves he was right. His "The Hard Way" series is pretty good though. I personally prefer a more first principles teaching style (I literally learned to code with flowcharts first) but it's a good antidote to the "Learn X in Y Hours" approach that he set out to contrast.


wow I never realized it was the same guy! wow... crazy huh!?


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-12 23:15:12


For better or for worse, it looks like we've mostly got a bunch of good old boys in this thread. That being the case, I figured we might actually talk about some things that weren't just for newbs (though newbs welcome to jump in at any time).


Recently on X, there was bit of a controversy about early return. I didn't really understand why it was controversial until I saw the original post:


iu_1300384_7638128.png


Ryan Fleury, who sort of initiated this controversy, brought up how he nested without early return, and I kind of found it pretty inspiring:


iu_1300385_7638128.jpg

                                                                           

It's very similar to how I've been doing it with macros, but I think is a bit more elegant and standard. I was wondering what others here thought.


Response to Open Office Hours (Need Help? Post Here) 2024-11-14 18:23:55


At 11/12/24 04:44 AM, alsoknownas1 wrote:Some rabble rousing I do support is against over-engineering:


I remember watching a few minutes of this video a long time ago and not liking it. I don't remember why, but I'm not in the mood to watch it to.


I think it is because bro conflated compiler and language limitations and cost of abstraction. like, who says we can't have a language and tools where we write clean OOP code and it is smart enough to inline and optimize everything? how about we worry about improving our tooling rather than bashing maintainable and properly abstracted code as the root of evil? again, I don't know the contents of the video, this is a more general criticism.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-14 21:24:10


@detergent1


Fair enough that you don't want to sit through a video. To keep the discussion going, I'll give my general take:


No one is arguing against maintainability or proper abstraction. That's absurd on its face. There's this idea that Casey et al are arguing for some kind of punk rock "hack it out" in opposition to structure and that's simply not the case. Casey literally makes his money selling courses on structuring code for performance. They--and I'll go ahead and say *we*--are arguing that clean-code/OOP practices are not proper abstractions, don't help maintainability and come at a huge performance cost. The latter is indisputable but it's actually the former where it gets interesting.


CC/OOP came to prominence in the mid-nineties, so it's been du jour for about thirty years. In that time empirical studies have turned up literally no evidence that the practice helps with maintainability over simple things like just having a coding standard or breaking things up into libraries: zero. I repeat it to emphasize that this isn't hyperbole: no large academically published study comparing coding practices has found any evidence whatsoever that CC/OOP helps avoid technical debt or accelerates the later stages of projects whatsoever. There has been some evidence it helps with collaboration, but here's the kicker: that's only for team sizes and structures that the *rest* of the empirical data doesn't recommend.


The evidence that CC/OOP hurts performance is all around you. The bottom layer of game engines don't use it. Embedded systems don't use it. Vertically scaling systems like database engines don't use it. They don't use nothing, which seems like the straw man CC/OOP proponents seem to imply. We've known principled ways to structure procedural code since Fortran and if you want something newer: Data driven design, for example, is one of many paradigms competing against CC/OOP. Personally, my style is very focused on "static" structure pushing as much of the work into the literal code as a document as possible. I thus favor state machines, data-driven designs, domain specific syntax, etc etc. My code is thus extremely structured without being OOP.


So I'll take the question and flip it around in an obvious attempt to keep this discussion (and thread) alive:


With no evidence that CC/OOP helps and overwhelming evidence it hurts, what's the case for it? Learning? Has it helped you personally and--if so--do you think it's helped more than another structured approach (ie DDD etc) would have? Would you like to help me content farm and talk about how you used it in:




iu_1301439_7638128.png


I have obtained maximum knowledge! Thanks @detergent1


Pretty good basic walking demo (camera lock even works). How did you find libGDX? On topic, is it OOP?

Response to Open Office Hours (Need Help? Post Here) 2024-11-15 13:47:45


At 11/12/24 04:12 AM, silverchase wrote:…No takers? Okay. Let's talk about programming language slander.

I love lengthy takedown articles of programming languages the writer hates. Beyond simple jokes about superficial quirks of the language. They are so annoyed with the language but also so familiar with it that they can attack its fundamental flaws.

Eevee's PHP: a fractal of bad design is a classic from over 12 years ago.

Fasterthanlime's I want off Mr. Golang's Wild Ride is from 2020 and got a lot of heat from Go fans.

LogLog Games published Leaving Rust gamedev after 3 years earlier this year.


interesting stuff. I have read the PHP fractal some time ago, very funny. I read the Go wild ride the other day, and now I finished the Rust gamedev yesterday to relax a little. cool stuff.


I could write some slander against C#, but I'm at peace with this language even though I don't like it, and Microsoft is not blind to their own mistakes: they frequently link blogs explaining their design mistakes in official documentation, which is really nice.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-15 14:20:38


At 11/12/24 11:15 PM, alsoknownas1 wrote:For better or for worse, it looks like we've mostly got a bunch of good old boys in this thread. That being the case, I figured we might actually talk about some things that weren't just for newbs (though newbs welcome to jump in at any time).

Recently on X, there was bit of a controversy about early return. I didn't really understand why it was controversial until I saw the original post:


Ryan Fleury, who sort of initiated this controversy, brought up how he nested without early return, and I kind of found it pretty inspiring:


It's very similar to how I've been doing it with macros, but I think is a bit more elegant and standard. I was wondering what others here thought.


I like guard-clauses when they are few, but I prefer macros when I have to bail out in the middle of the code. I understand some embedded system coding standards ban entirely any return statement unless at the end of a function, but I find these condition variables kinda ugly. oh, but I'm a goto enjoyer tho haha!! check this excerpt:


#define TRY(IT) \
if ((IT)) { SDL_LogError(SDL_LOG_CATEGORY_ERROR, "%s\n", SDL_GetError()); \
            exit(EXIT_FAILURE); } else (void)0

int main(int argc, char *argv[])
{
    (void)argc;
    (void)argv;

    scenes_init();

    atexit(SDL_Quit);

    TRY(SDL_InitSubSystem(SDL_INIT_VIDEO | SDL_INIT_EVENTS));

    SDL_Window *window = NULL;

    TRY(!(window = SDL_CreateWindow(
        "Toy Raytracing",
        SDL_WINDOWPOS_UNDEFINED,
        SDL_WINDOWPOS_UNDEFINED,
        window_width, window_height,
        SDL_WINDOW_RESIZABLE
    )));
    // TODO Deal with Apple's high-DPI stuff.

    SDL_Surface *surface = NULL;
    TRY(!(surface = SDL_GetWindowSurface(window)));

    for (bool is_playing = true, start = true, step = false; is_playing; )
    {
        for (SDL_Event event; SDL_PollEvent(&event); )
        {
            if (SDL_QUIT == event.type)
                is_playing = false;
            else if (SDL_KEYDOWN == event.type && 'q' == event.key.keysym.sym)
                TRY(SDL_PushEvent(&(SDL_Event){.type = SDL_QUIT}) < 0);
            else if (window_resize_maybe(event, &window_width, &window_height))
            {
                TRY(!(surface = SDL_GetWindowSurface(window)));
                start = true;
            }
        }

        // [...]

        if (step)
        {
            TRY(SDL_LockSurface(surface));

            #define DESIRED_FRAME 1000 / (dist)24
            uint64_t timeout = SDL_GetTicks64() + DESIRED_FRAME;
            while (SDL_GetTicks64() < timeout)
                step = !camera_step(&camera, 100);

            SDL_UnlockSurface(surface);
        }

        SDL_UpdateWindowSurface(window);
    }

    SDL_DestroyWindow(window);

    SDL_QuitSubSystem(SDL_INIT_VIDEO | SDL_INIT_EVENTS);

    return 0;
}

SDL is prone to many exceptions. I now noticed I could enrich the log stringifying IT and adding __FILE__ and __LINE__ macros to it. oh well.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-15 15:58:22


At 11/12/24 04:44 AM, alsoknownas1 wrote:Some rabble rousing I do support is against over-engineering:


so I did watch the video after all. it is full of strange things, if not errors


first strange thing is that he writes with his pen from right to left from his POV and it looks left to right in our POV. this is such an incredible skill! or maybe he mirrored the video? interesting.


second, dude has a "hand unrolled" loop with four accumulators, but it misses the last one to three elements. did he intend to write a Duff device? but compilers are smart these days. even if he padded the arrays to always be multiple of four, he assigned square enum constant to 0, so he must assign 0 to width and height manually to the padding elements or assign shape type to 5... very strange.


third, both the "clean code" version and his optimized version are full of maintenance problems, due to shotgun surgery anti-pattern. unfortunately, only Java enums or the C preprocessor or a metaprogramming tool like T4 can properly model his example, so it is kinda flawed from the beginning.


fourth, his code also slowly becomes confusing. for circles, "width" and "height" now mean radius, it doesn't even mean diameter anymore.


fifth, he complicates the code adding a "corner count" attribute, which should obviously be static, but he puts it as instance data. unfortunately I only C# 11 to have "static abstract" properties and methods that solve the problem directly. I dunno about Java and C++ tho.


I wonder why are comments disabled...


anyway, here is my C11 compliant take:


#include <assert.h>
#include <stdio.h>
#define _USE_MATH_DEFINES
#include <math.h>

#define SHAPE_XS(X, Y, SEP) \
X(SQUARE   , (Y).side   * (Y).side         , 4)SEP \
X(RECTANGLE, (Y).width  * (Y).height       , 4)SEP \
X(TRIANGLE , (Y).width  * (Y).height / 2   , 3)SEP \
X(CIRCLE   , (Y).radius * (Y).radius * M_PI, 0)

#define NIL
#define COMMA ,
#define SEMICOLON ;

#define AS_ENUM(A, ...) SHAPE_##A
enum shape_type { SHAPE_NONE, SHAPE_XS(AS_ENUM, NIL, COMMA), N_SHAPE };

struct shape
{
    enum shape_type type;
    union {
        float radius;
        float side;
        struct { float width; float height; };
    };
};

#define AS_AREA(    E, F, C) case SHAPE_##E: total += (F); break
#define AS_WEIGHTED(E, F, C) case SHAPE_##E: total += (1.0/(1+C))*(F); break

#define SHAPE_TOTAL_DECL(NAME, CALC) \
static float shape_total_##NAME(int n, struct shape shapes[static const n]) \
{   float total = 0; \
    for (int i = 0; i < n; i++) switch (shapes[i].type) { \
            SHAPE_XS(CALC, shapes[i], SEMICOLON); \
            default: assert(!"Invalid shape type"); break; \
        } \
    return total; }

SHAPE_TOTAL_DECL(area, AS_AREA)
SHAPE_TOTAL_DECL(area_weighted_corner, AS_WEIGHTED)

int main(void)
{
    struct shape shapes[] = {
        {SHAPE_SQUARE   , .side = 5}},
        {SHAPE_RECTANGLE, .width = 5, .height = 10},
        {SHAPE_TRIANGLE , .width = 5, .height = 10},
        {SHAPE_CIRCLE   , .radius = 5},
    };
    int n = sizeof (shapes) / sizeof (*shapes);

    printf(
        "Total area is %f and weighted by corner count is %f\n",
        shape_total_area(n, shapes),
        shape_total_area_weighted_corner(n, shapes)
    );

    return 0;
}

I didn't measure anything, but even if it performs worse than any micro-optimized version, I wouldn't really care until it shows in the profiler.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-16 23:19:30


@detergent1 I get that the code might seem strange unless you are familiar with writing fast C. The thing is "compilers are smart these days" really is an article of faith and--all too often--it's a misplaced one.


The reason he's unrolling the loop is to force the compiler to use a certain memory access pattern (in this case to not reorder the accumulator access). You might have faith that the compiler is smart enough to "do the right thing" in these situations, but I assure you it is not. Similarly, the reason he doesn't initialize the padding elements is that the way he accesses them he knows they won't be touched.


These sort of things are not theoretical. For the homebrew version of the Dreamcast Collab, this hit me constantly. My code currently does 30fps of terribly compressed video with some frame budget to spare. Without my manual unrolls and other tricks to force the compiler's hand in terms of operations that slows to 4 (4!) frames a second because GCC hits the memory in a non-optimal order for the data.


If you have the time, I'd highly recommend playing around with a tool like godbolt to see what compilers actually do in any given situation. It was a god send (no pun intended) to me when coding the homebrew edition.


In terms of there being "maintenance problems" with Casey's code because it has some repetition. Do you *really* think meta-modelling tools like T4/UML are needed to "properly" program what is essentially the fizzbuzz of shapes? Sometimes two parts of a program are truly using "the same code" and then yes, in those cases DRY so that there is one place to make corrections. More often than not though "repetition" is incidental. Two parts of the base need ordered input with different specific needs etc etc. We don't factor out addition for a reason. There are diminishing returns.


That's my take, but--granted--it's informed by working on very constrained systems.


Response to Open Office Hours (Need Help? Post Here) 2024-11-17 19:30:31


@detergent1 Not to badger you too much, but you never answered about libGDX. How was it, especially when doing--I assume--web first. Have you used it in anger since?

Response to Open Office Hours (Need Help? Post Here) 2024-11-23 14:05:53


At 11/14/24 09:24 PM, alsoknownas1 wrote:@detergent1

Fair enough that you don't want to sit through a video. To keep the discussion going, I'll give my general take:

No one is arguing against maintainability or proper abstraction. That's absurd on its face. There's this idea that Casey et al are arguing for some kind of punk rock "hack it out" in opposition to structure and that's simply not the case. Casey literally makes his money selling courses on structuring code for performance. They--and I'll go ahead and say *we*--are arguing that clean-code/OOP practices are not proper abstractions, don't help maintainability and come at a huge performance cost. The latter is indisputable but it's actually the former where it gets interesting.

CC/OOP came to prominence in the mid-nineties, so it's been du jour for about thirty years. In that time empirical studies have turned up literally no evidence that the practice helps with maintainability over simple things like just having a coding standard or breaking things up into libraries: zero. I repeat it to emphasize that this isn't hyperbole: no large academically published study comparing coding practices has found any evidence whatsoever that CC/OOP helps avoid technical debt or accelerates the later stages of projects whatsoever. There has been some evidence it helps with collaboration, but here's the kicker: that's only for team sizes and structures that the *rest* of the empirical data doesn't recommend.


I don't know these studies. I don't even know what the scientific method to measure this would look like. I once read a "software engineering" paper analyzing a "case study" and it just sounded like one big opinion piece. turn off.


The evidence that CC/OOP hurts performance is all around you. The bottom layer of game engines don't use it. Embedded systems don't use it. Vertically scaling systems like database engines don't use it. They don't use nothing, which seems like the straw man CC/OOP proponents seem to imply. We've known principled ways to structure procedural code since Fortran and if you want something newer: Data driven design, for example, is one of many paradigms competing against CC/OOP. Personally, my style is very focused on "static" structure pushing as much of the work into the literal code as a document as possible. I thus favor state machines, data-driven designs, domain specific syntax, etc etc. My code is thus extremely structured without being OOP.


I don't know this "data-driven design". if you search for OOP, you quickly learn how to lay out stuff like "dog is an animal" and it overrides the "speak" method in order to "bark". I once tried to study this thing ECS everyone talks about, the tutorials were talking about archetypes and systems and whatnot, but I didn't learn how to make a dog bark while being a kind of animal.


So I'll take the question and flip it around in an obvious attempt to keep this discussion (and thread) alive:

With no evidence that CC/OOP helps and overwhelming evidence it hurts, what's the case for it? Learning? Has it helped you personally and--if so--do you think it's helped more than another structured approach (ie DDD etc) would have? Would you like to help me content farm and talk about how you used it in:

https://www.newgrounds.com/portal/view/813674


we made this game long ago. it was hell on earth to write it. it was more kludge-oriented than object-oriented. we also went through a development hell deciding what to do, so we tried many ideas and scrapped many ideas, wasting a lot of time before even starting. it was supposed to be a turn based at some point, then a RPG, then a shooter and so on.


there is horrible stuff inside. we used static attributes as a shortcut for global variables, methods with 7+ parameters and so forth. none of us was really worried with CC/OOP when developing, just delivering something playable within the deadline. I just found the repo and made it public: https://github.com/elc117/2021gamet4-bento-thiago/


also, my computer was really weak back then. 4 GB of RAM. so I had to choose to either have Intellij IDEA open or a Web browser open, but not both at the same time. to make a Web build, I had to close every window and wait a lot... in the end, we added tons of asset, I think the Web build weighted like 40 MB, but we use like 1% of it. this was the final assignment for a university subject.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-23 14:12:31


At 11/15/24 08:31 AM, alsoknownas1 wrote:https://www.newgrounds.com/portal/view/813674


I have obtained maximum knowledge! Thanks @detergent1

Pretty good basic walking demo (camera lock even works). How did you find libGDX? On topic, is it OOP?


yeah, I did the camera lock, I was very proud back then and it was my utmost worry. I don't remember how much libGDX is OOP. honestly, I'm trying really hard to make games in C right now, I don't intend to return to Unity 3D after a terrifying three-year experience with it in my last internship. I like libGDX code-only approach and integration with external tools to make stuff, like Tiled which we used to make the terrain. if I fail to make C work for me, I think libGDX would be the next in line. or Haxe, but I didn't find good Haxe tutorials.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-23 14:17:04


in another note, look at this video I found:



supposedly some old-ass electronic music, but what catches my attention is the funny graphics, most likely a crappy OpenGL 1.x demo some student would write for their computer graphics subject. I laughed so much as stuff appeared, like texture mapping, perlin noise, bump mapping, scale matrix etc.


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2024-11-25 01:03:32


If you're thinking of hitting C for a bit, I assume you've already taken a look at raylib. If not, you're welcome. :)


I would encourage you (and anyone reading this thread) to take another look at Haxe though. I've used it to write an assembler and the beginning of a Jezzball clone and I really liked it. The only reason I dropped it was that, as far as I'm aware, there's no lisp-like syntax for it. In terms of tutorials, I just literally read the official manual It's actually pretty good. Most relevant to the audience here--of courseis that it can compile to Flash and is interoperable with assets made in the Flash editors.


At 11/23/24 02:17 PM, detergent1 wrote:in another note, look at this video I found:


Vaguely demoscene...


Response to Open Office Hours (Need Help? Post Here) 2024-11-28 20:34:58


At 11/25/24 01:03 AM, alsoknownas1 wrote:
At 11/23/24 02:17 PM, detergent1 wrote:in another note, look at this video I found:

Vaguely demoscene...


I really admire the demoscene as an outside observer. A lot of cool stuff has come out of the scene. Watching the Revision tracked music compo years ago was what got me into music trackers. I did try doing some sizecoding earlier this year, resulting in an 8k demo I submitted to an art jam.


Here's another demo for the history books.


BBS Signature

Response to Open Office Hours (Need Help? Post Here) 2024-11-29 08:17:33


At 11/28/24 08:34 PM, silverchase wrote:[...] I really admire the demoscene as an outside observer. [...]


Ditto. It's part of my motivation in life to one day be good enough to feel I can attend Revision without embarassment. There's so much they stress that's universally applicable:


  • thinking about time/space/pre-calc/runtime trade-offs
  • being aware of accuracy as trade-off with performance
  • thinking about synchronisation and timing between different parts of the hardware
  • targeting assets for the medium
  • doing insane amounts of K and other uppers


While we're sharing, here's Alex Evans' "Paper":


Response to Open Office Hours (Need Help? Post Here) 2024-12-16 09:53:07


while people argue between JSON vs. XML, and some people push alternatives such as BSON and Google's protobuf, I think ASN.1 might be the final winner (or have always been)?


on a side note, I remember YAML being bashed heavily due to ambiguity and severe maintenance issues, so I guess nobody is picking it anymore besides for historic reasons?


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2025-01-01 11:58:37


ugh this software licensing thing is so tedious! I hope I sort this stuff soon :(


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2025-01-01 12:12:56


At 1/1/25 11:58 AM, detergent1 wrote:ugh this software licensing thing is so tedious! I hope I sort this stuff soon :(


What's up?


Response to Open Office Hours (Need Help? Post Here) 2025-01-09 11:58:37


At 1/1/25 12:12 PM, alsoknownas1 wrote:
At 1/1/25 11:58 AM, detergent1 wrote:ugh this software licensing thing is so tedious! I hope I sort this stuff soon :(

What's up?


well, it is undoubtedly one way to nerd snipe


O prudente varão há de ser mudo,

Que é melhor neste mundo, mar de enganos,

Ser louco c’os demais, que só, sisudo

Response to Open Office Hours (Need Help? Post Here) 2025-01-10 01:56:53


At 1/9/25 11:58 AM, detergent1 wrote:
At 1/1/25 12:12 PM, alsoknownas1 wrote:
At 1/1/25 11:58 AM, detergent1 wrote:ugh this software licensing thing is so tedious! I hope I sort this stuff soon :(

What's up?

well, it is undoubtedly one way to nerd snipe


why are you being so cryptic


BBS Signature

Response to Open Office Hours (Need Help? Post Here) 2025-01-10 09:09:37


At 1/10/25 01:56 AM, S3C wrote:why are you being so cryptic


Wait... is @detergent1 Satoshi?

Response to Open Office Hours (Need Help? Post Here) 2025-01-11 18:25:23


At 11/12/24 04:44 AM, alsoknownas1 wrote:
At 11/12/24 04:12 AM, silverchase wrote:…No takers? Okay. Let's talk about programming language slander.

Yeah... even I underestimated how dead this forum was. :|

As a former Amiga user and current Lisp programmer whose main machine is a five year old iPad, I generally don't impugn other people's coding choices (well except for Unity users). Thanks for the Go rant though, I had not seen that one.

Some rabble rousing I do support is against over-engineering:


Were you an actuall computation OG ? damn wish It was me but with C64 I just love this machine Im going to build my own C64


At 1/11/25 06:25 PM, PhonePhreaker wrote:Were you an actuall computation OG ? damn wish It was me but with C64 I just love this machine Im going to build my own C64


My first machine was an Atari 800XL, and it was woefully out of date then. It being my first was more a matter of my family's financial situation at the time than my being OG.


I did co-design this bad boy though:


iu_1334729_7638128.gif

iu_1334727_7638128.jpgiu_1334728_7638128.jpg

Response to Open Office Hours (Need Help? Post Here) 2025-01-12 12:49:05


At 11/12/24 04:12 AM, silverchase wrote:…No takers? Okay. Let's talk about programming language slander.

I love lengthy takedown articles of programming languages the writer hates. Beyond simple jokes about superficial quirks of the language. They are so annoyed with the language but also so familiar with it that they can attack its fundamental flaws.

On the topic of rants, there was an amazing rant about premature optimization that I'd seen on reddit a few years ago that still sticks with me today; unfortunately, the user who posted it probably deleted all their posts and closed their account so it no longer exists.


But all I remember is that it had the quote about rearranging deck chairs to perfection to get the best view as the titanic sinks around you (as more important things like poorly optimized SQL queries keep running) that had me laughing to no end.


Slint approves of me! | "This is Newgrounds.com, not Disney.com" - WadeFulp

"Sit look rub panda" - Alan Davies

BBS Signature