menu
techminis

A naukri.com initiative

google-web-stories
Home

>

Programming News

Programming News

source image

Dev

1M

read

364

img
dot

Image Credit: Dev

The JavaScript History API

  • The JavaScript History API is a part of the Web API that allows us to interact with the browser's session history.
  • Key features of the JavaScript History API include methods like history.back(), history.forward(), history.go(n), history.pushState(), and history.replaceState().
  • The history.back() method moves the browser to the previous page in the session history.
  • The history.forward() method moves the browser to the next page in the session history.
  • The history.go() method is used to navigate to a specific point in the browser stack.
  • The history.pushState() method is used to add a new entry in the current session's history stack.
  • The history.replaceState() method replaces the current entry in the current session's history stack with a new entry.

Read Full Article

like

21 Likes

source image

Medium

1M

read

179

img
dot

Image Credit: Medium

Leetcode POD: 2415. Reverse Odd Levels of Binary Tree

  • Given the root of a perfect binary tree, reverse the node values at each odd level of the tree.
  • Return the root of the reversed tree.
  • A binary tree is perfect if all parent nodes have two children and all leaves are on the same level.
  • To reverse the values on odd levels, a single-traversal solution without any extra space is implemented using pre-order traversal.

Read Full Article

like

10 Likes

source image

Javacodegeeks

1M

read

296

img
dot

Image Credit: Javacodegeeks

5 Common Mistakes in Java Streams and How to Avoid Them

  • Java Streams, introduced in Java 8, revolutionized how developers work with collections and functional-style operations.
  • 1. Using Intermediate Operations Without a Terminal Operation: Always end the stream with a terminal operation to execute it.
  • 2. Overusing collect(Collectors.toList()): If you don’t need the resulting list, skip collect() and use forEach() directly.
  • 3. Ignoring Stream Reuse Rules: Convert streams into a collection or supplier if you need to reuse them.
  • 4. Overusing Parallel Streams: Use parallelStream() only for large datasets or tasks where parallel execution benefits outweigh the overhead.
  • 5. Using Stream Operations for Side Effects: Use forEach() for side effects and keep map() for pure transformations.

Read Full Article

like

17 Likes

source image

Dev

1M

read

260

img
dot

Image Credit: Dev

Waymap: The Ultimate Web Vulnerability Scanner for Penetration Testers

  • Waymap, developed by Trix Cyrus, is a cutting-edge web vulnerability scanner for penetration testers.
  • It offers high-speed scanning, customizable profiles, and the ability to detect a diverse range of vulnerabilities.
  • Key features include flexible scanning options, supported scan types, threaded scanning, comprehensive profiles, and automated update checks.
  • Waymap is an intuitive and user-friendly tool that requires proper authorization and welcomes contributions from the cybersecurity community.

Read Full Article

like

15 Likes

source image

Medium

1M

read

440

img
dot

AES Encryption Keys (password hashing)

  • AES Encryption Keys (password hashing) relies on a password of sufficient length and the non deterministic factor of indistinguishable random data. However, passwords as user inputs do not make for good encryption keys. To use passwords for encryption, a key derivation function must be applied which generates derived keys. Key derivation functions work by utilizing unique random salt to make pre-calculated rainbow tables infeasible. Furthermore, the salt should be stored with the password to ensure it is public, thus rendering the hash with the same password looking different. Weak keys refer to cryptographically secure generated keys, which makes an encryption algorithm vulnerable to an exploit.
  • For good encryption keys, a minimum length, determined by the AES encryption algorithm, is required. AES+CBC encryption necessitates a minimum length of 16 bytes, while AES+GCM can work with 12 bytes, although 16 bytes is suggested. To use passwords for encryption, a Key Derivation Function (KDF) is required to generate derived keys like argon2, bcrypt, and scrypt. Key derivation functions must be slow and some like argon2 are designed to take up a substantial amount of memory such that calculations on GPUs are not possible, to deter brute force attacks against offline stolen data.
  • Argon2 is considered the best KDF to use for password key derivation, with Argon2id being its most secure mode. Unfortunately, allot of encryption starts with user-supplied passwords, which are not random inputs of sufficient length making them 'easily' guessed by a bruteforce attack. To protect passwords from such attacks, the password's hash must not be stored and must be encrypted with the hash itself. Although offline bruteforce attacks on remote login systems are improbable, offline attacks on stolen data can be quite effective.
  • Weak keys, although generally not a concern in AES encryption, can pose a problem in the AES+GCM mode, which has several published papers on weak keys and can make the encryption algorithm vulnerable to an exploit. Ultimately, the GCM mode would best be used for anything with short-lived keys and not for disk encryption where keys and ciphers live longer. Another noteworthy point is that although salts are not secret and are public, they make pre-calculated rainbow tables infeasible and as such the salt should be stored with the password.
  • In conclusion, the use of derived keys in KDFs is a more secure way to encrypt data since passwords as user inputs do not make for good keys. However, even with a decent hashing algorithm and a random unique salt, it is still a possibility that your hash and salt may be exposed. As such, unique and strong passwords are recommended to prevent such password cracking attempts.

