How to Optimize Laravel Application Performance

https://laravelnews.imgix.net/images/laravel-image-august-sponsored-post-02.png?ixlib=php-3.3.1

With the growing pace of tech-oriented companies, software development is picking up. Many new tech stacks are coming into the world to make the development process easier, and a lot of these new companies are using PHP as the backend framework for their apps. PHP, with its various version updates, has grown popular among developers. Most PHP developers have heard and worked with Laravel at least once. Laravel is most known for making business-focused applications and providing security for the application. The most important thing that attracts most developers is that it allows them to do micro changes to improve website optimization.

In this article, we will discuss how we can increase the speed of your Laravel application. So let us begin.

Top Ways to Improve Laravel Performance

Some of the suggestions below may not improve the speed of your specific application, but you can try all of them, and with trial and error, you will see what is best for you. Let us discuss each of them one by one.

Utilize Laravel Performance Monitoring Tools

Laravel performance monitoring tools help to improve the performance of your application using metrics and error reports. You can use these stats to predict the behavior of your users. There are many tools available in the market for monitoring Laravel applications.

Scout APM helps you get these metrics easily in a single dashboard which helps you observe them quickly. You can check metrics like where users are leaving the application, where users are spending the most time, bad API calls, etc. Business teams can look at the data and suggest a relevant development path for the application.

Front End Asset Optimization with Laravel Mix

Laravel Mix is used for mixing different stylesheets into a single bundle and making it a single file. Larvel Mix is present by default in all Laravel applications. Laravel mix is generally used for compiling different CSS files into one file so that the application does not need to call two different HTTPS APIs. Hence, the speed of the application can be increased a little bit. Sample code for mixing two CSS files using Laravel mix is given below.

1mix.styles([

2 'public/css/vendor/normalize.css',

3 'public/css/styles.css'

4 ], 'public/css/all.css');

Mixing two CSS files generally increases the size of the generated file, so it dampens the benefit gained by mixing two CSS files. To tackle this issue, we optimize the mix bundles and decrease the size for the production-level applications. It helps in the fast loading of the application and a quicker response time.

Revert to Caching As Much As Possible

Caching in computer science means using the information already produced in some previous iteration/execution cycle. In any kind of web application, caching plays an important role in increasing the speed of
the website.

For example, let’s say an API is called very frequently in the application. In this case, you can simply reuse the response of the API
and use it again and again instead of calling the API again. Caching decreases the API response time of your application, and the cost of database queries.

Laravel provides a very helpful command for caching, which helps in boosting performance. It is given below:

1php artisan config:cache

You can use this command for caching the config file. Similarly, you can cache the route in Laravel using the following command:

1php artisan route:cache

Using Queues

Queues are crucial data structures that could be used to improve the performance of applications. Most of the time, queues are used to send messages either to the end-user or to another service in architecture.
For example, if you want to send messages after they login into your application, you can push the messages into a queue, and they will be sent one by one. Also, using a third-party solution might cause a delay
in sending notifications, but queues will send notifications immediately, giving you a better user response.

Make Sure You’re Using the Latest Version

The latest version of PHP is necessary for optimizing the speed of your Laravel application. The latest version has some crucial changes to the current version of Laravel. So you should always try to install the latest version of both PHP and Laravel.

Minification

Minification means minimizing different components of your applications as much as possible. You can optimize various things like code, server-side configuration, and usage of assets on the website. In this part, we will discuss the things that could be minified in the Laravel application.

HTML Minification

HTML minification is the process of making the code simpler and breaking it into pieces for the sake of faster loading of the website, minimizing the API calls in the frontend. It helps for faster compilation of the code and execution of the script. This method can drastically decrease the load time and smoothness of the website. Also, it is helpful in debugging bugs because less code is more clear to read.

Minify CSS

CSS plays a main role in the response time of the website. More CSS means more style; hence it would take more time for the website to load. Different kinds of CSS frameworks can be used for styling your website. Minifying CSS also includes removing irrelevant styling, bad code style, removing spaces, etc. But while minifying CSS, you should be very careful because the behavior of all browsers is not the same as the same CSS. Different browsers behave differently toward the CSS; hence you should properly test your application while minifying CSS.

Minify Javascript

Minifying Javascript is mostly done for running the scripts faster than the non-minified versions. In the minification, you remove unused codes like API calls, variable definitions, irrelevant imports, etc. If you do javascript minification carefully, it could improve the performance drastically. It also helps in sending data faster from the website to the servers.

