POPULARITY
The (4-6) Audubon Wheelers basketball team used the Christmas break wisely giving time off for their players to rest in preparation for the second half of the season. The Wheelers started the year off 1-4, with their only victory from a last place Missouri Valley team. Head Coach Darran Miller knew something had to change and decided to shift his team's focus to defense and saw them gel better together. Audubon went on to win the next 3 out of 5 with strong wins against Riverside and Boyer Valley. Coach Miller credits the higher intensity on defense and rebounding for the Wheelers recent success. https://www.kjan.com/wp-content/uploads/2024/01/Audubon-3-2-turn-around.mp3 A large part of the Wheelers dynamic has been the play of senior Edward Miller on both sides of the floor. Miller is averaging over 15 points and close to 9 boards per game. Coach Miller mentioned that Edward Miller does a nice job of deciding when to attack the basket or settling for an outside shot. https://www.kjan.com/wp-content/uploads/2024/01/Audubon-Edward-Miller.mp3 Miller is not the only high contributor for Audubon. Junior Aaron Olsen is the second highest scorer on the team with 10.9 points per game and has 24 steals. Now through 10 games into the year and Coach Miller notices that he has team who has no problem hustling for the ball. This year's group does not get easily intimidated and will play as hard as they can through all four quarters. https://www.kjan.com/wp-content/uploads/2024/01/Audubon-identity-10-games-in.mp3 Audubon resumes Western Iowa conference action this Friday on the road against a (3-6) IKM-Manning team who share a similar 3-2 record in their last 5 games. The Wolves are led by sophomore Ben Ramsey averaging over 16 points a game and a respectable 35% from behind the arc as a team. Coach Miller has his team looking to be a cohesive defensive unit to have 2024 start off with an Audubon win. https://www.kjan.com/wp-content/uploads/2024/01/Audubon-vs-IKM-Manning-Friday.mp3 Tipoff is set for 7:15pm Friday January 5th.
On the final day or October we're talking to Ben Ramsey Writer, Producer, Director, sometimes actor, futurist. Writer of “The Big Hit,” “Dragonball Evolution.” Wrter/Director of “Blood and Bone” and “Love and a Bullet,” Creator of the “Interface” and the Interface Universe.” Then we're talkyBlack influences in Horror! From the final girls/guys in front of the screen to the ones behind the camera. Find out what films you should check out the helped influence the genre!! #blerdseyeview #blerdstation #blerdcommunity #horror #entertainmentnews #causeandeffect #film #television #streaming
On the final day or October we're talking to Ben Ramsey Writer, Producer, Director, sometimes actor, futurist. Writer of “The Big Hit,” “Dragonball Evolution.” Wrter/Director of “Blood and Bone” and “Love and a Bullet,” Creator of the “Interface” and the Interface Universe.” Then we're talkyBlack influences in Horror! From the final girls/guys in front of the screen to the ones behind the camera. Find out what films you should check out the helped influence the genre!! #blerdseyeview #blerdstation #blerdcommunity #horror #entertainmentnews #causeandeffect #film #television #streaming
Today's episode is all about celebrating Notre Dame and their recent National Championship. In order to do that we brought in one passionate alum and one current ND player to discuss what this journey and result mean to them. Ryan Hoff (Notre Dame '09) is a National Sports Emmy Award winning Content Producer with a demonstrated history of excelling in the broadcast media industry. He works for ESPN producing college lacrosse. As a player he was a two time All-American and finished his career with 134 goals. He is instrumental in the production of the college lacrosse games we see on air each week through ESPN. Ben Ramsey (Rising Junior at Notre Dame) recently won a national championship and played a pivotal role between the lines all season. He played appeared in every game this season as a midfielder. --- Send in a voice message: https://podcasters.spotify.com/pod/show/lax-all-stars/message
In this latest episode of our All into Account podcast and video, Joyce Chang, Chair of Global Research, is joined by J.P. Morgan's Bruce Kasman, Chief Economist, Jan Loeys, Strategic Research, Jahangir Aziz, Head of Emerging Market Economics Research, Luis Oganes, Head of Global Macro Research, and Saad Siddiqui, Emerging Markets Fixed Income Strategy dive deeper into our top ten takeaways from the J.P. Morgan Investor Seminar hosted during the 2023 IMF/World Bank Spring Meetings. The mood was downbeat but not overly bearish in our view, and there were few signs of complacency with “fragmentation,” “setting up guard rails” and “re-globalization, not de-coupling” among the key buzzwords and catch phrases. Speakers Joyce Chang, Chair of Global Research Jan Loeys, Strategic Research Bruce Kasman, Chief Economist Luis Oganes, Head of Global Macro Research Jahangir Aziz, Head of Emerging Market Economics Research Saad Siddiqui, Emerging Markets Strategy Related Research: Top 10 Takeaways from J.P. Morgan's Investor Seminar during the 2023 IMF/World Bank Spring Meetings: Higher for longer despite rising financial stability risks (https://www.jpmm.com/research/content/GPS-4390217-0), Joyce Chang et al., 19 April 2023 Investor Survey Results from 2023 IMF/World Bank Spring Meetings: Recession fears still top of mind with downside seen to current valuations, particularly global equities (https://www.jpmm.com/research/content/GPS-4387732-0), Joyce Chang et al., 17 April 2023 Feeling edgy: Smaller countries make for big stories in DC: Takeaways from IMF/WB meetings (https://www.jpmm.com/research/content/GPS-4390074-0), Nicolaie Alexandru, Ben Ramsey, Katherine Marney, 20 April 2023 Emerging Market Takeaways from IMF/World Bank Spring Meeting (https://www.jpmm.com/research/content/GPS-4386452-0), Luis Oganes et al., 18 April 2023 This podcast was recorded on April 20, 2023. This communication is provided for information purposes only. Institutional clients please visit www.jpmm.com/research/disclosures for important disclosures. © 2023 JPMorgan Chase & Co. All rights reserved.
The Living Room Woodstock: Woodstock City Church College Ministry
The Living Room is a Wednesday night gathering for college-aged adults in the Kennesaw/Woodstock/Marietta area at Woodstock City Church. We hope to be a place where you or your college-aged adult can belong and connect. If it's your first time experiencing The Living Room, text "TLRGUEST" to 888-403-4137! To find out more about TLR, check out https://woodstockcity.org/the-living-... or our Instagram, @thelivingroomwoodstock.See omnystudio.com/listener for privacy information.
Zur 50. Rant A Movie Folge haben sich Sven und Denny zwei ganz besondere "Perlen" ausgesucht. Dragonball Evolution ist so ziemlich der mieseste Film, der es jemals in diesen Podcast geschafft hat. Chapeau! Super Mario Bros. ist da wieder eine ganz eigene Kategorie von Trash. Zumal die Fakten zur Entstehung auch klar machen, warum der Film so... ähm... "grandios" geworden ist. Sven und Denny sind rantmäßig also wieder in Hochform! /// (00:00:00): Intro/ Begrüßung (00:11:27): Dragonball Evolution (00:59:29): Super Mario Bros. /// Ihr habt Spaß mit Rant A Movie? Dann folgt uns gerne: Instagram: @rantamovie_podcast Letterboxd Denny: Spectral_Denny Letterboxd Sven: therealsvenoh
The Living Room Woodstock: Woodstock City Church College Ministry
The Struggle Bus is real. We've all felt stressed out, burnt out, and out of time. But what if there was a better way? Join the conversation this week on how even in the midst of the struggle, we can learn to thrive instead of just survive. If it's your first time experiencing The Living Room, text "TLRGUEST" to 888-403-4137! To find out more about TLR, check out https://woodstockcity.org/the-living-... or our Instagram, @thelivingroomwoodstock. See omnystudio.com/listener for privacy information.
Featured in this podcast are Ben Ramsey, Cassiana Fernandez, Gabriel Lozano, and Diego Pereira. In this podcast we review our economic outlook for Latin America in 2022, a year in which we see many challenges amid prospects for high inflation, tightening monetary policy, slowing growth, and significant political and electoral uncertainty. In particular, we focus on the main questions we've been getting during our conversations with investors as we kick off the new year. This podcast was recorded on January 20, 2022. This communication is provided for information purposes only. Institutional clients can view the related report at www.jpmm.com/research/content/GPS-3968916-0 for more information; please visit www.jpmm.com/research/disclosures for important disclosures. © 2021 JPMorgan Chase & Co. All rights reserved.
About Listen as host Khayrattee Wasseem talks with Ben Ramsey – Release Manager for PHP 8.1 and Staff Engineer at Skillshare. This is a thorough talk about the very beginning of the PHP Community, the early core people that formed the community, the early conferences that was organised namely PHPcon and also about the PHP […] The post Interview with Ben Ramsey appeared first on Voices of the ElePHPant.
Featured in this podcast are Gabriel Lozano and Ben Ramsey. This month, Mexican President Andres Manual Lopez Obrador (AMLO) presented a constitutional reform proposal that would roll back a number of growth-enhancing structural measures designed to liberalize his country's energy sector. While the proposal is wide-ranging, most impacted would be Mexico's electricity sector, which would largely be turned back to the state-owned utility, CFE. We see numerous adverse economic impacts from the proposal, which we discuss, while also assessing the most likely outcome of the legislation before Mexico's Congress. At this point, we would not discount the risks that a substantial portion of the president's proposal could become law. Ben Ramsey, J.P. Morgan's head of Latin America Research in New York, interviews Mexico Chief Economist Gabriel Lozano from Mexico City. This podcast was recorded on October 21, 2021. This communication is provided for information purposes only. Institutional clients can view the related report at www.jpmm.com/research/content/GPS-3888935-0 for more information; please visit www.jpmm.com/research/disclosures for important disclosures. © 2021 JPMorgan Chase & Co. All rights reserved.
The Living Room Woodstock: Woodstock City Church College Ministry
See omnystudio.com/listener for privacy information.
The Living Room Woodstock: Woodstock City Church College Ministry
See omnystudio.com/listener for privacy information.
Ben and Matt are joined by Ben Ramsey to talk about what it like being in charge of PHP 8.1, his new gig at Skillshare and we ponder the question: do all good uuids go to heaven? Links: Ben Ramsey on Twitter Ben's UUID Library PHP Release Process Ben's PHP Library starter kit Rand's Leadership Slack
On this week's agenda: What we've been up to; Marvel's Loki "The Variant" and "Lamentis" Discussion; Interview with 'Dragonball Evolution' writer and 'Blood and Bone' director, Ben Ramsey. Timecode: 35:06 - 2:01:00; No Man of God Trailer; Sweet Girl Trailer; Don't Breathe 2 Trailer; The Many Saints of Newark Trailer; The Tomorrow War Review; Marvel's Black Widow Review. Want to join 'The Green Room' and be an exclusive member of Midnight Double Feature, giving you access to MEMBERS ONLY content? Details below! Remember to RATE AND REVIEW us on iTunes! Check us out: Website: midnightdoublefeature.com Membership: patreon.com/midnightdoublefeature Facebook: The After Party (MidnightDoubleFeature) Instagram: @midnightdoublefeature Twitter: @mdfpod Youtube: Midnight Double Feature
PHP Internals News: Episode 84: Introducing the PHP 8.1 Release Managers London, UK Thursday, May 13th 2021, 09:12 BST In this episode of "PHP Internals News" I converse with Ben Ramsey (Website, Twitter, GitHub) and Patrick Allaert (GitHub, Twitter, StackOverflow, LinkedIn) about their new role as PHP 8.1 Release Managers, together with Joe Watkins. 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 explaining the latest developments in the PHP language. This is episode 84. Today I'm talking with the recently elected PHP 8.1 RMs, Ben Ramsey and Patrick Allaert. Ben, would you please introduce yourself. Ben Ramsey 0:34 Thanks Derick for having me on the show. Hi everyone, as Derick said I'm Ben Ramsey, you might know me from the Ramsey UUID composer package. I've been programming in PHP for about 20 years, and active in the PHP community for almost as long. I started out blogging, then writing for magazines and books, then speaking at conferences, and then contributing to open source projects. I've also organized a couple of PHP user groups over the years, and I've contributed to PHP source and Docs and a few small ways over the years, but my first contributions to the project were actually to the PHP GTK project. Derick Rethans 1:14 Oh, that's a blast from the past. You know what, I actually still run daily a PHP GTK application. Ben Ramsey 1:21 Oh, that's interesting. What does it do? Derick Rethans 1:23 It's Twitter client. Ben Ramsey 1:24 Did you write it. Derick Rethans 1:26 I did write it. Basically I use it to have a local copy of all my tweets and everything that I've received as well, which can be really handy sometimes to figuring out, because I can easily search over it with SQL it's kind of handy to do. Ben Ramsey 1:41 It's really cool. Derick Rethans 1:42 Yep, it's, it's still runs PHP 5.2 maybe, I don't know, five three because it's haven't really been updated since then. Ben Ramsey 1:49 Every now and then there will be some effort to try to revive it and get it updated for PHP seven and eight, but I don't know where that goes. Derick Rethans 1:59 I don't know where that's gone either. In this case, for PHP eight home there are three RM, there's Joe Watkins who has done it before, Ben, you've just introduced yourself, but we also have Patrick Allaert, Patrick, could you also please introduce yourself. Patrick Allaert 2:13 Hi Derick, thank you for the invitation for the podcast, my name is Patrick Allaert. I am a Belgian freelancer, living in Brussels, and I spent half of my professional time as a IT architect and/or a PHP developer, and the other half, I am maintaining the PHP extension of Blackfire, a performance monitoring solution, initiated by Fabien Potencier. Derick Rethans 2:39 I didn't actually know you were working on that. Patrick Allaert 2:40 I'm not talking much about it but more and more. So I succeeded to Julian Pauli, who by the way was also released manager before so now I'm working with Blackfire people. It's really great, and this gives me the opportunity to spend about the same amount of time developing in C and in PHP. This is really great because at least I don't. It's not just only doing C. I, at least I connect with what you can do with PHP. I see the evolution from both sides. And this is really great. It's great, it's also thanks to you Derick, you granted me access to PHP source codes. That was to contribute to testfest something like 12/13 years ago, it was, CVS, at that time. Derick Rethans 3:28 CVS, so now I remember that. Basically, what you both of you're doing is making me feel really old and I'm not sure what I like that or not. I think we all have gotten less head on our heads and greyer in our beards. In any case, what made you volunteer for being the PHP 8.1 RM? Patrick Allaert 3:46 In my case, I think there were two two reasons is that PHP really brings a lot to me in my career, everything is built around my expertise in PHP and its ecosystem. By volunteering as a release manager. I think I can give something back to PHP, because the last time I contributed to source code of PHP, it was really years ago. If I remember it was array to string conversion that was very silent and not emitting any notice; now it's warning. In the meantime, so I think that was PHP 5.0, Derick Rethans 4:22 Ages ago. Patrick Allaert 4:23 Ages ago. Indeed. I was quite passive I was mostly reading on PHP internals, and most of the time now that is quite big so if, if I had to say something I could always see some someone who already just said the same thing so I was not saying: plus one. This is one of the reason and the second one I think is that I think it's kind of a unique opportunity, and I can learn a couple of things. I think, on day one when the Rasmus gave me the access, saying that I can do to OAuth authentication on SSH and that was: okay, day one I already learned something, so that was really cool. Derick Rethans 4:58 And you Ben, I think you tried to be the PHP eight zero release manager as well at some point. That didn't happen at the time, but you've tried again. Ben Ramsey 5:06 I almost didn't try again. I don't know why but when Sara announced it this year, I thought about it, and I don't know, I tossed it around a little bit, but I've been wanting to do it for a long time and I've noticed as Joe Watkins recently put it on a blog post that we need to help the internals avoid buses. So since this is a programming language that I've spent a lot of time with just as Patrick mentioned, both in and out of my day jobs. I want it to stick around to thrive. Since I'm not a C guru, but I do have a lot of experience managing open source software. I wanted to volunteer as a release manager, and I hope that I can use this as an opportunity to inspire others who might want to get involved, but don't know how. Derick Rethans 5:55 And of course you just mentioned Joe, Joe Watkins, who is the third PHP release manager for 8.1, and that is a bit of a new thing because in the past, when the past many releases I can remember you've only had two most of the time. Ben Ramsey 6:09 I think, on the mailing list that came up early on in the thread, and there was a general consensus, I think, consensus may be the wrong word, but there were a couple of people who spoke up and said that they wouldn't mind seeing multiple rookies or mentees or whatever you want to call us, and Joe when he volunteered to be the veteran, and he was the only one who volunteered as the veteran. He said that he would take on two. And so that's that's why Patrick and I are both here and I think that's a good idea, because it will continue to help, you know, us to avoid buses. Derick Rethans 6:46 Yep. And if you're three, you only have once every 12 weeks. Whereas of course, in my case doing it for PHP 7.4 it's every four weeks, because it's me on my own, isn't it. Which is unfortunate that these things happen because people get busy in life sometimes. Getting started being a PHP release manager can be a bit tricky sometimes because just before we started recording, I had to add you to a few mailing lists. Do you think you've now have access to everything, or what do you need access to to begin with? Patrick Allaert 7:18 There is the documentation about release managers, what are you supposed to do, and, and there is an effort of documentation, what you have to ask, in terms of access, and that's great. We are probably going to contribute with our findings to, to improve the documentation. Once you did a bit of the setup, mainly needs to access the servers. You should also know what is the workflow and what are the usual tasks. This is mentioned in the documentation, but I think it would be better to have a live discussion with someone that already did it. The fact that we are doing it with Joe Watkins, who is not only a release manager of 8.1, but also previous release manager, that should be really smooth, to, to see what the the orders and what is the routine to do. To do so, why do you think Ben? Ben Ramsey 8:16 I agree. I think that, I mean we've only just gotten started. It's only this I believe is what was it two weeks ago that we, that this was announced. So this is the first time that Patrick and I have actually spoken face to face. Hi, Patrick! We've communicated by email and slack. I'm sorry not Slack, StackOverflow chat. Joe has given us a lot of good pointers. I feel like some of the advice he's given his been really good, but it's like Patrick said, we haven't really had like a live, like one on one chat, or face to face chat, where we could kind of get caught up on things and understand what the flow looks like. So last week I started going through a lot of the pull requests on GitHub. And I've been tagging them as bug fixes or are enhancements, and there's also an 8.1 milestone that I've been adding to a lot of the tickets, are the pull requests, and I've merged a few of them, but I think that I've merged them a little prematurely. So there were some funny things that came up out of that. I do plan to blog on this, but one of Nikita's comments in the Stack Overflow chat was, you've just made it your personal responsibility to add tests for uncovered parts of the Ristretto255 API. Derick Rethans 9:40 Right, exactly say because I'm doing release management for PHP seven four. I don't do any merging at all. The only thing I'm doing is making the packages, and then coordinating around them. I'm not even sure whether it is a responsibility of a release manager to do. Ben Ramsey 9:55 It may not be a responsibility. I felt like it was helpful maybe to go ahead and take a look and see where things were trying to follow up with people, to get them to respond if something had been sitting there for two weeks or so without any kind of movement. I would, you know, leave a message saying what's the status of this. Derick Rethans 10:19 I know from the documentation that we have on our Release Management process. And many of these steps actually been replaced by a Docker container that actually builds the binaries, so I'm not sure whether Joe I've mentioned that to you yet, because I'm not sure whether that was around when he did release management, the previous time. Ben Ramsey 10:36 Right, it wasn't around either when he did release management, but he's also mentioned that he would like for us to learn how to do it without the Docker container, even if we do plan to use the Docker container. Derick Rethans 10:48 That's fair enough, I suppose. I have never had to do that, but that there you go. Now, what is the timeline like? Patrick Allaert 10:56 In terms of timeline I think the very first thing is being all three release managers having live discussion to define what, what we should do, when we should do, and how. This way we clearly knows our responsibility and the sequence, and also how we are going to organize. Do we do every three releases? We share the task? How are we going to do the work together. In terms of timeline I think the very first release is going to happen in June, if I remember correctly. I set up an agenda sheet with ICAL so that we all can put that in our calendar, nothing really clear on my side. Derick Rethans 11:41 From what I can see from the to do list that the first alpha release is June, 10, which is exactly a month away from when we are recording this. Patrick Allaert 11:51 Right, yeah, it's one month come down before the very first one. I think it might be great that the very first release being made by by Joe, so that we can really see every single step he's doing, so that we can do the same. However, I guess it's kind of a shared responsibility to do triage of bugs and pull requests. Ben Ramsey 12:14 Right. I think there is some desire among the community to see these releases in real time at least a few of them. So I'm going to try to encourage us to stream some of them maybe live, or at least record it and put it up somewhere for people to kind of just see the process to demystify it, so to speak. Derick Rethans 12:35 I actually tried it a few months ago to record it, but there were so many breaks and pauses and me messing things up, and me swearing at it, that I had to throw away the recording. I mean the release went out just fine but like absolute as again... I can imagine the first few times, you're trying this there might be some swearing involved, even though you might not vocalize that swearing. Ben Ramsey 12:56 Oh I'll vocalize it. Derick Rethans 12:58 Fair enough. This is something that is that you're going to have to do for the next three and a half years. Do you think you'll be able to have the time for it in another three years? Ben Ramsey 13:08 I mean for myself I I'm committed to it, I definitely believe that I'll have the time over the next three and a half years, and I'll make the time for it. Derick Rethans 13:18 What about you, Patrick? Patrick Allaert 13:20 Exactly the same. I think it's the least that I can do to PHP, in terms of contributing back, there will be some changes because I it's not like it's, it's not like the infrastructure is something that doesn't change, like for example recently, GitHub, being more having more focus rather than our Git infrastructure. So the changes that will happen, we will have to adapt, I have the impression that release manager has to, every time it's adapting to change this, and that will be very interesting. Derick Rethans 13:53 Luckily we haven't had too many. The only thing I had to change with a change from git dot php.net to get up, was my local remote URLs. So there wasn't actually a lot to do, except for running git remote set-url. I was pleasantly surprised by this because if anything messing around with Git isn't my favourite thing to do. Ben Ramsey 14:14 Also, merging is a little bit more streamlined now you don't have to go to qa.php.net to do that. Derick Rethans 14:21 I've never done anything without Ben Ramsey 14:23 Really? Oh, I guess you would commit directly to git.php.net? Derick Rethans 14:27 Yep. Ben Ramsey 14:28 If there were PRs on GitHub, the only way to merge them well, probably wasn't the only way but one way to merge them was to go to qa.php.net, and if you were signed in with your PHP account, you were able to see all the pull requests, and choose to merge them. Derick Rethans 14:46 Yep, also something I've never done as an RM. The only way how I have reacted with pull requests is commenting on the pull requests, and I wouldn't merge them myself. With the only exception of security releases where you need to cherry pick from certain branches into your release branches. I'm not always quite sure about it as the responsibility for release managers actually do the merging into the main branches. From what I've understood is it's always the people that made the contributions, who just merge themselves, and you then sometimes need to make sure that they merge into the right branch instead of just master, which is what, as far as I know, the, the buttons on GitHub do. Ben Ramsey 15:21 Well the individual contributors, in this case, if they're doing like a bug fix or something, most of them, or many of them aren't don't have permission to do the merging, so someone else has to merge it, like, often I see Nikita merging, a lot of the pull requests. Derick Rethans 15:37 Maybe I've just been relying on Nikita to do that then. I'm not sure how, bug fixes are merchants debug fig branches. I think it's usually been done by people that have access already anyway, because it's often either Nikita or Cristoph Becker, or Stas, and the main developments, or the main other new things that people don't have access to are usually to master. So I guess there's a bit of a difference now. I'm not sure what if any other questions, actually, would have anything to add yourself? Patrick Allaert 16:05 maybe something that would be quite challenging is the very recent discussion about the system that we, that we might change from. The system or the issue tracker with where we have all the bugs. I understand the current issues, I understand as well the drawbacks of what is possibly, for example GitHub issues. It might be great for some, would it be great for us? If we do it was going to be in the bring a lot of changes, and I think, 8.1 will be already slightly impacted by the change to GitHub in terms of pull request strategies, but potentially there will be another change, which is around the bugtracking system. Derick Rethans 16:54 I have strong opinions about this, but we'll leave that for some other time. What about you, Ben? Ben Ramsey 17:00 Right, I actually don't think that we're going to end up making a lot of changes in that regard, very, like, not in the near term, probably. But I did want to point out, or promote that I've started journaling some of these experiences, and capturing information mainly for my own purposes, but I'll be posting these publicly so that others can follow along. My blog is currently down right now. Derick Rethans 17:28 That's because you're using Ruby isn't it? Ben Ramsey 17:30 That's because I'm using Ruby. The short story of it is that there are some gems that were removed from the master gem repository at some point in the past, or the versions I'm using were removed, either for security reasons or what I have no idea why. And that's put, put it into a state where I just can't easily update. I just haven't, I just don't care, right now, so I plan on migrating to something else. In the short term, I'm not going to be doing that. So I've started writing at https://dev.to/ramsay and Dev.to is just a developer community website. If you're on Twitter. It's run by @thePracticalDev, I'll be, I'll be blogging there. Derick Rethans 18:18 And I'll make sure to add a link to that in the show notes as well. Thank you for taking the time this afternoon, or morning, to talk to me about being a PHP 8.1 release managers. Ben Ramsey 18:28 Thank you for having me on the show. Patrick Allaert 18:30 Thank you, Derick for that podcast. I'm really glad you invited us. Derick Rethans 18:39 Thank you for listening to this installment of PHP internals news, a podcast, dedicated to demystifying the development of the PHP language. I maintain a Patreon account for supporters 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 PHP 8.1 Release Todo List Ben's journal Joe Watkins' Avoiding busses blog post Credits Music: Chipper Doodle v2 — Kevin MacLeod (incompetech.com) — Creative Commons: By Attribution 3.0
Cornerstone of Bryant Pharmacist Ben Ramsey on the SWNN 1-19-2021 by 103.7 The Buzz
PHP Internals News: Episode 54: Magic Method Signatures London, UK Thursday, May 21st 2020, 09:17 BST In this episode of "PHP Internals News" I chat with Gabriel Caruso (Twitter, GitHub, LinkedIn) about the "Ensure correct signatures of magic methods" 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:16 Hi, I'm Derick, and this is PHP internals news, a weekly podcast dedicated to demystifying the development of the PHP language. This is Episode 54. Today I'm talking with Gabriel Caruso about his ensure correct signatures of magic methods RFC. Hello Gabriel, would you please introduce yourself? Gabriel Caruso 0:37 Hello Derick and hello to everyone as well. My name is Gabriel. I'm from Brazil, but I'm currently in the Netherlands. I'm working in a company called Usabila, which is basically a feedback company. Yeah, let's talk about this new RFC for PHP eight. Derick Rethans 0:52 Yes, well, starting off at PHP eight. Somebody told me that you also have some other roles to play with PHP eight. Gabriel Caruso 0:59 Yeah, I think last week I received the news that I'm going to be the new release manager together with Sara. We're going to basically take care of PHP eight, ensuring that we have new versions, every month that we have stable versions every month free of bugs, we know that it's not going to happen. Derick Rethans 1:17 That's why there's a release cycle with alphas and betas. Gabriel Caruso 1:20 Yeah. Derick Rethans 1:21 I've been through this exactly a year early, of course, because I'm doing a seven four releases. Gabriel Caruso 1:25 Oh, nice. Yeah. So I'm gonna ask a lot of questions for you. Derick Rethans 1:29 Oh, that's, that's fine. It's also the role of the current latest release manager to actually kickstart the process of getting the PHP, in this case, PHP eight release managers elected. Previously, there were only very few people that wanted to do it. So in for the seven four releases it was Peter and me. But in your case, there were four people that wanted to do it, which meant that for the first time I can ever remember we actually had to hold some form of election process for it. That didn't go as planned because we ended up having a tie twice, which was interesting. So we had to run a run off election for the second person between you and Ben Ramsey, that's going to go continuing for you for the next three and a half years likely. Gabriel Caruso 2:11 Yep. Derick Rethans 2:12 So good luck with that. Gabriel Caruso 2:13 Thank you. Thank you very much. Derick Rethans 2:15 In any case, let's get back to the RFC that we actually wanted to talk about today, which is the ensure correct signatures of magic methods RFC. What are these magic methods? Gabriel Caruso 2:24 So PHP, let's say out of the box, gives the user some magic methods that every single class have it. We can use that those methods for anything, but basically, what magic methods are are just methods that are called by PHP when a given action happens to the class. So for example, if a class is being constructed, then the construct magic method is going to be called. If I'm calling serialize function, then the magic method serialize as per PHP seven four or PHP eight. I don't remember, so this is basically what magic methods are, are methods that PHP hook into the classes and then once a certain action happened with the class, then PHP is going to call those magic methods in something magic, so to speak is going to happen. Derick Rethans 3:13 And other options are like underscore underscore get, and underscore underscore set. Gabriel Caruso 3:17 We have, we have a lot. Derick Rethans 3:19 Exactly, what do people tend to use these magic methods for? Gabriel Caruso 3:22 So that's something interesting. As the magic method is called by a number of actions we can use, for example, for let's let's get the example of ORM for example, Doctrine or Eloquent or whatever one. Let's say I'm a maintainer of that library. I don't know what fields do you have in your database. So when I'm porting, when I'm doing the translation, what it can do is map in a property, all those columns and values that I have in the database. And then when you instantiate your entity and you try to access a variable that is does not exist, then we're going to go to a magic method in this case is get, as I said, and I'm going to say okay, is not set in the class, but is mapped in the entity that I have. So this is one case, we also have the case for testing your you have, for example, the famous PHP Unit test framework, every time that a test case is called with all those methods is starting in with test, the call magic method is invoked. And then you can perform whatever action you have. You also have middlewares and the examples go go even further Derick Rethans 4:32 In the title of RFC you have the word signature, what is the signature? Gabriel Caruso 4:37 All the attributes that our method can have. So for example, the name of a method is its signature, what does it return? What parameters does it take? And also what modifiers so for example, is it static or not? Is it public, private or protected? So all this information together in usually is one line in PHP. So for example, private static MyMethod, that receives a string and returns a Boolean. There you go. This is the signature of my method Derick Rethans 5:06 Because some of these magic methods have been in PHP for a long long time. Back in the time where we didn't have argument types or return types or perhaps not even static. All the way back from the past PHP hasn't really done anything with signatures because they've simply didn't exist. At the moment which signature checks this PHP already do? Gabriel Caruso 5:26 I don't remember a by the RFC but I think was introduced together with the scalar type RFC. But only constructors and destructors until PHP seven four, those two only magic methods were being checked. If they have none return type, not even void, just no return type. But in PHP eight, we're gonna have the new stringable interface and then every single toString magic method. If it is typed, this is very important if it is typed it needs to be a string and these are the only from the 17 that we have only three in PHP 8 are being checked. Derick Rethans 6:01 PHP seven four. Gabriel Caruso 6:02 Yeah, in PHP seven four only two and then PHP eight, we have the new toString. Derick Rethans 6:07 But this RFC suggesting to change that of course. Gabriel Caruso 6:10 yeah. Derick Rethans 6:11 What's the reason why you want to extend these checks to the other magic methods? Gabriel Caruso 6:14 That brings me back how I figured out that. I was looking at some bugs, because we have the https://bugs.php.net, where we centralized all the bugs of PHP. Then there is a bug report explaining in complaining exactly about that. Like, I can't hide my magic method. Back in the days I can say, for example, that my tostring method is going to return an integer or a Boolean. That makes no sense. And then I was like, yeah, makes makes no sense. We need to fix that out and then I start to search how do we type that? How what types do we have and then I was like, we can't in PHP eight, because this is going to be a new major version. So we are allowed to at least vote for do that. We can check if someone is using types, we can check those types. We are not going to force, we are not going to require, we're not going to evaluate even run static analysis. Nope, we're going to simply check. Okay. Are you saying that this get magic method is going to return anything? Okay, that's okay. Oh, but I want to my guess is that you specifically return a string. That's also okay. As to how to pronounce that liskov mistook principle, right? Derick Rethans 6:36 The liskov substitution principle. Gabriel Caruso 7:26 Yeah. And so this is what we're going to basically do with this RFC, there's going to be voted. We're going to simply check if you're using the right types, because, in my opinion, magic methods are a foundation in PHP. As we have theses methods across different code bases across different projects from different behaviours, at least when I'm looking at that code. Okay, I'm looking at this magic method. I know what parameters does it take. I know what return does it have. This is worth less tab to the bug are trying to understand what is happening. Because today maybe I'm debugging a toString method there is return an integer. And I'm like, okay, this is the bug, it's supposed to return a string. But once you ensure those all those signatures, is one less bug that we're gonna have in production. Derick Rethans 8:17 When are these signatures being ensured? Gabriel Caruso 8:19 It's not at compile time because he does not have a compile time. But he's when the Zend machine is compiling the code, we have a very specific method that is checking all the modifiers. So for example, the signature that we mentioned before so all the magic methods needs to be public. This has been checked, for example, they callStatic magic method needs to be static. So this has also been checked. And then I'm extending how do we check for signatures for param types and also for return types. So during compilation of the Zend VM. Derick Rethans 8:52 Taking as example callStatic in the RFC, I see that the name has to be a string and the arguments has to be an array. What happens if you use a different type there? Gabriel Caruso 9:01 So nowadays if you use a different type that's allowed. So if you say there, you're going to receive an integer, and you're going to receive a string. This is allowed today. And this is what I mentioned about when you are debugging or analyze different code bases, you're going to be like why in the documentation says that we need to receive a string and an array, and there's this specific code base is receiving a string and an integer. So this is what kinds of mismatch I want to avoid. Of course, when using types, because we also know that PHP in some projects does not use types. And that's perfectly fine. If you're not using types, I'm not going to ask you, hey, you need to type those magic methods. Well, what I'm going to do is okay, you're using types and I need to make sure they're using right otherwise this is going to be a mess. Derick Rethans 9:47 If you type it; say use an integer for the name of underscore underscore get, will give you a warning or a compile error, or parse error? What what kind of feedback which you get back from that? Gabriel Caruso 9:59 While you are running your code, as soon as that class get referenced, we're going to check. Is not when is initiated, when is not when is called, as soon as I think the autoload detects that class is gonna parse, is going to identify, and then is going to compile and during the compile time that we mentioned. We're going to identify that. So it's going to be early in the stages. Perhaps as soon as you run something or you would upset me, you're going to have that feedback saying: hey, this is not compatible with what we are expecting. Derick Rethans 10:32 Is that a warning or type error? Gabriel Caruso 10:34 It's going to be a fatal error, because this is what we are constantly returning with the destructors and constructors. Derick Rethans 10:41 Yeah, we alluded to mixed already a little bit and the RFC mentioned mixed a few times, of course mixes in the type and PHP yet. So what do you want to do about that? Gabriel Caruso 10:51 Today we are 11th of May of 2020. Right now we have an RFC voting in PHP to introduce the mixed type. I'm not going to say if I agree or disagree, it's being voted. If that RFC gets accepted then I have already talked with the authors of the that RFC, I'm going to wait until they merge into master. I'm going to rebase and readapt to my RFC, to have those mixed types. And there we go PHP eight probably can have mixed, and probably can already have the usage of mixed in the magic methods. So either No, I'm gonna need to wait for the end of their RFC. If it's approved, there go I need to rebase my PR. In the other case, we are going to keep as comments because we can't ensure that in the compile time with the VM. Derick Rethans 11:41 At the moment, it looks like that vote will and in May 21. The current votes are 35 to six for passing. So it looks like that will go through Unknown Speaker 11:50 And then I need to rush because we have the upcoming feature freeze of PHP eight. So I need to make sure that I start to vote and implement my RFC before that time. Derick Rethans 12:00 Feature freeze should be by the end of July. So I think you have plenty of ime pfor that. And of course you have a release manager, you can make an exception. That's how that works. Usually adding extra checks will have impact to existing code. Is there much impact to existing code here as well? Gabriel Caruso 12:18 That was the interest question that I made myself. Okay, I'm going to touch the magic methods of PHP. I'm going to break some code in an issue identified those breaking changes in an each map in the RFC. How do I map across many projects, many libraries, many PHP codes out there? How do I do that? I remember that Nikita back in his RFC about the parenthesis origin, like how do we present this ordering and yada yada yada. He made a script, where he went through I think was the top thousand or top 10,000 packages. On packagist, that is the official composer package provider and he identified everything, and ask myself how he did that. And actually was very easy. He just cloned other repositories. He instantiate a new PHP parser instance that is his magic parser. That is behind PHP Stan, is behind psalm, is behind a lot of infection, a lot of big projects, where you analyze the code. So you have a code base where you can analyze and say: Do I have magic methods wrong? And then I run this script, identify, I think six or seven types that were not perfect. Three of them. I have already submitted a request because we're in PHP Unit and I said to Sebastian: hey, this actually is not right. Because I'm proposing this RFC, he was like: Okay, perfect, let's merge it. And the other cases are the cases that I mentioned. For example, with get. Get, you need to return mixed but by the LSP, you can nail down to an integer or a string. So there you go, at least in the top 10,000 packages of composer is not going to be a breaking change. But of course, it's going to be breaking change for people that I can't map. So this is why it's mentioned the RFC that if you're using types with magic methods wrong, we're going to warn you. Derick Rethans 14:13 But at least it's an easy thing to check for. Because even running all your files through PHP minus L should catch it. Gabriel Caruso 14:20 Yeah, there you go. Derick Rethans 14:22 So it's a very easy to check for something. You provided a link to Nikita's script where he checks for those ternairies, do you have a version of your own script available as well? Gabriel Caruso 14:33 That's interesting. I thought the RFC was updated. So I'm going to update the RFC, because I do have the script locally. Derick Rethans 14:39 Then I can link to it for the podcast as well. Gabriel Caruso 14:41 Okay, perfect. Derick Rethans 14:42 In the future, are you thinking of extending checks to a few more things? Gabriel Caruso 14:46 So this is something that I fought about this RFC, like how much you want to break and explode people's code. And I think starting with checking types in the signature is the first step. The next step is to actually check the return type. We do that with toString. So for example, although you have type right for maybe, some logic or something is wrong, you're returning an integer. There is a check before the actual type saying you're supposed to return a string you're return an integer. And actually, there is a check in the magic method saying this magic method was supposed to return a string. I think is gonna break even more code because then it's something that I can't measure. So I was like: Okay, let's first start with types and then we can give it next step that is: okay, inside this method, what is being returned, okay, is something different from the signature: explode. You're returning something that I was not supposed to return. But this is not a fight that I'm going to pick. So I leave it up for the next major version of PHP or whatever. Derick Rethans 15:49 Wouldn't PHP's strict versus weak type mechanism already catch these things. So from debugInfo, if you would type that as returning an array, and then you end up returning an object, which is not necessarily wrong, just not what you expected. PHP's return type checking mechanism should already catch that for you. Gabriel Caruso 16:13 If you have a magic method typed. If it's not typed, so we can say that some efforts do have that check. And then we're going to expand when we don't have types in the signature. Derick Rethans 16:24 That's clear now. Do you have anything else to add? Gabriel Caruso 16:27 The only thing that I want to add that is, I have created another RFC, and this is something that I always tell everyone that is easy to do; is not impossible. Anyone can go there, identify a bug or catch a bug report and then try to fix it. And this is what I'm doing. Like I'll do them to release many of PHP eight. I'm also fixing bugs, improving documentation and everything else. This is something that I try to do and share with everyone. So everyone can also be the next one contributor to the to PHP and it's evolution. Derick Rethans 16:57 This RFC isn't out for voting yet. You set you want to sort of wait until mixed gets passed or not. What's the reception been so far? Gabriel Caruso 17:05 So I asked a couple of key members of the PHP community, both internal and external people. They agree, they said that the right approach is to first check for the signature, because if someone is already using types, that project is type friendly, so we can at least play with that. But if someone is not typing, then this is a bigger fight. And then we're going to talk about that in the future. Derick Rethans 17:29 Thank you, Gabriel for taking the time this morning to talk to me. I've learned a few more things about this RFC, so that's always good to know. And again, congratulations of being the PHP eight release manager together with Sara. Gabriel Caruso 17:41 Thank you very much. Also thank you for inviting me for this new podcast is amazing. Always listen to all these famous people of PHP that talked with you. And I'm like, Whoa, Derick has invited me this is going to be so much fun. Thank you very much. Derick Rethans 17:55 Thanks for listening to this installment of PHP internals news, the weekly podcast dedicated to demystify the development of the PHP language, I maintain a Patreon account for supporters 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 Dderick@phpinternals.news. Thank you for listening, and I'll see you next week. Show Notes RFC`: Ensure correct signatures of magic methods Credits Music: Chipper Doodle v2 — Kevin MacLeod (incompetech.com) — Creative Commons: By Attribution 3.0
There is often a belief that it is tough to make legitimate gains in ARO without lowering your car count. On today's episode of Digital Shop Talk Radio, we have Nate and Ben Ramsey on the show to discuss how they have been able to increase the ARO in their shops while maintaining a robust car count through thorough and frequent inspection audits. Tune in and see how to produce efficient inspections, how to have your techs and service team communicate more effectively and hear a few stories from Digital Shop Conference 2020.
The newest addition to the Sonder production team, Ben Ramsey, hops on the podcast to talk about his past brewing experience, how he got into craft beer, what types of beers he likes, and what he’s doing in his free time. Find us on the Socials! Untappd Instagram Facebook Twitter And you can always check out the current taproom list, the latest Sonder merch, and more at sonderbrewing.com!
Look at your email inbox. No really, check it out. How many sales emails do you have? Yeah, us too. Everyone wants 15 minutes. As it becomes harder and harder to differentiate, it becomes more and more essential to target the right accounts at the right moment. We all believe in intent data, intuitively. But operationalizing it … that's another story. That's where Ben Ramsey comes in. He's a 3-time VP of sales, who recently stepped out on his own to create a upcoming intent data sales product. On this episode of the Sales Engagement podcast, Ben tells us why intent data is here to stay, and gives us his thoughts on how it may be utilized.
Chris and Ed do an extremely rare daytime recording of the show on the American Memorial Day holiday. But why is a Canadian not working on an American Holiday? You’ll have to tune in to find out why along with some thoughts on mentoring and why the current crop of browser-centric testing tools are completely shit. Thanks to Ben Ramsey for his poetry choice and Chance Garcia for allowing us to bring another health issue to people’s attention. Do these things! Support us via our Patreon Buy stickers at devhell.info/shop Follow us on Twitter here Rate us on iTunes here Listen Download now (MP3) Links and Notes Please support Ed’s efforts to make OSMI his main gig! Both Chris and Ed will be at CakeFest 2017 WebDriver is an API in heavy use at Mozilla (and elsewhere) for doing browser automation work Ed talked about a testing tool called Fake from his webOS development days that promoted a very different testing paradigm Chris has done browser automation in PHP using Behat, Mink and a lot of swearing Most current browser-centric UI testing tools are Rube Goldberg machines Great blog post from the ClojureScript community showing off property-based testing and immutibility Also some great work being done in PHPUnit with snapshot testing
In this episode, Jacob and Michael talk about the recently released No Man's Sky, HTTP/2 middleware in Laravel, MailThief, and how Majestic Monoliths stack up against microservices.
This week, Cincy Brewcast invades Jeff Graff’s Paradise Brewing and Supply on Beechmont Ave in Anderson Township. We are also joined by Chef Antonio of… The post Volume 2, Episode 33 – Brewing In Paradise LIVE, With Jeff Graff, Chef Tony And Ben Ramsey appeared first on The Gnarly Gnome.
This week, Cincy Brewcast invades Jeff Graff’s Paradise Brewing and Supply on Beechmont Ave in Anderson Township. We are also joined by Chef Antonio of… The post Volume 2, Episode 33 – Brewing In Paradise LIVE, With Jeff Graff, Chef Tony And Ben Ramsey appeared first on The Gnarly Gnome.
Michael Jai White suele ser únicamente recordado por haber protagonizado esa oda al CGI horrible como fue Spawn, pero como ha ido demostrando los años posteriores en el circuito de la serie B y el direct to DVD es un tipo muy válido para las clásicas historias de hostias como panes. Promesa sangrienta remite al cine carcelario y a la blaxploitation más recalcitrante, con un héroe callejero de pocas palabras y que pasa por encima de sus enemigos como una apisonadora sin despeinarse. Víctor nos habla de esta barata pero entretenida película de peleas callejeras.
On a cold winter’s night in the far north, Chris and Ed recorded a podcast at the True North PHP 2014 hackathon event. It was loud and fun! We’re joined by special guest Ben Ramsey and others to talk about organizing conferences and generally being awesome. Enjoy! Do these things! Check out our sponsors: Roave and WonderNetwork Follow us on Twitter here. Rate us on iTunes here Listen Download now (MP3, 52.1MB, 59:35) Links and Notes TrueNorthPHP
This week we are very lucky to have Jacques Woodcock and Ben Ramsey from the virtPHP project on the podcast. Similar in nature to Python’s ‘virtualenv’, virtPHP is a tool for creating and managing multiple isolated PHP environments on a single machine. Currently command-line support on *nix based-systems is complete, however, during the show we touch on the challenges in-regard to SAPI support. We then move on to discuss the interesting paths each took to get into development, followed up finally with the weekly quiz.
Trying out a slightly more professional format with questions, Phil manages to avoid talking over everyone. Winner! This show has a history of talking about FIG stuff as it is hard to avoid. The group is working on so much cool stuff and prominent figures of the community are involved. We got two more prominent figures, who also happen to be involved with FIG stuff: Beau Simensen lead developer of Sculpin and Michael Dowling lead developer of the wonderful HTTP library Guzzle, who also works at AWS on their PHP SDK. We discussed each of their projects, some of the plans for the future, specifically whats coming up in Guzzle 4 and how that all ties in with the new PSR-7: HTTP Message, currently in “Draft” status. Conveniently Beau, Michael and Phil are the three FIG members who make up the working group for PSR-7 who will all be working to get this “Accepted”. See, it all fits! What are your thoughts on using Bash as a provisioner? Why or why not use it? – Edmund Zynda Thoughts on the new github Atom editor – Matthew Reschke Beau & Michael, you’ve both been managing open source packages (OSP) for a few years. What’s the best and worst part of managing an OSP? – Jeremy Lindblom @Michael do you think a simple HTTP Server interface would fit PSR-7? That would be a good replacement for StackPHP, no? – Marco Pivetta I’m curious about how this HTTP client relates to the pecl/http extension. There’s been talk in the past of including that extension in the core. – Ben Ramsey What different circumstances dictate how long a PSR takes to get from proposal to blessed by FIG? – Edmund Zynda So, plenty for you folks to watch here on the YouTube video!
C# may get the safe navigation operator soon! http://blogs.msdn.com/b/jerrynixon/archive/2014/02/26/at-last-c-is-getting-sometimes-called-the-safe-navigation-operator.aspx Bing Code Search for Visual Studio http://blogs.msdn.com/b/visualstudio/archive/2014/02/17/introducing-bing-code-search-for-c.aspx PHP Object Injection in WordPress http://vagosec.org/2013/09/wordpress-php-object-injection/ Dates are hard – Ben Ramsey http://benramsey.com/blog/2014/02/dates-are-hard/wdr_118