Monthly Archiv: July, 2021

The Good and Bad of Stock Photography

It may be hard to imagine, but there was a time when it was rare to find high-quality photography on a typical website. Only the big-budget players had access to compelling images. And even then, they were likely borrowed from existing print materials.

Those of us building websites for smaller organizations were often left with less-than-ideal solutions. A lack of available resources made it all the more challenging. We were forced to settle for the likes of clipart (yikes) or low-quality images culled from stock CDs. Short of creating your own artwork, it wasn’t easy to craft a top-notch visual experience.

How things have changed. These days, stock photography is available from all corners of the web. You’ll find everything from completely free images all the way to high-end premium options.

Still, the mere existence of these images doesn’t necessarily translate to great design. It still takes a keen eye and smart implementation to find success.

Today, we’ll look at the impact stock photography has had on web design. We’ll cover both the good and the bad, along with some tips for finding the right images for your projects.

Bringing Visual Experiences to the Masses

Perhaps the biggest benefit of using stock photography on a website is the ability to create a highly visual presentation. Long passages of uninterrupted text are often frowned upon. They’re more likely to turn users off than captivate them. Adding some photography to the mix helps to break things up into bite-sized pieces.

In theory, this also enables a page that’s light on content to appear more substantial. Before the widespread use of stock images, it wasn’t easy to dress up a page that consisted of only a paragraph or two. Images can help provide a more professional and detail-oriented look.

The other big advancement is that these images make it easier to convey a message. That might take the form of an infographic that simplifies a complex idea. But it could also be a photo that sets the mood or an icon that makes user interaction more intuitive.

In this way, stock photography has brought the potential for a great visual experience to the masses. Now, even small and low-budget websites have an opportunity to stand out.

Lightning bolts in the sky.

The Limitations of Stock Photos

In an age where we have access to just about every piece of recorded media, there are still limitations. For example, just because your music app has millions of songs doesn’t mean it includes all of your favorites.

Stock photography has similar constraints. The available images don’t always fit your exact needs. The size, format, and subject matter aren’t always a perfect match. There are occasions when web designers will have to settle for “good enough.”

There are a few factors that can further cloud the picture, so to speak:

Budget

Cost doesn’t necessarily correlate with quality. It’s possible to find some outstanding photos for free. But free resources don’t always have the greatest variety of images, either. Therefore, the lower your budget, the less choice you have.

Being Fenced-in By Membership Sites

A growing number of stock photo membership websites are popping up. You pay a monthly or yearly fee in exchange for access to photographs. If you find a number of images that you can use in a project, it’s often a good value.

Yet this type of deal can also be quite limiting. For designers who spend the bulk of their asset budget on a membership, you’re pretty much stuck with what they have to offer. Suppose their selection doesn’t fit your specific needs, too bad. You may have to find another resource for more relevant images or settle for what’s available.

country farm field wooden fence

Lack of Originality

While there are tons of stock photos available, it seems like a good chunk of what’s out there has become cliché. Photographers and service providers are attempting to cover common subjects and broad use cases. This has led to a certain sameness across various photo resources.

And there’s the rub of stock photography. It can’t possibly serve each website’s unique needs. There are only so many ways, for instance, to photograph two people shaking hands.

Copyright Confusion

One thing that hasn’t really changed over the years is copyright confusion. Back in the day, designers and website owners often grabbed images from other sites and posted them. They did so without a thought as to their usage restrictions. A steady stream of violation letters from copyright trolls put an end to that.

But licensing can still be difficult to understand – even from reputable stock photography resources. There are cases where images are for editorial use only. There have also been restrictions as to maximum image resolution for online posting. Figuring out how and where an image can be used may scare some people away altogether.

Copyright Logo CC paper

Finding the Right Stock Photography for Your Projects

Sometimes finding the right photos for your website is a bit like locating a needle in a haystack. What you need (or something close to it) likely exists, but you might have to dig through several resources before finding it. Situations that require client approval of images make things all the more difficult.

And while there are no guarantees that you’ll find the perfect match, there are some basic things you can do to better your chances. Here are a few techniques to employ when searching for the best stock photos:

Identify Your Favorite Resources

It’s helpful to have various stock photography websites that you trust. Some of these resources might cater to a specific niche and will come in handy on occasion. Others will have a broader focus and be great for your day-to-day needs.

The key is to avoid reliance on a single resource. Instead, find a handful of places that have quality images, clear usage terms, and different styles. This provides both you and your clients with a solid number of image options.

Think About Your Image Needs Ahead of Time

Each website project has its own unique needs when it comes to photography. They include factors such as a photo’s subject, color, size and any enhancements you may want to make. Having a general outline of these items should make your search easier.

Ideally, knowing this information will allow you to choose the best fit from your list of photo resources – right from the start. This (hopefully) means less searching and a more efficient process.

Be Flexible

Having a rigid definition of what you’re looking for can sometimes backfire. Even the best stock photo websites are unlikely to have images that are identical to what you envisioned. Therefore, it pays to keep an open mind.

Don’t be afraid to experiment with images that aren’t 100% aligned with your initial plan. Choose a few that look interesting and see how they work with your design. In some cases, the results may be even better than anticipated.

A person looks through a magnifying glass.

Stock Photography Is a Tool: Use It Wisely

Few design assets have the ability to transform a website quite like great photography. It can take a run-of-the-mill design and turn it into something with character and context. Stock photography, in particular, has brought this visual potential to everyone.

However, best practices still apply. Just like anything else, stock photos can be misused and abused. The result might well be a bloated website that’s too image-heavy. In addition, the wrong types of images can lead to a generic look that fails to stand out.

While it’s wonderful to have so many photographic resources, it’s up to designers to make the best use of them. For this reason, it’s good to think of stock photography as just another tool for us to utilize – not something to build a website around or save it from mediocrity.

Despite those caveats, stock photography has made a positive impact on web design. Frankly, it’s hard to imagine building a compelling website without it.

The post The Good and Bad of Stock Photography appeared first on Speckyboy Design Magazine.

WordPress 5.8 Tatum

Introducing 5.8 “Tatum”, our latest and greatest release now available for download or update in your dashboard. Named in honor of Art Tatum, the legendary Jazz pianist. His formidable technique and willingness to push boundaries inspired musicians and changed what people thought could be done. 

So fire up your music service of choice and enjoy Tatum’s famous recordings of ‘Tea for Two’, ‘Tiger Rag’, ‘Begin the Beguine’, and ‘Night and Day’ as you read about what the latest WordPress version brings to you.


