Best of CI/CDOctober 2024

  1. 1
    Video
    Avatar of youtubeYouTube·2y

    Next.js Full-Stack School Management App Full Tutorial | Role Based School Dashboard Project

    This guide walks through creating a full-stack school management application using Next.js, implementing role-based dashboards for different users (admin, teacher, student, parent) with specific functionalities such as protected routes, pagination, and search functionalities. The backend is built using PostgreSQL and Prisma ORM, and deployed with Docker and Hostinger. The guide covers setting up the database schema, handling various user roles, and deploying the application efficiently.

  2. 2
    Video
    Avatar of bytebytegoByteByteGo·2y

    Everything You NEED to KNOW About Web Applications

    Explore the essential components of a production-ready web application. Learn about the roles of CI/CD pipelines, load balancers, reverse proxies, CDNs, web application servers, APIs, databases, caching systems, job workers, and search services like Elasticsearch. Understand the importance of monitoring tools and alerting platforms in maintaining a scalable, reliable system.

  3. 3
    Video
    Avatar of wdsWeb Dev Simplified·2y

    How To Build Feature Flags Like A Senior Dev In 20 Minutes

    Feature flags are not just for toggling features on and off; they offer many benefits including acting as kill switches, enabling beta and A/B testing, and facilitating safer refactors. The post explains the pros and cons of various feature flag implementations such as in-code, environment variables, databases, and SaaS, and provides code examples for simple to advanced feature flag setups in TypeScript and Next.js.

  4. 4
    Video
    Avatar of samwitteveenaiSam Witteveen·2y

    Ollama + HuggingFace - 45,000 New Models

    Ollama and Hugging Face have announced a collaboration allowing access to GGUF models on Hugging Face's hub, totaling around 45,000 models. Users can easily run these models using the Ollama run command, with options to choose different levels of model quantization (from 2-bit to 8-bit). The post provides guidance on selecting the appropriate quantization format based on performance and quality trade-offs. This new feature streamlines the process of deploying diverse models quickly and efficiently.

  5. 5
    Article
    Avatar of microservicesioMicroservices.io·2y

    Microservices rules #10: Make smaller, safer, and reversible changes - part 3

    Making smaller, safer, and reversible changes is crucial for the production deployment of microservices. This approach minimizes risks and ensures system stability.

  6. 6
    Article
    Avatar of dhhDavid Heinemeier Hansson·2y

    Kamal 2: Thou need not PaaS

    Kamal 2 is a significant upgrade to the tool that simplifies deploying containerized applications on your own hardware, eliminating the need for complex solutions like Kubernetes. It supports deploying multiple applications on a single server and auto-provisions SSL certificates via Let's Encrypt. Kamal 2 is versatile, working with dedicated servers, cloud VMs, and inexpensive VPS setups, allowing seamless transitions without hefty migration costs. A demo showcases deploying a Go and a Rails application within 30 minutes.

  7. 7
    Article
    Avatar of threedotslabsThree Dots Labs·2y

    Optimising and Visualising Go Tests Parallelism: Why more cores don't speed up your Go tests

    Optimizing Go tests can significantly speed up their execution. Visualizing test output is crucial for understanding inefficiencies, which can be addressed by using tools like 'vgt'. The post highlights the nuances of utilizing parallelism in Go tests using `t.Parallel()` and the `-parallel` flag, showcasing how default settings often don't maximize test speed due to CPU-bound limitations. It also explains best practices for configuring and linting tests to run efficiently in CI environments.

  8. 8
    Article
    Avatar of spaceliftSpacelift·2y

    DevOps Implementation Guide [Plan, Strategy & Steps]

    Implementing DevOps can help build software iteratively and ship changes faster, providing a competitive edge. The guide covers the key steps for a successful DevOps strategy, including gaining organizational buy-in, defining objectives, shifting tasks left, automating processes, embracing continuous feedback, and regular review and iteration. It's crucial to establish a culture of collaboration, clear objectives, and continuous measurement for long-term success.

  9. 9
    Video
    Avatar of continuousdeliveryContinuous Delivery·2y

    Building The PERFECT Software Developer With 10 SKILLS

    Great software developers are not only technically proficient but also excel in communication, collaboration, continuous improvement, and decision-making. They work in small steps, prioritize outcomes, design from a user perspective, and maintain high standards even in mundane tasks. Familiarity with multiple tech stacks, creativity, and a focus on mitigating potential failures are crucial. Continuous learning and mentorship are key characteristics of exceptional developers.

  10. 10
    Article
    Avatar of tdsTowards Data Science·2y

    Master Embedded Development with Rust and no_std

    Running Rust on embedded systems using no_std can optimize for environments with constrained resources like microcontrollers. Practical steps include ensuring compatibility with WASM and WASI, identifying and adjusting dependencies, marking main code with no_std and alloc, and using Cargo features to toggle std usage. Testing embedded systems often requires tools like QEMU. Despite challenges, Rust’s “if it compiles, it works” philosophy is highly applicable for embedded development.

  11. 11
    Article
    Avatar of spaceliftSpacelift·2y

    DevOps Tech Stack : How to Choose the Right Tools & Solutions

    DevOps enhances software delivery by combining automation tools and processes, fostering collaboration between developers and operators. A well-constructed DevOps tech stack includes components such as version control systems, CI/CD servers, IaC tools, internal developer platforms, automated testing tools, observability suites, cloud solutions, container orchestrators, and security scanners. Key factors to consider when selecting these tools include integration capabilities, flexibility, ease of use, scalability, costs, and support. Regular monitoring and iterative improvements help ensure the stack evolves with your team's needs.

  12. 12
    Article
    Avatar of simplethreadSimple Thread·2y

    Seeding a Postgres Database in GitHub Actions Without Storing SQL in GitLFS

    Setting up a Postgres database in a test environment usually avoids preloading data, but sometimes budget constraints require a workaround. To avoid using GitLFS for a large seed data file, compress it with `tar` and `gzip` before committing it to the repository. During the GitHub Actions workflow, decompress the file before running tests. If you encounter a 'no space left on device' error, increase the shared memory size (`shm-size`) to resolve the issue.

  13. 13
    Article
    Avatar of itnextITNEXT·2y

    Advantages of storing configuration in container registries rather than git

    Storing configuration files in container registries offers several advantages over using git, such as better scalability, performance, and security. Container registries support rich metadata, signatures, policy enforcement, and standard APIs, making them highly suitable for managing deployable assets. This approach aligns with current trends towards using universal artifact storage and simplifies the configuration management toolchain.

  14. 14
    Article
    Avatar of java_libhuntAwesome Java Newsletter·2y

    Five ways to speed up your Maven builds

    Learn five strategies to significantly speed up Apache Maven build times, including the use of profiles, concurrent testing, parallel builds, skipping unnecessary steps, and leveraging build caching. By applying these techniques to a representative project, build time was reduced from 1.5 minutes to 7.5 seconds, freeing up developers to focus more on coding.

  15. 15
    Article
    Avatar of communityCommunity Picks·2y

    Mastering GitLab CI/CD with Advanced Configuration Techniques

    The post provides advanced configuration techniques for mastering GitLab CI/CD. It covers the structure and key elements of the .gitlab-ci.yml file, including stages, jobs, and scripts, along with Docker integration. It also highlights best practices like modular configuration and security measures, as well as advanced features such as dynamic environment management and conditional job execution. Continuous learning and integration of new tools are emphasized to refine deployment strategies and improve automation.

  16. 16
    Article
    Avatar of faunFaun·2y

    Kargo — Next-Gen Continuous Delivery for Kubernetes

    Kargo is a next-generation continuous delivery platform designed for Kubernetes. It builds on GitOps principles to automate and orchestrate application life cycles from development to production. Key features include seamless integration with GitOps, progressive rollouts, and deep integration with Argo CD, ensuring smooth, stage-by-stage deployments and simplified application lifecycle management.

  17. 17
    Article
    Avatar of devtronDevtron·2y

    The Complete Guide to CircleCI Pipelines for Kubernetes

    Manually repeating build and test tasks can be time-consuming for developers. CircleCI automates these tasks with its robust CI pipelines, integrating seamlessly with your Git repository. It supports various environments like Linux, MacOS, Windows, and Kubernetes. This guide details how to create CI pipelines in CircleCI to build, test, and deploy applications to Kubernetes, utilizing features like orbs, workflows, and custom scripts. The post also covers the complexities of deploying with CircleCI and suggests considering alternative tools for deployment and management tasks.

  18. 18
    Article
    Avatar of communityCommunity Picks·2y

    Building an MLOps pipeline with Dagger.io and KitOps

    Over 85% of machine learning models never reach production due to the disconnect between data scientists, ML engineers, and DevOps engineers. MLOps pipelines address this by integrating version control, CI/CD, model monitoring, and integration testing. Dagger.io offers a way to define pipelines as code and integrate CI/CD and monitoring, while KitOps simplifies the packaging and management of model dependencies. This guide provides steps to create an ML pipeline using these tools, from setting up prerequisites to integrating with CI/CD platforms like GitHub Actions.

  19. 19
    Article
    Avatar of communityCommunity Picks·2y

    DevOps and Platform Engineering Dynamics

    In exploring the dynamics between DevOps and Platform Engineering, it is highlighted that DevOps focuses on bridging development and operations through a collaborative culture, automation, and CI/CD pipelines to improve software delivery speed and quality. Platform Engineering, on the other hand, emphasizes building Internal Developer Platforms (IDPs) to streamline developers' access to infrastructure and automate setups, thus enhancing productivity. Both disciplines are complementary, with each playing a critical role in organizational success through continuous improvement and innovation in software delivery processes.

  20. 20
    Article
    Avatar of detlifeData Engineer Things·2y

    The Ultimate Guide to CI/CD for Data Engineering in Databricks

    Implementing Continuous Integration and Continuous Deployment (CI/CD) for data engineering in Databricks involves unique challenges, such as the interdependence of code, data, and compute resources. Solutions include using Databricks' Git integration, Asset Bundles, and other tools for automating builds, tests, and deployments. Setting up CI/CD requires managing environments, code, data assets, and complex system integrations. Proper testing and handling of data state management are crucial for effective CI/CD pipelines in data engineering.

  21. 21
    Article
    Avatar of communityCommunity Picks·2y

    Simplify Node.js Distribution: Converting to a Single Executable with pkg

    Learn how to convert Node.js code into a standalone executable using the pkg module for easier deployment. The pkg module allows you to package Node.js projects into executables, which can be useful for deployment, sharing code with users without Node.js, or hiding source code. Installing pkg is simple, and using it involves running commands to package your app. You can also customize packaging via package.json. However, there are limitations such as difficulty with native modules, dynamic requires, and read-only snapshot filesystems. Despite these, pkg is valuable for server apps, CLI tools, and distribution without needing Node.js installed.

  22. 22
    Article
    Avatar of devtronDevtron·2y

    Kubernetes CI/CD Pipeline with Jenkins and Devtron

    The post explores the challenges of using Jenkins for Continuous Deployments (CD) in Kubernetes environments, emphasizing Jenkins' limitations in scripting, configuration management, security, and production-grade capabilities. It introduces Devtron as a robust solution for CD operations, detailing its features like approval-based deployments, policy-driven pipelines, and vulnerability scanning. The post offers a step-by-step guide on integrating Jenkins with Devtron to manage CI/CD workflows effectively, ensuring secure and efficient deployments across Kubernetes clusters.

  23. 23
    Video
    Avatar of communityCommunity Picks·2y

    What is DevOps? REALLY understand it | DevOps vs SRE

    The post delves into the concept of DevOps, explaining why it is needed in the application release process and the challenges it aims to solve. It outlines the evolution of DevOps as a separate role, detailing the tasks and responsibilities of a DevOps engineer. Additionally, the post compares DevOps with Site Reliability Engineering (SRE) and touches on critical concepts like continuous integration and continuous delivery (CI/CD), automated testing, and the importance of collaboration between development and operations teams.

  24. 24
    Article
    Avatar of newstackThe New Stack·2y

    Architecting the Modern App: A Case for Simplicity

    The increasing complexity of cloud native tools can lead to overly complicated solutions. It's often better to use well-established, boring technologies alongside new tools to minimize technical debt and ensure stability. This approach allows for easier deployments and support, leveraging familiar and reliable solutions without succumbing to the allure of the latest tech trends.

  25. 25
    Article
    Avatar of freecodecampfreeCodeCamp·2y

    How to Deploy Your Project On Vercel With A Custom Domain

    Learn how to deploy your web project on Vercel with a custom domain. The post covers an overview of Vercel, the importance of having a domain name, and a step-by-step guide on setting up a Vercel account, deploying your project, and configuring a custom domain using Namecheap or any other domain provider.