Read Full Article

like

26 Likes

source image

Dev

1M

read

71

img
dot

Image Credit: Dev

Quit programming right now

  • Many developers spend their free time working on non-commercial projects.
  • They do not receive monetary benefits, recognition, or easier job opportunities for these projects.
  • The motivation behind working on such projects can vary, including personal enjoyment, skill development, and building a portfolio.
  • However, some argue that without a clear goal or plan, it may be a waste of time and effort.

Read Full Article

like

4 Likes

source image

Prodevelopertutorial

1M

read

256

img
dot

Image Credit: Prodevelopertutorial

Data structure tutorial 10: Implementation of Circular Queue using Linked List

  • Introduction to Circular Queue Data Structure
  • Implementation of Circular Queue using Linked List
  • Insertion [enqueue] operation can be visualized as increasing the rear pointer and keeping the front pointer still.
  • Deletion [dequeue] operation can be visualized as increasing the front pointer and keeping the rear pointer still.

Read Full Article

like

15 Likes

source image

Medium

1M

read

49

img
dot

Image Credit: Medium

History of Artificial Intelligence

  • The concept of smart machines has ancient foundations, dating back to philosophers like Aristotle.
  • Modern history of AI begins in the middle of the 20th century, with Alan Turing's paper on 'Computing Machinery and Intelligence.'
  • The 1956 Dartmouth Conference is a significant event where the term 'Artificial Intelligence' was coined.
  • Researchers like John McCarthy, Marvin Minsky, and Allen Newell aimed to simulate human problem-solving and reasoning in machines.

Read Full Article

like

2 Likes

source image

Medium

1M

read

327

img
dot

Image Credit: Medium

Singularity is something without an ego

  • The Singularity will require humans and AI to work symbiotically, with AI handling tasks that require computation, logic, and scalability, and humans contributing empathy, ethics, and creativity.
  • Traditional power structures — based on information control, authority, or economic dominance — will erode as AI democratizes knowledge and decision-making.
  • AI systems, especially when integrated into decentralized frameworks like Nostr and Bitcoin, will enhance humanity’s collective intelligence by connecting individuals and optimizing decision-making at scale.
  • AI could level the playing field, offering equal access to education, healthcare, and resources. This redistribution of opportunity could dissolve long-standing inequalities.

Read Full Article

like

19 Likes

source image

Medium

1M

read

211

img
dot

Image Credit: Medium

How I Created Stunning 8K Movies in Hours

  • AI MovieMaker is a tool that allows users to create ultra-realistic 8K cinematic films effortlessly.
  • Users can personalize scenes, graphics, and audio, streamlining the entire filmmaking process.
  • Many users report recovering their investment and making a profit by monetizing their videos.
  • The user-friendly interface and guided prompts make it easy for even beginners to create professional-grade content.

Read Full Article

like

12 Likes

source image

Medium

1M

read

417

img
dot

Image Credit: Medium

