Skip to main content

Posts

Showing posts from May, 2021

Dutch National Flag Problem Vijay Sinha The Crazy Programmer

In this article, we will look into an interesting problem asked in many coding interviews related to arrays: Dutch National Flag Problem. We will discuss the problem, the intuition behind it, and the application of the algorithm in certain scenarios. Along with this we will look at different approaches to solve the problem and analyze its complexities. Dutch National Flag Problem  is among the popular programming problems suggested by E. Dijkstra. So, from the name, it is clear that the problem is related to the Dutch or National Flag of the Netherlands. The flag of the Netherlands has three colors: Red, White and Blue in the same order. So the problem is if given a set of balls belonging to these colors we have to randomly arrange balls of red, white and blue such that balls of the same color are placed together and the order is maintained. In programming, we represent this problem as : Given an Array of 0’s, 1’s and 2’s we have to arrange them such that 0’s come before 1’s and 1’s c

Angular team announces new process for feature requests

Angular announced a new automated feature request process that it will implement over the next few weeks after the team found that a large portion of requests among its three main repos were feature requests.  In the new process, an Angular team member will review a ticket manually and identify it as either a feature request or an issue. Then, the Angular team will verify whether feature requests align with existing projects on the roadmap and see whether to prioritize them or not (in which case they go through a 60-day voting process). RELATED CONTENT:  Angular version 12 now available If a feature request collects enough votes within the 60-day window, the bot will automatically mark it down for consideration. Angular is also considering requests with 20 or more votes and iterate if a different number of votes will get better results.  The team will then manually review it again and see if it matches up with Angular’s future vision, and if it does, it will move it to its prioriti

SD Times news digest: Amazon Redshift ML, Microsoft’s GPT-3 features, and OpenCilk 1.0 released

Amazon Redshift ML is now generally available. The cloud data warehouse enables users to create machine learning models and make predictions from data directly from their Amazon Redshift cluster. Users just have to use a simple SQL query to specify what data they want to use to train their model as well as the output value they want to predict, according to the company. After the SQL command to create the model is initiated, Redshift ML then securely exports the specified data from Amazon Redshift to the S3 bucket and calls on Amazon SageMaker Autopilot to prepare the data.  Additional details are available here . Microsoft’s newly announced GPT-3 features Microsoft announced that GPT-3, the natural language model developed by OpenAI, will be integrated into Microsoft Power Apps, the company’s low-code app development platform.  The new AI-powered features will allow a user that is building an e-commerce app to describe a programming goal using conversational language. A fine-tu

DockerCon 2021: Updates to the collaborative app dev platform and trusted content announced

Docker announced new improvements to increase velocity, improve workflows, and provide trusted-content offerings to software developers at its DockerCon 2021 annual conference this week.  The Docker Collaborative Application Development Program now features three key improvements: Docker Development Environments, a new version of Docker Compose and Scoped Personal Access Tokens.  “Today’s developers face a variety of languages, frameworks and architectures, as well as discontinuous interfaces between tools for each pipeline stage, resulting in application development that is enormously complex to get from source code to cloud runtime,” said Donnie Berkholz, vice president of products at Docker. “Today’s announcements empower developers to ship faster by bringing their ideas to reality with Docker.”  RELATED CONTENT: WFH reveals an ‘I’ in team Docker Development Environments is a new collaborative team development experience that will be available next month. Version 2 of Docker C

SD Times Open-Source Project of the Week: Ugly Duckling

The SaaS security company Detectify last week announced the general availability of its standalone application security tool: Ugly Duckling. The tool is designed to make easier for ethical hackers to share their latest findings on vulnerabilities and then integrate them into automated security tests on Detectify’s platform. It provides the tools to create more test modules independently.  RELATED  TOPICS: The modern risks of open-source code When ethical hackers find vulnerabilities, they can then write a module as a JSON file and test it out in Ugly Duckling to validate that it works. Detectify can then implement the JSON file on their platform and scale the findings out to thousands of application owners and teams within five to ten minutes after an issue was submitted.  “It’s a win-win: security and engineering teams can stay up to speed with the latest exploitable vulnerabilities found in the wild, while the ethical hackers can get paid faster,” Detectify wrote in an announ

