Comment on
LPT: ChatGPT is incredible for generating and evaluating regex
Just make sure to test the regex instead of blindly slapping it in assuming it works 🙂
Comment on
LPT: ChatGPT is incredible for generating and evaluating regex
Just make sure to test the regex instead of blindly slapping it in assuming it works 🙂
Comment on
Programming communities already exist
I won't parrot the reasons, I think other comments captured that.
However, I would MUCH rather share links in professional circles to something called programming.dev that is specifically an instance about programming rather than "choose your random generic instance" that has porn, memes, shit posts, etc. and oh look, a programming community too.
Comment on
Community Member++
Free penetration testing 📈
Comment on
My back hurts
not production ready vs. production ready
Comment on
Programming communities already exist
Reply in thread
Absolutely, which is why I never linked to Reddit. So I'm already loving and prefferring lemmy over Reddit 100%!
Comment on
Microservice architecture, they said. It will be fun, they said.
Reply in thread
I think we have ~400 microservices of varying types that deploy in many ways to many places (big proponents of using the right tools for the job rather than forcing preferred tools) and definitely in the last block. Although, as a DevOps guy my life would be a lot easier if we had a handful of monster monoliths, I understand it doesn't make sense for our scale. I can fantasize though, and this meme hits extremely close to home 😅
Tangentially, at my previous job we were in blocks 4 and 5 of transitioning away from a single monolith. Major issues arise when a "Java only shop for 20 years" start down this path with an extreme mindset of "we only use Java". Java kubernetes controllers? lmfao, no thanks (they wanted them though 😑)
Comment on
Auth
Reply in thread
AutheNtication vs. AuthoriZation, I believe
Comment on
Learn x86-64 assembly by writing a GUI from scratch
The original Roller Coaster Tycoon is famously written in assembly.
Sawyer wrote 99% of the code for RollerCoaster Tycoon in assembly code for the Microsoft Macro Assembler, with the remaining one percent written in C.
This always blew my mind, especially when struggling around with things like cmu bomblab back in the day.
I haven't thought about assembly in a long time, and not sure if I want to ;P
Looks like a nice detailed walkthrough though!
Comment on
Is anyone migrating from Java to Kotlin at work?
Yes, I write SpringBoot microservices and IntelliJ plugins using Kotlin. Any new code is Kotlin, but there is still a ton of Java, which I don't consider "legacy", since it works, and if I can sanely add Kotlin when necessary, I don't see the need for "full rewrite".
You may get more traction by asking the Kotlin community
Comment on
Random Question: is it weird I don't like pair programming?
Reply in thread
I have found it quite effective while pair programming (senior to junior mentorship) to say OUT LOUD exactly what I'm changing and why I'm changing that. This allows others to more easily follow your train of thought and can lead to good discussions rather than turning PRs into essays.
However, as other comments have mentioned, this can get exhausting.
Comment on
I need to buy laptop
IDEs for this purpose (android dev) are not small little text editors that work well with limited resources. Keep that in mind. You will also need to consider things like compilation and phone emulation, which can also be resource intensive.
I highly recommend looking for something that is built with a Linux distro by default. This will make your life easier in the long run, although it may not be a simple task up front if you are not familiar with Linux.
I don't actually have a Linux laptop, it is a desktop, but I use my Steam deck as a Linux laptop, and can almost do everything I want to, although steamos will require some weirdness similar to Windows. I use IntelliJ Ultimate on my steam deck and can successfully work on smaller scale Go and Kotlin projects while running IntelliJ low power mode.
Most larger dev shops (in the JVM world) will just hand out whatever is the current top ~$3000 MacBook pro (for reasons). This leads to a lot of devs using OSx at work and Linux (at home) for personal projects. An apple computer of any type can help prepare for this inevitability, if Linux is out of the options. I personally dislike this, as I am not an Apple fan, but this is what I have experienced.
Although I use Windows for some personal development, there are so many hoops that one has to jump through to get Windows working properly for advanced things, it almost isn't worth it and requires heavy windows development knowledge, and is probably best to just get a MacBook (of whatever type).
Comment on
What's your opinion on git rebase vs git merge?
I rebase my dev branches on main to get rid of garbage commit messages due to me being lazy.
Squash and merge PRs into main, no merge commits allowed.
I think there are reasonable arguments for allowing rebase and merge to main, but it often doesn't apply for me.
Merge commits in main will break a lot of out of the box GitOps tools.
Comment on
Microservice architecture, they said. It will be fun, they said.
Reply in thread
Just tell the security team to handle it 😎
(My security team would NOT be amused by this joke suggestion)
Comment on
With AI looming, is there still space for new coders?
Reply in thread
I find it very difficult to recommend generative ai as a learning tool (specifically for juniors) as it often spits out terrible code (or even straight up not working) which could be mistaken as "good" code. I think the more experienced a dev is, the better it is to use more like a pair programmer.
The problem is it cannot go back and correct/improve already generated output unless prompted to. It is getting better and better, but it is still an overly glorified template generator, for the most part, that often includes import statements from packages that don't exist, one off functions that could have been inline (cannot go back and correct itself), and numerous garbage variables that are referenced only once and take up heap space for no seemingly no good reason.
Mainly speaking on GPT4, CoPilot is better, both have licensing concerns (of where did it get this code from) if you are creating something real and not for fun.
Comment on
Do your routine backend code releases require downtime?
Do not
There are deployment methodologies that exists to avoid downtime which I posted about in [email protected]
Thanks for the content idea :)
TL;DR;
Rolling Deployment
Canary Deployment
Blue-Green Deployment
A/B Deployment
Comment on
An opinion on what's a good general-purpose programming language
Reply in thread
Interpreted language != Compiled language
Comment on
the myth of type safety
Reply in thread
Laughs in object
Comment on
What keyboard you recommend for coding?
I have been using "gaming" keyboards for coding for ~10 years now. The only thing to be wary of imo, is keebs that have "extra customizable keys" on them and break conformity from a standard layout. Depends on the device, but Logitech will call them "G keys", for example, and often stick them on the far left of the board, left of tab/caps/L shift. Makes life a lot more difficult if not gaming.
Outside of that, I think calling something a "gaming" keyboard is more of a marketing tactic to up the price. It's hard to not recommend mechanical, but that sounds out of budget and often hard to do wireless/bluetooth, but personally I think mech is the top priority.
What I have seen a lot of peers do is wait to see whatever keyboard the get in office, then buy the same one for home for consistency, rather than dragging a personal one back and forth. Often companies will offer basic boards like logitech K270, K350, or K650. Not amazing, not terrible, and most likely fit in your described criteria.
Comment on
What's the biggest docker footgun you've experienced?
Be really careful when building images that require secrets for build configuration. Secrets can be passed in as build args, but you MUST UNSET THEM IN THE DOCKERFILE and then repass them in as environment variables at runtime (or else you are leaking your secrets with your image).
Also, image != container. Image is the thing you publish to a registry (e.g. dockerhub). Container is an instance of an image.
Comment on
Senior Devs in huge corps: Do you even code?
I am constantly fighting for more time coding. If you were to look at my calendar, there's only ~5 hours per week of open time. My customers are our developers, however, so for the most part I am at least in meetings about code and SDLC rather than random feature refinements and such.