Optimize Your Laravel Application Performance with Scout APM

Scout APM is a modern-based application monitoring system for monitoring applications of almost all types. It supports many frameworks like PHP, Ruby, Python, Elixir, etc. Here we will talk about how we can improve a Laravel application performance using Scout APM. Scout APM supports all versions of Laravel above 5.5. Scout also handles the problem of N+1 queries, which is one of the major problems in Laravel Eloquent.

Installing Scout APM in your Laravel application is very simple; you just have to run the following command in your console,

1composer require scoutapp/scout-apm-laravel

When you run this command scout-php is installed.

After that, the next step is configuring the environment variables in the .env file. To integrate Scout into your application, you have to add the following keys:

1# Scout settings

2 

3SCOUT_MONITOR=true

4SCOUT_KEY="[AVAILABLE IN THE SCOUT UI]"

5SCOUT_NAME="A FRIENDLY NAME FOR YOUR APP"

In the case of installation through Heroku Addon, you don’t need to set SCOUT_MONITOR and SCOUT_KEY explicitly; it is automatically set.

The third step is adding the config/scout_apm.php using the following
command.

1php artisan vendor:publish

2--provider=\"Scoutapm\\Laravel\\Providers\\ScoutApmServiceProvider\"

After this step, you will need to clear and rebuild the cache, or it can give unexpected results. The final step is that after making these changes, you have to deploy your application. It will take around five
minutes for results from your website to appear in Scout’s dashboard.

Also, if you want to add the scoutapm PHP extension, then you can also do it easily using the following command,

1sudo pecl install scoutapm

You will have to install this extension if you want some instruments like the timing of libcurl and file_get_contents.

In this way, Scout APM can help you see all the
metrics of your Laravel application. You can use these stats to improve your Laravel applications and generate more value for your customers. You can start using Scout APM free for 14 days, even without a credit
card. If you want your Laravel application to perform better you should start analyzing its metrics now. You can sign up to start your first application on Scout APM’s website.

Laravel News

Strike Industries Strike Clicker: Something Different – A Finger Trainer

https://www.alloutdoor.com/wp-content/uploads/2022/07/imageedit_722_6214519341.jpg

Strike Industries, based in California, just released the Strike Clicker, a device that fits easily in hand to strengthen or rehabilitate a trigger finger – or relieve stress, do the ADHD stimming thing, train your dog, or just annoy someone with a bit of noise.

The Strike Clicker arrives unassembled, so the self-entertainment begins with a short, IKEA-style assembly process. Then the real fun starts. This hand-held device has a trigger-like lever with an approximately two-pound “break.” So, even though there are no sights on the top (hey, Strike Industries, ever thought about that?), you can get plenty of reps in while waiting in traffic. Or maybe you’re not so good at the “chill” part of Netflix & Chill. This might be the fix.

strike clicker

Most people who have a firearm with a two-pound trigger break don’t need finger training. But this little device could be a panacea for someone who’s bringing a hand back from an injury or some other weakness. And there’s no law saying its use is limited to the index finger. Indeed, I’ve known a handful of people whose physical histories force them to use something other than the index finger as a trigger-presser, usually with good results, so long as determination is in the mix. Then there’s this guy, who can shoot with his toes, who might have even more ideas on how to use the Strike Clicker. But I digress.

Fitted with a keychain hole, the little clicker appears easy to take anywhere. The audible click makes it suitable for training your favorite pet, too. That’s a more likely sub-use of the Strike Clicker than prepping to grease up and flex on stage at a trigger finger fitness show.

In a year that’s had its share of discouraging news and inflation, maybe an $8.95 fidget device on our keychains is just the distraction every gun owner needs.

strike clicker

The post Strike Industries Strike Clicker: Something Different – A Finger Trainer appeared first on AllOutdoor.com.

AllOutdoor.com

Best .22 LR Precision Rifles for Competition & Precision Shooting

https://www.pewpewtactical.com/wp-content/uploads/2019/09/1.-.22LR-Round-1024×683.jpg

When most people think of .22 long rifle, they think of plinking with a 10/22, learning as a kid, or just training with a lower-cost round.

Most people do not associate .22 LR with precision rifle shooting or rifle competitions…but they should. 

.22LR Round
.22 LR Round

With the rising cost of ammo and limited parts availability in the firearms industry, many are rediscovering the round and pushing it to its limits. 

