Podcasts about Symfony

  • 81PODCASTS
  • 179EPISODES
  • 46mAVG DURATION
  • 1MONTHLY NEW EPISODE
  • Mar 12, 2025LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about Symfony

Latest podcast episodes about Symfony

IFTTD - If This Then Dev
#313.src - Open Source: Mettre le dev en musique avec Fabien Potencier

IFTTD - If This Then Dev

Play Episode Listen Later Mar 12, 2025 77:07


"L'injection dépendance de Symfony 2, c'est pas mon idée c'est une idée qui vient du monde Java" Le D.E.V. de la semaine est Fabien Potencier, fondateur du projet Symfony. Fabien souligne le rôle croissant de l'open source dans le secteur informatique. Fabien explore son parcours et les défis rencontrés avec l'open source depuis la naissance du projet Symfony. Il évoque les autres frameworks, d'autres technologies, leurs influences respectives ainsi que l'importance de satisfaire les besoins réels des utilisateurs. Les contributions à l'open source ont été influencées par de nouveaux outils tels que Stack Overflow et les LLM, mais leur utilisation doit être critique, selon Fabien. Au bout du compte, comprendre les besoins du client et encourager davantage de personnes à contribuer à l'open source sont des objectifs clés.Chapitrages00:00:54 : Introduction à l'Open Source00:03:10 : Évolution de l'Open Source00:03:58 : Impact des LLM sur l'Open Source00:05:25 : Découverte de l'Open Source00:06:33 : Création de Symfony00:09:34 : Philosophie de l'Open Source00:16:33 : Le choix de l'Open Source00:19:30 : Partage et transmission de savoir00:27:33 : Qualité et collaboration en Open Source00:30:33 : Liberté et qualité en Open Source00:36:02 : Innovation par la curiosité00:37:20 : PHP et son Pragmatism00:39:46 : L'Importance de la Stabilité00:43:11 : Simplification et Complexité00:46:35 : Microservices: Une Complexité Inutile00:55:25 : Évolution de l'Open Source01:10:41 : L'Impact des LLM sur le Développement01:14:49 : Conclusion et Recommandations Liens évoqués pendant l'émission Parser PRATTPaul Graham "Hackers and Painters" **Recrutez les meilleurs développeurs grâce à Indeed !** "Trouver des développeurs compétents et passionnés, comme les auditeurs d'If This Then Dev, peut être un vrai défi. Avec Indeed, connectez-vous rapidement avec des candidats qualifiés qui sauront s'épanouir dans votre entreprise. Profitez dès maintenant d'un crédit de 100 euros pour sponsoriser votre offre d'emploi : go.indeed.com/IFTTD."🎙️ Soutenez le podcast If This Then Dev ! 🎙️ Chaque contribution aide à maintenir et améliorer nos épisodes. Cliquez ici pour nous soutenir sur Tipeee 🙏Archives | Site | Boutique | TikTok | Discord | Twitter | LinkedIn | Instagram | Youtube | Twitch | Job Board |

Hacker Public Radio
HPR4272: Embed Mastodon Threads

Hacker Public Radio

Play Episode Listen Later Dec 17, 2024


This show has been flagged as Clean by the host. Episode 4 - Embed Mastodon Threads This is Episode 4 of the Plain Text Programs Podcast hosted at Hacker Public Radio. As always I will include links with the show notes rather than reading them on the podcast except there will be one exception to that today, the link to my Plain Text Blog, home.gamerplus.org. My blog and this podcast were my inspiration for writing the Embed Mastodon Threads program. Besides posting the show notes at Hacker Public Radio where they have a comments section I also post them at my blog. Then I make a Mastodon post that includes a link to the show notes on my blog and designate it as being the comment thread for that episode of the podcast. I also post a link to the comment thread on Mastodon in my show notes. Or at least I did in the past. It came to mind that it would be nice to be able to display the comment thread at the bottom of the blog post. So I made a Mastodon post about this, and I quote. So here's my idea. I want to use mastodon toots as a comment thread for my blog posts. At the bottom of the blog post I want to embed the toot and the replies. I can pull the toot id from the embed code. Then I want to make a database query to get all the replies to that toot. Then I can generate the embed codes needed to show the toot and all the replies. I'm a mysql guy, not postgres. Also a Mastodon newb. I want to know how to get the reply ids for a toot. Any help, links, etc? End quote. I immediately got responses from some programmers expressing interest in the idea and giving good advice. I did some research based on their suggestions. I had a good night's sleep. And then I made another post in the morning. And I quote. Mastodon is so great. I had this idea last night and fiddled around with it long enough to realize I was doing it wrong. So I made a post on Mastodon and almost immediately got help. I found some good info on the Mastodon API. I wake up this morning to more help and I found out about using curl in php to make https requests. Then a musician friend of mine who I've been following since before Mastodon sends a working example, with code, in a javascript environment. And I've got a plan. End quote. So credit where credit is due. The programmers, gamers, and musicians helping me were: Jeff the GenX Alien @jeff@soapbox.hackdefendr.com EcksDy @EcksDy@techtoots.com Malin @malin@dice.camp and Wayne Myers @conniptions@mastodon.social Now, I've known Wayne Myers since before I was ever on Mastodon. We share an interest in free culture music and I have played his songs on my radio show, Something Blue, recorded by his band, Fit and the Conniptions. He sent some links in a couple of comments to other blogs that were embedding Mastodon threads which confirmed that my idea could work. Jeff the GenX Alien gave me some significant technical help. And I quote. Use tootcli to learn everything you need to know about the inner workings of Mastodon. https://github.com/ihabunek/toot Whatever the API supports so does toot. End quote. So I looked into tootcli and the Mastodon API and I realized that I didn't need to access the database for my program, I could just use the API. So, thanks Jeff. My second clue came from EcksDy. And I quote. I've got some help too. Using the Mastodon API and curl in php it should be doable. End quote. So then I started to research using curl in PHP to retrieve json data from the Mastodon API and that's what I went with. I set up a testbed and Malin chimed in with test results. He continued to help with testing and ideas throughout the rest of the project. That's why Mastodon is so great! Way better than consulting an AI bot. So I had my work cut out for me. Here is where this program is like my Plain Text Programs. I work hard, up front, until I am convinced that I have an idea that will be easy to implement. This is much easier than doing it the hard way first and then rewriting the program later after it becomes difficult to maintain. I said I had a plan. This was my plan. Write a PHP program that will generate a webpage that can be embedded in an iframe. This program will take a link as a parameter included in the url. Get that link from the Mastodon embed code for the parent post. Use the API to retrieve the data associated with the parent post including the replies. Then generate the page by inserting the appropriate data into Mastodon's existing embed structure. That's kind of a broad framework but it certainly seemed doable. And it was. So first I wanted to make the API call so I could look at the data. I found this video by Alejandro AO. How to easily create cURL API requests in PHP (Wordpress, Laravel, Symfony) https://www.youtube.com/watch?v=iRLgEWMNA6w&t=602s He recommended that you use curl in the terminal to test your API call. Then you use a web app called Curl-to-PHP to generate your PHP code to make the same API call from your program. My first time consuming stumbling block was what I call the problem with the colon. There are some great documents detailing the syntax for API calls which I will link to in the show notes. And where you are supposed to insert an id they show that as :id. Like an idiot I thought the colon was part of the syntax, not as they intended, a marker to indicate insert your id here. This is why I like to see actual code examples in syntax documents. Anyway I couldn't get it to work so I searched around until I found some code examples and that turned on the lightbulb in my head. Now I was able to make API calls using curl in the terminal. I copied the working curl command and pasted it into the Curl-to-PHP website and it output some code. And it worked! Which I was very glad about because previous research into how to make API calls with PHP was confusing to say the least. Sometimes PHP gifts you with and abundance of riches which doesn't always make life easier. So I made my API call from my program. The Curl-to-PHP code returned $result. And then I used the json_decode command to turn the result string into an array of Mastodon data. $obj = json_decode($result, true); And I could use the print_r command to look at that data. print_r($obj); I immediately put the print_r command at the bottom of my program where it resides today as commented out debug code. This way while I was looking at my program output I could just scroll down or search to find what the actual data looked like. So I fumbled around for a while before I figured out that I would need the id and the url to make my idea work. Accessing json data is reading an array. So easy peasy or maybe not. This code returns the id of the reply from inside a while loop where $i is the index. $id = $obj['descendants'][$i]['id']; Like I said, it looks easy now. Needless to say it took some head scratching to figure out the exact syntax. I used to be a mason and people would always ask me how I learned masonry. I'd look them in the eye and say, "Trowel and error". There was, in fact, a lot of trowel and error going on. So then I generated the embed code to display each post and it worked. For all of my posts. Not for replies from other servers. So I scrolled down and examined the json data and I found the url field that had all the info about the replies, server, username, and id. So I picked up the url field the same way I picked up the id field and updated my code with the url server and name. This still didn't work. After staring at the json data for a while the light finally dawned. The id I was using was the gamerplus id from my server. The id I needed to use was in the url field from their server. Now that I had become enlightened it was easy to notice that the url field contained the exact info that I needed to use in the embed. Remember what I said about doing it the hard way before you replaced that code with the easy way. That can happen even when you have a plan. So by using the url data in the embed I have less string handling and fewer lines of code. I went to bed and in the morning I made this post. And I quote. > > I am able to pull the urls from the json call so that should solve the missing comments issue. > > And then it comes down to the issue of data structures. > > KISS > > I have decided, for now, to display the comments in chronological order without concern for whether a comment is a reply to the post or a reply to another comment. > > A chronological list rather than a tree. > > Easy to implement (kind of/relatively) and easy to understand. Also no indents. > > This project will be licensed GPL so I am certainly open to others applying other data structures to the data display. Everything you need to display a tree is in the json. > > End quote. So the data structure I needed is called a multidimensional array or an array of arrays. In terms of a database table it is two columns and a bunch of rows. In terms of PHP arrays it's an array where each element is an array with two values in it, the id and the url. Now, in my case, the id is from the gamerplus server. The url is from whatever server the replyer calls home. I initialize the array with the parent post. $ids = array(array($id,$url)); You can see the nested arrays in the code. Then I add items to the array like this. $ids[] = array($id,$url); I access an array item like this. foreach($ids as $id) { $url = $id[1]; The 1 refers to the second element of the array because programmers start counting at 0. Then using the url and the domain that I captured from the GET parameter that passes the parent url into the program I build the iframe embed for that post using the Mastodon embed as a template. Which worked but the posts weren't displayed in chronological order. Because the json data isn't necessarily in chronological order. So I had to sort the multidimensional array on the id. Which isn't as straight forward as the sort() command. So I found this article on stackoverflow called How do I sort a multidimensional array by one of the fields of the inner array in PHP? It had a two line solution that I modified to work with my array. And now all my posts were in chronological order. Stack Overflow code is licensed CC BY which is one way compatible with the GPL. Just include the attribution in a comment. My first post quoted above was posted on Friday, October 25, at 8:40 PM. On Monday, October 28 at 8:52 PM I wrote, "Here's the blog post proof of concept/working code." Three days from "I have an idea" to "working code". That wasn't all I did in those three days. Saturday I had a repertoire session with my band, Jazz Buskers. Sunday I produced my radio show, Something Blue. But when I'm in the middle of a programming project I get hyper focused. Sometimes I have to force myself to step away. And I have worked on the code a little bit today. And I will in the future too. I did a lot of testing today and some Mastodon servers and/or accounts just don't support embeds. But if you want to use Embed Mastodon Threads on your blog or website your toot will probably be the parent and if it works on your account, you're good. Also posts from different servers look different. Sometimes the background color is different. Sometimes the links look different. Sometimes the whole post is a link to that post on Mastodon. I decided to embrace that as a feature rather than a bug with the different look making it easier to distinguish posts made on Gamer+ from posts made on other servers. I have uploaded Embed Mastodon Threads to home.gamerplus.org. At my blog I have a post called Embed Mastodon Threads Hosted On Gamerplus where I say, "The program is licensed GPL and I will put up a codeberg repository so you can download it and install it wherever you want. But feel free to use my server." And then I go into detail about just how to do that in the embedded comments thread. The program is 46 lines of code with 11 lines of comments including attribution comments and debug code that is commented out. So 35 lines of code. Over three days that's 12 lines of code a day. About double normal expectations for a programmer. This has been a long podcast, certainly longer than most of my podcasts will be. But I wrote it right after I did the project and it gave me an opportunity to discuss the development process. There were many issues I had that I didn't mention but I think I hit the high points. Throughout the whole project I was posting to my threads on Mastodon so that also helped me check back on the development history of this three day project. The stream of boosts and replies from my compatriots helped keep me going too. It was a rush! So this is not exactly a plain text program because it uses a database accessed through the Mastodon API. Still, I do not have to maintain that database, it's just there on every Mastodon instance, ready to use. Most of my plain text programs are web apps or web pages. This one is a web service. And it is simple to use. All you have to be able to do is copy the embed code from Mastodon, extract the link, and paste the link into the url that calls the web service. Then you put that url into an iframe on your blog or web page. I have a help page for using Embed Mastodon Threads in the same directory as the thread.php program where you can generate and copy your iframe code. In fact the help page is also a Plain Text Program which I may talk about in a future podcast. On the help page are instructions on how to get a link from the Mastodon embed code. Then you paste the link into a form and hit submit. The page generates your iframe embed code that you can use in your blog or web page. The page also displays what the embedded thread will look like. If you would rather download the code and install your own instance of Embed Mastodon Threads I have a codeberg repository. Again all the links are in the show notes at Hacker Public Radio and at my blog at home.gamerplus.org. If you have questions you can reply to a thread on Mastodon or email me at hairylarry@deltaboogie.com. If you don't have a mastodon account you can get one at gamerplus.org. Links My Plain Text Blog https://home.gamerplus.org/ Embed Mastodon Threads Help Page https://home.gamerplus.org/Embed_Mastodon_Threads/ Codeberg Repository https://codeberg.org/hairylarry/EmbedMastodonThreads From Jeff the GenX Alien Use tootcli to learn everything you need to know about the inner workings of Mastodon. https://github.com/ihabunek/toot Whatever the API supports so does toot. How to easily create cURL API requests in PHP (Wordpress, Laravel, Symfony) https://www.youtube.com/watch?v=iRLgEWMNA6w&t=602s Curl-to-PHP https://incarnate.github.io/curl-to-php/ Playing with public data - Mastodon documentation https://docs.joinmastodon.org/client/public/ Status - Mastodon documentation https://docs.joinmastodon.org/entities/Status/ Context - Mastodon documentation https://docs.joinmastodon.org/entities/Context/ How do I sort a multidimensional array by one of the fields of the inner array in PHP? https://stackoverflow.com/questions/2426917/how-do-i-sort-a-multidimensional-array-by-one-of-the-fields-of-the-inner-array-i Embed Mastodon Threads Hosted On Gamerplus https://home.gamerplus.org/permalink.php?fname=Embed_Mastodon_Threads_Hosted_On_Gamerplus.txt Gamer+DBN Mastodon server https://gamerplus.org Provide feedback on this episode.

