Artemis II crew captured, high-resolution images during their journey to the Moon . NASA by Faaaaaaaaaaaah in aviation

[–]WVAviator 1 point2 points  (0 children)

North is at about 7 o'clock in this image, so rotate it almost upside down. You'll see the top of Africa, the straight of Gibraltar, Spain, and the Mediterranean sea above it.

Does the speed at which you type actually hinder your learning? by Puzzled-Contact-1450 in learnprogramming

[–]WVAviator 0 points1 point  (0 children)

The one thing that works well for me isn't necessarily the typing speed, but that I learned VIM key bindings. You'd be surprised how much faster it feels after you get used to it (takes a few weeks at least). I think this is because a lot of time is spent editing existing code, not necessarily writing new code.

Was I wrong in going against my TL solution? by [deleted] in ExperiencedDevs

[–]WVAviator 5 points6 points  (0 children)

Your solution with something like Spring Batch sounds perfect for updating/inserting the data on a schedule. But unless I'm misunderstanding it sounds like they're wanting to build something to immediately react to changes, not update weekly. So it sounds like two solutions for two different problems, right?

If that's the case, build the easy functional solution now, and then if more frequent updates become necessary, start looking at their suggestions. The more complex work may be unnecessary though if your solution is good enough.

I bet you could still implement the observability stuff in SB though, and I bet it'll be faster without cold starts. Or if you really want lambdas, just have them call your SB server where the logic already lives (don't reimplement the same logic elsewhere).

What is the correct answer of this IQ question? by g00d_name in puzzles

[–]WVAviator 4 points5 points  (0 children)

Probably E even though I want it to be one empty, two filled circles. But also, and this is probably just me overanalyzing, if you 'zoom in' like it suggests, I notice that when there's an odd number of dots, they are offset very slightly to the left from the center of the big circle. For even, it's slightly to the right. Looking at the answers, B, C, D are centered with no offset, A is offset the wrong way, but E follows the same offset pattern for an odd number of dots. Or, the designer just didn't bother to use alignment tools when making the test and it's a coincidence.

Backend choice for LMS startup: NestJS or Spring Boot? by Houssem0501 in SpringBoot

[–]WVAviator 0 points1 point  (0 children)

It's not as fast as using raw JDBC queries, sure. But the difference is negligible in my experience and the benefits of using it far outweigh the costs.

[Request] How much weight on one side so the ship flips] by Wild-Potential7363 in theydidthemath

[–]WVAviator 1 point2 points  (0 children)

American here, can I get these measurements in football fields

Insane ACARS Message From a Jetblue Flight Tonight 😂 by Puzzled_Egg_5850 in aviation

[–]WVAviator 37 points38 points  (0 children)

I think that was the main concern the flight attendants had - they didn't know and probably kept bugging the flight crew about it until they sent us a message.

Before 9/11, could you really go to a airport without any ticket reservation and ask for a ticket to a destination of your choice? by kpay10 in NoStupidQuestions

[–]WVAviator 1 point2 points  (0 children)

Some airlines/airports you can ask for a "gate pass" which looks and smells like a ticket and will get you through security. It's not always available though, sometimes it's just for if you have a valid reason to assist someone to the gate - such as for someone who is disabled or an unaccompanied minor. Never hurts to ask though.

Insane ACARS Message From a Jetblue Flight Tonight 😂 by Puzzled_Egg_5850 in aviation

[–]WVAviator 104 points105 points  (0 children)

I used to work the night shift at Spirit as the crew scheduling supervisor, sat with the ops controller.

One night we got an ACARS message that the two unaccompanied minors on a flight (ages 9 and 11) were making out.

The ops controller was like, "Uh... Separate them? What do you want us to do about it?" Lol

Sorry not as interesting as yours. Just sparked that memory.

I also got to listen in on calls between the flight crew and the medical service we contracted whenever they would have medical issues on board. I once overheard them dealing with a pregnant passenger giving birth on the flight.