With a focus on competition, what are the rifles that people are running? The field varies a great deal, with some newer shooters jumping in with base model 10/22s and the like. 

Ruger 10/22 Charger
We love all kinds of .22 rifles around here.

But to really narrow that down, we’ve collected some of the top precision guns chambered in .22 LR. So keep reading to learn more!

Summary of Our Top Picks

  1. Great for Beginners

    Ruger American Rimfire Long Range Target

    Detachable rotary mags, compatible with 10/22 mags, easy to use

  2. Most Durable

    Tikka T1x MTR

    Great to shoot regardless of the elements, durable

  3. Best Trainer .22 LR

    Bergara B-14R Steel 10+1 Threaded Rifle

    Can work as a trainer, Rem 700 accessory compatible

  4. Most comfortable

    Ruger Precision Rimfire

    Uses pistol grip & safety that are mostly interchangeable with ARs

  5. Best High End Option

    CZ 457 Varmint Precision

    High quality, solid reputation, but pricey

Table of Contents

Loading…

Best Precision .22 LR Rifles

1. Ruger American Rimfire Long-Range Target rifle.

One of the things Ruger does very well is .22 LR platforms. Its Mark III and Mark IV pistols are hugely popular for a reason, and the 10/22 is an iconic rifle. 

Ruger Mark IV
Mark IV.

So it should come as no surprise that Ruger starts our list off with the Ruger American Rimfire Long Range Target.

This rifle features an adjustable length of pull and comb, making it easy to set up for almost any shooter. Its adjustable trigger allows for pull weights from 3 to 5 pounds, lending to even more versatility with varied shooters. 

Ruger American Rimfire Long Range Target
Ruger American Rimfire Long Range Target

The threaded bull barrel sits snugly in an action with a 60-degree bolt, allowing for ample clearance of optics. 

Detachable rotary magazines allow for a crossover with 10/22 mags, and the extended magazine release makes reloading smooth and effortless.

All in all, this is a great starter rifle and a serious base class contender.

Great for Beginners
800

at Guns.com

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

2. Tikka T1x MTR

Tikka rifles have long been synonymous with high-quality, and the T1x MTR embodies that. 

Tikka T1x Build for NRL22 Base Class
The Tikka T1x Build for NRL22 Base Class

Based on the action of the T3x centerfire rifle platform, it will have a familiar feel when shooting the T1x. A bedded action and textured pistol grip highlight the factory stock nicely. 

Tikka made the bolt on the T1x from stainless steel. This makes it extremely resistant to the elements, something often overlooked in outdoor competitions. 

The real crown jewel of the T1x though is the barrel…something that is both a gift and a curse. 

Tikka T1x in MDT ACC Chassis
Tikka T1x in MDT ACC Chassis

The crossover profile Tikka used allows for all the benefits of a heavier bull barrel without all the extra bulk and weight. This truly is a huge, often overlooked benefit, especially when moving between positions on stages. 

The downside is that the barrel is currently hard to source, so in the event of damage, it may lead to a downed gun for prolonged periods. 

Most Durable
579

at Ky Gun Co

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

3. Bergara B-14R

Another familiar name in bolt-action rifles, Bergara offers up the B-14R as their entry into the precision .22 LR market.  

B-14r Carbon Fiber
B-14R Carbon Fiber

Available with either a steel or carbon fiber barrel, the B-14R fills a niche that many other factory rifles may not: it can serve as a trainer for a shooter’s centerfire rifle. 

This is accomplished by making the B-14R work within the dimension of a Remington 700 pattern. 

Best Trainer .22 LR
1000

at Brownells

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

This allows shooters to utilize Rem 700 triggers, stocks, and bases, most of which can mimic their centerfire rifle setups.

Shooters can even use many of the same scopes and mounts as the optic setup is Rem 700 compatible. 

4. Ruger Precision Rimfire

Ruger is back on the list again. This time with the Ruger Precision Rimfire.

The Precision Rimfire sports a slightly different chassis than its sibling above — the American Rimfire.

Length of pull and comb are still adjustable in this model, but the Precision boasts a molded chassis and adjustable buttstock. A rear Picatinny section allows you to attach a bag rider or monopod. 

Ruger Precision Rimfire
Ruger Precision Rimfire

The front of the chassis features a free-floated M-LOK handguard allowing for direct attachments of bipods and other accessories. 