Talking Drupal
Talking Drupal #463 - Drupal vs DIY Site Builders

Talking Drupal

Play Episode Listen Later Aug 12, 2024 69:53


Today we are talking about DIY Site Builders, what are the benefits over Drupal (If Any), and When using Drupal makes sense with guest Ivan Stegic. We'll also cover Drupal 11 as our module of the week. For show notes visit: www.talkingDrupal.com/463 Topics What is a DIY site builder Does TEN7 use DIY site builders How are DIY site builders better than Drupal Are they less expensive than Drupal HAve you ever suggested a site builder to a client What does a migration from a site builder look like Do you think starshot will make Drupal competitive with site builders Resources Workspaces Extra Talking Drupal 451 - Just say Drupal Shopify Webflow Wix Squarespace Wordpress vip Cosmic.build Preshow: Eurion constellation Guests Ivan Stegic - ten7.com ivanstegic Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Josh Miller - joshmiller MOTW Correspondent Martin Anderson-Clutz - mandclu.com mandclu Brief description: Have you been wanting a version of Drupal that can use Workspaces, Recipes, and Single Directory Components, while running all the latest versions of its underlying technologies? Drupal 11 is all of that and more Module name/project name: Drupal 11 Brief history How old: created on Aug 2 by catch of Tag1 and Third & Grove Module features and usage Limited additions vs 10.3: by design to make the transition easier Mostly in the recipes API, e.g. new config actions Recap of new features vs. 10.0 Workspaces Revisions and workflow are possible in the UI for Blocks and Taxonomy Terms UI updates for creating and reusing fields, as well as bulk content operations New Access Policy API and Single Directory Components New Navigation and Announcements Feed modules Contrib support out of the gate: about ⅔ of the top 200 modules already support Drupal 11 Adding modules that Rector estimates will only need info.yml or automated fixes brings us to over 80% of the top 200, or about 75% of all Drupal 10-compatible projects on Drupal.org Updated dependencies: PHP 8.3, Symfony 7, CKEditor 5 42.0,2, Twig 3.9, Yarn 4, jQuery 4.0.0-beta, jQuery UI 1.14-beta.2 and more Modules moved to contrib (smaller core): Actions UI Activity Tracker Book Forum Statistics Tour Drupal 10 will receive maintenance support until mid-2026, so the community created this release of Drupal 11 early to give sites as much time as possible to make the transition, in this case almost 2 years!

CodigoTecno
198 - ¿Está bien aprender PHP o seguir utilizándolo ? - CodigoTecno

CodigoTecno

Play Episode Listen Later Jun 19, 2024 15:00


Hace poco el lenguaje de programación PHP cumplió 29 años y lejos de dejar de ser utilizado, tiene una cuota de mas del 75% de su utilización en internet. En este episodio, te cuento algunos de los motivos por los cuales (spoiler alert !) sí te recomiendo que lo aprendas, aumentes tus conocimientos y continues utilizándolo en tu día a día. Analizamos los detalles punto por punto por lo que sigue siendo una buena decisión aprender a programar con PHP o hacerlo con alguno de los grandes Frameworks web como Laravel, Codeigniter o Symfony. Lo hago en 8 puntos que no tienen discusión del porqué seguir valorando a PHP como una muy buena alternativa a la hora de elegir un lenguaje de programación. Te comparto la entrevista que me hiciera la comunidad de PHP en español llamada PHPurpura : https://www.linkedin.com/posts/php-rpura_php-laravel-activity-7207038417287786499-pOsC Gracias Jonatan Sanchez Martin por la invitación y reconocimiento a #CodigoTecno Si te quedaste con ganas de empezar con PHP o de aprender mas, te invito a comunicarte para poder coordinar una charla de mentoría individual o grupal. Gracias por estar allí como cada semana y si este podcast te impactó o te pareció útil, la mejor forma de colaborar es valorarlo o compartirlo con alguien mas, así puede llegar a mas personas, hacer una review en la plataforma desde donde escuchas #codigotecno - https://www.facebook.com/codigotecno - https://www.instagram.com/codigotecno Sumate a la comunidad en Youtube: https://bit.ly/2JLaKRj Mas recursos en : http://www.estudioplaneta.com Mirá mi perfil completo en: https://www.linkedin.com/in/soleralejandro/ En Telegram estamos empezando a armar el canal donde compartimos material que puede aportar a tu formación, recursos y cosillas interesantes. Te esperamos en : https://t.me/codigotecno Envíame un email : codigotecno (arroba) hotmail.com Seguinos en las redes de podcast mas populares: * En Spotify : https://spoti.fi/31Dp4Sq * En Ivoox : https://bit.ly/2JoLotl * En Itunes: https://apple.co/2WNKWHV * En Anchor.fm: https://bit.ly/3OiVCsN ¡ Y como siempre, muy buen código para todos, hasta la próxima !

The Bootstrapped Founder
326: Zeno Rocha — From Bootstrapping to YCombinator

The Bootstrapped Founder

Play Episode Listen Later Jun 5, 2024 40:36 Transcription Available


Zeno Rocha (@zenorocha) went through YC to build Resend, yet he still acts and thinks like a bootstrapper. In a world of polarized opinions about venture funding and not raising money, Zeno is both "one of us" and "one of them" — for both sides!Today, we talk about overcoming purism and embracing pragmatic entrepreneurship, starting with picking a niche Zeno truly understands: developers. We dive into how he's building an email platform that makes email fun again, what unexpected challenges a decade-old technology such as email can pose, and how to build a customer-centric business at scale.Zeno is an indie hacker, and has always been. He embraces venture funding but without all the hype and unicorn-chasing. You'll learn a lot from someone walking the tightrope between worlds that usually collide. Enjoy a friendly conversation about email, extremes, and making your dreams come true.Zeno on X: https://x.com/zenorocha00:00:00 Building an Indie Email Company00:08:48 Attention to Detail in Scaling00:21:30 Finding the Right Funding Model00:32:39 Building Developer Ecosystems and PartnershipsThis episode is sponsored by Acquire.comThe blog post: https://thebootstrappedfounder.com/zeno-rocha-from-bootstrapping-to-ycombinator/The podcast episode: https://tbf.fm/episodes/326-zeno-rocha-from-bootstrapping-to-ycombinatorThe video: https://youtu.be/-V6D1lXyVQUYou'll find my weekly article on my blog: https://thebootstrappedfounder.comPodcast: https://thebootstrappedfounder.com/podcastNewsletter: https://thebootstrappedfounder.com/newsletterMy book Zero to Sold: https://zerotosold.com/My book The Embedded Entrepreneur: https://embeddedentrepreneur.com/My course Find Your Following: https://findyourfollowing.comHere are a few tools I use. Using my affiliate links will support my work at no additional cost to you.- Notion (which I use to organize, write, coordinate, and archive my podcast + newsletter): https://affiliate.notion.so/465mv1536drx- Riverside.fm (that's what I recorded this episode with): https://riverside.fm/?via=arvid- TweetHunter (for speedy scheduling and writing Tweets): http://tweethunter.io/?via=arvid- HypeFury (for massive Twitter analytics and scheduling): https://hypefury.com/?via=arvid60- AudioPen (for taking voice notes and getting amazing summaries): https://audiopen.ai/?aff=PXErZ- Descript (for word-based video editing, subtitles, and clips): https://www.descript.com/?lmref=3cf39Q- ConvertKit (for email lists, newsletters, even finding sponsors): https://convertkit.com?lmref=bN9CZw

Over Engineered
Building prompts w/ Jess Archer

Over Engineered

Play Episode Listen Later May 10, 2024 110:15


Jess Archer took something that was quite good—the Symfony console output features—and built something that was absolutely great: Laravel Prompts. In today's episode, we dig into some of the gnarly details around building prompts and working with ANSI escape sequences in the terminal.

Talking Drupal
Talking Drupal #445 - Drupal Bounty Program

Talking Drupal

Play Episode Listen Later Apr 8, 2024 62:01


Today we are talking about The Drupal Bounty Program, How it supports innovation, and how you can get involved with guest Alex Moreno. We'll also cover WebProfiler as our module of the week. For show notes visit: www.talkingDrupal.com/445 Topics What is the Drupal Bounty program How and when did it start What issues and tasks are included Has the bounty program been successful Why was this program extended Do you see any drawbacks Can anyone participate How are issues for the second round being selected What do you see the future of the bounty program looking like Could this become like other bounty programs with cash Do you think the bounty program will help maintainers get sponsorship Resources Introducing The Bounty Program Bounty Program Extension Bjorn Talking Drupal #425 - Modernizing Drupal 10 Theme Development Guests Alejandro Moreno - alexmoreno.net alexmoreno Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Matt Glaman - mglaman.dev mglaman MOTW Correspondent Martin Anderson-Clutz - mandclu Brief description: Have you ever wanted to get detailed performance data for the pages on your Drupal sites? There's a module for that. Module name/project name: WebProfiler Brief history How old: created in Jan 2014 by Luca Lusso of Italy who was a guest on the show in episode #425 Versions available: 10.1.5 which works with Drupal >=10.1.2 Maintainership Actively maintained, latest release on Feb 1 Security coverage Test coverage Not much in the way of documentation, but the module is largely a wrapper for the Symfony WebProfiler bundle, which has its own section in the Symfony documentation Number of open issues: 36 open issues, 13 of which are bugs Usage stats: 477 sites Module features and usage Once installed the module adds a toolbar to the bottom of your site, within which it will show a variety of data for every page: Route and Controller Memory usage Time to load (with some additional setup) Number of AJAX requests Number of queries run and the total query time Number of blocks visible How many forms are on the profile Lots of other detailed information available through links Reports are saved into the database, so you can dig through additional details such as: Request information like access metadata, cookies, session info, and server parameters, in addition to the request and response headers All of the queries that ran, how long each took, and even a quick way to create an EXPLAIN statement to get deeper insight from your database engine You can also view all the services available, and with a single click open the class file in the IDE of your choice A handy alternative to other performance monitoring tools like XHProf (either as Drupal module, or installed directly into your development environment), or commercial tools like Blackfire or New Relic Discussion Luca's book Modernizing Drupal 10 Theme Development actually provides a great deep dive into this module

IFTTD - If This Then Dev
#245.exe par David Coutelle - Symfony: Naviguer entre contraintes et liberté avec Grégoire Pineau

IFTTD - If This Then Dev

Play Episode Listen Later Jan 29, 2024 11:40


Pour l'épisode #245 je recevais Grégoire Pineau. On en débrief avec David. **Security Navigator 2024** Découvrez le "Security Navigator 2024" de Orange Cyberdéfense, des récits précieux vous permettant d'anticiper la menace. Téléchargez le Security Navigator 2024 Archives | Site | Boutique | TikTok | Discord | Twitter | LinkedIn | Instagram | Youtube | Twitch | Job Board |

Talking Drupal
Talking Drupal #430 - Drupal in 2024

Talking Drupal

Play Episode Listen Later Dec 25, 2023 74:50


Today we are talking about Drupal in 2024, What we are looking forward to with Drupal 11, and the Drupal Advent Calendar with James Shields. We'll also cover Drupal 10.2 as our module of the week. For show notes visit: www.talkingDrupal.com/430 Topics Advent calendar Selection process Popularity Next year Drupal features in 2024 Drupal 11 Project browser Recipes / Starter templates Automated updates Gitlab Smaller core Predictions Resources Drupal Advent Calendar A Plan for Drupal 11 Drupal 10.2 announcement Change Records for 10.2.0 https://www.drupal.org/node/3395582 https://www.drupal.org/node/3395575 https://www.drupal.org/node/3369935 Dev Days Guests James Shields - lostcarpark.com lostcarpark Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Martin Anderson-Clutz - mandclu Ron Northcutt - community.appsmith.com rlnorthcutt MOTW Correspondent Martin Anderson-Clutz - mandclu Drupal 10.2 Improvements include Technology Updates PHP 8.3 Includes capabilities that previously required contrib projects File name sanitization A search filter on the permissions page End Users Performance enhancements and improved caching APIs Support for PHP Fibers to accelerate handling things like asynchronous remote calls Content Creators Revision UI for media Wider editing area in Claro on large screens The return of “Show blocks” in CKEditor 5, missing until now Site Builders Field creation UI has a new, more visual interface, and an updated workflow Block visibility can now be based on the HTTP response status, for example to make it visible or invisible on 404 or 403 responses Tour module is no longer enabled by default for the Standard and Umami profiles New “negated regular expression” operator for views filters (string/integer), to exclude results matching a provided pattern Site Owners Announcements Feed is now stable and included in the Standard profile The functionality in the experimental Help Topics module has been merged into the main Help module, so the Help Topics module is now deprecated New permission: Use help pages Developers A fairly sizable change is a move to use native PHP attributes instead of doctrine annotations to declare metadata for plugin classes. Work is already underway to get core code converted, and an issue has been opened to have rector do this conversion for contrib projects A new DeprecationHelper::backwardsCompatibleCall() method to help write Drupal extensions that support multiple versions of core A PerformanceTestBase is now in core, to support automated testing of performance metrics A new #config_target property in ConfigFormBase to simplify creating configuration forms Symfony mailer is now a composer dependency of core New decimal primitive data type Expanded configuration validation, Symfony autowiring support, HTML5 output from the HTML utility class is now default, and more In addition to these and the features highlighted in the official announcement, there are three pages of change records for the 10.2.0 release, and we'll include a link to those in the show notes

Engineering Kiosk
#100 Episoden: ein Tech Rückblick auf 2022/23, Predictions 2024 und viel Tech Trivia

Engineering Kiosk

Play Episode Listen Later Dec 5, 2023 87:22


