The latest Chromebook tablet from Asus aims to entice students and schools with its Military-grade casing, detachable keyboard and stylus support. The Chromebook Detachable CZ1 runs on MediaTek’s Kompanio 500 (MT8183) chipset featuring an octa-core processor with four Arm Cortex-A73 performance cores and four A53 cores. The GPU side is covered by Arm’s Mali-G72.
A long answer to a short question: how did Klaatu get a remote gig? Also, **rlwrap** , a wrapper to provide GNU readline functions to arbitrary commands, musings about distributions and derivations, Slackware 15 release candidate has been released, and more. s
Unlock the POWER of the Chromebook with Arch Linux on Chrome OS. This integrates directly in STOCK Chrome OS and you can directly launch without even using Terminal!
People have been asking me to play SuperTuxKart for ages so here we are, we'll start with a bit of training arc just so the one random elite STK player doesn't destroy me and then after that we'll hope into racing with you guys.
I showed you how I use KDE, and Activities to switch between personal stuff an Work, and my preferred layout, now it's time to take a look at the applications I use to get stuff done!
I've been looking for a way to make use of multiple instances of the same camera in OBS but the Linux camera drivers look it to a single process luckily though virtual camera devices with v4l2loopback don't have this problem.
Red Hat's Hans de Goede continues doing a commendable job improving the Linux support for various laptops with key improvements. One of the latest efforts by this longtime kernel developer has been about getting DisplayPort over USB Type-C connections working for more Intel hardware.
Hans de Goede announced on Friday that his patch-set around out-of-band hotplug notification is now ready for mainlining for the Linux kernel's Direct Rendering Manager subsystem and specific wiring up for the Intel driver.
Due to the growing threat posed by file-less malware attacks where malware code is executed from anonymous executable memory pages that aren't backed by data on the file-system, the "NAX" Linux security module has been seeing work recently for helping to protect against such scenarios.
The NAX Linux Security Module is around "no anonymous execution" of pages. The kernel security module prevents the creation of anonymous executable pages for processes by intercepting of mmap/mprotect system calls and handling them appropriately.
While Intel is normally very punctual in providing support for major new CPU features under Linux and often landing them well in advance of general hardware availability, their work around Control-flow Enforcement Technology (CET) has taken a long longer than normal and is still going through new rounds of code review to get accepted into the mainline Linux kernel.
Intel Tiger Lake SoCs with CET support have been available now for about one year and Intel CET work for Linux goes back to 2017. Intel Control-Flow Enforcement Technology aims to prevent ROP and COP/JOP style attacks through indirect branch tracking and a shadow stack. The compiler-side CET patches quickly landed but the Linux kernel support for this security feature has long been ongoing and as of yesterday is up to its 29th round of review.
Java is a general-purpose, class-based, object-oriented multipurpose programming language that is popular due to the design of having lesser implementation dependencies, meaning that the compiled Java code can be run on all platforms that support Java without the need for recompilation. Java is also fast, secure, and reliable, therefore. It is widely used for developing Java applications in laptops, data centers, game consoles, scientific supercomputers, cell phones, etc.
Developed by CGSecurity and released under the GPL, PhotoRec is distributed as a companion utility of Testdisk, which can be used to recover and restore partitions. You can use either of these tools to recover files, but each has a job that it’s best suited for. Testdisk is best suited for recovering lost partitions. Whether this is on account of you overwriting or deleting a partition, or a partition becoming unreadable for any reason, Testdisk can help you restore the partition, or at the very least, recover data from it. But if all you’re interested in is recovering deleted files from a partition, hard disk or even a USB drive, you can use PhotoRec. Although initially designed to only recover image files (hence the name), PhotoRec can be used to recover just about any manner of file.
Zorin OS 16 launched a few days back with stunning new looks, exciting new features along with a desktop layout similar to Windows 11. If you are switching over to Linux from Windows, then it is the right time to do it with Zorin OS 16. In this post, we’ll look at an easy step-by-step guide to install Zorin OS 16.
If you’re looking for alternative to the Dropbox client application, you should definitely try what Maestral has to offer to you.
The official Dropbox app isn’t liked by all. Many feel that it is too bloated, offering unnecessary functionality or limitations in a package that only seems to increase in size.
Maestral is a lightweight open source Dropbox client for Linux and macOS written in Python. It main goal is to provide a client for platforms and file systems that are no longer directly supported by Dropbox.
The root user name or account has default permission to all available commands and files on a Linux or any other Unix-like operating system. It is also known as the superuser, the root account, and the root user. Username: “kali” are the standard credentials for logging into the new Kali system. This establishes a session as user “kali,” You must use this user password after “Sudo” to gain root access. Kali Linux was using the root account by default till recent times. Root login is restricted in the current versions of Kali, allowing you to utilize your regular user account to access the GUI. The reasons behind this modification should be clear, but if you are a Kali user, you are presumably already familiar with a Linux system; thus, there is a little risk in allowing you to log in with the root account. We will create a non-root user with administrative capabilities while we install Kali Linux. Other Linux distributions follow a similar procedure. The default user in older versions of Kali is root. But first, we must create a regular account before installing Kali Linux. To install any program or package under Kali, we must first log in and then use the Sudo command.
Google chrome comes equipped with many quality features that help sustain your PC health and perform tasks more efficiently. Since Chrome uses a huge amount of CPU, it has the feature of hardware acceleration that shifts the process to other hardware components, such as the GPU, to accelerate the job. Hardware acceleration was not so common in the initial days as the processor was responsible for handling all such jobs. Due to the latest trends and updates in web apps, the graph of requirements has potentially raised. In this article, we will be discussing GPU acceleration in Chrome. Make sure you read till the end.
The difference between the su and the hyphenated su – commands is the su command without arguments keeps almost all environment variables belonging to the original user. Contrary to this, the hyphenated su – command clears most environment variables.
We are not talking about two different commands but about a command without a specific flag (the hyphen is a flag) and the same command with the flag.
Typing su – is the same as typing su -l; both commands will clear most of the environment variables. Thus, before continuing with this article, let’s see what an environment variable is.
A Bash program is a simple text document with a series of instructions in it. These statements combine instructions we’d put on the command prompt manually (including such ls or cp). Likewise, whatever you can accomplish with a script could also be done with a command prompt. A regular expression matching sign, the =~ operator, is used to identify regular expressions. Perl has a similar operator for regular expression corresponding, which stimulated this operator. Let’s have some examples to see the working of =~ operator in Ubuntu 20.04.
For users switching from macOS, there’s a GNOME Extension to replace the top-left corner ‘Activities‘ with system logo menu.
So the top-left corner will display your selected logo icon instead of the ‘Activities’ button. When you click on it, a drop-down menu opens with options to quick access...
The nc or netcat command is a network tool that allows users to transfer files between devices, scan ports and diagnose problems. This tutorial explains 10 nc usages to scan ports, transfer files, and banner grabbing.
Viber is a cross-platform instant messaging application. It is available for all users to use to send texts, images, videos, and audio and visual calls. Viber is a lot like Telegram, and it has native support for Linux.
In this tutorial, we will show you how to install EteSync Server on Ubuntu 20.04 LTS. For those of you who didn’t know, EteSync is an open-source, end-to-end encryption solution for syncing your calendars, contacts, tasks, and notes. It can be accessed through desktop, web, Android, and iOS clients.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the EteSync Server on Ubuntu 20.04 (Focal Fossa). You can follow the same instructions for Ubuntu 18.04, 16.04, and any other Debian-based distribution like Linux Mint.
Your bash history can be seen using the history command. Knowing how to remove your history is especially important when you work remotely and need to keep activity safe. Deleting the command line activity history is simple, and there are few ways to achieve it. How to delete history without a trace in Linux is explained in this article.
The special shell variable is used to control the bash prompt. Each variable is used for specific purposes. The value of these variables is executed as a command before displaying the primary prompt. The PS1 variable contains the value of the default prompt. It is used to change the looks and environment of the shell command prompt. In this article, Bash PS1 customization is explained with examples.
The Unix/Linux su (Substitute User) command allows users to become other users. This command was thought to escalate privileges by becoming a privileged user; therefore, the default user is the root if no user is specified.
By executing the su command, you can become root or switch to any other user. This tutorial explains all su usages and the differences with the sudo command.
As said previously, if you execute the su command without a user, you will become root by default, as shown in the screenshot below.
Finding apps for Linux is simultaneously simple and complicated. For decades now, you’ve only had to open a package manager or an app store and type the name of the program you’re looking for. Done. Easy.
But as a new Linux user, there’s a good chance you don’t actually know what you’re looking for. And with new software coming out more quickly, experienced users can easily miss out on the latest finds. Fortunately, several websites have surfaced that do a great job introducing you to Linux apps you haven't seen before.
When the command-line arguments take inputs from the user, the first argument contains the script name. Sometimes the script name is required to omit for programming purposes. This task can be done easily by using any loop in bash. Using the `shift` command is another way to do the task. This command is used to move one positional parameter to the left by default. The different uses of the `shift` command in bash have shown in this tutorial.
A function is an essential part of any programming language that contains a block of code. The same code can be executed multiple times by calling a function, and the requirement to write the same code repeatedly can be avoided by using the function. A function can be defined without argument and with argument. The argument of the function can be mandatory and optional. The default value can be set for the argument of the bash function. The ways to declare the optional argument and the use of default values in the bash function have shown in this tutorial.
Bash is a very versatile scripting language that is most commonly used with Linux-based systems. With this language, you can easily automate your daily routine tasks and also simplify repetitive tasks. This language is a blend of different entities such as special variables, functions, built-in commands, etc. Each special variable of this language serves a specific purpose. The special variable that we will be discussing in this article is “$_” which is there to print the last argument of the previous command. It is a bit complex to understand the functionality of this special variable without looking at relevant examples. Therefore, we have designed this tutorial so that it will first explain to you the use case of this command, followed by a relevant example. Let us find out together what this article holds for us.
In this article, we want to extend the discussion on the special variables in Bash a little further. In this regard, today, we would like to focus on using the $0 special variable in a Bash script in Ubuntu 20.04. Let us figure out how this special variable functions when it is placed inside a Bash script. Moreover, as a bonus, we will also share the usage of this special variable within the terminal.
Guide to learn the MariaDB 10 installation on Debian 11 Bullseye. Currently while writing this tutorial the latest version was MariaDB Server 10.6.
While Epic Games are currently working on the next generation with Unreal Engine 5, they're still upgrading the previous major version with Unreal Engine 4.27 out now.
Lots of improvements across the whole engine to some major parts, plus they're also now including the Oodle Compression Suite and Bink Video codec built into Unreal Engine since Epic Games now own RAD Game Tools. Plenty of XR improvements for Virtual Reality, Augmented Reality and Mixed Reality with big improvements to their OpenXR plugin like Stereo Layers, Splash Screens, querying Playspace bounds, motion controller visualization and Linux support. Plus loads more.
Following on from the Release Candidate testing earlier this month, Steam Play Proton 6.3-6 has rolled out to improve Windows games running on Linux. If you don't know what Steam Play Proton is be sure to check our dedicated page.
Along with updating lots of the software behind the scenes like wine-mono to 6.3, DXVK to 1.9.1, VKD3D-Proton to 2.4 and FAudio to 20.08 there's a number of other specific improvements in this release. Cloud save syncing was improved for multiple titles including Guilty Gear -Strive-, Death Stranding, Katamari Damacy Reroll and Scarlet Nexus. Video playback improved for: Deep Rock Galactic, The Medium, Nier: Replicant, and Contra: Rogue Corps. Plus non-English support for Cyberpunk 2077 and Rockstar Games launchers was improved, launcher behaviour in Swords of Legends Online was improved too.
Last night, Proton — the compatibility layer that allows Windows games to be played on Linux — was updated by Valve from 6.3-5 to 6.3-6. While the number scheming here may not sound like a big difference, according to the changelog there actually is quite a few remarkable improvements from 6.3-5. Specifically, we’re looking at more games being compatible with Proton, improved audio and video playback in a few titles, improved launcher behavior with one title, better input handling with others, upgrades of wine-mono, DXVK, vkd3d-proton, and FAudio, various game fixes, and better cloud sync behavior with a few titles.
CodeWeavers announced recently they need a bit of help on finding more developers, with a spot still currently open for a 'General Wine Developer' who will work on Wine and Proton.
Valve partnered up with CodeWeavers to integrate the Wine compatibility layer into the Steam Client for Linux, which is what's known as Proton (which is Wine + extra patches, DXVK and more). If you're unsure what Proton is check out our dedicated page.
If you're after something new to play through this weekend take a look at the Humble Store. They have a big Summer Sale going on right now now with lots of good deals.
Hey everyone, it’s been more than a month since I last wrote. This part of my GSoC project had to do more with reading and understanding than just coding. We continue from the last where we left off, I had to start with the more challenging issue of providing android integration to Kasts and adding chapter markers. While the latter was pretty easy, the former was something I was dreading from the beginning as I have zero experience with Android programming.
The android platform is HUGE and it was a pretty daunting task at first to get started with, knowing that I have to write production-level code in only a few weeks and on a topic that is so new to me. The first thing I did was to interact with my mentor on what is being expected out of it. So I was tasked with creating a media session for android. Kasts was already ported to android but when there is media content playing on android, there is just no way to control it from outside the app. This is where media sessions come in. They provide a universal way to interact with the underlying audio player. Media sessions are to Android what MPRIS is for Linux. A media session allows an app to expose playback externally and to receive commands in the form of physical buttons pressed (play/pause button on an earpiece or TV remotes or the Google assistant).
This week, we have something new to show you: Kalendar is getting ready to become your new todo app!
The work you will see is not yet finished — there are a lot of visual tweaks that will happen soon and it is still missing some important capabilities. However, we are happy to show you what will become the base for the productivity-focused section of KDE’s new calendar application.
Also new this week are several bug fixes that address important issues, making Kalendar more stable and usable.
It's been another busy week in KDE land with the seemingly never ending improvements to the Plasma Wayland session as well as introducing some new features like a new Overview Effect.
KDE developers remain very busy on the desktop as the end of summer approaches. Among the strides made this week include:
- A new QML-based overview effect has landed. This new overview effect will replace the "Present Windows" effect and possibly the desktop grid effect too. This new effect akin to macOS' Mission Control overlay will come with KDE Plasma 5.23.
While the UI, frontend, and related frameworks of iOS development saw drastic changes over the last 7 years since the initial KDE Connect iOS project in 2014, the file structure of the project appears to be just as sensible today as it was 7 years ago. The file structure can be roughly categorized into 6 sections:
LAN backend section: consisting of BaseLink.h/m, LanLink.h/m, BaseLinkProvider.h/m, LanLinkProvider.h/m. Responsible for establishing and managing LAN connections, including sending and receiving of data, handling sockets and connections, loading and verifying TLS identities, etc.
Network package section: consisting of NetworkPackage.h/m. Responsible for defining, serializing, and deserializing Network packets, the fundamental communication blocks of KDE Connect.
Device section: consisting of Device.h/m. Responsible for defining device objects. These are the objects that represent any remote devices that the host has interacted with, including their information, status, and any functionalities that they might have.
App background function: consisting of BackgroundService.h/m. Responsible for defining and executing functionalities that are required somewhere else in the app, such as refreshing device lists, saving remembered devices, taking the appropriate actions when device status changes (pairing, rejected, etc.).
Plugins section: consisting of PluginService.swift and the various .swift plugin files/classes. These classes are responsible for handling individual plugin functions, much like how plugins are handled in the Qt and Android versions of KDE Connect.
Views/UI section: consisting of the various .swift files, written in the SwiftUI frontend framework, to define the visible components.
To recap, I started this small project called “kjournald” to scratch to a few itches: I wanted an abstraction of the journald C-style API in terms of a QAbstractItemModel and second, I needed an application for doing offline analysis of journald databases. The latter reason comes from embedded use cases of mine, where I find it very handy to just grab a complete journald database of some embedded device and then analyze it on my host system and look into what happened on the device. — As said before, there are existing and great projects that handle some of those use cases, but for various reasons they architecturally do not really fit to what I need.
Since my initial focus was the offline use-case, i.e. where I have a journald database that does not gain any new log entries, I shifted my perspective and looked what I needed to make the browser app usable on my host system. So I have to better deal with logs that gain new entries over time. This lead to quite a few new features and cleanups in my reference browser implementation but also helped to further cleanup the API.
A lot has happened around bringing KDE applications to Android since I last wrote about that here and spoke about it at Akademy 2021. Here are some of the highlights.
Extensions are a major part of the overall GNOME experience as they add in value to the ecosystem either it is too mould its Desktop Environment (DE) to workflow, to add more functions than provided by default, or to freshen up the user interface. To put the long story short you can customize your desktop theme with help of these extensions.
With the default Ubuntu switching from Unity towards it, now it is time that you get familiar with different choices that it offers. Finding one can be quite a difficult task this is why we have compiled for you a list to save your time and energy to follow through to know it all.
It has been a great journey working on the Tracker project. In the past 10 weeks, I got to learn a lot about the project and its architecture. This is the final submission of the project. For the weekly updates, check out my previous posts here.
With the 30th birthday of Linux coming up, TechRepublic's Jack Wallen argues that its distros "are so much better today."
Slackware, one of oldest Linux distributions, has just announced the long awaited version 15.0 RC1 is available for download from the usual mirrors. Here's the changelog.
The Linux operating system is a forerunner of the open-source technologies that we use today. Fedora is one of the top bleeding-edge distributions backed by Red-hat and the Fedora community. The community share some common values or the Four Foundations: Freedom, Features, Friends, and First.
These values make Fedora a cutting-edge distro which I favor for development due to its consistent OS experience, support for emerging technologies, and extensive support from Fedora Friends.
SparkyLinux 6.0 is a major upgrade that comes with updated packages, a new Debian 11 base, Linux Kernel 5.10, and still retains the support for 32-bit computers.
As always, Debian release are big, and they are hugely important as they serve as the base for some of the most popular Linux distributions out there.
The Raspberry Pi 4 has been the main topic of many electronics hobbyists and a plethora of software developers that love the platform. The Raspberry Pi 4 introduced two micro HDMI ports, with a single port offering 4k 60 Hz, and both ports providing up to 4k 30 Hz. According to the latest round of patches submitted by Maxime Ripard, we are soon going to receive improved support for 4K 60 Hz resolution using Broadcom VC4 processor and HDMI.
Google Forms are one of the most common tools to create online surveys and share them with users for data collection purposes. It has an easy user interface which makes creating surveys a hassle-free task, and besides being free, it supports many features for different question types that you may wish to use.
But Google Forms has a big issue: It is proprietary, and controlled by one of the most evil companies on the planet, Google. And unless you agree to Google’s policies and sign up for their platform, you won’t be able to use their service.
Luckily, many open source alternatives for Google Forms and other online survey forms services have matured enough to compete with the proprietary survey software in the market. Today, we present 5 of these data for your own use.
Ever€® Gauzyâ⢠is an open-source self-hosted business platform which offers ERP Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), Human Resources Management (HRM), project management system, Sales and Marketing management system.
Focalboard has consistently been a crowd favorite Trello, Notion, and Asana alternative and competitor.
Focalboard is a project and task management tool that helps project managers to define, organize, track and manage work across teams. With Focalboard, you can assign tasks, view progress, have conversations all in one place. It is fast, self-hosted, offers a slick offline desktop app, perfect for kanban beginners, beautiful-looking, and feature-rich application.
As a work management solution that helps you organize work, improve collaboration and manage teams. You can Install Focalboard on Your Synology NAS, and you can use it for recurring meeting agendas.
Apache AGE is a PostgreSQL extension that provides graph database functionality. AGE is an acronym for A Graph Extension, and is inspired by Bitnine's fork of PostgreSQL 10, AgensGraph, which is a multi-model database. The goal of the project is to create single storage that can handle both relational and graph model data so that users can use standard ANSI SQL along with openCypher, the Graph query language.
I have been working on tracker project for the past 10 weeks to improve its support for custom ontologies. It has been a great journey and I gained great software engineering experience by exploring the project and its architecture. Also, the project mentors helped me a lot during the project. In this article I’m going to summarize the work done in the project and the future work.
Over the summer I worked on implementing the new screenshot UI for GNOME Shell as part of Google Summer of Code 2021. This post is an overview of the work I did and work still left to do.
The project was about adding a dedicated UI to GNOME Shell for taking screenshots and recording screencasts. The idea was to unify related functionality in a discoverable and easy to use interface, while also improving on several aspects of existing screenshot and screencast tools.
So here we are near the end of GSoC 2021 and with that, I am sharing details of the work I completed in the second phase of the coding period.
The team behind Go has released version 1.17 of the programming language. As with the previous releases, most of the innovations are under the hood: The compiler has been optimized for the benefit of the performance of the programs created and the Go team has simplified the dependencies in the module graphs. At the language level, the release is a package unsafe new functions for handling pointers.
Finally, there are some additions to the platforms. After Go 1.16 brought a native connection to Apple Silicon, the current release aims at 64-bit ARM architectures under Windows including the integration of C code via the tool cgo. The latter now also works for 64-bit MIPS architectures under OpenBSD.
The developers of SixtyFPS have released the toolkit for creating graphical user interfaces in version 0.1. According to the related blog entry, the release marks the transition from “lab mode”, i.e. the experimental laboratory mode, to the phase in which the toolkit can be used appropriately for development from the team’s point of view.
MySQL is a popular and easy-to-use Database Management System that comes packaged with many features and flexibility to fit a wide range of use cases. One such feature is the MySQL date data type that is used to generate and store date values.
In this guide, we will walk you through the MySQL date data type and show you how you can filter from a range of date.
Since it's not very usual I post here, let me remind you who I am. I'm Pedro, a.k.a. RandomShaper in the Godot community. I've been contributing to the engine since 2016, when I discovered it –version 2.1 was the newest– and decided to use it to create my game Hellrule. Precisely while testing this project on different models of Android phones, I found the need to make the improvements I'm explaining in this post.
[...]
However, depending on the demands of the game and the hardware it's running on at a given time, that may not be possible. If the device running the game is not powerful enough to keep everything at 60 FPS, the engine will run at a lower effective FPS rate. Rendering and idle processing will then occur less than 60 times per second, but the engine will do its best to have the gameplay-physics running at the target rate, by executing more than one of those physics steps per visible frame.
If you look again at the game loop above, you'll understand that a consequence of the engine looping at a lower frequency is that, user input is also pumped and handled less frequently, which leads to having a lower responsiveness in addition to a less smooth update of the display.
The third release of RcppFastFloat arrived on CRAN. The package wraps fastfloat, another nice library by Daniel Lemire. For details, see the recent arXiv paper showing that one can convert character representations of ‘numbers’ into floating point at rates at or exceeding one gigabyte per second.
Exception handling refers to the process of predicting and defining ways to handle errors raised in a program during execution. An error, in most cases, refers to an unexpected event or occurrence during the execution of the program. For example, an error may occur while reading a file either due to the file not existing or the user not having the right permission to read or write to the file.
This tutorial will show you how to implement exception handling in Ruby using the raise and rescue blocks.
Loops are a fundamental concept in any programming language. They allow us to execute a specific action continuously as long as a specified condition is true.
Ruby also offers the concept of loops that can perform similar actions. However, each loop method takes a different approach, and the purpose of the loop dictates its efficiency.
This quick guide will walk you through Ruby’s most common types of loops, including the while loop, for loop, and do while loop.
Ruby is a powerful programming language that offers modern features and tools. One such feature is support for object-oriented programming, including encapsulation polymorphism, abstraction, inheritance, and more.
This tutorial will discuss a key concept in object-oriented programming: object and classes.
Working with files is practically a requirement for any developer. In most instances, if you are not saving data to a database, you are probably saving it to a file.
This guide will show you how to use Ruby I/O methods to open, read, write, and create new files.
Ranges are everywhere in our daily life. For example, it could be how long it will take to read this article, the distance between Moscow and London, the number of days between now and Christmas, etc.
Although ranges may be implemented differently in a programming language, the core concept does not differ.
In this tutorial, we will learn how to use ranges in the Ruby programming language.
None of us can dispute that Python is one of the most popular and useful programming languages. It offers a wide range of data types that are useful in a wide range of applications.
One of the fundamental and versatile data types in Python is a list. A Python list is a collection of ordered items separated by commas. A python list is mutable, and you can change list items.
This tutorial will show you how to create a python list and offer various ways to locate the maximum value inside a list.
In this article, we are going to see different methods for the string list iterations.
A dictionary is one of Python’s most fundamental data types. A Python dictionary is a collection of data values expressed in the form of key-value pairs.
This tutorial will discuss using the get() function to get a value in a Python dictionary.
A switch statement—or simply a case statement—is a control flow mechanism that determines the execution of a program based on the value of a variable or an expression.
Using a switch statement allows you to test multiple conditions and only execute a specific block if the condition is true. Although it works similarly to an if…else if….else statement, the syntax is simpler and easier to read and manage.
This tutorial focuses on showing you how to create and work with switch statements in C programming.
Arrays and pointers are among the most fundamental data structures in the C language. They allow us to create flexible and easy-to-manage programs with only a few lines of code.
Most of us are familiar with creating arrays with data types such as integers, characters, or floats. This guide will show you how to create an array of pointers and use it to store data.
The fgets function is defined in the C standard library (stdio.h) and used to read up to n characters from a specified stream such as standard input stream or file stream) to a string pointed with str.
The C fgets function reads characters until it encounters an End-Of-File (EOF), a newline character, or when n-1 characters are read.
This quick tutorial will discuss how to use the fgets function in C programs.
The widespread DNS protocol has a security problem: attackers can forge data while it is being transported and infiltrate it into the DNS server. The Domain Name System Security Extensions (DNSSEC) are optional extensions of the DNS protocol for name resolution on the Internet, which contain security mechanisms to guarantee the authenticity and integrity of the data.
Of the iX-Workshop teaches administrators of DNS servers, web servers and mail servers how the DNSSEC security standard can serve as the basis for verifiable and trustworthy name resolution. First, the security problems of unsecured DNS are presented. Afterwards, trainer Carsten Strotman shows how DNSSEC actually helps with protection.
The demand for cybersecurity professionals to protect networks and data systems has surged over the past few years. Unfortunately, becoming a cybersecurity professional involves morphing to fit several cybersecurity roles. As such, you should have multiple skills, ranging from network administration, tech desktop support, end-user advocate, monitoring and responding to cybersecurity breaches, performing post-mortem of a security breach, and more.
As you know, Linux plays a significant role in cybersecurity. Linux distributions, specifically Kali Linux, help cybersecurity professionals perform vulnerability assessment, in-depth penetration tests, and forensic analysis. Linux is also the Operating System of choice used in most security appliances and network devices, such as firewalls, routers, virtual private networks, and more.
State-run China National Radio has called for a stronger vetting of online video games and zero tolerance towards those that misrepresent historical events.
Citing a game depicting Chinese general and Song Dynasty hero Yue Fei, China National Radio commentator Zhang Keyue lamented that mostly teenage players could easily be influenced, eventually misinterpreting the game's historical fiction as true.
The French animal health company Ceva Santé Animale is currently enforcing a judgment from Düsseldorf Regional Court against Bayer and Elanco. The court had ruled in mid-July that Bayer and Elanco infringed Ceva’s EP 2928454 B1 with the veterinary product BayCox Iron, and ordered a halt to sales (case ID: 4b O 40/20). Ceva did not take long to enforce the ruling, although Bayer and Elanco have already appealed the decision.
EP 2928454 B1 was not granted until early 2020. It protects a triazine compound to combat protozoan diseases in animals. Other patents also protect similar combinations of active ingredients. However, these are usually administered orally to animals and not as an injection into the neck or behind the ear of the animals, as protected by the Ceva patent.
Ceva regarded it as infringed because BayCox Iron uses a combination of an iron compound with toltrazuril. This has now been confirmed by the Düsseldorf judges. However, the sales stop for BayCox Iron refers only to the administration via injection and with a certain dosage in suspension form.
In the proceedings, Bayer and Elanco had invoked a private right of prior use and referred to the development of the product, which started seven years before approval.
The judges did not agree, nor did they grant the request for a stay of proceedings. Bayer and Elanco had both filed an opposition against the granting of the patent at the European Patent Office and this is still pending. Elanco became embroiled in the dispute after it acquired Bayer Animal Health in August 2020.
On August 16, 2021, Uniloc filed a motion to dismiss its appeal and the Federal Circuit dismissed the appeal a day later. Unified had won on all issues at the PTAB in IPR2019-00453, resulting in all five claims of Uniloc’s U.S. Patent 7,020,252 being found unpatentable. Uniloc raised RPI in the case, but the Board agreed that Unified was not an RPI.