The Precision Rimfire also has an adjustable trigger, with pull weights as low as 2.25 pounds up to 5 pounds as the shooter sees fit. 

Most comfortable
507

at Guns.com

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

Some shooters will find this rifle more familiar and comfortable as it uses a pistol grip and safety that are mostly interchangeable with the AR platform rifles. 

Prices aren’t much different than the American Rimfire, which makes it another great choice for the base class.

5. CZ 457 Varmint Precision

CZ is another name in the firearms industry that is well regarded for its quality and attention to detail.

CZ Pooh

The 457 Varmint is proof that as a corporation, CZ listens to the feedback provided to them by their customer base. 

The push-to-fire safety was a huge change that CZ said customers had been requesting for years. So, they implemented it into this system. 

CZ 457 Varmint Precision
CZ 457 Varmint Precision (Photo: Adelbridge)

Additionally, CZ opted to change out their 90-degree bolts for 60 degrees, allowing shooters to use larger diameter scopes as well as possibly lowering the ring height while still clearing the bolt knob.

Combine all of this into a chassis that utilizes a Luth-AR adjustable stock and AR-style grip, and you have a high-quality precision rifle with a familiar and comfortable feel to it.

By no means is the CZ inexpensive, but for good quality, you do have to pay a premium sometimes.

Best High End Option
1149

at Palmetto State Armory

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

6. Vudoo Actions

The first barreled action that is worth a look at is the Vudoo. It’s available in two different offerings, the Three 60 and the V-22.

These Vudoo actions are Rem 700 compatible for stocks and chassis and feature a 60-degree bolt and a double straight taper contour. 

What truly sets them apart from many other competitors, though, is their attention to detail and implanting into action.

Vudoo 22 Precision Rifle Setup
Vudoo 22 Precision Rifle Setup (Photo: Jack Leuba from Knight’s Armament)

A great example of this is the control-round-feed-protocol in all of their .22LR actions. 

From the time the round leaves the magazine until the spent casing is ejected, the bolt has full control of the round. 

You might ask why this matters. Well, the answer is two-fold. 

First, it makes the feeding and extraction of the round smoother. More importantly, it won’t degrade the accuracy of the round.

Vudoo 22 Precision Rifle Setup
Vudoo 22 Precision Rifle Setup (Photo: Jack Leuba from Knight’s Armament)

For those not familiar, .22 LR generally has a soft lead projectile that is easily marred. 

With no feed ramps and an angle that prevents the round from touching anything while it is being inserted into the chamber, the Vudoo system does everything possible to ensure that the round you fire is the same as when it left the magazine. 

For open-class shooters, the price of these barreled actions is easily justified. 

Best Barreled Action
1770

at Brownells

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

7. Zermatt RimX

Another barreled action that is hugely popular in the .22 LR precision scene is the RimX by Zermatt. 

Made to order with each one allowing for customization by the customer on bolt head type, bolt knob style, and rail MOA height, the Zermatt actions are Rem 700 scale and compatible. 

The action features a two-lug, 90 degrees bolt with a floating interchangeable bolt head. The bolts do offer a round control feed, though, in truth, there isn’t much information on how it works when compared to the Vudoo. 

Zermatt is known for the precision machining work and has partnered with another name in precision shooting, Bighorn Arms, to bring a stellar action to the market. 

As with Vudoo, the Zermatt is an easily justified purchase for those chasing the highest quality, most consistent products that are available. 

100

at Zermatt Arms

Prices accurate at time of writing

Prices accurate at time of writing

Available Coupons

Tell Me More About Competing with a .22 LR

NRL22 is a division of the National Rifle League designed to grow the love of competing with the .22. 

Six classes within the division break it down into fairly matched groups. Think kids shooting a match against other kids instead of professional adults. 

NRL22 Competition
NRL22 Competition (Photo: NRL22 via Facebook)

Every month, clubs across the country compete for top spots and prizes with a slew of sponsors attached.

Each match has five stages. Some have barricades, and some may contain gear restrictions to challenge shooters. All are designed to be fun and build skills. 

Low member fees and softer shooting guns also lend these events to being more kid-friendly and less intimidating to newer shooters. 

Fully Upgraded 10/22 with Magpul Stock and Tandemkross Upgrades
Fully Upgraded 10/22 with Magpul Stock and Tandemkross Upgrades

The serious competitors, especially in the Open and Old Guns divisions, run rigs that are on par with PRS guns chambered in bigger calibers.