100 Episoden Engineering Kiosk: Das Jubiläum, das Quiz, der Tech-Look-Back und die Tech-Predictions 2024Vor fast zwei Jahren hat der Engineering Kiosk das Licht der Welt erblickt. Seitdem wird jede Woche eine neue Episode veröffentlicht. Und auf einmal wird die Episoden-Nummer dreistellig. Happy Birthday - Dies ist unser Engineering Kiosk Jubiläum.Eine etwas andere Folge mitViele Stimmen von Freunden und BekanntenEinem Quiz-BattleDer Tech-Look-Back aus den Jahren 2022 und 2023Unsere Tech-Predictions 2024Ein besonderer Dank geht anMatthias EndlerArne ClausDominik SiebelMarkus PoerschkeChristian Schepp Schaefer vom WorkingDraft-PodcastChristian Braun vom Index Out Of Bounds-PodcastNils Langner vom Super Duper Developers ClubEllen Schwartau und Doreen Sacker vom Unmute IT PodcastRoland Golla von Never Code AlonePatrick Terlisten und Claudia Kühn vom Wartungsfenster PodcastBonus: 100€ gehen an Open Source.Das schnelle Feedback zur Episode:

PHPUgly
361: The Shutdown

PHPUgly

Play Episode Listen Later Dec 1, 2023 59:29


Links from the show:Symfony 7.0.0 released (Symfony Blog)https://twitter.com/danjharrin/status/1729895786064888188Command Line Picasso | php[architect]PHP[TEK] 2024PHP | endoflife.datePHP: Never - Manual https://twitter.com/official_php/status/1729168870827532504?t=DL-o14jdWEFxVWgsT8hEGQ&s=19PHP: Supported VersionsPHP: rfc:release_cycle_updatePHP Support for PHP 7.2 - 8.0 | PHP LTS | Zend by PerforceUsing Amazon RDS Blue/Green Deployments for database updates - Amazon Relational Database ServiceEduards Sizovs is lying about conference diversity. | Liz Fong-Jones posted on the topic | LinkedInThis episode of PHPUgly was sponsored by:Honeybadger.ioBuilt for Developers. Monitoring doesn't have to be so complicated. That's why we built the monitoring tool we always wanted: a tool that's there when you need it, and gets out of your. Everything you need to keep production happy so that you can keep shipping. Deploy with confidence and be your team's DevOps hero.https://www.honeybadger.io/JetBrains PhpStormThe Lightning-Smart PHP IDE. Join over 600,000 happy PhpStorm users worldwide!https://www.jetbrains.com/phpstorm/php[architect]php[architect] magazine is the only technical journal dedicated exclusively to the world of PHP. We are committed to spreading knowledge of best practices in PHP. With that purpose, the brand has expanded into producing a full line of books, hosting online and in-person web training, as well as organizing multiple conferences per year.https://www.phparch.comPHPUgly streams the recording of this podcast live. Typically every Thursday night around 9 PM PT. Come and join us, and subscribe to our Youtube Channel, Twitch, or Twitter. Also, be sure to check out our Patreon Page.Twitter Account https://twitter.com/phpuglyMastodon Account https://phparch.social/@phpuglyHost:Eric Van Johnson | Mastodon: @eric@phpartch.socialJohn Congdon | Mastodon: @john@phpartch.socialTom RideoutStreams:Youtube ChannelTwitchPowered by RestreamPatreon PagePHPUgly Anthem by Harry Mack / Harry Mack Youtube ChannelThanks to all of our Patreon Sponsors:***** PATREON SUPPORTS SPONSOR LEVEL **Honeybadger (https://honeybader.io)** Patreon Supports **ButteryCrumpetFrank WDavid QBoštjan OMarcusShelby CS FRodrigo CBillyDarryl HKnut BDmitri GElgimboMikePageDevKenrick BKalen JR. C. S.Peter AHoneybadgerHolly SClayton SRonny NBen RAlex BKevin YWayneJeroen FahinkleChris CSteve MRobert SThorstenEmily JAndrew WulrikJohn CJames HEric MEd GRirielilHermitChampJeffrey DChris BTore BBek JDonald GPaul KDustin UMel S

programmier.bar – der Podcast für App- und Webentwicklung

PHP ist eine der am weitesten verbreiteten Programmiersprachen im Internet. Wie kommt es also, dass so wenig darüber gesprochen wird? Und was ist eigentlich in der ganzen Zeit mit PHP passiert? Diese Fragen haben sich auch Jan und Fabi gestellt und zur Beantwortung Sebastian Feldmann zum Gespräch geladen.Die drei diskutieren, warum PHP oftmals belächelt oder gar totgesagt wird und warum viele dieser Vorurteile einfach nicht mehr wahr sind – falls sie das jemals waren. Zusammen schauen sie dabei nicht nur auf die neueste Version von PHP 8.3, sondern auch auf frühere Releases zurück und beleuchten, wie nicht nur die Sprache, sondern auch das Ökosystem um PHP und seine Frameworks wie Laravel und Symfony gereift sind.Sebastian beschreibt, wie mithilfe von modernem Paketmanagement, Testing, Code-Analyse und automatisierten Refactorings ein schneller und stabiler Entwicklungsprozess aussehen kann.Picks of the Day: Jan Gregor: benholmen/defrag – Dieses kleine, quirlige Paket erlaubt es euch, die Fortschritts- und Status-Anzeige eurer PHPUnit Testsuite im Stil eines Defragmentierungsprozesses unter MS-DOS darzustellen. Sebastian: CaptainHook (Go Version) – Mit CaptainHook können Git Hooks einfach gemanagt und als Teil deines Quelltextes/Repositories mit deinen Teammitgliedern geteilt werden. Somit können zum Beispiel Commit Messages validiert werden, Qualitätsprüfungen und Tests automatisch ablaufen, die Entwicklungsumgebung hochgefahren oder aktualisiert werden und beliebige Befehle ausgeführt werden. Das Tool stand bisher nur in einer PHP-Version zur Verfügung und erscheint nun auch in einer eigenständigen Go-Version. Fabi: Connected Sheets mit Big Query – Wenn du schon immer mal unkompliziert mit BigQuery-Daten arbeiten wolltest, ohne dich dabei allzu viel mit Query-Syntax und ähnlichem zu beschäftigen, kannst du dies nun tun. Dieser Blog-Post zeigt auf, wie du ganz einfach die BigQuery-Daten mit Google Sheets verbinden kannst, um so mit den gewohnten Tabellen-Werkzeugen (Sortieren, Filtern, Pivot-Tabellen) Daten analysieren zu können. Schreibt uns! Schickt uns eure Themenwünsche und euer Feedback: podcast@programmier.barFolgt uns! Bleibt auf dem Laufenden über zukünftige Folgen und virtuelle Meetups und beteiligt euch an Community-Diskussionen. TwitterInstagramFacebookMeetupYouTubeMusik: Hanimo

IFTTD - If This Then Dev
#245.src - Symfony: Naviguer entre contraintes et liberté avec Grégoire Pineau

IFTTD - If This Then Dev

Play Episode Listen Later Nov 15, 2023 64:31


"C'est un peu une boring tech, Il y a encore de l'innovation mais ça marche" Le D.E.V. de la semaine est Grégoire Pineau, core-team contributor de Symfony. Grégoire revient sur l'historique de Symfony et partage son expérience en tant que développeur sur cette technologie. Il discute notamment des liens entre contrainte et liberté et comment il a vécu un véritable coup de foudre technologique lors de sa découverte du framework. Grégoire aborde aussi les enjeux des micro-services, les breaking changes et la grande communauté autour de PHP et du framework le plus utilisé à ce jour même si certains peuvent le qualifier de "boring tech". Liens évoqués pendant l'émission Blog de Julia Evans **Continuons la discussion**@ifthisthendev@bibear@lyrixxLinkedInnullDiscord** Une conférence IFTTD ! **Grande nouvelle pour les fans d'IFTTD ! Nous planifions une conférence pour 2024 et ton avis est essentiel.Participe à notre sondage rapide et aide-nous à créer un événement qui te ressemble** Plus de contenus de dev **Retrouvez tous nos épisodes sur notre site.Nous sommes aussi sur Instagram, TikTok, Youtube, Twitch **Découvrez Magma : La Newsletter Essentielle pour les Entrepreneurs et Devs** Ne ratez pas Magma, la newsletter hebdomadaire incontournable pour les entrepreneurs et les développeurs. Chaque vendredi, recevez des analyses détaillées sur les tendances business, les enjeux à venir, les signaux faibles, et bien plus. Rejoignez la communauté de Magma avec le code "IFTTD23" pour bénéficier de 7 jours gratuits et une remise de 100€ sur l'abonnement annuel. Découvrez plus et soutenez le podcast : The Magma. Code : IFTTD23** Job Board If This Then Dev **Si vous avez envie de changer de job, visitez le job board If This Then Dev ! Si vous voulez recruter des personnes qui écoutent IFTTD, il va s'en dire que le job board d'IFTTD est l'endroit où il faut être ! Ce job board est fait avec My Little Team!** La Boutique IFTTD !!! **Affichez votre appréciation de ce podcast avec des goodies faits avec amour sur la boutique** Participez au prochain enregistrement !**Retrouvez-nous tous les lundis à 19:00 (mais pas que) pour assister à l'enregistrement de l'épisode en live et pouvoir poser vos questions pendant l'épisode :)Nous sommes en live sur Youtube, Twitch, LinkedIn et Twitter

Talking Drupal
Talking Drupal #417 - The Recipes Initiative

Talking Drupal

Play Episode Listen Later Sep 25, 2023 67:19