Three Essential Powerhouses

Manage Widgets with Blocks

After months of hard work, the power of blocks has come to both the Block Widgets Editor and the Customizer. Now you can add blocks both in widget areas across your site and with live preview through the Customizer. This opens up new possibilities to create content: from no-code mini layouts to the vast library of core and third-party blocks. For our developers, you can find more details in the Widgets dev note.

Display Posts with New Blocks and Patterns

The Query Loop Block makes it possible to display posts based on specified parameters; like a PHP loop without the code. Easily display posts from a specific category, to do things like create a portfolio or a page full of your favorite recipes. Think of it as a more complex and powerful Latest Posts Block! Plus, pattern suggestions make it easier than ever to create a list of posts with the design you want.

Edit the Templates Around Posts

You can use the familiar block editor to edit templates that hold your content—simply activate a block theme or a theme that has opted in for this feature. Switch from editing your posts to editing your pages and back again, all while using a familiar block editor. There are more than 20 new blocks available within compatible themes. Read more about this feature and how to experiment with it in the release notes.

Three Workflow Helpers

Overview of the Page Structure

Sometimes you need a simple landing page, but sometimes you need something a little more robust. As blocks increase, patterns emerge, and content creation gets easier, new solutions are needed to make complex content easy to navigate. List View is the best way to jump between layers of content and nested blocks. Since the List View gives you an overview of all the blocks in your content, you can now navigate quickly to the precise block you need. Ready to focus completely on your content? Toggle it on or off to suit your workflow.

Suggested Patterns for Blocks

Starting in this release the Pattern Transformations tool will suggest block patterns based on the block you are using. Right now, you can give it a try in the Query Block and Social Icon Block. As more patterns are added, you will be able to get inspiration for how to style your site without ever leaving the editor!

Style and Colorize Images

Colorize your image and cover blocks with duotone filters! Duotone can add a pop of color to your designs and style your images (or videos in the cover block) to integrate well with your themes. You can think of the duotone effect as a black and white filter, but instead of the shadows being black and the highlights being white, you pick your own colors for the shadows and highlights. There’s more to learn about how it works in the documentation.

For Developers to Explore

Theme.json

Introducing the Global Styles and Global Settings APIs: control the editor settings, available customization tools, and style blocks using a theme.json file in the active theme. This configuration file enables or disables features and sets default styles for both a website and blocks. If you build themes, you can experiment with this early iteration of a useful new feature. For more about what is currently available and how it works, check out this dev note.

Dropping support for IE11

Support for Internet Explorer 11 has been dropped as of this release. This means you may have issues managing your site that will not be fixed in the future. If you are currently using IE11, it is strongly recommended that you switch to a more modern browser.

Adding support for WebP

WebP is a modern image format that provides improved lossless and lossy compression for images on the web. WebP images are around 30% smaller on average than their JPEG or PNG equivalents, resulting in sites that are faster and use less bandwidth.

Adding Additional Block Supports

Expanding on previously implemented block supports in WordPress 5.6 and 5.7, WordPress 5.8 introduces several new block support flags and new options to customize your registered blocks. More information is available in the block supports dev note.

Check the Field Guide for more!

Check out the latest version of the WordPress Field Guide. It highlights developer notes for each change you may want to be aware of: WordPress 5.8 Field Guide.


The Squad

The WordPress 5.8 release was lead by Matt Mullenweg, and supported by this highly enthusiastic release squad:

This release is the reflection of the hard work of 530 generous volunteer contributors. Collaboration occurred on over 320 tickets on Trac and over 1,500 pull requests on GitHub.

