With this growth in cloud computing, three key players—AWS, Azure, and GCP—have emerged, each with its own cloud terminology to describe the features, functionality, and tools of cloud infrastructure.

And that terminology becomes even more complicated when you’re dealing with more than one cloud provider. For example, AWS terminology refers to a data warehouse as “Redshift,” GCP uses the term “BigQuery,” and Azure terminology calls it “SQL data warehouse.”

[–] 7 points 2 years ago*

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.

  • source
  • parent
  • context
  • [–] 7 points 2 years ago (2 children)

    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.

  • source
  • I believe in GitHub branch protection rules, you can set required review by a code owner, as well as set an amount of reviews required.

    You are also able to structure codeowner files and assign codeowners to certain paths within the repo that they "own", rather than all or nothing.

    You are able to set bypass rules for certain individuals, and as repo admin there is a little checkbox on PRs that will appear by default to allow you to ignore the requirements, although it is generally not recommended, but I won't harp on the reasons others have already pointed out.

    disclaimer: I mainly work on a GHES instance, which may be function slightly different than public GH

  • source
  •  

    In this #noslides live-coding session, you’ll learn about JPA Buddy’s functionality for managing your JPA data model from the ground up. JPA Buddy currently works as a plugin, but starting with the 2023.3 release, its main functionality will be bundled into IntelliJ IDEA Ultimate by default.

    I prefer a similar workflow.

    I am a major advocate of keeping CI as simple as possible, and letting build tools do the job they were built to do. Basic builds and unit/component testing. No need for overcomplicating things for the sake of "doing it all in one place".

    CD is where things get dirty, and it really depends on how/what/where you are deploying.

    Generally speaking, if integration testing with external systems is necessary, I like to have contract testing with these systems done during CI, then integration/e2e in an environment that mimics production (bonus points if ephemeral).

  • source
  • parent
  • context
  •  

    The IntelliJ IDEA 2023.2 release introduces AI Assistant to facilitate your development with a set of AI-powered features. The IntelliJ Profiler now provides in-editor hints, making the profiling process more intuitive and informative. This release also includes GitLab integration to help streamline your development workflow.

    https://www.jetbrains.com/idea/whatsnew/2023-2/

    [–] 1 point 3 years ago* (last edited 3 years ago) (2 children)

    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

  • source
  • [–] 1 point 3 years ago (2 children)

    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.

  • source
  •  

    Links to certain topics in video description

    This year, JetBrains partnered with Google Cloud and DORA to put together the 2022 State of DevOps report. We are hosting a livestream to present the key takeaways and discuss how to achieve successful software delivery and operational performance.

    In this livestream, we will:

    Introduce the report, along with some highlights from the newly released Accelerate State of DevOps Report from Google Cloud. Discuss the operational performance practices currently employed by JetBrains.

     

    A cloud-native network function or CNF is defined as a software service that fulfills network functionalities while adhering to cloud-native design principles without requiring any hardware or appliance to house it. This article explains the architecture and working of a cloud-native network function. It also provides examples of commonly-used CNFs.

    Developing an IntelliJ Plugin (plugins.jetbrains.com)
     

    IntelliJ Platform plugins can be developed by using either IntelliJ IDEA Community Edition or IntelliJ IDEA Ultimate as your IDE. Both include the complete set of plugin development tools. It is highly recommended to always use the latest available version, as the plugin development tooling support from bundled Plugin DevKit continues supporting new features.

    submitted 3 years ago* (last edited 3 years ago) by [M] to c/devops@programming.dev
     

    Rolling Deployment

    A rolling deployment strategy slowly replaces previous versions of an application with new versions by entirely switching out the environment in which the application is running. For example, containers running new versions of an application may take the place of containers running previous versions of an application....

    Canary Deployment

    To avoid risk, a canary deployment uses a phased approach in which traffic is shifted in increments. With the aid of a router or load balancer, new application code is released to a small group of users so it can be tested. Metrics measure the success of the new iteration....

    Blue-Green Deployment

    Blue-Green deployments eliminate downtime by running 2 identical production environments, one called Blue and the other called Green. Only one of the environments is live at any one time and handles all production traffic....

    A/B Deployment

    An A/B deployment strategy allows your company to test 2 versions of an application on users. The “A” version would be the old version, while the “B” version would contain a new or revised feature. Each version would be released to a subset of users for testing and feedback....

    view more: next ›