TypeScript 4.3 released with separate write types

Microsoft announced the release of TypeScript 4.3, which adds many new features such as separate write types on properties, ‘override’ and the ‘–noImplicitOverride’ flag, template string type improvements and more.  With separate write types, developers can specify types for reading and writing to properties. TypeScript will only use the “reading” type when considering how two properties with the same name relate to each other. On the other hand, “writing” types are only considered when directly writing to a property. RELATED CONTENT: TypeScript Handbook gets a rework Microsoft also added the ‘override’ keyword in TypeScript 4.3 to overcome the issue that arises when a user can’t make it clear whether they mean to add a new method or to override an existing one. When a method is marked with ‘override,’ TypeScript will make sure that a method with the same name exists in the base class.  Also, with the ‘noImplicitOverride’ flag,  it becomes an error to override any method from a su

Yor, open-source project for cloud resource tagging, available today

Palo Alto Networks today is officially making the code for its open-source project, Yor, available on GitHub . Yor, which went live Monday, is an  open-source project that automatically tags cloud resources in Infrastructure as Code frameworks such as Terraform, Kubernetes, Cloudformation and the Serverless Framework, according to the company’s announcement. “ DevSecOps is about breaking down silos and improving productivity,” Ismail Yenigul, open source contributor and DevSecOps expert, said in the announcement. “Imagine there is a SEV0 security incident — the last thing you want to do is spend hours identifying what caused a misconfiguration or track down the developer who wrote or modified the infrastructure code… Yor makes it possible to get answers to those questions immediately, for much more effective collaboration and faster mean time to resolution of incidents.” In a presentation to SD Times, Palo Alto Networks listed a number of personas and the Yor use cases that show th

SD Times news digest: OpenAI Startup Fund, JFrog Private Distribution Network, and Databricks Data Live Tables and Unity Catalog

The newly announced OpenAI Startup Fund is investing $100 million to partner with a small number of early-stage startups that are involved in fields that have a lot of potential for AI like health care, climate change and education. The companies in the fund will also get early access to future OpenAI systems, support from its team and credits on Azure.  The application and more information about the fund is available here . JFrog Private Distribution Network JFrog’s new JFrog distribution capability is part of the JFrog DevOps platform and it enables enterprises to easily set up and manage a secure, massively scalable hybrid distribution network.  “Enterprises that struggled with delivering applications closer to the consumer edge, rolling out releases across massive runtime environments or IoT fleets can now easily accelerate and scale to meet their distribution needs with a Private Distribution Network, enabling the consumption of software as fast as possible with complete tra

Advantages and Disadvantages of Array Nitish Agarwal The Crazy Programmer

In this article, we will take a look at the advantages and disadvantages of one of the most basic data structures in programming – Arrays. But before that, let us have a brief understanding of what arrays are. An array is one of the most popular data structures in various programming languages like C, C++, Java, etc. It is used to store data in contiguous memory locations. Whenever we deal with an ordered set of data, arrays are the first and foremost choice to store this data. It can be used to store data of different data types like integer, float, char, double, etc, but a single array contains data of only a single data type. The values stored in arrays are identified by their indexes which generally starts from zero, i.e, the first element of an array will have index zero, the second element will have index one, and so on. These arrays are of great use while executing lengthy programs, but they have certain advantages and disadvantages too. In the above representation, note that

Report: Serverless now a critical part of many software stacks

Serverless isn’t just a fad; it’s here to stay. According to Datadog’s State of Serverless 2021 report , AWS Lambda functions were invoked 3.5 times more often than they were in 2019. The company explained this is an indication that teams are making serverless a critical part of their software stacks, not just experimenting with it.  AWS Lambda invocations are also much faster than they were even just a year ago. In 2020 the median Lambda invocation took 60 milliseconds, which Datadog says is half the time it took in the previous year. One possible reason for this is that more organizations are following Lambda best practices and designing functions that are specific to their workloads.  RELATED CONTENT:  Evaluating if serverless is right for you According to the report, the tail of latency distribution is long. This is an indication that Lambda isn’t just powering short-lived jobs, but powering more computationally intense use cases. Adoption of Azure Functions and Google Cloud Fu