Today we are talking about The Recipes Initiative, the future of install profiles, if distros are still a thing, and answering a bunch of listener questions with our guest Jim Birch. We'll also cover Quick Links Kit as our module of the week. For show notes visit: www.talkingDrupal.com/417 Topics What are recipes How do you use recipes Is it a module, configuration or something else How do recipes compare to install profiles Are you stuck with them What happens if the config is changed Are there namespace collisions How do recipes compare with Distributions Can you include content Listener James: Can recipes uninstall modules Can we use recipes now When will recipes be in core Can recipes be used by tests Listener Andy: Can recipes and startkits interact Can themes require recipes Listener Matthieu: How do recipes compare with Symfony recipes Listener James: How easy will it be to make custom recipes Listener Matthieu: Should contrib maintainers be watching recipes How can we get involved Resources Jim's Design 4 Drupal Talk Recipes Recipes Drupal Project Page Strategic Initiative Page Cioppino php core/scripts/drupal recipe PATH/TO/RECIPE config actions issue infrastructure project meeting thread Kevin Quillen blog post - Create Recipes Guests Jim Birch - @jimbirch Hosts Nic Laflin - nLighteneddevelopment.com nicxvan John Picozzi - epam.com johnpicozzi Jen Lampton - jenlampton.com - jenlampton MOTW Correspondent Martin Anderson-Clutz - @mandclu Quick Links Kit Brief description: Have you ever needed to add a set of quick links, essentially visual navigation prompts, to the home page or section pages of your Drupal site? Quick Links Kit (different from Quicklink module created by last week's guest, Mike Herschel) Brief history How old: I created in Apr 2021 Versions available: 1.0.6 that supports Drupal 8, 9, and 10, and 2.0.1 that supports only D10 Maintainership Sporadically maintained, but a pretty simple module Number of open issues: 1, and it's not a bug Usage stats: 1 site Maintainer(s): Me! Module features and usage The module is really just a set of configuration, with an optional submodule that sets everything up, including the placement of the block on the home page, for sites using Olivero as their theme, so it's perfect for a fresh install of Drupal It allows for SVG icons to be set for each link, and sets their fill to inherit from the link style The links can be created and managed without leaving the page on which they're used, by using the settings tray, though it would be a quick configuration change to use a modal or a separate page instead, if preferred. The 2.0 version also makes use of Drupal 10's new responsive grid views display, so if you've wanting to try that out, this is an easy way to get started I thought this module was appropriate for today's episode because it's an example of a module that will be a recipe once the infrastructure for them is ready. That said, the Olivero submodule does currently contain a little CSS to improve the display of the links, but that could easily be copied into your site's custom theme.

Laravel News Podcast
Buns in the Forge, tabulating data, and crawling the DOM

Laravel News Podcast

Play Episode Listen Later Sep 20, 2023 37:35


Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community. (04:16) - Laravel 10.23 released (10:32) - Laravel 10.24 released (12:55) - Support for Bun lands in Laravel Sail and Forge (17:56) - Final release of Laracon AU 2023 tickets now on sale! (19:31) - Laravel Collective HTML package is abandoned (22:28) - Create tables for your models with Livewire Tables (25:03) - Generate APIs with ease with Laravel Rest Api (26:16) - Laravel Ecommerce with Lunar PHP (27:18) - Tablar: A Laravel dashboard preset (28:51) - Laravel Date Filtering package for Eloquent (29:50) - Git Delta is a syntax highlighting pager for git, diff, and grep output (31:55) - Symfony's DomCrawler with Laravel HTTP tests Show links Bun is disrupting JavaScript land Sushi

Wannabe Entrepreneur
#297 - Interviewing Yossi and Simon About TinyKiwi Acquisition

Wannabe Entrepreneur

Play Episode Listen Later Jun 14, 2023 75:57


Have you ever wondered what it's like to sell or acquire a company in the indie scene? In this podcast episode, I had the pleasure of interviewing Simon, the founder of Feedhive, and Yossi, the founder of Tiny Kiwi, as they discuss the acquisition of Tiny Kiwi by Feedhive. We delve into the process of selling and acquiring a company in the indie market, as well as the benefits and challenges of being an indie entrepreneur. We also touch on the importance of balancing work and personal life. Tune in for valuable insights into the world of indie entrepreneurship and the potential for growth in the market.Simon's TwitterYossi's TwitterLinksTry PodSqueezeJoin The WBE CommunitySponsor the podcastBut WBE MerchBuy The Bootstrapper's GuideDM me on TwitterTimestampsIntroduction [00:00:12]The host introduces the guests, Simon and Yossi, and explains that they will be discussing the acquisition of Tiny Kiwi by Feedier.Selling a company in the indie scene [00:02:32]The host and Yossi discuss the market of selling a company in the indie scene and how it differs from the startup and VC scene.Yossi's background and shift to indie hacking [00:05:36]Yossi talks about his background as a developer and his shift to indie hacking, inspired by the Building Public community on Twitter.Indie Founder Stories [00:10:13]The speakers discuss the toxic starts of good founder stories and the importance of setting your own rules as an indie founder.Managing Work Addiction [00:14:53]The speakers discuss the potential for work addiction as an indie founder and how they manage their work-life balance.Description of Tiny Kiwi [00:18:00]Simon describes Tiny Kiwi as a minimalistic and easy-to-use image editing tool for creating beautiful designs quickly.Building Tiny Kiwi [00:18:51]Yossi describes the inspiration behind building Tiny Kiwi as a tool for indie developers to share beautiful screenshots of their work quickly and with more control.Selling Tiny Kiwi [00:21:11]Yossi explains how he decided to sell Tiny Kiwi to Feedier after realizing he no longer had the time to work on it. He also discusses his lack of experience in selling companies.Attachment to Products [00:25:24]Yossi and Simon discuss the emotional attachment that comes with building and selling a product, as well as the different levels of attachment when buying a product. They also discuss the impact of having paying customers on the attachment to a product.The Canva Integration [00:27:55]Simon and Yossi discuss their failed attempts to integrate Canva into Feedier and their search for an alternative tool, which led them to Kello/Vista Create.Brand Bird Integration [00:32:14]The founders discuss their experience integrating Brand Bird into Feedier and the challenges they faced with users having to pay for the tool separately.Acquiring Tiny Kiwi [00:34:39]Simon and Yossi discuss the acquisition of Tiny Kiwi by Feedier and how it solved a problem for Feedier's image creation tool.Trust in the Acquisition [00:36:37]Yossi and Simon discuss the process of selling and acquiring a company in the indie scene, and the importance of trust in the process.Code Quality Concerns [00:38:09]Yossi expresses concerns about the quality of his code and the potential for negative feedback from Simon, while Simon discusses his expectations for the tech stack and code quality.Importance of Code Manageability [00:43:09]Simon discusses the importance of code manageability and compatibility with his team's tech stack, while also acknowledging the functionality and usability of Tiny Kiwi's code.Tech stack for indie makers [00:46:11]Yossi discusses the tech stack used for Tiny Kiwi, including Next.js with React, JavaScript, and Superbase, and how it was deployed on Digital Ocean.Choosing a tech stack for acquisition [00:49:33]Simon and the host discuss the importance of choosing a tech stack that is matchable and easy to migrate when acquiring a company, and the advice for indie makers building products to consider using a generic tech stack.Due diligence in the acquisition process [00:52:02]Yossi talks about the due diligence process in the acquisition, including sharing access to the Github repository and the nervousness he felt about showing the actual code.The Sale Process [00:53:52]Yossi and Simon discuss the process of selling and acquiring a company in the indie scene, including the potential for deal breakers and the excitement of the experience.Managing Multiple Priorities [00:57:43]Simon discusses the stress of managing multiple priorities, including the acquisition of Tiny Kiwi, while also launching a new tool and dealing with personal life events.Indie Community and Acquisitions [01:02:11]The host discusses the increasing trend of indie companies being sold for large sums of money and what it means for the indie community.The Indie Market [01:02:58]Discussion on the indie market of selling and buying side projects, including marketplaces like MicroAcquire and Site Projects, and the potential for indie makers to build and sell profitable products.Acquiring Tiny Kiwi [01:06:22]Simon discusses the process of acquiring Tiny Kiwi, including the challenge of transferring subscriptions from Paddle to Stripe, and the value of the acquisition even if the company was not profitable.The Future of Indie Acquisitions [01:08:34]Simon and Yossi discuss the evolution of the indie community and the potential for small bootstrapped indie companies to acquire other small bootstrap tools, pointing towards a future where indie acquisitions become more common.The Indie Community [01:12:56]The host discusses the indie community and its growth, mentioning some well-known names in the community.Selling and Acquiring Companies [01:12:07]Simon and Yossi discuss the process of selling and acquiring a company in the indie scene.Consider Selling Your Project [01:14:38]The host encourages listeners to consider selling their projects if they are feeling tired or want to build something else, and mentions platforms that allow for selling SaaS.Links & MentionsGithub Gist (mentioned by Simon at 00:41:37)Symfony (mentioned by Tiago at 00:46:11)Next.js with React (mentioned by Yossi at 00:46:20)JavaScript (mentioned by Yossi at 00:46:20)Database and authentication with Superbase (mentioned by Yossi at 00:46:20)Plausible for analytics (mentioned by Yossi at 00:46:20)Digital Ocean (mentioned by Yossi at 00:46:40)AWS (mentioned by Simon at 00:47:06)Google Cloud Platform (mentioned by Simon at 00:47:06)Palomi (mentioned by Simon at 00:47:06)GraphQL (mentioned by Simon at 00:47:06)Firebase (mentioned by Simon at 00:47:06)TypeScript (mentioned by Simon at 00:49:03)Svelte (mentioned by Simon at 00:51:29)Micro Acquire (marketplace for buying and selling companies) - mentioned at 01:02:58Site Projects IO (marketplace for buying and selling side projects) - mentioned at 01:02:58Paddle (tool for managing subscriptions) - mentioned at 01:06:22Stripe (tool for managing payments) - mentioned at 01:06:22Upwork (platform for outsourcing work) - mentioned at 01:09:25Fiverr (platform for outsourcing work) - mentioned at 01:09:25

SCRIPTease
069 | Košík.cz – David Pěknic, CTO & Jakub Růžička, Engineering Manager

SCRIPTease

Play Episode Listen Later Jun 7, 2023 58:10


Honí vás mlsná? Pokud patříte mezi 80 % populace v Česku bydlící poblíž velkých měst, můžete si objednat potraviny na Košík.cz a do tří hodin mít tašky u dveří. Košík začal spolupracovat s řetězcem Makro a kurýrní službou DODO, prošel zásadní restrukturalizací pod novým CEO a teď napjatě vyhlíží zahraniční trhy. Expanzi podporuje i tým 140 lidí, v jehož čele stojí hosté SCRIPTease show David Pěknic a Jakub Růžička. Hot Tech Stack: PHP, Swift, Kotlin, Vue.js, Symfony, SpringBoot, Hibernate, Elasticsearch, Redis, MongoDB, PostgreSQL, AzureNalaďte si novou SCRIPTease show a nezapomeňte si u toho představovat vůni právě upečených koláčů, čerstvého ovoce nebo výběrového masa. Tahle epizoda je prostě MŇAMózní!

Talking Drupal
Talking Drupal #386 - Drupal Vs Wordpress

Talking Drupal

Play Episode Listen Later Feb 13, 2023 83:11


Today we are talking about Drupal & Wordpress with Maciej Palmowski. For show notes visit: www.talkingDrupal.com/386 Topics What is Wordpress Do you have Drupal experience Pros of Drupal over Wordpress Pros of Wordpress over Drupal Selecting a CMS What sites don't work well with Wordpress What sites don't work well with Drupal Headless in Wordpress Will Wordpress use Symfony? Who wins? Resources Talking Drupal #315 - Communities: Wordpress Vs Drupal Talking Drupal #16 - Wordpress Vs Drupal Yoast for Drupal (Real-time SEO) 295 31 Days of Migration 352 Migration 381 A Modular Web PHP Compatibility https://make.wordpress.org/core/handbook/references/php-compatibility-and-wordpress-versions/ https://www.drupal.org/docs/system-requirements/php-requirements Statamic Sanity Io Cassidy Williams Talk Matt Mullenweg on licensing derivative works Code and Coffee Security report Guests Maciek Palmowski - maciekpalmowski.dev @palmiak_fp Hosts Nic Laflin - www.nLighteneddevelopment.com @nicxvan John Picozzi - www.epam.com @johnpicozzi Katherine Druckman - katherinedruckman.com @katherined MOTW Correspondent Martin Anderson-Clutz - @mandclu WordPress Migrate Supports migrating Wordpress exports into Drupal, including posts, pages, attachments, tags, and categories.

SCRIPTease
062 | Spaceflow – Milan Mimra, CTO

SCRIPTease

Play Episode Listen Later Feb 8, 2023 55:28


Miliardy lidí na celém světě řeší každý den ty stejné problémy, ať už doma, nebo v práci. Přijdou a je jim buď zima, nebo teplo. Nefunguje výtah, kantýna má zavřeno a na parkovišti zrovna není místo. V českém startupu Spaceflow si toho všimli a navrhli pro uživatele jednoduchou, ale pro správce úžasně komplexní appku pro digitální facility management. Nasadili ji už ve více než 20 000 bytových jednotkách a 300 komerčních nemovitostech, od kanceláří až po obří obchodní centra. Díky super referenci od prvních uživatelů v River City Prague vystřelil Spaceflow do světa a dnes má zastoupení v Mnichově, Londýně i New Yorku. CTO Milan Mimra vymýšlí nové use-cases (letos třeba automatické doručování balíčků do boxů na recepcích budov) a s radostí kouká na to, kolika lidem aplikace zpříjemňuje život.

No Compromises
Going on a bug hunt

No Compromises

Play Episode Listen Later Jan 10, 2023 13:40


Think of a bug like a fun code puzzle (00:00)Don't get stuck for too long (01:22)The confusing CSV bug (02:35)Diffing the files (06:05)Digging deeper into Symfony and PHP (08:07)Getting stubborn about fixing this (11:29)Silly bit (12:26)Why would you validate your MIME types? Learn that and a whole lot more with our validation book: Mastering Laravel Validation Rules

Artisan Développeur
Aux origines de Symfony avec Fabien Potencier

Artisan Développeur

Play Episode Listen Later Oct 25, 2022 39:43


Symfony est l'un des frameworks les plus utilisés pour les développeurs de PHP.  Pourtant, à son origine il était supposé n'être développé que pour un projet.  Quelle a été la genèse du projet ? Comment a-t-il pu devenir une référence dans le métier ?  Comment a-t-il pu être largement adopté à travers le monde dans un univers ultra concurrentiel ?  On découvre tout cela avec son fondateur et leader Fabien Potencier.  Pour suivre Fabien Potencier sur Twitter : https://twitter.com/fabpot  Pour suivre Fabien Potencier sur git hub : https://github.com/fabpot       Deviens un Développeur Freelance Libre : https://artisandeveloppeur.fr/freelance-libre 

SCRIPTease
057 | MONETA – Jakub Komenda a Jiří Balcar, Digital Channels Leads

SCRIPTease

Play Episode Listen Later Oct 19, 2022 59:55


MONETA Money Bank je na českém trhu co do počtu klientů čtvrtá, v oblasti digitalizace a inovací je ale jasnou jedničkou. Má na to oficiální štempl jako Nejbanka 2021 a 4 násobný vítěz ankety Inovátor roku, tak to prostě musí být pravda.

Dan Za Podcast
Dan Za Podcast - Intervju - Antonio Perić-Mažar: Splitski softveraši koji s kodom sviraju simfoniju

Dan Za Podcast

Play Episode Listen Later Sep 13, 2022 68:57


U najnovijoj 62. epizodi, pridružio mi se Antonio Perić-Mažar, CEO u Locasticu, firmi baziranoj u Splitu. Prošli smo njihove najzanimljivije projekte, tehnologije koje rade, ali i pogled na tržište i interne procese. ⚠️Ako vam se svidi ovaj ili neki drugi sadržaj, ne zaboravite se pretplatiti na moj YouTube kanal i podcasting platforme.   00:00 Uvod 00:32 Tko je Antonio? 01:25 Počeci agencije 2011. vs sada 02:28 Tržište rada u RH 03:17 Imate li HR, nekakav sustav i sl? Kako pristupate tome? 05:06 Tko su ljudi u Locasticu, koje tehnologije radite? 07:41 Koji klijenti koriste Symfony, uz Wordpress, Woo commerce itd? 09:29 Tommy webshop – koliko je trajala izrada, koliko proizvoda je u pitanju? 13:58 Posebni features koje ste razvili 15:45 Support na takvim projektima 18:11 Dizajn na takvim projektima 20:22 Što misliš o guest opciji u check out procesu? 22:30 E-commerce tržište u RH 27:14 Problemi s ERP strane 31:32 Tehnički webshopovi i troškovi 34:46 Omo reader aplikacija 38:36 Novi projekti 42:25 Konferencije, putovanja u inozemstvu i inozemni projekti 54:16 Web 3.0 58:10 Odnos tržišta i rasta tvrtki 01:00:07 GDPR i webovi -----         [PODCAST 

How To Code Well
172 - Will Web Development die in 10 years?

How To Code Well

Play Episode Listen Later Sep 1, 2022 15:49


Will Web Development die in 10 years? Some people think that JavaScript, PHP, Python and other Web Development technologies will die in 10 or even 20 years time. Is HTML finished? Is it time to learn something else? In this episode I explain my thoughts and answer this question. Please let me know if you agree, disagree or if you have others https://howtocodewell.fm/contact Change log I'm working on an error with Kubernetes and S3 volumes. Discovering deprecation notices before upgrading to Symfony 5.4. Checkout the video here I've started publishing code quizzes to Twitter and Instagram I've started publishing bite size dev tips Twitter and Instagram My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Tuesdays 18:00 = Live Podcast YouTube Sundays 15:00 - Live coding on Twitch

The Laravel Podcast
League CSV (and URI & Period), with Ignace Nyamagana Butera

The Laravel Podcast

Play Episode Listen Later Aug 12, 2022 47:36


Ignace's Website - https://nyamsprod.comIgnace's GitHub - https://github.com/nyamsprodIgnace's Twitter - https://twitter.com/nyamsprodBakame GitHub - https://github.com/bakame-phpSponsor Ignace - https://github.com/sponsors/nyamsprodLeague CSV GitHub - https://github.com/thephpleague/csvLeague CSV - https://csv.thephpleague.com/League URI GitHub - https://github.com/thephpleague/uriLeague URI -  https://uri.thephpleague.com/League Period GitHub - https://github.com/thephpleague/periodLeague Period - https://period.thephpleague.com/Domain Parser GitHub - https://github.com/jeremykendall/php-domain-parserThe PHP League - https://thephpleague.com/Frank de Jonge - https://twitter.com/frankdejongeStorage, with Frank de Jonge - https://laravelpodcast.com/episodes/storage-with-frank-de-jongeJonathan Reinink - https://github.com/reininkEloquent and the Query Builder, with Jonathan Reinink - https://laravelpodcast.com/episodes/eloquent-with-jonathan-reininkBarry vd. Heuvel - https://github.com/barryvdhLaravel Debugbar, with Barry vd. Heuvel - https://laravelpodcast.com/episodes/laravel-debugbar-with-barry-vd-heuvelPHP Manual for fgetcsv - https://www.php.net/manual/en/function.fgetcsv.phpComposer - https://getcomposer.org/PSR-4: Autoloader - https://www.php-fig.org/psr/psr-4/The SplObjectStorage class - https://www.php.net/manual/en/class.splobjectstorage.phpStreams - https://www.php.net/manual/en/book.stream.phpSymfony - https://symfony.com/PHP Releases - https://phpreleases.com/Doctrine - https://www.doctrine-project.org/Doctrine Collections - https://www.doctrine-project.org/projects/doctrine-collections/en/1.6/index.htmlLazy Collections - https://laravel.com/docs/9.x/collections#lazy-collectionsHelpers & Collections, with Jacob Baker-Kretzmar - https://laravelpodcast.com/episodes/helpers-collections-with-jacob-baker-kretzmarSushi - https://github.com/calebporzio/sushiEloquent - https://laravel.com/docs/9.x/eloquentPSR-7: HTTP message interfaces - https://www.php-fig.org/psr/psr-7/WhatWG - https://whatwg.org/parse_url - https://www.php.net/manual/en/function.parse-url.phpCarbon GitHub - https://github.com/briannesbitt/CarbonChronos GitHub - https://github.com/cakephp/chronosJeremy Kendall - https://github.com/jeremykendallPHP Domain Parser - https://github.com/jeremykendall/php-domain-parserCaneco - https://twitter.com/caneco

How To Code Well
167 - Reacts killer feature

How To Code Well

Play Episode Listen Later Jul 28, 2022 19:22


Changelog Lots of bitty bugs which have prevented me for progressing on the Kubernetes side of the howtocodewell.net staging deployments Lots of PHP packages on howtocodewell.net have been upgraded I was able to play around with the API platform. News/Articles API platform tutorial with Symfony https://digitalfortress.tech/tutorial/rest-api-with-symfony-and-api-platform/ How to store Symfony sessions in a database https://symfony.com/doc/current/session/database.html What's new with Composer 2.4 https://php.watch/articles/composer-24 Question from Alex regrading the How To Code Well Discord bot https://github.com/howToCodeWell/discord-bot New to the web platform in June by Rachel Andrew https://web.dev/web-platform-06-2022/ Reacts killer feature Components can be shared between React and React Native. Reduces the code size Reduces specialised skill sets Helps create boundaries for mobile and web applications Unifies the code base Reduces pressure on the HR for finding other skill sets Makes T shaped teams that can switch contexts

TheDamFr Hebdo
#38 - Disco, pattes d'eph et parité - Marie et Marianne d'Eleven Labs

TheDamFr Hebdo

Play Episode Listen Later Jul 8, 2022 52:32


J'ai rencontré Marie et Marianne au Web2Day, tout comme Elisabeth que l'on vous a présentée la semaine dernière. Elles travaillent chez Eleven Labs, et elles sont heureuses d'être développeuses, sur Symfony et PHP. Au Web2Day, Marie et Marianne sont venues animer une conférence intitulée : 1980's : Disco, pattes d'eph et parité,  Au delà de l'abstract, c'est un sujet incroyable ! On va parler du rapport des femmes à l'IT, de son évolution et je suis content d'aborder ce sujet. On va aussi parler de Green IT, de passion et les conseils de Marie et Marianne sont précieux. Je vous laisse écouter pour en savoir plus !

How To Code Well
163 - Why 10x developers are not paid any more

How To Code Well

Play Episode Listen Later Jun 30, 2022 31:05


Change log I'm currently running experiments with Kubernetes CornJobs I've done lots of under the hood security tweaks with howtocodewell.net I've started using Jira to manage spikes and delivery tickets for the deployment stage of howtocodewell.net I've added tickets for some upgrade work, Symfony 6, NPM 16 LTS, PHP 8.1 On Tuesday we progressed the PHP registertion course by adding the framework-less router. Next week we will add some PSR interfaces for the HTTP messages to the PHP registration course Why 10x developers are not paid any more Programming productivity cannot be measured like the productivity of a sales person. A sales person can make 10 more sales than their colleges and therefore make 10 times the amount of money. An electrician could work faster and better than another contractor. This would allow them to complete more jobs and charge more than there competitors. Better programmers write less code. Some talented programmers get board and leave their posts. Talented programmers are difficult to keep. Experience is more important than the lines of code your write. Programmers don't get rates best on how productive they are. EG Bug (A) has the same monetary value as bug (B) The best way to get a raise is to start a new position. Contact me and let me know your thoughts or get something read out on air. My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Sundays 15:00 - Live coding on Twitch

SCRIPTease
051 | Shopsys – Petr Kadlec, CTO

SCRIPTease

Play Episode Listen Later May 3, 2022 51:33


Když šestnáctiletý student Petr Svoboda v roce 2003 naprogramoval první verzi e-shop balíčku Shopsys, určitě netušil, že o necelých dvacet let později bude v Česku fungovat přes 50 000 e-shopů a jeho firma bude dodávat chytrá e-commerce řešení přes osmi stovkám z nich. Přesně to se ale stalo a náš host CTO Shopsysu Petr Kadlec, který je ve firmě už od roku 2009, byl u toho.  Shopsys dnes pohání třeba e-shop s legendárními 3D tiskárnami značky Průša, dům s nábytkem SCONTO, prodejce zahradního vybavení Mountfield nebo řetězec kuchyňských potřeb Tescoma. Petr Svoboda je i nadále CEO a veškeré vydělané peníze investuje do cloudu, omnichannel řešení nebo open-code platformy, díky které si svůj vlastní shop na Shopsysu můžete postavit i vy.

Continuous Delivery
Drupal comunque è un bell'ambientino

Continuous Delivery

Play Episode Listen Later Apr 20, 2022 88:48


“Come for the software, stay for the community” recitava il vecchio slogan di quella che a un certo punto fu la più grande community open-source al mondo, o almeno così si diceva. Drupal è uno dei CMS più longevi, ha attraversato le ere geologiche del web, ha osservato l'evoluzione di php, l'avvento del Web2.0, il bisogno di headless, Symfony, il Cloud Native. Parliamo un po' di questo importantissimo content management system, o framework, o come vi pare: è semplicemente Drupal.Con: Edoardo Dusi, Claudio Serena, Valeria Salis, Luca Lusso, Marco Primitivo e Paolo Mainardi/* News */Problemi ai pagamenti POS in Italia il 15 aprilehttps://tech.everyeye.it/notizie/problemi-pagamenti-bancomat-pos-italia-oggi-15-aprile-cosa-succede-581933.htmlAtlassian finally explains the cause of ongoing cloud outagehttps://www.bleepingcomputer.com/news/technology/atlassian-finally-explains-the-cause-of-ongoing-cloud-outage//* Drupal */https://www.drupal.org/abouthttps://drupalcamp.be/en/drupal-dev-days-2022/session/do-you-know-what-your-drupal-doing-observe-ithttps://www.gitbar.it/episodes/109-drupal-sparkfabrik /* Newsletter & Telegram */https://landing.sparkfabrik.com/continuous-delivery-newsletterhttps://t.me/continuous_delivery

PHPUgly
275: Rubber Necking PHP

PHPUgly

Play Episode Listen Later Feb 25, 2022 47:54


Links from the show: PHP: rfc:conditional_break_continue_return Symfony 6.1 will require PHP 8.1 (Symfony Blog) This episode of PHPUgly was sponsored by:hookrelay (https://phpa.me/hookrelay) from our friends at Honeybadger.ioPHPUgly streams the recording of this podcast live. Typically every Thursday night around 9 PM PT. Come and join us, and subscribe to our Youtube Channel, Twitch, or Periscope. Also, be sure to check out our Patreon Page.Twitter Account https://twitter.com/phpuglyHost:Eric Van JohnsonJohn CongdonTom RideoutStreams:Youtube ChannelTwitchPeriscopePowered by RestreamPatreon PagePHPUgly Anthem by Harry Mack / Harry Mack Youtube ChannelThanks to all of our Patreon Sponsors:Honeybadger ** This weeks Sponsor **ButteryCrumpetShawnDavid QKen FTony LFrank WJeff KShelby CS FergusonBoštjan OMatt LDmitri GKnut E BMarcusMikePageDevRodrigo CBillyDarryl HMike WHolly SPeter ABen RLuciano NElgimboWayneKevin YAlex BClayton SKenrick BR. C. S.ahinkleEnno RSeviMaciej PJeroen FRonny M NCharltonF'n SteveRobertThorstenEmilyJoe FAndrew WulrickJohn CJames HEric MLaravel MagazineEd GJackson W

How To Code Well
147 - How to fix a bug

How To Code Well

Play Episode Listen Later Feb 24, 2022 48:21


Change log - Yesterday I gave a talk about PHPStan and code confidence to PHP South West - I'm going to give the talk again: The Symfony user group in Portugal on the 22nd of Feb North West Drupal User group on the 8th of March - On Tuesday we fixed a unit test which turned out to be a larger issue than I expected and uncovered a big code smell which I need to fix in the coming evenings. - I did a YouTube, Twitter and Discord poll about stopping the music whilst live coding. I will leave the poll going until the end of the week but so far it looks like you lot prefer silence when I code. The stages of bug fixing Investigation and discovery Testing and verification Fixing Testing and verification Deployment Watch the show on YouTube Contact me and let me know your thoughts or get something read out on air. My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Thursdays 20:00 = Live Podcast YouTube Sundays 14:30 - Live coding on Twitch

How To Code Well
148 - The Best Bug Tracking Tools

How To Code Well

Play Episode Listen Later Feb 24, 2022 54:07


Change log EP 147 is now available. In that episode I talked about the process of fixing a bug PHP UK Keynote: Never stop learning, or how cursory and cross pollination drives innovation by Pauline Vos Talk on OpenAPI from Rob Allen - Lots of useful resources and a guide to the Yaml configuration Talk on improving your documentation by Alexandra White Embrace the pitfalls (Our stop start journey to Change) by Stacy Cashmore Closing keynote: Passwords are so 1990 by Sam Bellen Keynote: Open source is good for business by Lorna Jane Mitchell Talk on PHP fibers by Milko Kosturkov - Async PHP code Talk on the blockchain and crypto (Hop on the PHP Block chain rocket to the MOON!) By Drishti Jain Talk on Practical advanced static analysis by Date Liddament From Betamax to VCR: Harden your API integration testing by James Second Closing keynote: Leading in Tech by Michael Cullum We have a new puppy called Goose 8 Weeks old English Springer Spaniel Super cute I gave a talk to PHP South West (in person) and to the Symfony user group in Portugal (Remote) Code with confidence using PHPStan I want to give a shout out to JoelTheDeveloper who I meet at PHPUK, he has a his own YouTube channel which talks about development and the mindset of devs. He's done a great video regarding handling your ego as a developer. Please checkout his channel Bug tracking tools It doesn't mater what tool you use as long as you have eyes on the issues Friction hurts progress. Tools should be easy to use Easy to integrate with the current toolset Easy to integrate outside of the current ecosystem Low learning curve Will it be self hosted Can you import your current bugs/tasks Can you export bugs/issues What are the security implications Can all devs on your team use it on their platforms Does it need to be mobile friendly How can it integrate well with other tools Does it have an API Watch the show on YouTube Contact me and let me know your thoughts or get something read out on air.

How To Code Well
145 - 5 Things you should not do in Software Development

How To Code Well

Play Episode Listen Later Jan 27, 2022 45:36


Change log - New personal site peterfisher.me.uk - New job - Speaking at Symfony user group in Portugal - Code with Confidence with PHPStan - Won't be streaming on Twitch this weekend as I'm traveling 5 Things you should not do in Software Development 1. Don't rush Re-read the problem more than once. If it doesn't make sense to you then re-write the problem in your own words and get it checked Ask questions if you don't understand The first solution might not be the best Break down the problem into smaller problems but try not over abstract 2. Don't panic Bugs can be solved A computer only does what it is told to do Others have come before you and others will replace you If you can't think of the solution then walk away but always come back Software development is huge so take your time 3. Don't worry We all make mistakes. As long as you learn from them then you are improving Keep away from the trends and focus on what you are having fun with We all learn at different speeds and different levels. At the start, don't worry about how long you take You don't need to learn everything - you can't 4. Don't over do it Learn to pump the breaks if you are reaching burnout Holidays are holidays. Hands off the code Learn how to identify burn out Keep doing other things you enjoy outside coding Socialise with other coders out side of work 5. Don't over think it Over abstracting a solution is a very big and common mistake Its just syntax, just written in a different order Learn the basics first before jumping into the deep end You can learn by listening, watching, coding, and reading Keep a log of what you've learnt and look back at your progression Watch the show on YouTube Contact me and let me know your thoughts or get something read out on air. My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Thursdays 20:00 = Live Podcast YouTube Sundays 14:30 - Live coding on Twitch

PHPUgly
266:PHP For Kids

PHPUgly

Play Episode Listen Later Dec 17, 2021 56:09


Links from the show:async & await at the edge with ReactPHP — Cees-Jan Kiewiet's blogIntroducing Docker support (Symfony Blog)Grinch Game!Second Log4j vulnerability discovered, patch already released | ZDNetTrino | Distributed SQL query engine for big data Chrome Users Beware: Manifest V3 is Deceitful and Threatening | Electronic Frontier FoundationUS government to offer up to $5,000 'bounty' to hackers to identify cyber vulnerabilities - CNNPoliticsVisual Studio Code November 2021This episode of PHPUgly was sponsored by:Honeybadger.io - https://www.honeybadger.io/PHPUgly streams the recording of this podcast live. Typically every Thursday night around 9 PM PT. Come and join us, and subscribe to our Youtube Channel, Twitch, or Periscope. Also, be sure to check out our Patreon Page.Twitter Account https://twitter.com/phpuglyHost:Eric Van JohnsonJohn CongdonTom RideoutStreams:Youtube ChannelTwitchPeriscopePowered by RestreamPatreon PagePHPUgly Anthem by Harry Mack / Harry Mack Youtube ChannelThanks to all of our Patreon Sponsors:Honeybadger ** This weeks Sponsor **ButteryCrumpetShawnDavid QKen FTony LFrank WJeff KShelby CS FergusonBoštjan OMatt LDmitri GKnut E BMarcusMikePageDevRodrigo CBillyDarryl HBlaž OMike WHolly SPeter ABen RLuciano NElgimboWayneKevin YAlex BClayton SKenrick BR. C. S.ahinkleEnno RSeviMaciej PJeroen FRonny M NCharltonF'n SteveRobertThorstenEmilyJoe FAndrew WulrickJohn CJames HEric MLaravel Magazine

How To Code Well
138 - The Coder Mindset

How To Code Well

Play Episode Listen Later Dec 3, 2021 25:26


Changlog I've been plugging in Symfony events into the HTCW site when a user registers. Due to being super busy I didn't get to stream on Tuesday but I have done all the documentation for 6 of the 10 lessons in the course I should be live on Twitch on Sunday If I was to sum up the coder mindset in a single sentence: If you were to boil down the essence of a programmer it would be to have a practical mind, attention to detail, the ability to think logically, to zone in and out of different scopes and the will to compete complex tasks without giving up. Let's break that down Thinking practically Practical thinking is important because it helps you solve real world problems. Set clear goals and priotizing work. You can also use life experiences to help solve problems. Attention to detail This means you take pride in your work, you care about the small stuff as much as the big stuff. In programming bad things can happen from the smallest mistake. The ability to think logically Logical thinking is a skill that involves using reasoning in a way that allows an individual to come to a viable solution This helps you re trace steps, think through puzzles and compartmentalise elements of a programs flow. Logical thinking requires several reasoning skills and the ability to look at a situation objectively and work towards a solution based on the facts at hand. Age shouldn't be a factor when learning to code. In fact the older you are the more life experiences you will be able to bring to the web development table. There are lots of skills that are transferable which are very much required in professional web development. You may of gained some of this experiences in other jobs. Some of these skills may give you a distinct advantage over other web developers. Programming is one of these things that no matter how old you are, if you get good at it, nothing can stop you.

How To Code Well
121 - New home, new code

How To Code Well

Play Episode Listen Later Oct 29, 2021 32:15


House keeping 1) We have a new website for the podcast with a shiny new contact form. 2) The assets are now back on the main site. Unfortunately due to a timing and backend error the images were unavailable for a short while. This has now been resolved. 3) I'm planning a new PHP course live on YouTube. I will be doing this every Tuesday at around 6 PM BST. The course is beginner friendly and free. It will cover PHP session management and the learner will be building a login form with a secured user dashboard. The course will use vanilla PHP and CSS. So no frameworks. 4) This weekend I will be streaming on Saturday on Twitch instead of Sunday. We re going to fix some bugs on the podcast website and work on some other related HTCW things. 5) I've been making more coder based YouTube shorts. I've recently published two short form PHP tutorials which are doing really well. The first teaches the spaceship operator and the second teaches the null coalescing operator. I have more to come including PHP 8 tutorials so keep an eye out for those. News 1) Gentle reminder to update to PHP 8. PHP 7 was released in 2015 and loses Active support for PHP 7.4 will end on November 28, 2021. Extended support for PHP 7 will end on November 28, 2022. After November 28, 2022, Microsoft will no longer support PHP. 2) Bash autocompletion is coming to Symfony console. This adds support for autocompletion when using commands, option names and also allows dynamically contextually complete values for arguments and options. It means you can add custom completion support to your own commands, and OSS projects. 3) The Missouri governor has released a fund-raising video stating that “Digging around the HTML” is a crime in Missouri. This is after social security numbers of teachers were found in the HTML code. (Code that would be in clear text in HTML or at the least base 64 encoded). Apparently Journalists were able to hack the HTML source code. You can't make this up. This is the problem with having someone in power who is surrounded by yes people. 4) Microsoft is losing confidence with some .NET developers after removing Hot Reloading feature from .Net Kick start your tech career with Amarachi Amaechi's new book Getting Started in Tech: A guide to building a tech career My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter

