News AggregatorThe Engineer's Complete Guide to Backlog GroomingAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) You might be an organized checklist kinda person, or you might be hopelessly unorganized like the rest of us. It’s generally not such a big deal until you get overloaded with tasks and your team grows, making things even more confusing as you can’t decide each day what to prioritize. Fortunately, there’s a way forward. View more...A Tentative Comparison of Fault Tolerance Libraries on the JVMAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) If you're implementing microservices or not, the chances are that you're calling HTTP endpoints. With HTTP calls, a lot of things can go wrong. Experienced developers plan for this and design beyond just the happy path. In general, fault tolerance encompasses the following features: Retry Timeout Circuit Breaker Fallback Rate Limiter to avoid server-side 429 responses Bulkhead: Rate Limiter limits the number of calls in a determined timeframe, while Bulkhead limits the number of concurrent calls A couple of libraries implement these features on the JVM. In this post, we will look at Microprofile Fault Tolerance, Failsafe, and Resilience4J. View more...Mule CloudHub Connector: Part 1Aggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) What are CloudHub Connectors? This helps you connect to CloudHub APIs through Mule applications. In total, there are 5 features provided by this connector as listed below: Get Application List Applications Create Notification List Notifications Mark Notification In this article, we are going to look at the first 2 features using a simple demo. View more...Streaming Data Exchange With Kafka and a Data Mesh in MotionAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) Data Mesh is a new architecture paradigm that gets a lot of buzz these days. Every data and platform vendor describes how to build the best Data Mesh with their platform. The Data Mesh story includes cloud providers like AWS, data analytics vendors like Databricks and Snowflake, and Event Streaming solutions like Confluent. This blog post looks into this principle deeper to explore why no single technology is the perfect fit to build a Data Mesh. Examples show why an open and scalable decentralized real-time platform like Apache Kafka is often the heart of the Data Mesh infrastructure, complemented by many other data platforms, to solve business problems. Data at Rest vs. Data in Motion Before we get into the Data Mesh discussion, it is crucial to clarify the difference and relevance of Data at Rest and Data in Motion: View more...API Prototyping with PostmanAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) Introduction Whether you’re a longtime Postman developer or new to the platform, Postman brings you all the tools you need to make the process easier, faster, and more streamlined. In this article, we’ll show how Postman can help you start building the core of your API-driven integration on both sides of the API—either as the provider or the consumer. View more...How to Make Your Scrum Master FailAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) Scrum has proven time and again to be the most popular framework for software development. Given that software is eating the world, a seasoned Scrum Master is nowadays in high demand. And that demand causes the market entry of new professionals from other project management branches, probably believing that reading one or two Scrum books will be sufficient. Which makes any Scrum Master interview a challenging task. A good starting point, though, is to ask a candidate to walk in the shoes of an imaginary opponent trying to make the Scrum Master fail by culturally accepted means. Suppose you are looking to fill a Scrum Master (or agile coach) position in your organization. In that case, you may find the following interview questions helpful to identify the right candidate. They are derived from my sixteen years of practical experience with XP and Scrum, serving both as Product Owner and Scrum Master, and my training experience as a Professional Scrum Trainer with Scrum.org. Also, I have interviewed dozens of Scrum Master candidates on behalf of my clients. View more...Best Technical Blogging Tips in Under 30 SecondsAggregated on: Mon Jan 10 2022 16:49:35 GMT+0000 (Coordinated Universal Time) Before you start writing, have the answers to the questions below. You can revise, iterate the answers as you write. This will make your blog crisp and help you to ship. Question Who’s the audience? What audience questions will the blog answer? YOU CAN STOP HERE. Start thinking and writing. Everything else is secondary – Tips, tricks, rules, and all. View more...Using GraphQL Java With SpringAggregated on: Mon Jan 10 2022 13:34:35 GMT+0000 (Coordinated Universal Time) GraphQL Java is one of the most popular GraphQL server-side implementations for Java that I’ve found (with over 5k stars at the time of writing). If you’re planning to expose a GraphQL API from a Java or JVM application, then this is an excellent library to start using. This blog post will cover how to use GraphQL Java within a Spring application that exposes an endpoint for clients to send queries to. GraphQL Java does have its own official documentation covering this subject; however, I found it a bit too simplistic, which made it harder for me to wrap my head around it. I hope you don’t think the same about the content of this post, although I guess you could write your own that is even more complicated than my examples! View more...Multiple Entry Points for the NgxSimpleCharts Angular LibraryAggregated on: Mon Jan 10 2022 13:34:35 GMT+0000 (Coordinated Universal Time) Angular Libraries can grow to a significant size. An Angular Library that is created with 'ng generate library ngx-simple-charts' is a single piece of code that will be included in the first module that includes/uses it. That module probably will impact the first initial useful paint. To solve that problem multiple entry points can be used. These entry points provide the feature to include only the code of the entry point in the module. Lazy loaded modules can include the code of other entry points. That makes it possible to spread out the code to the modules that use it and lowers the size of the modules to the necessary size. View more...How Zero Trust Will Change Incident ResponseAggregated on: Mon Jan 10 2022 10:49:35 GMT+0000 (Coordinated Universal Time) Image Source: Pixabay What Is Incident Response? Incident response involves responding to potential threats, such as unauthorized access to a corporate network. An event can be a sign of a breach or a false positive. However, it still requires investigation to determine the appropriate response. View more...Enterprise Architecture Governance: A Holistic ViewAggregated on: Sun Jan 09 2022 16:49:34 GMT+0000 (Coordinated Universal Time) Introduction Governance is the way in which an organization is run and controlled [1]. Governance is the way rules, norms, and actions are structured, sustained, regulated, and held accountable [2]. Generally, governance is categorized into three types based on the nature of the organization, type of outcomes desired, and practical agenda of the organization [3-12]. View more...Why a Developer Should Be a Bit of a Cloud Engineer: The Need for Cloud ServicesAggregated on: Sat Jan 08 2022 16:49:34 GMT+0000 (Coordinated Universal Time) A Short Background I characterize myself as a slothful engineer due to the specificity of my behavior: rather than duplicating, mentioning different issues in my project, and setting up new appliances to be more efficient, I would be grateful for the opportunity and get back on my way. My first job as a professional started in the entertainment industry where I had to do my projects really quickly before the deadline was over; moreover, it was not possible to use high-end tools or spend a lot of time researching and integrating peculiar properties. That is the reason why I decided to spend some overtime hours researching and showing my teammates how a few specific tools could improve the process, and show how to have a greater impact in solving technical problems. View more...Java 17 for the ImpatientAggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) I have been working on Java 8 for a long time and, now, Java 17 has been released, so let's have a quick look at this article which focuses on the latest Java 17 LTS features. There are lots of features and improvements that have been introduced, however, in this article, we will focus on a limited set: View more...Develop a Spring Boot REST API in AWS: PART 4 (CodePipeline / CI/CD)Aggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) This is the last video (part 4) in this demo series. We will demonstrate how to create the whole CICD pipeline in this tutorial video. It involves the following steps: View more...The Quickest Way to Create an Android QR Code ScannerAggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) A QR code scanner application primarily consists of two parts: camera preview and QR code scanning. There are many Android QR code scanner apps downloadable in the Google Play Store. However, it is more interesting to create a QR code scanner by yourself than to use an existing one. This article aims to reveal the quickest way to create an Android QR code scanner. You will see how to step by step implement camera preview, as well as how to integrate QR code scanning SDK. Prerequisites The following Android libraries are required in order to implement the QR code scanner. You can feel free to replace them with your own libraries. View more...Engineering Manager: Beyond LeadershipAggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) This is a follow-up article in the Engineering Manager series, My First Thoughts as an Engineering Manager and Engineering Manager: Do Not Be a Hero. Nowadays, I see more and more the words "leader" and "leadership". Often, I ask myself what these words mean for the people and the companies: What is a leader? How many kinds of leaders are? What are the companies looking for? Do we need so many leaders? Can we hire leaders? In this article, I am not going to talk about a leader in deep because I feel there are many articles about it, but how this role is overrated and why an Engineering Manager is not the synonym of a "leader". View more...Business Delegate Design Pattern in JavaAggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) In the video below, we take a closer look at the Business Delegate Design Pattern in Java. This tutorial includes an introduction, a real-time example, implementation, and key points. Let's get started! View more...What Is Agile Development (Part 2): Agile in SAPAggregated on: Sat Jan 08 2022 16:19:34 GMT+0000 (Coordinated Universal Time) SAP is trusted the world over by leading organizations to handle critical business processes and functions. Unfortunately, making changes to SAP systems in response to evolving business needs can be tedious and cumbersome. Much of the rest of the software development world has adopted new methodologies, such as agile, that enable them to deliver changes and updates to critical systems more quickly and efficiently. View more...Debunking Four Metadata MythsAggregated on: Fri Jan 07 2022 22:04:34 GMT+0000 (Coordinated Universal Time) Data is being accumulated at an alarming rate due to the growth of unstructured data. Within that is metadata, which allows us to quickly find data files by identifying certain properties. It wasn’t until recently that developers had to pay closer attention due to the overwhelming effect it was having on our data engines. Metadata used to just be a thing that could be stored in memory behind the scenes without any worry, but its expansion presents the growing concern of where to store it and how to manage it. Every database system, whether SQL or NoSQL, uses a data engine (aka storage engine), embedded or not, to manage how data is stored. Our ever-growing volume of data has outgrown our data engines’ infrastructures and with that, they are stretched to their limits and forced to make painful trade-offs necessary to support the scale and performance requirements of modern datasets. View more...How To Decrease Risk of Presenteeism When Ending Remote WorkingAggregated on: Fri Jan 07 2022 15:34:33 GMT+0000 (Coordinated Universal Time) Absenteeism has always been considered a big problem in business workplaces, and most entrepreneurs try to deal with this to ensure that their organization remains productive. When the pandemic-led crisis forced many organizations to embrace work from home or remote work protocols, another crisis cropped up to thwart productivity. This new problem is called presenteeism. Presenteeism means showing presence while not remaining productive enough as desired for the job role. The problem has particularly become rampant in some employees working remotely or from home. When hiring remote developers for a project, you see all the team members present on the web. Still, the output is not satisfactory, making the company doubt the work ethics of respective team members. View more...SQL vs NoSQL Database – A Complete ComparisonAggregated on: Fri Jan 07 2022 15:34:33 GMT+0000 (Coordinated Universal Time) There are two main categories of databases in use in the developing world today, commonly referred to as SQL and NoSQL. In this article, we will compare an SQL vs. NoSQL database based on its pros and cons. SQL, or Structured Query Language, is the universally known query language for relational databases. SQL databases make it simpler to work with structured data in a database through CRUD operations. CRUD stands for create, retrieve (or read), update, and delete – the primary operations for manipulating data. View more...How to Design a Better Decision Tree With PruningAggregated on: Fri Jan 07 2022 15:34:33 GMT+0000 (Coordinated Universal Time) Decision tree (DT) analysis is a general and predictive modeling tool for machine learning. It is one of the simplest and most useful structures for machine learning. As the name indicates, DTs are trees of decisions. By using an algorithm approach for splitting data sets according to different conditions, decision trees are constructed. A decision tree is one of the commonly used and functional techniques for supervised learning. But before moving on to designing decision trees with pruning, let’s understand its true concept. View more...3 Types of User Communication APIs and When to Use ThemAggregated on: Fri Jan 07 2022 15:04:33 GMT+0000 (Coordinated Universal Time) If you’re an engineer who’s been tasked with planning out your application’s communication strategy, this post will help you map out the landscape. You’ll come away understanding the three core types of user communication APIs and in which circumstances you should use them to create the best possible end-user experience. As modern applications have become increasingly feature-rich and performant, user expectations are at an all-time high. Failure to communicate key information or displaying out-of-date information frustrates users and causes a loss of trust. Think about the last time you ordered something online: if you didn’t receive your order confirmation within seconds, you probably began to worry that something went wrong. Users require product transparency for consistent use. View more...Import Data From Hadoop Into CockroachDBAggregated on: Fri Jan 07 2022 14:34:33 GMT+0000 (Coordinated Universal Time) CockroachDB can natively import data from HTTP endpoints, object storage with respective APIs, and local/NFS mounts. The full list of supported schemes can be found here. It does not support the HDFS file scheme and we're left to our wild imagination to find alternatives. As previously discussed, the Hadoop community is working on Hadoop Ozone, a native scalable object store with S3 API compatibility. For reference, here's my article demonstrating CockroachDB and Ozone integration. The limitation here is that you need to run Hadoop 3 to get access to it. What if you're on Hadoop 2? There are several choices I can think of off the top of my head. One approach is to expose webhdfs and IMPORT using an http endpoint. The second option is to leverage previously discussed Minio to expose HDFS via HTTP or S3. Today, we're going to look at both approaches. My setup consists of a single-node pseudo-distributed Hadoop cluster with Apache Hadoop 2.10.0 running inside a VM provisioned by Vagrant. Minio runs as a service inside the VM and CockroachDB is running inside a docker container on my host machine. Information on CockroachDB can be found here. Information on Hadoop Ozone can be found here. Information on Minio can be found here. Upload a file to HDFS. I have a CSV file I created with my favorite data generator tool, Mockaroo. curl "https://api.mockaroo.com/api/38ef0ea0?count=1000&key=a2efab40" > "part5.csv" hdfs dfs -mkdir /data hdfs dfs -chmod -R 777 /data hdfs dfs -put part5.csv /data View more...Databricks vs Snowflake: The Definitive GuideAggregated on: Fri Jan 07 2022 14:34:33 GMT+0000 (Coordinated Universal Time) There is a lot of discussion surrounding Snowflake and Databricks in determining which modern cloud solution is better for analytics. However, both solutions were purpose-built to handle different tasks, so neither should be compared from an “apples to apples” perspective. With that in mind, I’ll do my best to break down some of the core differences between the two and share the pros/cons of each as unbiasedly as possible. Before diving into the weeds of Snowflake and Databricks though, it is important to understand the overall ecosystem. View more...What Is Zero Trust Security and Why Is It Necessary?Aggregated on: Fri Jan 07 2022 14:04:33 GMT+0000 (Coordinated Universal Time) What is Zero Trust? Zero Trust is a security model that enables the DevSecOps team to deal with vulnerabilities that have arisen with massive digital transformations like cloud adoption, decentralized infrastructure, and container technologies. Though these have enabled teams to deliver products and services efficiently, the traditional security models pose a massive threat. The idea of trusting anyone inside the organization’s network is a massive flaw that needed rethinking. The core of the Zero Trust security model is to trust no one and always verify. This approach establishes a hard rule to always validate every digital interaction. Zero Trust framework assumes an organization’s network security is always at risk to external and internal threats. It helps organize and strategize a thorough approach to counter those threats. View more...Signs and Portents for 2022Aggregated on: Fri Jan 07 2022 10:34:33 GMT+0000 (Coordinated Universal Time) In this post, Head of Learning at Instil Software, Garth Gilmour, will make predictions for the tech industry in 2022. Introduction Back in ye olden days (circa 2015), I first wrote a December article that made unreliable and vainglorious predictions about the future. What started as a yearly custom soon became an annual tradition. You might like to review my 2020 effort to see how reliable my crystal ball is. View more...Inspecting Joins in PostgreSQLAggregated on: Fri Jan 07 2022 02:49:33 GMT+0000 (Coordinated Universal Time) Introduction Relational databases distribute their data across many tables by normalization or according to business entities. This makes maintaining a growing database schema easier. Real-world queries often span across multiple tables, and hence joining these tables is inevitable. PostgreSQL uses many algorithms to join tables. In this article, we will see how joins work behind the scenes from a planner perspective and understand how to optimize them. View more...Protect Your Invariants!Aggregated on: Fri Jan 07 2022 02:49:33 GMT+0000 (Coordinated Universal Time) How do you handle constraints and validation inside your application? Most developers put this logic somewhere close to their application's boundary. Actually, this prevents them from having a rich domain model that could ensure consistency. Developers tend to get confused when they need to find a good place for their business logic. I suspect that most probably the reasons are related to all those bad examples circulating in the documentations of popular frameworks and bad habits from coding in old-fashioned enterprise platforms like J2EE. Most of the time, they're afraid to keep these vital pieces of information in the language elements most relevant to the target domain: I'm talking about the simple classes reflecting the "nouns" of the business logic. Often, you see something like the example below: View more...Community AMA: Bryan Finster and Continuous DeliveryAggregated on: Fri Jan 07 2022 00:34:33 GMT+0000 (Coordinated Universal Time) Continuous Delivery isn’t about how fast you can deliver, it’s about the outcome your delivery achieves. Bryan Finster, author of the 5-minute DevOps series and founder of the DevOps Dojo, joined our Dev Interrupted Discord community to answer your questions about outcome-based development, continuous delivery, and why failing small is better than failing fast. Bryan is currently a Distinguished Engineer at Defense Unicorns but has also worked for Walmart as a systems analyst and eventually became a staff software engineer for Walmart Labs. He had previously appeared on the Dev Interrupted Podcast to further talk about these subjects as well as the most common pitfalls dev teams find when trying to optimize their delivery process. Listen to the episode here: View more...How To Use SingleStore Pipelines With Kafka, Part 1 of 3Aggregated on: Thu Jan 06 2022 23:34:33 GMT+0000 (Coordinated Universal Time) Abstract In this article series, we'll look at a compelling feature of SingleStore called Pipelines. This enables vast quantities of data to be ingested, in parallel, into a SingleStore database. We'll also see an example of how we can use this feature in conjunction with Apache Kafka™. This first article will focus on uploading some data into SingleStore using Spark. In a previous article, we noted that Spark was great for ETL with SingleStore. We'll also perform some analysis of the data. In the example application, we will simulate some sensors distributed globally that generate temperature readings, and these readings will be ingested into SingleStore through the Confluent Cloud. We'll implement a Producer-Consumer model using Java and JDBC, and then simplify this using SingleStore Pipelines. The SQL scripts, Java code, and notebook files used in this article series are available on GitHub. The notebook files are available in DBC, HTML, and iPython formats. View more...How A.I. Can Transform Academics Into Immersive Learning ExperiencesAggregated on: Thu Jan 06 2022 23:34:33 GMT+0000 (Coordinated Universal Time) One of the biggest challenges facing today’s educational infrastructure is the inability of current technology to deliver quality courses to students. With the growing power of cloud computing and video conferencing, educational institutions have been keeping themselves in a “dark age” that only serves to inhibit student education and learning habits. If academia would turn its attention to cloud computing, artificial intelligence, and immersive learning beyond Blackboard and video conferencing solutions, it will enhance student learning in ways that speak to numerous learning patterns. View more...How Does Machine Learning Work in Finance Automation?Aggregated on: Thu Jan 06 2022 22:49:33 GMT+0000 (Coordinated Universal Time) Automation in finance, or any other sector for that matter, is inevitable. However, automating financial services is quite different and challenging from other business domains due to a high level of caution, concerns, and risks. According to the survey used for the above infographic, 73% of finance experts believe that automation boosts their function efficiency, and hence, the finance team can focus on other value-added activities. At the same time, 87% of CFOs believe that they need to be more agile to analyze their financial services and meet their targets. View more...Getting Started With AWS AmplifyAggregated on: Thu Jan 06 2022 19:34:33 GMT+0000 (Coordinated Universal Time) Serverless cloud infrastructure is the next step in building apps. But if you’ve tried to navigate the vast number of services in the AWS console, you know that using the cloud is easier said than done. Today’s developers are overwhelmed with the amount of services AWS offers. The solution? AWS Amplify, which helps developers to easily build and deploy complete mobile and web apps by providing a collection of CLI tools, libraries, frameworks, and cloud services. View more...DevOps on AWS: Everything You Need to KnowAggregated on: Thu Jan 06 2022 19:04:33 GMT+0000 (Coordinated Universal Time) DevOps is renowned for fast methodologies, increased security (in the form of DevSecOps), as well as the quick and easy scalability of software development projects. These advantages make it essential for companies to embrace the DevOps culture as a guarantee of future success and growth. At the heart of this change, we have Amazon and its pioneering cloud offering, Amazon Web Services. Being the most popular in the market means Amazon has some of the best services, infrastructure, locations, and support in the market. The amount of trained professionals in AWS DevOps is also the highest among the big three; Google Cloud Platform, Microsoft Azure, and AWS. View more...CockroachDB With Kerberos and Docker ComposeAggregated on: Thu Jan 06 2022 19:04:33 GMT+0000 (Coordinated Universal Time) Articles covering CockroachDB and Kerberos I find the topic of Kerberos very interesting and my colleagues commonly refer to me for help with this complex topic. I am by no means an expert at Kerberos, I am however familiar enough with it to be dangerous. That said, I've written multiple articles on the topic which you may find below: Part 1: CockroachDB with MIT Kerberos Part 2: CockroachDB with Active Directory Part 3: CockroachDB with MIT Kerberos and Docker Compose Part 4: CockroachDB with MIT Kerberos and custom SPN Part 5: Executing CockroachDB table import via GSSAPI Part 6: CockroachDB, MIT Kerberos, HAProxy, and Docker Compose Part 7: CockroachDB with Django and MIT Kerberos Part 8: CockroachDB with SQLAlchemy and MIT Kerberos Part 9: CockroachDB with MIT Kerberos using a native client Part 10: CockroachDB with MIT Kerberos along with cert user authentication Part 11: CockroachDB with GSSAPI deployed via systemd Part 12: Selecting proper cipher for CockroachDB with GSSAPI Part 13: Overriding KRB5CCNAME for CockroachDB with GSSAPI As our customers are increasing their footprint and considering production use cases, I'm being asked to walk through the typical steps of enabling Kerberos auth for Cockroach. As this process is pretty heavy-handed, a few of us at Cockroach had sought out a repeatable process in getting an on-demand environment quickly and efficiently. CockroachDB source code is a good starting point for learning the inner workings of CRDB. I knew there were compose recipes available with Kerberos to test through the integration but typically they are written for Go language tests. We decided to introduce our own docker compose with nothing but a Kerberos realm, an instance of CockroachDB, and a Postgres client to connect with. The last part is only necessary for a bit longer as we're actively working on building GSSAPI support into the cockroach CLI. View more...Demystifying Grids For Developers and DesignersAggregated on: Thu Jan 06 2022 18:34:33 GMT+0000 (Coordinated Universal Time) Designers and developers each have their own individual definition and use of grids, making the concept a relatively nebulous and unclear concept to all. To some, grids could mean layout and structure, while to others grids refer to interactive tables that manage data. Understanding the target audience is key here because there might not be a universally understandable direction which can lead designers to be misguided during the cross-collaboration process. When given the time, developers and designers can fully evaluate the user story and create a thoughtful user experience together through the use of grids. But first, we need to find common ground to work from. Identifying a Grid As we mentioned, it is important to know your audience when talking about Grids. If you come from a typical design background, the word “Grid” instantly brings you to think about layout (either print or online). The term has even penetrated CSS with the Grid Layout. As you can see in this article, that demonstrates the use of the term “Grid” generically for design layout purposes. View more...How Disaster Ready Are Your Backup Systems, Really?Aggregated on: Thu Jan 06 2022 18:34:33 GMT+0000 (Coordinated Universal Time) In SRE, we believe that some failure is inevitable. Complex systems receiving updates will eventually experience incidents that you can’t anticipate. What you can do is be ready to mitigate the damage of these incidents as much as possible. One facet of disaster readiness is an incident response - setting up procedures to solve the incident and restore service as quickly as possible. Another strategy involves reducing the chances for failure with tactics like reducing single points of failure. Today, we’ll talk about the third type of readiness: having backup systems and redundancies to quickly restore function when things go very wrong. View more...Kubernetes Hardening Tutorial Part 1: PodsAggregated on: Thu Jan 06 2022 18:04:33 GMT+0000 (Coordinated Universal Time) In my previous two articles, we discussed Kubernetes security and created a guideline for enhancing K8s. If you haven't read them yet, here are the links: Hardening Your Kubernetes Cluster - Threat Model (Pt. 1) View more...Kubernetes Salary Guide: A Detailed ComparisonAggregated on: Thu Jan 06 2022 18:04:33 GMT+0000 (Coordinated Universal Time) As the use of Kubernetes keeps growing in tandem with containers, cloud-native development, alongside other related IT trends, the hiring demand for technology professionals who have the relevant skills to help companies achieve their goals is also growing. However, relevant information about Kubernetes salaries is hard to find because this niche is relatively new to the market. If you are looking for a Kubernetes engineer or administrator position, being armed with information about your salary prospects is vital to negotiating fair compensation with your prospective employer. Furthermore, this position has several variations, making it even more essential to do your research beforehand because some options may not fit your skillset. View more...10 Must-Have React Developer Tools To Write Clean CodeAggregated on: Thu Jan 06 2022 18:04:33 GMT+0000 (Coordinated Universal Time) Introduction React is a component-based open-source JavaScript library for building user interfaces. It is used for handling the view layer in web and mobile applications, and it is great for building single-page web applications. Some of the features of React are: View more...Introduction to System Design InterviewsAggregated on: Thu Jan 06 2022 17:04:33 GMT+0000 (Coordinated Universal Time) This article provides an overview of practices and areas of focus when navigating a high-level systems design interview. I expect this information will be most helpful to engineers with 1-3 years of experience or those who have never done a systems design interview. Additionally, this article is expected to be used as a jumping-off point, and readers will likely need to leverage other resources to dig deeper into the referenced concepts and terms. View more...2 Approaches to Microservices Monitoring and LoggingAggregated on: Thu Jan 06 2022 16:34:33 GMT+0000 (Coordinated Universal Time) We’re seeing a massive shift in how companies build their software. More and more, companies are building—or are rapidly transitioning—their applications to a microservice architecture. The monolithic application is giving way to the rise of microservices. With an application segmented into dozens (or hundreds!) of microservices, monitoring and consolidated logging become imperative. At any given moment, one of your microservices could fail or throw an error or begin hogging resources. You need to monitor for this so that you can respond quickly and appropriately. In addition, your ability to troubleshoot errors and understand system behavior depends heavily on the existence and effectiveness of your logging tool. View more...Azure Synapse vs Snowflake: The Definitive GuideAggregated on: Thu Jan 06 2022 16:34:33 GMT+0000 (Coordinated Universal Time) With the world on pace to reach 175 Zettabytes of data by 2025, it’s no wonder why organizations are placing such a high emphasis on building out their technology stacks. Now more than ever, companies need a way to collect and consolidate data into a single platform to derive insights quickly. This is one of the core reasons that Snowflake and Azure Synapse Analytics have risen to such popularity. However, Synapse and Snowflake are different solutions and both should be analyzed from an unbiased lens. With that in mind, here are some of the core differences and pros/cons to Snowflake and Synapse. View more...Securing Web Applications and APIs With Confidence [Webinar Sign-up]Aggregated on: Thu Jan 06 2022 15:49:33 GMT+0000 (Coordinated Universal Time) The number of web applications and APIs exposed to the internet are growing exponentially. Unsecure web applications and APIs are low-hanging fruit that attackers are targeting to steal sensitive data. In a recent report “State of the Web Security for H1 2020,” CDNetworks highlighted that, in particular, web application attacks rose by 800%. Legacy WAFs can no longer provide comprehensive coverage for cloud native architectures since attackers are looking to exploit unsecured APIs, Bad Bots, and more. Security, operations, and infrastructure teams require a holistic solution with comprehensive protection across the full application lifecycle. View more...Composite Design Pattern in JavaAggregated on: Thu Jan 06 2022 15:49:33 GMT+0000 (Coordinated Universal Time) In the video below, we take a closer look at the Composite Design Pattern in Java. This tutorial includes an introduction, class diagram, example, and key points. Let's get started! View more...JDBC Tutorial Part 2: Running SQL QueriesAggregated on: Thu Jan 06 2022 15:19:33 GMT+0000 (Coordinated Universal Time) In Part 2 of this tutorial series, you’ll learn how to execute SELECT, INSERT, UPDATE, and DELETE statements against an SQL database using JDBC. These actions are known as CRUD operations (Create, Read, Update, Delete) which form most of the functionality in an application. Note: We’ll continue where the previous step of the tutorial left off, which means this article assumes you have a Connection object ready. Refer to part 1 of this tutorial for more details. The source code is available on GitHub. View more...Improving Performance With SQL Aggregate FunctionsAggregated on: Wed Jan 05 2022 20:04:32 GMT+0000 (Coordinated Universal Time) In this article, you will learn how SQL aggregate functions can represent an easy way to significantly improve your application's performance. Mainly, you will see how they were a game-changer in a real-world scenario based on a data-driven application developed for a startup operating in the sports industry. Let's now delve deeper into this scenario and learn why you can't ignore SQL aggregate functions in data science. View more...Web Application Security Driven by WAF is Favoring OrganizationsAggregated on: Wed Jan 05 2022 16:49:32 GMT+0000 (Coordinated Universal Time) Web application security through WAF is a great way to protect a company's web applications from hacking attempts. It provides comprehensive security for the server's web applications, allowing the company to protect the data stored in back-end databases. While a WAF cannot provide the same level of protection as a dedicated firewall, it can prevent data leakage in a secure manner. First-Generation WAF Although first-generation WAFs scanned web traffic without detecting malicious content, these models did not offer the highest level of security. They weren't flexible enough to handle constant software updates, and a stateless WAF could not prevent attackers from devising new attack behaviors. Additionally, they were too expensive, offered false positives, and required dedicated IT expertise to maintain. View more...Batch Processing in GoAggregated on: Wed Jan 05 2022 15:49:32 GMT+0000 (Coordinated Universal Time) Batching is a common scenario developers come across to basically split a large amount of work into smaller chunks for optimal processing. Seems pretty simple, and it really is. Say we have a long list of items we want to process in some way. A pre-defined number of them can be processed concurrently. I can see two different ways to do it in Go. The first way is by using plain old slices. This is something most developers have probably done at some point in their careers. Let's take this simple example: View more... |
|
|