Bugsnag’s new error monitoring features aim to simplify app dev

The SmartBear and application stability management company Bugsnag announced new error monitoring capabilities designed to improve collaboration and team alignments. The features are designed to support code ownership and accelerate the debugging process, especially for large engineering teams, according to the company.  “Most apps have a variety of engineers, including separate engineering teams, working from a single code base. When something goes wrong, all engineers are alerted about the software bug. They then have to figure out where the error occurred and who is responsible for fixing it, which is a cumbersome and inefficient process,” said James Smith, the senior vice president of the Bugsnag Product Group at SmartBear. “Bugsnag’s new features eliminate this guesswork and deliver true code ownership so engineering teams can easily identify, own, prioritize and remedy bugs.” Among the new features is the NDK stack frames feature, which provides complete visibility into the

Microsoft Build 2021: Visual Studio 2019 v16.10 GA, .NET 6 preview 4, Microsoft Build of OpenJDK, and more

Microsoft Build 2021 started this week, giving Microsoft the opportunity to release updates for several of its offerings. Here are a few highlights from the events so far: Visual Studio 2019 v16.10 GA and v16.11 preview 1 Visual Studio 2019 v16.10 introduces new C++20 features, improved Git integration, improved profiling tools, and new productivity features.  The new productivity features include IntelliSense completion, the ability to visualize and navigate inheritance chains, Test Explorer accessibility improvements, WinForms updates, XAML tooling updates, and XAML designer quick actions. Visual Studio 2019 v16.11 preview 1 adds .NET Hot Reload, which allows developers to modify source code while the application is running without having to pause execution or use a breakpoint, and support for .NET MAUI.  More information is available here . .NET 6 preview 4 .NET 6 should be available in November, and has themes such as appealing to new developers and students, having a great

Digital.ai Platform brings artificial intelligence to value stream management

Digital.ai today announced a new AI-powered end-to-end solution for bridging the gap between software delivery and business outcomes. The new Digital.ai Platform is meant to be a next-generation intelligent value stream solution that accelerates value, increases efficiency and reduces risks for enterprises.  The company explained adding AI into the new solution will help teams find and fix issues without having to manually sift through all the data; break down silos and align goals, execution and outcome; and provide automated governance.  “In today’s fast-paced digital economy, Agile and DevOps are important foundational practices, but they are not enough. To achieve the full benefits of digital transformation and deliver better outcomes faster than the competition, organizations must adopt a value stream center of excellence approach,” said Ashok Reddy, CEO at Digital.ai. “With Value Stream Management (VSM) and the Digital.ai Platform, organizations transform traditional proj

Melissa Cites the Single Customer View as Vital to Customer-Centric Marketing

Melissa , a leading provider of global data quality and address management solutions, today announced strategies for marketers to eliminate the knowledge gap in customer data, enabling personalization at scale. With aggregated data from disparate resources, Melissa’s tools and services resolve customer identity and enhance profiles by connecting to and between marketing channels such as email, social, direct, and in-store options. Marketers gain access to a single view of the customer, allowing clear, comprehensive insight into customer behavior and preferences. “Consider the spectrum of distinct channels for customer interaction, such as your website, mobile app, blogs, gated content, social apps like Messenger or Twitter, live chat, phone, email, in-store, and more. When mapped effectively, marketers can analyze past behavior to better understand customer needs at each touchpoint and personalize future interactions,” said Greg Brown, vice president of global marketing, Melissa. “It’

Atlassian releases new cloud app development platform: Forge

Atlassian announced that its next-generation cloud app development platform, Forge, is now generally available.  Forge has been in beta since the beginning of 2020 and is designed to handle many of the maintenance aspects of app creation such as compliance, data management practices, scaling performance and security.  “ Forge is the culmination of over 2 years of work, during which we re-envisioned what modern cloud extensibility should look like in the next decade and beyond. We believe customers will increasingly ask for higher standards from app developers: everything from compliance and data management practices to scaling performance for tens of thousands of users,” Mike Tria, head of platform engineering, wrote in a post . The solution is made up of three main components: a serverless Functions-as-a-Service (FaaS) hosted platform, a declarative UI language, and a DevOps toolchain, all of which serve three main pillars.  The first pillar is that Forge allows developers to bui