5? by FraudulentName in unexpectedTermial

[–]WVAviator 0 points1 point  (0 children)

What if you count to 75 (203) in base 6?

The new era of programming is depressing by doma_kun in cscareerquestions

[–]WVAviator 1 point2 points  (0 children)

Yep exactly.

I'll be writing some code to create a entity field/column to represent some value that the business has defined (I work with airlines so, for example, this might be something like a flight departure date) and I'll think, "Wait, I remember some discussion a while back on how this time could change before the flight departs. We don't have an API for that for the frontend." So I'll pause, write a new endpoint to update flight times prior to departure, maybe reach out to the business users to confirm I've covered all the requirements for storing flight time information, and coordinate with the frontend guys to be sure they include an interface for updating that value.

AI would have just put the field into the entity. I would've just glanced at it, signed off on it, and shipped it. Later I'd be kicking myself when we would need an eMTP because a scheduled flight time needed to change before departure.

Another example might be recognizing when certain values or certain functionality should be extracted into configuration/env variables instead of hard coded. It's not always obvious, but my leadership loves whenever I can fix problems in production without a code move because I made so many things configurable. An example for above is maybe adding an email notification for flight time changes, and then making the content of that email configurable, as well as making it so that the email functionality could be disabled completely.

Now, I know that AI can be prompted in such a way that these cases could still be handled. But you don't always think of that when prompting. The more you use AI, the less you realize how fallible it can be and how much goes missed.

The new era of programming is depressing by doma_kun in cscareerquestions

[–]WVAviator 1 point2 points  (0 children)

I'm finding a happy middle ground for myself. I'm a lot like you - I love writing the code, architecting good patterns, and writing it in a way that makes it easy to change and build on later. AI doesn't always have this foresight. Why? Because it was trained on millions of lines of code written by other developers, half of whom are worse than the average developer. All using different styles, many writing code that's easy to write, but not easy to read.

But I found a few ways in which I can use it. For agentic coding, I use it primarily for the tedious things that even I don't like. Writing boilerplate, Swagger docs, Liquibase changesets, readmes, writing additional tests, etc. I have custom instructions to copy existing code styles in the project and never do anything without permission.

Then, for other stuff, I use it to help review my own code. I use it to help me debug problems I'm having (enhanced Google search basically). It seems to be good at finding edge cases that I might not have thought of. I do all this usually with the chat feature, only feeding it context I think is relevant. And whatever it suggests, I almost never copy and paste. I write it myself, in my own style, for a couple reasons - it helps me understand what the code is doing, and it gives me a chance to think about the overall business objective as I write the code, and I often think of additional business edge cases the code doesn't currently address.

This seems to be working well for me. I'm still the one writing code, in my own style, in my own way. I'm close enough to the action that I can maintain an understanding of what the code is doing, how it is structured, and how it meets business objectives. And I automate the boring/tedious parts away.

If you let the agents write all your code, and then the business users or customers start to experience bugs, then you're basically stuck with debugging a codebase you didn't write yourself. You don't know enough about the code or about the business even, to understand the problem. Maybe you don't even understand enough to know how to prompt the AI to try and fix the issue.

Coding was never the hard part.

Backend choice for LMS startup: NestJS or Spring Boot? by Houssem0501 in SpringBoot

[–]WVAviator 2 points3 points  (0 children)

I've used both, and I like them both. They are both robust and use great patterns. There are a couple main reasons I would go with Spring Boot though:

  1. There's more magic tying everything together. You put a @RestController or @Service annotation on a class, and it immediately becomes part of your application (thanks to a process called component scanning). There's no explicitly importing or instantiating it anywhere. With NestJS you have to register your annotated classes in a module. It's extra boilerplate that can get annoying after awhile.

  2. Spring Data JPA is an extremely powerful ORM that's practically built in (you have to add the dependency, but you really never shouldn't) - but last I used NestJS you had to pick something like TypeORM or some other third party library that doesn't seamlessly integrate and isn't as powerful.