5ubliminal, 99w, 9primus, Aaron Jorbin, aaronrobertshaw, abderrahman, Abha Thakor, Abhijit Rakas, achbed, Adam Silverstein, Adam Zielinski, Addie, aduth, Ahmed Chaion, Ahmed Saeed, Ajit Bohra, Alain Schlesser, Alan Jacob Mathew, Albert Juhé Lluveras, Alejandro Perez, Alex Concha, Alex Kirk, Alex Lende, alexstine, allilevine, Amanda Riu, amarinediary, Amogh Harish, Andrea Fercia, Andrei Draganescu, Andrew Ozz, Andrew Serong, Andrey "Rarst" Savchenko, André Maneiro, Andy Fragen, Andy Peatling, Andy Skelton, Ankit Gade, annalamprou, Anne McCarthy, anotherdave, anotia, Anthony Burchell, Anton Lukin, Anton Vanyukov, Antonis Lilis, apedog, apokalyptik, arena, Argyris Margaritis, Ari Stathopoulos, ariskataoka, arkrs, Armand, ArnaudBan, Arthur Chu, Arun a11n, Aspexi, atjn, Aurooba Ahmed, Austin Matzko, Ayesh Karunaratne, Barry, bartkalisz, Beatriz Fialho, Bego Mario Garde, Benachi, Benoit Chantre, Bernhard Reiter, Bernhard Reiter, Birgir Erlendsson (birgire), Birgit Pauli-Haack, Blobfolio, bmcculley, Bob Linthorst, bobbingwide, Bogdan Preda, bonger, Boone Gorges, Brad Touesnard, Brandon Kraft, Brecht, Brent Swisher, Brett Shumaker, Bruno Ribaric, Burhan Nasir, Cameron Jones, Cameron Voell, Carike, Carl Alexander, carlomanf, carlosgprim, Carolina Nymark, Casey Milne, Cenay Nailor, Ceyhun Ozugur, Chandra M, Chetan Prajapati, Chintan hingrajiya, Chip Snyder, Chloé Bringmann, Chouby, Chris Van Patten, chriscct7, Christopher Churchill, Chuck Reynolds, Clayton Collie, Code Amp, CodePoet, Colin Stewart, Collins Agbonghama, Copons, Corey McKrill, Cory Hughart, Courtney Engle Robertson, crazycoders, critterverse, czapla, Dávid Szabó, Daisy Olsen, damonganto, Dan Farrow, Daniel Llewellyn, Daniel Richards, danieldudzic, Daniele Scasciafratte, Danny, David Aguilera, David Anderson, David Artiss, David Baumwald, David Biňovec, David Calhoun, David Herrera, David Kryzaniak, David Smith, dekervit, devfle, devrekli, dhruvkb, Diane Co, dingdang, Dion Hulse, djbu, Dominik Schilling, donmhico, Donna Peplinskie, Doug Wollison, dpik, dragongate, Dreb Bits, Drew Jaynes, eatsleepcode, Ebonie Butler, Edi Amin, Eileen Violini, Ella van Durpe, Emil E, Emilio Martinez, Emmanuel Hesry, empatogen, Enej Bajgorić, Enrique Sánchez, epiqueras, Erik, etoledom, Fabian Kägy, Fabian Pimminger, Fabian Todt, Felipe Elia, Felix Arntz, felixbaumgaertner, Femy Praseeth, fijisunshine, Florian Brinkmann, Florian TIAR, Francesca Marano, Frank Bueltge, frosso1 (a11n), fullofcaffeine, gab81, Gal Baras, Garrett Hyder, Gary Jones, Gary Pendergast, GeekPress, Gennady Kovshenin, Geoffrey, George Hotelling, George Mamadashvili, George Stephanis, geriux, glendaviesnz, Grant M. Kinney, Greg Ziółkowski, gRegor Morrill, Héctor Prieto, Hannah Malcolm, happiryu, Hareesh, Haz, hedgefield, Helen Hou-Sandí, Herm Martini, Herre Groen, herrvigg, htmgarcia, Ian Dunn, ianmjones, icopydoc, Ipstenu (Mika Epstein), Isabel Brison, Ivaylo Draganov, Ivete Tecedor, J.D. Grimes, Jack Lenox, Jake Spurlock, James Bonham, James Koster, James Nylen, James Richards, James Rosado, jamil95, janak Kaneriya, janw.oostendorp, Jason Johnston, Javier Arce, Jayman Pandya, Jean-Baptiste Audras, Jeff Ong, Jeff Paul, Jeffrey Pearce, Jenny Dupuy, Jeremy Felt, Jeremy Herve, Jeremy Yip, jeremy80, JeroenReumkens, jeryj, jillebehm, Jip Moors, Joe Bailey-Roberts, Joe Dolson, Joe McGill, Joen Asmussen, Johan Jonk Stenström, Johannes Kinast, John Blackbourn, John Godley, John James Jacoby, John Sundberg, Jon Brown, Jon Surrell, Jonathan Desrosiers, Jonny Harris, Jono Alderson, Joost de Valk, Jorge Bernal, Jorge Costa, Josee Wouters, Josepha Haden, JoshuaDoshua, Joy, jsnajdr, Juan Aldasoro, Juliette Reinders Folmer, Julio Potier, Justin Ahinon, k3nsai, kaavyaiyer, kafleg, Kai Hao, Kalpesh Akabari, Kapil Paul, Karolina Vyskocilova, Kelly Choyce-Dwan, Kelly Hoffman, Kerry Liu, Kishan Jasani, Kite, KittMedia, Kjell Reigstad, klevyke, Knut Sparhell, Koen Van den Wijngaert, Konstantin Obenland, Konstantinos Xenos, Kyle Nel, lakrisgubben, Lara Schenck, Larissa Murillo, Laxman Prajapati, LewisCowles, lifeforceinst, linux4me2, Lovro Hrust, Luis Sacristán, Luiz Araújo, Luke Carbis, m0ze, Maedah Batool, Maggie Cabrera, Maja Benke, Marco Ciampini, Marcus Kazmierczak, Marek Hrabe, Marin Atanasov, Marius L. J., Mark Jaquith, Mark Parnell, Marko Heijnen, Marty Helmick, Mary Baum, Mary Job, marylauc, Mathieu Viet, Matias Ventura, Matt Chowning, Matt Mullenweg, Maxime Pertici, mblach, Meet Makadia, Meher Bala, Mel Choyce-Dwan, meloniq, mensmaximus, Michael Babker, Michael Beckwith, Miguel Fonseca, Mikael Korpela, Mike Hansen, Mike Jolley, Mike Martel, Mike Schroder, Mikhail Kobzarev, Milan Dinić, Milana Cap, mkdgs, mmuyskens, mmxxi, Mohamed El Amine DADDOU, Mohammed Faragallah, Monika Rao, Morten Rand-Hendriksen, mrjoeldean, Mukesh Panchal, munyagu, Mustafa Uysal, mweichert, Nadir Seghir, Nalini Thakor, Naoki Ohashi, Naoko Takano, Nazrul Islam Nayan, nderambure, net, nicegamer7, Nicholas Garofalo, Nick Halsey, Nik Tsekouras, ninanmnm, Noah Allen, nvartolomei, oguzkocer, olafklejnstrupjensen, Olga Bulat, Olga Gleckler, Otshelnik-Fm, oxyrealm, Ozh, Paal Joachim Romdahl, palmiak, Panagiotis Angelidis, Paragon Initiative Enterprises, Pascal Birchler, Pascal Knecht, Pat, patricklindsay, Paul Biron, Paul Bunkham, Paul Schreiber, Paul Stonier, Paul Von Schrottky, Paulo Pinto, Pavel I, Paweł, Peter Wilson, Petter Walbø Johnsgård, phena109, Philip Jackson, Pierre SYLVESTRE, Pinar, Piotrek Boniu, Pippin Williamson, Pirate Dunbar, Pramod Jodhani, Presskopp, presstoke, pwallner, pyronaur, Q, Rachel Baker, rafhun, Rajesh Radadiya, Rami Yushuvaev, Ramon Ahnert, ramonopoly, Ravi Vaghela, ravipatel, Refael Iliaguyev, Rene Hermenau, retrofox, reynhartono, Riad Benguella, Rian Rietveld, Rima Prajapati, Rinat, Rnaby, robdxw, Robert Anderson, Robert Chapin, Roger Theriault, rogerlos, roo2, Roy, Russell Aaron, Ryan McCue, Ryan Welcher, Sören Wrede, Saša, Sabrina Zeidan, Sahil Mepani, Samir Shah, Samuel Wood (Otto), Sandip Mondal, Sanne van der Meulen, sarahricker, sarayourfriend, SASAPIYO, satrancali, savicmarko1985, Scott Lesovic, Scott Reilly, scottconnerly, scruffian, Sean Fisher, Sean Hayes, sebbb, Sergey Biryukov, Sergey Yakimov, SergioEstevao, sergiomdgomes, shaunandrews, Shital Marakana, silb3r, Siobhan, SirStuey, snapfractalpop, spikeuk1, spytzo, stacimc, Stanislav Khromov, Stefan Hüsges, stefanjoebstl, Stefano Minoia, Stefanos Togoulidis, Stephen Bernhardt, Stephen Edgar, Steve Dufresne, Steve Grunwell, Steve Henty, Steven Word, Subrata Sarkar, Sumaiya Siddika, Suman, Sumit Singh, Sumit Singh, sushmak, Sybre Waaijer, Synchro, szaqal21, tamlyn, Tammie Lister, Tellyworth, Terri Ann, Tetsuaki Hamano, them.es, Thomas Kräftner, Thomas Patrick Levy, Thomas Vitale, tigertech, Timothy Jacobs, TimoTijhof, Tkama, tmatsuur, tmdk, Tobias Zimpel, TobiasBg, tobifjellner (Tor-Bjorn Fjellner), Tom J Nowell, Toni Viemerö, Tonya Mork, Toro_Unit (Hiroshi Urabe), torres126, Torsten Landsiedel, Toru Miki, Travis Northcutt, trejder, Udit Desai, Ulrich, Utsav tilava, Vicente Canales, Vipul Chandel, Vlad T, wangql, WebDragon, Wendy Chen, Weston Ruter, William Earnhardt, williampatton, Xavi Ivars, Xristopher Anderton, Y_Kolev, Yan Sern, Yui, yuliyan, Yvette Sonneveld, Zack Krida, Zebulan Stanphill, zkancs, and 孙锡源.