SD Times news digest: JFrog updates DevOps platform, Red Hat JBoss EAP now available on Microsoft Azure, and Liquibase expands Database DevOps

JFrog announced new capabilities for its DevOps Platform that enhance binary lifecycle management at scale.  One new capability is Federated Repositories which helps with managing binaries by abstracting the infrastructure layer to create a datacenter transparent repository between different remote locations or instances of the JFrog Platform.  Other new capabilities include signed pipelines for developers to ensure the integrity and security of builds and artifacts, cold artifact storage, dependency scanning and end-to-end visibility and traceability with integrations. Red Hat JBoss EAP now available on Microsoft Azure Red Hat announced that it is bringing its JBoss Enterprise Application Platform to Microsoft Azure to ease the shift to cloud for traditional Java applications.  JBoss EAP offers management and automation capabilities that are designed to improve productivity. It also includes a lightweight architecture for building and deploying modern cloud-native applications. 

Workgroup vs Domain Nitish Agarwal The Crazy Programmer

In this article, we will take a look at the two components of computer networking – Workgroup and Domain. A domain is a collection of computers where one computer acts as a server and all others are connected to it on the same or different network. Domain networks ensure the security of data and allow encrypted sharing of information between devices. A workgroup is a collection of computer networks where each computer is independent of other computers in its group in reference to their working and functionality. We need a unique login credential to access each computer in a workgroup. They are not much secure and are connected locally on a single network. Domain networks are used by organizations and companies at the workplace while workgroups are used by individuals for personal use, like at homes. A domain acts as a client-server interface where the user can log in from any device under the domain, using his login credentials. While, in a workgroup domain, only a single user has

Difference between Physical and Logical Address in Operating System Nitish Agarwal The Crazy Programmer

In this article, we will study the two types of addresses in the operating system – Physical and Logical addresses and take a look at the differences between the two of them. How do we define an address? In layman language, an address is used to uniquely identify a location in the computer memory. The two types of addresses also bear the same qualities and store addresses in a slightly different manner which we will study subsequently. There are two main components of a computer system – the Control Unit (CU) and the Memory Unit (MU). CU is responsible for input and output operations while MU is responsible for processing and storing instructions and data. The logical address is generated by the CPU and the physical address is generated by MU. The physical address is the real location in the memory unit which is virtual to the user, i.e., the user cannot view the physical address. But the logical address is generated in the perspective of the execution of a program and is visible t

ipconfig vs ifconfig – Difference between ipconfig and ifconfig Nitish Agarwal The Crazy Programmer

In this article, we will have a look at the two network configurations in computer networks – ipconfig and ifconfig. Before diving into the details, let us have a brief understanding of what is configuration and why is it necessary. Network configuration is the process of assigning and arranging the network controls in a manner to perform specific tasks. Network configurations can be done either physically by using physical devices or virtually, by using the software. The virtual mode is easier to implement since it reduces the load of handling configurations manually. To check these network configurations and make changes in these configurations, we use ifconfig and ipconfig commands. Ipconfig and ifconfig help us to enable, disable and manage network configurations by using c ertain commands in the terminal, also called the CMD or the command-line interface in our computers. There are many more commands under these two commands which help us to manage configurations of different d

Stop and Wait Protocol Nitish Agarwal The Crazy Programmer

In this article, we will take a look at the Stop and Wait protocol of a computer networking system. In order to understand the mechanism of this protocol, we will first have a brief understanding of the error control mechanism. The Stop and Wait Protocol is a sub-category of the error control mechanism. The error control mechanism ensures error-free receiving and sending of data from one place to another. It prevents the corruption of data by any external source. As the name ‘Stop and Wait’ suggests, in this mechanism, the sender sends an instruction to the receiver and stops sending further instructions until it waits for the acknowledgment from the receiver. The Stop and Wait protocol is a flow control protocol in which the data is transmitted over noiseless channels. The transmission is unidirectional in nature, i.e., either the data is sent or it is received at a time. The data sent by the sender is in the form of discrete packets and only one data packet is sent at a time. Sim