Choosing a Gun for Competition

If you’re thinking of competing and wondering which gun to buy, let me offer this.

There are two ways to go about a competition gun…

First, you can buy a factory complete gun, slap an optic on it and go to town. Some people do well with this, others prefer option two. 

nrl22 shooting
NRL22 shooting

The second option is to get an actioned barrel, drop it in a chassis or stock, and that’s your gun.

This seems to be the go-to for more serious competitors. It allows competitors more customization and control, but at the cost of, well, greater cost.

What will work best for you?

You know what I’m going to say…that depends. It all comes down to your budget and what you want to do with the gun.

Final Thoughts

Whether you are looking to shoot your first competition or a seasoned shooter looking for another match to tackle, NRL22 and PRS .22 matches present great opportunities. Once you set up your rifle, the cost of ammo is leaps and bounds less expensive than centerfire cartridges. 

Fully Upgraded 10/22 with Magpul Stock and Tandemkross Upgrades
Fully Upgraded 10/22 with Magpul Stock and Tandemkross Upgrades

Depending on how far down the rabbit hole of accuracy and quality you want to go, an inexpensive factory rifle can get you in the door. More serious competitors do opt for barreled actions that are built to their preferences. 

Find the gun that you’ll enjoy the most, can shoot well, and see where it leaves you. 

What do you think of these .22 LR options? Have others? Drop them in the comments below. Need something to feed your favorite plinker? Check out our guide to the Best .22 LR Ammo.

The post Best .22 LR Precision Rifles for Competition & Precision Shooting appeared first on Pew Pew Tactical.

Pew Pew Tactical

The Special Poverty Rifle, Part 1: Buying Parts and Building

https://www.thefirearmblog.com/blog/wp-content/uploads/2022/07/20220701_172148-180×180.jpg

A short while back I was challenged by fellow TFB Staff member James Reeves (you may have heard of him), to build an SPR as cheap as possible. Well, myself being an unapologetic “poor”, I, of course, took him up on the challenge and started the project Special Poverty Rifle. More AR-15 Content @ TFB: […]

Read More …

The post The Special Poverty Rifle, Part 1: Buying Parts and Building appeared first on The Firearm Blog.

The Firearm Blog

Build APIs in Laravel With the Restify Package

https://laravelnews.imgix.net/images/laravel-restify.png?ixlib=php-3.3.1

Laravel Restify is a package to make a powerful JSON:API-compatible Rest API with Laravel. After installing the package and following the setup guide, you can get started quickly using the repository CLI:

1php artisan restify:repository Dream --all

The repository is the core of this package. The example command above would generate a blank repository that you could add fields to, like the following example:

1namespace App\Restify;

2 

3use App\Models\Dream;

4use Binaryk\LaravelRestify\Http\Requests\RestifyRequest;

5 

6class DreamRepository extends Repository

7{

8 public static string $model = Dream::class;

9 

10 public function fields(RestifyRequest $request): array

11 {

12 return [

13 id(),

14 field('title')->required(),

15 field('description'),

16 field('image')->image(),

17 ];

18 }

19}

If you don’t define the $model property, Restify can guess based on the repository class name (i.e., DreamRepository would be the Dream model).

Here’s an example of the built-in UserRepository class (you would want to protect this in a real app) that will return an API response in JSON API format:

1GET: /api/restify/users?perPage=10&page=2

2{

3 "meta": {

4 "current_page": 1,

5 "from": 1,

6 "last_page": 1,

7 "path": "http://localhost:8000/api/restify/users",

8 "per_page": 15,

9 "to": 1,

10 "total": 1

11 },

12 "links": {

13 "first": "http://localhost:8000/api/restify/users?page=1",

14 "next": null,

15 "path": "http://localhost:8000/api/restify/users",

16 "prev": null,

17 "filters": "/api/restify/users/filters"

18 },

19 "data": [

20 {

21 "id": "1",

22 "type": "users",

23 "attributes": {

24 "name": "Paul Redmond",

25 "email": "paul@example.com"

26 }

27 }

28 ]

29}

This package also walks you through the authentication process, advanced filtering, and more!

Learn More

To get started, I recommend watching the Restify Course, which has 24 lessons on using Restify to build an API with Laravel. You can also read the official documentation to install this package and start using it in your applications. Finally, you can see the source code and contribute on GitHub at BinarCode/laravel-restify.

Laravel News

How to Turn a Landline Telephone Into a Cell Phone Bluetooth Receiver