In addition to these contributors, many thanks to all of the community volunteers who contribute in the support forums. They answer questions from people across the world, whether they are using WordPress for the first time, or they’ve been around since the first release all the way back in 2003. These releases are as successful as they are because of their efforts!

Finally, thanks to all the community translators who help make WordPress available in over 200 languages for every release. 80 languages have translated 80% or more WordPress 5.8 and our community translators are hard at work ensuring more languages are on their way. If contributing to WordPress appeals to you, it’s easy to learn more. Check out Make WordPress or the core development blog.

WordPress 5.8 Tatum

Introducing 5.8 “Tatum”, our latest and greatest release now available for download or update in your dashboard. Named in honor of Art Tatum, the legendary Jazz pianist. His formidable technique and willingness to push boundaries inspired musicians and changed what people thought could be done. 

So fire up your music service of choice and enjoy Tatum’s famous recordings of ‘Tea for Two’, ‘Tiger Rag’, ‘Begin the Beguine’, and ‘Night and Day’ as you read about what the latest WordPress version brings to you.


Three Essential Powerhouses

Manage Widgets with Blocks

After months of hard work, the power of blocks has come to both the Block Widgets Editor and the Customizer. Now you can add blocks both in widget areas across your site and with live preview through the Customizer. This opens up new possibilities to create content: from no-code mini layouts to the vast library of core and third-party blocks. For our developers, you can find more details in the Widgets dev note.

Display Posts with New Blocks and Patterns

The Query Loop Block makes it possible to display posts based on specified parameters; like a PHP loop without the code. Easily display posts from a specific category, to do things like create a portfolio or a page full of your favorite recipes. Think of it as a more complex and powerful Latest Posts Block! Plus, pattern suggestions make it easier than ever to create a list of posts with the design you want.

Edit the Templates Around Posts

You can use the familiar block editor to edit templates that hold your content—simply activate a block theme or a theme that has opted in for this feature. Switch from editing your posts to editing your pages and back again, all while using a familiar block editor. There are more than 20 new blocks available within compatible themes. Read more about this feature and how to experiment with it in the release notes.

Three Workflow Helpers

Overview of the Page Structure

Sometimes you need a simple landing page, but sometimes you need something a little more robust. As blocks increase, patterns emerge, and content creation gets easier, new solutions are needed to make complex content easy to navigate. List View is the best way to jump between layers of content and nested blocks. Since the List View gives you an overview of all the blocks in your content, you can now navigate quickly to the precise block you need. Ready to focus completely on your content? Toggle it on or off to suit your workflow.

Suggested Patterns for Blocks

Starting in this release the Pattern Transformations tool will suggest block patterns based on the block you are using. Right now, you can give it a try in the Query Block and Social Icon Block. As more patterns are added, you will be able to get inspiration for how to style your site without ever leaving the editor!

Style and Colorize Images

Colorize your image and cover blocks with duotone filters! Duotone can add a pop of color to your designs and style your images (or videos in the cover block) to integrate well with your themes. You can think of the duotone effect as a black and white filter, but instead of the shadows being black and the highlights being white, you pick your own colors for the shadows and highlights. There’s more to learn about how it works in the documentation.

For Developers to Explore

Theme.json

Introducing the Global Styles and Global Settings APIs: control the editor settings, available customization tools, and style blocks using a theme.json file in the active theme. This configuration file enables or disables features and sets default styles for both a website and blocks. If you build themes, you can experiment with this early iteration of a useful new feature. For more about what is currently available and how it works, check out this dev note.

Dropping support for IE11

Support for Internet Explorer 11 has been dropped as of this release. This means you may have issues managing your site that will not be fixed in the future. If you are currently using IE11, it is strongly recommended that you switch to a more modern browser.

Adding support for WebP

WebP is a modern image format that provides improved lossless and lossy compression for images on the web. WebP images are around 30% smaller on average than their JPEG or PNG equivalents, resulting in sites that are faster and use less bandwidth.

Adding Additional Block Supports

Expanding on previously implemented block supports in WordPress 5.6 and 5.7, WordPress 5.8 introduces several new block support flags and new options to customize your registered blocks. More information is available in the block supports dev note.

Check the Field Guide for more!

Check out the latest version of the WordPress Field Guide. It highlights developer notes for each change you may want to be aware of: WordPress 5.8 Field Guide.


The Squad

The WordPress 5.8 release was lead by Matt Mullenweg, and supported by this highly enthusiastic release squad:

This release is the reflection of the hard work of 530 generous volunteer contributors. Collaboration occurred on over 320 tickets on Trac and over 1,500 pull requests on GitHub.