Jakarta EE 9.1 now available

The Jakarta EE Working Group has announced that Jakarta EE 9.1 is now available. According to the Working Group, this release is significant because it makes Jakarta EE compatible with Java SE 11 .  Jakarta EE 9.1 already has five compatible implementations from leaders in the Java ecosystem: IBM Open Liberty, Eclipse Glassfish, Apache TomEE, Red Hat Wildfly, and ManageCat ManageFish.  “ManageCat would like to thank all Jakarta EE working group members who contributed to this amazing work,” said Gurkan Erdogdu, director of ManageCat. “We are delighted and proud to provide a Jakarta EE 9.1 Full Platform compliant and certified application server, ManageFish. I believe that with the version of Jakarta EE 10, the innovations that the platform will offer will increase exponentially.” RELATED CONTENT: Jakarta EE 9 provides new baseline for evolution of platform The 2020 Jakarta EE Developer Survey showed that Java SE 11 usage has grown from 20% of repositories in 2019 to 28% in 2020.

SD Times news digest: Imperva Serverless Protection, Snapdragon Developer Kit, and Nintex Workflow Cloud updates

The cybersecurity company Imperva launched Imperva Serverless Protection to secure organizations from vulnerabilities created by misconfigured apps and code-level security risks in serverless computing environments.  Imperva Serverless protection is a fully integrated tool within AWS Lambda Extensions and can be deployed once and applied to multiple AWS Lambda functions.  It also protects against the OWASP Serverless Top 10 vulnerabilities, monitors for insecure cookies and transport, logging of sensitive information, unauthorized network activity, weak authentication and other potential vulnerabilities.  More information is available here . Qualcomm Snapdragon Developer Kit for Windows 10 on ARM PCs Qualcomm announced that extended support for developers to test and optimize their applications is coming this summer with the new Snapdragon Developer Kit for Windows 10 on ARM PCs. The new kit is intended as a cost-effective way for developers to build for ARM without having to buy

SD Times news digest: New record for largest programming competition, Arctic Wolf Managed Security Awareness, and Esper Device DevOps funding

The global IT service company Tata Consultancy Services (TCS) announced that the ninth season of its TCS CodeVita won a Guinness World Record for being the world’s largest computer programming competition totaling 136,054 participants. The 2021 competition brought together college students from around the world to see who ranked among the top student programmers globally.  “In a world where technology, innovation and creativity are playing a pivotal role, this competition is fueling a passion for programming in brilliant young people with diverse educational, social, geographical, and cultural backgrounds,” said Ananth Krishnan, the CTO at TCS. This year’s competition champion was Ben Alexander Mirtchouk of the Stevens Institute of Technology in New Jersey.  Arctic Wolf Managed Security Awareness announced Arctic Wolf announced its Managed Security Awareness program that helps organizations learn how to protect against social engineering, phishing attacks and credential theft. Th

Microsoft tests if security teams are prepared for hack attacks with SimuLand

Microsoft announced a new open-source initiative, SimuLand, to help security researchers deploy lab environments that reproduce well-known techniques used in attack scenarios. Participants can use the labs to then test the effectiveness of  Microsoft 365 Defender, Azure Defender, and Azure Sentinel detections. The simulation steps are mapped to detection queries and alerts to the aforementioned technologies.  Threat research will be extended after each simulation exercise through the use of elementary and forensic artifacts generated after each scenario. Every simulation plan provided through this project is research-based and broken down into attacker actions mapped to the MITRE ATT&CK framework, according to Microsoft. “Our goal is to have SimuLand integrated with threat research methodologies where dynamic analysis is applied to end-to-end simulation scenarios,” Roberto Rodriguez, a threat researcher at MSTIC R&D wrote in a blog post . Microsoft plans to use SimuLand