https://i.kinja-img.com/gawker-media/image/upload/s–7eBAoX4K–/c_fit,fl_progressive,q_80,w_636/11f38abc5d54fccc46ad228c2d30a438.jpg

Photo: ShutterStockStudio (Shutterstock)

I’m not usually the nostalgic type, but I miss landline phones. Cell phones may do eight billion things, but they are tiny and inconsequential—artificial, semi-disposable black rectangles—whereas old telephones have weight, substance, and style. They come in lots of colors. The receiver feels good in your hand. It feels great when you slam down the handset to hang up on some jerk—angrily poking at the hang-up button on your iPhone doesn’t even come close. Old phones even sound better: The ringtones come from actual bells—so much more real than a piddly little tune or digital squonk—and the sound of a voice on a cellphone is terrible when compared to the same voice on an analog phone.

If you want to revisit the old days of our pre-digital past or experience it for the first time, you don’t need to sign up for a landline. It’s easy to convert an old push-button or rotary phone to a Bluetooth receiver that works with your cell phone, and almost as well as a dedicated landline phone. Here’s how to make it happen.

How to turn an old landline telephone into a cell phone Bluetooth receiver

Get an old phone. If there isn’t one in your attic, there are thousands of old telephones on eBay that can be purchased for very reasonable prices, running the gamut from the ubiquitous beige push button models of the 1980s, to classic black rotary phones to pink “princess” phones, and novelty cheeseburger phones.

Get a specialized jack. There are a few ready-made devices that instantly transform your old phone into an old phone that gets cell calls. Cell2Jack retails for about $30, and the Xlink BT Bluetooth Gateway lets you connect three different cell phones to the same landline phone and costs around $90.

Hook it up. Most old telephones don’t have separate power sources because the power came from the same wire that transmits the sounds (such a sleek design), so you’ll have to plug the jack into a power outlet and plug a phone cord into the jack and the phone. Once you do that, you just have to hit the “pair” button and pair up the Bluetooth from your cell phone, and that’s it. Now you have an old school phone, complete with old-school ringer, rotary or push-button dialing, a dial-tone when you pick up the receiver, and even a busy signal.

G/O Media may get a commission

41% Off

LG Oled 55" Smart TV

Pretty
This OLED TV has over 8 million pixels for stunning images, incredible depth of blacks, and vibrant colors, uses an a7 Gen 4 AI Processor for 4K imaging, has low latency if you’re after a good gaming TV, and integrated Google Assistant and Alexa.

Make some calls. You can now experience the joy of the mechanical chunka-chunka-chunka sound of a rotary dial, or the satisfyingly discordant sounds of a push button phone making a connection. Your new phone has the same telephone number as your cell phone, and when someone calls, you’ll be amazed at how freaking loud phones used to ring. Spend many hours talking to your friends. Note how right the handset feels in your hand and how nicely the ear piece cradles your ear. Don’t forget to absentmindedly wrap the coiled cord around your finger as you talk.

The one way your Bluetooth phone will remain inferior to old-school phones

Calls made through POTS (Plain Old Telephone Service) sound better than calls made though cell phones. Cell phones convert sound into electrical signals and send it a thousand miles away then instantly convert it back in sounds. To minimize latency, cell phones limit the signal of the sound they convert. But that’s not all: to make speech more understandable in a smaller “space,” cell phones eliminate some frequencies and boost others, giving people’s voices a compressed, robot feel. Old-school telephones provided richer sound, less squelched and more natural, because they don’t have the space limitation that digital phones do.

Your new franken-phone will be playing back that compressed signal on a different kind of speaker, so it won’t sound as rich as landline-to-landline calls did back in the day. The speaker is likely to be louder and less “tinny” than your cell phone’s speaker though.

Lifehacker

Understanding the Linux Kernel Versioning Scheme

https://static1.makeuseofimages.com/wordpress/wp-content/uploads/2022/07/how-are-linux-kernel-versions-formed.jpg

If you’ve been a Linux user for a long time, you’d know that Linux distributions have unique versions and each version has a specific codename. The Linux kernel also has different version numbers, which act as an identifier for the series the kernel belongs to. However, there’s a difference between how kernel versions were formed earlier and how Linus Torvalds names them now.

MAKEUSEOF VIDEO OF THE DAY

By the end, you’ll be more familiar with the Linux kernel versioning scheme and will feel more comfortable reading kernel version numbers and identifying the various features associated with a specific release.