5ubliminal, 99w, 9primus, Aaron Jorbin, aaronrobertshaw, abderrahman, Abha Thakor, Abhijit Rakas, achbed, Adam Silverstein, Adam Zielinski, Addie, aduth, Ahmed Chaion, Ahmed Saeed, Ajit Bohra, Alain Schlesser, Alan Jacob Mathew, Albert Juhé Lluveras, Alejandro Perez, Alex Concha, Alex Kirk, Alex Lende, alexstine, allilevine, Amanda Riu, amarinediary, Amogh Harish, Andrea Fercia, Andrei Draganescu, Andrew Ozz, Andrew Serong, Andrey "Rarst" Savchenko, André Maneiro, Andy Fragen, Andy Peatling, Andy Skelton, Ankit Gade, annalamprou, Anne McCarthy, anotherdave, anotia, Anthony Burchell, Anton Lukin, Anton Vanyukov, Antonis Lilis, apedog, apokalyptik, arena, Argyris Margaritis, Ari Stathopoulos, ariskataoka, arkrs, Armand, ArnaudBan, Arthur Chu, Arun a11n, Aspexi, atjn, Aurooba Ahmed, Austin Matzko, Ayesh Karunaratne, Barry, bartkalisz, Beatriz Fialho, Bego Mario Garde, Benachi, Benoit Chantre, Bernhard Reiter, Bernhard Reiter, Birgir Erlendsson (birgire), Birgit Pauli-Haack, Blobfolio, bmcculley, Bob Linthorst, bobbingwide, Bogdan Preda, bonger, Boone Gorges, Brad Touesnard, Brandon Kraft, Brecht, Brent Swisher, Brett Shumaker, Bruno Ribaric, Burhan Nasir, Cameron Jones, Cameron Voell, Carike, Carl Alexander, carlomanf, carlosgprim, Carolina Nymark, Casey Milne, Cenay Nailor, Ceyhun Ozugur, Chandra M, Chetan Prajapati, Chintan hingrajiya, Chip Snyder, Chloé Bringmann, Chouby, Chris Van Patten, chriscct7, Christopher Churchill, Chuck Reynolds, Clayton Collie, Code Amp, CodePoet, Colin Stewart, Collins Agbonghama, Copons, Corey McKrill, Cory Hughart, Courtney Engle Robertson, crazycoders, critterverse, czapla, Dávid Szabó, Daisy Olsen, damonganto, Dan Farrow, Daniel Llewellyn, Daniel Richards, danieldudzic, Daniele Scasciafratte, Danny, David Aguilera, David Anderson, David Artiss, David Baumwald, David Biňovec, David Calhoun, David Herrera, David Kryzaniak, David Smith, dekervit, devfle, devrekli, dhruvkb, Diane Co, dingdang, Dion Hulse, djbu, Dominik Schilling, donmhico, Donna Peplinskie, Doug Wollison, dpik, dragongate, Dreb Bits, Drew Jaynes, eatsleepcode, Ebonie Butler, Edi Amin, Eileen Violini, Ella van Durpe, Emil E, Emilio Martinez, Emmanuel Hesry, empatogen, Enej Bajgorić, Enrique Sánchez, epiqueras, Erik, etoledom, Fabian Kägy, Fabian Pimminger, Fabian Todt, Felipe Elia, Felix Arntz, felixbaumgaertner, Femy Praseeth, fijisunshine, Florian Brinkmann, Florian TIAR, Francesca Marano, Frank Bueltge, frosso1 (a11n), fullofcaffeine, gab81, Gal Baras, Garrett Hyder, Gary Jones, Gary Pendergast, GeekPress, Gennady Kovshenin, Geoffrey, George Hotelling, George Mamadashvili, George Stephanis, geriux, glendaviesnz, Grant M. Kinney, Greg Ziółkowski, gRegor Morrill, Héctor Prieto, Hannah Malcolm, happiryu, Hareesh, Haz, hedgefield, Helen Hou-Sandí, Herm Martini, Herre Groen, herrvigg, htmgarcia, Ian Dunn, ianmjones, icopydoc, Ipstenu (Mika Epstein), Isabel Brison, Ivaylo Draganov, Ivete Tecedor, J.D. Grimes, Jack Lenox, Jake Spurlock, James Bonham, James Koster, James Nylen, James Richards, James Rosado, jamil95, janak Kaneriya, janw.oostendorp, Jason Johnston, Javier Arce, Jayman Pandya, Jean-Baptiste Audras, Jeff Ong, Jeff Paul, Jeffrey Pearce, Jenny Dupuy, Jeremy Felt, Jeremy Herve, Jeremy Yip, jeremy80, JeroenReumkens, jeryj, jillebehm, Jip Moors, Joe Bailey-Roberts, Joe Dolson, Joe McGill, Joen Asmussen, Johan Jonk Stenström, Johannes Kinast, John Blackbourn, John Godley, John James Jacoby, John Sundberg, Jon Brown, Jon Surrell, Jonathan Desrosiers, Jonny Harris, Jono Alderson, Joost de Valk, Jorge Bernal, Jorge Costa, Josee Wouters, Josepha Haden, JoshuaDoshua, Joy, jsnajdr, Juan Aldasoro, Juliette Reinders Folmer, Julio Potier, Justin Ahinon, k3nsai, kaavyaiyer, kafleg, Kai Hao, Kalpesh Akabari, Kapil Paul, Karolina Vyskocilova, Kelly Choyce-Dwan, Kelly Hoffman, Kerry Liu, Kishan Jasani, Kite, KittMedia, Kjell Reigstad, klevyke, Knut Sparhell, Koen Van den Wijngaert, Konstantin Obenland, Konstantinos Xenos, Kyle Nel, lakrisgubben, Lara Schenck, Larissa Murillo, Laxman Prajapati, LewisCowles, lifeforceinst, linux4me2, Lovro Hrust, Luis Sacristán, Luiz Araújo, Luke Carbis, m0ze, Maedah Batool, Maggie Cabrera, Maja Benke, Marco Ciampini, Marcus Kazmierczak, Marek Hrabe, Marin Atanasov, Marius L. J., Mark Jaquith, Mark Parnell, Marko Heijnen, Marty Helmick, Mary Baum, Mary Job, marylauc, Mathieu Viet, Matias Ventura, Matt Chowning, Matt Mullenweg, Maxime Pertici, mblach, Meet Makadia, Meher Bala, Mel Choyce-Dwan, meloniq, mensmaximus, Michael Babker, Michael Beckwith, Miguel Fonseca, Mikael Korpela, Mike Hansen, Mike Jolley, Mike Martel, Mike Schroder, Mikhail Kobzarev, Milan Dinić, Milana Cap, mkdgs, mmuyskens, mmxxi, Mohamed El Amine DADDOU, Mohammed Faragallah, Monika Rao, Morten Rand-Hendriksen, mrjoeldean, Mukesh Panchal, munyagu, Mustafa Uysal, mweichert, Nadir Seghir, Nalini Thakor, Naoki Ohashi, Naoko Takano, Nazrul Islam Nayan, nderambure, net, nicegamer7, Nicholas Garofalo, Nick Halsey, Nik Tsekouras, ninanmnm, Noah Allen, nvartolomei, oguzkocer, olafklejnstrupjensen, Olga Bulat, Olga Gleckler, Otshelnik-Fm, oxyrealm, Ozh, Paal Joachim Romdahl, palmiak, Panagiotis Angelidis, Paragon Initiative Enterprises, Pascal Birchler, Pascal Knecht, Pat, patricklindsay, Paul Biron, Paul Bunkham, Paul Schreiber, Paul Stonier, Paul Von Schrottky, Paulo Pinto, Pavel I, Paweł, Peter Wilson, Petter Walbø Johnsgård, phena109, Philip Jackson, Pierre SYLVESTRE, Pinar, Piotrek Boniu, Pippin Williamson, Pirate Dunbar, Pramod Jodhani, Presskopp, presstoke, pwallner, pyronaur, Q, Rachel Baker, rafhun, Rajesh Radadiya, Rami Yushuvaev, Ramon Ahnert, ramonopoly, Ravi Vaghela, ravipatel, Refael Iliaguyev, Rene Hermenau, retrofox, reynhartono, Riad Benguella, Rian Rietveld, Rima Prajapati, Rinat, Rnaby, robdxw, Robert Anderson, Robert Chapin, Roger Theriault, rogerlos, roo2, Roy, Russell Aaron, Ryan McCue, Ryan Welcher, Sören Wrede, Saša, Sabrina Zeidan, Sahil Mepani, Samir Shah, Samuel Wood (Otto), Sandip Mondal, Sanne van der Meulen, sarahricker, sarayourfriend, SASAPIYO, satrancali, savicmarko1985, Scott Lesovic, Scott Reilly, scottconnerly, scruffian, Sean Fisher, Sean Hayes, sebbb, Sergey Biryukov, Sergey Yakimov, SergioEstevao, sergiomdgomes, shaunandrews, Shital Marakana, silb3r, Siobhan, SirStuey, snapfractalpop, spikeuk1, spytzo, stacimc, Stanislav Khromov, Stefan Hüsges, stefanjoebstl, Stefano Minoia, Stefanos Togoulidis, Stephen Bernhardt, Stephen Edgar, Steve Dufresne, Steve Grunwell, Steve Henty, Steven Word, Subrata Sarkar, Sumaiya Siddika, Suman, Sumit Singh, Sumit Singh, sushmak, Sybre Waaijer, Synchro, szaqal21, tamlyn, Tammie Lister, Tellyworth, Terri Ann, Tetsuaki Hamano, them.es, Thomas Kräftner, Thomas Patrick Levy, Thomas Vitale, tigertech, Timothy Jacobs, TimoTijhof, Tkama, tmatsuur, tmdk, Tobias Zimpel, TobiasBg, tobifjellner (Tor-Bjorn Fjellner), Tom J Nowell, Toni Viemerö, Tonya Mork, Toro_Unit (Hiroshi Urabe), torres126, Torsten Landsiedel, Toru Miki, Travis Northcutt, trejder, Udit Desai, Ulrich, Utsav tilava, Vicente Canales, Vipul Chandel, Vlad T, wangql, WebDragon, Wendy Chen, Weston Ruter, William Earnhardt, williampatton, Xavi Ivars, Xristopher Anderton, Y_Kolev, Yan Sern, Yui, yuliyan, Yvette Sonneveld, Zack Krida, Zebulan Stanphill, zkancs, and 孙锡源.