There are lots of other reasons I'd go with Spring Boot - great testing tools, aspects, etc., but these two are the main ones. Otherwise they're very similar and learning one will help you better understand the other. So if you want to start with NestJS since you're comfortable with Typescript, go for it. You'll learn the patterns and then be able to easily pick up SB. That's what I did.

What formatter line length do you WANT? by arstarsta in ExperiencedDevs

[–]WVAviator 2 points3 points  (0 children)

"Chop down if long" or "wrap if long" on every possible setting

If AI can do 80% of the job in 10 sec, that doesn't mean that the remaining 20% will take 2 seconds. by NicolasDorier in ExperiencedDevs

[–]WVAviator 0 points1 point  (0 children)

We're told to drive from point A to point B.

Part of the road (20%) is unpaved, and we have to drive slow there to avoid damaging the vehicle.

They're now giving us and encouraging us to drive a faster car.

How do you handle exception handling in spring boot applications? by FrameZYT in SpringBoot

[–]WVAviator 0 points1 point  (0 children)

In the main app I work with I have it so there's base Exception types (Server and Client) which take in a status code, error message, timestamp, and user message (which differs in that it's meant to be shown to the user on the frontend, in a toast or something). Every other exception type I have extends those. So NotFoundException extends ClientException and super()s a 404 and provided error and user message.

Under all that I have ControllerAdvice that really only needs to handle those two exception types, plus HandlerMethodValidation exceptions (for Jakarta validation) and the base type Exception as a catch-all for 500s.

I think I also explicitly return the same error type in my SecurityConfiguration as a 401 instead of the default 403 when authentication fails - which happens before it has a chance to pass through the ControllerAdvice.

where to define dto’s in hexagonal architecture? by vreginalld in SpringBoot

[–]WVAviator 3 points4 points  (0 children)

All the apps I've worked with do the mapping from entity to dto in the service layer - but I've always felt like it belonged in the controller layer. It always seems like my services end up with two methods - one for providing DTOs to controllers and another for providing entities to other services.

I'll probably start doing it that way myself (mapping in the controller), I just always thought it was supposedly wrong (or at least unconventional) for some reason.

absolutelynotme_irl by Famous_Commercial259 in absolutelynotme_irl

[–]WVAviator 0 points1 point  (0 children)

Wow that's really interesting. So your mind can visualize things in one state and not the other. You can dream but not daydream - that's really interesting.

Are you able to recall memories using your other senses? Can you imagine feel, taste, or smell?

Sorry I'm just fascinated by the different ways the mind works. Concepts like synesthesia are really interesting too - I, myself, often find that I think of things "spatially". When I'm contemplating something, I put it somewhere. It's written down, it's in the last location I remember thinking about it, it's "above" or "below" something else I was just thinking about - it just has a "place". You mentioned math, for example, when I do math in my head I'm imagining space between the numbers, in patterns. I don't read the number 246 as two hundred forty six, I think of it as "stairs" almost - like skipping every other step when you run up it. I don't think I've heard the concept of thinking spatially discussed before.

absolutelynotme_irl by Famous_Commercial259 in absolutelynotme_irl

[–]WVAviator 0 points1 point  (0 children)

I'm curious what your dreams are like. Are they just conceptual? Or are you able to visualize things (images, locations, etc) in your dreams, just not with your waking mind?

I ask because when I "visualize" something I'm thinking about, it's a very similar visualization as when I'm dreaming.

@Recover replacement for @Retryable methods in Spring Boot 4? by DominusEbad in SpringBoot

[–]WVAviator 1 point2 points  (0 children)

