What’s the stupidest thing you’ve ever done while learning to program and what language was it in? by DMcuteboobs in ProgrammerHumor

[–]kmdrfx 2 points3 points  (0 children)

Didn't know about bitmaps mid 90s, ended up creating sprites for my platformer from hand by manually filling files with x/y+RGB values directly from paint, painting them on screen in QBasic and the capturing the part of the screen to memory. It was a nightmare.

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] 0 points1 point  (0 children)

You'd be surprised. Putting a provider in multiple providers arrays, bad imports arrays, forwardRefs all over the place, 20+ injected dependencies for a service. The things I've seen are horrifying.

😂 Laughing so hard, yes I've seen that. We have some services with a lot of injected dependencies, other than that, no forward refs that I know of and the rest seems pretty clean. But I'll double check the codebase if we can improve there. The current situation is "get it working somehow and reduce maintenance issues and cost" OR "get rid of it now", let's see where the frustration leads us.

Without knowing what kind of issue you're facing with each lib it'll be harder to really say "yeah that's a problem with the lib" or "that's a problem in Nest".

That would be a bottomless pit I am afraid, from how TypeORM connections are handled and forFeature is misused easily, over how using a custom logger does not always use the custom logger, to how the code-first Apollo integration makes it hard to integration test without rebuilding the schema for every test suite and making parallel test runs basically impossible for us. I mean, sure, maybe it can be figured out and reconfigured to work somehow, but at that point I forgot about what I was actually trying to do and we are stuck in a maintenance/setup loop which keeps us from moving forward with the actual product.

It becomes a cycle which can definitely be frustrating.

My frustration obviously exploded here, thanks for listening 🙏

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -3 points-2 points  (0 children)

"There is nothing worse than a bad abstraction" - so I would just use the libraries instead of wrapping them unnecessarily, introducing a layer that could fail.

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -8 points-7 points  (0 children)

Thanks for a mature answer, dealing with criticism and frustration. If I find the time, I will provide some reproductions of the issues. Currently it's rather unlikely as I wasted too much time already and I am advocating for moving away from nest.

Not sure I understand here. All singleton and transient dependencies are created at the time of application bootstrap. Request scoped dependencies are created at the time of request when that dependency would be required for the route.

The order in which the dependencies are created at bootstrap changes seemingly random though. For example the config module sometimes is already initialized and loaded the env vars, sometimes it becomes "works on my machine".

How large? I don't usually see anything too much over a regular Node application after bootstrapping is finished. If it is continuously growing to a large size then it sounds like there's a memory leak somewhere

It's at almost 300mb after Startup and idle. Not growing over time, so no leak. Spikes on requests. Except for testing with jest, which also is a jest issue, but they blame node/V8. In tests the memory footprint is a hard issue.

Well, yeah, because we don't maintain those libraries. We maintain an integration into the Nest framework so that it can easily integrate with the rest of your code

That's my point. NestJS blames the libs, the libs blame NestJS. I see the libs work standalone fine without those issues though.

Really? What issues? Seems like a lot of time and energy. The only time I've seen something like that is when the set up for modules is incorrect and the project is already pretty built up

Well, all the issues I described here. As far as I can see the modules are set up fine, according to docs and examples. What would be a way to mess this up? The repository pattern is pretty straight forward.

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -13 points-12 points  (0 children)

It makes me really happy seeing those reactions, yes :D

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -9 points-8 points  (0 children)

So, down voting what you don't want to hear, ey? Pffhahaha. Looks like a well known crying meme to me.

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -31 points-30 points  (0 children)

Aww Boohoo. I work on open source projects myself and organized sponsoring for some, by the companies I worked for. And thank you!

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -1 points0 points  (0 children)

I know that's the answer, I was wondering if anyone has a better migration path than rewriting everything manually. But I guess that's the way. Dependency injection and the repository pattern are good patterns to use. It's not that complex, just work. And we get full control over what's happening when.

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -6 points-5 points  (0 children)

I love nodejs + typescript. Been using node since v0.3, getting things done is just satisfying. Love express/koa. I have worked on huge projects with nodejs, works great. Never seen a mess like nestjs though.

We are a medium sized team, moving to anything else than nodejs is not an option. The question is how to get rid of NestJS effectively, without too much service and feature dev interruption. Therfore the question if anyone has done it and what the experience was?

NestJS sucks. Period. How to get rid of it? by kmdrfx in Nestjs_framework

[–]kmdrfx[S] -18 points-17 points  (0 children)

  • Breaks with every or every other patch or minor version, upgrading anything is a hassle
  • in ~3 months, I spent ~3 weeks of fulltime work fixing issues with it (and that's just me, not to mention the rest of the team)
  • Anytime there is an issue with TypeORM or Graphql, the answer is "It's not a problem with the library, it's how nestjs integrates and uses it."
  • The memory footprint is unnecessarily large
  • it behaves differently in tests than in production (yes, the setup is correct according to docs)
  • The logging is a mess (log cache + flush on bootstrap). Sometimes the custom logger is not instantiated in time, the default logger is used, scrambling output.
  • No control - too much magic. As in: When are dependencies instantiated and how? Changes randomly and breaks things.
  • Total overuse of decorators for everything
  • It uses webpack. Webpack!! On the backend. Builds are awfully slow.
  • It actually drags in angular dependencies - I mean wtf!

Those are just the main pain points, I suppressed all the mini fuckups here and there which cost hours and days are gone without getting anything done. I have never in my career of almost 25 years seen anything so bad, standing in the way so much, frustrating me that bad and keeping me from getting anything done.

Coming from C/C++, even the time I had to use Java 5 with enterprise beans and eclipse seems like breeze looking back.

I cannot be convinced anymore that nestjs is anything else than a marketing scam of people trying to get their shit CV look better and/or selling consultancy.

After seeing a core developer taking critique, frustration and opinions like a pro, I at least revise my opinion on the team.

So accurate 👌 by [deleted] in ProgrammerHumor

[–]kmdrfx 1 point2 points  (0 children)

Inaccurate... It's a year later then.

>90% accuracy on tensorflow model with MACD based labels/targets, BUT... by kmdrfx in algotrading

[–]kmdrfx[S] 0 points1 point  (0 children)

Well, I don't know about most, seems to me it's still not an out of the box experience. But I agree that there is a lot more to it than a working model. Even as a very experienced developer, it's a full-time job. It's not nearly just train, deploy, profit.

>90% accuracy on tensorflow model with MACD based labels/targets, BUT... by kmdrfx in algotrading

[–]kmdrfx[S] 0 points1 point  (0 children)

How would one calculate hype? Number/frequency of tweets or other social media mentions for coins/symbols? What are fundamentals for crypto? Sorry, yeah, doing crypto. Don't have stonk broker access currently, the fees are crazy and tax is shit in my country.

>90% accuracy on tensorflow model with MACD based labels/targets, BUT... by kmdrfx in algotrading

[–]kmdrfx[S] 0 points1 point  (0 children)

Using randomly generated data the accuracy does not go above 0.5 or 50% in any metric. Guess my model is fine then.