In addition to these contributors, many thanks to all of the community volunteers who contribute in the support forums. They answer questions from people across the world, whether they are using WordPress for the first time, or they’ve been around since the first release all the way back in 2003. These releases are as successful as they are because of their efforts!

Finally, thanks to all the community translators who help make WordPress available in over 200 languages for every release. 80 languages have translated 80% or more WordPress 5.8 and our community translators are hard at work ensuring more languages are on their way. If contributing to WordPress appeals to you, it’s easy to learn more. Check out Make WordPress or the core development blog.

rn ML AI Pure PHP Neural Network Library

deep_learning_process
Package:
rn ML AI Pure PHP Neural Network Library
Summary:
Assemble a neural network that can learn patterns
Groups:
Artificial intelligence, PHP 5
Author:
Rafael Martin Soto
Description:
This package can assemble a neural network that can learn patterns...

Read more at https://www.phpclasses.org/package/12151-PHP-Assemble-a-neural-network-that-can-learn-patterns.html#2021-07-20-02:59:54

PHP System Resources

Package:
PHP System Resources
Summary:
Get values of the current computer devices
Groups:
Hardware, PHP 5, System information, Windows
Author:
Rafael Martin Soto
Description:
This package can get values of the current computer devices...

Read more at https://www.phpclasses.org/package/12157-PHP-Get-values-of-the-current-computer-devices.html#2021-07-20-02:56:11

Community News: Latest PECL Releases (07.20.2021)