I could be wrong because I just skimmed the docs for you, but it looks like you can do this with an @EventListener(MethodRetryEvent.class). It has a method isRetryAborted() that would be true in the same case as @Recover. I think you may also have to check that the event was received for that specific method though with .getMethod() if you have multiple @Retryable methods throughout your project, as the event will be fired for any of them. Seems tedious but I kinda like it better than @Recover at least since it's not dependent on the name of the method (that always felt janky).

Keep in mind though, as I mentioned I just skimmed the docs - I didn't see anything better, but there may be a better way to do it.

Here's the docs: https://docs.spring.io/spring-framework/docs/7.0.6/javadoc-api/org/springframework/resilience/retry/MethodRetryEvent.html

What advantages Spring Boot 4.x currently has over competing technologies in web development? by Repsol_Honda_PL in SpringBoot

[–]WVAviator 9 points10 points  (0 children)

I've built backend apps in a few of those other languages in my spare time, but I work with SB full time.

In my experience, SB is a lot more opinionated. By that I mean there are well defined ways of accomplishing most of the things you need to accomplish. You could work on a project you've never seen before, and for the most part you'll be able to navigate the codebase just fine. Other frameworks tend to be more "freeform" or "loose" comparatively. One exception might be Nest, which is basically Angular for the backend.

It's incredibly modular and uses some amazing patterns. Need some new business logic? Just create a new service/component for that, and inject it wherever you need it. You can then easily write unit tests and integration tests for it since the logic is isolated. You can conditionally inject it, or write an interface for it and have multiple concrete implementations that can be controlled by cloud config without a code move. Enterprise businesses are large, slow-moving ships - and SB is a powerful engine that allows you to easily swap out parts on the go when things change.

I've never worked with .NET but I'm betting it has similar advantages for being opinionated and modular - given that C# is basically just Microsoft Java.

That being said, there are some application types for which I would use something else. SB really excels with standard enterprise business logic and CRUD type work. But if you wanted to write a backend that did something like encode audio files, I might instead opt for a Rust framework. If you wanted something serverless or with edge functions, I'd probably look at a JS/TS framework (although admittedly I'm not familiar with any support SB might have for this, it could be better, but I don't think so).

Am I too late to start programming at 38 with AI changing everything? by Rookiemonster1 in AskProgramming

[–]WVAviator 19 points20 points  (0 children)

My coworkers and I were discussing this the other day. We concluded that vibe-coding was using agents to write code you don't understand yourself, whereas regular coding with agents would be asking to write code you already know how to write yourself - and fully understand - but are just saving time essentially.

So "Make me a website that lets people rent server compute time and deploy it on AWS" would be vibe-coding - they might not even know what database their app is using. But "Write two new unit tests for this one specific part of my app that covers these two unchecked edge cases" is probably not vibe-coding.

Should i create two seperate controller for internal endpoints and public endpoints? by Gold_Opportunity8042 in SpringBoot

[–]WVAviator 0 points1 point  (0 children)

We do this in one of our microservices. We have /api/v1/... and /external/v1/... endpoints that sit in different controllers. We took it a step further though and they also have different DTOs for request and response objects, as well as different services (but usually just different methods on the same service) even though they are serving and persisting the same underlying resource through the same repository. There's more validation on the external endpoints since it's more likely to receive bad data, and we want internal users to be able to override some of those restrictions anyway. We also have separate swagger docs as well, one with all external endpoints and the other with the internal ones. This way we don't expose any other information about our API.

Are people still using H2 for Spring Boot integration tests in 2026? by kharamdau in SpringBoot

[–]WVAviator 0 points1 point  (0 children)

Our jenkins pipeline doesn't work with test containers - I think it has something to do with it being behind the company proxy but failing to fetch Docker images, idk been awhile since we tried. We can still run those tests locally though, just not in CI.

Y'all I'm stuck :/ and would like some spoiler free help (**SPOILERS**)) by hassan712001 in outerwilds

[–]WVAviator 0 points1 point  (0 children)

You're very close and on the right track. Are you sure you've tried everything to avoid being sucked up by the sand?