The Traditional Linux Kernel Versioning

When Linus first started developing the kernel, the versioning system used simply consisted of an incrementing variable scheme starting with zero (0.x). Initially, Linus was the only one working on the project, and this versioning system sufficed the need to document and distribute new kernel releases.

Here are some of the kernel releases that followed this naming scheme:

old linux kernel versions
Image Credit: Wikipedia

Later on, as more developers started contributing to the project and the number of revisions and patches increased significantly, it was decided that this versioning scheme wasn’t suitable for software such as a kernel. And starting from version 1.0, Linus adopted a new scheme with a few additional variables.

Introduction of a More Descriptive Versioning System

In 1994, with the release of Linux kernel 1.00, Linus started using a new versioning system that employed three variables in the syntax: “a.b.c“. These variables (a, b, and c) represent the major release, minor release, and revision number for the specific kernel release, respectively.

Take Linux kernel 1.1.95 as an example. You can decode it as the first major release, first minor release, and 95th revision.

At the time, even minor version numbers denoted stable kernel releases, while odd ones represented development releases. It was important to have separate branches so that developers could add and test new features in the kernel without affecting the stable branch.

Kernel developers add and improve new features in the development branch until it gets stable enough to be released as an LTS kernel. The LTS kernel 3.2 was developed by stabilizing the new features in version 3.1, and similarly, a new development kernel 3.3 branched out of 3.2 to make way for new features that would be then introduced in Linux 3.4.

Starting from Linux kernel 2.4, a fourth variable in the kernel name denoted the patch releases. You can say that version 2.4.37.10 is the tenth patch release for kernel 2.4.37.

A patch release doesn’t mean the number of issues patched in a kernel release. Instead, it counts the number of times an updated kernel was released after patching the issues found.

Up until Linux 2.6, this versioning system was used, and it was effective in distinguishing a specific version from others. Adding revision counts and patch releases in the version number was descriptive, but it meant having lengthier and more complex kernel versions. And yet again, a new and better scheme was required.

How Are Linux Kernel Versions Named Now?

With Linux version 3.0, Linus dropped the fourth variable from the version number. Now, the kernel version is formed according to the syntax: a.b.c, where a, b, and c are the major release, minor release, and revision count, respectively. This versioning scheme is similar to the one used between the 1.0 and 2.4 kernel releases.

Due to advancements in version control systems, contributors could now seamlessly work on stable branches and add new features without accidentally busting the already-working, stable releases. Therefore, the usage of even and odd minor version numbers for stable and production branches of the kernel became superfluous after the introduction of kernel version 4.0, and the first LTS release (4.1) in the 4.x series had an odd minor version number.

You might also notice some characters at the end of the version number, like rcX. Review candidates (or “rc” for short) are preview releases and pre-patch versions of the kernel that the developers need to patch to remove bugs and other issues. These are a replacement for the development releases that were previously denoted by an odd minor version number.

Although these releases are specifically reserved for kernel developers so they can fix the reported issues and implement new features, you can also download and test these kernel review candidates if you want, but it’s generally not recommended considering this is where most of the development happens. The latest preview version of the kernel at the time of this writing is 5.19-rc6.

To create new versions, the preceding variable is incremented when the value of a variable reaches a specific number. For example, the major version is updated to the next digit whenever the minor version count gets close to 20.

Linus mentioned in his 5.0 kernel development mail that he simply updated the major number to five because the minor release count got too large to count on fingers and toes (20!). Similarly, according to kernel.org, the major version number is incremented when the number after the first dot starts looking “too big.” The final kernel version in the 3.x series was 3.19 and the last major 4.x kernel series was 4.20, which was then bumped up to 5.0.

Since version 3.0, the Linux kernel has been following this versioning scheme and it has proved to be efficient for as long as three major kernel releases (versions 3.x, 4.x, and 5.x).

Identifying a Linux Kernel Release Using Version Numbers

Considering the sheer number of Linux kernel versions released, there’s a need for a proper system to identify and differentiate a specific version from the others. With the new kernel versioning scheme, kernel versions can now be effectively identified and compared, and it’s easy to know which kernel version is the latest and which one was released earlier.

If you want to check the Linux kernel version currently installed on your system, you can do that using uname, a Linux command that lets you list system-related information. Depending on the distro you’re running, the version number displayed by uname might be different than actual Linux kernel versions.

MUO – Feed