How To Code Well
120 - Unleash the Apple M1 beast

How To Code Well

Play Episode Listen Later Oct 22, 2021 45:43


Symfony has updated their documentation design and it looks pretty slick. Great index page. I think there are some spacing and UX issues but on the whole it's a welcomed improvement but I do wish it had a search feature. Package typo squatting. A package that has a miss spelled name is being used to trick 300 million websites harmful PHP code I have finally have upgraded my MacBook Pro, I got the MacBook Pro M1 Max - 16 inch 10 Core CPU - 32 Core GPU 64 GB unified memory 4 TB storage It would seem that they have got two halves of their pro lineup. The first one is what they call Power to go. And the other is termed as Super charged for pros. Some good things Battery didn't shrink so you can still use them on plans They add back the ports They made trade offs with weight and sizes. They added a 1080p web camera but that comes with a notch The pros still come with fans - 140W charger Mag safe and USB C charging Max allows for 7 streams of 8k video Max has 400GB memory bandwidth Allows for 4 monitors to be connected. Magic keyboard with Touch ID No more Touch ID You can get the 14 inch pro machines with M1 Max but I'm not sure what the thermals will be like. Possible concerns. This is my first M1 MacBook and I'm not 100% of what ARM support all the Docker images I use have. I'm not sure how the battery will handle USBC charging and Magsafe. I connect my monitors via USB-C I've never used rosetta 2. I'm not sure yet what other tools that I use require it. How does the new SSD's support the Docker file system? Will the delivery get pushed out due to shortages? Kick start your tech career with Amarachi Amaechi's new book Getting Started in Tech: A guide to building a tech career My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Thursdays 20:00 = Live Podcast YouTube Sundays 14:30 - Live coding on Twitch