Latest PECL Releases:

  • swoole 4.7.0
    New APIs


    • Added ProcessPool::detach() (#4221) (@matyhtf)
    • Added onDisconnect callback for SwooleServer (#4230) (@matyhtf)
    • Added Coroutine::cancel() (#4247) (#4249) (@matyhtf)
    • Added http_compression/body_decompression options for Http Client (#4299) (@matyhtf)

    Enhancement

    • Supported mysql client prepare field type identification (#4238) (@Yurunsoft)
    • Supported c-ares, Refactor DNS (#4275) (@matyhtf)
    • Supported setting different idle time for each port (#4290) (@matyhtf)
    • Supported SW_DISPATCH_CO_CONN_LB and SW_DISPATCH_CO_REQ_LB for SwooleServer dispatch_mode (#4318) (@matyhtf)
    • Supported timeout for SwooleConnectionPool::get (swoole/library#108) (@leocavalcante)
    • Supported CURLOPT_PRIVATE for Hook Curl (swoole/library#112) (@sy-records)
    • Optimized PDOStatementProxy::setFetchMode function prototype (swoole/library#109) (@yespire)

    Fixed

    • Fixed uncaught thread creation exception when creating a large number of coroutines (swoole/swoole-src@8ce5041) (@matyhtf)
    • Fixed the "make install" missing php_swoole.h header file (#4239) (@sy-records)
    • Fixed EVENT_HANDSHAKE BC (#4248) (@sy-records)
    • Fixed SW_LOCK_CHECK_RETURN (#4302) (@zmyWL)
    • Fixed problems with SwooleAtomicLong M1 chip (swoole/swoole-src@e6fae2e) (@matyhtf)
    • Fixed missing return value of Coroutinego (swoole/library@1ed49db) (@matyhtf)
    • Fixed StringObject consistency between other methods and its immutability (swoole/library#111) (@leocavalcante)
    • Fixed StringObject substr error (swoole/library#113) (@sy-records)

    Kernel

    • Did not hook disabled functions (#4283) (@twose)

    Test

    • Added Cygwin build (#4222) (@sy-records)
    • Added alpine 3.13 and 3.14 into building test (#4309) (@limingxinleo)
  • xlswriter 1.4.0
    - Fix disable reader build failed. - Fix insertDate use curtom format segmentation fault. - Feat custom free resource. - Feat writer validation. - Feat writer data validation can be applied to a single cell or a range of cells. - Feat reader add file path in open file exception message. - Feat exit worksheet. - Feat set paper. - Feat set margins. - Build read module is enabled by default. - Perfect exception message. - Compatible PHP 8.1 API. - Destructive rename method setPrintedLandscape to setLandscape - Destructive rename method setPrintedPortrait to setPortrait
  • runkit7 4.0.0a3
    - Fix edge case copying internal functions in runkit7_function_redefine - Avoid conflicts with other extensions that use reserved memory slots for internal function definitions. - Fix compilation and test errors in php 8.1 - Allow using objects in global constants and class constants in php 8.1+ (https://wiki.php.net/rfc/new_in_initializers) - Make runkit_constant_redefine fail if the constant does not already exist - Make runkit_constant_remove/redefine fail on enum cases (support for modifying enum cases is not implemented)
  • mongodb 1.10.0
    ** Bug * [PHPC-1420] - Using replicaSet triggers __fortify_fail() from /lib64/libc.so.6 * [PHPC-1529] - Reset libmongocrypt's key vault client after forking * [PHPC-1720] - Move mongoc_client_set_error_api after check for null client pointer * [PHPC-1721] - Fix argument order for some ecalloc function calls * [PHPC-1722] - Persistent clients and their HashTable should be destroyed in GSHUTDOWN * [PHPC-1870] - Fix zSeries build failure due to redefinition of WORDS_BIGENDIAN * [PHPC-1879] - Session::getTransactionOptions() leaks mongoc_transaction_opt_t

    ** Epic * [PHPC-1666] - Allow per-client event subscribers * [PHPC-1731] - Versioned MongoDB API for Drivers * [PHPC-1756] - Remove all oppressive and unnecessarily gendered language from driver projects

    ** New Feature * [PHPC-1645] - Allow disabling of libmongoc client persistence * [PHPC-1684] - Support Azure and GCP keystores in FLE * [PHPC-1716] - Allow configuring ServerApi in Manager class * [PHPC-1804] - Implement Manager::addSubscriber and removeSubscriber

    ** Task * [PHPC-1513] - Remove php_phongo_cursor_to_zval * [PHPC-1685] - Drop support for PHP 7.0 * [PHPC-1782] - Support Removal of Several Platform Builds * [PHPC-1792] - Update copyright years in file headers * [PHPC-1835] - Rotate credentials and environment vars for Atlas connectivity tests * [PHPC-1841] - Remove oppressive language from the documentation * [PHPC-1842] - Remove oppressive language from the source code * [PHPC-1848] - Test against 5.0 servers * [PHPC-1864] - Cut 5.0 Compat. GA Release * [PHPC-1866] - Specify 5.0 cursor behaviour * [PHPC-1872] - Fix server-executeQuery-008.phpt for RS config with arbiter * [PHPC-1877] - MongoDB 5.0.0-rc2 cannot be downloaded on rhel71-power8

    ** Improvement * [PHPC-1366] - Declare libbson vtable in MINIT instead of using a global * [PHPC-1367] - Move libmongoc init/cleanup within scope of custom libbson vtable * [PHPC-1474] - Expose transaction information in debug info for session * [PHPC-1490] - Add support for var_export() and __set_state() in CursorId.c * [PHPC-1681] - Support parsing $uuid as extended JSON representation for subtype 4 binary * [PHPC-1737] - Use zend_hash_graceful_reverse_destroy to free persistent client HashTable * [PHPC-1753] - Define error handling behavior of writeErrors and writeConcernError on Mongos * [PHPC-1754] - Drivers should not inspect error messages for "not master" or "node is recovering" * [PHPC-1762] - Expose the Reason an Operation Fails Document Validation * [PHPC-1765] - Mitigate pain of using field names with dots and dollars * [PHPC-1791] - Specify correct return type in __set_state protos * [PHPC-1798] - Update serverSelectionTimeoutMS of MongoClient to mongocryptd * [PHPC-1803] - Use "hello" command when API Version is declared * [PHPC-1813] - Unpin session after aborting a transaction * [PHPC-1821] - Driver Handling of DBRefs * [PHPC-1836] - Remove slaveOK connection string option from URI parsing * [PHPC-1840] - Use "hello" command for monitoring if supported * [PHPC-1855] - Bump maxWireVersion for MongoDB 5.0

  • datadog_trace 0.61.0
    ### Added - Add DDTraceget_current_context #1227 - Create property ZAI seam for PHP 8 #1246 - Create exceptions ZAI seam for PHP 8 #1248 - Run mongodb-driver testsuite in CI with and without the tracer #1255 ### Changed - Move mapping-settings to be deserialized as a zend_array * #1253 ### Fixed - Remove TSRMLS_C from DDTracecurrent_context #1249

20 Free Highly-Detailed Floral Vector Packs & Templates

Today, we have put together a collection of high-quality free floral vector packs for you. No matter what the medium of creation be, floral designs have always enjoyed a special position in the world of art.

Right from the days of cave paintings, passing through to Oriental calligraphy impressions and all the way down to the present day, everyone has loved floral designs and backgrounds.

You might also like these free spring vector templates or these free ornamental templates.

Floral Decorative Vector Ornaments (Free)

5 Floral Decorative Vector Ornaments template free illustrator

Geometric Floral Seamless Patterns (with Envato Elements)

Geometric Floral Seamless vector template free illustrator

Shield & Floral Vector Element Templates (Free)

Shield Floral Vector Element template free illustrator

Floral Seamless Patterns (with Envato Elements)

Floral Seamless vector template free illustrator

Floral Vector & Brush Pack (Free)

Floral Brush Pack vector template free illustrator

Handsketched Floral Frame Templates (with Envato Elements)

Handsketched Floral Frame vector template free illustrator

Various Vector Floral Designs Templates (Free)

Various Vector Floral Designs template free illustrator

Romantic Florals Templates (with Envato Elements)

Romantic Florals vector template free illustrator

Pink Floral Vector Background Template (Free)

Pink Floral Vector Background template free illustrator

Floral Pattern Background Vector Template (Free)

Floral Pattern Background vector template free illustrator

Cute Sketchy Leaf Vector Frame Collection (Free)

Cute Sketchy Leaf Frame vector template free illustrator

Hand-Drawn Flowers Vector Template & Brush Pack (Free)

Hand Drawn Flowers vector template free illustrator

Swirl Flower Vector Template (Free)

Swirl Flower vector template free illustrator

Vector Butterfly Templates (Free)

Vector Butterfly vector template free illustrator

Floral Silhouette Vector Templates (Free)

Floral Silhouette vector template free illustrator

Swirl Flower Vector Templates (Free)

Swirl Flower vector template free illustrator

Hand-Drawn Swirls & Wreath Vector Templates (Free)

Hand Drawn Swirls Wreath vector template free illustrator

Decorative Vector Frame Set (Free)

Decorative Vector Frame template free illustrator

Vector Cherry Blossom Wreath Template (Free)

Cherry Blossom Wreath vector template free illustrator

Elegant Floral Vector Templates (Free)

Elegant Floral vector template free illustrator

Vector Floral Swirls (Free)

Floral Swirls vector template free illustrator

Abstract Floral Vector Template (Free)

Abstract Floral  vector template free illustrator

The post 20 Free Highly-Detailed Floral Vector Packs & Templates appeared first on Speckyboy Design Magazine.

Things You Should Know Before Customizing WordPress

WordPress is known for its incredible versatility. The content management system (CMS) provides developers with many ways to customize both the front and back ends.

This opens a whole world of possibilities when it comes to form and function. The ability to create fully-custom themes and plugins offers a path to building virtually any type of website. But it doesn’t end there.

Features like custom post types and taxonomies, along with custom fields allow for highly-specialized content. It can be organized in a way that fits your needs like a glove.

In addition, there are an endless array of smaller customizations. Code snippets targeting hooks and filters let you tweak existing functionality even further. And we’re only scratching the surface of what’s possible.

However, with all of this power comes some responsibility. Customizing WordPress requires some planning. And there are several important factors to consider. So, before you fire up that code editor, here are some things you should know about the process.

A Staging Site is a Must-Have Feature for Testing

Creating some custom functionality for your WordPress website? Avoid building it directly on your production site if at all possible. There are simply too many things that can go wrong.

One false move can lead to usability/performance problems or even downtime. Perhaps it’s not as big of a deal on a small site with few visitors. But a busy eCommerce or membership website? That could cost you both sales and customer loyalty.

This underscores the importance of having a staging site. It provides a playground of sorts where customizations can be tested before being made public. The idea is to hopefully catch and repair any issues before they impact users.

What’s more, there are a number of ways to set up a staging environment. Some web hosts offer them as part of their services. But you can also create your own either online or on your local machine.

Testing this way is very much worth the extra effort.

A website displayed on a laptop computer.

The Method for Implementing Customizations Matters

Part of the beauty of WordPress is that you can implement custom code in a number of ways. But it also has the potential to become problematic.

For example, a custom code snippet can easily be placed into your theme’s functions.php file. That is fine for the short term. But what happens when you change themes down the road?

Launching a redesign with a new theme will result in a loss of those customizations. And while moving any snippets to the new theme is possible, they could well get lost in the shuffle. Depending on the nature of the custom code, some key functionality may end up missing. In this type of situation, creating a custom plugin would be the more future-friendly solution.

When it comes to making changes to a third-party theme, there are similar considerations. Adding or editing code directly within the theme means potentially overwriting changes during an update. The best way around that issue is by utilizing a child theme.

The universal point is that, regardless of what you’re trying to achieve, it’s important to implement customizations in a way that will stand the test of time. Keeping things well-organized is also recommended so that you won’t have to search around in several different places to find what you need.

Website source code displayed on a screen.

There Will Be Future Maintenance Requirements

Neither WordPress nor its ecosystem of themes and plugins remain static. They evolve with the times. That means the code we write today will likely need to be maintained on a regular basis.

This follows the evolution of WordPress itself, but also of the variety of languages and libraries it depends on. PHP, JavaScript libraries such as jQuery and React, and CSS are prime examples. A change to these dependencies can impact performance and whether or not a particular feature still works.

Not only that, but plugins and themes also have their own agendas to implement. New features are added at a breakneck speed in this competitive environment. The ever-shifting Gutenberg block editor is also a moving target. This can lead to more compatibility issues as new versions continually roll out.

Therefore, you’ll want to pay close attention to what’s happening in these areas. Changes to WordPress core, themes, plugins, or dependencies could directly impact your existing customizations.

Hand tools hanging on a wall.

Customizing WordPress Is Serious Business

The mere act of customizing WordPress is one thing. But going about it the right way is another. It’s not something to dive into without some serious thought.

It’s important to consider what you want to accomplish, how it will be implemented, and how to keep it running smoothly into the future. The answers often come down to planning ahead and following best practices.

If you’re extending the functionality of WordPress itself or a plugin, read up on the documentation. There are likely some established methods built-in for getting the results you need.

The other side of the coin involves staying within coding standards. For example, eschewing any deprecated PHP or JavaScript and opting for the latest stable techniques. This will keep your code compliant and hopefully easier to maintain over time.

Keeping these things in mind will lead to more complete and sustainable results. That’s something that will benefit every WordPress developer.

The post Things You Should Know Before Customizing WordPress appeared first on Speckyboy Design Magazine.

A series of unfortunate commits: notable software security stories

In March, news broke that two malicious commits were introduced onto the in-development PHP 8.1 branch by perpetrators pretending to be Rasmus Lerdorf and Nikita Popov. The response by the PHP community to this attack was a shining example of the openness and transparency of the open-source world. We’re going to take a closer look at the PHP 8.1 story to uncover what lessons there are to be learned on the value of visibility in coding.

PHP System Resources

Package:
PHP System Resources
Summary:
Get values of the current computer devices
Groups:
Hardware, PHP 5, System information, Windows
Author:
Rafael Martin Soto
Description:
This package can get values of the current computer devices...

Read more at https://www.phpclasses.org/package/12157-PHP-Get-values-of-the-current-computer-devices.html#2021-07-19-16:47:56
Powered by Gewgley