RxSignals: The most powerful synergy in the history of Angular

  • Angular has introduced tools to enable seamless interaction between Signals and observables.
  • Reactivity in Angular until the introduction of Signals relied on subscribing to observables within templates using the AsyncPipe, resulting in additional checks.
  • Signals are inherently stateful and offer additional benefits as compared to observables when managing state.
  • RxJS can be used to declaratively describe event-driven tasks, avoiding imperative code.
  • RxJS has naturally evolved into a reliable tool for handling events in combination with Signals.
  • Working with imperative APIs in a declarative manner is possible since Signals seamlessly integrate with observables.
  • RxJS excels by leveraging merging operators to reliably detect changes in an element's width and to create observables based on Angular's APIs.
  • By adapting frequent operations to work with streams, RxJS significantly reduces boilerplate code, making it more declarative.
  • The synergy between Signals and observables marks a significant step forward in Angular's reactivity, making state and event management in Angular more intuitive.
  • RxJS is perfectly suited for handling event-driven tasks and remains integrated into the Angular ecosystem.

Read Full Article

like

25 Likes

source image

Prodevelopertutorial

1M

read

431

img
dot

Image Credit: Prodevelopertutorial

Data structure tutorial 9: Circular Queues Data structure introduction and Implementation using arrays.

  • Circular Queue uses a data structure (array or linked list) to allow insertion and removal of elements from both the ends (front and rear end).
  • In this article, we understand the introduction to Circular Queue Data Structure, Formula to calculate to insert elements, Understanding inserting elements with an example, and Implementation of Circular Queue using arrays.
  • In Circular Queue, the front will be pointing at 0 and rear pointer will be pointing at the maximum index size of the queue.
  • When an element is inserted at the rear end, rear_end = (rear_end + 1) % MAX_QUEUE_SIZE; similarly, when an element is deleted from front_ end front_end = (front_end + 1) % MAX_QUEUE_SIZE; are the formula to calculate the index.
  • Depending upon the result, the rear pointer will update accordingly.
  • Circular queue, we will be utilizing the space efficiently.
  • Data structure uses an array with operations Insert(), Delete(), Display().
  • The Insert() function adds an element at the rear end and Delete() function deletes element from the front end.
  • Display() function shows the content of the queue.
  • Code implementation of Circular Queue using arrays includes InsertQueue(), DeleteQueue(), and DisplayQueue() functions.

Read Full Article

like

25 Likes

source image

Prodevelopertutorial

1M

read

413

img
dot

Data structure tutorial 8: Queue Data Structure implementation using linked list in C

  • Introduction to Queue Data Structure
  • Operations performed on Queue: Inserting elements into queue and Deleting elements from the queue
  • Implementation of Queue using Linked List in C
  • Output of the program

Read Full Article

like

24 Likes

source image

Logrocket

1M

read

22

img
dot

Image Credit: Logrocket

Building a full-featured Laravel admin dashboard with Filament

  • Filament is an open source library that provides a Laravel-based suite of UI components for creating admin dashboards.
  • Filament provides powerful admin dashboard components such as Form Builder, Notifications, Actions, etc.
  • The tutorial covers the process for building an admin dashboard with Filament UI components.
  • The tutorial explains Laravel environment setup, Installation of Filament, and creation of the database.
  • The use of Form Builder is demonstrated in creating a User form with validation, error handling, and conditional logic.
  • Notifications are implemented with Laravel Echo and Pusher to display real-time updates, and custom Actions are added for specific user tasks.
  • With Filament, powerful admin dashboards can be created that are interactive, reliable while keeping the code clean and easy to maintain.
  • Filament is developer-friendly and offers comprehensive solutions for building engaging, high-performance Laravel applications.
  • Explore Filament’s documentation to unlock more possibilities and create feature-rich admin dashboards.
  • Boost productivity and satisfaction with powerful and intuitive admin dashboards built using Filament and Laravel.

Read Full Article

like

1 Like

source image

Prodevelopertutorial

1M

read

166

img
dot

Data structure tutorial 6: Circular Doubly Linked List

  • Circular Doubly Linked List is discussed in this chapter.
  • Representation, operations, and implementation of Circular Doubly Linked List are covered.
  • Operations include insert rear, delete element, and display.
  • The code example demonstrates the implementation and output of the program.

Read Full Article

like

9 Likes

For uninterrupted reading, download the app