How To Code Well
EP117 - Get ready for Symfony 6 - How To Code Well Podcast

How To Code Well

Play Episode Listen Later Oct 8, 2021 25:46


Today I am going to talk about Symfony 6 and discuss why PHP developers should be aware of it. What about Symfony 5.4 LTS? It will be released in November 2021 End of bug fixes November 2024 End of security fixes 2025 So you still have over 3 years before Symfony 5 will be end of life When will Symfony 6 be released Release November 2021 End of support: July 2022 When will the LTS 6.4 version be ready and for how long Release: November 2023 End of bug fixes: November 2026 End of security fixes: November 2027 Kick start your tech career with Amarachi Amaechi's new book Getting Started in Tech: A guide to building a tech career My web development courses ➡️ Learn How to build a JavaScript Tip Calculator ➡️ Learn JavaScript arrays ➡️ Learn PHP arrays ➡️ Learn Python ✉️ Get my weekly newsletter ⏰ My current live coding schedule (Times are BST) Thursdays 20:00 = Live Podcast YouTube Sundays 14:30 - Live coding on Twitch

AXOPEN
Symfony, le meilleur framework PHP ?

AXOPEN

Play Episode Listen Later Aug 17, 2021 31:06


Bienvenue dans le 38ème épisode du podcast AXOPEN :) Dans cet épisode, on échange autour d'un langage très controversé au sein du monde du développement, et chez AXOPEN : le PHP ! Au menu : débats sur l'utilisation du PHP et focus sur le framework Symfony (fonctionnement, avantages et inconvénients). La team du jour : Philippe, Arthur, Coco et Jonathan ! 0:00 Introduction 2:29 PHP, c'est quoi ? Point historique et évolution du langage 5:40 Les grandes particularités de PHP 6:40 Les grands frameworks PHP 8:00 Présentation générale du framework Symfony 9:50 Symfony : histoire et évolution de versions 13:00 Spécificités de Symfony, comment ça fonctionne ? 14:00 Prise en main de Symfony 15:00 Symfony par rapport aux autres frameworks PHP… quid des performances ? 16:46 Les limites de Symfony 18:20 La maintenance avec Symfony 20:15 Symfony, pour quel projet ? 22:45 Conseils pour un nouveau développeur en Symfony 23:40 L'avenir de Symfony et du PHP ? 28:00 Coup de cœur : n8n (https://n8n.io/) ____ Basée à Lyon depuis 2007, AXOPEN est une entreprise spécialisée dans l'expertise et le développement de projets informatiques sur mesure, constituée de plus de 30 passionné(e)s, experts en nouvelles technologies et en développement. Ce podcast est l'occasion pour notre équipe de technophiles d'échanger sans langue de bois sur les sujets IT qui nous tiennent à coeur, et de vous partager nos expériences ! En espérant que ça vous plaira, vous pouvez nous contacter pour poursuivre les échanges sur notre site AXOPEN : www.axopen.com/contact/ :) ____ Crédits : Maxime Ledan (technicien son)

Deploy Friday: hot topics for cloud technologists and developers
#36: Open source authoring: creating a new CMS guidebook

Deploy Friday: hot topics for cloud technologists and developers

Play Episode Play 28 sec Highlight Listen Later Aug 10, 2021 57:13


Writing a TYPO3 Guidebook as a Collective EffortWith upwards of 600 features, writing about a fully featured, open source CMS like TYPO3 can be a challenge. In this episode, Felicity Brand, Heather McNamee, and Jeffrey A. McGuire talk about how they co-authored a TYPO3 guidebook in concert with the TYPO3 community.The need for this guidebook As Jeffrey A. McGuire tells it, TYPO3 wanted a book for a diverse audience, ranging from developers, newbies, project analysts, students, educators, integrators, and digital agencies. He explains that while getting the commission to write the book, “They told us there hasn't been a book for beginners for a while, and we've got this idea that our system is ready to get back out into the world.”Every huge task is made up of smaller stepsA book is an enormous project, and it can be hard to know where to start. But as Felicity Brand says, “Writing a book is just like any other writing task. We put a lot of effort into planning at the start. You create a guide, a framework, and then you start putting these building blocks in place.” Heather McNamee says at Open Strategy Partners, they try to approach every task, even big ones like this guidebook, “the same way you eat an elephant, one bite at a time.”The strength of the TYPO3 community contributed to their successAll three guests today acknowledge how much the strength of the TYPO3 community helped them in the creation of this guidebook. Large, well-established, active, and diverse. Heather says, “We really couldn't have done it without the subject-matter-experts, the incredible documentation team, and the people who blog about TYPO3.”Welcoming to newcomers. As Heather puts it, “The TYPO3 community is ready to scale,” and they actively reach out to help onboard beginners and stakeholders.Leadership is accessible and approachable. Despite being new to the TYPO3 community, Felicity was able to speak with leadership directly to research this guidebook. The community gives back. The TYPO3 community actively supports and contributes to other important projects that many of us rely on like PHP Unit, Symfony, and Composer. What's next for TYPO3 in 2021TYPO3 CMS has more big plans to start 2021 off right. Says Felicity, “For version 11 the big push is accessibility, usability, and improved developer experience with making sure upgrades are really smooth and easy.”Deploy TYPO3 on Platform.sh today or buy the TYPO3 Guidebook on Amazon today.Platform.shLearn more about usGet started with a free trialHave a question? Get in touch!Platform.sh on social mediaTwitter: @platformshTwitter (France): @platformsh_frLinkedIn: Platform.shLinkedIn (France): Platform.shFacebook: Platform.shWatch, listen, and subscribe to the Platform.sh Deploy Friday podcastYouTubeApple PodcastsBuzzsproutPlatform.sh is a robust, reliable hosting platform that gives development teams the tools to build and scale applications efficiently.

República Web
Estado de Drupal con Borja Vicente de escueladrupal.com

República Web

Play Episode Listen Later Jun 19, 2021 84:02


Vuelve Drupal al podcast y para esta ocasión contamos con la compañía del desarrollador web especializado en Drupal Borja Vicente, creador de la web y el canal escueladrupal.com Invitamos a Borja para que nos cuente muchas cosas sobre su proyecto y el estado actual de Drupal. Borja desarrolla en backend con Drupal desde hace más de 10 años y actualmente su labor profesional se desarrolla con Drupal, aunque suele también experimentar con Symfony, Laravel, Django y también Ruby on Rails. Además Borja también tiene publicado cursos especializados en Drupal a través de la plataforma Udemy. Con Borja tratamos muchas cuestiones relacionados con Drupal y su proyecto de contenidos: Evolución de Drupal hasta su última versión Comunidad Drupal a nivel internacional y nacionalProyectos o casos de uso ideales para desarrollar con Drupal 9?Recomendaciones esenciales para gestionar una instalación de DrupalMotivaciones para crear Escuela Drupal y lo que gustaría conseguir.Entorno de desarrollo usado para Drupal.Módulos que más te ayudan al desarrollo web con Drupal. Muy agradecidos a Manu por propiciar en Twitter este episodio sobre Drupal con Borja.

República Web
Estado de Drupal con Borja Vicente de escueladrupal.com #RW182

República Web

Play Episode Listen Later Jun 19, 2021 84:49


Vuelve Drupal al podcast y para esta ocasión contamos con la compañía del desarrollador web especializado en Drupal Borja Vicente, creador de la web y el canal escueladrupal.com Invitamos a Borja para que nos cuente muchas cosas sobre su proyecto y el estado actual de Drupal. Borja desarrolla en backend con Drupal desde hace más de 10 años y actualmente su labor profesional se desarrolla con Drupal, aunque suele también experimentar con Symfony, Laravel, Django y también Ruby on Rails. Además Borja también tiene publicado cursos especializados en Drupal a través de la plataforma Udemy. Con Borja tratamos muchas cuestiones relacionados con Drupal y su proyecto de contenidos: - Evolución de Drupal hasta su última versión - Comunidad Drupal a nivel internacional y nacional - Proyectos o casos de uso ideales para desarrollar con Drupal 9 - Recomendaciones esenciales para gestionar una instalación de Drupal - Motivaciones para crear Escuela Drupal y lo que gustaría conseguir. - Entorno de desarrollo usado para Drupal. Módulos que más te ayudan al desarrollo web con Drupal. Muy agradecidos a Manu por propiciar en Twitter este episodio sobre Drupal con Borja. Enlaces en https://republicaweb.es/podcast/estado-de-drupal-con-borja-vicente-de-escueladrupal-com/

Tag1 Team Talks | The Tag1 Consulting Podcast
An overview of Laravel- from the evolution of monolithic applications to the revolution of fully decoupled systems - Part 1

Tag1 Team Talks | The Tag1 Consulting Podcast

Play Episode Listen Later May 3, 2021 18:33


Websites, like everything else, vary based on the needs of your organization. Website development tactics range from completely monolithic, where your application is a single-tier with all of your code running on as a single program on one platform, to fully decoupled, where your front and back ends are managed by different systems. In the first part of this three-part series, Senior Software Engineer Laslo Horvath joins Managing Director Michael Meyers for an overview of https://laravel.com/ (Laravel). Laravel is a PHP framework designed to meet the needs of new web developers with monolithic applications, to experienced developers who may need a fully or progressively decoupled website to meet all of their clients’ needs.  They also discuss some of the similarities and differences between Laravel and Symfony (the framework Drupal is built on), the community around Laravel, and how their ecosystem works. 

The Laravel Podcast
Packages, with Freek Van der Herten & Marcel Pociot

The Laravel Podcast

Play Episode Listen Later Apr 13, 2021 97:50


Freek Van der Herten, Twitter - https://twitter.com/freekmurzeFreek's blog - https://freek.dev/Spatie - https://spatie.be/Marcel Pociot, Twitter - https://twitter.com/marcelpociotBeyond Code - https://beyondco.de/Marcel's website - https://pociot.dev/Laravel Docs: Packages - https://laravel.com/docs/8.x/packagesSpatie: Ray - https://spatie.be/products/rayLaravel: IDE Helper - https://github.com/barryvdh/laravel-ide-helperLaravel: Debug Bar - https://github.com/barryvdh/laravel-debugbarBarry Van der Heuvel, GitHub - https://github.com/barryvdhFruitcake - https://fruitcake.nl/Valet - https://laravel.com/docs/8.x/valetExpose - https://github.com/beyondcode/exposeLaravel: Illuminate - https://github.com/illuminateTorch - https://github.com/mattstauffer/TorchProxy Package - https://packagist.org/packages/fideloper/proxyGuzzle - https://packagist.org/packages/guzzlehttp/guzzleTinker - https://packagist.org/packages/laravel/tinkerTinkerwell - https://tinkerwell.app/Faker - https://github.com/fzaninotto/FakerIgnition - https://github.com/facade/ignitionLaravel Docs: Sail - https://laravel.com/docs/8.x/sailLaravel Docs: Mocking - https://laravel.com/docs/8.x/mockingCollision - https://github.com/nunomaduro/collisionPHP Unit - https://phpunit.de/Symfony - https://symfony.com/Laravel Zero - https://laravel-zero.com/Blade X - https://spatie.be/docs/laravel-blade-x/v2/introductionThe Laravel Podcast, Intro to Composer - https://laravelpodcast.com/episodes/intro-to-composer-with-jordi-boggianoJohn Brown, Laravel Package - https://laravelpackage.com/PHP Package Development - https://phppackagedevelopment.com/Laravel Package Training - https://laravelpackage.training/Laravel New: Package Development, Deprecated Helpers, and Caching Changes - https://podcast.laravel-news.com/78Freek Van der Herten, Creating Laravel-Signal-Aware-Command - https://www.youtube.com/watch?v=D9hxQoD47jISkeleton Package - https://github.com/spatie/package-skeleton-laravelLaravel Package Tools - https://github.com/spatie/laravel-package-toolsLarabelles: Building a Laravel Package #1 - https://www.youtube.com/watch?v=YY1QOG8mwE4Larabelles: Building a Laravel Package #2 - https://www.youtube.com/watch?v=DB5ZmZmrYxMOh Dear App - https://ohdear.app/ Episode SponsorshipTranscription sponsored by LarajobsEditing sponsored by Tighten

SaaS Product Chat
E123: Mariano Rentería, director de ingeniería de MedTrainer

SaaS Product Chat

Play Episode Listen Later Apr 12, 2021 27:59


Un buen director de ingeniería hace que su equipo de desarrollo sea más productivo. Mariano Rentería es el director de ingeniería de MedTrainer, un producto que intenta hacer el proceso de healthcare compliance más fácil. Nos descubre primero con qué tecnologías está montado el producto de MedTrainer y cómo ha sido su experiencia creciendo un equipo técnico. En el segundo bloque, hablamos sobre los beneficios que trae usar frameworks, cómo es trabajar en un monolito, la distribución de los equipos técnicos, reclutamiento de líderes técnicos y gestión de la deuda técnica. Por último, Mariano nos deja un podcast y un libro como recomendaciones.Perfiles sociales de Mariano:LinkedIn: https://www.linkedin.com/in/marianorenteria/Twitter: https://twitter.com/marianorenteriaChile, Mole & Tech - Dah Podcast: https://linktr.ee/chilemoleytechEstos son los enlaces a los temas de los que hemos hablado:MedTrainer: https://medtrainer.com/Symfony: https://symfony.esLaravel: https://laravel.comSpring Boot: https://spring.io/projects/spring-bootSGVirtual - Por qué amamos nuestro monolito: https://sg.com.mx/buzz/ponencias/sg-virtual-conference-diciembre-2020/por-que-amamos-nuestro-monolitoGuía de bolsillo para el Líder Técnico: https://gumroad.com/marianorenteria#SMMHCShape Up: https://basecamp.com/shapeupMasters of Scale: https://mastersofscale.comThe Phoenix Project: https://www.amazon.es/Phoenix-Project-Gene-Kim/dp/0988262509Puedes encontrarnos en twitter como:Danny Prol: https://twitter.com/DannyProl/Claudio Cossio: https://twitter.com/ccossioEstamos en todas estas plataformas:Apple Podcasts: https://podcasts.apple.com/ca/podcast/saas-product-chat/id1435000409ListenNotes: https://www.listennotes.com/podcasts/saas-product-chat-daniel-prol-y-claudio-CABZRIjGVdP/Spotify: https://open.spotify.com/show/36KIhM0DM7nwRLuZ1fVQy3Google Podcasts: https://podcasts.google.com/?feed=aHR0cHM6Ly9mZWVkcy5zaW1wbGVjYXN0LmNvbS8zN3N0Mzg2dg%3D%3D&hl=esBreaker: https://www.breaker.audio/saas-product-chatWeb: https://saasproductchat.com/

PHP Internals News
PHP Internals News: Episode 79: New in Initialisers

PHP Internals News

Play Episode Listen Later Mar 25, 2021


PHP Internals News: Episode 79: New in Initialisers London, UK Thursday, March 25th 2021, 09:07 GMT In this episode of "PHP Internals News" I chat with Nikita Popov (Twitter, GitHub, Website) about the "New in Initialisers" RFC. The RSS feed for this podcast is https://derickrethans.nl/feed-phpinternalsnews.xml, you can download this episode's MP3 file, and it's available on Spotify and iTunes. There is a dedicated website: https://phpinternals.news Transcript Derick Rethans 0:14 Hi, I'm Derick. Welcome to PHP internals news, a podcast dedicated to explain the latest developments in the PHP language. As you might have noticed, the podcasts are currently not coming out once every week, as there are not enough RFCs being submitted for weekly episodes. I suspect that this will change soon again. This is episode 79. In this episode, I speak with Nikita Popov, about a few more language additions that he's proposing. Nikita, how are you doing today? Nikita Popov 0:43 I'm doing well, Derick, how are you doing? Derick Rethans 0:45 I'm pretty good as though, I always much happier when it's sunny outside. Nikita Popov 0:48 Yeah, for us to weather also turned today. Yesterday it was still cold. Derick Rethans 0:53 We're here to talk about a few RFCs. The first one, titled "New in Initializers". What is this RFC about? Nikita Popov 1:00 The context is that PHP has basically two types of expressions: ones, the ones used on normal code, and the other one in a couple of special places. These special places include parameter default values, property default values, constants, static variable defaults, and finally attribute arguments. These don't accept arbitrary expressions but only a certain subset. So we call those usually constant expressions, even though they are not maybe constant in the most technical sense. The differences really that these are evaluated separately so they don't run on the normal PHP virtual machine. There is a separate evaluator that basically evaluates an abstract syntax tree directly. They are just like, have different technical underpinnings. Derick Rethans 1:49 Because it is possible to for example, define a default value to seven plus 12? Nikita Popov 1:54 Exactly. It's possible to define it to seven plus 12, but maybe not to seven plus variable A, or seven plus some function call or something like that. Derick Rethans 2:03 I guess the RFC is about changing this so that you can do things like this. What are you proposing to add? Nikita Popov 2:09 Yes, exactly. So my addition is a very small one, actually. I'm only allowing a single new thing and that's using new, so you can use new, whatever, as a parameter default, property default, and so on. Derick Rethans 2:23 In this new call, pretty much a constructor call for a class of course, can arguments to be dynamic, or do they need to be constant as well? Nikita Popov 2:33 Rules are always recursive, so you can like pass arguments to your constructor, but they also have to follow the usual rules. So again, they also have to be constant expressions, or after this RFC, they can also include new, but they cannot include variable references and so on. Derick Rethans 2:50 Is this something that is being defined at the grammar level or somewhere else? Nikita Popov 2:55 We actually used to define that at the grammar level back in PHP five, but nowadays we just accept all expressions, and then we print you a bit nicer error message if it turns out it's not supported in this context. Derick Rethans 3:08 And that happens when the AST is created. Nikita Popov 3:10 Yeah, exactly. Derick Rethans 3:11 The new syntax additions is to allow new in default values in places. The RFC talks a little bit about the evaluation order, and what is this and why is is important. Nikita Popov 3:23 This is really the critical part. Right now, the kinds of things you can use in constant expressions are well as the name says, these can supposed to be constant, and not dynamic. This is not entirely true because, for example, you can like reference a class constant and referencing a class means that you call an autoloader. And that can run arbitrary code. Or you can trigger a notice that triggers an error handler and that also runs arbitrary code, like more like at the design level at the conceptual level, these really are constant expressions that are not supposed to have any side effects. Allowing new changes that in the big way, because new calls constructors and constructors can do whatever they want. I think it would be unusual to print out a string in the constructor, but some people might want to create a database connection there. The question of where exactly these expressions get evaluated becomes more important now, so we have to think about that a bit more carefully. Previously this was never really formally specified, how the evaluation works. There are some cases where it's pretty clear cut, for example, parameter default value of course gets evaluated when you call the function, and that parameter hasn't been passed. Similarly if you define a global constant, then the value is evaluated when you define the constant. And then there are the problematic cases, that I'm actually still not sure what to do about. The problematic cases are class constants, and static properties. Because the way these work right now is that they are evaluated lazily, so when you declare the class, they are not evaluated, and then later if you use the class, at least most uses of the class, they will be evaluated. Derick Rethans 5:07 It would happened when you're done instantiate the class? Nikita Popov 5:09 For example, yes. If you instantiate the class, if you add a static property and so on. But for example, not if you extend the class. In cases that like might potentially meet the evaluated initializers. The problem here is that, um, of course, if now your expressions can have side effects, then it's not great if you don't have like hard guarantee when it's actually going to be evaluated. On the other hand, what I actually implemented already, but I'm not sure it's a good idea is to change it to evaluate the expressions equally, so when you declare the class, we immediately evaluate all the static properties and constants. Derick Rethans 5:47 I think I found a problem with that as well. For example, if one of the default values is doing new DateTime for example, if you rely on that happening when you instantiate the object, you will get a different time than when you declare a class. Nikita Popov 6:01 I probably should have mentioned that explicitly. So when it comes to properties we'll always evaluate when you create the object. If you do a new DateTime then you will always get a new DateTime for each object, otherwise it wouldn't really make sense. The problem with the, with evaluation order for the static properties is, that if we evaluate immediately when they declare the class, then we can run into issues with dependencies. If you're using auto loading it's usually not a problem, but if you like declare classes manually, then you might have one class on using a constant from a class that you declare later on. Right now, that works fine, because the initializers are evaluated lazily, but if we evaluate them immediately then this is going to throw a fatal error because it says okay the class hasn't been declared yet. That's a backwards compatibility break, and there are also some other issues, for example with preloading, where it's not really clear when exactly we should be evaluating things in that context. So this is a point I'm undecided on, when things should evaluate. If we should stick with the current lazy evaluation or make it easier or possibly just limit the RFC, to not allow new inside static properties and class constants, because, at least for me personally, those are not the main use case. The three things that seem most important to me are parameter default, property default, I mean non static property default, and usage in attribute arguments. Derick Rethans 7:29 When I was reading the RFC, I was realizing that if a constructor throws an exception, for example if it's a default argument to a method, then what would happen? Would the method fail, or, or would the method call fail or something else? Nikita Popov 7:45 It would behave basically the same way as if you initialize the method argument, inside the method, you could do like you would do right now like with a null check maybe. So you would just get an exception thrown inside the method, and it would fail. Derick Rethans 8:01 And is that the same if you would use it as the new new syntax as a default value to have constructor arguments as well? Nikita Popov 8:09 Yeah, I think there's a situation would be the same, the one special case is if you use it as a property default, and then the instantiation fails, then we treat this basically the same way as the constructor having failed, which is a special situation, a slightly special situation, because we will also not call the destructor in that case. So we say that the object has been incompletely constructed so it will not get destructed. Derick Rethans 8:38 And of course if this is a standard class property, then this happens on instantiation of the class. How would this work if it would be for a static property? Nikita Popov 8:50 For a static property, well that, that depends again on the whole question of evaluation order. So for example the way things work right now, like without this proposal, is for example if you have a static property and you're referencing it constant that doesn't exist. Then, when you try to use the class you get an exception that okay undefined constant whatever. If you try to use it again, you still get the same exception, so you get this exception every time you use a class. This is what would happen on this case as well. Derick Rethans 9:24 So it wouldn't happen on class declaration, but when you start using it? Nikita Popov 9:29 Depending on where we evaluate. Either only on use or the first time on declaration and then afterwards in each use. If you still try to use it despite the declaration having failed, which is an odd thing to do but you would have to counter it somehow. Derick Rethans 9:45 You know, if it is possible to do people will find a way how to do it. Nikita Popov 9:48 Yes, certainly. Derick Rethans 9:49 Can you talk a little bit about recursion protection as well because the RFC talks about that? Nikita Popov 9:54 Well that's another edge case. So if you create an, have an, for example Class A with a property that has an initializer new A. That means when you create an object of class A, and try to initialize it you have to create another object, and then another object, and another, and we have to detect that situation, or we do detect that situation and for nice exception instead of, resulting in a stack overflow. Derick Rethans 10:20 Which is beneficial. Nikita Popov 10:21 Yes, because most people do not know what to do when people went PHP throws a segmentation fault, so they do prefer exceptions, usually. Derick Rethans 10:30 I would too. The RC also talks about, there are some issues around traits which I didn't quite fully understand, would you mind explaining that to me? Nikita Popov 10:38 The issue here is that traits can have properties and or rules. A rule is that if you have two traits, used in the same class, and declaring the same property, they have to be compatible. And compatible means effectively they have to be exactly the same. So, same visibility and same default value. The trouble here is that if we are dealing with an instance property, which has a new expression as a default value, then we have to somehow check that these are the same. It would be not great if we actually had to evaluate the initializer to do that because, I mean it's okay if it's just you know, with initializer something like one plus two, but if it's an actual new expression we don't want to create objects which again might have side effects and so on. What I'm specifying is that if you have a trait property with this kind of dynamic initializer, so using the new expression, than we will always consider it not compatible. Derick Rethans 11:36 Would it currently be compatible with one of those trait properties, it says seven plus three, for example? Nikita Popov 11:42 That will be compatible, which is actually, I think relatively new thing. We used to not evaluate initializers and traits at all, and say those are incompatible and that changed at some point and seven point, I don't know which version. But in this case we would go back to saying it's incompatible, because at least I don't see a good way to make it compatible and I don't think it's particularly important to support that case. Derick Rethans 12:10 Do you have any information about how much traits are actually used? Nikita Popov 12:15 Well, I know that Laravel uses them. But I have no idea how much. Derick Rethans 12:22 One last thing I think RFC mentioned, is that it also has an effect on attributes, that it sort of gets nested attributes in by the back door. How does that work? Nikita Popov 12:33 I wouldn't call it the back door. Exactly. I have to be honest, I didn't think about attributes at all when writing this proposal, what I had in mind is mainly parameter defaults, and property defaults. But yeah, attribute arguments also use the same mechanism and are under the same limitations. So now you can use new as an attribute argument. And this can be used to effectively nest attributes, so the example I've seen from Symfony is that they have, for example, assertions. They have an assert all attribute which has the which accepts, which wants to accept a list of assertion attributes. And now you can actually do that because you can, um, create these attribute objects recursively. The example from the RFC is assert all, then new assert not null, new assert length max six. Derick Rethans 13:26 That's actually kind of neat, that is just ends up starting to work on right? Nikita Popov 13:30 Yeah, I mean, I read the thread for Symfony how they are trying to work around that. They have various ideas of how to do it and it's all pretty ugly. So I think it's nice to have a more or less proper solution for that. Derick Rethans 13:45 They'll just have to wait until PHP 8.1. Nikita Popov 13:48 Yes, that is the disadvantage. Derick Rethans 13:51 Out later this year. Derick Rethans 13:53 Are there any backwards incompatible changes? Nikita Popov 13:56 That again comes back to the evaluation order the problem. Originally I had intended to this, this to be compatible. Now if we change evaluation order then it is breaking, depending on that, the answer is yes or no, I am still not sure on that one. Derick Rethans 14:11 Because I think PHP eight one already has a breaking changes in there where the order of declaration of properties is now different. Nikita Popov 14:19 Yeah, that the change, though I hope that does not affect people too much because it's mostly about debugging functionality, which of course you are kind of interested in. Derick Rethans 14:29 Yep, it broke my tests, which is a good thing because it means that my tests cover all the edge cases as well. I think we sort of done discussing this RFC, is there anything else that might ends up being added here in the future, or what still needs to be hammered out before you can put it up to vote? Nikita Popov 14:47 Apart from the evaluation order question that I have been continuously mentioning, the future scope would be to extend this to not just new expressions, but also for example static method calls, popular alternative pattern is to not use constructors, but named constructors, which are implemented as static methods, and similarly also function calls for example so you can use something like strlen() or count inside an initializer. Derick Rethans 15:13 Isn't strlen a language construct now? Nikita Popov 15:15 No it isn't. It has an optimized implementation in the virtual machine, but it's still technically a normal function call. Derick Rethans 15:23 Because I remember that, breaking tests in Xdebug as well at some point, because it suddenly didn't suddenly was no longer a function call. Nikita Popov 15:30 Things do tend to break in Xdebug. Derick Rethans 15:34 Okay, I'm used to it. Thank you, Nikita for taking the time to talk about your new in initializers RFC. Nikita Popov 15:40 Thanks for having me. Derick Rethans 15:45 Thank you for listening to this instalment of PHP internals news, a podcast dedicated to demystifying the development of the PHP language. I maintain a Patreon account for supports of this podcast as well as the Xdebug debugging tool. You can sign up for Patreon at https://drck.me/patreon. If you have comments or suggestions, feel free to email them to derick@phpinternals.news. Thank you for listening and I'll see you next time. Show Notes RFC: New in Initialisers Credits Music: Chipper Doodle v2 — Kevin MacLeod (incompetech.com) — Creative Commons: By Attribution 3.0

The Agile Podcast
Bittersweet Symfony

The Agile Podcast

Play Episode Listen Later Aug 30, 2020 23:08


Okay, so you're moving out of Drupal 7, that's great, but where do you go? On today's episode, Brie and Blake talk about the advantages and disadvantages of staying on the Drupal track. Plus, the BIG change you should know about involving Symfony.

The Undercover ElePHPant
Introducing the Undercover ElePHPant

The Undercover ElePHPant

Play Episode Listen Later Oct 7, 2019 3:22


Welcome to the introductory episode of The Undercover ElePHPant.This is the welcome episode, where we give you the rundown on what the podcast is about, who we, your lovely podcast hosts, are and what you can expect to hear.So, let's get started.This podcast aims to do three, core, things: Uncover details and secrets of scaling PHP and how to maximise its performance. Discuss different strategies to deploy PHP applications and scripts in production. Provide helpful tips and tricks to keeping a PHP app running smoothly. Now, for a little bit about us, your hosts.Benjamin: I am Benjamin, I contributed to Doctrine and Symfony over the years and have started contributing to PHP and specifically the DOM extension. I am also deeply interested in everything related to PHP performance, scaling, and operations, which is why I founded Tideways - a software for monitoring, profiling and exception tracking PHP applications. This is also why i wanted to start this podcast with Matthew.Matthew: I'm an independent software engineer and systems administrator, with a passion for performance and security. I've been developing web-based software and administering Linux servers since around 1999.Benjamin: In season one, we'll have ten episodes, covering, ten different topics with guests who are extremely knowledgeable on each subject. We're planning to talk about garbage collection, profiling, background processes, shared-nothing architecture, timeouts, limits, and retries — and a lot more. That's a pretty broad range of topics, so we're confident there'll be something for you, no matter your skill level or what you're working on at the moment.Matthew: We're planning to launch at the end of October, but we don't have a firm launch date as yet. However, if you subscribe to the podcast at undercover-elephpant.com, and follow us on Twitter, we're @Undercover_PHP (https://undercover-elephpant.com), you'll know when the first episode's about to drop.If you're interested in all these topics, in increasing the performance of your PHP applications, then join us from the end of October, for The Undercover ElePHPant.

The Five-Minute Geek Show
100 | Overlapping Communities

The Five-Minute Geek Show

Play Episode Listen Later May 30, 2017 10:07


TRANSCRIPT: Hi, I'm your host Matt Stauffer and this is Episode 100. One, zero, zero. We've made it! I have not, I was going to say tweeted. I've not podcasted, I've hardly blogged, I thought I was back a couple months ago and then it turns out that babies don't like sleeping. Turns out, who knew? So finally back-ish, it's going to be a slow roll back--I'm not going to promise that I'm 100 percent, but I'm back enough to record Episode 100. Hurray, huzzah, there was much rejoicing. If I wasn't so lazy I'd put sound effects in here. People clapping and cheering. The Five Minute Geek Show! it's a purportedly weekly show about development and everything around it. It's purportedly five minutes long. It's really whenever the heck I can get to it and turns out it's sometimes between five and ten minutes. It's one topic per episode, that's true. About front end, back end, mobile, project management, design, entrepreneurship, whatever. If it's geeky, it fits. I'm glad to be semi back. My son is out of school, and all of a sudden my schedule is rearranged and I'm able to find pockets of time for podcasts and blogs now, so my goal is to get a podcast and a blog out this week. That's what I'm going to try and do. So this week we're going to be talking about community. Capital C community. If you are not a PHP developer this will be a little bit less relevant. If you're not a developer, it will be even less relevant, but it'll touch on some things. There is often a line that is repeated by various people within the PHP community that Laravel, the people in Laravel, the Laravel community, are elitist and that they encourage silos and that what they really needed to do (if they weren't pigeon holing themselves into just being Laravel developers) is be involved in the greater PHP community. People, hoity toity, are proud of the fact that they are just a PHP developer, and they would not be so base as to identify with a particular framework. They say, well, I hope you don't put "Laravel developer" on your whatever. "Why wouldn't you just say PHP developer?" They'll point to the wonderful efforts of people like Cal Evans, and other wonderful human beings whom I love, who do great things to encourage the PHP community to have an identity. Every single time they say these things, I respond in the same ways, and they stop responding when they realize their argument is awful and then somebody else spouts the same crap a month later. So! I'm going to say it out loud here. If you have the temptation to go ham on somebody because they consider themselves a WordPress developer, or a Symfony developer, or a Laravel developer, or whatever else developer because they should be just thinking of themselves as PHP developers... Next time you identify yourself as a PHP developer, I'm going to walk up and I'm going to say, "why are you identifying yourself as a PHP developer? Why aren't you just a web developer?" Then when you go to a web development thing, "why are you are identifying as a web developer, why aren't you just a technologist?" When you go to technologist thing I say, "why are you a technologist, why aren't you just a person?" Why aren't you just a human? Where is the line? You have made up an arbitrary line that you think is the acceptable place for someone to identify, below which is not possible. And we haven't even started talking about geographical location or anything like that. Is it acceptable for someone to identify that they're in the London PHP group? Is that unacceptable because that's a delineation? No, none of this stuff matters. All these groupings are helpful. Now remember, if you've listened to this podcast for any time you understand that a lot of the things I'm talking about come out of faith and religious background. So let me tell you about denominations. In denominations, you have the differences between people of the same faith, similar to sects and stuff like that. Where you have multiple people who ascribe to the same general thing, but are different in certain ways. There's all sorts of horrible things where people have mistreated each other, they've killed each other and all that kind of stuff, with the difference between religions. So, in general, we tend to think of unity as good and division as bad, right? So we often have this naïve concept that if we could just rid ourselves of denominations, and everyone would just be the same faith, the same religion, then all of our problems would be gone. The problem is there are perfectly acceptable, and perfectly normal and often very healthy, differences in opinion, and denominations give you space to find the other people who follow along that line in a different way, and celebrate together with them without having to separate yourselves entirely from the community that you're a part of. Or without fighting all the time. Let's say you have a particular interpretation of how something says whether its Saturday or Sunday. What's the seventh day in the bible--is it Saturday or Sunday? Well, that's going to make a pretty big difference about when your church meets and all this kind of stuff. You could fight about it all day all the time, or you could both do the same stuff on different days of the week, and just split along that line. Split has this negative connotation, but maybe you can just both do great things on different days of the week. Laravel does different things, provides different things, has different priorities and perspectives than Zend. If Zend and Laravel were to mush together into one, you would have a lot of battles because Zend has a very specific set of goals and priorities that are not the same as Laravel's. If they're allowed to co-exist separately, then it's perfectly acceptable for both of these sub groups to be a part of a larger sub group, which is a part of a larger sub group. Why PHP? Why are you in PHP and not Ruby? Well it would be very awkward to have every meet up ever be about PHP and Ruby. Let alone the differences of opinion, how are you ever going to talk about something when everything is completely different? There are healthy things about us finding natural differences in a healthy way accepting and sometimes even celebrating those differences, and also being willing to be a part of the greater community. Now, does me being in one denomination mean I'm now no longer part of the larger faith? No. Does that mean I'm incapable of participating in concepts or meetings, or whatever that relate to the larger faith? No. Similarly, does being a WordPress developer mean you now say I'm not a PHP developer? No. So chill out, take a chill pill, get off your high horse and allow yourself to be in multiples; and guess what, you could be a Laravel developer and a Symfony developer, and a PHP developer, and a Ruby developer, and a JavaScript developer, and an Ember developer, and a React developer all at the same time. It is possible! You can do it. It's like this magical thing where you can be a part of multiple communities and no community police is going to come stop you. It's fine, it doesn't matter. So just enjoy it! Allow yourself to celebrate being a part of whatever communities to get the benefits out of them. Being a part of the WordPress community means you connect with other people who are learning how to make money as a WordPress developer, and that is very different than how to make money as a Laravel developer, right? That's fine. There's nothing wrong with that. Trying to learn how to really up your skills in Symfony and Laravel often looks very similar, but not always. So having differentiation in the community allows space for us to share some resources, and not share the other resources, and that's perfectly fine. Really, this is just me going on a rant. Surprise! That's what this podcast is. Here's the fact that every community has various levels that overlap, and various levels of not overlap, and that is perfectly fine. You can be a part of many communities that are a part of many other communities that are sub groups, of sub groups, of sub groups, and there's no magical line. PHP as a community is not the magical line beneath which everything is an atrocity. Within Laravel, you may find yourself a part of the DDD community, and you may find yourself a part of the Hyper Ruby inspired minimalist Smalltalk community. Those are two communities within the Laravel community and that's okay, because you don't have to do one or the other. It's fine, I'm not actually adding anything new to this conversation at this point, I'm just throwing out random things and saying its fine. Just chill out. Allow people to enjoy being a part of the communities they are. If you want to have a positive impact I think the thing that I hear from these people the most is, well, why don't you participate more in the larger PHP community? They don't say those words, but I think that's what is the inherent. Then say that in a positive, not critical way. Hey WordPress developers, did you know that there's this much larger PHP community that we want to invite you into? Here's ways that we can welcome you. It turns out the best way to welcome people is not by calling them silo'ed whatever heritics. The best way is to be kind, and to enter into their spaces and to learn from them, and to offer what you have to them, and to be nice people. It turns out that's the trick. Be nice. Take care of people. I feel like I'm making voices where I'm mimicking people more than normal, so I hope I don't get too many complaints about how snarky I was in this one. I really do love you all. This is Episode 100, I'm making the heart symbol in front of my chest right now. I also got not a lot of sleep last night, and I'm super caffeinated so that might be part of it now. All right we're almost out of time, I will not go over 10 minutes, thank you. Thank you friends for listening to 100 episodes, those of you who've been here for all 100, and if not, that's okay--thank you for being here for Episode 100 anyway. This is the Five Minute Geek Show, we're at @5minutegeekshow on twitter, fiveminutegeekshow.com. You can subscribe to us on iTunes or RSS if you like the show, and it'd be amazing if you would share it with your friends, rate it in iTunes. Until next time--Matt Stauffer, Five Minute Geek Show. Ready to do it? All right go. "If one more label try to stop me there's gon be some dread head boys in the lobby, UH UH"